
int scp_recv_filedata(char *data,int len)

{
  uint64 x;
  undefined *puVar1;
  sftp_packet *psVar2;
  int iVar3;
  sftp_request *req;
  int iVar4;
  code *pcVar5;
  void *pvStackY_6c;
  int iStackY_68;
  int iStackY_64;
  int iStackY_60;
  undefined *puStackY_5c;
  char *pcStackY_58;
  undefined1 *puVar6;
  ulong in_stack_ffffffcc;
  undefined1 auStack_30 [12];
  int actuallen;
  void *vbuf;
  int local_1c;
  
  puVar1 = PTR_DAT_000bc178;
  puVar6 = &_gp;
  local_1c = *(int *)PTR___stack_chk_guard_000bccd8;
  if (*(int *)(PTR_DAT_000bc178 + -0x31ec) == 0) {
    iVar3 = ssh_scp_recv((uchar *)data,len);
    if (local_1c == **(int **)(puVar6 + -0x7478)) {
      return iVar3;
    }
    pcVar5 = *(code **)(puVar6 + -0x74a0);
    (*pcVar5)();
    puStackY_5c = puVar1;
    iStackY_64 = **(int **)(pcVar5 + 0x8fa44);
    iStackY_60 = len;
    pcStackY_58 = data;
    if (*(int *)(*(int *)(pcVar5 + 0x8eee4) + -0x31ec) == 0) {
      (**(code **)(*(int *)(*(int *)(pcVar5 + 0x8eee4) + -0x31f4) + 0xc))
                (*(undefined4 *)(*(int *)(pcVar5 + 0x8eee4) + -0x31f8),
                 *(int *)(pcVar5 + 0x8eef4) + -0x17dc,1);
      iVar3 = response();
    }
    else {
      xfer_set_error(*(fxp_xfer **)(*(int *)(pcVar5 + 0x8eee4) + -0x3244));
      iVar3 = *(int *)(pcVar5 + 0x8eee4);
      while( true ) {
        iVar4 = xfer_done(*(fxp_xfer **)(iVar3 + -0x3244));
        if (iVar4 != 0) break;
        psVar2 = sftp_recv();
        iVar4 = xfer_download_gotpkt(*(fxp_xfer **)(iVar3 + -0x3244),psVar2);
        if (iVar4 < 1) {
                    /* WARNING: Subroutine does not return */
          fxp_error();
        }
        iVar4 = xfer_download_data(*(fxp_xfer **)(iVar3 + -0x3244),&pvStackY_6c,&iStackY_68);
        if (iVar4 != 0) {
                    /* WARNING: Subroutine does not return */
          safefree(pvStackY_6c);
        }
      }
      xfer_cleanup(*(fxp_xfer **)(*(int *)(pcVar5 + 0x8eee4) + -0x3244));
      req = fxp_close_send(*(fxp_handle **)(*(int *)(pcVar5 + 0x8eee4) + -0x3240));
      psVar2 = sftp_wait_for_reply(req);
      fxp_close_recv(psVar2,req);
      iVar3 = 0;
    }
    if (iStackY_64 == **(int **)(pcVar5 + 0x8fa44)) {
      return iVar3;
    }
    pcVar5 = *(code **)(pcVar5 + 0x8fa1c);
    iVar3 = iStackY_64;
    (*pcVar5)();
    iVar4 = (**(code **)(pcVar5 + 0x8ef84))();
    if ((*(int *)(*(int *)(pcVar5 + 0x8ec98) + -0x31d4) != 0) && (iVar4 != 2)) {
      bump((char *)(*(int *)(pcVar5 + 0x8eca8) + -0x4a68),iVar3);
    }
    scp_sink_init();
    iVar3 = FUN_0002d778();
    return iVar3;
  }
  xfer_download_queue(*(fxp_xfer **)(PTR_DAT_000bc178 + -0x3244));
  psVar2 = sftp_recv();
  iVar3 = xfer_download_gotpkt(*(fxp_xfer **)(puVar1 + -0x3244),psVar2);
  if (iVar3 < 1) {
                    /* WARNING: Subroutine does not return */
    fxp_error();
  }
  iVar3 = xfer_download_data(*(fxp_xfer **)(*(int *)(puVar6 + -0x7fd8) + -0x3244),&vbuf,&actuallen);
  if (iVar3 != 0) {
    if (actuallen < 1) {
      tell_user((FILE *)**(undefined4 **)(puVar6 + -0x7460),
                (char *)(*(int *)(puVar6 + -0x7fc8) + -0x4a9c));
      *(int *)(*(int *)(puVar6 + -0x7fd8) + -0x31e0) =
           *(int *)(*(int *)(puVar6 + -0x7fd8) + -0x31e0) + 1;
                    /* WARNING: Subroutine does not return */
      safefree(vbuf);
    }
    if (actuallen <= len) {
      iVar3 = (**(code **)(puVar6 + -0x7474))(data,vbuf);
      return iVar3;
    }
    iVar3 = (**(code **)(puVar6 + -0x7650))
                      (*(int *)(puVar6 + -0x7fc8) + -0x4a7c,*(int *)(puVar6 + -0x7fc8) + -0x4fb0,
                       0x628,*(int *)(puVar6 + -0x7fc8) + -0x45f0);
    return iVar3;
  }
  actuallen = 0;
  x.hi = (ulong)puVar6;
  x.lo = in_stack_ffffffcc;
                    /* WARNING: Subroutine does not return */
  uint64_add32(x,(ulong)auStack_30);
}



uint scp_recv_filedata(undefined *param_1,undefined *param_2)

{
  undefined *puVar1;
  int iVar2;
  uint uVar3;
  int iVar4;
  undefined *puVar5;
  undefined4 uVar6;
  undefined4 uVar7;
  int iVar8;
  undefined1 *puVar9;
  char *pcVar10;
  undefined4 extraout_v1;
  char cVar11;
  undefined4 uVar12;
  char *pcVar13;
  undefined *puVar14;
  int iVar15;
  int iVar16;
  undefined4 uVar17;
  undefined4 *puVar18;
  int *piVar19;
  int iVar20;
  char *pcVar21;
  char *pcVar22;
  undefined4 *unaff_s3;
  undefined4 *puVar23;
  undefined1 *unaff_s4;
  int iVar24;
  int unaff_s5;
  int iVar25;
  int iVar26;
  int unaff_s7;
  char *pcVar27;
  code *pcVar28;
  int iVar29;
  code *pcVar30;
  undefined auStack_100b0 [32408];
  code *pcStack_8218;
  int iStack_820c;
  int iStack_8208;
  undefined4 uStack_8204;
  int iStack_81f0;
  char *pcStack_81ec;
  code *pcStack_81e8;
  code *pcStack_81dc;
  char cStack_81d5;
  undefined4 *puStack_81d4;
  undefined4 *puStack_81d0;
  undefined4 uStack_81cc;
  undefined *puStack_81c8;
  undefined4 *puStack_81c4;
  int iStack_81c0;
  int iStack_81bc;
  int *piStack_81b8;
  int iStack_81b4;
  int iStack_81b0;
  code *pcStack_81ac;
  code *pcStack_8198;
  int *piStack_8190;
  undefined4 uStack_818c;
  undefined4 uStack_8184;
  undefined *puStack_8180;
  code *pcStack_817c;
  int iStack_8174;
  undefined4 uStack_8170;
  undefined4 uStack_816c;
  code *pcStack_8168;
  undefined4 uStack_8160;
  code *pcStack_815c;
  undefined4 uStack_8148;
  undefined4 uStack_8144;
  int iStack_8140;
  code *pcStack_8138;
  char *pcStack_812c;
  code *pcStack_8128;
  int iStack_8124;
  int iStack_8120;
  undefined4 uStack_811c;
  undefined *puStack_8118;
  undefined4 uStack_8114;
  int iStack_8110;
  code *pcStack_810c;
  undefined4 uStack_8108;
  undefined4 uStack_8104;
  undefined4 uStack_8100;
  undefined4 uStack_80fc;
  undefined4 uStack_80f8;
  undefined4 uStack_80f4;
  undefined4 uStack_80f0;
  undefined4 uStack_80ec;
  undefined4 uStack_80e8;
  undefined4 uStack_80e4;
  undefined4 uStack_80e0;
  undefined4 uStack_80dc;
  int iStack_80d8;
  undefined4 uStack_80d4;
  undefined *puStack_80d0;
  undefined4 uStack_80cc;
  undefined4 uStack_80c8;
  undefined4 uStack_80c4;
  int iStack_80c0;
  undefined4 uStack_80bc;
  undefined4 uStack_80b8;
  undefined1 auStack_80b4 [32768];
  uint uStack_b4;
  undefined *puStack_b0;
  undefined *puStack_ac;
  undefined *puStack_a8;
  undefined4 *puStack_a4;
  undefined1 *puStack_a0;
  undefined4 uStack_6c;
  undefined1 auStack_68 [4];
  char *pcStack_64;
  undefined *puStack_60;
  undefined *puStack_5c;
  undefined *puStack_58;
  undefined4 *puStack_54;
  undefined4 local_30;
  undefined4 local_2c;
  uint local_24;
  undefined4 local_20;
  int local_1c;
  
  puVar1 = PTR_DAT_000bc178;
  local_1c = *(int *)PTR___stack_chk_guard_000bccd8;
  if (*(int *)(PTR_DAT_000bc178 + -0x31ec) == 0) {
    uVar3 = FUN_000280f4();
  }
  else {
    xfer_download_queue(*(undefined4 *)(PTR_DAT_000bc178 + -0x3244));
    unaff_s3 = (undefined4 *)sftp_recv();
    puVar1 = (undefined *)xfer_download_gotpkt(*(undefined4 *)(puVar1 + -0x3244),unaff_s3);
    if ((int)puVar1 < 1) {
      param_2 = *(undefined **)PTR_stderr_000bccf0;
      uVar7 = fxp_error();
      FUN_00027ff8(param_2,PTR_s_Server_sent_command_exit_status___000bc188 + -0x4abc,uVar7);
      if (puVar1 == (undefined *)0x80000000) {
        safefree(unaff_s3);
      }
      *(int *)(PTR_DAT_000bc178 + -0x31e0) = *(int *)(PTR_DAT_000bc178 + -0x31e0) + 1;
      uVar3 = 0xffffffff;
    }
    else {
      iVar2 = xfer_download_data(*(undefined4 *)(PTR_DAT_000bc178 + -0x3244),&local_20,&local_24);
      if (iVar2 == 0) {
        local_24 = 0;
      }
      else {
        param_2 = (undefined *)(uint)((int)param_2 < (int)local_24);
        if ((int)local_24 < 1) {
          FUN_00027ff8(*(undefined4 *)PTR_stderr_000bccf0,
                       PTR_s_Server_sent_command_exit_status___000bc188 + -0x4a9c);
          *(int *)(PTR_DAT_000bc178 + -0x31e0) = *(int *)(PTR_DAT_000bc178 + -0x31e0) + 1;
          safefree(local_20);
          uVar3 = 0xffffffff;
          goto LAB_0002d148;
        }
        if (param_2 != (undefined *)0x0) {
          uVar3 = (*(code *)PTR___assert_fail_000bcb00)
                            (PTR_s_Server_sent_command_exit_status___000bc188 + -0x4a7c,
                             PTR_s_Server_sent_command_exit_status___000bc188 + -0x4fb0,0x628,
                             PTR_s_Server_sent_command_exit_status___000bc188 + -0x45f0);
          return uVar3;
        }
        (*(code *)PTR_memcpy_000bccdc)(param_1,local_20);
        safefree(local_20);
      }
      param_2 = PTR_DAT_000bc178;
      puVar1 = PTR_DAT_000bc178 + -0x324c;
      uint64_add32(&local_30,*(undefined4 *)(PTR_DAT_000bc178 + -0x324c),
                   *(undefined4 *)(PTR_DAT_000bc178 + -0x3248),local_24);
      *(undefined4 *)(param_2 + -0x324c) = local_30;
      *(undefined4 *)(param_2 + -0x3248) = local_2c;
      uVar3 = local_24;
    }
  }
LAB_0002d148:
  if (local_1c == *(int *)PTR___stack_chk_guard_000bccd8) {
    return uVar3;
  }
  puVar5 = PTR___stack_chk_fail_000bccb0;
  (*(code *)PTR___stack_chk_fail_000bccb0)();
  pcStack_64 = (char *)**(undefined4 **)(puVar5 + 0x8fa44);
  puStack_60 = param_2;
  puStack_5c = puVar1;
  puStack_58 = param_1;
  puStack_54 = unaff_s3;
  if (*(int *)(*(int *)(puVar5 + 0x8eee4) + -0x31ec) == 0) {
    puVar14 = (undefined *)(*(int *)(puVar5 + 0x8eef4) + -0x17dc);
    (**(code **)(*(int *)(*(int *)(puVar5 + 0x8eee4) + -0x31f4) + 0xc))
              (*(undefined4 *)(*(int *)(puVar5 + 0x8eee4) + -0x31f8),puVar14,1);
    uVar3 = FUN_00028400();
  }
  else {
    xfer_set_error(*(undefined4 *)(*(int *)(puVar5 + 0x8eee4) + -0x3244));
    iVar2 = *(int *)(puVar5 + 0x8eee4);
    unaff_s4 = auStack_68;
    unaff_s3 = &uStack_6c;
    while (iVar24 = xfer_done(*(undefined4 *)(iVar2 + -0x3244)), iVar24 == 0) {
      param_1 = (undefined *)sftp_recv();
      puVar1 = (undefined *)xfer_download_gotpkt(*(undefined4 *)(iVar2 + -0x3244),param_1);
      if ((int)puVar1 < 1) {
        param_2 = (undefined *)**(undefined4 **)(puVar5 + 0x8fa5c);
        uVar7 = fxp_error();
        puVar14 = (undefined *)(*(int *)(puVar5 + 0x8eef4) + -0x4abc);
        FUN_00027ff8(param_2,puVar14,uVar7);
        if (puVar1 == (undefined *)0x80000000) {
          safefree(param_1);
          iVar2 = *(int *)(puVar5 + 0x8eee4);
        }
        else {
          iVar2 = *(int *)(puVar5 + 0x8eee4);
        }
        *(int *)(iVar2 + -0x31e0) = *(int *)(iVar2 + -0x31e0) + 1;
        uVar3 = 0xffffffff;
        goto LAB_0002d318;
      }
      iVar24 = xfer_download_data(*(undefined4 *)(iVar2 + -0x3244),unaff_s3,unaff_s4);
      if (iVar24 != 0) {
        safefree(uStack_6c);
      }
    }
    xfer_cleanup(*(undefined4 *)(*(int *)(puVar5 + 0x8eee4) + -0x3244));
    param_2 = (undefined *)fxp_close_send(*(undefined4 *)(*(int *)(puVar5 + 0x8eee4) + -0x3240));
    uVar7 = sftp_wait_for_reply(param_2);
    puVar14 = param_2;
    fxp_close_recv(uVar7);
    uVar3 = 0;
  }
LAB_0002d318:
  if (pcStack_64 == (char *)**(undefined4 **)(puVar5 + 0x8fa44)) {
    return uVar3;
  }
  pcVar28 = *(code **)(puVar5 + 0x8fa1c);
  pcVar13 = pcStack_64;
  (*pcVar28)();
  pcStack_8138 = pcVar28 + 0x96c70;
  uStack_b4 = **(uint **)(pcVar28 + 0x8f7f8);
  pcStack_812c = pcVar13;
  puStack_8118 = puVar14;
  puStack_b0 = param_2;
  puStack_ac = puVar1;
  puStack_a8 = param_1;
  puStack_a4 = unaff_s3;
  puStack_a0 = unaff_s4;
  iVar2 = (**(code **)(pcVar28 + 0x8ef84))();
  if ((*(int *)(*(int *)(pcStack_8138 + -0x7fd8) + -0x31d4) != 0) && (iVar2 != 2)) {
    FUN_00028270(*(int *)(pcStack_8138 + -0x7fc8) + -0x4a68,pcStack_812c);
  }
  scp_sink_init();
  iVar24 = 0;
  pcStack_8128 = (code *)(*(int *)(pcStack_8138 + -0x7db0) + -0x7d90);
  pcStack_810c = (code *)(*(int *)(pcStack_8138 + -0x7db0) + -0x6cb8);
  iStack_8110 = *(int *)(pcStack_8138 + -0x7fc8) + -0x4878;
LAB_0002d77c:
  do {
    iVar4 = scp_get_sink_action(&iStack_80d8);
    if ((iVar4 != 0) || (iStack_80d8 == 3)) goto LAB_0002da64;
  } while (iStack_80d8 == 4);
  if (iVar2 == 2) {
    param_1 = auStack_100b0;
    puVar1 = (undefined *)(**(code **)(pcStack_8138 + -0x7cac))(puStack_80d0,1);
    if (puStack_80d0 != puVar1) {
      puVar23 = *(undefined4 **)(pcStack_8138 + -0x7460);
      param_1 = (undefined *)(*(int *)(pcStack_8138 + -0x7fcc) + 0x7ff8);
      FUN_00027ff8(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x4a54);
      FUN_00027ff8(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x4a20,puVar1);
    }
    iVar4 = (**(code **)(pcStack_8138 + -0x7640))(puVar1,*(int *)(pcStack_8138 + -0x7fc8) + -0x48b0)
    ;
    if (puVar1[iVar4] == '\0') {
      (*pcStack_8128)(*(int *)(pcStack_8138 + -0x7fc8) + -0x49f8);
    }
    if (puStack_8118 != (undefined *)0x0) {
      param_1 = (undefined *)(**(code **)(pcStack_8138 + -0x7cac))(puStack_8118,1);
      iVar4 = (**(code **)(pcStack_8138 + -0x743c))(puVar1,param_1);
      if ((iVar4 != 0) &&
         (puVar23 = *(undefined4 **)(pcStack_8138 + -0x7460),
         *(int *)(*(int *)(pcStack_8138 + -0x7fd8) + -0x31ec) == 0 &&
         *(int *)(*(int *)(pcStack_8138 + -0x7fd8) + -0x31dc) == 0)) {
        FUN_00027ff8(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x49ac,puVar1);
        FUN_00027ff8(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x4970,param_1);
        FUN_00027ff8(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x4940);
        FUN_00027ff8(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x48f8);
        puVar1 = param_1;
      }
    }
    if (*pcStack_812c == '\0') {
      unaff_s3 = (undefined4 *)dupstr(puVar1);
    }
    else {
      unaff_s3 = (undefined4 *)(**(code **)(pcStack_8138 + -0x7c78))(pcStack_812c,puVar1);
    }
  }
  else {
    unaff_s3 = (undefined4 *)dupstr(pcStack_812c);
  }
  iVar4 = (**(code **)(pcStack_8138 + -0x7cec))(unaff_s3);
  if (iStack_80d8 == 2) {
    if (iVar4 == 0) {
      iVar4 = (**(code **)(pcStack_8138 + -0x7c80))(unaff_s3);
      if (iVar4 == 0) {
        FUN_0002a658(*(int *)(pcStack_8138 + -0x7fc8) + -0x48ac,unaff_s3);
        safefree(unaff_s3);
        goto LAB_0002d77c;
      }
    }
    else if (iVar4 != 2) {
      FUN_0002a658(*(int *)(pcStack_8138 + -0x7fc8) + -0x4a68,unaff_s3);
      safefree(unaff_s3);
      goto LAB_0002d77c;
    }
    FUN_0002d4e0(unaff_s3,0);
    safefree(unaff_s3);
    goto LAB_0002d77c;
  }
  unaff_s5 = (**(code **)(pcStack_8138 + -0x7c84))(unaff_s3,uStack_80cc);
  if (unaff_s5 == 0) {
    FUN_0002a658(*(int *)(pcStack_8138 + -0x7fc8) + -0x4890,unaff_s3);
    safefree(unaff_s3);
    goto LAB_0002d77c;
  }
  iStack_8120 = scp_accept_filexfer();
  if (iStack_8120 == 0) {
    puVar1 = auStack_100b0;
    uint64_make(&uStack_80f8,0,0);
    uStack_8114 = (**(code **)(pcStack_8138 + -0x7488))(0);
    uStack_811c = (**(code **)(pcStack_8138 + -0x7cac))(unaff_s3,1);
    uint64_make(&uStack_8100,0,0);
    iStack_8124 = *(int *)(pcStack_8138 + -0x7fc8);
    unaff_s7 = *(int *)(pcStack_8138 + -0x7fd8);
LAB_0002db64:
    do {
      iVar4 = uint64_compare(uStack_8100,uStack_80fc,uStack_80c8,uStack_80c4);
      if (-1 < iVar4) goto LAB_0002de88;
      uint64_make(&uStack_80f0,0,0x8000);
      uStack_8148 = uStack_80fc;
      uint64_subtract(&uStack_80e8,uStack_80c8,uStack_80c4,uStack_8100);
      iVar4 = uint64_compare(uStack_80f0,uStack_80ec,uStack_80e8,uStack_80e4);
      if (0 < iVar4) {
        uStack_8148 = uStack_80fc;
        uint64_subtract(&uStack_80f0,uStack_80c8,uStack_80c4,uStack_8100);
      }
      puVar1 = (undefined *)scp_recv_filedata(auStack_80b4,uStack_80ec);
      if ((int)puVar1 < 1) {
        (*pcStack_8128)(iStack_8124 + -0x5640);
      }
      if (iVar24 == 0) {
        puVar5 = (undefined *)(**(code **)(pcStack_8138 + -0x7c68))(unaff_s5,auStack_80b4,puVar1);
        if (puVar5 == puVar1) {
          if (*(int *)(unaff_s7 + -0x3fa8) != 0) {
            uint64_add32(&uStack_8108,uStack_80f8,uStack_80f4,puVar1);
            uStack_80f8 = uStack_8108;
            uStack_80f4 = uStack_8104;
            iVar4 = (**(code **)(pcStack_8138 + -0x7488))(0);
            if (iVar4 <= iStack_8120) {
              uint64_add32(&uStack_80e0,uStack_8100,uStack_80fc,puVar1);
              iVar4 = uint64_compare(uStack_80e0,uStack_80dc,uStack_80c8,uStack_80c4);
              if (iVar4 != 0) goto LAB_0002dc94;
            }
            iStack_8140 = (**(code **)(pcStack_8138 + -0x7488))(0);
            uStack_8144 = uStack_8114;
            uStack_8148 = uStack_80f4;
            iStack_8120 = iStack_8140;
            (*pcStack_810c)(uStack_811c,uStack_80c8,uStack_80c4,uStack_80f8);
          }
LAB_0002dc94:
          param_1 = auStack_100b0;
          uint64_add32(&uStack_8108,uStack_8100,uStack_80fc,puVar1);
          uStack_8100 = uStack_8108;
          uStack_80fc = uStack_8104;
          goto LAB_0002db64;
        }
        if (*(int *)(unaff_s7 + -0x3fa8) != 0) {
          (**(code **)(pcStack_8138 + -0x759c))
                    (1,*(int *)(pcStack_8138 + -0x7fc8) + -0x4850,uStack_811c,iStack_8110);
        }
        uint64_add32(&uStack_8108,uStack_8100,uStack_80fc,puVar1);
      }
      else {
        uint64_add32(&uStack_8108,uStack_8100,uStack_80fc,puVar1);
      }
      param_1 = auStack_100b0;
      iVar24 = 1;
      uStack_8100 = uStack_8108;
      uStack_80fc = uStack_8104;
    } while( true );
  }
  safefree(unaff_s3);
  (**(code **)(pcStack_8138 + -0x7c70))(unaff_s5);
LAB_0002da64:
  pcVar28 = *(code **)(pcStack_8138 + -0x74a0);
  if (uStack_b4 == **(uint **)(pcStack_8138 + -0x7478)) {
    return **(uint **)(pcStack_8138 + -0x7478);
  }
  pcVar30 = version;
  (*pcVar28)();
  pcStack_8168 = pcVar28 + 0x961d8;
  uStack_8160 = 0xffff0000;
  pcStack_815c = pcVar30;
  uVar6 = buildinfo(*(int *)(pcVar28 + 0x8e210) + 0xaa4);
  uVar17 = *(undefined4 *)(pcStack_8168 + -0x7da8);
  iVar4 = *(int *)(pcStack_8168 + -0x7fc8) + -0x482c;
  uVar7 = uVar6;
  (**(code **)(pcStack_8168 + -0x759c))(1);
  safefree(uVar6);
  uVar12 = 0;
  pcVar28 = *(code **)(pcStack_8168 + -0x7504);
  pcVar30 = cmdline_error;
  (*pcVar28)();
  pcStack_8198 = pcVar28 + 0x96158;
  uStack_818c = **(undefined4 **)(pcVar28 + 0x8ece0);
  puVar23 = *(undefined4 **)(pcVar28 + 0x8ecf8);
  uStack_8184 = uVar6;
  puStack_8180 = puVar1;
  pcStack_817c = pcVar30;
  iStack_8174 = iVar4;
  uStack_8170 = uVar17;
  uStack_816c = uVar7;
  (**(code **)(pcVar28 + 0x8ec90))(*(int *)(pcVar28 + 0x8e190) + -0x4e28,1,6,*puVar23);
  piStack_8190 = &iStack_8174;
  (**(code **)(pcStack_8198 + -0x7444))(*puVar23,1,uVar12);
  iVar15 = 1;
  (**(code **)(pcStack_8198 + -0x74c8))(*(int *)(pcStack_8198 + -0x7fc8) + -0x481c,1,0x27,*puVar23);
  iVar4 = 1;
  pcVar28 = *(code **)(pcStack_8198 + -0x7504);
  pcVar30 = psftp_main;
  (*pcVar28)();
  pcStack_81e8 = pcVar28 + 0x9609c;
  puStack_81d4 = (undefined4 *)**(undefined4 **)(pcVar28 + 0x8ec24);
  **(undefined4 **)(pcVar28 + 0x8e144) = 1;
  **(undefined4 **)(pcVar28 + 0x8e158) = 2;
  **(undefined4 **)(pcVar28 + 0x8e120) = 1;
  puStack_81d0 = puVar23;
  uStack_81cc = uVar12;
  puStack_81c8 = param_1;
  puStack_81c4 = unaff_s3;
  iStack_81c0 = iVar24;
  iStack_81bc = unaff_s5;
  piStack_81b8 = &iStack_80d8;
  iStack_81b4 = unaff_s7;
  iStack_81b0 = iVar2;
  pcStack_81ac = pcVar30;
  (**(code **)(pcVar28 + 0x8e444))();
  uVar7 = conf_new();
  *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31fc) = uVar7;
  do_defaults(0,uVar7);
  **(undefined4 **)(pcStack_81e8 + -0x7f60) = 0;
  pcVar28 = pcStack_81e8;
  if (iVar4 < 2) {
    iVar2 = 1;
  }
  else {
    pcVar13 = *(char **)(iVar15 + 4);
    piVar19 = (int *)(iVar15 + 4);
    if (*pcVar13 == '-') {
      iVar25 = *(int *)(pcStack_81e8 + -0x7fd8);
      iVar26 = *(int *)(pcStack_81e8 + -0x7fc8);
      pcVar27 = (char *)(*(int *)(pcStack_81e8 + -0x7fc8) + -0x47b8);
      iVar29 = *(int *)(pcStack_81e8 + -0x7fc8);
      pcStack_81dc = (code *)(*(int *)(pcStack_81e8 + -0x7db0) + -0x79e4);
      iVar24 = 1;
LAB_0002e488:
      iVar2 = iVar24 + 1;
      uVar7 = 0;
      if (iVar2 < iVar4) {
        uVar7 = *(undefined4 *)(iVar15 + (iVar24 + 1) * 4);
      }
      iVar8 = cmdline_process_param(pcVar13,uVar7,1,*(undefined4 *)(iVar25 + -0x31fc));
      pcVar28 = pcStack_81e8;
      if (iVar8 == -2) {
        cmdline_error(*(int *)(pcStack_81e8 + -0x7fc8) + -0x47e4,*piVar19);
        uVar7 = extraout_v1;
LAB_0002e1d0:
        iVar2 = iVar24;
        if ((**(uint **)(pcVar28 + -0x7f44) & 1) != 0) {
          *(undefined4 *)(*(int *)(pcVar28 + -0x7fd8) + -0x31c8) = uVar7;
        }
        goto LAB_0002e464;
      }
      uVar7 = 1;
      if (iVar8 == 2) goto LAB_0002e464;
      if (iVar8 == 1) goto LAB_0002e1d0;
      iVar20 = *piVar19;
      iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar26 + -0x47c0);
      if (iVar8 == 0) {
        (**(code **)(pcStack_81e8 + -0x7c54))();
        uVar3 = 1;
        goto LAB_0002e878;
      }
      iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20);
      if (iVar8 == 0) {
        *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31cc) = 1;
        pcVar28 = pcStack_81e8;
        iVar2 = iVar24;
      }
      else {
        iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar29 + -0x47b4);
        if (iVar8 == 0) {
          *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d0) = 1;
          pcVar28 = pcStack_81e8;
          iVar2 = iVar24;
        }
        else {
          iVar8 = (**(code **)(pcStack_81e8 + -0x743c))
                            (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47b0);
          if (iVar8 == 0) {
            *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fa8) = 0;
            pcVar28 = pcStack_81e8;
            iVar2 = iVar24;
          }
          else {
            iVar8 = (**(code **)(pcStack_81e8 + -0x743c))
                              (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47ac);
            if ((iVar8 != 0) &&
               (iVar8 = (**(code **)(pcStack_81e8 + -0x743c))
                                  (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47a8), iVar8 != 0))
            {
              iVar8 = (**(code **)(pcStack_81e8 + -0x743c))
                                (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47a4);
              if (iVar8 != 0) {
                iVar8 = (**(code **)(pcStack_81e8 + -0x743c))
                                  (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x479c);
                iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);
                if (iVar8 == 0) {
LAB_0002e348:
                  pcVar28 = pcStack_81e8;
                  version();
                }
                else {
                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar16 + -0x4798);
                  iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);
                  if (iVar8 == 0) goto LAB_0002e348;
                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar16 + -0x478c);
                  iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);
                  pcVar28 = pcStack_81e8;
                  if (iVar8 == 0) {
                    *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31c4) = 1;
                    iVar2 = iVar24;
                    goto LAB_0002e464;
                  }
                }
                iVar8 = (**(code **)(pcVar28 + -0x743c))(iVar20,iVar16 + -0x4788);
                if (iVar8 == 0) {
                  **(undefined4 **)(pcStack_81e8 + -0x7c4c) = 1;
                  pcVar28 = pcStack_81e8;
                  iVar2 = iVar24;
                }
                else {
                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))
                                    (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4780);
                  if (iVar8 == 0) {
                    *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31dc) = 1;
                    pcVar28 = pcStack_81e8;
                    iVar2 = iVar24;
                  }
                  else {
                    iVar8 = (**(code **)(pcStack_81e8 + -0x743c))
                                      (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4778);
                    if (iVar8 == 0) {
                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac) = 0;
                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0) = 1;
                      pcVar28 = pcStack_81e8;
                      iVar2 = iVar24;
                      goto LAB_0002e464;
                    }
                    iVar8 = (**(code **)(pcStack_81e8 + -0x743c))
                                      (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4770);
                    if (iVar8 == 0) {
                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac) = 1;
                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0) = 0;
                      pcVar28 = pcStack_81e8;
                      iVar2 = iVar24;
                    }
                    else {
                      iVar24 = (**(code **)(pcStack_81e8 + -0x743c))
                                         (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4768);
                      pcVar28 = pcStack_81e8;
                      if (iVar24 == 0) goto LAB_0002e52c;
                      cmdline_error(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4764,iVar20);
                    }
                  }
                }
                goto LAB_0002e464;
              }
            }
            (*pcStack_81dc)();
            pcVar28 = pcStack_81e8;
            iVar2 = iVar24;
          }
        }
      }
LAB_0002e464:
      iVar2 = iVar2 + 1;
      if (iVar4 <= iVar2) goto LAB_0002e52c;
      piVar19 = (int *)(iVar15 + iVar2 * 4);
      pcVar13 = (char *)*piVar19;
      iVar24 = iVar2;
      if (*pcVar13 != '-') goto LAB_0002e52c;
      goto LAB_0002e488;
    }
    iVar2 = 1;
  }
LAB_0002e52c:
  iVar4 = iVar4 - iVar2;
  *(undefined4 *)(*(int *)(pcVar28 + -0x7fd8) + -0x31f4) = 0;
  puVar23 = (undefined4 *)(iVar15 + iVar2 * 4);
  if (*(int *)(*(int *)(pcVar28 + -0x7fd8) + -0x31c4) == 0) {
    if (iVar4 < 2) {
      FUN_0002861c();
      puVar18 = puVar23 + iVar4 + 0x3fffffff;
      iVar24 = FUN_00028968(*puVar18);
      iVar2 = *(int *)(pcStack_81e8 + -0x7fd8);
      if (iVar24 != 0) goto LAB_0002e90c;
      *(undefined4 *)(iVar2 + -0x31f0) = 0;
LAB_0002efd8:
      iVar2 = *(int *)(pcStack_81e8 + -0x7fc8);
LAB_0002efdc:
      FUN_00028270(iVar2 + -0x4668);
      pcVar13 = (char *)*puVar23;
LAB_0002eb34:
      uVar7 = puVar23[1];
      puVar9 = (undefined1 *)FUN_00028968(pcVar13);
      if (puVar9 == (undefined1 *)0x0) {
        FUN_00028270(*(int *)(pcStack_81e8 + -0x7fc8) + -0x463c);
        uRam00000000 = 0;
      }
      else {
        *puVar9 = 0;
      }
      if (puVar9[1] == '\0') {
        pcVar27 = (char *)(*(int *)(pcStack_81e8 + -0x7fc8) + -0x48b0);
      }
      else {
        pcVar27 = puVar9 + 1;
      }
      puVar9 = (undefined1 *)(**(code **)(pcStack_81e8 + -0x75b8))(pcVar13,0x40);
      if (puVar9 == (undefined1 *)0x0) {
        pcVar21 = (char *)0x0;
      }
      else {
        *puVar9 = 0;
        cVar11 = *pcVar13;
        pcVar21 = pcVar13;
        pcVar13 = puVar9 + 1;
        if (cVar11 == '\0') {
          pcVar21 = (char *)0x0;
        }
      }
      if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31c8) == 0) {
        iVar2 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;
      }
      else {
        iVar2 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47f4;
      }
      if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31cc) == 0) {
        iVar24 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;
      }
      else {
        iVar24 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47f0;
      }
      if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d0) == 0) {
        iVar4 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;
      }
      else {
        iVar4 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47ec;
      }
      if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4) == 0) {
        iStack_81f0 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;
      }
      else {
        iStack_81f0 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47e8;
      }
      pcStack_81ec = pcVar27;
      uVar6 = dupprintf(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4618,iVar2,iVar24,iVar4);
      FUN_00028a00(pcVar13,pcVar21,uVar6);
      safefree(uVar6);
      iVar2 = scp_sink_setup(pcVar27,*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d0),
                             *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31cc));
      if (iVar2 == 0) {
        FUN_0002d4e0(uVar7);
        iVar2 = *(int *)(pcStack_81e8 + -0x7fd8);
        goto LAB_0002e788;
      }
    }
    else {
      if (iVar4 < 3) {
        puVar18 = puVar23 + iVar4 + 0x3fffffff;
        iVar2 = FUN_00028968(*puVar18);
        if (iVar2 == 0) {
          *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f0) = 0;
          iVar2 = *(int *)(pcStack_81e8 + -0x7fc8);
          if (iVar4 != 2) goto LAB_0002efdc;
          pcVar13 = (char *)*puVar23;
          goto LAB_0002eb34;
        }
      }
      else {
        *(undefined4 *)(*(int *)(pcVar28 + -0x7fd8) + -0x31d4) = 1;
        puVar18 = puVar23 + iVar4 + 0x3fffffff;
        iVar2 = FUN_00028968(*puVar18);
        if (iVar2 == 0) {
          *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f0) = 0;
          goto LAB_0002efd8;
        }
      }
      iVar2 = *(int *)(pcStack_81e8 + -0x7fd8);
LAB_0002e90c:
      *(undefined4 *)(iVar2 + -0x31f0) = 1;
      pcVar13 = (char *)*puVar18;
      puVar9 = (undefined1 *)FUN_00028968(pcVar13);
      if (puVar9 == (undefined1 *)0x0) {
        FUN_00028270(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4720);
        uRam00000000 = 0;
      }
      else {
        *puVar9 = 0;
      }
      if (puVar9[1] == '\0') {
        pcVar21 = (char *)(*(int *)(pcStack_81e8 + -0x7fc8) + -0x48b0);
      }
      else {
        pcVar21 = puVar9 + 1;
      }
      puVar9 = (undefined1 *)(**(code **)(pcStack_81e8 + -0x75b8))(pcVar13,0x40);
      if (puVar9 == (undefined1 *)0x0) {
        pcVar27 = (char *)0x0;
      }
      else {
        *puVar9 = 0;
        cVar11 = *pcVar13;
        pcVar27 = pcVar13;
        pcVar13 = puVar9 + 1;
        if (cVar11 == '\0') {
          pcVar27 = (char *)0x0;
        }
      }
      if (iVar4 == 2) {
        iVar2 = FUN_00028968(*puVar23);
        if (iVar2 != 0) {
          FUN_00028270(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4704,*puVar23);
        }
        iVar2 = (**(code **)(pcStack_81e8 + -0x7c30))(*puVar23,1);
        if (iVar2 == 0) {
          FUN_00028270(*(int *)(pcStack_81e8 + -0x7fc8) + -0x46e0,*puVar23);
          iVar24 = *(int *)(pcStack_81e8 + -0x7fd8);
        }
        else {
          iVar24 = *(int *)(pcStack_81e8 + -0x7fd8);
          if (iVar2 == 2) {
            *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4) = 1;
            goto LAB_0002e988;
          }
        }
      }
      else {
LAB_0002e988:
        iVar24 = *(int *)(pcStack_81e8 + -0x7fd8);
      }
      if (*(int *)(iVar24 + -0x31c8) == 0) {
        iVar2 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;
      }
      else {
        iVar2 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47f4;
      }
      if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31cc) == 0) {
        iVar24 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;
      }
      else {
        iVar24 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47f0;
      }
      if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d0) == 0) {
        iVar15 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;
      }
      else {
        iVar15 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47ec;
      }
      if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4) == 0) {
        iStack_81f0 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;
      }
      else {
        iStack_81f0 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47e8;
      }
      pcStack_81ec = pcVar21;
      uVar7 = dupprintf(*(int *)(pcStack_81e8 + -0x7fc8) + -0x46c0,iVar2,iVar24,iVar15);
      FUN_00028a00(pcVar13,pcVar27,uVar7);
      safefree(uVar7);
      pcVar27 = *(char **)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4);
      iVar2 = scp_source_setup(pcVar21);
      if ((iVar2 == 0) && (1 < iVar4)) {
        puVar18 = puVar23 + iVar4 + -1;
        iVar24 = *(int *)(pcStack_81e8 + -0x7db0);
        iVar25 = *(int *)(pcStack_81e8 + -0x7fc8);
        iVar15 = *(int *)(pcStack_81e8 + -0x7db0);
        iVar4 = *(int *)(pcStack_81e8 + -0x7fc8);
        do {
          pcVar13 = (char *)*puVar23;
          iVar2 = FUN_00028968(pcVar13);
          if (iVar2 == 0) {
            pcVar27 = (char *)0x1;
            iVar2 = (**(code **)(pcStack_81e8 + -0x7c30))(pcVar13,1,pcVar13);
            if (iVar2 == 0) {
              (*(code *)(iVar15 + -0x59a8))(iVar25 + -0x4688);
              pcVar27 = pcVar13;
            }
            else if (iVar2 == 1) {
              (*(code *)(iVar24 + -0x4b8c))(pcVar13);
            }
            else {
              iVar2 = (**(code **)(pcStack_81e8 + -0x7c2c))();
              if (iVar2 == 0) {
                (*(code *)(iVar15 + -0x59a8))(iVar25 + -0x4688);
                pcVar27 = pcVar13;
              }
              else {
                while (iVar26 = (**(code **)(pcStack_81e8 + -0x7c28))(iVar2), iVar26 != 0) {
                  (*(code *)(iVar24 + -0x4b8c))(iVar26);
                  safefree(iVar26);
                }
                (**(code **)(pcStack_81e8 + -0x7c24))(iVar2);
              }
            }
          }
          else {
            pcVar27 = (char *)(iVar4 + -0x46ac);
            FUN_00027ff8(**(undefined4 **)(pcStack_81e8 + -0x7460));
            *(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31e0) =
                 *(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31e0) + 1;
          }
          puVar23 = puVar23 + 1;
          iVar2 = *(int *)(pcStack_81e8 + -0x7fd8);
        } while (puVar18 != puVar23);
        goto LAB_0002e788;
      }
    }
  }
  else {
    if (iVar4 == 1) {
      pcVar13 = (char *)*puVar23;
    }
    else {
      FUN_0002861c();
      pcVar13 = (char *)*puVar23;
    }
    puVar9 = (undefined1 *)FUN_00028968(pcVar13);
    if (puVar9 == (undefined1 *)0x0) {
      FUN_00028270(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4750);
      uRam00000000 = 0;
    }
    else {
      *puVar9 = 0;
    }
    if (puVar9[1] == '\0') {
      puVar9 = (undefined1 *)(**(code **)(pcStack_81e8 + -0x75b8))(pcVar13,0x40);
      if (puVar9 == (undefined1 *)0x0) {
        puVar23 = (undefined4 *)safemalloc(0x68,1);
        iVar2 = *(int *)(pcStack_81e8 + -0x7fc8);
        uVar7 = *(undefined4 *)(iVar2 + -0x4728);
        *puVar23 = *(undefined4 *)(iVar2 + -0x472c);
        puVar23[1] = uVar7;
        *(undefined1 *)(puVar23 + 2) = *(undefined1 *)(iVar2 + -0x4724);
        iVar2 = (**(code **)(pcStack_81e8 + -0x752c))(puVar23);
        pcVar10 = (char *)((int)puVar23 + iVar2);
        pcVar21 = (char *)(*(int *)(pcStack_81e8 + -0x7fc8) + -0x48b0);
        cVar11 = '.';
        pcVar27 = (char *)0x0;
        pcVar22 = pcVar21;
        goto LAB_0002e6b4;
      }
      pcVar21 = (char *)(*(int *)(pcStack_81e8 + -0x7fc8) + -0x48b0);
LAB_0002e5ac:
      *puVar9 = 0;
      cVar11 = *pcVar13;
      pcVar27 = pcVar13;
      pcVar13 = puVar9 + 1;
      if (cVar11 == '\0') {
        pcVar27 = (char *)0x0;
      }
    }
    else {
      pcVar21 = puVar9 + 1;
      puVar9 = (undefined1 *)(**(code **)(pcStack_81e8 + -0x75b8))(pcVar13);
      if (puVar9 != (undefined1 *)0x0) goto LAB_0002e5ac;
      pcVar27 = (char *)0x0;
    }
    iVar2 = (**(code **)(pcStack_81e8 + -0x752c))(pcVar21);
    puVar23 = (undefined4 *)safemalloc((iVar2 + 0x19) * 4,1);
    iVar2 = *(int *)(pcStack_81e8 + -0x7fc8);
    uVar7 = *(undefined4 *)(iVar2 + -0x4728);
    *puVar23 = *(undefined4 *)(iVar2 + -0x472c);
    puVar23[1] = uVar7;
    *(undefined1 *)(puVar23 + 2) = *(undefined1 *)(iVar2 + -0x4724);
    iVar2 = (**(code **)(pcStack_81e8 + -0x752c))(puVar23);
    pcVar10 = (char *)((int)puVar23 + iVar2);
    cVar11 = *pcVar21;
    pcVar22 = pcVar21;
    while (cVar11 != '\0') {
LAB_0002e6b4:
      if (cVar11 == '\'') {
        builtin_strncpy(pcVar10,"\'\\\'\'",4);
        pcVar10 = pcVar10 + 4;
      }
      else {
        *pcVar10 = cVar11;
        pcVar10 = pcVar10 + 1;
      }
      pcVar21 = pcVar21 + 1;
      cVar11 = *pcVar21;
    }
    *pcVar10 = '\'';
    pcVar10[1] = '\0';
    FUN_00028a00(pcVar13,pcVar27,puVar23);
    safefree(puVar23);
    if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31ec) != 0) {
      scp_sftp_listdir(pcVar22);
      iVar2 = *(int *)(pcStack_81e8 + -0x7fd8);
      goto LAB_0002e788;
    }
    puVar23 = *(undefined4 **)(pcStack_81e8 + -0x7594);
    while( true ) {
      pcVar27 = (char *)0x1;
      iVar2 = FUN_000280f4(&cStack_81d5);
      if (iVar2 < 1) break;
      (**(code **)(pcStack_81e8 + -0x75c4))((int)cStack_81d5,*puVar23);
    }
  }
  iVar2 = *(int *)(pcStack_81e8 + -0x7fd8);
LAB_0002e788:
  pcVar28 = *(code **)(pcStack_81e8 + -0x7c44);
  if (*(int *)(iVar2 + -0x31f4) != 0) {
    iVar2 = (**(code **)(*(int *)(iVar2 + -0x31f4) + 0x20))
                      (*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f8));
    pcVar28 = *(code **)(pcStack_81e8 + -0x7c44);
    if (iVar2 != 0) {
      (**(code **)(*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f4) + 0x18))
                (*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f8),0xc);
      **(undefined4 **)(pcStack_81e8 + -0x7db4) = 1;
      pcVar27 = (char *)0x1;
      FUN_000280f4(&cStack_81d5);
      pcVar28 = *(code **)(pcStack_81e8 + -0x7c44);
    }
  }
  (*pcVar28)();
  cmdline_cleanup();
  (**(code **)(pcStack_81e8 + -0x7d88))(0);
  iVar20 = *(int *)(pcStack_81e8 + -0x7fd8);
  iVar24 = *(int *)(pcStack_81e8 + -0x7fd8);
  (**(code **)(*(int *)(iVar24 + -0x31f4) + 4))(*(undefined4 *)(iVar20 + -0x31f8));
  *(undefined4 *)(iVar20 + -0x31f8) = 0;
  *(undefined4 *)(iVar24 + -0x31f4) = 0;
  (**(code **)(pcStack_81e8 + -0x7c3c))();
  uVar3 = (uint)(*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31e0) != 0);
LAB_0002e878:
  if (puStack_81d4 == (undefined4 *)**(int **)(pcStack_81e8 + -0x7478)) {
    return uVar3;
  }
  pcVar28 = *(code **)(pcStack_81e8 + -0x74a0);
  uVar12 = 0x2f008;
  puVar23 = puStack_81d4;
  (*pcVar28)();
  pcStack_8218 = pcVar28 + 0x95140;
  uVar7 = *puVar23;
  uVar6 = *(undefined4 *)pcVar27;
  iStack_820c = iVar24;
  iStack_8208 = iVar20;
  uStack_8204 = uVar12;
  iVar2 = (**(code **)(pcVar28 + 0x8dd04))(uVar7,*(int *)(pcVar28 + 0x8d178) + -0x4584);
  if (iVar2 == 0) {
    uVar3 = 0xffffffff;
  }
  else {
    iVar2 = (**(code **)(pcStack_8218 + -0x743c))(uVar6,*(int *)(pcStack_8218 + -0x7fc8) + -0x4584);
    if (iVar2 == 0) {
      uVar3 = 1;
    }
    else {
      uVar3 = (**(code **)(pcStack_8218 + -0x743c))(uVar7,uVar6);
    }
  }
  return uVar3;
LAB_0002de88:
  if (iStack_80c0 != 0) {
    (**(code **)(pcStack_8138 + -0x7c60))(unaff_s5,uStack_80b8,uStack_80bc);
  }
  (**(code **)(pcStack_8138 + -0x7c70))(unaff_s5);
  if (iVar24 == 0) {
    scp_finish_filerecv();
    safefree(unaff_s3);
    safefree(uStack_80d4);
  }
  else {
    FUN_0002a658(*(int *)(pcStack_8138 + -0x7fc8) + -0x483c,unaff_s3);
    safefree(unaff_s3);
  }
  goto LAB_0002d77c;
}


lui gp,0x9
addiu gp,gp,0x713c
addu gp,gp,t9
addiu sp,sp,-0x48
sw ra,0x44(sp)
sw s3,0x40(sp)
sw s2,0x3c(sp)
sw s1,0x38(sp)
sw s0,0x34(sp)
sw gp,0x10(sp)
or s2,a0,zero
or s0,a1,zero
lw v0,-0x7478(gp)
lw v0,0x0(v0)
sw v0,0x2c(sp)
lw v0,-0x7fd8(gp)
lw v0,-0x31ec(v0)
beq v0,zero,0x0002d26c
_lw s1,-0x7fd8(gp)
lw a0,-0x3244(s1)
lw t9,-0x7c98(gp)
bal 0x00039010
_nop
lw gp,0x10(sp)
lw t9,-0x7d60(gp)
bal 0x00036954
_nop
lw gp,0x10(sp)
or s3,v0,zero
or a1,v0,zero
lw a0,-0x3244(s1)
lw t9,-0x7c94(gp)
bal 0x00039234
_nop
lw gp,0x10(sp)
blez v0,0x0002d174
_or s1,v0,zero
addiu a2,sp,0x24
addiu a1,sp,0x28
lw v0,-0x7fd8(gp)
lw a0,-0x3244(v0)
lw t9,-0x7c90(gp)
bal 0x00039460
_nop
lw gp,0x10(sp)
beq v0,zero,0x0002d264
_lw a2,0x24(sp)
blez a2,0x0002d1ec
_slt s0,s0,a2
bne s0,zero,0x0002d23c
_lw s0,0x28(sp)
or a1,s0,zero
or a0,s2,zero
lw t9,-0x7474(gp)
jalr t9
_nop
lw gp,0x10(sp)
or a0,s0,zero
lw t9,-0x7fac(gp)
bal 0x00021e38
_nop
lw gp,0x10(sp)
lw s0,-0x7fd8(gp)
lw a3,0x24(sp)
lw a1,-0x324c(s0)
addiu s1,s0,-0x324c
lw a2,0x4(s1)
addiu a0,sp,0x18
lw t9,-0x7eb8(gp)
bal 0x0001f05c
_nop
lw gp,0x10(sp)
lw v0,0x18(sp)
sw v0,-0x324c(s0)
lw v0,0x1c(sp)
sw v0,0x4(s1)
lw v0,0x24(sp)
lw a0,0x2c(sp)
lw v1,-0x7478(gp)
lw v1,0x0(v1)
bne a0,v1,0x0002d288
_lw ra,0x44(sp)
lw s3,0x40(sp)
lw s2,0x3c(sp)
lw s1,0x38(sp)
lw s0,0x34(sp)
jr ra
_addiu sp,sp,0x48
lw v0,-0x7460(gp)
lw s0,0x0(v0)
lw t9,-0x7d58(gp)
bal 0x00036c44
_nop
lw gp,0x10(sp)
or a2,v0,zero
lw a1,-0x7fc8(gp)
addiu a1,a1,-0x4abc
or a0,s0,zero
lw t9,-0x7fcc(gp)
addiu t9,t9,0x7ff8
bal 0x00027ff8
_nop
lw gp,0x10(sp)
lui v0,0x8000
beq s1,v0,0x0002d1d4
_or a0,s3,zero
lw v1,-0x7fd8(gp)
lw v0,-0x31e0(v1)
addiu v0,v0,0x1
sw v0,-0x31e0(v1)
b 0x0002d148
_li v0,-0x1
lw t9,-0x7fac(gp)
bal 0x00021e38
_nop
lw gp,0x10(sp)
b 0x0002d1c0
_lw v1,-0x7fd8(gp)
lw a1,-0x7fc8(gp)
addiu a1,a1,-0x4a9c
lw v0,-0x7460(gp)
lw a0,0x0(v0)
lw t9,-0x7fcc(gp)
addiu t9,t9,0x7ff8
bal 0x00027ff8
_nop
lw gp,0x10(sp)
lw v1,-0x7fd8(gp)
lw v0,-0x31e0(v1)
addiu v0,v0,0x1
sw v0,-0x31e0(v1)
lw a0,0x28(sp)
lw t9,-0x7fac(gp)
bal 0x00021e38
_nop
lw gp,0x10(sp)
b 0x0002d148
_li v0,-0x1
lw a3,-0x7fc8(gp)
addiu a3,a3,-0x45f0
li a2,0x628
lw a1,-0x7fc8(gp)
addiu a1,a1,-0x4fb0
lw a0,-0x7fc8(gp)
addiu a0,a0,-0x4a7c
lw t9,-0x7650(gp)
jalr t9
_nop
b 0x0002d10c
_sw zero,0x24(sp)
lw t9,-0x7db0(gp)
addiu t9,t9,-0x7f0c
bal 0x000280f4
_nop
lw gp,0x10(sp)
b 0x0002d148
_nop
lw t9,-0x74a0(gp)
jalr t9
_nop
(translation_unit "uint scp_recv_filedata(undefined *param_1,undefined *param_2)\n\n{\n  undefined *puVar1;\n  int iVar2;\n  uint uVar3;\n  int iVar4;\n  undefined *puVar5;\n  undefined4 uVar6;\n  undefined4 uVar7;\n  int iVar8;\n  undefined1 *puVar9;\n  char *pcVar10;\n  undefined4 extraout_v1;\n  char cVar11;\n  undefined4 uVar12;\n  char *pcVar13;\n  undefined *puVar14;\n  int iVar15;\n  int iVar16;\n  undefined4 uVar17;\n  undefined4 *puVar18;\n  int *piVar19;\n  int iVar20;\n  char *pcVar21;\n  char *pcVar22;\n  undefined4 *unaff_s3;\n  undefined4 *puVar23;\n  undefined1 *unaff_s4;\n  int iVar24;\n  int unaff_s5;\n  int iVar25;\n  int iVar26;\n  int unaff_s7;\n  char *pcVar27;\n  code *pcVar28;\n  int iVar29;\n  code *pcVar30;\n  undefined auStack_100b0 [32408];\n  code *pcStack_8218;\n  int iStack_820c;\n  int iStack_8208;\n  undefined4 uStack_8204;\n  int iStack_81f0;\n  char *pcStack_81ec;\n  code *pcStack_81e8;\n  code *pcStack_81dc;\n  char cStack_81d5;\n  undefined4 *puStack_81d4;\n  undefined4 *puStack_81d0;\n  undefined4 uStack_81cc;\n  undefined *puStack_81c8;\n  undefined4 *puStack_81c4;\n  int iStack_81c0;\n  int iStack_81bc;\n  int *piStack_81b8;\n  int iStack_81b4;\n  int iStack_81b0;\n  code *pcStack_81ac;\n  code *pcStack_8198;\n  int *piStack_8190;\n  undefined4 uStack_818c;\n  undefined4 uStack_8184;\n  undefined *puStack_8180;\n  code *pcStack_817c;\n  int iStack_8174;\n  undefined4 uStack_8170;\n  undefined4 uStack_816c;\n  code *pcStack_8168;\n  undefined4 uStack_8160;\n  code *pcStack_815c;\n  undefined4 uStack_8148;\n  undefined4 uStack_8144;\n  int iStack_8140;\n  code *pcStack_8138;\n  char *pcStack_812c;\n  code *pcStack_8128;\n  int iStack_8124;\n  int iStack_8120;\n  undefined4 uStack_811c;\n  undefined *puStack_8118;\n  undefined4 uStack_8114;\n  int iStack_8110;\n  code *pcStack_810c;\n  undefined4 uStack_8108;\n  undefined4 uStack_8104;\n  undefined4 uStack_8100;\n  undefined4 uStack_80fc;\n  undefined4 uStack_80f8;\n  undefined4 uStack_80f4;\n  undefined4 uStack_80f0;\n  undefined4 uStack_80ec;\n  undefined4 uStack_80e8;\n  undefined4 uStack_80e4;\n  undefined4 uStack_80e0;\n  undefined4 uStack_80dc;\n  int iStack_80d8;\n  undefined4 uStack_80d4;\n  undefined *puStack_80d0;\n  undefined4 uStack_80cc;\n  undefined4 uStack_80c8;\n  undefined4 uStack_80c4;\n  int iStack_80c0;\n  undefined4 uStack_80bc;\n  undefined4 uStack_80b8;\n  undefined1 auStack_80b4 [32768];\n  uint uStack_b4;\n  undefined *puStack_b0;\n  undefined *puStack_ac;\n  undefined *puStack_a8;\n  undefined4 *puStack_a4;\n  undefined1 *puStack_a0;\n  undefined4 uStack_6c;\n  undefined1 auStack_68 [4];\n  char *pcStack_64;\n  undefined *puStack_60;\n  undefined *puStack_5c;\n  undefined *puStack_58;\n  undefined4 *puStack_54;\n  undefined4 local_30;\n  undefined4 local_2c;\n  uint local_24;\n  undefined4 local_20;\n  int local_1c;\n  \n  puVar1 = PTR_DAT_000bc178;\n  local_1c = *(int *)PTR___stack_chk_guard_000bccd8;\n  if (*(int *)(PTR_DAT_000bc178 + -0x31ec) == 0) {\n    uVar3 = FUN_000280f4();\n  }\n  else {\n    xfer_download_queue(*(undefined4 *)(PTR_DAT_000bc178 + -0x3244));\n    unaff_s3 = (undefined4 *)sftp_recv();\n    puVar1 = (undefined *)xfer_download_gotpkt(*(undefined4 *)(puVar1 + -0x3244),unaff_s3);\n    if ((int)puVar1 < 1) {\n      param_2 = *(undefined **)PTR_stderr_000bccf0;\n      uVar7 = fxp_error();\n      FUN_00027ff8(param_2,PTR_s_Server_sent_command_exit_status___000bc188 + -0x4abc,uVar7);\n      if (puVar1 == (undefined *)0x80000000) {\n        safefree(unaff_s3);\n      }\n      *(int *)(PTR_DAT_000bc178 + -0x31e0) = *(int *)(PTR_DAT_000bc178 + -0x31e0) + 1;\n      uVar3 = 0xffffffff;\n    }\n    else {\n      iVar2 = xfer_download_data(*(undefined4 *)(PTR_DAT_000bc178 + -0x3244),&local_20,&local_24);\n      if (iVar2 == 0) {\n        local_24 = 0;\n      }\n      else {\n        param_2 = (undefined *)(uint)((int)param_2 < (int)local_24);\n        if ((int)local_24 < 1) {\n          FUN_00027ff8(*(undefined4 *)PTR_stderr_000bccf0,\n                       PTR_s_Server_sent_command_exit_status___000bc188 + -0x4a9c);\n          *(int *)(PTR_DAT_000bc178 + -0x31e0) = *(int *)(PTR_DAT_000bc178 + -0x31e0) + 1;\n          safefree(local_20);\n          uVar3 = 0xffffffff;\n          goto LAB_0002d148;\n        }\n        if (param_2 != (undefined *)0x0) {\n          uVar3 = (*(code *)PTR___assert_fail_000bcb00)\n                            (PTR_s_Server_sent_command_exit_status___000bc188 + -0x4a7c,\n                             PTR_s_Server_sent_command_exit_status___000bc188 + -0x4fb0,0x628,\n                             PTR_s_Server_sent_command_exit_status___000bc188 + -0x45f0);\n          return uVar3;\n        }\n        (*(code *)PTR_memcpy_000bccdc)(param_1,local_20);\n        safefree(local_20);\n      }\n      param_2 = PTR_DAT_000bc178;\n      puVar1 = PTR_DAT_000bc178 + -0x324c;\n      uint64_add32(&local_30,*(undefined4 *)(PTR_DAT_000bc178 + -0x324c),\n                   *(undefined4 *)(PTR_DAT_000bc178 + -0x3248),local_24);\n      *(undefined4 *)(param_2 + -0x324c) = local_30;\n      *(undefined4 *)(param_2 + -0x3248) = local_2c;\n      uVar3 = local_24;\n    }\n  }\nLAB_0002d148:\n  if (local_1c == *(int *)PTR___stack_chk_guard_000bccd8) {\n    return uVar3;\n  }\n  puVar5 = PTR___stack_chk_fail_000bccb0;\n  (*(code *)PTR___stack_chk_fail_000bccb0)();\n  pcStack_64 = (char *)**(undefined4 **)(puVar5 + 0x8fa44);\n  puStack_60 = param_2;\n  puStack_5c = puVar1;\n  puStack_58 = param_1;\n  puStack_54 = unaff_s3;\n  if (*(int *)(*(int *)(puVar5 + 0x8eee4) + -0x31ec) == 0) {\n    puVar14 = (undefined *)(*(int *)(puVar5 + 0x8eef4) + -0x17dc);\n    (**(code **)(*(int *)(*(int *)(puVar5 + 0x8eee4) + -0x31f4) + 0xc))\n              (*(undefined4 *)(*(int *)(puVar5 + 0x8eee4) + -0x31f8),puVar14,1);\n    uVar3 = FUN_00028400();\n  }\n  else {\n    xfer_set_error(*(undefined4 *)(*(int *)(puVar5 + 0x8eee4) + -0x3244));\n    iVar2 = *(int *)(puVar5 + 0x8eee4);\n    unaff_s4 = auStack_68;\n    unaff_s3 = &uStack_6c;\n    while (iVar24 = xfer_done(*(undefined4 *)(iVar2 + -0x3244)), iVar24 == 0) {\n      param_1 = (undefined *)sftp_recv();\n      puVar1 = (undefined *)xfer_download_gotpkt(*(undefined4 *)(iVar2 + -0x3244),param_1);\n      if ((int)puVar1 < 1) {\n        param_2 = (undefined *)**(undefined4 **)(puVar5 + 0x8fa5c);\n        uVar7 = fxp_error();\n        puVar14 = (undefined *)(*(int *)(puVar5 + 0x8eef4) + -0x4abc);\n        FUN_00027ff8(param_2,puVar14,uVar7);\n        if (puVar1 == (undefined *)0x80000000) {\n          safefree(param_1);\n          iVar2 = *(int *)(puVar5 + 0x8eee4);\n        }\n        else {\n          iVar2 = *(int *)(puVar5 + 0x8eee4);\n        }\n        *(int *)(iVar2 + -0x31e0) = *(int *)(iVar2 + -0x31e0) + 1;\n        uVar3 = 0xffffffff;\n        goto LAB_0002d318;\n      }\n      iVar24 = xfer_download_data(*(undefined4 *)(iVar2 + -0x3244),unaff_s3,unaff_s4);\n      if (iVar24 != 0) {\n        safefree(uStack_6c);\n      }\n    }\n    xfer_cleanup(*(undefined4 *)(*(int *)(puVar5 + 0x8eee4) + -0x3244));\n    param_2 = (undefined *)fxp_close_send(*(undefined4 *)(*(int *)(puVar5 + 0x8eee4) + -0x3240));\n    uVar7 = sftp_wait_for_reply(param_2);\n    puVar14 = param_2;\n    fxp_close_recv(uVar7);\n    uVar3 = 0;\n  }\nLAB_0002d318:\n  if (pcStack_64 == (char *)**(undefined4 **)(puVar5 + 0x8fa44)) {\n    return uVar3;\n  }\n  pcVar28 = *(code **)(puVar5 + 0x8fa1c);\n  pcVar13 = pcStack_64;\n  (*pcVar28)();\n  pcStack_8138 = pcVar28 + 0x96c70;\n  uStack_b4 = **(uint **)(pcVar28 + 0x8f7f8);\n  pcStack_812c = pcVar13;\n  puStack_8118 = puVar14;\n  puStack_b0 = param_2;\n  puStack_ac = puVar1;\n  puStack_a8 = param_1;\n  puStack_a4 = unaff_s3;\n  puStack_a0 = unaff_s4;\n  iVar2 = (**(code **)(pcVar28 + 0x8ef84))();\n  if ((*(int *)(*(int *)(pcStack_8138 + -0x7fd8) + -0x31d4) != 0) && (iVar2 != 2)) {\n    FUN_00028270(*(int *)(pcStack_8138 + -0x7fc8) + -0x4a68,pcStack_812c);\n  }\n  scp_sink_init();\n  iVar24 = 0;\n  pcStack_8128 = (code *)(*(int *)(pcStack_8138 + -0x7db0) + -0x7d90);\n  pcStack_810c = (code *)(*(int *)(pcStack_8138 + -0x7db0) + -0x6cb8);\n  iStack_8110 = *(int *)(pcStack_8138 + -0x7fc8) + -0x4878;\nLAB_0002d77c:\n  do {\n    iVar4 = scp_get_sink_action(&iStack_80d8);\n    if ((iVar4 != 0) || (iStack_80d8 == 3)) goto LAB_0002da64;\n  } while (iStack_80d8 == 4);\n  if (iVar2 == 2) {\n    param_1 = auStack_100b0;\n    puVar1 = (undefined *)(**(code **)(pcStack_8138 + -0x7cac))(puStack_80d0,1);\n    if (puStack_80d0 != puVar1) {\n      puVar23 = *(undefined4 **)(pcStack_8138 + -0x7460);\n      param_1 = (undefined *)(*(int *)(pcStack_8138 + -0x7fcc) + 0x7ff8);\n      FUN_00027ff8(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x4a54);\n      FUN_00027ff8(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x4a20,puVar1);\n    }\n    iVar4 = (**(code **)(pcStack_8138 + -0x7640))(puVar1,*(int *)(pcStack_8138 + -0x7fc8) + -0x48b0)\n    ;\n    if (puVar1[iVar4] == '\0') {\n      (*pcStack_8128)(*(int *)(pcStack_8138 + -0x7fc8) + -0x49f8);\n    }\n    if (puStack_8118 != (undefined *)0x0) {\n      param_1 = (undefined *)(**(code **)(pcStack_8138 + -0x7cac))(puStack_8118,1);\n      iVar4 = (**(code **)(pcStack_8138 + -0x743c))(puVar1,param_1);\n      if ((iVar4 != 0) &&\n         (puVar23 = *(undefined4 **)(pcStack_8138 + -0x7460),\n         *(int *)(*(int *)(pcStack_8138 + -0x7fd8) + -0x31ec) == 0 &&\n         *(int *)(*(int *)(pcStack_8138 + -0x7fd8) + -0x31dc) == 0)) {\n        FUN_00027ff8(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x49ac,puVar1);\n        FUN_00027ff8(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x4970,param_1);\n        FUN_00027ff8(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x4940);\n        FUN_00027ff8(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x48f8);\n        puVar1 = param_1;\n      }\n    }\n    if (*pcStack_812c == '\0') {\n      unaff_s3 = (undefined4 *)dupstr(puVar1);\n    }\n    else {\n      unaff_s3 = (undefined4 *)(**(code **)(pcStack_8138 + -0x7c78))(pcStack_812c,puVar1);\n    }\n  }\n  else {\n    unaff_s3 = (undefined4 *)dupstr(pcStack_812c);\n  }\n  iVar4 = (**(code **)(pcStack_8138 + -0x7cec))(unaff_s3);\n  if (iStack_80d8 == 2) {\n    if (iVar4 == 0) {\n      iVar4 = (**(code **)(pcStack_8138 + -0x7c80))(unaff_s3);\n      if (iVar4 == 0) {\n        FUN_0002a658(*(int *)(pcStack_8138 + -0x7fc8) + -0x48ac,unaff_s3);\n        safefree(unaff_s3);\n        goto LAB_0002d77c;\n      }\n    }\n    else if (iVar4 != 2) {\n      FUN_0002a658(*(int *)(pcStack_8138 + -0x7fc8) + -0x4a68,unaff_s3);\n      safefree(unaff_s3);\n      goto LAB_0002d77c;\n    }\n    FUN_0002d4e0(unaff_s3,0);\n    safefree(unaff_s3);\n    goto LAB_0002d77c;\n  }\n  unaff_s5 = (**(code **)(pcStack_8138 + -0x7c84))(unaff_s3,uStack_80cc);\n  if (unaff_s5 == 0) {\n    FUN_0002a658(*(int *)(pcStack_8138 + -0x7fc8) + -0x4890,unaff_s3);\n    safefree(unaff_s3);\n    goto LAB_0002d77c;\n  }\n  iStack_8120 = scp_accept_filexfer();\n  if (iStack_8120 == 0) {\n    puVar1 = auStack_100b0;\n    uint64_make(&uStack_80f8,0,0);\n    uStack_8114 = (**(code **)(pcStack_8138 + -0x7488))(0);\n    uStack_811c = (**(code **)(pcStack_8138 + -0x7cac))(unaff_s3,1);\n    uint64_make(&uStack_8100,0,0);\n    iStack_8124 = *(int *)(pcStack_8138 + -0x7fc8);\n    unaff_s7 = *(int *)(pcStack_8138 + -0x7fd8);\nLAB_0002db64:\n    do {\n      iVar4 = uint64_compare(uStack_8100,uStack_80fc,uStack_80c8,uStack_80c4);\n      if (-1 < iVar4) goto LAB_0002de88;\n      uint64_make(&uStack_80f0,0,0x8000);\n      uStack_8148 = uStack_80fc;\n      uint64_subtract(&uStack_80e8,uStack_80c8,uStack_80c4,uStack_8100);\n      iVar4 = uint64_compare(uStack_80f0,uStack_80ec,uStack_80e8,uStack_80e4);\n      if (0 < iVar4) {\n        uStack_8148 = uStack_80fc;\n        uint64_subtract(&uStack_80f0,uStack_80c8,uStack_80c4,uStack_8100);\n      }\n      puVar1 = (undefined *)scp_recv_filedata(auStack_80b4,uStack_80ec);\n      if ((int)puVar1 < 1) {\n        (*pcStack_8128)(iStack_8124 + -0x5640);\n      }\n      if (iVar24 == 0) {\n        puVar5 = (undefined *)(**(code **)(pcStack_8138 + -0x7c68))(unaff_s5,auStack_80b4,puVar1);\n        if (puVar5 == puVar1) {\n          if (*(int *)(unaff_s7 + -0x3fa8) != 0) {\n            uint64_add32(&uStack_8108,uStack_80f8,uStack_80f4,puVar1);\n            uStack_80f8 = uStack_8108;\n            uStack_80f4 = uStack_8104;\n            iVar4 = (**(code **)(pcStack_8138 + -0x7488))(0);\n            if (iVar4 <= iStack_8120) {\n              uint64_add32(&uStack_80e0,uStack_8100,uStack_80fc,puVar1);\n              iVar4 = uint64_compare(uStack_80e0,uStack_80dc,uStack_80c8,uStack_80c4);\n              if (iVar4 != 0) goto LAB_0002dc94;\n            }\n            iStack_8140 = (**(code **)(pcStack_8138 + -0x7488))(0);\n            uStack_8144 = uStack_8114;\n            uStack_8148 = uStack_80f4;\n            iStack_8120 = iStack_8140;\n            (*pcStack_810c)(uStack_811c,uStack_80c8,uStack_80c4,uStack_80f8);\n          }\nLAB_0002dc94:\n          param_1 = auStack_100b0;\n          uint64_add32(&uStack_8108,uStack_8100,uStack_80fc,puVar1);\n          uStack_8100 = uStack_8108;\n          uStack_80fc = uStack_8104;\n          goto LAB_0002db64;\n        }\n        if (*(int *)(unaff_s7 + -0x3fa8) != 0) {\n          (**(code **)(pcStack_8138 + -0x759c))\n                    (1,*(int *)(pcStack_8138 + -0x7fc8) + -0x4850,uStack_811c,iStack_8110);\n        }\n        uint64_add32(&uStack_8108,uStack_8100,uStack_80fc,puVar1);\n      }\n      else {\n        uint64_add32(&uStack_8108,uStack_8100,uStack_80fc,puVar1);\n      }\n      param_1 = auStack_100b0;\n      iVar24 = 1;\n      uStack_8100 = uStack_8108;\n      uStack_80fc = uStack_8104;\n    } while( true );\n  }\n  safefree(unaff_s3);\n  (**(code **)(pcStack_8138 + -0x7c70))(unaff_s5);\nLAB_0002da64:\n  pcVar28 = *(code **)(pcStack_8138 + -0x74a0);\n  if (uStack_b4 == **(uint **)(pcStack_8138 + -0x7478)) {\n    return **(uint **)(pcStack_8138 + -0x7478);\n  }\n  pcVar30 = version;\n  (*pcVar28)();\n  pcStack_8168 = pcVar28 + 0x961d8;\n  uStack_8160 = 0xffff0000;\n  pcStack_815c = pcVar30;\n  uVar6 = buildinfo(*(int *)(pcVar28 + 0x8e210) + 0xaa4);\n  uVar17 = *(undefined4 *)(pcStack_8168 + -0x7da8);\n  iVar4 = *(int *)(pcStack_8168 + -0x7fc8) + -0x482c;\n  uVar7 = uVar6;\n  (**(code **)(pcStack_8168 + -0x759c))(1);\n  safefree(uVar6);\n  uVar12 = 0;\n  pcVar28 = *(code **)(pcStack_8168 + -0x7504);\n  pcVar30 = cmdline_error;\n  (*pcVar28)();\n  pcStack_8198 = pcVar28 + 0x96158;\n  uStack_818c = **(undefined4 **)(pcVar28 + 0x8ece0);\n  puVar23 = *(undefined4 **)(pcVar28 + 0x8ecf8);\n  uStack_8184 = uVar6;\n  puStack_8180 = puVar1;\n  pcStack_817c = pcVar30;\n  iStack_8174 = iVar4;\n  uStack_8170 = uVar17;\n  uStack_816c = uVar7;\n  (**(code **)(pcVar28 + 0x8ec90))(*(int *)(pcVar28 + 0x8e190) + -0x4e28,1,6,*puVar23);\n  piStack_8190 = &iStack_8174;\n  (**(code **)(pcStack_8198 + -0x7444))(*puVar23,1,uVar12);\n  iVar15 = 1;\n  (**(code **)(pcStack_8198 + -0x74c8))(*(int *)(pcStack_8198 + -0x7fc8) + -0x481c,1,0x27,*puVar23);\n  iVar4 = 1;\n  pcVar28 = *(code **)(pcStack_8198 + -0x7504);\n  pcVar30 = psftp_main;\n  (*pcVar28)();\n  pcStack_81e8 = pcVar28 + 0x9609c;\n  puStack_81d4 = (undefined4 *)**(undefined4 **)(pcVar28 + 0x8ec24);\n  **(undefined4 **)(pcVar28 + 0x8e144) = 1;\n  **(undefined4 **)(pcVar28 + 0x8e158) = 2;\n  **(undefined4 **)(pcVar28 + 0x8e120) = 1;\n  puStack_81d0 = puVar23;\n  uStack_81cc = uVar12;\n  puStack_81c8 = param_1;\n  puStack_81c4 = unaff_s3;\n  iStack_81c0 = iVar24;\n  iStack_81bc = unaff_s5;\n  piStack_81b8 = &iStack_80d8;\n  iStack_81b4 = unaff_s7;\n  iStack_81b0 = iVar2;\n  pcStack_81ac = pcVar30;\n  (**(code **)(pcVar28 + 0x8e444))();\n  uVar7 = conf_new();\n  *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31fc) = uVar7;\n  do_defaults(0,uVar7);\n  **(undefined4 **)(pcStack_81e8 + -0x7f60) = 0;\n  pcVar28 = pcStack_81e8;\n  if (iVar4 < 2) {\n    iVar2 = 1;\n  }\n  else {\n    pcVar13 = *(char **)(iVar15 + 4);\n    piVar19 = (int *)(iVar15 + 4);\n    if (*pcVar13 == '-') {\n      iVar25 = *(int *)(pcStack_81e8 + -0x7fd8);\n      iVar26 = *(int *)(pcStack_81e8 + -0x7fc8);\n      pcVar27 = (char *)(*(int *)(pcStack_81e8 + -0x7fc8) + -0x47b8);\n      iVar29 = *(int *)(pcStack_81e8 + -0x7fc8);\n      pcStack_81dc = (code *)(*(int *)(pcStack_81e8 + -0x7db0) + -0x79e4);\n      iVar24 = 1;\nLAB_0002e488:\n      iVar2 = iVar24 + 1;\n      uVar7 = 0;\n      if (iVar2 < iVar4) {\n        uVar7 = *(undefined4 *)(iVar15 + (iVar24 + 1) * 4);\n      }\n      iVar8 = cmdline_process_param(pcVar13,uVar7,1,*(undefined4 *)(iVar25 + -0x31fc));\n      pcVar28 = pcStack_81e8;\n      if (iVar8 == -2) {\n        cmdline_error(*(int *)(pcStack_81e8 + -0x7fc8) + -0x47e4,*piVar19);\n        uVar7 = extraout_v1;\nLAB_0002e1d0:\n        iVar2 = iVar24;\n        if ((**(uint **)(pcVar28 + -0x7f44) & 1) != 0) {\n          *(undefined4 *)(*(int *)(pcVar28 + -0x7fd8) + -0x31c8) = uVar7;\n        }\n        goto LAB_0002e464;\n      }\n      uVar7 = 1;\n      if (iVar8 == 2) goto LAB_0002e464;\n      if (iVar8 == 1) goto LAB_0002e1d0;\n      iVar20 = *piVar19;\n      iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar26 + -0x47c0);\n      if (iVar8 == 0) {\n        (**(code **)(pcStack_81e8 + -0x7c54))();\n        uVar3 = 1;\n        goto LAB_0002e878;\n      }\n      iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20);\n      if (iVar8 == 0) {\n        *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31cc) = 1;\n        pcVar28 = pcStack_81e8;\n        iVar2 = iVar24;\n      }\n      else {\n        iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar29 + -0x47b4);\n        if (iVar8 == 0) {\n          *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d0) = 1;\n          pcVar28 = pcStack_81e8;\n          iVar2 = iVar24;\n        }\n        else {\n          iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                            (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47b0);\n          if (iVar8 == 0) {\n            *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fa8) = 0;\n            pcVar28 = pcStack_81e8;\n            iVar2 = iVar24;\n          }\n          else {\n            iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                              (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47ac);\n            if ((iVar8 != 0) &&\n               (iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                  (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47a8), iVar8 != 0))\n            {\n              iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47a4);\n              if (iVar8 != 0) {\n                iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                  (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x479c);\n                iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                if (iVar8 == 0) {\nLAB_0002e348:\n                  pcVar28 = pcStack_81e8;\n                  version();\n                }\n                else {\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar16 + -0x4798);\n                  iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                  if (iVar8 == 0) goto LAB_0002e348;\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar16 + -0x478c);\n                  iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                  pcVar28 = pcStack_81e8;\n                  if (iVar8 == 0) {\n                    *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31c4) = 1;\n                    iVar2 = iVar24;\n                    goto LAB_0002e464;\n                  }\n                }\n                iVar8 = (**(code **)(pcVar28 + -0x743c))(iVar20,iVar16 + -0x4788);\n                if (iVar8 == 0) {\n                  **(undefined4 **)(pcStack_81e8 + -0x7c4c) = 1;\n                  pcVar28 = pcStack_81e8;\n                  iVar2 = iVar24;\n                }\n                else {\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                    (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4780);\n                  if (iVar8 == 0) {\n                    *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31dc) = 1;\n                    pcVar28 = pcStack_81e8;\n                    iVar2 = iVar24;\n                  }\n                  else {\n                    iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                      (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4778);\n                    if (iVar8 == 0) {\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac) = 0;\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0) = 1;\n                      pcVar28 = pcStack_81e8;\n                      iVar2 = iVar24;\n                      goto LAB_0002e464;\n                    }\n                    iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                      (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4770);\n                    if (iVar8 == 0) {\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac) = 1;\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0) = 0;\n                      pcVar28 = pcStack_81e8;\n                      iVar2 = iVar24;\n                    }\n                    else {\n                      iVar24 = (**(code **)(pcStack_81e8 + -0x743c))\n                                         (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4768);\n                      pcVar28 = pcStack_81e8;\n                      if (iVar24 == 0) goto LAB_0002e52c;\n                      cmdline_error(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4764,iVar20);\n                    }\n                  }\n                }\n                goto LAB_0002e464;\n              }\n            }\n            (*pcStack_81dc)();\n            pcVar28 = pcStack_81e8;\n            iVar2 = iVar24;\n          }\n        }\n      }\nLAB_0002e464:\n      iVar2 = iVar2 + 1;\n      if (iVar4 <= iVar2) goto LAB_0002e52c;\n      piVar19 = (int *)(iVar15 + iVar2 * 4);\n      pcVar13 = (char *)*piVar19;\n      iVar24 = iVar2;\n      if (*pcVar13 != '-') goto LAB_0002e52c;\n      goto LAB_0002e488;\n    }\n    iVar2 = 1;\n  }\nLAB_0002e52c:\n  iVar4 = iVar4 - iVar2;\n  *(undefined4 *)(*(int *)(pcVar28 + -0x7fd8) + -0x31f4) = 0;\n  puVar23 = (undefined4 *)(iVar15 + iVar2 * 4);\n  if (*(int *)(*(int *)(pcVar28 + -0x7fd8) + -0x31c4) == 0) {\n    if (iVar4 < 2) {\n      FUN_0002861c();\n      puVar18 = puVar23 + iVar4 + 0x3fffffff;\n      iVar24 = FUN_00028968(*puVar18);\n      iVar2 = *(int *)(pcStack_81e8 + -0x7fd8);\n      if (iVar24 != 0) goto LAB_0002e90c;\n      *(undefined4 *)(iVar2 + -0x31f0) = 0;\nLAB_0002efd8:\n      iVar2 = *(int *)(pcStack_81e8 + -0x7fc8);\nLAB_0002efdc:\n      FUN_00028270(iVar2 + -0x4668);\n      pcVar13 = (char *)*puVar23;\nLAB_0002eb34:\n      uVar7 = puVar23[1];\n      puVar9 = (undefined1 *)FUN_00028968(pcVar13);\n      if (puVar9 == (undefined1 *)0x0) {\n        FUN_00028270(*(int *)(pcStack_81e8 + -0x7fc8) + -0x463c);\n        uRam00000000 = 0;\n      }\n      else {\n        *puVar9 = 0;\n      }\n      if (puVar9[1] == '\0') {\n        pcVar27 = (char *)(*(int *)(pcStack_81e8 + -0x7fc8) + -0x48b0);\n      }\n      else {\n        pcVar27 = puVar9 + 1;\n      }\n      puVar9 = (undefined1 *)(**(code **)(pcStack_81e8 + -0x75b8))(pcVar13,0x40);\n      if (puVar9 == (undefined1 *)0x0) {\n        pcVar21 = (char *)0x0;\n      }\n      else {\n        *puVar9 = 0;\n        cVar11 = *pcVar13;\n        pcVar21 = pcVar13;\n        pcVar13 = puVar9 + 1;\n        if (cVar11 == '\0') {\n          pcVar21 = (char *)0x0;\n        }\n      }\n      if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31c8) == 0) {\n        iVar2 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iVar2 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47f4;\n      }\n      if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31cc) == 0) {\n        iVar24 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iVar24 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47f0;\n      }\n      if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d0) == 0) {\n        iVar4 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iVar4 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47ec;\n      }\n      if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4) == 0) {\n        iStack_81f0 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iStack_81f0 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47e8;\n      }\n      pcStack_81ec = pcVar27;\n      uVar6 = dupprintf(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4618,iVar2,iVar24,iVar4);\n      FUN_00028a00(pcVar13,pcVar21,uVar6);\n      safefree(uVar6);\n      iVar2 = scp_sink_setup(pcVar27,*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d0),\n                             *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31cc));\n      if (iVar2 == 0) {\n        FUN_0002d4e0(uVar7);\n        iVar2 = *(int *)(pcStack_81e8 + -0x7fd8);\n        goto LAB_0002e788;\n      }\n    }\n    else {\n      if (iVar4 < 3) {\n        puVar18 = puVar23 + iVar4 + 0x3fffffff;\n        iVar2 = FUN_00028968(*puVar18);\n        if (iVar2 == 0) {\n          *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f0) = 0;\n          iVar2 = *(int *)(pcStack_81e8 + -0x7fc8);\n          if (iVar4 != 2) goto LAB_0002efdc;\n          pcVar13 = (char *)*puVar23;\n          goto LAB_0002eb34;\n        }\n      }\n      else {\n        *(undefined4 *)(*(int *)(pcVar28 + -0x7fd8) + -0x31d4) = 1;\n        puVar18 = puVar23 + iVar4 + 0x3fffffff;\n        iVar2 = FUN_00028968(*puVar18);\n        if (iVar2 == 0) {\n          *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f0) = 0;\n          goto LAB_0002efd8;\n        }\n      }\n      iVar2 = *(int *)(pcStack_81e8 + -0x7fd8);\nLAB_0002e90c:\n      *(undefined4 *)(iVar2 + -0x31f0) = 1;\n      pcVar13 = (char *)*puVar18;\n      puVar9 = (undefined1 *)FUN_00028968(pcVar13);\n      if (puVar9 == (undefined1 *)0x0) {\n        FUN_00028270(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4720);\n        uRam00000000 = 0;\n      }\n      else {\n        *puVar9 = 0;\n      }\n      if (puVar9[1] == '\0') {\n        pcVar21 = (char *)(*(int *)(pcStack_81e8 + -0x7fc8) + -0x48b0);\n      }\n      else {\n        pcVar21 = puVar9 + 1;\n      }\n      puVar9 = (undefined1 *)(**(code **)(pcStack_81e8 + -0x75b8))(pcVar13,0x40);\n      if (puVar9 == (undefined1 *)0x0) {\n        pcVar27 = (char *)0x0;\n      }\n      else {\n        *puVar9 = 0;\n        cVar11 = *pcVar13;\n        pcVar27 = pcVar13;\n        pcVar13 = puVar9 + 1;\n        if (cVar11 == '\0') {\n          pcVar27 = (char *)0x0;\n        }\n      }\n      if (iVar4 == 2) {\n        iVar2 = FUN_00028968(*puVar23);\n        if (iVar2 != 0) {\n          FUN_00028270(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4704,*puVar23);\n        }\n        iVar2 = (**(code **)(pcStack_81e8 + -0x7c30))(*puVar23,1);\n        if (iVar2 == 0) {\n          FUN_00028270(*(int *)(pcStack_81e8 + -0x7fc8) + -0x46e0,*puVar23);\n          iVar24 = *(int *)(pcStack_81e8 + -0x7fd8);\n        }\n        else {\n          iVar24 = *(int *)(pcStack_81e8 + -0x7fd8);\n          if (iVar2 == 2) {\n            *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4) = 1;\n            goto LAB_0002e988;\n          }\n        }\n      }\n      else {\nLAB_0002e988:\n        iVar24 = *(int *)(pcStack_81e8 + -0x7fd8);\n      }\n      if (*(int *)(iVar24 + -0x31c8) == 0) {\n        iVar2 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iVar2 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47f4;\n      }\n      if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31cc) == 0) {\n        iVar24 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iVar24 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47f0;\n      }\n      if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d0) == 0) {\n        iVar15 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iVar15 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47ec;\n      }\n      if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4) == 0) {\n        iStack_81f0 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iStack_81f0 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47e8;\n      }\n      pcStack_81ec = pcVar21;\n      uVar7 = dupprintf(*(int *)(pcStack_81e8 + -0x7fc8) + -0x46c0,iVar2,iVar24,iVar15);\n      FUN_00028a00(pcVar13,pcVar27,uVar7);\n      safefree(uVar7);\n      pcVar27 = *(char **)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4);\n      iVar2 = scp_source_setup(pcVar21);\n      if ((iVar2 == 0) && (1 < iVar4)) {\n        puVar18 = puVar23 + iVar4 + -1;\n        iVar24 = *(int *)(pcStack_81e8 + -0x7db0);\n        iVar25 = *(int *)(pcStack_81e8 + -0x7fc8);\n        iVar15 = *(int *)(pcStack_81e8 + -0x7db0);\n        iVar4 = *(int *)(pcStack_81e8 + -0x7fc8);\n        do {\n          pcVar13 = (char *)*puVar23;\n          iVar2 = FUN_00028968(pcVar13);\n          if (iVar2 == 0) {\n            pcVar27 = (char *)0x1;\n            iVar2 = (**(code **)(pcStack_81e8 + -0x7c30))(pcVar13,1,pcVar13);\n            if (iVar2 == 0) {\n              (*(code *)(iVar15 + -0x59a8))(iVar25 + -0x4688);\n              pcVar27 = pcVar13;\n            }\n            else if (iVar2 == 1) {\n              (*(code *)(iVar24 + -0x4b8c))(pcVar13);\n            }\n            else {\n              iVar2 = (**(code **)(pcStack_81e8 + -0x7c2c))();\n              if (iVar2 == 0) {\n                (*(code *)(iVar15 + -0x59a8))(iVar25 + -0x4688);\n                pcVar27 = pcVar13;\n              }\n              else {\n                while (iVar26 = (**(code **)(pcStack_81e8 + -0x7c28))(iVar2), iVar26 != 0) {\n                  (*(code *)(iVar24 + -0x4b8c))(iVar26);\n                  safefree(iVar26);\n                }\n                (**(code **)(pcStack_81e8 + -0x7c24))(iVar2);\n              }\n            }\n          }\n          else {\n            pcVar27 = (char *)(iVar4 + -0x46ac);\n            FUN_00027ff8(**(undefined4 **)(pcStack_81e8 + -0x7460));\n            *(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31e0) =\n                 *(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31e0) + 1;\n          }\n          puVar23 = puVar23 + 1;\n          iVar2 = *(int *)(pcStack_81e8 + -0x7fd8);\n        } while (puVar18 != puVar23);\n        goto LAB_0002e788;\n      }\n    }\n  }\n  else {\n    if (iVar4 == 1) {\n      pcVar13 = (char *)*puVar23;\n    }\n    else {\n      FUN_0002861c();\n      pcVar13 = (char *)*puVar23;\n    }\n    puVar9 = (undefined1 *)FUN_00028968(pcVar13);\n    if (puVar9 == (undefined1 *)0x0) {\n      FUN_00028270(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4750);\n      uRam00000000 = 0;\n    }\n    else {\n      *puVar9 = 0;\n    }\n    if (puVar9[1] == '\0') {\n      puVar9 = (undefined1 *)(**(code **)(pcStack_81e8 + -0x75b8))(pcVar13,0x40);\n      if (puVar9 == (undefined1 *)0x0) {\n        puVar23 = (undefined4 *)safemalloc(0x68,1);\n        iVar2 = *(int *)(pcStack_81e8 + -0x7fc8);\n        uVar7 = *(undefined4 *)(iVar2 + -0x4728);\n        *puVar23 = *(undefined4 *)(iVar2 + -0x472c);\n        puVar23[1] = uVar7;\n        *(undefined1 *)(puVar23 + 2) = *(undefined1 *)(iVar2 + -0x4724);\n        iVar2 = (**(code **)(pcStack_81e8 + -0x752c))(puVar23);\n        pcVar10 = (char *)((int)puVar23 + iVar2);\n        pcVar21 = (char *)(*(int *)(pcStack_81e8 + -0x7fc8) + -0x48b0);\n        cVar11 = '.';\n        pcVar27 = (char *)0x0;\n        pcVar22 = pcVar21;\n        goto LAB_0002e6b4;\n      }\n      pcVar21 = (char *)(*(int *)(pcStack_81e8 + -0x7fc8) + -0x48b0);\nLAB_0002e5ac:\n      *puVar9 = 0;\n      cVar11 = *pcVar13;\n      pcVar27 = pcVar13;\n      pcVar13 = puVar9 + 1;\n      if (cVar11 == '\0') {\n        pcVar27 = (char *)0x0;\n      }\n    }\n    else {\n      pcVar21 = puVar9 + 1;\n      puVar9 = (undefined1 *)(**(code **)(pcStack_81e8 + -0x75b8))(pcVar13);\n      if (puVar9 != (undefined1 *)0x0) goto LAB_0002e5ac;\n      pcVar27 = (char *)0x0;\n    }\n    iVar2 = (**(code **)(pcStack_81e8 + -0x752c))(pcVar21);\n    puVar23 = (undefined4 *)safemalloc((iVar2 + 0x19) * 4,1);\n    iVar2 = *(int *)(pcStack_81e8 + -0x7fc8);\n    uVar7 = *(undefined4 *)(iVar2 + -0x4728);\n    *puVar23 = *(undefined4 *)(iVar2 + -0x472c);\n    puVar23[1] = uVar7;\n    *(undefined1 *)(puVar23 + 2) = *(undefined1 *)(iVar2 + -0x4724);\n    iVar2 = (**(code **)(pcStack_81e8 + -0x752c))(puVar23);\n    pcVar10 = (char *)((int)puVar23 + iVar2);\n    cVar11 = *pcVar21;\n    pcVar22 = pcVar21;\n    while (cVar11 != '\0') {\nLAB_0002e6b4:\n      if (cVar11 == '\'') {\n        builtin_strncpy(pcVar10,"\'\\\'\'",4);\n        pcVar10 = pcVar10 + 4;\n      }\n      else {\n        *pcVar10 = cVar11;\n        pcVar10 = pcVar10 + 1;\n      }\n      pcVar21 = pcVar21 + 1;\n      cVar11 = *pcVar21;\n    }\n    *pcVar10 = '\'';\n    pcVar10[1] = '\0';\n    FUN_00028a00(pcVar13,pcVar27,puVar23);\n    safefree(puVar23);\n    if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31ec) != 0) {\n      scp_sftp_listdir(pcVar22);\n      iVar2 = *(int *)(pcStack_81e8 + -0x7fd8);\n      goto LAB_0002e788;\n    }\n    puVar23 = *(undefined4 **)(pcStack_81e8 + -0x7594);\n    while( true ) {\n      pcVar27 = (char *)0x1;\n      iVar2 = FUN_000280f4(&cStack_81d5);\n      if (iVar2 < 1) break;\n      (**(code **)(pcStack_81e8 + -0x75c4))((int)cStack_81d5,*puVar23);\n    }\n  }\n  iVar2 = *(int *)(pcStack_81e8 + -0x7fd8);\nLAB_0002e788:\n  pcVar28 = *(code **)(pcStack_81e8 + -0x7c44);\n  if (*(int *)(iVar2 + -0x31f4) != 0) {\n    iVar2 = (**(code **)(*(int *)(iVar2 + -0x31f4) + 0x20))\n                      (*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f8));\n    pcVar28 = *(code **)(pcStack_81e8 + -0x7c44);\n    if (iVar2 != 0) {\n      (**(code **)(*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f4) + 0x18))\n                (*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f8),0xc);\n      **(undefined4 **)(pcStack_81e8 + -0x7db4) = 1;\n      pcVar27 = (char *)0x1;\n      FUN_000280f4(&cStack_81d5);\n      pcVar28 = *(code **)(pcStack_81e8 + -0x7c44);\n    }\n  }\n  (*pcVar28)();\n  cmdline_cleanup();\n  (**(code **)(pcStack_81e8 + -0x7d88))(0);\n  iVar20 = *(int *)(pcStack_81e8 + -0x7fd8);\n  iVar24 = *(int *)(pcStack_81e8 + -0x7fd8);\n  (**(code **)(*(int *)(iVar24 + -0x31f4) + 4))(*(undefined4 *)(iVar20 + -0x31f8));\n  *(undefined4 *)(iVar20 + -0x31f8) = 0;\n  *(undefined4 *)(iVar24 + -0x31f4) = 0;\n  (**(code **)(pcStack_81e8 + -0x7c3c))();\n  uVar3 = (uint)(*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31e0) != 0);\nLAB_0002e878:\n  if (puStack_81d4 == (undefined4 *)**(int **)(pcStack_81e8 + -0x7478)) {\n    return uVar3;\n  }\n  pcVar28 = *(code **)(pcStack_81e8 + -0x74a0);\n  uVar12 = 0x2f008;\n  puVar23 = puStack_81d4;\n  (*pcVar28)();\n  pcStack_8218 = pcVar28 + 0x95140;\n  uVar7 = *puVar23;\n  uVar6 = *(undefined4 *)pcVar27;\n  iStack_820c = iVar24;\n  iStack_8208 = iVar20;\n  uStack_8204 = uVar12;\n  iVar2 = (**(code **)(pcVar28 + 0x8dd04))(uVar7,*(int *)(pcVar28 + 0x8d178) + -0x4584);\n  if (iVar2 == 0) {\n    uVar3 = 0xffffffff;\n  }\n  else {\n    iVar2 = (**(code **)(pcStack_8218 + -0x743c))(uVar6,*(int *)(pcStack_8218 + -0x7fc8) + -0x4584);\n    if (iVar2 == 0) {\n      uVar3 = 1;\n    }\n    else {\n      uVar3 = (**(code **)(pcStack_8218 + -0x743c))(uVar7,uVar6);\n    }\n  }\n  return uVar3;\nLAB_0002de88:\n  if (iStack_80c0 != 0) {\n    (**(code **)(pcStack_8138 + -0x7c60))(unaff_s5,uStack_80b8,uStack_80bc);\n  }\n  (**(code **)(pcStack_8138 + -0x7c70))(unaff_s5);\n  if (iVar24 == 0) {\n    scp_finish_filerecv();\n    safefree(unaff_s3);\n    safefree(uStack_80d4);\n  }\n  else {\n    FUN_0002a658(*(int *)(pcStack_8138 + -0x7fc8) + -0x483c,unaff_s3);\n    safefree(unaff_s3);\n  }\n  goto LAB_0002d77c;\n}\n\n" (function_definition "uint scp_recv_filedata(undefined *param_1,undefined *param_2)\n\n{\n  undefined *puVar1;\n  int iVar2;\n  uint uVar3;\n  int iVar4;\n  undefined *puVar5;\n  undefined4 uVar6;\n  undefined4 uVar7;\n  int iVar8;\n  undefined1 *puVar9;\n  char *pcVar10;\n  undefined4 extraout_v1;\n  char cVar11;\n  undefined4 uVar12;\n  char *pcVar13;\n  undefined *puVar14;\n  int iVar15;\n  int iVar16;\n  undefined4 uVar17;\n  undefined4 *puVar18;\n  int *piVar19;\n  int iVar20;\n  char *pcVar21;\n  char *pcVar22;\n  undefined4 *unaff_s3;\n  undefined4 *puVar23;\n  undefined1 *unaff_s4;\n  int iVar24;\n  int unaff_s5;\n  int iVar25;\n  int iVar26;\n  int unaff_s7;\n  char *pcVar27;\n  code *pcVar28;\n  int iVar29;\n  code *pcVar30;\n  undefined auStack_100b0 [32408];\n  code *pcStack_8218;\n  int iStack_820c;\n  int iStack_8208;\n  undefined4 uStack_8204;\n  int iStack_81f0;\n  char *pcStack_81ec;\n  code *pcStack_81e8;\n  code *pcStack_81dc;\n  char cStack_81d5;\n  undefined4 *puStack_81d4;\n  undefined4 *puStack_81d0;\n  undefined4 uStack_81cc;\n  undefined *puStack_81c8;\n  undefined4 *puStack_81c4;\n  int iStack_81c0;\n  int iStack_81bc;\n  int *piStack_81b8;\n  int iStack_81b4;\n  int iStack_81b0;\n  code *pcStack_81ac;\n  code *pcStack_8198;\n  int *piStack_8190;\n  undefined4 uStack_818c;\n  undefined4 uStack_8184;\n  undefined *puStack_8180;\n  code *pcStack_817c;\n  int iStack_8174;\n  undefined4 uStack_8170;\n  undefined4 uStack_816c;\n  code *pcStack_8168;\n  undefined4 uStack_8160;\n  code *pcStack_815c;\n  undefined4 uStack_8148;\n  undefined4 uStack_8144;\n  int iStack_8140;\n  code *pcStack_8138;\n  char *pcStack_812c;\n  code *pcStack_8128;\n  int iStack_8124;\n  int iStack_8120;\n  undefined4 uStack_811c;\n  undefined *puStack_8118;\n  undefined4 uStack_8114;\n  int iStack_8110;\n  code *pcStack_810c;\n  undefined4 uStack_8108;\n  undefined4 uStack_8104;\n  undefined4 uStack_8100;\n  undefined4 uStack_80fc;\n  undefined4 uStack_80f8;\n  undefined4 uStack_80f4;\n  undefined4 uStack_80f0;\n  undefined4 uStack_80ec;\n  undefined4 uStack_80e8;\n  undefined4 uStack_80e4;\n  undefined4 uStack_80e0;\n  undefined4 uStack_80dc;\n  int iStack_80d8;\n  undefined4 uStack_80d4;\n  undefined *puStack_80d0;\n  undefined4 uStack_80cc;\n  undefined4 uStack_80c8;\n  undefined4 uStack_80c4;\n  int iStack_80c0;\n  undefined4 uStack_80bc;\n  undefined4 uStack_80b8;\n  undefined1 auStack_80b4 [32768];\n  uint uStack_b4;\n  undefined *puStack_b0;\n  undefined *puStack_ac;\n  undefined *puStack_a8;\n  undefined4 *puStack_a4;\n  undefined1 *puStack_a0;\n  undefined4 uStack_6c;\n  undefined1 auStack_68 [4];\n  char *pcStack_64;\n  undefined *puStack_60;\n  undefined *puStack_5c;\n  undefined *puStack_58;\n  undefined4 *puStack_54;\n  undefined4 local_30;\n  undefined4 local_2c;\n  uint local_24;\n  undefined4 local_20;\n  int local_1c;\n  \n  puVar1 = PTR_DAT_000bc178;\n  local_1c = *(int *)PTR___stack_chk_guard_000bccd8;\n  if (*(int *)(PTR_DAT_000bc178 + -0x31ec) == 0) {\n    uVar3 = FUN_000280f4();\n  }\n  else {\n    xfer_download_queue(*(undefined4 *)(PTR_DAT_000bc178 + -0x3244));\n    unaff_s3 = (undefined4 *)sftp_recv();\n    puVar1 = (undefined *)xfer_download_gotpkt(*(undefined4 *)(puVar1 + -0x3244),unaff_s3);\n    if ((int)puVar1 < 1) {\n      param_2 = *(undefined **)PTR_stderr_000bccf0;\n      uVar7 = fxp_error();\n      FUN_00027ff8(param_2,PTR_s_Server_sent_command_exit_status___000bc188 + -0x4abc,uVar7);\n      if (puVar1 == (undefined *)0x80000000) {\n        safefree(unaff_s3);\n      }\n      *(int *)(PTR_DAT_000bc178 + -0x31e0) = *(int *)(PTR_DAT_000bc178 + -0x31e0) + 1;\n      uVar3 = 0xffffffff;\n    }\n    else {\n      iVar2 = xfer_download_data(*(undefined4 *)(PTR_DAT_000bc178 + -0x3244),&local_20,&local_24);\n      if (iVar2 == 0) {\n        local_24 = 0;\n      }\n      else {\n        param_2 = (undefined *)(uint)((int)param_2 < (int)local_24);\n        if ((int)local_24 < 1) {\n          FUN_00027ff8(*(undefined4 *)PTR_stderr_000bccf0,\n                       PTR_s_Server_sent_command_exit_status___000bc188 + -0x4a9c);\n          *(int *)(PTR_DAT_000bc178 + -0x31e0) = *(int *)(PTR_DAT_000bc178 + -0x31e0) + 1;\n          safefree(local_20);\n          uVar3 = 0xffffffff;\n          goto LAB_0002d148;\n        }\n        if (param_2 != (undefined *)0x0) {\n          uVar3 = (*(code *)PTR___assert_fail_000bcb00)\n                            (PTR_s_Server_sent_command_exit_status___000bc188 + -0x4a7c,\n                             PTR_s_Server_sent_command_exit_status___000bc188 + -0x4fb0,0x628,\n                             PTR_s_Server_sent_command_exit_status___000bc188 + -0x45f0);\n          return uVar3;\n        }\n        (*(code *)PTR_memcpy_000bccdc)(param_1,local_20);\n        safefree(local_20);\n      }\n      param_2 = PTR_DAT_000bc178;\n      puVar1 = PTR_DAT_000bc178 + -0x324c;\n      uint64_add32(&local_30,*(undefined4 *)(PTR_DAT_000bc178 + -0x324c),\n                   *(undefined4 *)(PTR_DAT_000bc178 + -0x3248),local_24);\n      *(undefined4 *)(param_2 + -0x324c) = local_30;\n      *(undefined4 *)(param_2 + -0x3248) = local_2c;\n      uVar3 = local_24;\n    }\n  }\nLAB_0002d148:\n  if (local_1c == *(int *)PTR___stack_chk_guard_000bccd8) {\n    return uVar3;\n  }\n  puVar5 = PTR___stack_chk_fail_000bccb0;\n  (*(code *)PTR___stack_chk_fail_000bccb0)();\n  pcStack_64 = (char *)**(undefined4 **)(puVar5 + 0x8fa44);\n  puStack_60 = param_2;\n  puStack_5c = puVar1;\n  puStack_58 = param_1;\n  puStack_54 = unaff_s3;\n  if (*(int *)(*(int *)(puVar5 + 0x8eee4) + -0x31ec) == 0) {\n    puVar14 = (undefined *)(*(int *)(puVar5 + 0x8eef4) + -0x17dc);\n    (**(code **)(*(int *)(*(int *)(puVar5 + 0x8eee4) + -0x31f4) + 0xc))\n              (*(undefined4 *)(*(int *)(puVar5 + 0x8eee4) + -0x31f8),puVar14,1);\n    uVar3 = FUN_00028400();\n  }\n  else {\n    xfer_set_error(*(undefined4 *)(*(int *)(puVar5 + 0x8eee4) + -0x3244));\n    iVar2 = *(int *)(puVar5 + 0x8eee4);\n    unaff_s4 = auStack_68;\n    unaff_s3 = &uStack_6c;\n    while (iVar24 = xfer_done(*(undefined4 *)(iVar2 + -0x3244)), iVar24 == 0) {\n      param_1 = (undefined *)sftp_recv();\n      puVar1 = (undefined *)xfer_download_gotpkt(*(undefined4 *)(iVar2 + -0x3244),param_1);\n      if ((int)puVar1 < 1) {\n        param_2 = (undefined *)**(undefined4 **)(puVar5 + 0x8fa5c);\n        uVar7 = fxp_error();\n        puVar14 = (undefined *)(*(int *)(puVar5 + 0x8eef4) + -0x4abc);\n        FUN_00027ff8(param_2,puVar14,uVar7);\n        if (puVar1 == (undefined *)0x80000000) {\n          safefree(param_1);\n          iVar2 = *(int *)(puVar5 + 0x8eee4);\n        }\n        else {\n          iVar2 = *(int *)(puVar5 + 0x8eee4);\n        }\n        *(int *)(iVar2 + -0x31e0) = *(int *)(iVar2 + -0x31e0) + 1;\n        uVar3 = 0xffffffff;\n        goto LAB_0002d318;\n      }\n      iVar24 = xfer_download_data(*(undefined4 *)(iVar2 + -0x3244),unaff_s3,unaff_s4);\n      if (iVar24 != 0) {\n        safefree(uStack_6c);\n      }\n    }\n    xfer_cleanup(*(undefined4 *)(*(int *)(puVar5 + 0x8eee4) + -0x3244));\n    param_2 = (undefined *)fxp_close_send(*(undefined4 *)(*(int *)(puVar5 + 0x8eee4) + -0x3240));\n    uVar7 = sftp_wait_for_reply(param_2);\n    puVar14 = param_2;\n    fxp_close_recv(uVar7);\n    uVar3 = 0;\n  }\nLAB_0002d318:\n  if (pcStack_64 == (char *)**(undefined4 **)(puVar5 + 0x8fa44)) {\n    return uVar3;\n  }\n  pcVar28 = *(code **)(puVar5 + 0x8fa1c);\n  pcVar13 = pcStack_64;\n  (*pcVar28)();\n  pcStack_8138 = pcVar28 + 0x96c70;\n  uStack_b4 = **(uint **)(pcVar28 + 0x8f7f8);\n  pcStack_812c = pcVar13;\n  puStack_8118 = puVar14;\n  puStack_b0 = param_2;\n  puStack_ac = puVar1;\n  puStack_a8 = param_1;\n  puStack_a4 = unaff_s3;\n  puStack_a0 = unaff_s4;\n  iVar2 = (**(code **)(pcVar28 + 0x8ef84))();\n  if ((*(int *)(*(int *)(pcStack_8138 + -0x7fd8) + -0x31d4) != 0) && (iVar2 != 2)) {\n    FUN_00028270(*(int *)(pcStack_8138 + -0x7fc8) + -0x4a68,pcStack_812c);\n  }\n  scp_sink_init();\n  iVar24 = 0;\n  pcStack_8128 = (code *)(*(int *)(pcStack_8138 + -0x7db0) + -0x7d90);\n  pcStack_810c = (code *)(*(int *)(pcStack_8138 + -0x7db0) + -0x6cb8);\n  iStack_8110 = *(int *)(pcStack_8138 + -0x7fc8) + -0x4878;\nLAB_0002d77c:\n  do {\n    iVar4 = scp_get_sink_action(&iStack_80d8);\n    if ((iVar4 != 0) || (iStack_80d8 == 3)) goto LAB_0002da64;\n  } while (iStack_80d8 == 4);\n  if (iVar2 == 2) {\n    param_1 = auStack_100b0;\n    puVar1 = (undefined *)(**(code **)(pcStack_8138 + -0x7cac))(puStack_80d0,1);\n    if (puStack_80d0 != puVar1) {\n      puVar23 = *(undefined4 **)(pcStack_8138 + -0x7460);\n      param_1 = (undefined *)(*(int *)(pcStack_8138 + -0x7fcc) + 0x7ff8);\n      FUN_00027ff8(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x4a54);\n      FUN_00027ff8(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x4a20,puVar1);\n    }\n    iVar4 = (**(code **)(pcStack_8138 + -0x7640))(puVar1,*(int *)(pcStack_8138 + -0x7fc8) + -0x48b0)\n    ;\n    if (puVar1[iVar4] == '\0') {\n      (*pcStack_8128)(*(int *)(pcStack_8138 + -0x7fc8) + -0x49f8);\n    }\n    if (puStack_8118 != (undefined *)0x0) {\n      param_1 = (undefined *)(**(code **)(pcStack_8138 + -0x7cac))(puStack_8118,1);\n      iVar4 = (**(code **)(pcStack_8138 + -0x743c))(puVar1,param_1);\n      if ((iVar4 != 0) &&\n         (puVar23 = *(undefined4 **)(pcStack_8138 + -0x7460),\n         *(int *)(*(int *)(pcStack_8138 + -0x7fd8) + -0x31ec) == 0 &&\n         *(int *)(*(int *)(pcStack_8138 + -0x7fd8) + -0x31dc) == 0)) {\n        FUN_00027ff8(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x49ac,puVar1);\n        FUN_00027ff8(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x4970,param_1);\n        FUN_00027ff8(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x4940);\n        FUN_00027ff8(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x48f8);\n        puVar1 = param_1;\n      }\n    }\n    if (*pcStack_812c == '\0') {\n      unaff_s3 = (undefined4 *)dupstr(puVar1);\n    }\n    else {\n      unaff_s3 = (undefined4 *)(**(code **)(pcStack_8138 + -0x7c78))(pcStack_812c,puVar1);\n    }\n  }\n  else {\n    unaff_s3 = (undefined4 *)dupstr(pcStack_812c);\n  }\n  iVar4 = (**(code **)(pcStack_8138 + -0x7cec))(unaff_s3);\n  if (iStack_80d8 == 2) {\n    if (iVar4 == 0) {\n      iVar4 = (**(code **)(pcStack_8138 + -0x7c80))(unaff_s3);\n      if (iVar4 == 0) {\n        FUN_0002a658(*(int *)(pcStack_8138 + -0x7fc8) + -0x48ac,unaff_s3);\n        safefree(unaff_s3);\n        goto LAB_0002d77c;\n      }\n    }\n    else if (iVar4 != 2) {\n      FUN_0002a658(*(int *)(pcStack_8138 + -0x7fc8) + -0x4a68,unaff_s3);\n      safefree(unaff_s3);\n      goto LAB_0002d77c;\n    }\n    FUN_0002d4e0(unaff_s3,0);\n    safefree(unaff_s3);\n    goto LAB_0002d77c;\n  }\n  unaff_s5 = (**(code **)(pcStack_8138 + -0x7c84))(unaff_s3,uStack_80cc);\n  if (unaff_s5 == 0) {\n    FUN_0002a658(*(int *)(pcStack_8138 + -0x7fc8) + -0x4890,unaff_s3);\n    safefree(unaff_s3);\n    goto LAB_0002d77c;\n  }\n  iStack_8120 = scp_accept_filexfer();\n  if (iStack_8120 == 0) {\n    puVar1 = auStack_100b0;\n    uint64_make(&uStack_80f8,0,0);\n    uStack_8114 = (**(code **)(pcStack_8138 + -0x7488))(0);\n    uStack_811c = (**(code **)(pcStack_8138 + -0x7cac))(unaff_s3,1);\n    uint64_make(&uStack_8100,0,0);\n    iStack_8124 = *(int *)(pcStack_8138 + -0x7fc8);\n    unaff_s7 = *(int *)(pcStack_8138 + -0x7fd8);\nLAB_0002db64:\n    do {\n      iVar4 = uint64_compare(uStack_8100,uStack_80fc,uStack_80c8,uStack_80c4);\n      if (-1 < iVar4) goto LAB_0002de88;\n      uint64_make(&uStack_80f0,0,0x8000);\n      uStack_8148 = uStack_80fc;\n      uint64_subtract(&uStack_80e8,uStack_80c8,uStack_80c4,uStack_8100);\n      iVar4 = uint64_compare(uStack_80f0,uStack_80ec,uStack_80e8,uStack_80e4);\n      if (0 < iVar4) {\n        uStack_8148 = uStack_80fc;\n        uint64_subtract(&uStack_80f0,uStack_80c8,uStack_80c4,uStack_8100);\n      }\n      puVar1 = (undefined *)scp_recv_filedata(auStack_80b4,uStack_80ec);\n      if ((int)puVar1 < 1) {\n        (*pcStack_8128)(iStack_8124 + -0x5640);\n      }\n      if (iVar24 == 0) {\n        puVar5 = (undefined *)(**(code **)(pcStack_8138 + -0x7c68))(unaff_s5,auStack_80b4,puVar1);\n        if (puVar5 == puVar1) {\n          if (*(int *)(unaff_s7 + -0x3fa8) != 0) {\n            uint64_add32(&uStack_8108,uStack_80f8,uStack_80f4,puVar1);\n            uStack_80f8 = uStack_8108;\n            uStack_80f4 = uStack_8104;\n            iVar4 = (**(code **)(pcStack_8138 + -0x7488))(0);\n            if (iVar4 <= iStack_8120) {\n              uint64_add32(&uStack_80e0,uStack_8100,uStack_80fc,puVar1);\n              iVar4 = uint64_compare(uStack_80e0,uStack_80dc,uStack_80c8,uStack_80c4);\n              if (iVar4 != 0) goto LAB_0002dc94;\n            }\n            iStack_8140 = (**(code **)(pcStack_8138 + -0x7488))(0);\n            uStack_8144 = uStack_8114;\n            uStack_8148 = uStack_80f4;\n            iStack_8120 = iStack_8140;\n            (*pcStack_810c)(uStack_811c,uStack_80c8,uStack_80c4,uStack_80f8);\n          }\nLAB_0002dc94:\n          param_1 = auStack_100b0;\n          uint64_add32(&uStack_8108,uStack_8100,uStack_80fc,puVar1);\n          uStack_8100 = uStack_8108;\n          uStack_80fc = uStack_8104;\n          goto LAB_0002db64;\n        }\n        if (*(int *)(unaff_s7 + -0x3fa8) != 0) {\n          (**(code **)(pcStack_8138 + -0x759c))\n                    (1,*(int *)(pcStack_8138 + -0x7fc8) + -0x4850,uStack_811c,iStack_8110);\n        }\n        uint64_add32(&uStack_8108,uStack_8100,uStack_80fc,puVar1);\n      }\n      else {\n        uint64_add32(&uStack_8108,uStack_8100,uStack_80fc,puVar1);\n      }\n      param_1 = auStack_100b0;\n      iVar24 = 1;\n      uStack_8100 = uStack_8108;\n      uStack_80fc = uStack_8104;\n    } while( true );\n  }\n  safefree(unaff_s3);\n  (**(code **)(pcStack_8138 + -0x7c70))(unaff_s5);\nLAB_0002da64:\n  pcVar28 = *(code **)(pcStack_8138 + -0x74a0);\n  if (uStack_b4 == **(uint **)(pcStack_8138 + -0x7478)) {\n    return **(uint **)(pcStack_8138 + -0x7478);\n  }\n  pcVar30 = version;\n  (*pcVar28)();\n  pcStack_8168 = pcVar28 + 0x961d8;\n  uStack_8160 = 0xffff0000;\n  pcStack_815c = pcVar30;\n  uVar6 = buildinfo(*(int *)(pcVar28 + 0x8e210) + 0xaa4);\n  uVar17 = *(undefined4 *)(pcStack_8168 + -0x7da8);\n  iVar4 = *(int *)(pcStack_8168 + -0x7fc8) + -0x482c;\n  uVar7 = uVar6;\n  (**(code **)(pcStack_8168 + -0x759c))(1);\n  safefree(uVar6);\n  uVar12 = 0;\n  pcVar28 = *(code **)(pcStack_8168 + -0x7504);\n  pcVar30 = cmdline_error;\n  (*pcVar28)();\n  pcStack_8198 = pcVar28 + 0x96158;\n  uStack_818c = **(undefined4 **)(pcVar28 + 0x8ece0);\n  puVar23 = *(undefined4 **)(pcVar28 + 0x8ecf8);\n  uStack_8184 = uVar6;\n  puStack_8180 = puVar1;\n  pcStack_817c = pcVar30;\n  iStack_8174 = iVar4;\n  uStack_8170 = uVar17;\n  uStack_816c = uVar7;\n  (**(code **)(pcVar28 + 0x8ec90))(*(int *)(pcVar28 + 0x8e190) + -0x4e28,1,6,*puVar23);\n  piStack_8190 = &iStack_8174;\n  (**(code **)(pcStack_8198 + -0x7444))(*puVar23,1,uVar12);\n  iVar15 = 1;\n  (**(code **)(pcStack_8198 + -0x74c8))(*(int *)(pcStack_8198 + -0x7fc8) + -0x481c,1,0x27,*puVar23);\n  iVar4 = 1;\n  pcVar28 = *(code **)(pcStack_8198 + -0x7504);\n  pcVar30 = psftp_main;\n  (*pcVar28)();\n  pcStack_81e8 = pcVar28 + 0x9609c;\n  puStack_81d4 = (undefined4 *)**(undefined4 **)(pcVar28 + 0x8ec24);\n  **(undefined4 **)(pcVar28 + 0x8e144) = 1;\n  **(undefined4 **)(pcVar28 + 0x8e158) = 2;\n  **(undefined4 **)(pcVar28 + 0x8e120) = 1;\n  puStack_81d0 = puVar23;\n  uStack_81cc = uVar12;\n  puStack_81c8 = param_1;\n  puStack_81c4 = unaff_s3;\n  iStack_81c0 = iVar24;\n  iStack_81bc = unaff_s5;\n  piStack_81b8 = &iStack_80d8;\n  iStack_81b4 = unaff_s7;\n  iStack_81b0 = iVar2;\n  pcStack_81ac = pcVar30;\n  (**(code **)(pcVar28 + 0x8e444))();\n  uVar7 = conf_new();\n  *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31fc) = uVar7;\n  do_defaults(0,uVar7);\n  **(undefined4 **)(pcStack_81e8 + -0x7f60) = 0;\n  pcVar28 = pcStack_81e8;\n  if (iVar4 < 2) {\n    iVar2 = 1;\n  }\n  else {\n    pcVar13 = *(char **)(iVar15 + 4);\n    piVar19 = (int *)(iVar15 + 4);\n    if (*pcVar13 == '-') {\n      iVar25 = *(int *)(pcStack_81e8 + -0x7fd8);\n      iVar26 = *(int *)(pcStack_81e8 + -0x7fc8);\n      pcVar27 = (char *)(*(int *)(pcStack_81e8 + -0x7fc8) + -0x47b8);\n      iVar29 = *(int *)(pcStack_81e8 + -0x7fc8);\n      pcStack_81dc = (code *)(*(int *)(pcStack_81e8 + -0x7db0) + -0x79e4);\n      iVar24 = 1;\nLAB_0002e488:\n      iVar2 = iVar24 + 1;\n      uVar7 = 0;\n      if (iVar2 < iVar4) {\n        uVar7 = *(undefined4 *)(iVar15 + (iVar24 + 1) * 4);\n      }\n      iVar8 = cmdline_process_param(pcVar13,uVar7,1,*(undefined4 *)(iVar25 + -0x31fc));\n      pcVar28 = pcStack_81e8;\n      if (iVar8 == -2) {\n        cmdline_error(*(int *)(pcStack_81e8 + -0x7fc8) + -0x47e4,*piVar19);\n        uVar7 = extraout_v1;\nLAB_0002e1d0:\n        iVar2 = iVar24;\n        if ((**(uint **)(pcVar28 + -0x7f44) & 1) != 0) {\n          *(undefined4 *)(*(int *)(pcVar28 + -0x7fd8) + -0x31c8) = uVar7;\n        }\n        goto LAB_0002e464;\n      }\n      uVar7 = 1;\n      if (iVar8 == 2) goto LAB_0002e464;\n      if (iVar8 == 1) goto LAB_0002e1d0;\n      iVar20 = *piVar19;\n      iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar26 + -0x47c0);\n      if (iVar8 == 0) {\n        (**(code **)(pcStack_81e8 + -0x7c54))();\n        uVar3 = 1;\n        goto LAB_0002e878;\n      }\n      iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20);\n      if (iVar8 == 0) {\n        *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31cc) = 1;\n        pcVar28 = pcStack_81e8;\n        iVar2 = iVar24;\n      }\n      else {\n        iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar29 + -0x47b4);\n        if (iVar8 == 0) {\n          *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d0) = 1;\n          pcVar28 = pcStack_81e8;\n          iVar2 = iVar24;\n        }\n        else {\n          iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                            (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47b0);\n          if (iVar8 == 0) {\n            *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fa8) = 0;\n            pcVar28 = pcStack_81e8;\n            iVar2 = iVar24;\n          }\n          else {\n            iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                              (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47ac);\n            if ((iVar8 != 0) &&\n               (iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                  (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47a8), iVar8 != 0))\n            {\n              iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47a4);\n              if (iVar8 != 0) {\n                iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                  (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x479c);\n                iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                if (iVar8 == 0) {\nLAB_0002e348:\n                  pcVar28 = pcStack_81e8;\n                  version();\n                }\n                else {\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar16 + -0x4798);\n                  iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                  if (iVar8 == 0) goto LAB_0002e348;\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar16 + -0x478c);\n                  iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                  pcVar28 = pcStack_81e8;\n                  if (iVar8 == 0) {\n                    *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31c4) = 1;\n                    iVar2 = iVar24;\n                    goto LAB_0002e464;\n                  }\n                }\n                iVar8 = (**(code **)(pcVar28 + -0x743c))(iVar20,iVar16 + -0x4788);\n                if (iVar8 == 0) {\n                  **(undefined4 **)(pcStack_81e8 + -0x7c4c) = 1;\n                  pcVar28 = pcStack_81e8;\n                  iVar2 = iVar24;\n                }\n                else {\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                    (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4780);\n                  if (iVar8 == 0) {\n                    *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31dc) = 1;\n                    pcVar28 = pcStack_81e8;\n                    iVar2 = iVar24;\n                  }\n                  else {\n                    iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                      (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4778);\n                    if (iVar8 == 0) {\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac) = 0;\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0) = 1;\n                      pcVar28 = pcStack_81e8;\n                      iVar2 = iVar24;\n                      goto LAB_0002e464;\n                    }\n                    iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                      (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4770);\n                    if (iVar8 == 0) {\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac) = 1;\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0) = 0;\n                      pcVar28 = pcStack_81e8;\n                      iVar2 = iVar24;\n                    }\n                    else {\n                      iVar24 = (**(code **)(pcStack_81e8 + -0x743c))\n                                         (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4768);\n                      pcVar28 = pcStack_81e8;\n                      if (iVar24 == 0) goto LAB_0002e52c;\n                      cmdline_error(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4764,iVar20);\n                    }\n                  }\n                }\n                goto LAB_0002e464;\n              }\n            }\n            (*pcStack_81dc)();\n            pcVar28 = pcStack_81e8;\n            iVar2 = iVar24;\n          }\n        }\n      }\nLAB_0002e464:\n      iVar2 = iVar2 + 1;\n      if (iVar4 <= iVar2) goto LAB_0002e52c;\n      piVar19 = (int *)(iVar15 + iVar2 * 4);\n      pcVar13 = (char *)*piVar19;\n      iVar24 = iVar2;\n      if (*pcVar13 != '-') goto LAB_0002e52c;\n      goto LAB_0002e488;\n    }\n    iVar2 = 1;\n  }\nLAB_0002e52c:\n  iVar4 = iVar4 - iVar2;\n  *(undefined4 *)(*(int *)(pcVar28 + -0x7fd8) + -0x31f4) = 0;\n  puVar23 = (undefined4 *)(iVar15 + iVar2 * 4);\n  if (*(int *)(*(int *)(pcVar28 + -0x7fd8) + -0x31c4) == 0) {\n    if (iVar4 < 2) {\n      FUN_0002861c();\n      puVar18 = puVar23 + iVar4 + 0x3fffffff;\n      iVar24 = FUN_00028968(*puVar18);\n      iVar2 = *(int *)(pcStack_81e8 + -0x7fd8);\n      if (iVar24 != 0) goto LAB_0002e90c;\n      *(undefined4 *)(iVar2 + -0x31f0) = 0;\nLAB_0002efd8:\n      iVar2 = *(int *)(pcStack_81e8 + -0x7fc8);\nLAB_0002efdc:\n      FUN_00028270(iVar2 + -0x4668);\n      pcVar13 = (char *)*puVar23;\nLAB_0002eb34:\n      uVar7 = puVar23[1];\n      puVar9 = (undefined1 *)FUN_00028968(pcVar13);\n      if (puVar9 == (undefined1 *)0x0) {\n        FUN_00028270(*(int *)(pcStack_81e8 + -0x7fc8) + -0x463c);\n        uRam00000000 = 0;\n      }\n      else {\n        *puVar9 = 0;\n      }\n      if (puVar9[1] == '\0') {\n        pcVar27 = (char *)(*(int *)(pcStack_81e8 + -0x7fc8) + -0x48b0);\n      }\n      else {\n        pcVar27 = puVar9 + 1;\n      }\n      puVar9 = (undefined1 *)(**(code **)(pcStack_81e8 + -0x75b8))(pcVar13,0x40);\n      if (puVar9 == (undefined1 *)0x0) {\n        pcVar21 = (char *)0x0;\n      }\n      else {\n        *puVar9 = 0;\n        cVar11 = *pcVar13;\n        pcVar21 = pcVar13;\n        pcVar13 = puVar9 + 1;\n        if (cVar11 == '\0') {\n          pcVar21 = (char *)0x0;\n        }\n      }\n      if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31c8) == 0) {\n        iVar2 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iVar2 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47f4;\n      }\n      if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31cc) == 0) {\n        iVar24 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iVar24 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47f0;\n      }\n      if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d0) == 0) {\n        iVar4 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iVar4 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47ec;\n      }\n      if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4) == 0) {\n        iStack_81f0 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iStack_81f0 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47e8;\n      }\n      pcStack_81ec = pcVar27;\n      uVar6 = dupprintf(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4618,iVar2,iVar24,iVar4);\n      FUN_00028a00(pcVar13,pcVar21,uVar6);\n      safefree(uVar6);\n      iVar2 = scp_sink_setup(pcVar27,*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d0),\n                             *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31cc));\n      if (iVar2 == 0) {\n        FUN_0002d4e0(uVar7);\n        iVar2 = *(int *)(pcStack_81e8 + -0x7fd8);\n        goto LAB_0002e788;\n      }\n    }\n    else {\n      if (iVar4 < 3) {\n        puVar18 = puVar23 + iVar4 + 0x3fffffff;\n        iVar2 = FUN_00028968(*puVar18);\n        if (iVar2 == 0) {\n          *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f0) = 0;\n          iVar2 = *(int *)(pcStack_81e8 + -0x7fc8);\n          if (iVar4 != 2) goto LAB_0002efdc;\n          pcVar13 = (char *)*puVar23;\n          goto LAB_0002eb34;\n        }\n      }\n      else {\n        *(undefined4 *)(*(int *)(pcVar28 + -0x7fd8) + -0x31d4) = 1;\n        puVar18 = puVar23 + iVar4 + 0x3fffffff;\n        iVar2 = FUN_00028968(*puVar18);\n        if (iVar2 == 0) {\n          *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f0) = 0;\n          goto LAB_0002efd8;\n        }\n      }\n      iVar2 = *(int *)(pcStack_81e8 + -0x7fd8);\nLAB_0002e90c:\n      *(undefined4 *)(iVar2 + -0x31f0) = 1;\n      pcVar13 = (char *)*puVar18;\n      puVar9 = (undefined1 *)FUN_00028968(pcVar13);\n      if (puVar9 == (undefined1 *)0x0) {\n        FUN_00028270(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4720);\n        uRam00000000 = 0;\n      }\n      else {\n        *puVar9 = 0;\n      }\n      if (puVar9[1] == '\0') {\n        pcVar21 = (char *)(*(int *)(pcStack_81e8 + -0x7fc8) + -0x48b0);\n      }\n      else {\n        pcVar21 = puVar9 + 1;\n      }\n      puVar9 = (undefined1 *)(**(code **)(pcStack_81e8 + -0x75b8))(pcVar13,0x40);\n      if (puVar9 == (undefined1 *)0x0) {\n        pcVar27 = (char *)0x0;\n      }\n      else {\n        *puVar9 = 0;\n        cVar11 = *pcVar13;\n        pcVar27 = pcVar13;\n        pcVar13 = puVar9 + 1;\n        if (cVar11 == '\0') {\n          pcVar27 = (char *)0x0;\n        }\n      }\n      if (iVar4 == 2) {\n        iVar2 = FUN_00028968(*puVar23);\n        if (iVar2 != 0) {\n          FUN_00028270(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4704,*puVar23);\n        }\n        iVar2 = (**(code **)(pcStack_81e8 + -0x7c30))(*puVar23,1);\n        if (iVar2 == 0) {\n          FUN_00028270(*(int *)(pcStack_81e8 + -0x7fc8) + -0x46e0,*puVar23);\n          iVar24 = *(int *)(pcStack_81e8 + -0x7fd8);\n        }\n        else {\n          iVar24 = *(int *)(pcStack_81e8 + -0x7fd8);\n          if (iVar2 == 2) {\n            *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4) = 1;\n            goto LAB_0002e988;\n          }\n        }\n      }\n      else {\nLAB_0002e988:\n        iVar24 = *(int *)(pcStack_81e8 + -0x7fd8);\n      }\n      if (*(int *)(iVar24 + -0x31c8) == 0) {\n        iVar2 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iVar2 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47f4;\n      }\n      if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31cc) == 0) {\n        iVar24 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iVar24 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47f0;\n      }\n      if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d0) == 0) {\n        iVar15 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iVar15 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47ec;\n      }\n      if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4) == 0) {\n        iStack_81f0 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iStack_81f0 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47e8;\n      }\n      pcStack_81ec = pcVar21;\n      uVar7 = dupprintf(*(int *)(pcStack_81e8 + -0x7fc8) + -0x46c0,iVar2,iVar24,iVar15);\n      FUN_00028a00(pcVar13,pcVar27,uVar7);\n      safefree(uVar7);\n      pcVar27 = *(char **)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4);\n      iVar2 = scp_source_setup(pcVar21);\n      if ((iVar2 == 0) && (1 < iVar4)) {\n        puVar18 = puVar23 + iVar4 + -1;\n        iVar24 = *(int *)(pcStack_81e8 + -0x7db0);\n        iVar25 = *(int *)(pcStack_81e8 + -0x7fc8);\n        iVar15 = *(int *)(pcStack_81e8 + -0x7db0);\n        iVar4 = *(int *)(pcStack_81e8 + -0x7fc8);\n        do {\n          pcVar13 = (char *)*puVar23;\n          iVar2 = FUN_00028968(pcVar13);\n          if (iVar2 == 0) {\n            pcVar27 = (char *)0x1;\n            iVar2 = (**(code **)(pcStack_81e8 + -0x7c30))(pcVar13,1,pcVar13);\n            if (iVar2 == 0) {\n              (*(code *)(iVar15 + -0x59a8))(iVar25 + -0x4688);\n              pcVar27 = pcVar13;\n            }\n            else if (iVar2 == 1) {\n              (*(code *)(iVar24 + -0x4b8c))(pcVar13);\n            }\n            else {\n              iVar2 = (**(code **)(pcStack_81e8 + -0x7c2c))();\n              if (iVar2 == 0) {\n                (*(code *)(iVar15 + -0x59a8))(iVar25 + -0x4688);\n                pcVar27 = pcVar13;\n              }\n              else {\n                while (iVar26 = (**(code **)(pcStack_81e8 + -0x7c28))(iVar2), iVar26 != 0) {\n                  (*(code *)(iVar24 + -0x4b8c))(iVar26);\n                  safefree(iVar26);\n                }\n                (**(code **)(pcStack_81e8 + -0x7c24))(iVar2);\n              }\n            }\n          }\n          else {\n            pcVar27 = (char *)(iVar4 + -0x46ac);\n            FUN_00027ff8(**(undefined4 **)(pcStack_81e8 + -0x7460));\n            *(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31e0) =\n                 *(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31e0) + 1;\n          }\n          puVar23 = puVar23 + 1;\n          iVar2 = *(int *)(pcStack_81e8 + -0x7fd8);\n        } while (puVar18 != puVar23);\n        goto LAB_0002e788;\n      }\n    }\n  }\n  else {\n    if (iVar4 == 1) {\n      pcVar13 = (char *)*puVar23;\n    }\n    else {\n      FUN_0002861c();\n      pcVar13 = (char *)*puVar23;\n    }\n    puVar9 = (undefined1 *)FUN_00028968(pcVar13);\n    if (puVar9 == (undefined1 *)0x0) {\n      FUN_00028270(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4750);\n      uRam00000000 = 0;\n    }\n    else {\n      *puVar9 = 0;\n    }\n    if (puVar9[1] == '\0') {\n      puVar9 = (undefined1 *)(**(code **)(pcStack_81e8 + -0x75b8))(pcVar13,0x40);\n      if (puVar9 == (undefined1 *)0x0) {\n        puVar23 = (undefined4 *)safemalloc(0x68,1);\n        iVar2 = *(int *)(pcStack_81e8 + -0x7fc8);\n        uVar7 = *(undefined4 *)(iVar2 + -0x4728);\n        *puVar23 = *(undefined4 *)(iVar2 + -0x472c);\n        puVar23[1] = uVar7;\n        *(undefined1 *)(puVar23 + 2) = *(undefined1 *)(iVar2 + -0x4724);\n        iVar2 = (**(code **)(pcStack_81e8 + -0x752c))(puVar23);\n        pcVar10 = (char *)((int)puVar23 + iVar2);\n        pcVar21 = (char *)(*(int *)(pcStack_81e8 + -0x7fc8) + -0x48b0);\n        cVar11 = '.';\n        pcVar27 = (char *)0x0;\n        pcVar22 = pcVar21;\n        goto LAB_0002e6b4;\n      }\n      pcVar21 = (char *)(*(int *)(pcStack_81e8 + -0x7fc8) + -0x48b0);\nLAB_0002e5ac:\n      *puVar9 = 0;\n      cVar11 = *pcVar13;\n      pcVar27 = pcVar13;\n      pcVar13 = puVar9 + 1;\n      if (cVar11 == '\0') {\n        pcVar27 = (char *)0x0;\n      }\n    }\n    else {\n      pcVar21 = puVar9 + 1;\n      puVar9 = (undefined1 *)(**(code **)(pcStack_81e8 + -0x75b8))(pcVar13);\n      if (puVar9 != (undefined1 *)0x0) goto LAB_0002e5ac;\n      pcVar27 = (char *)0x0;\n    }\n    iVar2 = (**(code **)(pcStack_81e8 + -0x752c))(pcVar21);\n    puVar23 = (undefined4 *)safemalloc((iVar2 + 0x19) * 4,1);\n    iVar2 = *(int *)(pcStack_81e8 + -0x7fc8);\n    uVar7 = *(undefined4 *)(iVar2 + -0x4728);\n    *puVar23 = *(undefined4 *)(iVar2 + -0x472c);\n    puVar23[1] = uVar7;\n    *(undefined1 *)(puVar23 + 2) = *(undefined1 *)(iVar2 + -0x4724);\n    iVar2 = (**(code **)(pcStack_81e8 + -0x752c))(puVar23);\n    pcVar10 = (char *)((int)puVar23 + iVar2);\n    cVar11 = *pcVar21;\n    pcVar22 = pcVar21;\n    while (cVar11 != '\0') {\nLAB_0002e6b4:\n      if (cVar11 == '\'') {\n        builtin_strncpy(pcVar10,"\'\\\'\'",4);\n        pcVar10 = pcVar10 + 4;\n      }\n      else {\n        *pcVar10 = cVar11;\n        pcVar10 = pcVar10 + 1;\n      }\n      pcVar21 = pcVar21 + 1;\n      cVar11 = *pcVar21;\n    }\n    *pcVar10 = '\'';\n    pcVar10[1] = '\0';\n    FUN_00028a00(pcVar13,pcVar27,puVar23);\n    safefree(puVar23);\n    if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31ec) != 0) {\n      scp_sftp_listdir(pcVar22);\n      iVar2 = *(int *)(pcStack_81e8 + -0x7fd8);\n      goto LAB_0002e788;\n    }\n    puVar23 = *(undefined4 **)(pcStack_81e8 + -0x7594);\n    while( true ) {\n      pcVar27 = (char *)0x1;\n      iVar2 = FUN_000280f4(&cStack_81d5);\n      if (iVar2 < 1) break;\n      (**(code **)(pcStack_81e8 + -0x75c4))((int)cStack_81d5,*puVar23);\n    }\n  }\n  iVar2 = *(int *)(pcStack_81e8 + -0x7fd8);\nLAB_0002e788:\n  pcVar28 = *(code **)(pcStack_81e8 + -0x7c44);\n  if (*(int *)(iVar2 + -0x31f4) != 0) {\n    iVar2 = (**(code **)(*(int *)(iVar2 + -0x31f4) + 0x20))\n                      (*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f8));\n    pcVar28 = *(code **)(pcStack_81e8 + -0x7c44);\n    if (iVar2 != 0) {\n      (**(code **)(*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f4) + 0x18))\n                (*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f8),0xc);\n      **(undefined4 **)(pcStack_81e8 + -0x7db4) = 1;\n      pcVar27 = (char *)0x1;\n      FUN_000280f4(&cStack_81d5);\n      pcVar28 = *(code **)(pcStack_81e8 + -0x7c44);\n    }\n  }\n  (*pcVar28)();\n  cmdline_cleanup();\n  (**(code **)(pcStack_81e8 + -0x7d88))(0);\n  iVar20 = *(int *)(pcStack_81e8 + -0x7fd8);\n  iVar24 = *(int *)(pcStack_81e8 + -0x7fd8);\n  (**(code **)(*(int *)(iVar24 + -0x31f4) + 4))(*(undefined4 *)(iVar20 + -0x31f8));\n  *(undefined4 *)(iVar20 + -0x31f8) = 0;\n  *(undefined4 *)(iVar24 + -0x31f4) = 0;\n  (**(code **)(pcStack_81e8 + -0x7c3c))();\n  uVar3 = (uint)(*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31e0) != 0);\nLAB_0002e878:\n  if (puStack_81d4 == (undefined4 *)**(int **)(pcStack_81e8 + -0x7478)) {\n    return uVar3;\n  }\n  pcVar28 = *(code **)(pcStack_81e8 + -0x74a0);\n  uVar12 = 0x2f008;\n  puVar23 = puStack_81d4;\n  (*pcVar28)();\n  pcStack_8218 = pcVar28 + 0x95140;\n  uVar7 = *puVar23;\n  uVar6 = *(undefined4 *)pcVar27;\n  iStack_820c = iVar24;\n  iStack_8208 = iVar20;\n  uStack_8204 = uVar12;\n  iVar2 = (**(code **)(pcVar28 + 0x8dd04))(uVar7,*(int *)(pcVar28 + 0x8d178) + -0x4584);\n  if (iVar2 == 0) {\n    uVar3 = 0xffffffff;\n  }\n  else {\n    iVar2 = (**(code **)(pcStack_8218 + -0x743c))(uVar6,*(int *)(pcStack_8218 + -0x7fc8) + -0x4584);\n    if (iVar2 == 0) {\n      uVar3 = 1;\n    }\n    else {\n      uVar3 = (**(code **)(pcStack_8218 + -0x743c))(uVar7,uVar6);\n    }\n  }\n  return uVar3;\nLAB_0002de88:\n  if (iStack_80c0 != 0) {\n    (**(code **)(pcStack_8138 + -0x7c60))(unaff_s5,uStack_80b8,uStack_80bc);\n  }\n  (**(code **)(pcStack_8138 + -0x7c70))(unaff_s5);\n  if (iVar24 == 0) {\n    scp_finish_filerecv();\n    safefree(unaff_s3);\n    safefree(uStack_80d4);\n  }\n  else {\n    FUN_0002a658(*(int *)(pcStack_8138 + -0x7fc8) + -0x483c,unaff_s3);\n    safefree(unaff_s3);\n  }\n  goto LAB_0002d77c;\n}" type_identifier (function_declarator "scp_recv_filedata(undefined *param_1,undefined *param_2)" identifier (parameter_list "(undefined *param_1,undefined *param_2)" ( (parameter_declaration "undefined *param_1" type_identifier (pointer_declarator "*param_1" * identifier)) , (parameter_declaration "undefined *param_2" type_identifier (pointer_declarator "*param_2" * identifier)) ))) (compound_statement "{\n  undefined *puVar1;\n  int iVar2;\n  uint uVar3;\n  int iVar4;\n  undefined *puVar5;\n  undefined4 uVar6;\n  undefined4 uVar7;\n  int iVar8;\n  undefined1 *puVar9;\n  char *pcVar10;\n  undefined4 extraout_v1;\n  char cVar11;\n  undefined4 uVar12;\n  char *pcVar13;\n  undefined *puVar14;\n  int iVar15;\n  int iVar16;\n  undefined4 uVar17;\n  undefined4 *puVar18;\n  int *piVar19;\n  int iVar20;\n  char *pcVar21;\n  char *pcVar22;\n  undefined4 *unaff_s3;\n  undefined4 *puVar23;\n  undefined1 *unaff_s4;\n  int iVar24;\n  int unaff_s5;\n  int iVar25;\n  int iVar26;\n  int unaff_s7;\n  char *pcVar27;\n  code *pcVar28;\n  int iVar29;\n  code *pcVar30;\n  undefined auStack_100b0 [32408];\n  code *pcStack_8218;\n  int iStack_820c;\n  int iStack_8208;\n  undefined4 uStack_8204;\n  int iStack_81f0;\n  char *pcStack_81ec;\n  code *pcStack_81e8;\n  code *pcStack_81dc;\n  char cStack_81d5;\n  undefined4 *puStack_81d4;\n  undefined4 *puStack_81d0;\n  undefined4 uStack_81cc;\n  undefined *puStack_81c8;\n  undefined4 *puStack_81c4;\n  int iStack_81c0;\n  int iStack_81bc;\n  int *piStack_81b8;\n  int iStack_81b4;\n  int iStack_81b0;\n  code *pcStack_81ac;\n  code *pcStack_8198;\n  int *piStack_8190;\n  undefined4 uStack_818c;\n  undefined4 uStack_8184;\n  undefined *puStack_8180;\n  code *pcStack_817c;\n  int iStack_8174;\n  undefined4 uStack_8170;\n  undefined4 uStack_816c;\n  code *pcStack_8168;\n  undefined4 uStack_8160;\n  code *pcStack_815c;\n  undefined4 uStack_8148;\n  undefined4 uStack_8144;\n  int iStack_8140;\n  code *pcStack_8138;\n  char *pcStack_812c;\n  code *pcStack_8128;\n  int iStack_8124;\n  int iStack_8120;\n  undefined4 uStack_811c;\n  undefined *puStack_8118;\n  undefined4 uStack_8114;\n  int iStack_8110;\n  code *pcStack_810c;\n  undefined4 uStack_8108;\n  undefined4 uStack_8104;\n  undefined4 uStack_8100;\n  undefined4 uStack_80fc;\n  undefined4 uStack_80f8;\n  undefined4 uStack_80f4;\n  undefined4 uStack_80f0;\n  undefined4 uStack_80ec;\n  undefined4 uStack_80e8;\n  undefined4 uStack_80e4;\n  undefined4 uStack_80e0;\n  undefined4 uStack_80dc;\n  int iStack_80d8;\n  undefined4 uStack_80d4;\n  undefined *puStack_80d0;\n  undefined4 uStack_80cc;\n  undefined4 uStack_80c8;\n  undefined4 uStack_80c4;\n  int iStack_80c0;\n  undefined4 uStack_80bc;\n  undefined4 uStack_80b8;\n  undefined1 auStack_80b4 [32768];\n  uint uStack_b4;\n  undefined *puStack_b0;\n  undefined *puStack_ac;\n  undefined *puStack_a8;\n  undefined4 *puStack_a4;\n  undefined1 *puStack_a0;\n  undefined4 uStack_6c;\n  undefined1 auStack_68 [4];\n  char *pcStack_64;\n  undefined *puStack_60;\n  undefined *puStack_5c;\n  undefined *puStack_58;\n  undefined4 *puStack_54;\n  undefined4 local_30;\n  undefined4 local_2c;\n  uint local_24;\n  undefined4 local_20;\n  int local_1c;\n  \n  puVar1 = PTR_DAT_000bc178;\n  local_1c = *(int *)PTR___stack_chk_guard_000bccd8;\n  if (*(int *)(PTR_DAT_000bc178 + -0x31ec) == 0) {\n    uVar3 = FUN_000280f4();\n  }\n  else {\n    xfer_download_queue(*(undefined4 *)(PTR_DAT_000bc178 + -0x3244));\n    unaff_s3 = (undefined4 *)sftp_recv();\n    puVar1 = (undefined *)xfer_download_gotpkt(*(undefined4 *)(puVar1 + -0x3244),unaff_s3);\n    if ((int)puVar1 < 1) {\n      param_2 = *(undefined **)PTR_stderr_000bccf0;\n      uVar7 = fxp_error();\n      FUN_00027ff8(param_2,PTR_s_Server_sent_command_exit_status___000bc188 + -0x4abc,uVar7);\n      if (puVar1 == (undefined *)0x80000000) {\n        safefree(unaff_s3);\n      }\n      *(int *)(PTR_DAT_000bc178 + -0x31e0) = *(int *)(PTR_DAT_000bc178 + -0x31e0) + 1;\n      uVar3 = 0xffffffff;\n    }\n    else {\n      iVar2 = xfer_download_data(*(undefined4 *)(PTR_DAT_000bc178 + -0x3244),&local_20,&local_24);\n      if (iVar2 == 0) {\n        local_24 = 0;\n      }\n      else {\n        param_2 = (undefined *)(uint)((int)param_2 < (int)local_24);\n        if ((int)local_24 < 1) {\n          FUN_00027ff8(*(undefined4 *)PTR_stderr_000bccf0,\n                       PTR_s_Server_sent_command_exit_status___000bc188 + -0x4a9c);\n          *(int *)(PTR_DAT_000bc178 + -0x31e0) = *(int *)(PTR_DAT_000bc178 + -0x31e0) + 1;\n          safefree(local_20);\n          uVar3 = 0xffffffff;\n          goto LAB_0002d148;\n        }\n        if (param_2 != (undefined *)0x0) {\n          uVar3 = (*(code *)PTR___assert_fail_000bcb00)\n                            (PTR_s_Server_sent_command_exit_status___000bc188 + -0x4a7c,\n                             PTR_s_Server_sent_command_exit_status___000bc188 + -0x4fb0,0x628,\n                             PTR_s_Server_sent_command_exit_status___000bc188 + -0x45f0);\n          return uVar3;\n        }\n        (*(code *)PTR_memcpy_000bccdc)(param_1,local_20);\n        safefree(local_20);\n      }\n      param_2 = PTR_DAT_000bc178;\n      puVar1 = PTR_DAT_000bc178 + -0x324c;\n      uint64_add32(&local_30,*(undefined4 *)(PTR_DAT_000bc178 + -0x324c),\n                   *(undefined4 *)(PTR_DAT_000bc178 + -0x3248),local_24);\n      *(undefined4 *)(param_2 + -0x324c) = local_30;\n      *(undefined4 *)(param_2 + -0x3248) = local_2c;\n      uVar3 = local_24;\n    }\n  }\nLAB_0002d148:\n  if (local_1c == *(int *)PTR___stack_chk_guard_000bccd8) {\n    return uVar3;\n  }\n  puVar5 = PTR___stack_chk_fail_000bccb0;\n  (*(code *)PTR___stack_chk_fail_000bccb0)();\n  pcStack_64 = (char *)**(undefined4 **)(puVar5 + 0x8fa44);\n  puStack_60 = param_2;\n  puStack_5c = puVar1;\n  puStack_58 = param_1;\n  puStack_54 = unaff_s3;\n  if (*(int *)(*(int *)(puVar5 + 0x8eee4) + -0x31ec) == 0) {\n    puVar14 = (undefined *)(*(int *)(puVar5 + 0x8eef4) + -0x17dc);\n    (**(code **)(*(int *)(*(int *)(puVar5 + 0x8eee4) + -0x31f4) + 0xc))\n              (*(undefined4 *)(*(int *)(puVar5 + 0x8eee4) + -0x31f8),puVar14,1);\n    uVar3 = FUN_00028400();\n  }\n  else {\n    xfer_set_error(*(undefined4 *)(*(int *)(puVar5 + 0x8eee4) + -0x3244));\n    iVar2 = *(int *)(puVar5 + 0x8eee4);\n    unaff_s4 = auStack_68;\n    unaff_s3 = &uStack_6c;\n    while (iVar24 = xfer_done(*(undefined4 *)(iVar2 + -0x3244)), iVar24 == 0) {\n      param_1 = (undefined *)sftp_recv();\n      puVar1 = (undefined *)xfer_download_gotpkt(*(undefined4 *)(iVar2 + -0x3244),param_1);\n      if ((int)puVar1 < 1) {\n        param_2 = (undefined *)**(undefined4 **)(puVar5 + 0x8fa5c);\n        uVar7 = fxp_error();\n        puVar14 = (undefined *)(*(int *)(puVar5 + 0x8eef4) + -0x4abc);\n        FUN_00027ff8(param_2,puVar14,uVar7);\n        if (puVar1 == (undefined *)0x80000000) {\n          safefree(param_1);\n          iVar2 = *(int *)(puVar5 + 0x8eee4);\n        }\n        else {\n          iVar2 = *(int *)(puVar5 + 0x8eee4);\n        }\n        *(int *)(iVar2 + -0x31e0) = *(int *)(iVar2 + -0x31e0) + 1;\n        uVar3 = 0xffffffff;\n        goto LAB_0002d318;\n      }\n      iVar24 = xfer_download_data(*(undefined4 *)(iVar2 + -0x3244),unaff_s3,unaff_s4);\n      if (iVar24 != 0) {\n        safefree(uStack_6c);\n      }\n    }\n    xfer_cleanup(*(undefined4 *)(*(int *)(puVar5 + 0x8eee4) + -0x3244));\n    param_2 = (undefined *)fxp_close_send(*(undefined4 *)(*(int *)(puVar5 + 0x8eee4) + -0x3240));\n    uVar7 = sftp_wait_for_reply(param_2);\n    puVar14 = param_2;\n    fxp_close_recv(uVar7);\n    uVar3 = 0;\n  }\nLAB_0002d318:\n  if (pcStack_64 == (char *)**(undefined4 **)(puVar5 + 0x8fa44)) {\n    return uVar3;\n  }\n  pcVar28 = *(code **)(puVar5 + 0x8fa1c);\n  pcVar13 = pcStack_64;\n  (*pcVar28)();\n  pcStack_8138 = pcVar28 + 0x96c70;\n  uStack_b4 = **(uint **)(pcVar28 + 0x8f7f8);\n  pcStack_812c = pcVar13;\n  puStack_8118 = puVar14;\n  puStack_b0 = param_2;\n  puStack_ac = puVar1;\n  puStack_a8 = param_1;\n  puStack_a4 = unaff_s3;\n  puStack_a0 = unaff_s4;\n  iVar2 = (**(code **)(pcVar28 + 0x8ef84))();\n  if ((*(int *)(*(int *)(pcStack_8138 + -0x7fd8) + -0x31d4) != 0) && (iVar2 != 2)) {\n    FUN_00028270(*(int *)(pcStack_8138 + -0x7fc8) + -0x4a68,pcStack_812c);\n  }\n  scp_sink_init();\n  iVar24 = 0;\n  pcStack_8128 = (code *)(*(int *)(pcStack_8138 + -0x7db0) + -0x7d90);\n  pcStack_810c = (code *)(*(int *)(pcStack_8138 + -0x7db0) + -0x6cb8);\n  iStack_8110 = *(int *)(pcStack_8138 + -0x7fc8) + -0x4878;\nLAB_0002d77c:\n  do {\n    iVar4 = scp_get_sink_action(&iStack_80d8);\n    if ((iVar4 != 0) || (iStack_80d8 == 3)) goto LAB_0002da64;\n  } while (iStack_80d8 == 4);\n  if (iVar2 == 2) {\n    param_1 = auStack_100b0;\n    puVar1 = (undefined *)(**(code **)(pcStack_8138 + -0x7cac))(puStack_80d0,1);\n    if (puStack_80d0 != puVar1) {\n      puVar23 = *(undefined4 **)(pcStack_8138 + -0x7460);\n      param_1 = (undefined *)(*(int *)(pcStack_8138 + -0x7fcc) + 0x7ff8);\n      FUN_00027ff8(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x4a54);\n      FUN_00027ff8(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x4a20,puVar1);\n    }\n    iVar4 = (**(code **)(pcStack_8138 + -0x7640))(puVar1,*(int *)(pcStack_8138 + -0x7fc8) + -0x48b0)\n    ;\n    if (puVar1[iVar4] == '\0') {\n      (*pcStack_8128)(*(int *)(pcStack_8138 + -0x7fc8) + -0x49f8);\n    }\n    if (puStack_8118 != (undefined *)0x0) {\n      param_1 = (undefined *)(**(code **)(pcStack_8138 + -0x7cac))(puStack_8118,1);\n      iVar4 = (**(code **)(pcStack_8138 + -0x743c))(puVar1,param_1);\n      if ((iVar4 != 0) &&\n         (puVar23 = *(undefined4 **)(pcStack_8138 + -0x7460),\n         *(int *)(*(int *)(pcStack_8138 + -0x7fd8) + -0x31ec) == 0 &&\n         *(int *)(*(int *)(pcStack_8138 + -0x7fd8) + -0x31dc) == 0)) {\n        FUN_00027ff8(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x49ac,puVar1);\n        FUN_00027ff8(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x4970,param_1);\n        FUN_00027ff8(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x4940);\n        FUN_00027ff8(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x48f8);\n        puVar1 = param_1;\n      }\n    }\n    if (*pcStack_812c == '\0') {\n      unaff_s3 = (undefined4 *)dupstr(puVar1);\n    }\n    else {\n      unaff_s3 = (undefined4 *)(**(code **)(pcStack_8138 + -0x7c78))(pcStack_812c,puVar1);\n    }\n  }\n  else {\n    unaff_s3 = (undefined4 *)dupstr(pcStack_812c);\n  }\n  iVar4 = (**(code **)(pcStack_8138 + -0x7cec))(unaff_s3);\n  if (iStack_80d8 == 2) {\n    if (iVar4 == 0) {\n      iVar4 = (**(code **)(pcStack_8138 + -0x7c80))(unaff_s3);\n      if (iVar4 == 0) {\n        FUN_0002a658(*(int *)(pcStack_8138 + -0x7fc8) + -0x48ac,unaff_s3);\n        safefree(unaff_s3);\n        goto LAB_0002d77c;\n      }\n    }\n    else if (iVar4 != 2) {\n      FUN_0002a658(*(int *)(pcStack_8138 + -0x7fc8) + -0x4a68,unaff_s3);\n      safefree(unaff_s3);\n      goto LAB_0002d77c;\n    }\n    FUN_0002d4e0(unaff_s3,0);\n    safefree(unaff_s3);\n    goto LAB_0002d77c;\n  }\n  unaff_s5 = (**(code **)(pcStack_8138 + -0x7c84))(unaff_s3,uStack_80cc);\n  if (unaff_s5 == 0) {\n    FUN_0002a658(*(int *)(pcStack_8138 + -0x7fc8) + -0x4890,unaff_s3);\n    safefree(unaff_s3);\n    goto LAB_0002d77c;\n  }\n  iStack_8120 = scp_accept_filexfer();\n  if (iStack_8120 == 0) {\n    puVar1 = auStack_100b0;\n    uint64_make(&uStack_80f8,0,0);\n    uStack_8114 = (**(code **)(pcStack_8138 + -0x7488))(0);\n    uStack_811c = (**(code **)(pcStack_8138 + -0x7cac))(unaff_s3,1);\n    uint64_make(&uStack_8100,0,0);\n    iStack_8124 = *(int *)(pcStack_8138 + -0x7fc8);\n    unaff_s7 = *(int *)(pcStack_8138 + -0x7fd8);\nLAB_0002db64:\n    do {\n      iVar4 = uint64_compare(uStack_8100,uStack_80fc,uStack_80c8,uStack_80c4);\n      if (-1 < iVar4) goto LAB_0002de88;\n      uint64_make(&uStack_80f0,0,0x8000);\n      uStack_8148 = uStack_80fc;\n      uint64_subtract(&uStack_80e8,uStack_80c8,uStack_80c4,uStack_8100);\n      iVar4 = uint64_compare(uStack_80f0,uStack_80ec,uStack_80e8,uStack_80e4);\n      if (0 < iVar4) {\n        uStack_8148 = uStack_80fc;\n        uint64_subtract(&uStack_80f0,uStack_80c8,uStack_80c4,uStack_8100);\n      }\n      puVar1 = (undefined *)scp_recv_filedata(auStack_80b4,uStack_80ec);\n      if ((int)puVar1 < 1) {\n        (*pcStack_8128)(iStack_8124 + -0x5640);\n      }\n      if (iVar24 == 0) {\n        puVar5 = (undefined *)(**(code **)(pcStack_8138 + -0x7c68))(unaff_s5,auStack_80b4,puVar1);\n        if (puVar5 == puVar1) {\n          if (*(int *)(unaff_s7 + -0x3fa8) != 0) {\n            uint64_add32(&uStack_8108,uStack_80f8,uStack_80f4,puVar1);\n            uStack_80f8 = uStack_8108;\n            uStack_80f4 = uStack_8104;\n            iVar4 = (**(code **)(pcStack_8138 + -0x7488))(0);\n            if (iVar4 <= iStack_8120) {\n              uint64_add32(&uStack_80e0,uStack_8100,uStack_80fc,puVar1);\n              iVar4 = uint64_compare(uStack_80e0,uStack_80dc,uStack_80c8,uStack_80c4);\n              if (iVar4 != 0) goto LAB_0002dc94;\n            }\n            iStack_8140 = (**(code **)(pcStack_8138 + -0x7488))(0);\n            uStack_8144 = uStack_8114;\n            uStack_8148 = uStack_80f4;\n            iStack_8120 = iStack_8140;\n            (*pcStack_810c)(uStack_811c,uStack_80c8,uStack_80c4,uStack_80f8);\n          }\nLAB_0002dc94:\n          param_1 = auStack_100b0;\n          uint64_add32(&uStack_8108,uStack_8100,uStack_80fc,puVar1);\n          uStack_8100 = uStack_8108;\n          uStack_80fc = uStack_8104;\n          goto LAB_0002db64;\n        }\n        if (*(int *)(unaff_s7 + -0x3fa8) != 0) {\n          (**(code **)(pcStack_8138 + -0x759c))\n                    (1,*(int *)(pcStack_8138 + -0x7fc8) + -0x4850,uStack_811c,iStack_8110);\n        }\n        uint64_add32(&uStack_8108,uStack_8100,uStack_80fc,puVar1);\n      }\n      else {\n        uint64_add32(&uStack_8108,uStack_8100,uStack_80fc,puVar1);\n      }\n      param_1 = auStack_100b0;\n      iVar24 = 1;\n      uStack_8100 = uStack_8108;\n      uStack_80fc = uStack_8104;\n    } while( true );\n  }\n  safefree(unaff_s3);\n  (**(code **)(pcStack_8138 + -0x7c70))(unaff_s5);\nLAB_0002da64:\n  pcVar28 = *(code **)(pcStack_8138 + -0x74a0);\n  if (uStack_b4 == **(uint **)(pcStack_8138 + -0x7478)) {\n    return **(uint **)(pcStack_8138 + -0x7478);\n  }\n  pcVar30 = version;\n  (*pcVar28)();\n  pcStack_8168 = pcVar28 + 0x961d8;\n  uStack_8160 = 0xffff0000;\n  pcStack_815c = pcVar30;\n  uVar6 = buildinfo(*(int *)(pcVar28 + 0x8e210) + 0xaa4);\n  uVar17 = *(undefined4 *)(pcStack_8168 + -0x7da8);\n  iVar4 = *(int *)(pcStack_8168 + -0x7fc8) + -0x482c;\n  uVar7 = uVar6;\n  (**(code **)(pcStack_8168 + -0x759c))(1);\n  safefree(uVar6);\n  uVar12 = 0;\n  pcVar28 = *(code **)(pcStack_8168 + -0x7504);\n  pcVar30 = cmdline_error;\n  (*pcVar28)();\n  pcStack_8198 = pcVar28 + 0x96158;\n  uStack_818c = **(undefined4 **)(pcVar28 + 0x8ece0);\n  puVar23 = *(undefined4 **)(pcVar28 + 0x8ecf8);\n  uStack_8184 = uVar6;\n  puStack_8180 = puVar1;\n  pcStack_817c = pcVar30;\n  iStack_8174 = iVar4;\n  uStack_8170 = uVar17;\n  uStack_816c = uVar7;\n  (**(code **)(pcVar28 + 0x8ec90))(*(int *)(pcVar28 + 0x8e190) + -0x4e28,1,6,*puVar23);\n  piStack_8190 = &iStack_8174;\n  (**(code **)(pcStack_8198 + -0x7444))(*puVar23,1,uVar12);\n  iVar15 = 1;\n  (**(code **)(pcStack_8198 + -0x74c8))(*(int *)(pcStack_8198 + -0x7fc8) + -0x481c,1,0x27,*puVar23);\n  iVar4 = 1;\n  pcVar28 = *(code **)(pcStack_8198 + -0x7504);\n  pcVar30 = psftp_main;\n  (*pcVar28)();\n  pcStack_81e8 = pcVar28 + 0x9609c;\n  puStack_81d4 = (undefined4 *)**(undefined4 **)(pcVar28 + 0x8ec24);\n  **(undefined4 **)(pcVar28 + 0x8e144) = 1;\n  **(undefined4 **)(pcVar28 + 0x8e158) = 2;\n  **(undefined4 **)(pcVar28 + 0x8e120) = 1;\n  puStack_81d0 = puVar23;\n  uStack_81cc = uVar12;\n  puStack_81c8 = param_1;\n  puStack_81c4 = unaff_s3;\n  iStack_81c0 = iVar24;\n  iStack_81bc = unaff_s5;\n  piStack_81b8 = &iStack_80d8;\n  iStack_81b4 = unaff_s7;\n  iStack_81b0 = iVar2;\n  pcStack_81ac = pcVar30;\n  (**(code **)(pcVar28 + 0x8e444))();\n  uVar7 = conf_new();\n  *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31fc) = uVar7;\n  do_defaults(0,uVar7);\n  **(undefined4 **)(pcStack_81e8 + -0x7f60) = 0;\n  pcVar28 = pcStack_81e8;\n  if (iVar4 < 2) {\n    iVar2 = 1;\n  }\n  else {\n    pcVar13 = *(char **)(iVar15 + 4);\n    piVar19 = (int *)(iVar15 + 4);\n    if (*pcVar13 == '-') {\n      iVar25 = *(int *)(pcStack_81e8 + -0x7fd8);\n      iVar26 = *(int *)(pcStack_81e8 + -0x7fc8);\n      pcVar27 = (char *)(*(int *)(pcStack_81e8 + -0x7fc8) + -0x47b8);\n      iVar29 = *(int *)(pcStack_81e8 + -0x7fc8);\n      pcStack_81dc = (code *)(*(int *)(pcStack_81e8 + -0x7db0) + -0x79e4);\n      iVar24 = 1;\nLAB_0002e488:\n      iVar2 = iVar24 + 1;\n      uVar7 = 0;\n      if (iVar2 < iVar4) {\n        uVar7 = *(undefined4 *)(iVar15 + (iVar24 + 1) * 4);\n      }\n      iVar8 = cmdline_process_param(pcVar13,uVar7,1,*(undefined4 *)(iVar25 + -0x31fc));\n      pcVar28 = pcStack_81e8;\n      if (iVar8 == -2) {\n        cmdline_error(*(int *)(pcStack_81e8 + -0x7fc8) + -0x47e4,*piVar19);\n        uVar7 = extraout_v1;\nLAB_0002e1d0:\n        iVar2 = iVar24;\n        if ((**(uint **)(pcVar28 + -0x7f44) & 1) != 0) {\n          *(undefined4 *)(*(int *)(pcVar28 + -0x7fd8) + -0x31c8) = uVar7;\n        }\n        goto LAB_0002e464;\n      }\n      uVar7 = 1;\n      if (iVar8 == 2) goto LAB_0002e464;\n      if (iVar8 == 1) goto LAB_0002e1d0;\n      iVar20 = *piVar19;\n      iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar26 + -0x47c0);\n      if (iVar8 == 0) {\n        (**(code **)(pcStack_81e8 + -0x7c54))();\n        uVar3 = 1;\n        goto LAB_0002e878;\n      }\n      iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20);\n      if (iVar8 == 0) {\n        *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31cc) = 1;\n        pcVar28 = pcStack_81e8;\n        iVar2 = iVar24;\n      }\n      else {\n        iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar29 + -0x47b4);\n        if (iVar8 == 0) {\n          *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d0) = 1;\n          pcVar28 = pcStack_81e8;\n          iVar2 = iVar24;\n        }\n        else {\n          iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                            (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47b0);\n          if (iVar8 == 0) {\n            *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fa8) = 0;\n            pcVar28 = pcStack_81e8;\n            iVar2 = iVar24;\n          }\n          else {\n            iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                              (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47ac);\n            if ((iVar8 != 0) &&\n               (iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                  (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47a8), iVar8 != 0))\n            {\n              iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47a4);\n              if (iVar8 != 0) {\n                iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                  (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x479c);\n                iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                if (iVar8 == 0) {\nLAB_0002e348:\n                  pcVar28 = pcStack_81e8;\n                  version();\n                }\n                else {\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar16 + -0x4798);\n                  iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                  if (iVar8 == 0) goto LAB_0002e348;\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar16 + -0x478c);\n                  iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                  pcVar28 = pcStack_81e8;\n                  if (iVar8 == 0) {\n                    *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31c4) = 1;\n                    iVar2 = iVar24;\n                    goto LAB_0002e464;\n                  }\n                }\n                iVar8 = (**(code **)(pcVar28 + -0x743c))(iVar20,iVar16 + -0x4788);\n                if (iVar8 == 0) {\n                  **(undefined4 **)(pcStack_81e8 + -0x7c4c) = 1;\n                  pcVar28 = pcStack_81e8;\n                  iVar2 = iVar24;\n                }\n                else {\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                    (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4780);\n                  if (iVar8 == 0) {\n                    *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31dc) = 1;\n                    pcVar28 = pcStack_81e8;\n                    iVar2 = iVar24;\n                  }\n                  else {\n                    iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                      (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4778);\n                    if (iVar8 == 0) {\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac) = 0;\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0) = 1;\n                      pcVar28 = pcStack_81e8;\n                      iVar2 = iVar24;\n                      goto LAB_0002e464;\n                    }\n                    iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                      (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4770);\n                    if (iVar8 == 0) {\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac) = 1;\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0) = 0;\n                      pcVar28 = pcStack_81e8;\n                      iVar2 = iVar24;\n                    }\n                    else {\n                      iVar24 = (**(code **)(pcStack_81e8 + -0x743c))\n                                         (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4768);\n                      pcVar28 = pcStack_81e8;\n                      if (iVar24 == 0) goto LAB_0002e52c;\n                      cmdline_error(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4764,iVar20);\n                    }\n                  }\n                }\n                goto LAB_0002e464;\n              }\n            }\n            (*pcStack_81dc)();\n            pcVar28 = pcStack_81e8;\n            iVar2 = iVar24;\n          }\n        }\n      }\nLAB_0002e464:\n      iVar2 = iVar2 + 1;\n      if (iVar4 <= iVar2) goto LAB_0002e52c;\n      piVar19 = (int *)(iVar15 + iVar2 * 4);\n      pcVar13 = (char *)*piVar19;\n      iVar24 = iVar2;\n      if (*pcVar13 != '-') goto LAB_0002e52c;\n      goto LAB_0002e488;\n    }\n    iVar2 = 1;\n  }\nLAB_0002e52c:\n  iVar4 = iVar4 - iVar2;\n  *(undefined4 *)(*(int *)(pcVar28 + -0x7fd8) + -0x31f4) = 0;\n  puVar23 = (undefined4 *)(iVar15 + iVar2 * 4);\n  if (*(int *)(*(int *)(pcVar28 + -0x7fd8) + -0x31c4) == 0) {\n    if (iVar4 < 2) {\n      FUN_0002861c();\n      puVar18 = puVar23 + iVar4 + 0x3fffffff;\n      iVar24 = FUN_00028968(*puVar18);\n      iVar2 = *(int *)(pcStack_81e8 + -0x7fd8);\n      if (iVar24 != 0) goto LAB_0002e90c;\n      *(undefined4 *)(iVar2 + -0x31f0) = 0;\nLAB_0002efd8:\n      iVar2 = *(int *)(pcStack_81e8 + -0x7fc8);\nLAB_0002efdc:\n      FUN_00028270(iVar2 + -0x4668);\n      pcVar13 = (char *)*puVar23;\nLAB_0002eb34:\n      uVar7 = puVar23[1];\n      puVar9 = (undefined1 *)FUN_00028968(pcVar13);\n      if (puVar9 == (undefined1 *)0x0) {\n        FUN_00028270(*(int *)(pcStack_81e8 + -0x7fc8) + -0x463c);\n        uRam00000000 = 0;\n      }\n      else {\n        *puVar9 = 0;\n      }\n      if (puVar9[1] == '\0') {\n        pcVar27 = (char *)(*(int *)(pcStack_81e8 + -0x7fc8) + -0x48b0);\n      }\n      else {\n        pcVar27 = puVar9 + 1;\n      }\n      puVar9 = (undefined1 *)(**(code **)(pcStack_81e8 + -0x75b8))(pcVar13,0x40);\n      if (puVar9 == (undefined1 *)0x0) {\n        pcVar21 = (char *)0x0;\n      }\n      else {\n        *puVar9 = 0;\n        cVar11 = *pcVar13;\n        pcVar21 = pcVar13;\n        pcVar13 = puVar9 + 1;\n        if (cVar11 == '\0') {\n          pcVar21 = (char *)0x0;\n        }\n      }\n      if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31c8) == 0) {\n        iVar2 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iVar2 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47f4;\n      }\n      if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31cc) == 0) {\n        iVar24 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iVar24 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47f0;\n      }\n      if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d0) == 0) {\n        iVar4 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iVar4 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47ec;\n      }\n      if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4) == 0) {\n        iStack_81f0 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iStack_81f0 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47e8;\n      }\n      pcStack_81ec = pcVar27;\n      uVar6 = dupprintf(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4618,iVar2,iVar24,iVar4);\n      FUN_00028a00(pcVar13,pcVar21,uVar6);\n      safefree(uVar6);\n      iVar2 = scp_sink_setup(pcVar27,*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d0),\n                             *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31cc));\n      if (iVar2 == 0) {\n        FUN_0002d4e0(uVar7);\n        iVar2 = *(int *)(pcStack_81e8 + -0x7fd8);\n        goto LAB_0002e788;\n      }\n    }\n    else {\n      if (iVar4 < 3) {\n        puVar18 = puVar23 + iVar4 + 0x3fffffff;\n        iVar2 = FUN_00028968(*puVar18);\n        if (iVar2 == 0) {\n          *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f0) = 0;\n          iVar2 = *(int *)(pcStack_81e8 + -0x7fc8);\n          if (iVar4 != 2) goto LAB_0002efdc;\n          pcVar13 = (char *)*puVar23;\n          goto LAB_0002eb34;\n        }\n      }\n      else {\n        *(undefined4 *)(*(int *)(pcVar28 + -0x7fd8) + -0x31d4) = 1;\n        puVar18 = puVar23 + iVar4 + 0x3fffffff;\n        iVar2 = FUN_00028968(*puVar18);\n        if (iVar2 == 0) {\n          *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f0) = 0;\n          goto LAB_0002efd8;\n        }\n      }\n      iVar2 = *(int *)(pcStack_81e8 + -0x7fd8);\nLAB_0002e90c:\n      *(undefined4 *)(iVar2 + -0x31f0) = 1;\n      pcVar13 = (char *)*puVar18;\n      puVar9 = (undefined1 *)FUN_00028968(pcVar13);\n      if (puVar9 == (undefined1 *)0x0) {\n        FUN_00028270(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4720);\n        uRam00000000 = 0;\n      }\n      else {\n        *puVar9 = 0;\n      }\n      if (puVar9[1] == '\0') {\n        pcVar21 = (char *)(*(int *)(pcStack_81e8 + -0x7fc8) + -0x48b0);\n      }\n      else {\n        pcVar21 = puVar9 + 1;\n      }\n      puVar9 = (undefined1 *)(**(code **)(pcStack_81e8 + -0x75b8))(pcVar13,0x40);\n      if (puVar9 == (undefined1 *)0x0) {\n        pcVar27 = (char *)0x0;\n      }\n      else {\n        *puVar9 = 0;\n        cVar11 = *pcVar13;\n        pcVar27 = pcVar13;\n        pcVar13 = puVar9 + 1;\n        if (cVar11 == '\0') {\n          pcVar27 = (char *)0x0;\n        }\n      }\n      if (iVar4 == 2) {\n        iVar2 = FUN_00028968(*puVar23);\n        if (iVar2 != 0) {\n          FUN_00028270(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4704,*puVar23);\n        }\n        iVar2 = (**(code **)(pcStack_81e8 + -0x7c30))(*puVar23,1);\n        if (iVar2 == 0) {\n          FUN_00028270(*(int *)(pcStack_81e8 + -0x7fc8) + -0x46e0,*puVar23);\n          iVar24 = *(int *)(pcStack_81e8 + -0x7fd8);\n        }\n        else {\n          iVar24 = *(int *)(pcStack_81e8 + -0x7fd8);\n          if (iVar2 == 2) {\n            *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4) = 1;\n            goto LAB_0002e988;\n          }\n        }\n      }\n      else {\nLAB_0002e988:\n        iVar24 = *(int *)(pcStack_81e8 + -0x7fd8);\n      }\n      if (*(int *)(iVar24 + -0x31c8) == 0) {\n        iVar2 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iVar2 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47f4;\n      }\n      if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31cc) == 0) {\n        iVar24 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iVar24 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47f0;\n      }\n      if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d0) == 0) {\n        iVar15 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iVar15 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47ec;\n      }\n      if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4) == 0) {\n        iStack_81f0 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iStack_81f0 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47e8;\n      }\n      pcStack_81ec = pcVar21;\n      uVar7 = dupprintf(*(int *)(pcStack_81e8 + -0x7fc8) + -0x46c0,iVar2,iVar24,iVar15);\n      FUN_00028a00(pcVar13,pcVar27,uVar7);\n      safefree(uVar7);\n      pcVar27 = *(char **)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4);\n      iVar2 = scp_source_setup(pcVar21);\n      if ((iVar2 == 0) && (1 < iVar4)) {\n        puVar18 = puVar23 + iVar4 + -1;\n        iVar24 = *(int *)(pcStack_81e8 + -0x7db0);\n        iVar25 = *(int *)(pcStack_81e8 + -0x7fc8);\n        iVar15 = *(int *)(pcStack_81e8 + -0x7db0);\n        iVar4 = *(int *)(pcStack_81e8 + -0x7fc8);\n        do {\n          pcVar13 = (char *)*puVar23;\n          iVar2 = FUN_00028968(pcVar13);\n          if (iVar2 == 0) {\n            pcVar27 = (char *)0x1;\n            iVar2 = (**(code **)(pcStack_81e8 + -0x7c30))(pcVar13,1,pcVar13);\n            if (iVar2 == 0) {\n              (*(code *)(iVar15 + -0x59a8))(iVar25 + -0x4688);\n              pcVar27 = pcVar13;\n            }\n            else if (iVar2 == 1) {\n              (*(code *)(iVar24 + -0x4b8c))(pcVar13);\n            }\n            else {\n              iVar2 = (**(code **)(pcStack_81e8 + -0x7c2c))();\n              if (iVar2 == 0) {\n                (*(code *)(iVar15 + -0x59a8))(iVar25 + -0x4688);\n                pcVar27 = pcVar13;\n              }\n              else {\n                while (iVar26 = (**(code **)(pcStack_81e8 + -0x7c28))(iVar2), iVar26 != 0) {\n                  (*(code *)(iVar24 + -0x4b8c))(iVar26);\n                  safefree(iVar26);\n                }\n                (**(code **)(pcStack_81e8 + -0x7c24))(iVar2);\n              }\n            }\n          }\n          else {\n            pcVar27 = (char *)(iVar4 + -0x46ac);\n            FUN_00027ff8(**(undefined4 **)(pcStack_81e8 + -0x7460));\n            *(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31e0) =\n                 *(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31e0) + 1;\n          }\n          puVar23 = puVar23 + 1;\n          iVar2 = *(int *)(pcStack_81e8 + -0x7fd8);\n        } while (puVar18 != puVar23);\n        goto LAB_0002e788;\n      }\n    }\n  }\n  else {\n    if (iVar4 == 1) {\n      pcVar13 = (char *)*puVar23;\n    }\n    else {\n      FUN_0002861c();\n      pcVar13 = (char *)*puVar23;\n    }\n    puVar9 = (undefined1 *)FUN_00028968(pcVar13);\n    if (puVar9 == (undefined1 *)0x0) {\n      FUN_00028270(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4750);\n      uRam00000000 = 0;\n    }\n    else {\n      *puVar9 = 0;\n    }\n    if (puVar9[1] == '\0') {\n      puVar9 = (undefined1 *)(**(code **)(pcStack_81e8 + -0x75b8))(pcVar13,0x40);\n      if (puVar9 == (undefined1 *)0x0) {\n        puVar23 = (undefined4 *)safemalloc(0x68,1);\n        iVar2 = *(int *)(pcStack_81e8 + -0x7fc8);\n        uVar7 = *(undefined4 *)(iVar2 + -0x4728);\n        *puVar23 = *(undefined4 *)(iVar2 + -0x472c);\n        puVar23[1] = uVar7;\n        *(undefined1 *)(puVar23 + 2) = *(undefined1 *)(iVar2 + -0x4724);\n        iVar2 = (**(code **)(pcStack_81e8 + -0x752c))(puVar23);\n        pcVar10 = (char *)((int)puVar23 + iVar2);\n        pcVar21 = (char *)(*(int *)(pcStack_81e8 + -0x7fc8) + -0x48b0);\n        cVar11 = '.';\n        pcVar27 = (char *)0x0;\n        pcVar22 = pcVar21;\n        goto LAB_0002e6b4;\n      }\n      pcVar21 = (char *)(*(int *)(pcStack_81e8 + -0x7fc8) + -0x48b0);\nLAB_0002e5ac:\n      *puVar9 = 0;\n      cVar11 = *pcVar13;\n      pcVar27 = pcVar13;\n      pcVar13 = puVar9 + 1;\n      if (cVar11 == '\0') {\n        pcVar27 = (char *)0x0;\n      }\n    }\n    else {\n      pcVar21 = puVar9 + 1;\n      puVar9 = (undefined1 *)(**(code **)(pcStack_81e8 + -0x75b8))(pcVar13);\n      if (puVar9 != (undefined1 *)0x0) goto LAB_0002e5ac;\n      pcVar27 = (char *)0x0;\n    }\n    iVar2 = (**(code **)(pcStack_81e8 + -0x752c))(pcVar21);\n    puVar23 = (undefined4 *)safemalloc((iVar2 + 0x19) * 4,1);\n    iVar2 = *(int *)(pcStack_81e8 + -0x7fc8);\n    uVar7 = *(undefined4 *)(iVar2 + -0x4728);\n    *puVar23 = *(undefined4 *)(iVar2 + -0x472c);\n    puVar23[1] = uVar7;\n    *(undefined1 *)(puVar23 + 2) = *(undefined1 *)(iVar2 + -0x4724);\n    iVar2 = (**(code **)(pcStack_81e8 + -0x752c))(puVar23);\n    pcVar10 = (char *)((int)puVar23 + iVar2);\n    cVar11 = *pcVar21;\n    pcVar22 = pcVar21;\n    while (cVar11 != '\0') {\nLAB_0002e6b4:\n      if (cVar11 == '\'') {\n        builtin_strncpy(pcVar10,"\'\\\'\'",4);\n        pcVar10 = pcVar10 + 4;\n      }\n      else {\n        *pcVar10 = cVar11;\n        pcVar10 = pcVar10 + 1;\n      }\n      pcVar21 = pcVar21 + 1;\n      cVar11 = *pcVar21;\n    }\n    *pcVar10 = '\'';\n    pcVar10[1] = '\0';\n    FUN_00028a00(pcVar13,pcVar27,puVar23);\n    safefree(puVar23);\n    if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31ec) != 0) {\n      scp_sftp_listdir(pcVar22);\n      iVar2 = *(int *)(pcStack_81e8 + -0x7fd8);\n      goto LAB_0002e788;\n    }\n    puVar23 = *(undefined4 **)(pcStack_81e8 + -0x7594);\n    while( true ) {\n      pcVar27 = (char *)0x1;\n      iVar2 = FUN_000280f4(&cStack_81d5);\n      if (iVar2 < 1) break;\n      (**(code **)(pcStack_81e8 + -0x75c4))((int)cStack_81d5,*puVar23);\n    }\n  }\n  iVar2 = *(int *)(pcStack_81e8 + -0x7fd8);\nLAB_0002e788:\n  pcVar28 = *(code **)(pcStack_81e8 + -0x7c44);\n  if (*(int *)(iVar2 + -0x31f4) != 0) {\n    iVar2 = (**(code **)(*(int *)(iVar2 + -0x31f4) + 0x20))\n                      (*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f8));\n    pcVar28 = *(code **)(pcStack_81e8 + -0x7c44);\n    if (iVar2 != 0) {\n      (**(code **)(*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f4) + 0x18))\n                (*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f8),0xc);\n      **(undefined4 **)(pcStack_81e8 + -0x7db4) = 1;\n      pcVar27 = (char *)0x1;\n      FUN_000280f4(&cStack_81d5);\n      pcVar28 = *(code **)(pcStack_81e8 + -0x7c44);\n    }\n  }\n  (*pcVar28)();\n  cmdline_cleanup();\n  (**(code **)(pcStack_81e8 + -0x7d88))(0);\n  iVar20 = *(int *)(pcStack_81e8 + -0x7fd8);\n  iVar24 = *(int *)(pcStack_81e8 + -0x7fd8);\n  (**(code **)(*(int *)(iVar24 + -0x31f4) + 4))(*(undefined4 *)(iVar20 + -0x31f8));\n  *(undefined4 *)(iVar20 + -0x31f8) = 0;\n  *(undefined4 *)(iVar24 + -0x31f4) = 0;\n  (**(code **)(pcStack_81e8 + -0x7c3c))();\n  uVar3 = (uint)(*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31e0) != 0);\nLAB_0002e878:\n  if (puStack_81d4 == (undefined4 *)**(int **)(pcStack_81e8 + -0x7478)) {\n    return uVar3;\n  }\n  pcVar28 = *(code **)(pcStack_81e8 + -0x74a0);\n  uVar12 = 0x2f008;\n  puVar23 = puStack_81d4;\n  (*pcVar28)();\n  pcStack_8218 = pcVar28 + 0x95140;\n  uVar7 = *puVar23;\n  uVar6 = *(undefined4 *)pcVar27;\n  iStack_820c = iVar24;\n  iStack_8208 = iVar20;\n  uStack_8204 = uVar12;\n  iVar2 = (**(code **)(pcVar28 + 0x8dd04))(uVar7,*(int *)(pcVar28 + 0x8d178) + -0x4584);\n  if (iVar2 == 0) {\n    uVar3 = 0xffffffff;\n  }\n  else {\n    iVar2 = (**(code **)(pcStack_8218 + -0x743c))(uVar6,*(int *)(pcStack_8218 + -0x7fc8) + -0x4584);\n    if (iVar2 == 0) {\n      uVar3 = 1;\n    }\n    else {\n      uVar3 = (**(code **)(pcStack_8218 + -0x743c))(uVar7,uVar6);\n    }\n  }\n  return uVar3;\nLAB_0002de88:\n  if (iStack_80c0 != 0) {\n    (**(code **)(pcStack_8138 + -0x7c60))(unaff_s5,uStack_80b8,uStack_80bc);\n  }\n  (**(code **)(pcStack_8138 + -0x7c70))(unaff_s5);\n  if (iVar24 == 0) {\n    scp_finish_filerecv();\n    safefree(unaff_s3);\n    safefree(uStack_80d4);\n  }\n  else {\n    FUN_0002a658(*(int *)(pcStack_8138 + -0x7fc8) + -0x483c,unaff_s3);\n    safefree(unaff_s3);\n  }\n  goto LAB_0002d77c;\n}" { (declaration "undefined *puVar1;" type_identifier (pointer_declarator "*puVar1" * identifier) ;) (declaration "int iVar2;" primitive_type identifier ;) (declaration "uint uVar3;" type_identifier identifier ;) (declaration "int iVar4;" primitive_type identifier ;) (declaration "undefined *puVar5;" type_identifier (pointer_declarator "*puVar5" * identifier) ;) (declaration "undefined4 uVar6;" type_identifier identifier ;) (declaration "undefined4 uVar7;" type_identifier identifier ;) (declaration "int iVar8;" primitive_type identifier ;) (declaration "undefined1 *puVar9;" type_identifier (pointer_declarator "*puVar9" * identifier) ;) (declaration "char *pcVar10;" primitive_type (pointer_declarator "*pcVar10" * identifier) ;) (declaration "undefined4 extraout_v1;" type_identifier identifier ;) (declaration "char cVar11;" primitive_type identifier ;) (declaration "undefined4 uVar12;" type_identifier identifier ;) (declaration "char *pcVar13;" primitive_type (pointer_declarator "*pcVar13" * identifier) ;) (declaration "undefined *puVar14;" type_identifier (pointer_declarator "*puVar14" * identifier) ;) (declaration "int iVar15;" primitive_type identifier ;) (declaration "int iVar16;" primitive_type identifier ;) (declaration "undefined4 uVar17;" type_identifier identifier ;) (declaration "undefined4 *puVar18;" type_identifier (pointer_declarator "*puVar18" * identifier) ;) (declaration "int *piVar19;" primitive_type (pointer_declarator "*piVar19" * identifier) ;) (declaration "int iVar20;" primitive_type identifier ;) (declaration "char *pcVar21;" primitive_type (pointer_declarator "*pcVar21" * identifier) ;) (declaration "char *pcVar22;" primitive_type (pointer_declarator "*pcVar22" * identifier) ;) (declaration "undefined4 *unaff_s3;" type_identifier (pointer_declarator "*unaff_s3" * identifier) ;) (declaration "undefined4 *puVar23;" type_identifier (pointer_declarator "*puVar23" * identifier) ;) (declaration "undefined1 *unaff_s4;" type_identifier (pointer_declarator "*unaff_s4" * identifier) ;) (declaration "int iVar24;" primitive_type identifier ;) (declaration "int unaff_s5;" primitive_type identifier ;) (declaration "int iVar25;" primitive_type identifier ;) (declaration "int iVar26;" primitive_type identifier ;) (declaration "int unaff_s7;" primitive_type identifier ;) (declaration "char *pcVar27;" primitive_type (pointer_declarator "*pcVar27" * identifier) ;) (declaration "code *pcVar28;" type_identifier (pointer_declarator "*pcVar28" * identifier) ;) (declaration "int iVar29;" primitive_type identifier ;) (declaration "code *pcVar30;" type_identifier (pointer_declarator "*pcVar30" * identifier) ;) (declaration "undefined auStack_100b0 [32408];" type_identifier (array_declarator "auStack_100b0 [32408]" identifier [ number_literal ]) ;) (declaration "code *pcStack_8218;" type_identifier (pointer_declarator "*pcStack_8218" * identifier) ;) (declaration "int iStack_820c;" primitive_type identifier ;) (declaration "int iStack_8208;" primitive_type identifier ;) (declaration "undefined4 uStack_8204;" type_identifier identifier ;) (declaration "int iStack_81f0;" primitive_type identifier ;) (declaration "char *pcStack_81ec;" primitive_type (pointer_declarator "*pcStack_81ec" * identifier) ;) (declaration "code *pcStack_81e8;" type_identifier (pointer_declarator "*pcStack_81e8" * identifier) ;) (declaration "code *pcStack_81dc;" type_identifier (pointer_declarator "*pcStack_81dc" * identifier) ;) (declaration "char cStack_81d5;" primitive_type identifier ;) (declaration "undefined4 *puStack_81d4;" type_identifier (pointer_declarator "*puStack_81d4" * identifier) ;) (declaration "undefined4 *puStack_81d0;" type_identifier (pointer_declarator "*puStack_81d0" * identifier) ;) (declaration "undefined4 uStack_81cc;" type_identifier identifier ;) (declaration "undefined *puStack_81c8;" type_identifier (pointer_declarator "*puStack_81c8" * identifier) ;) (declaration "undefined4 *puStack_81c4;" type_identifier (pointer_declarator "*puStack_81c4" * identifier) ;) (declaration "int iStack_81c0;" primitive_type identifier ;) (declaration "int iStack_81bc;" primitive_type identifier ;) (declaration "int *piStack_81b8;" primitive_type (pointer_declarator "*piStack_81b8" * identifier) ;) (declaration "int iStack_81b4;" primitive_type identifier ;) (declaration "int iStack_81b0;" primitive_type identifier ;) (declaration "code *pcStack_81ac;" type_identifier (pointer_declarator "*pcStack_81ac" * identifier) ;) (declaration "code *pcStack_8198;" type_identifier (pointer_declarator "*pcStack_8198" * identifier) ;) (declaration "int *piStack_8190;" primitive_type (pointer_declarator "*piStack_8190" * identifier) ;) (declaration "undefined4 uStack_818c;" type_identifier identifier ;) (declaration "undefined4 uStack_8184;" type_identifier identifier ;) (declaration "undefined *puStack_8180;" type_identifier (pointer_declarator "*puStack_8180" * identifier) ;) (declaration "code *pcStack_817c;" type_identifier (pointer_declarator "*pcStack_817c" * identifier) ;) (declaration "int iStack_8174;" primitive_type identifier ;) (declaration "undefined4 uStack_8170;" type_identifier identifier ;) (declaration "undefined4 uStack_816c;" type_identifier identifier ;) (declaration "code *pcStack_8168;" type_identifier (pointer_declarator "*pcStack_8168" * identifier) ;) (declaration "undefined4 uStack_8160;" type_identifier identifier ;) (declaration "code *pcStack_815c;" type_identifier (pointer_declarator "*pcStack_815c" * identifier) ;) (declaration "undefined4 uStack_8148;" type_identifier identifier ;) (declaration "undefined4 uStack_8144;" type_identifier identifier ;) (declaration "int iStack_8140;" primitive_type identifier ;) (declaration "code *pcStack_8138;" type_identifier (pointer_declarator "*pcStack_8138" * identifier) ;) (declaration "char *pcStack_812c;" primitive_type (pointer_declarator "*pcStack_812c" * identifier) ;) (declaration "code *pcStack_8128;" type_identifier (pointer_declarator "*pcStack_8128" * identifier) ;) (declaration "int iStack_8124;" primitive_type identifier ;) (declaration "int iStack_8120;" primitive_type identifier ;) (declaration "undefined4 uStack_811c;" type_identifier identifier ;) (declaration "undefined *puStack_8118;" type_identifier (pointer_declarator "*puStack_8118" * identifier) ;) (declaration "undefined4 uStack_8114;" type_identifier identifier ;) (declaration "int iStack_8110;" primitive_type identifier ;) (declaration "code *pcStack_810c;" type_identifier (pointer_declarator "*pcStack_810c" * identifier) ;) (declaration "undefined4 uStack_8108;" type_identifier identifier ;) (declaration "undefined4 uStack_8104;" type_identifier identifier ;) (declaration "undefined4 uStack_8100;" type_identifier identifier ;) (declaration "undefined4 uStack_80fc;" type_identifier identifier ;) (declaration "undefined4 uStack_80f8;" type_identifier identifier ;) (declaration "undefined4 uStack_80f4;" type_identifier identifier ;) (declaration "undefined4 uStack_80f0;" type_identifier identifier ;) (declaration "undefined4 uStack_80ec;" type_identifier identifier ;) (declaration "undefined4 uStack_80e8;" type_identifier identifier ;) (declaration "undefined4 uStack_80e4;" type_identifier identifier ;) (declaration "undefined4 uStack_80e0;" type_identifier identifier ;) (declaration "undefined4 uStack_80dc;" type_identifier identifier ;) (declaration "int iStack_80d8;" primitive_type identifier ;) (declaration "undefined4 uStack_80d4;" type_identifier identifier ;) (declaration "undefined *puStack_80d0;" type_identifier (pointer_declarator "*puStack_80d0" * identifier) ;) (declaration "undefined4 uStack_80cc;" type_identifier identifier ;) (declaration "undefined4 uStack_80c8;" type_identifier identifier ;) (declaration "undefined4 uStack_80c4;" type_identifier identifier ;) (declaration "int iStack_80c0;" primitive_type identifier ;) (declaration "undefined4 uStack_80bc;" type_identifier identifier ;) (declaration "undefined4 uStack_80b8;" type_identifier identifier ;) (declaration "undefined1 auStack_80b4 [32768];" type_identifier (array_declarator "auStack_80b4 [32768]" identifier [ number_literal ]) ;) (declaration "uint uStack_b4;" type_identifier identifier ;) (declaration "undefined *puStack_b0;" type_identifier (pointer_declarator "*puStack_b0" * identifier) ;) (declaration "undefined *puStack_ac;" type_identifier (pointer_declarator "*puStack_ac" * identifier) ;) (declaration "undefined *puStack_a8;" type_identifier (pointer_declarator "*puStack_a8" * identifier) ;) (declaration "undefined4 *puStack_a4;" type_identifier (pointer_declarator "*puStack_a4" * identifier) ;) (declaration "undefined1 *puStack_a0;" type_identifier (pointer_declarator "*puStack_a0" * identifier) ;) (declaration "undefined4 uStack_6c;" type_identifier identifier ;) (declaration "undefined1 auStack_68 [4];" type_identifier (array_declarator "auStack_68 [4]" identifier [ number_literal ]) ;) (declaration "char *pcStack_64;" primitive_type (pointer_declarator "*pcStack_64" * identifier) ;) (declaration "undefined *puStack_60;" type_identifier (pointer_declarator "*puStack_60" * identifier) ;) (declaration "undefined *puStack_5c;" type_identifier (pointer_declarator "*puStack_5c" * identifier) ;) (declaration "undefined *puStack_58;" type_identifier (pointer_declarator "*puStack_58" * identifier) ;) (declaration "undefined4 *puStack_54;" type_identifier (pointer_declarator "*puStack_54" * identifier) ;) (declaration "undefined4 local_30;" type_identifier identifier ;) (declaration "undefined4 local_2c;" type_identifier identifier ;) (declaration "uint local_24;" type_identifier identifier ;) (declaration "undefined4 local_20;" type_identifier identifier ;) (declaration "int local_1c;" primitive_type identifier ;) (expression_statement "puVar1 = PTR_DAT_000bc178;" (assignment_expression "puVar1 = PTR_DAT_000bc178" identifier = identifier) ;) (expression_statement "local_1c = *(int *)PTR___stack_chk_guard_000bccd8;" (assignment_expression "local_1c = *(int *)PTR___stack_chk_guard_000bccd8" identifier = (pointer_expression "*(int *)PTR___stack_chk_guard_000bccd8" * (cast_expression "(int *)PTR___stack_chk_guard_000bccd8" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier))) ;) (if_statement "if (*(int *)(PTR_DAT_000bc178 + -0x31ec) == 0) {\n    uVar3 = FUN_000280f4();\n  }\n  else {\n    xfer_download_queue(*(undefined4 *)(PTR_DAT_000bc178 + -0x3244));\n    unaff_s3 = (undefined4 *)sftp_recv();\n    puVar1 = (undefined *)xfer_download_gotpkt(*(undefined4 *)(puVar1 + -0x3244),unaff_s3);\n    if ((int)puVar1 < 1) {\n      param_2 = *(undefined **)PTR_stderr_000bccf0;\n      uVar7 = fxp_error();\n      FUN_00027ff8(param_2,PTR_s_Server_sent_command_exit_status___000bc188 + -0x4abc,uVar7);\n      if (puVar1 == (undefined *)0x80000000) {\n        safefree(unaff_s3);\n      }\n      *(int *)(PTR_DAT_000bc178 + -0x31e0) = *(int *)(PTR_DAT_000bc178 + -0x31e0) + 1;\n      uVar3 = 0xffffffff;\n    }\n    else {\n      iVar2 = xfer_download_data(*(undefined4 *)(PTR_DAT_000bc178 + -0x3244),&local_20,&local_24);\n      if (iVar2 == 0) {\n        local_24 = 0;\n      }\n      else {\n        param_2 = (undefined *)(uint)((int)param_2 < (int)local_24);\n        if ((int)local_24 < 1) {\n          FUN_00027ff8(*(undefined4 *)PTR_stderr_000bccf0,\n                       PTR_s_Server_sent_command_exit_status___000bc188 + -0x4a9c);\n          *(int *)(PTR_DAT_000bc178 + -0x31e0) = *(int *)(PTR_DAT_000bc178 + -0x31e0) + 1;\n          safefree(local_20);\n          uVar3 = 0xffffffff;\n          goto LAB_0002d148;\n        }\n        if (param_2 != (undefined *)0x0) {\n          uVar3 = (*(code *)PTR___assert_fail_000bcb00)\n                            (PTR_s_Server_sent_command_exit_status___000bc188 + -0x4a7c,\n                             PTR_s_Server_sent_command_exit_status___000bc188 + -0x4fb0,0x628,\n                             PTR_s_Server_sent_command_exit_status___000bc188 + -0x45f0);\n          return uVar3;\n        }\n        (*(code *)PTR_memcpy_000bccdc)(param_1,local_20);\n        safefree(local_20);\n      }\n      param_2 = PTR_DAT_000bc178;\n      puVar1 = PTR_DAT_000bc178 + -0x324c;\n      uint64_add32(&local_30,*(undefined4 *)(PTR_DAT_000bc178 + -0x324c),\n                   *(undefined4 *)(PTR_DAT_000bc178 + -0x3248),local_24);\n      *(undefined4 *)(param_2 + -0x324c) = local_30;\n      *(undefined4 *)(param_2 + -0x3248) = local_2c;\n      uVar3 = local_24;\n    }\n  }" if (parenthesized_expression "(*(int *)(PTR_DAT_000bc178 + -0x31ec) == 0)" ( (binary_expression "*(int *)(PTR_DAT_000bc178 + -0x31ec) == 0" (pointer_expression "*(int *)(PTR_DAT_000bc178 + -0x31ec)" * (cast_expression "(int *)(PTR_DAT_000bc178 + -0x31ec)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_DAT_000bc178 + -0x31ec)" ( (binary_expression "PTR_DAT_000bc178 + -0x31ec" identifier + number_literal) )))) == number_literal) )) (compound_statement "{\n    uVar3 = FUN_000280f4();\n  }" { (expression_statement "uVar3 = FUN_000280f4();" (assignment_expression "uVar3 = FUN_000280f4()" identifier = (call_expression "FUN_000280f4()" identifier (argument_list "()" ( )))) ;) }) (else_clause "else {\n    xfer_download_queue(*(undefined4 *)(PTR_DAT_000bc178 + -0x3244));\n    unaff_s3 = (undefined4 *)sftp_recv();\n    puVar1 = (undefined *)xfer_download_gotpkt(*(undefined4 *)(puVar1 + -0x3244),unaff_s3);\n    if ((int)puVar1 < 1) {\n      param_2 = *(undefined **)PTR_stderr_000bccf0;\n      uVar7 = fxp_error();\n      FUN_00027ff8(param_2,PTR_s_Server_sent_command_exit_status___000bc188 + -0x4abc,uVar7);\n      if (puVar1 == (undefined *)0x80000000) {\n        safefree(unaff_s3);\n      }\n      *(int *)(PTR_DAT_000bc178 + -0x31e0) = *(int *)(PTR_DAT_000bc178 + -0x31e0) + 1;\n      uVar3 = 0xffffffff;\n    }\n    else {\n      iVar2 = xfer_download_data(*(undefined4 *)(PTR_DAT_000bc178 + -0x3244),&local_20,&local_24);\n      if (iVar2 == 0) {\n        local_24 = 0;\n      }\n      else {\n        param_2 = (undefined *)(uint)((int)param_2 < (int)local_24);\n        if ((int)local_24 < 1) {\n          FUN_00027ff8(*(undefined4 *)PTR_stderr_000bccf0,\n                       PTR_s_Server_sent_command_exit_status___000bc188 + -0x4a9c);\n          *(int *)(PTR_DAT_000bc178 + -0x31e0) = *(int *)(PTR_DAT_000bc178 + -0x31e0) + 1;\n          safefree(local_20);\n          uVar3 = 0xffffffff;\n          goto LAB_0002d148;\n        }\n        if (param_2 != (undefined *)0x0) {\n          uVar3 = (*(code *)PTR___assert_fail_000bcb00)\n                            (PTR_s_Server_sent_command_exit_status___000bc188 + -0x4a7c,\n                             PTR_s_Server_sent_command_exit_status___000bc188 + -0x4fb0,0x628,\n                             PTR_s_Server_sent_command_exit_status___000bc188 + -0x45f0);\n          return uVar3;\n        }\n        (*(code *)PTR_memcpy_000bccdc)(param_1,local_20);\n        safefree(local_20);\n      }\n      param_2 = PTR_DAT_000bc178;\n      puVar1 = PTR_DAT_000bc178 + -0x324c;\n      uint64_add32(&local_30,*(undefined4 *)(PTR_DAT_000bc178 + -0x324c),\n                   *(undefined4 *)(PTR_DAT_000bc178 + -0x3248),local_24);\n      *(undefined4 *)(param_2 + -0x324c) = local_30;\n      *(undefined4 *)(param_2 + -0x3248) = local_2c;\n      uVar3 = local_24;\n    }\n  }" else (compound_statement "{\n    xfer_download_queue(*(undefined4 *)(PTR_DAT_000bc178 + -0x3244));\n    unaff_s3 = (undefined4 *)sftp_recv();\n    puVar1 = (undefined *)xfer_download_gotpkt(*(undefined4 *)(puVar1 + -0x3244),unaff_s3);\n    if ((int)puVar1 < 1) {\n      param_2 = *(undefined **)PTR_stderr_000bccf0;\n      uVar7 = fxp_error();\n      FUN_00027ff8(param_2,PTR_s_Server_sent_command_exit_status___000bc188 + -0x4abc,uVar7);\n      if (puVar1 == (undefined *)0x80000000) {\n        safefree(unaff_s3);\n      }\n      *(int *)(PTR_DAT_000bc178 + -0x31e0) = *(int *)(PTR_DAT_000bc178 + -0x31e0) + 1;\n      uVar3 = 0xffffffff;\n    }\n    else {\n      iVar2 = xfer_download_data(*(undefined4 *)(PTR_DAT_000bc178 + -0x3244),&local_20,&local_24);\n      if (iVar2 == 0) {\n        local_24 = 0;\n      }\n      else {\n        param_2 = (undefined *)(uint)((int)param_2 < (int)local_24);\n        if ((int)local_24 < 1) {\n          FUN_00027ff8(*(undefined4 *)PTR_stderr_000bccf0,\n                       PTR_s_Server_sent_command_exit_status___000bc188 + -0x4a9c);\n          *(int *)(PTR_DAT_000bc178 + -0x31e0) = *(int *)(PTR_DAT_000bc178 + -0x31e0) + 1;\n          safefree(local_20);\n          uVar3 = 0xffffffff;\n          goto LAB_0002d148;\n        }\n        if (param_2 != (undefined *)0x0) {\n          uVar3 = (*(code *)PTR___assert_fail_000bcb00)\n                            (PTR_s_Server_sent_command_exit_status___000bc188 + -0x4a7c,\n                             PTR_s_Server_sent_command_exit_status___000bc188 + -0x4fb0,0x628,\n                             PTR_s_Server_sent_command_exit_status___000bc188 + -0x45f0);\n          return uVar3;\n        }\n        (*(code *)PTR_memcpy_000bccdc)(param_1,local_20);\n        safefree(local_20);\n      }\n      param_2 = PTR_DAT_000bc178;\n      puVar1 = PTR_DAT_000bc178 + -0x324c;\n      uint64_add32(&local_30,*(undefined4 *)(PTR_DAT_000bc178 + -0x324c),\n                   *(undefined4 *)(PTR_DAT_000bc178 + -0x3248),local_24);\n      *(undefined4 *)(param_2 + -0x324c) = local_30;\n      *(undefined4 *)(param_2 + -0x3248) = local_2c;\n      uVar3 = local_24;\n    }\n  }" { (expression_statement "xfer_download_queue(*(undefined4 *)(PTR_DAT_000bc178 + -0x3244));" (call_expression "xfer_download_queue(*(undefined4 *)(PTR_DAT_000bc178 + -0x3244))" identifier (argument_list "(*(undefined4 *)(PTR_DAT_000bc178 + -0x3244))" ( (pointer_expression "*(undefined4 *)(PTR_DAT_000bc178 + -0x3244)" * (cast_expression "(undefined4 *)(PTR_DAT_000bc178 + -0x3244)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_DAT_000bc178 + -0x3244)" ( (binary_expression "PTR_DAT_000bc178 + -0x3244" identifier + number_literal) )))) ))) ;) (expression_statement "unaff_s3 = (undefined4 *)sftp_recv();" (assignment_expression "unaff_s3 = (undefined4 *)sftp_recv()" identifier = (cast_expression "(undefined4 *)sftp_recv()" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "sftp_recv()" identifier (argument_list "()" ( ))))) ;) (expression_statement "puVar1 = (undefined *)xfer_download_gotpkt(*(undefined4 *)(puVar1 + -0x3244),unaff_s3);" (assignment_expression "puVar1 = (undefined *)xfer_download_gotpkt(*(undefined4 *)(puVar1 + -0x3244),unaff_s3)" identifier = (cast_expression "(undefined *)xfer_download_gotpkt(*(undefined4 *)(puVar1 + -0x3244),unaff_s3)" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "xfer_download_gotpkt(*(undefined4 *)(puVar1 + -0x3244),unaff_s3)" identifier (argument_list "(*(undefined4 *)(puVar1 + -0x3244),unaff_s3)" ( (pointer_expression "*(undefined4 *)(puVar1 + -0x3244)" * (cast_expression "(undefined4 *)(puVar1 + -0x3244)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar1 + -0x3244)" ( (binary_expression "puVar1 + -0x3244" identifier + number_literal) )))) , identifier ))))) ;) (if_statement "if ((int)puVar1 < 1) {\n      param_2 = *(undefined **)PTR_stderr_000bccf0;\n      uVar7 = fxp_error();\n      FUN_00027ff8(param_2,PTR_s_Server_sent_command_exit_status___000bc188 + -0x4abc,uVar7);\n      if (puVar1 == (undefined *)0x80000000) {\n        safefree(unaff_s3);\n      }\n      *(int *)(PTR_DAT_000bc178 + -0x31e0) = *(int *)(PTR_DAT_000bc178 + -0x31e0) + 1;\n      uVar3 = 0xffffffff;\n    }\n    else {\n      iVar2 = xfer_download_data(*(undefined4 *)(PTR_DAT_000bc178 + -0x3244),&local_20,&local_24);\n      if (iVar2 == 0) {\n        local_24 = 0;\n      }\n      else {\n        param_2 = (undefined *)(uint)((int)param_2 < (int)local_24);\n        if ((int)local_24 < 1) {\n          FUN_00027ff8(*(undefined4 *)PTR_stderr_000bccf0,\n                       PTR_s_Server_sent_command_exit_status___000bc188 + -0x4a9c);\n          *(int *)(PTR_DAT_000bc178 + -0x31e0) = *(int *)(PTR_DAT_000bc178 + -0x31e0) + 1;\n          safefree(local_20);\n          uVar3 = 0xffffffff;\n          goto LAB_0002d148;\n        }\n        if (param_2 != (undefined *)0x0) {\n          uVar3 = (*(code *)PTR___assert_fail_000bcb00)\n                            (PTR_s_Server_sent_command_exit_status___000bc188 + -0x4a7c,\n                             PTR_s_Server_sent_command_exit_status___000bc188 + -0x4fb0,0x628,\n                             PTR_s_Server_sent_command_exit_status___000bc188 + -0x45f0);\n          return uVar3;\n        }\n        (*(code *)PTR_memcpy_000bccdc)(param_1,local_20);\n        safefree(local_20);\n      }\n      param_2 = PTR_DAT_000bc178;\n      puVar1 = PTR_DAT_000bc178 + -0x324c;\n      uint64_add32(&local_30,*(undefined4 *)(PTR_DAT_000bc178 + -0x324c),\n                   *(undefined4 *)(PTR_DAT_000bc178 + -0x3248),local_24);\n      *(undefined4 *)(param_2 + -0x324c) = local_30;\n      *(undefined4 *)(param_2 + -0x3248) = local_2c;\n      uVar3 = local_24;\n    }" if (parenthesized_expression "((int)puVar1 < 1)" ( (binary_expression "(int)puVar1 < 1" (cast_expression "(int)puVar1" ( (type_descriptor "int" primitive_type) ) identifier) < number_literal) )) (compound_statement "{\n      param_2 = *(undefined **)PTR_stderr_000bccf0;\n      uVar7 = fxp_error();\n      FUN_00027ff8(param_2,PTR_s_Server_sent_command_exit_status___000bc188 + -0x4abc,uVar7);\n      if (puVar1 == (undefined *)0x80000000) {\n        safefree(unaff_s3);\n      }\n      *(int *)(PTR_DAT_000bc178 + -0x31e0) = *(int *)(PTR_DAT_000bc178 + -0x31e0) + 1;\n      uVar3 = 0xffffffff;\n    }" { (expression_statement "param_2 = *(undefined **)PTR_stderr_000bccf0;" (assignment_expression "param_2 = *(undefined **)PTR_stderr_000bccf0" identifier = (pointer_expression "*(undefined **)PTR_stderr_000bccf0" * (cast_expression "(undefined **)PTR_stderr_000bccf0" ( (type_descriptor "undefined **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier))) ;) (expression_statement "uVar7 = fxp_error();" (assignment_expression "uVar7 = fxp_error()" identifier = (call_expression "fxp_error()" identifier (argument_list "()" ( )))) ;) (expression_statement "FUN_00027ff8(param_2,PTR_s_Server_sent_command_exit_status___000bc188 + -0x4abc,uVar7);" (call_expression "FUN_00027ff8(param_2,PTR_s_Server_sent_command_exit_status___000bc188 + -0x4abc,uVar7)" identifier (argument_list "(param_2,PTR_s_Server_sent_command_exit_status___000bc188 + -0x4abc,uVar7)" ( identifier , (binary_expression "PTR_s_Server_sent_command_exit_status___000bc188 + -0x4abc" identifier + number_literal) , identifier ))) ;) (if_statement "if (puVar1 == (undefined *)0x80000000) {\n        safefree(unaff_s3);\n      }" if (parenthesized_expression "(puVar1 == (undefined *)0x80000000)" ( (binary_expression "puVar1 == (undefined *)0x80000000" identifier == (cast_expression "(undefined *)0x80000000" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n        safefree(unaff_s3);\n      }" { (expression_statement "safefree(unaff_s3);" (call_expression "safefree(unaff_s3)" identifier (argument_list "(unaff_s3)" ( identifier ))) ;) })) (expression_statement "*(int *)(PTR_DAT_000bc178 + -0x31e0) = *(int *)(PTR_DAT_000bc178 + -0x31e0) + 1;" (assignment_expression "*(int *)(PTR_DAT_000bc178 + -0x31e0) = *(int *)(PTR_DAT_000bc178 + -0x31e0) + 1" (pointer_expression "*(int *)(PTR_DAT_000bc178 + -0x31e0)" * (cast_expression "(int *)(PTR_DAT_000bc178 + -0x31e0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_DAT_000bc178 + -0x31e0)" ( (binary_expression "PTR_DAT_000bc178 + -0x31e0" identifier + number_literal) )))) = (binary_expression "*(int *)(PTR_DAT_000bc178 + -0x31e0) + 1" (pointer_expression "*(int *)(PTR_DAT_000bc178 + -0x31e0)" * (cast_expression "(int *)(PTR_DAT_000bc178 + -0x31e0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_DAT_000bc178 + -0x31e0)" ( (binary_expression "PTR_DAT_000bc178 + -0x31e0" identifier + number_literal) )))) + number_literal)) ;) (expression_statement "uVar3 = 0xffffffff;" (assignment_expression "uVar3 = 0xffffffff" identifier = number_literal) ;) }) (else_clause "else {\n      iVar2 = xfer_download_data(*(undefined4 *)(PTR_DAT_000bc178 + -0x3244),&local_20,&local_24);\n      if (iVar2 == 0) {\n        local_24 = 0;\n      }\n      else {\n        param_2 = (undefined *)(uint)((int)param_2 < (int)local_24);\n        if ((int)local_24 < 1) {\n          FUN_00027ff8(*(undefined4 *)PTR_stderr_000bccf0,\n                       PTR_s_Server_sent_command_exit_status___000bc188 + -0x4a9c);\n          *(int *)(PTR_DAT_000bc178 + -0x31e0) = *(int *)(PTR_DAT_000bc178 + -0x31e0) + 1;\n          safefree(local_20);\n          uVar3 = 0xffffffff;\n          goto LAB_0002d148;\n        }\n        if (param_2 != (undefined *)0x0) {\n          uVar3 = (*(code *)PTR___assert_fail_000bcb00)\n                            (PTR_s_Server_sent_command_exit_status___000bc188 + -0x4a7c,\n                             PTR_s_Server_sent_command_exit_status___000bc188 + -0x4fb0,0x628,\n                             PTR_s_Server_sent_command_exit_status___000bc188 + -0x45f0);\n          return uVar3;\n        }\n        (*(code *)PTR_memcpy_000bccdc)(param_1,local_20);\n        safefree(local_20);\n      }\n      param_2 = PTR_DAT_000bc178;\n      puVar1 = PTR_DAT_000bc178 + -0x324c;\n      uint64_add32(&local_30,*(undefined4 *)(PTR_DAT_000bc178 + -0x324c),\n                   *(undefined4 *)(PTR_DAT_000bc178 + -0x3248),local_24);\n      *(undefined4 *)(param_2 + -0x324c) = local_30;\n      *(undefined4 *)(param_2 + -0x3248) = local_2c;\n      uVar3 = local_24;\n    }" else (compound_statement "{\n      iVar2 = xfer_download_data(*(undefined4 *)(PTR_DAT_000bc178 + -0x3244),&local_20,&local_24);\n      if (iVar2 == 0) {\n        local_24 = 0;\n      }\n      else {\n        param_2 = (undefined *)(uint)((int)param_2 < (int)local_24);\n        if ((int)local_24 < 1) {\n          FUN_00027ff8(*(undefined4 *)PTR_stderr_000bccf0,\n                       PTR_s_Server_sent_command_exit_status___000bc188 + -0x4a9c);\n          *(int *)(PTR_DAT_000bc178 + -0x31e0) = *(int *)(PTR_DAT_000bc178 + -0x31e0) + 1;\n          safefree(local_20);\n          uVar3 = 0xffffffff;\n          goto LAB_0002d148;\n        }\n        if (param_2 != (undefined *)0x0) {\n          uVar3 = (*(code *)PTR___assert_fail_000bcb00)\n                            (PTR_s_Server_sent_command_exit_status___000bc188 + -0x4a7c,\n                             PTR_s_Server_sent_command_exit_status___000bc188 + -0x4fb0,0x628,\n                             PTR_s_Server_sent_command_exit_status___000bc188 + -0x45f0);\n          return uVar3;\n        }\n        (*(code *)PTR_memcpy_000bccdc)(param_1,local_20);\n        safefree(local_20);\n      }\n      param_2 = PTR_DAT_000bc178;\n      puVar1 = PTR_DAT_000bc178 + -0x324c;\n      uint64_add32(&local_30,*(undefined4 *)(PTR_DAT_000bc178 + -0x324c),\n                   *(undefined4 *)(PTR_DAT_000bc178 + -0x3248),local_24);\n      *(undefined4 *)(param_2 + -0x324c) = local_30;\n      *(undefined4 *)(param_2 + -0x3248) = local_2c;\n      uVar3 = local_24;\n    }" { (expression_statement "iVar2 = xfer_download_data(*(undefined4 *)(PTR_DAT_000bc178 + -0x3244),&local_20,&local_24);" (assignment_expression "iVar2 = xfer_download_data(*(undefined4 *)(PTR_DAT_000bc178 + -0x3244),&local_20,&local_24)" identifier = (call_expression "xfer_download_data(*(undefined4 *)(PTR_DAT_000bc178 + -0x3244),&local_20,&local_24)" identifier (argument_list "(*(undefined4 *)(PTR_DAT_000bc178 + -0x3244),&local_20,&local_24)" ( (pointer_expression "*(undefined4 *)(PTR_DAT_000bc178 + -0x3244)" * (cast_expression "(undefined4 *)(PTR_DAT_000bc178 + -0x3244)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_DAT_000bc178 + -0x3244)" ( (binary_expression "PTR_DAT_000bc178 + -0x3244" identifier + number_literal) )))) , (pointer_expression "&local_20" & identifier) , (pointer_expression "&local_24" & identifier) )))) ;) (if_statement "if (iVar2 == 0) {\n        local_24 = 0;\n      }\n      else {\n        param_2 = (undefined *)(uint)((int)param_2 < (int)local_24);\n        if ((int)local_24 < 1) {\n          FUN_00027ff8(*(undefined4 *)PTR_stderr_000bccf0,\n                       PTR_s_Server_sent_command_exit_status___000bc188 + -0x4a9c);\n          *(int *)(PTR_DAT_000bc178 + -0x31e0) = *(int *)(PTR_DAT_000bc178 + -0x31e0) + 1;\n          safefree(local_20);\n          uVar3 = 0xffffffff;\n          goto LAB_0002d148;\n        }\n        if (param_2 != (undefined *)0x0) {\n          uVar3 = (*(code *)PTR___assert_fail_000bcb00)\n                            (PTR_s_Server_sent_command_exit_status___000bc188 + -0x4a7c,\n                             PTR_s_Server_sent_command_exit_status___000bc188 + -0x4fb0,0x628,\n                             PTR_s_Server_sent_command_exit_status___000bc188 + -0x45f0);\n          return uVar3;\n        }\n        (*(code *)PTR_memcpy_000bccdc)(param_1,local_20);\n        safefree(local_20);\n      }" if (parenthesized_expression "(iVar2 == 0)" ( (binary_expression "iVar2 == 0" identifier == number_literal) )) (compound_statement "{\n        local_24 = 0;\n      }" { (expression_statement "local_24 = 0;" (assignment_expression "local_24 = 0" identifier = number_literal) ;) }) (else_clause "else {\n        param_2 = (undefined *)(uint)((int)param_2 < (int)local_24);\n        if ((int)local_24 < 1) {\n          FUN_00027ff8(*(undefined4 *)PTR_stderr_000bccf0,\n                       PTR_s_Server_sent_command_exit_status___000bc188 + -0x4a9c);\n          *(int *)(PTR_DAT_000bc178 + -0x31e0) = *(int *)(PTR_DAT_000bc178 + -0x31e0) + 1;\n          safefree(local_20);\n          uVar3 = 0xffffffff;\n          goto LAB_0002d148;\n        }\n        if (param_2 != (undefined *)0x0) {\n          uVar3 = (*(code *)PTR___assert_fail_000bcb00)\n                            (PTR_s_Server_sent_command_exit_status___000bc188 + -0x4a7c,\n                             PTR_s_Server_sent_command_exit_status___000bc188 + -0x4fb0,0x628,\n                             PTR_s_Server_sent_command_exit_status___000bc188 + -0x45f0);\n          return uVar3;\n        }\n        (*(code *)PTR_memcpy_000bccdc)(param_1,local_20);\n        safefree(local_20);\n      }" else (compound_statement "{\n        param_2 = (undefined *)(uint)((int)param_2 < (int)local_24);\n        if ((int)local_24 < 1) {\n          FUN_00027ff8(*(undefined4 *)PTR_stderr_000bccf0,\n                       PTR_s_Server_sent_command_exit_status___000bc188 + -0x4a9c);\n          *(int *)(PTR_DAT_000bc178 + -0x31e0) = *(int *)(PTR_DAT_000bc178 + -0x31e0) + 1;\n          safefree(local_20);\n          uVar3 = 0xffffffff;\n          goto LAB_0002d148;\n        }\n        if (param_2 != (undefined *)0x0) {\n          uVar3 = (*(code *)PTR___assert_fail_000bcb00)\n                            (PTR_s_Server_sent_command_exit_status___000bc188 + -0x4a7c,\n                             PTR_s_Server_sent_command_exit_status___000bc188 + -0x4fb0,0x628,\n                             PTR_s_Server_sent_command_exit_status___000bc188 + -0x45f0);\n          return uVar3;\n        }\n        (*(code *)PTR_memcpy_000bccdc)(param_1,local_20);\n        safefree(local_20);\n      }" { (expression_statement "param_2 = (undefined *)(uint)((int)param_2 < (int)local_24);" (assignment_expression "param_2 = (undefined *)(uint)((int)param_2 < (int)local_24)" identifier = (cast_expression "(undefined *)(uint)((int)param_2 < (int)local_24)" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(uint)((int)param_2 < (int)local_24)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "((int)param_2 < (int)local_24)" ( (binary_expression "(int)param_2 < (int)local_24" (cast_expression "(int)param_2" ( (type_descriptor "int" primitive_type) ) identifier) < (cast_expression "(int)local_24" ( (type_descriptor "int" primitive_type) ) identifier)) ))))) ;) (if_statement "if ((int)local_24 < 1) {\n          FUN_00027ff8(*(undefined4 *)PTR_stderr_000bccf0,\n                       PTR_s_Server_sent_command_exit_status___000bc188 + -0x4a9c);\n          *(int *)(PTR_DAT_000bc178 + -0x31e0) = *(int *)(PTR_DAT_000bc178 + -0x31e0) + 1;\n          safefree(local_20);\n          uVar3 = 0xffffffff;\n          goto LAB_0002d148;\n        }" if (parenthesized_expression "((int)local_24 < 1)" ( (binary_expression "(int)local_24 < 1" (cast_expression "(int)local_24" ( (type_descriptor "int" primitive_type) ) identifier) < number_literal) )) (compound_statement "{\n          FUN_00027ff8(*(undefined4 *)PTR_stderr_000bccf0,\n                       PTR_s_Server_sent_command_exit_status___000bc188 + -0x4a9c);\n          *(int *)(PTR_DAT_000bc178 + -0x31e0) = *(int *)(PTR_DAT_000bc178 + -0x31e0) + 1;\n          safefree(local_20);\n          uVar3 = 0xffffffff;\n          goto LAB_0002d148;\n        }" { (expression_statement "FUN_00027ff8(*(undefined4 *)PTR_stderr_000bccf0,\n                       PTR_s_Server_sent_command_exit_status___000bc188 + -0x4a9c);" (call_expression "FUN_00027ff8(*(undefined4 *)PTR_stderr_000bccf0,\n                       PTR_s_Server_sent_command_exit_status___000bc188 + -0x4a9c)" identifier (argument_list "(*(undefined4 *)PTR_stderr_000bccf0,\n                       PTR_s_Server_sent_command_exit_status___000bc188 + -0x4a9c)" ( (pointer_expression "*(undefined4 *)PTR_stderr_000bccf0" * (cast_expression "(undefined4 *)PTR_stderr_000bccf0" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) , (binary_expression "PTR_s_Server_sent_command_exit_status___000bc188 + -0x4a9c" identifier + number_literal) ))) ;) (expression_statement "*(int *)(PTR_DAT_000bc178 + -0x31e0) = *(int *)(PTR_DAT_000bc178 + -0x31e0) + 1;" (assignment_expression "*(int *)(PTR_DAT_000bc178 + -0x31e0) = *(int *)(PTR_DAT_000bc178 + -0x31e0) + 1" (pointer_expression "*(int *)(PTR_DAT_000bc178 + -0x31e0)" * (cast_expression "(int *)(PTR_DAT_000bc178 + -0x31e0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_DAT_000bc178 + -0x31e0)" ( (binary_expression "PTR_DAT_000bc178 + -0x31e0" identifier + number_literal) )))) = (binary_expression "*(int *)(PTR_DAT_000bc178 + -0x31e0) + 1" (pointer_expression "*(int *)(PTR_DAT_000bc178 + -0x31e0)" * (cast_expression "(int *)(PTR_DAT_000bc178 + -0x31e0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_DAT_000bc178 + -0x31e0)" ( (binary_expression "PTR_DAT_000bc178 + -0x31e0" identifier + number_literal) )))) + number_literal)) ;) (expression_statement "safefree(local_20);" (call_expression "safefree(local_20)" identifier (argument_list "(local_20)" ( identifier ))) ;) (expression_statement "uVar3 = 0xffffffff;" (assignment_expression "uVar3 = 0xffffffff" identifier = number_literal) ;) (goto_statement "goto LAB_0002d148;" goto statement_identifier ;) })) (if_statement "if (param_2 != (undefined *)0x0) {\n          uVar3 = (*(code *)PTR___assert_fail_000bcb00)\n                            (PTR_s_Server_sent_command_exit_status___000bc188 + -0x4a7c,\n                             PTR_s_Server_sent_command_exit_status___000bc188 + -0x4fb0,0x628,\n                             PTR_s_Server_sent_command_exit_status___000bc188 + -0x45f0);\n          return uVar3;\n        }" if (parenthesized_expression "(param_2 != (undefined *)0x0)" ( (binary_expression "param_2 != (undefined *)0x0" identifier != (cast_expression "(undefined *)0x0" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n          uVar3 = (*(code *)PTR___assert_fail_000bcb00)\n                            (PTR_s_Server_sent_command_exit_status___000bc188 + -0x4a7c,\n                             PTR_s_Server_sent_command_exit_status___000bc188 + -0x4fb0,0x628,\n                             PTR_s_Server_sent_command_exit_status___000bc188 + -0x45f0);\n          return uVar3;\n        }" { (expression_statement "uVar3 = (*(code *)PTR___assert_fail_000bcb00)\n                            (PTR_s_Server_sent_command_exit_status___000bc188 + -0x4a7c,\n                             PTR_s_Server_sent_command_exit_status___000bc188 + -0x4fb0,0x628,\n                             PTR_s_Server_sent_command_exit_status___000bc188 + -0x45f0);" (assignment_expression "uVar3 = (*(code *)PTR___assert_fail_000bcb00)\n                            (PTR_s_Server_sent_command_exit_status___000bc188 + -0x4a7c,\n                             PTR_s_Server_sent_command_exit_status___000bc188 + -0x4fb0,0x628,\n                             PTR_s_Server_sent_command_exit_status___000bc188 + -0x45f0)" identifier = (call_expression "(*(code *)PTR___assert_fail_000bcb00)\n                            (PTR_s_Server_sent_command_exit_status___000bc188 + -0x4a7c,\n                             PTR_s_Server_sent_command_exit_status___000bc188 + -0x4fb0,0x628,\n                             PTR_s_Server_sent_command_exit_status___000bc188 + -0x45f0)" (parenthesized_expression "(*(code *)PTR___assert_fail_000bcb00)" ( (pointer_expression "*(code *)PTR___assert_fail_000bcb00" * (cast_expression "(code *)PTR___assert_fail_000bcb00" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(PTR_s_Server_sent_command_exit_status___000bc188 + -0x4a7c,\n                             PTR_s_Server_sent_command_exit_status___000bc188 + -0x4fb0,0x628,\n                             PTR_s_Server_sent_command_exit_status___000bc188 + -0x45f0)" ( (binary_expression "PTR_s_Server_sent_command_exit_status___000bc188 + -0x4a7c" identifier + number_literal) , (binary_expression "PTR_s_Server_sent_command_exit_status___000bc188 + -0x4fb0" identifier + number_literal) , number_literal , (binary_expression "PTR_s_Server_sent_command_exit_status___000bc188 + -0x45f0" identifier + number_literal) )))) ;) (return_statement "return uVar3;" return identifier ;) })) (expression_statement "(*(code *)PTR_memcpy_000bccdc)(param_1,local_20);" (call_expression "(*(code *)PTR_memcpy_000bccdc)(param_1,local_20)" (parenthesized_expression "(*(code *)PTR_memcpy_000bccdc)" ( (pointer_expression "*(code *)PTR_memcpy_000bccdc" * (cast_expression "(code *)PTR_memcpy_000bccdc" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(param_1,local_20)" ( identifier , identifier ))) ;) (expression_statement "safefree(local_20);" (call_expression "safefree(local_20)" identifier (argument_list "(local_20)" ( identifier ))) ;) }))) (expression_statement "param_2 = PTR_DAT_000bc178;" (assignment_expression "param_2 = PTR_DAT_000bc178" identifier = identifier) ;) (expression_statement "puVar1 = PTR_DAT_000bc178 + -0x324c;" (assignment_expression "puVar1 = PTR_DAT_000bc178 + -0x324c" identifier = (binary_expression "PTR_DAT_000bc178 + -0x324c" identifier + number_literal)) ;) (expression_statement "uint64_add32(&local_30,*(undefined4 *)(PTR_DAT_000bc178 + -0x324c),\n                   *(undefined4 *)(PTR_DAT_000bc178 + -0x3248),local_24);" (call_expression "uint64_add32(&local_30,*(undefined4 *)(PTR_DAT_000bc178 + -0x324c),\n                   *(undefined4 *)(PTR_DAT_000bc178 + -0x3248),local_24)" identifier (argument_list "(&local_30,*(undefined4 *)(PTR_DAT_000bc178 + -0x324c),\n                   *(undefined4 *)(PTR_DAT_000bc178 + -0x3248),local_24)" ( (pointer_expression "&local_30" & identifier) , (pointer_expression "*(undefined4 *)(PTR_DAT_000bc178 + -0x324c)" * (cast_expression "(undefined4 *)(PTR_DAT_000bc178 + -0x324c)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_DAT_000bc178 + -0x324c)" ( (binary_expression "PTR_DAT_000bc178 + -0x324c" identifier + number_literal) )))) , (pointer_expression "*(undefined4 *)(PTR_DAT_000bc178 + -0x3248)" * (cast_expression "(undefined4 *)(PTR_DAT_000bc178 + -0x3248)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_DAT_000bc178 + -0x3248)" ( (binary_expression "PTR_DAT_000bc178 + -0x3248" identifier + number_literal) )))) , identifier ))) ;) (expression_statement "*(undefined4 *)(param_2 + -0x324c) = local_30;" (assignment_expression "*(undefined4 *)(param_2 + -0x324c) = local_30" (pointer_expression "*(undefined4 *)(param_2 + -0x324c)" * (cast_expression "(undefined4 *)(param_2 + -0x324c)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_2 + -0x324c)" ( (binary_expression "param_2 + -0x324c" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(param_2 + -0x3248) = local_2c;" (assignment_expression "*(undefined4 *)(param_2 + -0x3248) = local_2c" (pointer_expression "*(undefined4 *)(param_2 + -0x3248)" * (cast_expression "(undefined4 *)(param_2 + -0x3248)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_2 + -0x3248)" ( (binary_expression "param_2 + -0x3248" identifier + number_literal) )))) = identifier) ;) (expression_statement "uVar3 = local_24;" (assignment_expression "uVar3 = local_24" identifier = identifier) ;) }))) }))) (labeled_statement "LAB_0002d148:\n  if (local_1c == *(int *)PTR___stack_chk_guard_000bccd8) {\n    return uVar3;\n  }" statement_identifier : (if_statement "if (local_1c == *(int *)PTR___stack_chk_guard_000bccd8) {\n    return uVar3;\n  }" if (parenthesized_expression "(local_1c == *(int *)PTR___stack_chk_guard_000bccd8)" ( (binary_expression "local_1c == *(int *)PTR___stack_chk_guard_000bccd8" identifier == (pointer_expression "*(int *)PTR___stack_chk_guard_000bccd8" * (cast_expression "(int *)PTR___stack_chk_guard_000bccd8" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier))) )) (compound_statement "{\n    return uVar3;\n  }" { (return_statement "return uVar3;" return identifier ;) }))) (expression_statement "puVar5 = PTR___stack_chk_fail_000bccb0;" (assignment_expression "puVar5 = PTR___stack_chk_fail_000bccb0" identifier = identifier) ;) (expression_statement "(*(code *)PTR___stack_chk_fail_000bccb0)();" (call_expression "(*(code *)PTR___stack_chk_fail_000bccb0)()" (parenthesized_expression "(*(code *)PTR___stack_chk_fail_000bccb0)" ( (pointer_expression "*(code *)PTR___stack_chk_fail_000bccb0" * (cast_expression "(code *)PTR___stack_chk_fail_000bccb0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "()" ( ))) ;) (expression_statement "pcStack_64 = (char *)**(undefined4 **)(puVar5 + 0x8fa44);" (assignment_expression "pcStack_64 = (char *)**(undefined4 **)(puVar5 + 0x8fa44)" identifier = (cast_expression "(char *)**(undefined4 **)(puVar5 + 0x8fa44)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "**(undefined4 **)(puVar5 + 0x8fa44)" * (pointer_expression "*(undefined4 **)(puVar5 + 0x8fa44)" * (cast_expression "(undefined4 **)(puVar5 + 0x8fa44)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar5 + 0x8fa44)" ( (binary_expression "puVar5 + 0x8fa44" identifier + number_literal) ))))))) ;) (expression_statement "puStack_60 = param_2;" (assignment_expression "puStack_60 = param_2" identifier = identifier) ;) (expression_statement "puStack_5c = puVar1;" (assignment_expression "puStack_5c = puVar1" identifier = identifier) ;) (expression_statement "puStack_58 = param_1;" (assignment_expression "puStack_58 = param_1" identifier = identifier) ;) (expression_statement "puStack_54 = unaff_s3;" (assignment_expression "puStack_54 = unaff_s3" identifier = identifier) ;) (if_statement "if (*(int *)(*(int *)(puVar5 + 0x8eee4) + -0x31ec) == 0) {\n    puVar14 = (undefined *)(*(int *)(puVar5 + 0x8eef4) + -0x17dc);\n    (**(code **)(*(int *)(*(int *)(puVar5 + 0x8eee4) + -0x31f4) + 0xc))\n              (*(undefined4 *)(*(int *)(puVar5 + 0x8eee4) + -0x31f8),puVar14,1);\n    uVar3 = FUN_00028400();\n  }\n  else {\n    xfer_set_error(*(undefined4 *)(*(int *)(puVar5 + 0x8eee4) + -0x3244));\n    iVar2 = *(int *)(puVar5 + 0x8eee4);\n    unaff_s4 = auStack_68;\n    unaff_s3 = &uStack_6c;\n    while (iVar24 = xfer_done(*(undefined4 *)(iVar2 + -0x3244)), iVar24 == 0) {\n      param_1 = (undefined *)sftp_recv();\n      puVar1 = (undefined *)xfer_download_gotpkt(*(undefined4 *)(iVar2 + -0x3244),param_1);\n      if ((int)puVar1 < 1) {\n        param_2 = (undefined *)**(undefined4 **)(puVar5 + 0x8fa5c);\n        uVar7 = fxp_error();\n        puVar14 = (undefined *)(*(int *)(puVar5 + 0x8eef4) + -0x4abc);\n        FUN_00027ff8(param_2,puVar14,uVar7);\n        if (puVar1 == (undefined *)0x80000000) {\n          safefree(param_1);\n          iVar2 = *(int *)(puVar5 + 0x8eee4);\n        }\n        else {\n          iVar2 = *(int *)(puVar5 + 0x8eee4);\n        }\n        *(int *)(iVar2 + -0x31e0) = *(int *)(iVar2 + -0x31e0) + 1;\n        uVar3 = 0xffffffff;\n        goto LAB_0002d318;\n      }\n      iVar24 = xfer_download_data(*(undefined4 *)(iVar2 + -0x3244),unaff_s3,unaff_s4);\n      if (iVar24 != 0) {\n        safefree(uStack_6c);\n      }\n    }\n    xfer_cleanup(*(undefined4 *)(*(int *)(puVar5 + 0x8eee4) + -0x3244));\n    param_2 = (undefined *)fxp_close_send(*(undefined4 *)(*(int *)(puVar5 + 0x8eee4) + -0x3240));\n    uVar7 = sftp_wait_for_reply(param_2);\n    puVar14 = param_2;\n    fxp_close_recv(uVar7);\n    uVar3 = 0;\n  }" if (parenthesized_expression "(*(int *)(*(int *)(puVar5 + 0x8eee4) + -0x31ec) == 0)" ( (binary_expression "*(int *)(*(int *)(puVar5 + 0x8eee4) + -0x31ec) == 0" (pointer_expression "*(int *)(*(int *)(puVar5 + 0x8eee4) + -0x31ec)" * (cast_expression "(int *)(*(int *)(puVar5 + 0x8eee4) + -0x31ec)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(puVar5 + 0x8eee4) + -0x31ec)" ( (binary_expression "*(int *)(puVar5 + 0x8eee4) + -0x31ec" (pointer_expression "*(int *)(puVar5 + 0x8eee4)" * (cast_expression "(int *)(puVar5 + 0x8eee4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar5 + 0x8eee4)" ( (binary_expression "puVar5 + 0x8eee4" identifier + number_literal) )))) + number_literal) )))) == number_literal) )) (compound_statement "{\n    puVar14 = (undefined *)(*(int *)(puVar5 + 0x8eef4) + -0x17dc);\n    (**(code **)(*(int *)(*(int *)(puVar5 + 0x8eee4) + -0x31f4) + 0xc))\n              (*(undefined4 *)(*(int *)(puVar5 + 0x8eee4) + -0x31f8),puVar14,1);\n    uVar3 = FUN_00028400();\n  }" { (expression_statement "puVar14 = (undefined *)(*(int *)(puVar5 + 0x8eef4) + -0x17dc);" (assignment_expression "puVar14 = (undefined *)(*(int *)(puVar5 + 0x8eef4) + -0x17dc)" identifier = (cast_expression "(undefined *)(*(int *)(puVar5 + 0x8eef4) + -0x17dc)" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(puVar5 + 0x8eef4) + -0x17dc)" ( (binary_expression "*(int *)(puVar5 + 0x8eef4) + -0x17dc" (pointer_expression "*(int *)(puVar5 + 0x8eef4)" * (cast_expression "(int *)(puVar5 + 0x8eef4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar5 + 0x8eef4)" ( (binary_expression "puVar5 + 0x8eef4" identifier + number_literal) )))) + number_literal) )))) ;) (expression_statement "(**(code **)(*(int *)(*(int *)(puVar5 + 0x8eee4) + -0x31f4) + 0xc))\n              (*(undefined4 *)(*(int *)(puVar5 + 0x8eee4) + -0x31f8),puVar14,1);" (call_expression "(**(code **)(*(int *)(*(int *)(puVar5 + 0x8eee4) + -0x31f4) + 0xc))\n              (*(undefined4 *)(*(int *)(puVar5 + 0x8eee4) + -0x31f8),puVar14,1)" (parenthesized_expression "(**(code **)(*(int *)(*(int *)(puVar5 + 0x8eee4) + -0x31f4) + 0xc))" ( (pointer_expression "**(code **)(*(int *)(*(int *)(puVar5 + 0x8eee4) + -0x31f4) + 0xc)" * (pointer_expression "*(code **)(*(int *)(*(int *)(puVar5 + 0x8eee4) + -0x31f4) + 0xc)" * (cast_expression "(code **)(*(int *)(*(int *)(puVar5 + 0x8eee4) + -0x31f4) + 0xc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*(int *)(*(int *)(puVar5 + 0x8eee4) + -0x31f4) + 0xc)" ( (binary_expression "*(int *)(*(int *)(puVar5 + 0x8eee4) + -0x31f4) + 0xc" (pointer_expression "*(int *)(*(int *)(puVar5 + 0x8eee4) + -0x31f4)" * (cast_expression "(int *)(*(int *)(puVar5 + 0x8eee4) + -0x31f4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(puVar5 + 0x8eee4) + -0x31f4)" ( (binary_expression "*(int *)(puVar5 + 0x8eee4) + -0x31f4" (pointer_expression "*(int *)(puVar5 + 0x8eee4)" * (cast_expression "(int *)(puVar5 + 0x8eee4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar5 + 0x8eee4)" ( (binary_expression "puVar5 + 0x8eee4" identifier + number_literal) )))) + number_literal) )))) + number_literal) ))))) )) (argument_list "(*(undefined4 *)(*(int *)(puVar5 + 0x8eee4) + -0x31f8),puVar14,1)" ( (pointer_expression "*(undefined4 *)(*(int *)(puVar5 + 0x8eee4) + -0x31f8)" * (cast_expression "(undefined4 *)(*(int *)(puVar5 + 0x8eee4) + -0x31f8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(puVar5 + 0x8eee4) + -0x31f8)" ( (binary_expression "*(int *)(puVar5 + 0x8eee4) + -0x31f8" (pointer_expression "*(int *)(puVar5 + 0x8eee4)" * (cast_expression "(int *)(puVar5 + 0x8eee4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar5 + 0x8eee4)" ( (binary_expression "puVar5 + 0x8eee4" identifier + number_literal) )))) + number_literal) )))) , identifier , number_literal ))) ;) (expression_statement "uVar3 = FUN_00028400();" (assignment_expression "uVar3 = FUN_00028400()" identifier = (call_expression "FUN_00028400()" identifier (argument_list "()" ( )))) ;) }) (else_clause "else {\n    xfer_set_error(*(undefined4 *)(*(int *)(puVar5 + 0x8eee4) + -0x3244));\n    iVar2 = *(int *)(puVar5 + 0x8eee4);\n    unaff_s4 = auStack_68;\n    unaff_s3 = &uStack_6c;\n    while (iVar24 = xfer_done(*(undefined4 *)(iVar2 + -0x3244)), iVar24 == 0) {\n      param_1 = (undefined *)sftp_recv();\n      puVar1 = (undefined *)xfer_download_gotpkt(*(undefined4 *)(iVar2 + -0x3244),param_1);\n      if ((int)puVar1 < 1) {\n        param_2 = (undefined *)**(undefined4 **)(puVar5 + 0x8fa5c);\n        uVar7 = fxp_error();\n        puVar14 = (undefined *)(*(int *)(puVar5 + 0x8eef4) + -0x4abc);\n        FUN_00027ff8(param_2,puVar14,uVar7);\n        if (puVar1 == (undefined *)0x80000000) {\n          safefree(param_1);\n          iVar2 = *(int *)(puVar5 + 0x8eee4);\n        }\n        else {\n          iVar2 = *(int *)(puVar5 + 0x8eee4);\n        }\n        *(int *)(iVar2 + -0x31e0) = *(int *)(iVar2 + -0x31e0) + 1;\n        uVar3 = 0xffffffff;\n        goto LAB_0002d318;\n      }\n      iVar24 = xfer_download_data(*(undefined4 *)(iVar2 + -0x3244),unaff_s3,unaff_s4);\n      if (iVar24 != 0) {\n        safefree(uStack_6c);\n      }\n    }\n    xfer_cleanup(*(undefined4 *)(*(int *)(puVar5 + 0x8eee4) + -0x3244));\n    param_2 = (undefined *)fxp_close_send(*(undefined4 *)(*(int *)(puVar5 + 0x8eee4) + -0x3240));\n    uVar7 = sftp_wait_for_reply(param_2);\n    puVar14 = param_2;\n    fxp_close_recv(uVar7);\n    uVar3 = 0;\n  }" else (compound_statement "{\n    xfer_set_error(*(undefined4 *)(*(int *)(puVar5 + 0x8eee4) + -0x3244));\n    iVar2 = *(int *)(puVar5 + 0x8eee4);\n    unaff_s4 = auStack_68;\n    unaff_s3 = &uStack_6c;\n    while (iVar24 = xfer_done(*(undefined4 *)(iVar2 + -0x3244)), iVar24 == 0) {\n      param_1 = (undefined *)sftp_recv();\n      puVar1 = (undefined *)xfer_download_gotpkt(*(undefined4 *)(iVar2 + -0x3244),param_1);\n      if ((int)puVar1 < 1) {\n        param_2 = (undefined *)**(undefined4 **)(puVar5 + 0x8fa5c);\n        uVar7 = fxp_error();\n        puVar14 = (undefined *)(*(int *)(puVar5 + 0x8eef4) + -0x4abc);\n        FUN_00027ff8(param_2,puVar14,uVar7);\n        if (puVar1 == (undefined *)0x80000000) {\n          safefree(param_1);\n          iVar2 = *(int *)(puVar5 + 0x8eee4);\n        }\n        else {\n          iVar2 = *(int *)(puVar5 + 0x8eee4);\n        }\n        *(int *)(iVar2 + -0x31e0) = *(int *)(iVar2 + -0x31e0) + 1;\n        uVar3 = 0xffffffff;\n        goto LAB_0002d318;\n      }\n      iVar24 = xfer_download_data(*(undefined4 *)(iVar2 + -0x3244),unaff_s3,unaff_s4);\n      if (iVar24 != 0) {\n        safefree(uStack_6c);\n      }\n    }\n    xfer_cleanup(*(undefined4 *)(*(int *)(puVar5 + 0x8eee4) + -0x3244));\n    param_2 = (undefined *)fxp_close_send(*(undefined4 *)(*(int *)(puVar5 + 0x8eee4) + -0x3240));\n    uVar7 = sftp_wait_for_reply(param_2);\n    puVar14 = param_2;\n    fxp_close_recv(uVar7);\n    uVar3 = 0;\n  }" { (expression_statement "xfer_set_error(*(undefined4 *)(*(int *)(puVar5 + 0x8eee4) + -0x3244));" (call_expression "xfer_set_error(*(undefined4 *)(*(int *)(puVar5 + 0x8eee4) + -0x3244))" identifier (argument_list "(*(undefined4 *)(*(int *)(puVar5 + 0x8eee4) + -0x3244))" ( (pointer_expression "*(undefined4 *)(*(int *)(puVar5 + 0x8eee4) + -0x3244)" * (cast_expression "(undefined4 *)(*(int *)(puVar5 + 0x8eee4) + -0x3244)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(puVar5 + 0x8eee4) + -0x3244)" ( (binary_expression "*(int *)(puVar5 + 0x8eee4) + -0x3244" (pointer_expression "*(int *)(puVar5 + 0x8eee4)" * (cast_expression "(int *)(puVar5 + 0x8eee4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar5 + 0x8eee4)" ( (binary_expression "puVar5 + 0x8eee4" identifier + number_literal) )))) + number_literal) )))) ))) ;) (expression_statement "iVar2 = *(int *)(puVar5 + 0x8eee4);" (assignment_expression "iVar2 = *(int *)(puVar5 + 0x8eee4)" identifier = (pointer_expression "*(int *)(puVar5 + 0x8eee4)" * (cast_expression "(int *)(puVar5 + 0x8eee4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar5 + 0x8eee4)" ( (binary_expression "puVar5 + 0x8eee4" identifier + number_literal) ))))) ;) (expression_statement "unaff_s4 = auStack_68;" (assignment_expression "unaff_s4 = auStack_68" identifier = identifier) ;) (expression_statement "unaff_s3 = &uStack_6c;" (assignment_expression "unaff_s3 = &uStack_6c" identifier = (pointer_expression "&uStack_6c" & identifier)) ;) (while_statement "while (iVar24 = xfer_done(*(undefined4 *)(iVar2 + -0x3244)), iVar24 == 0) {\n      param_1 = (undefined *)sftp_recv();\n      puVar1 = (undefined *)xfer_download_gotpkt(*(undefined4 *)(iVar2 + -0x3244),param_1);\n      if ((int)puVar1 < 1) {\n        param_2 = (undefined *)**(undefined4 **)(puVar5 + 0x8fa5c);\n        uVar7 = fxp_error();\n        puVar14 = (undefined *)(*(int *)(puVar5 + 0x8eef4) + -0x4abc);\n        FUN_00027ff8(param_2,puVar14,uVar7);\n        if (puVar1 == (undefined *)0x80000000) {\n          safefree(param_1);\n          iVar2 = *(int *)(puVar5 + 0x8eee4);\n        }\n        else {\n          iVar2 = *(int *)(puVar5 + 0x8eee4);\n        }\n        *(int *)(iVar2 + -0x31e0) = *(int *)(iVar2 + -0x31e0) + 1;\n        uVar3 = 0xffffffff;\n        goto LAB_0002d318;\n      }\n      iVar24 = xfer_download_data(*(undefined4 *)(iVar2 + -0x3244),unaff_s3,unaff_s4);\n      if (iVar24 != 0) {\n        safefree(uStack_6c);\n      }\n    }" while (parenthesized_expression "(iVar24 = xfer_done(*(undefined4 *)(iVar2 + -0x3244)), iVar24 == 0)" ( (comma_expression "iVar24 = xfer_done(*(undefined4 *)(iVar2 + -0x3244)), iVar24 == 0" (assignment_expression "iVar24 = xfer_done(*(undefined4 *)(iVar2 + -0x3244))" identifier = (call_expression "xfer_done(*(undefined4 *)(iVar2 + -0x3244))" identifier (argument_list "(*(undefined4 *)(iVar2 + -0x3244))" ( (pointer_expression "*(undefined4 *)(iVar2 + -0x3244)" * (cast_expression "(undefined4 *)(iVar2 + -0x3244)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + -0x3244)" ( (binary_expression "iVar2 + -0x3244" identifier + number_literal) )))) )))) , (binary_expression "iVar24 == 0" identifier == number_literal)) )) (compound_statement "{\n      param_1 = (undefined *)sftp_recv();\n      puVar1 = (undefined *)xfer_download_gotpkt(*(undefined4 *)(iVar2 + -0x3244),param_1);\n      if ((int)puVar1 < 1) {\n        param_2 = (undefined *)**(undefined4 **)(puVar5 + 0x8fa5c);\n        uVar7 = fxp_error();\n        puVar14 = (undefined *)(*(int *)(puVar5 + 0x8eef4) + -0x4abc);\n        FUN_00027ff8(param_2,puVar14,uVar7);\n        if (puVar1 == (undefined *)0x80000000) {\n          safefree(param_1);\n          iVar2 = *(int *)(puVar5 + 0x8eee4);\n        }\n        else {\n          iVar2 = *(int *)(puVar5 + 0x8eee4);\n        }\n        *(int *)(iVar2 + -0x31e0) = *(int *)(iVar2 + -0x31e0) + 1;\n        uVar3 = 0xffffffff;\n        goto LAB_0002d318;\n      }\n      iVar24 = xfer_download_data(*(undefined4 *)(iVar2 + -0x3244),unaff_s3,unaff_s4);\n      if (iVar24 != 0) {\n        safefree(uStack_6c);\n      }\n    }" { (expression_statement "param_1 = (undefined *)sftp_recv();" (assignment_expression "param_1 = (undefined *)sftp_recv()" identifier = (cast_expression "(undefined *)sftp_recv()" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "sftp_recv()" identifier (argument_list "()" ( ))))) ;) (expression_statement "puVar1 = (undefined *)xfer_download_gotpkt(*(undefined4 *)(iVar2 + -0x3244),param_1);" (assignment_expression "puVar1 = (undefined *)xfer_download_gotpkt(*(undefined4 *)(iVar2 + -0x3244),param_1)" identifier = (cast_expression "(undefined *)xfer_download_gotpkt(*(undefined4 *)(iVar2 + -0x3244),param_1)" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "xfer_download_gotpkt(*(undefined4 *)(iVar2 + -0x3244),param_1)" identifier (argument_list "(*(undefined4 *)(iVar2 + -0x3244),param_1)" ( (pointer_expression "*(undefined4 *)(iVar2 + -0x3244)" * (cast_expression "(undefined4 *)(iVar2 + -0x3244)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + -0x3244)" ( (binary_expression "iVar2 + -0x3244" identifier + number_literal) )))) , identifier ))))) ;) (if_statement "if ((int)puVar1 < 1) {\n        param_2 = (undefined *)**(undefined4 **)(puVar5 + 0x8fa5c);\n        uVar7 = fxp_error();\n        puVar14 = (undefined *)(*(int *)(puVar5 + 0x8eef4) + -0x4abc);\n        FUN_00027ff8(param_2,puVar14,uVar7);\n        if (puVar1 == (undefined *)0x80000000) {\n          safefree(param_1);\n          iVar2 = *(int *)(puVar5 + 0x8eee4);\n        }\n        else {\n          iVar2 = *(int *)(puVar5 + 0x8eee4);\n        }\n        *(int *)(iVar2 + -0x31e0) = *(int *)(iVar2 + -0x31e0) + 1;\n        uVar3 = 0xffffffff;\n        goto LAB_0002d318;\n      }" if (parenthesized_expression "((int)puVar1 < 1)" ( (binary_expression "(int)puVar1 < 1" (cast_expression "(int)puVar1" ( (type_descriptor "int" primitive_type) ) identifier) < number_literal) )) (compound_statement "{\n        param_2 = (undefined *)**(undefined4 **)(puVar5 + 0x8fa5c);\n        uVar7 = fxp_error();\n        puVar14 = (undefined *)(*(int *)(puVar5 + 0x8eef4) + -0x4abc);\n        FUN_00027ff8(param_2,puVar14,uVar7);\n        if (puVar1 == (undefined *)0x80000000) {\n          safefree(param_1);\n          iVar2 = *(int *)(puVar5 + 0x8eee4);\n        }\n        else {\n          iVar2 = *(int *)(puVar5 + 0x8eee4);\n        }\n        *(int *)(iVar2 + -0x31e0) = *(int *)(iVar2 + -0x31e0) + 1;\n        uVar3 = 0xffffffff;\n        goto LAB_0002d318;\n      }" { (expression_statement "param_2 = (undefined *)**(undefined4 **)(puVar5 + 0x8fa5c);" (assignment_expression "param_2 = (undefined *)**(undefined4 **)(puVar5 + 0x8fa5c)" identifier = (cast_expression "(undefined *)**(undefined4 **)(puVar5 + 0x8fa5c)" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "**(undefined4 **)(puVar5 + 0x8fa5c)" * (pointer_expression "*(undefined4 **)(puVar5 + 0x8fa5c)" * (cast_expression "(undefined4 **)(puVar5 + 0x8fa5c)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar5 + 0x8fa5c)" ( (binary_expression "puVar5 + 0x8fa5c" identifier + number_literal) ))))))) ;) (expression_statement "uVar7 = fxp_error();" (assignment_expression "uVar7 = fxp_error()" identifier = (call_expression "fxp_error()" identifier (argument_list "()" ( )))) ;) (expression_statement "puVar14 = (undefined *)(*(int *)(puVar5 + 0x8eef4) + -0x4abc);" (assignment_expression "puVar14 = (undefined *)(*(int *)(puVar5 + 0x8eef4) + -0x4abc)" identifier = (cast_expression "(undefined *)(*(int *)(puVar5 + 0x8eef4) + -0x4abc)" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(puVar5 + 0x8eef4) + -0x4abc)" ( (binary_expression "*(int *)(puVar5 + 0x8eef4) + -0x4abc" (pointer_expression "*(int *)(puVar5 + 0x8eef4)" * (cast_expression "(int *)(puVar5 + 0x8eef4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar5 + 0x8eef4)" ( (binary_expression "puVar5 + 0x8eef4" identifier + number_literal) )))) + number_literal) )))) ;) (expression_statement "FUN_00027ff8(param_2,puVar14,uVar7);" (call_expression "FUN_00027ff8(param_2,puVar14,uVar7)" identifier (argument_list "(param_2,puVar14,uVar7)" ( identifier , identifier , identifier ))) ;) (if_statement "if (puVar1 == (undefined *)0x80000000) {\n          safefree(param_1);\n          iVar2 = *(int *)(puVar5 + 0x8eee4);\n        }\n        else {\n          iVar2 = *(int *)(puVar5 + 0x8eee4);\n        }" if (parenthesized_expression "(puVar1 == (undefined *)0x80000000)" ( (binary_expression "puVar1 == (undefined *)0x80000000" identifier == (cast_expression "(undefined *)0x80000000" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n          safefree(param_1);\n          iVar2 = *(int *)(puVar5 + 0x8eee4);\n        }" { (expression_statement "safefree(param_1);" (call_expression "safefree(param_1)" identifier (argument_list "(param_1)" ( identifier ))) ;) (expression_statement "iVar2 = *(int *)(puVar5 + 0x8eee4);" (assignment_expression "iVar2 = *(int *)(puVar5 + 0x8eee4)" identifier = (pointer_expression "*(int *)(puVar5 + 0x8eee4)" * (cast_expression "(int *)(puVar5 + 0x8eee4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar5 + 0x8eee4)" ( (binary_expression "puVar5 + 0x8eee4" identifier + number_literal) ))))) ;) }) (else_clause "else {\n          iVar2 = *(int *)(puVar5 + 0x8eee4);\n        }" else (compound_statement "{\n          iVar2 = *(int *)(puVar5 + 0x8eee4);\n        }" { (expression_statement "iVar2 = *(int *)(puVar5 + 0x8eee4);" (assignment_expression "iVar2 = *(int *)(puVar5 + 0x8eee4)" identifier = (pointer_expression "*(int *)(puVar5 + 0x8eee4)" * (cast_expression "(int *)(puVar5 + 0x8eee4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar5 + 0x8eee4)" ( (binary_expression "puVar5 + 0x8eee4" identifier + number_literal) ))))) ;) }))) (expression_statement "*(int *)(iVar2 + -0x31e0) = *(int *)(iVar2 + -0x31e0) + 1;" (assignment_expression "*(int *)(iVar2 + -0x31e0) = *(int *)(iVar2 + -0x31e0) + 1" (pointer_expression "*(int *)(iVar2 + -0x31e0)" * (cast_expression "(int *)(iVar2 + -0x31e0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + -0x31e0)" ( (binary_expression "iVar2 + -0x31e0" identifier + number_literal) )))) = (binary_expression "*(int *)(iVar2 + -0x31e0) + 1" (pointer_expression "*(int *)(iVar2 + -0x31e0)" * (cast_expression "(int *)(iVar2 + -0x31e0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + -0x31e0)" ( (binary_expression "iVar2 + -0x31e0" identifier + number_literal) )))) + number_literal)) ;) (expression_statement "uVar3 = 0xffffffff;" (assignment_expression "uVar3 = 0xffffffff" identifier = number_literal) ;) (goto_statement "goto LAB_0002d318;" goto statement_identifier ;) })) (expression_statement "iVar24 = xfer_download_data(*(undefined4 *)(iVar2 + -0x3244),unaff_s3,unaff_s4);" (assignment_expression "iVar24 = xfer_download_data(*(undefined4 *)(iVar2 + -0x3244),unaff_s3,unaff_s4)" identifier = (call_expression "xfer_download_data(*(undefined4 *)(iVar2 + -0x3244),unaff_s3,unaff_s4)" identifier (argument_list "(*(undefined4 *)(iVar2 + -0x3244),unaff_s3,unaff_s4)" ( (pointer_expression "*(undefined4 *)(iVar2 + -0x3244)" * (cast_expression "(undefined4 *)(iVar2 + -0x3244)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + -0x3244)" ( (binary_expression "iVar2 + -0x3244" identifier + number_literal) )))) , identifier , identifier )))) ;) (if_statement "if (iVar24 != 0) {\n        safefree(uStack_6c);\n      }" if (parenthesized_expression "(iVar24 != 0)" ( (binary_expression "iVar24 != 0" identifier != number_literal) )) (compound_statement "{\n        safefree(uStack_6c);\n      }" { (expression_statement "safefree(uStack_6c);" (call_expression "safefree(uStack_6c)" identifier (argument_list "(uStack_6c)" ( identifier ))) ;) })) })) (expression_statement "xfer_cleanup(*(undefined4 *)(*(int *)(puVar5 + 0x8eee4) + -0x3244));" (call_expression "xfer_cleanup(*(undefined4 *)(*(int *)(puVar5 + 0x8eee4) + -0x3244))" identifier (argument_list "(*(undefined4 *)(*(int *)(puVar5 + 0x8eee4) + -0x3244))" ( (pointer_expression "*(undefined4 *)(*(int *)(puVar5 + 0x8eee4) + -0x3244)" * (cast_expression "(undefined4 *)(*(int *)(puVar5 + 0x8eee4) + -0x3244)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(puVar5 + 0x8eee4) + -0x3244)" ( (binary_expression "*(int *)(puVar5 + 0x8eee4) + -0x3244" (pointer_expression "*(int *)(puVar5 + 0x8eee4)" * (cast_expression "(int *)(puVar5 + 0x8eee4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar5 + 0x8eee4)" ( (binary_expression "puVar5 + 0x8eee4" identifier + number_literal) )))) + number_literal) )))) ))) ;) (expression_statement "param_2 = (undefined *)fxp_close_send(*(undefined4 *)(*(int *)(puVar5 + 0x8eee4) + -0x3240));" (assignment_expression "param_2 = (undefined *)fxp_close_send(*(undefined4 *)(*(int *)(puVar5 + 0x8eee4) + -0x3240))" identifier = (cast_expression "(undefined *)fxp_close_send(*(undefined4 *)(*(int *)(puVar5 + 0x8eee4) + -0x3240))" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "fxp_close_send(*(undefined4 *)(*(int *)(puVar5 + 0x8eee4) + -0x3240))" identifier (argument_list "(*(undefined4 *)(*(int *)(puVar5 + 0x8eee4) + -0x3240))" ( (pointer_expression "*(undefined4 *)(*(int *)(puVar5 + 0x8eee4) + -0x3240)" * (cast_expression "(undefined4 *)(*(int *)(puVar5 + 0x8eee4) + -0x3240)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(puVar5 + 0x8eee4) + -0x3240)" ( (binary_expression "*(int *)(puVar5 + 0x8eee4) + -0x3240" (pointer_expression "*(int *)(puVar5 + 0x8eee4)" * (cast_expression "(int *)(puVar5 + 0x8eee4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar5 + 0x8eee4)" ( (binary_expression "puVar5 + 0x8eee4" identifier + number_literal) )))) + number_literal) )))) ))))) ;) (expression_statement "uVar7 = sftp_wait_for_reply(param_2);" (assignment_expression "uVar7 = sftp_wait_for_reply(param_2)" identifier = (call_expression "sftp_wait_for_reply(param_2)" identifier (argument_list "(param_2)" ( identifier )))) ;) (expression_statement "puVar14 = param_2;" (assignment_expression "puVar14 = param_2" identifier = identifier) ;) (expression_statement "fxp_close_recv(uVar7);" (call_expression "fxp_close_recv(uVar7)" identifier (argument_list "(uVar7)" ( identifier ))) ;) (expression_statement "uVar3 = 0;" (assignment_expression "uVar3 = 0" identifier = number_literal) ;) }))) (labeled_statement "LAB_0002d318:\n  if (pcStack_64 == (char *)**(undefined4 **)(puVar5 + 0x8fa44)) {\n    return uVar3;\n  }" statement_identifier : (if_statement "if (pcStack_64 == (char *)**(undefined4 **)(puVar5 + 0x8fa44)) {\n    return uVar3;\n  }" if (parenthesized_expression "(pcStack_64 == (char *)**(undefined4 **)(puVar5 + 0x8fa44))" ( (binary_expression "pcStack_64 == (char *)**(undefined4 **)(puVar5 + 0x8fa44)" identifier == (cast_expression "(char *)**(undefined4 **)(puVar5 + 0x8fa44)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "**(undefined4 **)(puVar5 + 0x8fa44)" * (pointer_expression "*(undefined4 **)(puVar5 + 0x8fa44)" * (cast_expression "(undefined4 **)(puVar5 + 0x8fa44)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar5 + 0x8fa44)" ( (binary_expression "puVar5 + 0x8fa44" identifier + number_literal) ))))))) )) (compound_statement "{\n    return uVar3;\n  }" { (return_statement "return uVar3;" return identifier ;) }))) (expression_statement "pcVar28 = *(code **)(puVar5 + 0x8fa1c);" (assignment_expression "pcVar28 = *(code **)(puVar5 + 0x8fa1c)" identifier = (pointer_expression "*(code **)(puVar5 + 0x8fa1c)" * (cast_expression "(code **)(puVar5 + 0x8fa1c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar5 + 0x8fa1c)" ( (binary_expression "puVar5 + 0x8fa1c" identifier + number_literal) ))))) ;) (expression_statement "pcVar13 = pcStack_64;" (assignment_expression "pcVar13 = pcStack_64" identifier = identifier) ;) (expression_statement "(*pcVar28)();" (call_expression "(*pcVar28)()" (parenthesized_expression "(*pcVar28)" ( (pointer_expression "*pcVar28" * identifier) )) (argument_list "()" ( ))) ;) (expression_statement "pcStack_8138 = pcVar28 + 0x96c70;" (assignment_expression "pcStack_8138 = pcVar28 + 0x96c70" identifier = (binary_expression "pcVar28 + 0x96c70" identifier + number_literal)) ;) (expression_statement "uStack_b4 = **(uint **)(pcVar28 + 0x8f7f8);" (assignment_expression "uStack_b4 = **(uint **)(pcVar28 + 0x8f7f8)" identifier = (pointer_expression "**(uint **)(pcVar28 + 0x8f7f8)" * (pointer_expression "*(uint **)(pcVar28 + 0x8f7f8)" * (cast_expression "(uint **)(pcVar28 + 0x8f7f8)" ( (type_descriptor "uint **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar28 + 0x8f7f8)" ( (binary_expression "pcVar28 + 0x8f7f8" identifier + number_literal) )))))) ;) (expression_statement "pcStack_812c = pcVar13;" (assignment_expression "pcStack_812c = pcVar13" identifier = identifier) ;) (expression_statement "puStack_8118 = puVar14;" (assignment_expression "puStack_8118 = puVar14" identifier = identifier) ;) (expression_statement "puStack_b0 = param_2;" (assignment_expression "puStack_b0 = param_2" identifier = identifier) ;) (expression_statement "puStack_ac = puVar1;" (assignment_expression "puStack_ac = puVar1" identifier = identifier) ;) (expression_statement "puStack_a8 = param_1;" (assignment_expression "puStack_a8 = param_1" identifier = identifier) ;) (expression_statement "puStack_a4 = unaff_s3;" (assignment_expression "puStack_a4 = unaff_s3" identifier = identifier) ;) (expression_statement "puStack_a0 = unaff_s4;" (assignment_expression "puStack_a0 = unaff_s4" identifier = identifier) ;) (expression_statement "iVar2 = (**(code **)(pcVar28 + 0x8ef84))();" (assignment_expression "iVar2 = (**(code **)(pcVar28 + 0x8ef84))()" identifier = (call_expression "(**(code **)(pcVar28 + 0x8ef84))()" (parenthesized_expression "(**(code **)(pcVar28 + 0x8ef84))" ( (pointer_expression "**(code **)(pcVar28 + 0x8ef84)" * (pointer_expression "*(code **)(pcVar28 + 0x8ef84)" * (cast_expression "(code **)(pcVar28 + 0x8ef84)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar28 + 0x8ef84)" ( (binary_expression "pcVar28 + 0x8ef84" identifier + number_literal) ))))) )) (argument_list "()" ( )))) ;) (if_statement "if ((*(int *)(*(int *)(pcStack_8138 + -0x7fd8) + -0x31d4) != 0) && (iVar2 != 2)) {\n    FUN_00028270(*(int *)(pcStack_8138 + -0x7fc8) + -0x4a68,pcStack_812c);\n  }" if (parenthesized_expression "((*(int *)(*(int *)(pcStack_8138 + -0x7fd8) + -0x31d4) != 0) && (iVar2 != 2))" ( (binary_expression "(*(int *)(*(int *)(pcStack_8138 + -0x7fd8) + -0x31d4) != 0) && (iVar2 != 2)" (parenthesized_expression "(*(int *)(*(int *)(pcStack_8138 + -0x7fd8) + -0x31d4) != 0)" ( (binary_expression "*(int *)(*(int *)(pcStack_8138 + -0x7fd8) + -0x31d4) != 0" (pointer_expression "*(int *)(*(int *)(pcStack_8138 + -0x7fd8) + -0x31d4)" * (cast_expression "(int *)(*(int *)(pcStack_8138 + -0x7fd8) + -0x31d4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcStack_8138 + -0x7fd8) + -0x31d4)" ( (binary_expression "*(int *)(pcStack_8138 + -0x7fd8) + -0x31d4" (pointer_expression "*(int *)(pcStack_8138 + -0x7fd8)" * (cast_expression "(int *)(pcStack_8138 + -0x7fd8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_8138 + -0x7fd8)" ( (binary_expression "pcStack_8138 + -0x7fd8" identifier + number_literal) )))) + number_literal) )))) != number_literal) )) && (parenthesized_expression "(iVar2 != 2)" ( (binary_expression "iVar2 != 2" identifier != number_literal) ))) )) (compound_statement "{\n    FUN_00028270(*(int *)(pcStack_8138 + -0x7fc8) + -0x4a68,pcStack_812c);\n  }" { (expression_statement "FUN_00028270(*(int *)(pcStack_8138 + -0x7fc8) + -0x4a68,pcStack_812c);" (call_expression "FUN_00028270(*(int *)(pcStack_8138 + -0x7fc8) + -0x4a68,pcStack_812c)" identifier (argument_list "(*(int *)(pcStack_8138 + -0x7fc8) + -0x4a68,pcStack_812c)" ( (binary_expression "*(int *)(pcStack_8138 + -0x7fc8) + -0x4a68" (pointer_expression "*(int *)(pcStack_8138 + -0x7fc8)" * (cast_expression "(int *)(pcStack_8138 + -0x7fc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_8138 + -0x7fc8)" ( (binary_expression "pcStack_8138 + -0x7fc8" identifier + number_literal) )))) + number_literal) , identifier ))) ;) })) (expression_statement "scp_sink_init();" (call_expression "scp_sink_init()" identifier (argument_list "()" ( ))) ;) (expression_statement "iVar24 = 0;" (assignment_expression "iVar24 = 0" identifier = number_literal) ;) (expression_statement "pcStack_8128 = (code *)(*(int *)(pcStack_8138 + -0x7db0) + -0x7d90);" (assignment_expression "pcStack_8128 = (code *)(*(int *)(pcStack_8138 + -0x7db0) + -0x7d90)" identifier = (cast_expression "(code *)(*(int *)(pcStack_8138 + -0x7db0) + -0x7d90)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcStack_8138 + -0x7db0) + -0x7d90)" ( (binary_expression "*(int *)(pcStack_8138 + -0x7db0) + -0x7d90" (pointer_expression "*(int *)(pcStack_8138 + -0x7db0)" * (cast_expression "(int *)(pcStack_8138 + -0x7db0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_8138 + -0x7db0)" ( (binary_expression "pcStack_8138 + -0x7db0" identifier + number_literal) )))) + number_literal) )))) ;) (expression_statement "pcStack_810c = (code *)(*(int *)(pcStack_8138 + -0x7db0) + -0x6cb8);" (assignment_expression "pcStack_810c = (code *)(*(int *)(pcStack_8138 + -0x7db0) + -0x6cb8)" identifier = (cast_expression "(code *)(*(int *)(pcStack_8138 + -0x7db0) + -0x6cb8)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcStack_8138 + -0x7db0) + -0x6cb8)" ( (binary_expression "*(int *)(pcStack_8138 + -0x7db0) + -0x6cb8" (pointer_expression "*(int *)(pcStack_8138 + -0x7db0)" * (cast_expression "(int *)(pcStack_8138 + -0x7db0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_8138 + -0x7db0)" ( (binary_expression "pcStack_8138 + -0x7db0" identifier + number_literal) )))) + number_literal) )))) ;) (expression_statement "iStack_8110 = *(int *)(pcStack_8138 + -0x7fc8) + -0x4878;" (assignment_expression "iStack_8110 = *(int *)(pcStack_8138 + -0x7fc8) + -0x4878" identifier = (binary_expression "*(int *)(pcStack_8138 + -0x7fc8) + -0x4878" (pointer_expression "*(int *)(pcStack_8138 + -0x7fc8)" * (cast_expression "(int *)(pcStack_8138 + -0x7fc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_8138 + -0x7fc8)" ( (binary_expression "pcStack_8138 + -0x7fc8" identifier + number_literal) )))) + number_literal)) ;) (labeled_statement "LAB_0002d77c:\n  do {\n    iVar4 = scp_get_sink_action(&iStack_80d8);\n    if ((iVar4 != 0) || (iStack_80d8 == 3)) goto LAB_0002da64;\n  } while (iStack_80d8 == 4);" statement_identifier : (do_statement "do {\n    iVar4 = scp_get_sink_action(&iStack_80d8);\n    if ((iVar4 != 0) || (iStack_80d8 == 3)) goto LAB_0002da64;\n  } while (iStack_80d8 == 4);" do (compound_statement "{\n    iVar4 = scp_get_sink_action(&iStack_80d8);\n    if ((iVar4 != 0) || (iStack_80d8 == 3)) goto LAB_0002da64;\n  }" { (expression_statement "iVar4 = scp_get_sink_action(&iStack_80d8);" (assignment_expression "iVar4 = scp_get_sink_action(&iStack_80d8)" identifier = (call_expression "scp_get_sink_action(&iStack_80d8)" identifier (argument_list "(&iStack_80d8)" ( (pointer_expression "&iStack_80d8" & identifier) )))) ;) (if_statement "if ((iVar4 != 0) || (iStack_80d8 == 3)) goto LAB_0002da64;" if (parenthesized_expression "((iVar4 != 0) || (iStack_80d8 == 3))" ( (binary_expression "(iVar4 != 0) || (iStack_80d8 == 3)" (parenthesized_expression "(iVar4 != 0)" ( (binary_expression "iVar4 != 0" identifier != number_literal) )) || (parenthesized_expression "(iStack_80d8 == 3)" ( (binary_expression "iStack_80d8 == 3" identifier == number_literal) ))) )) (goto_statement "goto LAB_0002da64;" goto statement_identifier ;)) }) while (parenthesized_expression "(iStack_80d8 == 4)" ( (binary_expression "iStack_80d8 == 4" identifier == number_literal) )) ;)) (if_statement "if (iVar2 == 2) {\n    param_1 = auStack_100b0;\n    puVar1 = (undefined *)(**(code **)(pcStack_8138 + -0x7cac))(puStack_80d0,1);\n    if (puStack_80d0 != puVar1) {\n      puVar23 = *(undefined4 **)(pcStack_8138 + -0x7460);\n      param_1 = (undefined *)(*(int *)(pcStack_8138 + -0x7fcc) + 0x7ff8);\n      FUN_00027ff8(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x4a54);\n      FUN_00027ff8(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x4a20,puVar1);\n    }\n    iVar4 = (**(code **)(pcStack_8138 + -0x7640))(puVar1,*(int *)(pcStack_8138 + -0x7fc8) + -0x48b0)\n    ;\n    if (puVar1[iVar4] == '\0') {\n      (*pcStack_8128)(*(int *)(pcStack_8138 + -0x7fc8) + -0x49f8);\n    }\n    if (puStack_8118 != (undefined *)0x0) {\n      param_1 = (undefined *)(**(code **)(pcStack_8138 + -0x7cac))(puStack_8118,1);\n      iVar4 = (**(code **)(pcStack_8138 + -0x743c))(puVar1,param_1);\n      if ((iVar4 != 0) &&\n         (puVar23 = *(undefined4 **)(pcStack_8138 + -0x7460),\n         *(int *)(*(int *)(pcStack_8138 + -0x7fd8) + -0x31ec) == 0 &&\n         *(int *)(*(int *)(pcStack_8138 + -0x7fd8) + -0x31dc) == 0)) {\n        FUN_00027ff8(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x49ac,puVar1);\n        FUN_00027ff8(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x4970,param_1);\n        FUN_00027ff8(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x4940);\n        FUN_00027ff8(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x48f8);\n        puVar1 = param_1;\n      }\n    }\n    if (*pcStack_812c == '\0') {\n      unaff_s3 = (undefined4 *)dupstr(puVar1);\n    }\n    else {\n      unaff_s3 = (undefined4 *)(**(code **)(pcStack_8138 + -0x7c78))(pcStack_812c,puVar1);\n    }\n  }\n  else {\n    unaff_s3 = (undefined4 *)dupstr(pcStack_812c);\n  }" if (parenthesized_expression "(iVar2 == 2)" ( (binary_expression "iVar2 == 2" identifier == number_literal) )) (compound_statement "{\n    param_1 = auStack_100b0;\n    puVar1 = (undefined *)(**(code **)(pcStack_8138 + -0x7cac))(puStack_80d0,1);\n    if (puStack_80d0 != puVar1) {\n      puVar23 = *(undefined4 **)(pcStack_8138 + -0x7460);\n      param_1 = (undefined *)(*(int *)(pcStack_8138 + -0x7fcc) + 0x7ff8);\n      FUN_00027ff8(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x4a54);\n      FUN_00027ff8(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x4a20,puVar1);\n    }\n    iVar4 = (**(code **)(pcStack_8138 + -0x7640))(puVar1,*(int *)(pcStack_8138 + -0x7fc8) + -0x48b0)\n    ;\n    if (puVar1[iVar4] == '\0') {\n      (*pcStack_8128)(*(int *)(pcStack_8138 + -0x7fc8) + -0x49f8);\n    }\n    if (puStack_8118 != (undefined *)0x0) {\n      param_1 = (undefined *)(**(code **)(pcStack_8138 + -0x7cac))(puStack_8118,1);\n      iVar4 = (**(code **)(pcStack_8138 + -0x743c))(puVar1,param_1);\n      if ((iVar4 != 0) &&\n         (puVar23 = *(undefined4 **)(pcStack_8138 + -0x7460),\n         *(int *)(*(int *)(pcStack_8138 + -0x7fd8) + -0x31ec) == 0 &&\n         *(int *)(*(int *)(pcStack_8138 + -0x7fd8) + -0x31dc) == 0)) {\n        FUN_00027ff8(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x49ac,puVar1);\n        FUN_00027ff8(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x4970,param_1);\n        FUN_00027ff8(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x4940);\n        FUN_00027ff8(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x48f8);\n        puVar1 = param_1;\n      }\n    }\n    if (*pcStack_812c == '\0') {\n      unaff_s3 = (undefined4 *)dupstr(puVar1);\n    }\n    else {\n      unaff_s3 = (undefined4 *)(**(code **)(pcStack_8138 + -0x7c78))(pcStack_812c,puVar1);\n    }\n  }" { (expression_statement "param_1 = auStack_100b0;" (assignment_expression "param_1 = auStack_100b0" identifier = identifier) ;) (expression_statement "puVar1 = (undefined *)(**(code **)(pcStack_8138 + -0x7cac))(puStack_80d0,1);" (assignment_expression "puVar1 = (undefined *)(**(code **)(pcStack_8138 + -0x7cac))(puStack_80d0,1)" identifier = (cast_expression "(undefined *)(**(code **)(pcStack_8138 + -0x7cac))(puStack_80d0,1)" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(**(code **)(pcStack_8138 + -0x7cac))(puStack_80d0,1)" (parenthesized_expression "(**(code **)(pcStack_8138 + -0x7cac))" ( (pointer_expression "**(code **)(pcStack_8138 + -0x7cac)" * (pointer_expression "*(code **)(pcStack_8138 + -0x7cac)" * (cast_expression "(code **)(pcStack_8138 + -0x7cac)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_8138 + -0x7cac)" ( (binary_expression "pcStack_8138 + -0x7cac" identifier + number_literal) ))))) )) (argument_list "(puStack_80d0,1)" ( identifier , number_literal ))))) ;) (if_statement "if (puStack_80d0 != puVar1) {\n      puVar23 = *(undefined4 **)(pcStack_8138 + -0x7460);\n      param_1 = (undefined *)(*(int *)(pcStack_8138 + -0x7fcc) + 0x7ff8);\n      FUN_00027ff8(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x4a54);\n      FUN_00027ff8(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x4a20,puVar1);\n    }" if (parenthesized_expression "(puStack_80d0 != puVar1)" ( (binary_expression "puStack_80d0 != puVar1" identifier != identifier) )) (compound_statement "{\n      puVar23 = *(undefined4 **)(pcStack_8138 + -0x7460);\n      param_1 = (undefined *)(*(int *)(pcStack_8138 + -0x7fcc) + 0x7ff8);\n      FUN_00027ff8(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x4a54);\n      FUN_00027ff8(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x4a20,puVar1);\n    }" { (expression_statement "puVar23 = *(undefined4 **)(pcStack_8138 + -0x7460);" (assignment_expression "puVar23 = *(undefined4 **)(pcStack_8138 + -0x7460)" identifier = (pointer_expression "*(undefined4 **)(pcStack_8138 + -0x7460)" * (cast_expression "(undefined4 **)(pcStack_8138 + -0x7460)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_8138 + -0x7460)" ( (binary_expression "pcStack_8138 + -0x7460" identifier + number_literal) ))))) ;) (expression_statement "param_1 = (undefined *)(*(int *)(pcStack_8138 + -0x7fcc) + 0x7ff8);" (assignment_expression "param_1 = (undefined *)(*(int *)(pcStack_8138 + -0x7fcc) + 0x7ff8)" identifier = (cast_expression "(undefined *)(*(int *)(pcStack_8138 + -0x7fcc) + 0x7ff8)" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcStack_8138 + -0x7fcc) + 0x7ff8)" ( (binary_expression "*(int *)(pcStack_8138 + -0x7fcc) + 0x7ff8" (pointer_expression "*(int *)(pcStack_8138 + -0x7fcc)" * (cast_expression "(int *)(pcStack_8138 + -0x7fcc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_8138 + -0x7fcc)" ( (binary_expression "pcStack_8138 + -0x7fcc" identifier + number_literal) )))) + number_literal) )))) ;) (expression_statement "FUN_00027ff8(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x4a54);" (call_expression "FUN_00027ff8(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x4a54)" identifier (argument_list "(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x4a54)" ( (pointer_expression "*puVar23" * identifier) , (binary_expression "*(int *)(pcStack_8138 + -0x7fc8) + -0x4a54" (pointer_expression "*(int *)(pcStack_8138 + -0x7fc8)" * (cast_expression "(int *)(pcStack_8138 + -0x7fc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_8138 + -0x7fc8)" ( (binary_expression "pcStack_8138 + -0x7fc8" identifier + number_literal) )))) + number_literal) ))) ;) (expression_statement "FUN_00027ff8(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x4a20,puVar1);" (call_expression "FUN_00027ff8(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x4a20,puVar1)" identifier (argument_list "(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x4a20,puVar1)" ( (pointer_expression "*puVar23" * identifier) , (binary_expression "*(int *)(pcStack_8138 + -0x7fc8) + -0x4a20" (pointer_expression "*(int *)(pcStack_8138 + -0x7fc8)" * (cast_expression "(int *)(pcStack_8138 + -0x7fc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_8138 + -0x7fc8)" ( (binary_expression "pcStack_8138 + -0x7fc8" identifier + number_literal) )))) + number_literal) , identifier ))) ;) })) (expression_statement "iVar4 = (**(code **)(pcStack_8138 + -0x7640))(puVar1,*(int *)(pcStack_8138 + -0x7fc8) + -0x48b0)\n    ;" (assignment_expression "iVar4 = (**(code **)(pcStack_8138 + -0x7640))(puVar1,*(int *)(pcStack_8138 + -0x7fc8) + -0x48b0)" identifier = (call_expression "(**(code **)(pcStack_8138 + -0x7640))(puVar1,*(int *)(pcStack_8138 + -0x7fc8) + -0x48b0)" (parenthesized_expression "(**(code **)(pcStack_8138 + -0x7640))" ( (pointer_expression "**(code **)(pcStack_8138 + -0x7640)" * (pointer_expression "*(code **)(pcStack_8138 + -0x7640)" * (cast_expression "(code **)(pcStack_8138 + -0x7640)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_8138 + -0x7640)" ( (binary_expression "pcStack_8138 + -0x7640" identifier + number_literal) ))))) )) (argument_list "(puVar1,*(int *)(pcStack_8138 + -0x7fc8) + -0x48b0)" ( identifier , (binary_expression "*(int *)(pcStack_8138 + -0x7fc8) + -0x48b0" (pointer_expression "*(int *)(pcStack_8138 + -0x7fc8)" * (cast_expression "(int *)(pcStack_8138 + -0x7fc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_8138 + -0x7fc8)" ( (binary_expression "pcStack_8138 + -0x7fc8" identifier + number_literal) )))) + number_literal) )))) ;) (if_statement "if (puVar1[iVar4] == '\0') {\n      (*pcStack_8128)(*(int *)(pcStack_8138 + -0x7fc8) + -0x49f8);\n    }" if (parenthesized_expression "(puVar1[iVar4] == '\0')" ( (binary_expression "puVar1[iVar4] == '\0'" (subscript_expression "puVar1[iVar4]" identifier [ identifier ]) == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n      (*pcStack_8128)(*(int *)(pcStack_8138 + -0x7fc8) + -0x49f8);\n    }" { (expression_statement "(*pcStack_8128)(*(int *)(pcStack_8138 + -0x7fc8) + -0x49f8);" (call_expression "(*pcStack_8128)(*(int *)(pcStack_8138 + -0x7fc8) + -0x49f8)" (parenthesized_expression "(*pcStack_8128)" ( (pointer_expression "*pcStack_8128" * identifier) )) (argument_list "(*(int *)(pcStack_8138 + -0x7fc8) + -0x49f8)" ( (binary_expression "*(int *)(pcStack_8138 + -0x7fc8) + -0x49f8" (pointer_expression "*(int *)(pcStack_8138 + -0x7fc8)" * (cast_expression "(int *)(pcStack_8138 + -0x7fc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_8138 + -0x7fc8)" ( (binary_expression "pcStack_8138 + -0x7fc8" identifier + number_literal) )))) + number_literal) ))) ;) })) (if_statement "if (puStack_8118 != (undefined *)0x0) {\n      param_1 = (undefined *)(**(code **)(pcStack_8138 + -0x7cac))(puStack_8118,1);\n      iVar4 = (**(code **)(pcStack_8138 + -0x743c))(puVar1,param_1);\n      if ((iVar4 != 0) &&\n         (puVar23 = *(undefined4 **)(pcStack_8138 + -0x7460),\n         *(int *)(*(int *)(pcStack_8138 + -0x7fd8) + -0x31ec) == 0 &&\n         *(int *)(*(int *)(pcStack_8138 + -0x7fd8) + -0x31dc) == 0)) {\n        FUN_00027ff8(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x49ac,puVar1);\n        FUN_00027ff8(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x4970,param_1);\n        FUN_00027ff8(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x4940);\n        FUN_00027ff8(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x48f8);\n        puVar1 = param_1;\n      }\n    }" if (parenthesized_expression "(puStack_8118 != (undefined *)0x0)" ( (binary_expression "puStack_8118 != (undefined *)0x0" identifier != (cast_expression "(undefined *)0x0" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n      param_1 = (undefined *)(**(code **)(pcStack_8138 + -0x7cac))(puStack_8118,1);\n      iVar4 = (**(code **)(pcStack_8138 + -0x743c))(puVar1,param_1);\n      if ((iVar4 != 0) &&\n         (puVar23 = *(undefined4 **)(pcStack_8138 + -0x7460),\n         *(int *)(*(int *)(pcStack_8138 + -0x7fd8) + -0x31ec) == 0 &&\n         *(int *)(*(int *)(pcStack_8138 + -0x7fd8) + -0x31dc) == 0)) {\n        FUN_00027ff8(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x49ac,puVar1);\n        FUN_00027ff8(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x4970,param_1);\n        FUN_00027ff8(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x4940);\n        FUN_00027ff8(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x48f8);\n        puVar1 = param_1;\n      }\n    }" { (expression_statement "param_1 = (undefined *)(**(code **)(pcStack_8138 + -0x7cac))(puStack_8118,1);" (assignment_expression "param_1 = (undefined *)(**(code **)(pcStack_8138 + -0x7cac))(puStack_8118,1)" identifier = (cast_expression "(undefined *)(**(code **)(pcStack_8138 + -0x7cac))(puStack_8118,1)" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(**(code **)(pcStack_8138 + -0x7cac))(puStack_8118,1)" (parenthesized_expression "(**(code **)(pcStack_8138 + -0x7cac))" ( (pointer_expression "**(code **)(pcStack_8138 + -0x7cac)" * (pointer_expression "*(code **)(pcStack_8138 + -0x7cac)" * (cast_expression "(code **)(pcStack_8138 + -0x7cac)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_8138 + -0x7cac)" ( (binary_expression "pcStack_8138 + -0x7cac" identifier + number_literal) ))))) )) (argument_list "(puStack_8118,1)" ( identifier , number_literal ))))) ;) (expression_statement "iVar4 = (**(code **)(pcStack_8138 + -0x743c))(puVar1,param_1);" (assignment_expression "iVar4 = (**(code **)(pcStack_8138 + -0x743c))(puVar1,param_1)" identifier = (call_expression "(**(code **)(pcStack_8138 + -0x743c))(puVar1,param_1)" (parenthesized_expression "(**(code **)(pcStack_8138 + -0x743c))" ( (pointer_expression "**(code **)(pcStack_8138 + -0x743c)" * (pointer_expression "*(code **)(pcStack_8138 + -0x743c)" * (cast_expression "(code **)(pcStack_8138 + -0x743c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_8138 + -0x743c)" ( (binary_expression "pcStack_8138 + -0x743c" identifier + number_literal) ))))) )) (argument_list "(puVar1,param_1)" ( identifier , identifier )))) ;) (if_statement "if ((iVar4 != 0) &&\n         (puVar23 = *(undefined4 **)(pcStack_8138 + -0x7460),\n         *(int *)(*(int *)(pcStack_8138 + -0x7fd8) + -0x31ec) == 0 &&\n         *(int *)(*(int *)(pcStack_8138 + -0x7fd8) + -0x31dc) == 0)) {\n        FUN_00027ff8(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x49ac,puVar1);\n        FUN_00027ff8(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x4970,param_1);\n        FUN_00027ff8(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x4940);\n        FUN_00027ff8(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x48f8);\n        puVar1 = param_1;\n      }" if (parenthesized_expression "((iVar4 != 0) &&\n         (puVar23 = *(undefined4 **)(pcStack_8138 + -0x7460),\n         *(int *)(*(int *)(pcStack_8138 + -0x7fd8) + -0x31ec) == 0 &&\n         *(int *)(*(int *)(pcStack_8138 + -0x7fd8) + -0x31dc) == 0))" ( (binary_expression "(iVar4 != 0) &&\n         (puVar23 = *(undefined4 **)(pcStack_8138 + -0x7460),\n         *(int *)(*(int *)(pcStack_8138 + -0x7fd8) + -0x31ec) == 0 &&\n         *(int *)(*(int *)(pcStack_8138 + -0x7fd8) + -0x31dc) == 0)" (parenthesized_expression "(iVar4 != 0)" ( (binary_expression "iVar4 != 0" identifier != number_literal) )) && (parenthesized_expression "(puVar23 = *(undefined4 **)(pcStack_8138 + -0x7460),\n         *(int *)(*(int *)(pcStack_8138 + -0x7fd8) + -0x31ec) == 0 &&\n         *(int *)(*(int *)(pcStack_8138 + -0x7fd8) + -0x31dc) == 0)" ( (comma_expression "puVar23 = *(undefined4 **)(pcStack_8138 + -0x7460),\n         *(int *)(*(int *)(pcStack_8138 + -0x7fd8) + -0x31ec) == 0 &&\n         *(int *)(*(int *)(pcStack_8138 + -0x7fd8) + -0x31dc) == 0" (assignment_expression "puVar23 = *(undefined4 **)(pcStack_8138 + -0x7460)" identifier = (pointer_expression "*(undefined4 **)(pcStack_8138 + -0x7460)" * (cast_expression "(undefined4 **)(pcStack_8138 + -0x7460)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_8138 + -0x7460)" ( (binary_expression "pcStack_8138 + -0x7460" identifier + number_literal) ))))) , (binary_expression "*(int *)(*(int *)(pcStack_8138 + -0x7fd8) + -0x31ec) == 0 &&\n         *(int *)(*(int *)(pcStack_8138 + -0x7fd8) + -0x31dc) == 0" (binary_expression "*(int *)(*(int *)(pcStack_8138 + -0x7fd8) + -0x31ec) == 0" (pointer_expression "*(int *)(*(int *)(pcStack_8138 + -0x7fd8) + -0x31ec)" * (cast_expression "(int *)(*(int *)(pcStack_8138 + -0x7fd8) + -0x31ec)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcStack_8138 + -0x7fd8) + -0x31ec)" ( (binary_expression "*(int *)(pcStack_8138 + -0x7fd8) + -0x31ec" (pointer_expression "*(int *)(pcStack_8138 + -0x7fd8)" * (cast_expression "(int *)(pcStack_8138 + -0x7fd8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_8138 + -0x7fd8)" ( (binary_expression "pcStack_8138 + -0x7fd8" identifier + number_literal) )))) + number_literal) )))) == number_literal) && (binary_expression "*(int *)(*(int *)(pcStack_8138 + -0x7fd8) + -0x31dc) == 0" (pointer_expression "*(int *)(*(int *)(pcStack_8138 + -0x7fd8) + -0x31dc)" * (cast_expression "(int *)(*(int *)(pcStack_8138 + -0x7fd8) + -0x31dc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcStack_8138 + -0x7fd8) + -0x31dc)" ( (binary_expression "*(int *)(pcStack_8138 + -0x7fd8) + -0x31dc" (pointer_expression "*(int *)(pcStack_8138 + -0x7fd8)" * (cast_expression "(int *)(pcStack_8138 + -0x7fd8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_8138 + -0x7fd8)" ( (binary_expression "pcStack_8138 + -0x7fd8" identifier + number_literal) )))) + number_literal) )))) == number_literal))) ))) )) (compound_statement "{\n        FUN_00027ff8(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x49ac,puVar1);\n        FUN_00027ff8(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x4970,param_1);\n        FUN_00027ff8(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x4940);\n        FUN_00027ff8(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x48f8);\n        puVar1 = param_1;\n      }" { (expression_statement "FUN_00027ff8(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x49ac,puVar1);" (call_expression "FUN_00027ff8(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x49ac,puVar1)" identifier (argument_list "(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x49ac,puVar1)" ( (pointer_expression "*puVar23" * identifier) , (binary_expression "*(int *)(pcStack_8138 + -0x7fc8) + -0x49ac" (pointer_expression "*(int *)(pcStack_8138 + -0x7fc8)" * (cast_expression "(int *)(pcStack_8138 + -0x7fc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_8138 + -0x7fc8)" ( (binary_expression "pcStack_8138 + -0x7fc8" identifier + number_literal) )))) + number_literal) , identifier ))) ;) (expression_statement "FUN_00027ff8(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x4970,param_1);" (call_expression "FUN_00027ff8(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x4970,param_1)" identifier (argument_list "(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x4970,param_1)" ( (pointer_expression "*puVar23" * identifier) , (binary_expression "*(int *)(pcStack_8138 + -0x7fc8) + -0x4970" (pointer_expression "*(int *)(pcStack_8138 + -0x7fc8)" * (cast_expression "(int *)(pcStack_8138 + -0x7fc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_8138 + -0x7fc8)" ( (binary_expression "pcStack_8138 + -0x7fc8" identifier + number_literal) )))) + number_literal) , identifier ))) ;) (expression_statement "FUN_00027ff8(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x4940);" (call_expression "FUN_00027ff8(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x4940)" identifier (argument_list "(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x4940)" ( (pointer_expression "*puVar23" * identifier) , (binary_expression "*(int *)(pcStack_8138 + -0x7fc8) + -0x4940" (pointer_expression "*(int *)(pcStack_8138 + -0x7fc8)" * (cast_expression "(int *)(pcStack_8138 + -0x7fc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_8138 + -0x7fc8)" ( (binary_expression "pcStack_8138 + -0x7fc8" identifier + number_literal) )))) + number_literal) ))) ;) (expression_statement "FUN_00027ff8(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x48f8);" (call_expression "FUN_00027ff8(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x48f8)" identifier (argument_list "(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x48f8)" ( (pointer_expression "*puVar23" * identifier) , (binary_expression "*(int *)(pcStack_8138 + -0x7fc8) + -0x48f8" (pointer_expression "*(int *)(pcStack_8138 + -0x7fc8)" * (cast_expression "(int *)(pcStack_8138 + -0x7fc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_8138 + -0x7fc8)" ( (binary_expression "pcStack_8138 + -0x7fc8" identifier + number_literal) )))) + number_literal) ))) ;) (expression_statement "puVar1 = param_1;" (assignment_expression "puVar1 = param_1" identifier = identifier) ;) })) })) (if_statement "if (*pcStack_812c == '\0') {\n      unaff_s3 = (undefined4 *)dupstr(puVar1);\n    }\n    else {\n      unaff_s3 = (undefined4 *)(**(code **)(pcStack_8138 + -0x7c78))(pcStack_812c,puVar1);\n    }" if (parenthesized_expression "(*pcStack_812c == '\0')" ( (binary_expression "*pcStack_812c == '\0'" (pointer_expression "*pcStack_812c" * identifier) == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n      unaff_s3 = (undefined4 *)dupstr(puVar1);\n    }" { (expression_statement "unaff_s3 = (undefined4 *)dupstr(puVar1);" (assignment_expression "unaff_s3 = (undefined4 *)dupstr(puVar1)" identifier = (cast_expression "(undefined4 *)dupstr(puVar1)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "dupstr(puVar1)" identifier (argument_list "(puVar1)" ( identifier ))))) ;) }) (else_clause "else {\n      unaff_s3 = (undefined4 *)(**(code **)(pcStack_8138 + -0x7c78))(pcStack_812c,puVar1);\n    }" else (compound_statement "{\n      unaff_s3 = (undefined4 *)(**(code **)(pcStack_8138 + -0x7c78))(pcStack_812c,puVar1);\n    }" { (expression_statement "unaff_s3 = (undefined4 *)(**(code **)(pcStack_8138 + -0x7c78))(pcStack_812c,puVar1);" (assignment_expression "unaff_s3 = (undefined4 *)(**(code **)(pcStack_8138 + -0x7c78))(pcStack_812c,puVar1)" identifier = (cast_expression "(undefined4 *)(**(code **)(pcStack_8138 + -0x7c78))(pcStack_812c,puVar1)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(**(code **)(pcStack_8138 + -0x7c78))(pcStack_812c,puVar1)" (parenthesized_expression "(**(code **)(pcStack_8138 + -0x7c78))" ( (pointer_expression "**(code **)(pcStack_8138 + -0x7c78)" * (pointer_expression "*(code **)(pcStack_8138 + -0x7c78)" * (cast_expression "(code **)(pcStack_8138 + -0x7c78)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_8138 + -0x7c78)" ( (binary_expression "pcStack_8138 + -0x7c78" identifier + number_literal) ))))) )) (argument_list "(pcStack_812c,puVar1)" ( identifier , identifier ))))) ;) }))) }) (else_clause "else {\n    unaff_s3 = (undefined4 *)dupstr(pcStack_812c);\n  }" else (compound_statement "{\n    unaff_s3 = (undefined4 *)dupstr(pcStack_812c);\n  }" { (expression_statement "unaff_s3 = (undefined4 *)dupstr(pcStack_812c);" (assignment_expression "unaff_s3 = (undefined4 *)dupstr(pcStack_812c)" identifier = (cast_expression "(undefined4 *)dupstr(pcStack_812c)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "dupstr(pcStack_812c)" identifier (argument_list "(pcStack_812c)" ( identifier ))))) ;) }))) (expression_statement "iVar4 = (**(code **)(pcStack_8138 + -0x7cec))(unaff_s3);" (assignment_expression "iVar4 = (**(code **)(pcStack_8138 + -0x7cec))(unaff_s3)" identifier = (call_expression "(**(code **)(pcStack_8138 + -0x7cec))(unaff_s3)" (parenthesized_expression "(**(code **)(pcStack_8138 + -0x7cec))" ( (pointer_expression "**(code **)(pcStack_8138 + -0x7cec)" * (pointer_expression "*(code **)(pcStack_8138 + -0x7cec)" * (cast_expression "(code **)(pcStack_8138 + -0x7cec)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_8138 + -0x7cec)" ( (binary_expression "pcStack_8138 + -0x7cec" identifier + number_literal) ))))) )) (argument_list "(unaff_s3)" ( identifier )))) ;) (if_statement "if (iStack_80d8 == 2) {\n    if (iVar4 == 0) {\n      iVar4 = (**(code **)(pcStack_8138 + -0x7c80))(unaff_s3);\n      if (iVar4 == 0) {\n        FUN_0002a658(*(int *)(pcStack_8138 + -0x7fc8) + -0x48ac,unaff_s3);\n        safefree(unaff_s3);\n        goto LAB_0002d77c;\n      }\n    }\n    else if (iVar4 != 2) {\n      FUN_0002a658(*(int *)(pcStack_8138 + -0x7fc8) + -0x4a68,unaff_s3);\n      safefree(unaff_s3);\n      goto LAB_0002d77c;\n    }\n    FUN_0002d4e0(unaff_s3,0);\n    safefree(unaff_s3);\n    goto LAB_0002d77c;\n  }" if (parenthesized_expression "(iStack_80d8 == 2)" ( (binary_expression "iStack_80d8 == 2" identifier == number_literal) )) (compound_statement "{\n    if (iVar4 == 0) {\n      iVar4 = (**(code **)(pcStack_8138 + -0x7c80))(unaff_s3);\n      if (iVar4 == 0) {\n        FUN_0002a658(*(int *)(pcStack_8138 + -0x7fc8) + -0x48ac,unaff_s3);\n        safefree(unaff_s3);\n        goto LAB_0002d77c;\n      }\n    }\n    else if (iVar4 != 2) {\n      FUN_0002a658(*(int *)(pcStack_8138 + -0x7fc8) + -0x4a68,unaff_s3);\n      safefree(unaff_s3);\n      goto LAB_0002d77c;\n    }\n    FUN_0002d4e0(unaff_s3,0);\n    safefree(unaff_s3);\n    goto LAB_0002d77c;\n  }" { (if_statement "if (iVar4 == 0) {\n      iVar4 = (**(code **)(pcStack_8138 + -0x7c80))(unaff_s3);\n      if (iVar4 == 0) {\n        FUN_0002a658(*(int *)(pcStack_8138 + -0x7fc8) + -0x48ac,unaff_s3);\n        safefree(unaff_s3);\n        goto LAB_0002d77c;\n      }\n    }\n    else if (iVar4 != 2) {\n      FUN_0002a658(*(int *)(pcStack_8138 + -0x7fc8) + -0x4a68,unaff_s3);\n      safefree(unaff_s3);\n      goto LAB_0002d77c;\n    }" if (parenthesized_expression "(iVar4 == 0)" ( (binary_expression "iVar4 == 0" identifier == number_literal) )) (compound_statement "{\n      iVar4 = (**(code **)(pcStack_8138 + -0x7c80))(unaff_s3);\n      if (iVar4 == 0) {\n        FUN_0002a658(*(int *)(pcStack_8138 + -0x7fc8) + -0x48ac,unaff_s3);\n        safefree(unaff_s3);\n        goto LAB_0002d77c;\n      }\n    }" { (expression_statement "iVar4 = (**(code **)(pcStack_8138 + -0x7c80))(unaff_s3);" (assignment_expression "iVar4 = (**(code **)(pcStack_8138 + -0x7c80))(unaff_s3)" identifier = (call_expression "(**(code **)(pcStack_8138 + -0x7c80))(unaff_s3)" (parenthesized_expression "(**(code **)(pcStack_8138 + -0x7c80))" ( (pointer_expression "**(code **)(pcStack_8138 + -0x7c80)" * (pointer_expression "*(code **)(pcStack_8138 + -0x7c80)" * (cast_expression "(code **)(pcStack_8138 + -0x7c80)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_8138 + -0x7c80)" ( (binary_expression "pcStack_8138 + -0x7c80" identifier + number_literal) ))))) )) (argument_list "(unaff_s3)" ( identifier )))) ;) (if_statement "if (iVar4 == 0) {\n        FUN_0002a658(*(int *)(pcStack_8138 + -0x7fc8) + -0x48ac,unaff_s3);\n        safefree(unaff_s3);\n        goto LAB_0002d77c;\n      }" if (parenthesized_expression "(iVar4 == 0)" ( (binary_expression "iVar4 == 0" identifier == number_literal) )) (compound_statement "{\n        FUN_0002a658(*(int *)(pcStack_8138 + -0x7fc8) + -0x48ac,unaff_s3);\n        safefree(unaff_s3);\n        goto LAB_0002d77c;\n      }" { (expression_statement "FUN_0002a658(*(int *)(pcStack_8138 + -0x7fc8) + -0x48ac,unaff_s3);" (call_expression "FUN_0002a658(*(int *)(pcStack_8138 + -0x7fc8) + -0x48ac,unaff_s3)" identifier (argument_list "(*(int *)(pcStack_8138 + -0x7fc8) + -0x48ac,unaff_s3)" ( (binary_expression "*(int *)(pcStack_8138 + -0x7fc8) + -0x48ac" (pointer_expression "*(int *)(pcStack_8138 + -0x7fc8)" * (cast_expression "(int *)(pcStack_8138 + -0x7fc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_8138 + -0x7fc8)" ( (binary_expression "pcStack_8138 + -0x7fc8" identifier + number_literal) )))) + number_literal) , identifier ))) ;) (expression_statement "safefree(unaff_s3);" (call_expression "safefree(unaff_s3)" identifier (argument_list "(unaff_s3)" ( identifier ))) ;) (goto_statement "goto LAB_0002d77c;" goto statement_identifier ;) })) }) (else_clause "else if (iVar4 != 2) {\n      FUN_0002a658(*(int *)(pcStack_8138 + -0x7fc8) + -0x4a68,unaff_s3);\n      safefree(unaff_s3);\n      goto LAB_0002d77c;\n    }" else (if_statement "if (iVar4 != 2) {\n      FUN_0002a658(*(int *)(pcStack_8138 + -0x7fc8) + -0x4a68,unaff_s3);\n      safefree(unaff_s3);\n      goto LAB_0002d77c;\n    }" if (parenthesized_expression "(iVar4 != 2)" ( (binary_expression "iVar4 != 2" identifier != number_literal) )) (compound_statement "{\n      FUN_0002a658(*(int *)(pcStack_8138 + -0x7fc8) + -0x4a68,unaff_s3);\n      safefree(unaff_s3);\n      goto LAB_0002d77c;\n    }" { (expression_statement "FUN_0002a658(*(int *)(pcStack_8138 + -0x7fc8) + -0x4a68,unaff_s3);" (call_expression "FUN_0002a658(*(int *)(pcStack_8138 + -0x7fc8) + -0x4a68,unaff_s3)" identifier (argument_list "(*(int *)(pcStack_8138 + -0x7fc8) + -0x4a68,unaff_s3)" ( (binary_expression "*(int *)(pcStack_8138 + -0x7fc8) + -0x4a68" (pointer_expression "*(int *)(pcStack_8138 + -0x7fc8)" * (cast_expression "(int *)(pcStack_8138 + -0x7fc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_8138 + -0x7fc8)" ( (binary_expression "pcStack_8138 + -0x7fc8" identifier + number_literal) )))) + number_literal) , identifier ))) ;) (expression_statement "safefree(unaff_s3);" (call_expression "safefree(unaff_s3)" identifier (argument_list "(unaff_s3)" ( identifier ))) ;) (goto_statement "goto LAB_0002d77c;" goto statement_identifier ;) })))) (expression_statement "FUN_0002d4e0(unaff_s3,0);" (call_expression "FUN_0002d4e0(unaff_s3,0)" identifier (argument_list "(unaff_s3,0)" ( identifier , number_literal ))) ;) (expression_statement "safefree(unaff_s3);" (call_expression "safefree(unaff_s3)" identifier (argument_list "(unaff_s3)" ( identifier ))) ;) (goto_statement "goto LAB_0002d77c;" goto statement_identifier ;) })) (expression_statement "unaff_s5 = (**(code **)(pcStack_8138 + -0x7c84))(unaff_s3,uStack_80cc);" (assignment_expression "unaff_s5 = (**(code **)(pcStack_8138 + -0x7c84))(unaff_s3,uStack_80cc)" identifier = (call_expression "(**(code **)(pcStack_8138 + -0x7c84))(unaff_s3,uStack_80cc)" (parenthesized_expression "(**(code **)(pcStack_8138 + -0x7c84))" ( (pointer_expression "**(code **)(pcStack_8138 + -0x7c84)" * (pointer_expression "*(code **)(pcStack_8138 + -0x7c84)" * (cast_expression "(code **)(pcStack_8138 + -0x7c84)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_8138 + -0x7c84)" ( (binary_expression "pcStack_8138 + -0x7c84" identifier + number_literal) ))))) )) (argument_list "(unaff_s3,uStack_80cc)" ( identifier , identifier )))) ;) (if_statement "if (unaff_s5 == 0) {\n    FUN_0002a658(*(int *)(pcStack_8138 + -0x7fc8) + -0x4890,unaff_s3);\n    safefree(unaff_s3);\n    goto LAB_0002d77c;\n  }" if (parenthesized_expression "(unaff_s5 == 0)" ( (binary_expression "unaff_s5 == 0" identifier == number_literal) )) (compound_statement "{\n    FUN_0002a658(*(int *)(pcStack_8138 + -0x7fc8) + -0x4890,unaff_s3);\n    safefree(unaff_s3);\n    goto LAB_0002d77c;\n  }" { (expression_statement "FUN_0002a658(*(int *)(pcStack_8138 + -0x7fc8) + -0x4890,unaff_s3);" (call_expression "FUN_0002a658(*(int *)(pcStack_8138 + -0x7fc8) + -0x4890,unaff_s3)" identifier (argument_list "(*(int *)(pcStack_8138 + -0x7fc8) + -0x4890,unaff_s3)" ( (binary_expression "*(int *)(pcStack_8138 + -0x7fc8) + -0x4890" (pointer_expression "*(int *)(pcStack_8138 + -0x7fc8)" * (cast_expression "(int *)(pcStack_8138 + -0x7fc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_8138 + -0x7fc8)" ( (binary_expression "pcStack_8138 + -0x7fc8" identifier + number_literal) )))) + number_literal) , identifier ))) ;) (expression_statement "safefree(unaff_s3);" (call_expression "safefree(unaff_s3)" identifier (argument_list "(unaff_s3)" ( identifier ))) ;) (goto_statement "goto LAB_0002d77c;" goto statement_identifier ;) })) (expression_statement "iStack_8120 = scp_accept_filexfer();" (assignment_expression "iStack_8120 = scp_accept_filexfer()" identifier = (call_expression "scp_accept_filexfer()" identifier (argument_list "()" ( )))) ;) (if_statement "if (iStack_8120 == 0) {\n    puVar1 = auStack_100b0;\n    uint64_make(&uStack_80f8,0,0);\n    uStack_8114 = (**(code **)(pcStack_8138 + -0x7488))(0);\n    uStack_811c = (**(code **)(pcStack_8138 + -0x7cac))(unaff_s3,1);\n    uint64_make(&uStack_8100,0,0);\n    iStack_8124 = *(int *)(pcStack_8138 + -0x7fc8);\n    unaff_s7 = *(int *)(pcStack_8138 + -0x7fd8);\nLAB_0002db64:\n    do {\n      iVar4 = uint64_compare(uStack_8100,uStack_80fc,uStack_80c8,uStack_80c4);\n      if (-1 < iVar4) goto LAB_0002de88;\n      uint64_make(&uStack_80f0,0,0x8000);\n      uStack_8148 = uStack_80fc;\n      uint64_subtract(&uStack_80e8,uStack_80c8,uStack_80c4,uStack_8100);\n      iVar4 = uint64_compare(uStack_80f0,uStack_80ec,uStack_80e8,uStack_80e4);\n      if (0 < iVar4) {\n        uStack_8148 = uStack_80fc;\n        uint64_subtract(&uStack_80f0,uStack_80c8,uStack_80c4,uStack_8100);\n      }\n      puVar1 = (undefined *)scp_recv_filedata(auStack_80b4,uStack_80ec);\n      if ((int)puVar1 < 1) {\n        (*pcStack_8128)(iStack_8124 + -0x5640);\n      }\n      if (iVar24 == 0) {\n        puVar5 = (undefined *)(**(code **)(pcStack_8138 + -0x7c68))(unaff_s5,auStack_80b4,puVar1);\n        if (puVar5 == puVar1) {\n          if (*(int *)(unaff_s7 + -0x3fa8) != 0) {\n            uint64_add32(&uStack_8108,uStack_80f8,uStack_80f4,puVar1);\n            uStack_80f8 = uStack_8108;\n            uStack_80f4 = uStack_8104;\n            iVar4 = (**(code **)(pcStack_8138 + -0x7488))(0);\n            if (iVar4 <= iStack_8120) {\n              uint64_add32(&uStack_80e0,uStack_8100,uStack_80fc,puVar1);\n              iVar4 = uint64_compare(uStack_80e0,uStack_80dc,uStack_80c8,uStack_80c4);\n              if (iVar4 != 0) goto LAB_0002dc94;\n            }\n            iStack_8140 = (**(code **)(pcStack_8138 + -0x7488))(0);\n            uStack_8144 = uStack_8114;\n            uStack_8148 = uStack_80f4;\n            iStack_8120 = iStack_8140;\n            (*pcStack_810c)(uStack_811c,uStack_80c8,uStack_80c4,uStack_80f8);\n          }\nLAB_0002dc94:\n          param_1 = auStack_100b0;\n          uint64_add32(&uStack_8108,uStack_8100,uStack_80fc,puVar1);\n          uStack_8100 = uStack_8108;\n          uStack_80fc = uStack_8104;\n          goto LAB_0002db64;\n        }\n        if (*(int *)(unaff_s7 + -0x3fa8) != 0) {\n          (**(code **)(pcStack_8138 + -0x759c))\n                    (1,*(int *)(pcStack_8138 + -0x7fc8) + -0x4850,uStack_811c,iStack_8110);\n        }\n        uint64_add32(&uStack_8108,uStack_8100,uStack_80fc,puVar1);\n      }\n      else {\n        uint64_add32(&uStack_8108,uStack_8100,uStack_80fc,puVar1);\n      }\n      param_1 = auStack_100b0;\n      iVar24 = 1;\n      uStack_8100 = uStack_8108;\n      uStack_80fc = uStack_8104;\n    } while( true );\n  }" if (parenthesized_expression "(iStack_8120 == 0)" ( (binary_expression "iStack_8120 == 0" identifier == number_literal) )) (compound_statement "{\n    puVar1 = auStack_100b0;\n    uint64_make(&uStack_80f8,0,0);\n    uStack_8114 = (**(code **)(pcStack_8138 + -0x7488))(0);\n    uStack_811c = (**(code **)(pcStack_8138 + -0x7cac))(unaff_s3,1);\n    uint64_make(&uStack_8100,0,0);\n    iStack_8124 = *(int *)(pcStack_8138 + -0x7fc8);\n    unaff_s7 = *(int *)(pcStack_8138 + -0x7fd8);\nLAB_0002db64:\n    do {\n      iVar4 = uint64_compare(uStack_8100,uStack_80fc,uStack_80c8,uStack_80c4);\n      if (-1 < iVar4) goto LAB_0002de88;\n      uint64_make(&uStack_80f0,0,0x8000);\n      uStack_8148 = uStack_80fc;\n      uint64_subtract(&uStack_80e8,uStack_80c8,uStack_80c4,uStack_8100);\n      iVar4 = uint64_compare(uStack_80f0,uStack_80ec,uStack_80e8,uStack_80e4);\n      if (0 < iVar4) {\n        uStack_8148 = uStack_80fc;\n        uint64_subtract(&uStack_80f0,uStack_80c8,uStack_80c4,uStack_8100);\n      }\n      puVar1 = (undefined *)scp_recv_filedata(auStack_80b4,uStack_80ec);\n      if ((int)puVar1 < 1) {\n        (*pcStack_8128)(iStack_8124 + -0x5640);\n      }\n      if (iVar24 == 0) {\n        puVar5 = (undefined *)(**(code **)(pcStack_8138 + -0x7c68))(unaff_s5,auStack_80b4,puVar1);\n        if (puVar5 == puVar1) {\n          if (*(int *)(unaff_s7 + -0x3fa8) != 0) {\n            uint64_add32(&uStack_8108,uStack_80f8,uStack_80f4,puVar1);\n            uStack_80f8 = uStack_8108;\n            uStack_80f4 = uStack_8104;\n            iVar4 = (**(code **)(pcStack_8138 + -0x7488))(0);\n            if (iVar4 <= iStack_8120) {\n              uint64_add32(&uStack_80e0,uStack_8100,uStack_80fc,puVar1);\n              iVar4 = uint64_compare(uStack_80e0,uStack_80dc,uStack_80c8,uStack_80c4);\n              if (iVar4 != 0) goto LAB_0002dc94;\n            }\n            iStack_8140 = (**(code **)(pcStack_8138 + -0x7488))(0);\n            uStack_8144 = uStack_8114;\n            uStack_8148 = uStack_80f4;\n            iStack_8120 = iStack_8140;\n            (*pcStack_810c)(uStack_811c,uStack_80c8,uStack_80c4,uStack_80f8);\n          }\nLAB_0002dc94:\n          param_1 = auStack_100b0;\n          uint64_add32(&uStack_8108,uStack_8100,uStack_80fc,puVar1);\n          uStack_8100 = uStack_8108;\n          uStack_80fc = uStack_8104;\n          goto LAB_0002db64;\n        }\n        if (*(int *)(unaff_s7 + -0x3fa8) != 0) {\n          (**(code **)(pcStack_8138 + -0x759c))\n                    (1,*(int *)(pcStack_8138 + -0x7fc8) + -0x4850,uStack_811c,iStack_8110);\n        }\n        uint64_add32(&uStack_8108,uStack_8100,uStack_80fc,puVar1);\n      }\n      else {\n        uint64_add32(&uStack_8108,uStack_8100,uStack_80fc,puVar1);\n      }\n      param_1 = auStack_100b0;\n      iVar24 = 1;\n      uStack_8100 = uStack_8108;\n      uStack_80fc = uStack_8104;\n    } while( true );\n  }" { (expression_statement "puVar1 = auStack_100b0;" (assignment_expression "puVar1 = auStack_100b0" identifier = identifier) ;) (expression_statement "uint64_make(&uStack_80f8,0,0);" (call_expression "uint64_make(&uStack_80f8,0,0)" identifier (argument_list "(&uStack_80f8,0,0)" ( (pointer_expression "&uStack_80f8" & identifier) , number_literal , number_literal ))) ;) (expression_statement "uStack_8114 = (**(code **)(pcStack_8138 + -0x7488))(0);" (assignment_expression "uStack_8114 = (**(code **)(pcStack_8138 + -0x7488))(0)" identifier = (call_expression "(**(code **)(pcStack_8138 + -0x7488))(0)" (parenthesized_expression "(**(code **)(pcStack_8138 + -0x7488))" ( (pointer_expression "**(code **)(pcStack_8138 + -0x7488)" * (pointer_expression "*(code **)(pcStack_8138 + -0x7488)" * (cast_expression "(code **)(pcStack_8138 + -0x7488)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_8138 + -0x7488)" ( (binary_expression "pcStack_8138 + -0x7488" identifier + number_literal) ))))) )) (argument_list "(0)" ( number_literal )))) ;) (expression_statement "uStack_811c = (**(code **)(pcStack_8138 + -0x7cac))(unaff_s3,1);" (assignment_expression "uStack_811c = (**(code **)(pcStack_8138 + -0x7cac))(unaff_s3,1)" identifier = (call_expression "(**(code **)(pcStack_8138 + -0x7cac))(unaff_s3,1)" (parenthesized_expression "(**(code **)(pcStack_8138 + -0x7cac))" ( (pointer_expression "**(code **)(pcStack_8138 + -0x7cac)" * (pointer_expression "*(code **)(pcStack_8138 + -0x7cac)" * (cast_expression "(code **)(pcStack_8138 + -0x7cac)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_8138 + -0x7cac)" ( (binary_expression "pcStack_8138 + -0x7cac" identifier + number_literal) ))))) )) (argument_list "(unaff_s3,1)" ( identifier , number_literal )))) ;) (expression_statement "uint64_make(&uStack_8100,0,0);" (call_expression "uint64_make(&uStack_8100,0,0)" identifier (argument_list "(&uStack_8100,0,0)" ( (pointer_expression "&uStack_8100" & identifier) , number_literal , number_literal ))) ;) (expression_statement "iStack_8124 = *(int *)(pcStack_8138 + -0x7fc8);" (assignment_expression "iStack_8124 = *(int *)(pcStack_8138 + -0x7fc8)" identifier = (pointer_expression "*(int *)(pcStack_8138 + -0x7fc8)" * (cast_expression "(int *)(pcStack_8138 + -0x7fc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_8138 + -0x7fc8)" ( (binary_expression "pcStack_8138 + -0x7fc8" identifier + number_literal) ))))) ;) (expression_statement "unaff_s7 = *(int *)(pcStack_8138 + -0x7fd8);" (assignment_expression "unaff_s7 = *(int *)(pcStack_8138 + -0x7fd8)" identifier = (pointer_expression "*(int *)(pcStack_8138 + -0x7fd8)" * (cast_expression "(int *)(pcStack_8138 + -0x7fd8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_8138 + -0x7fd8)" ( (binary_expression "pcStack_8138 + -0x7fd8" identifier + number_literal) ))))) ;) (labeled_statement "LAB_0002db64:\n    do {\n      iVar4 = uint64_compare(uStack_8100,uStack_80fc,uStack_80c8,uStack_80c4);\n      if (-1 < iVar4) goto LAB_0002de88;\n      uint64_make(&uStack_80f0,0,0x8000);\n      uStack_8148 = uStack_80fc;\n      uint64_subtract(&uStack_80e8,uStack_80c8,uStack_80c4,uStack_8100);\n      iVar4 = uint64_compare(uStack_80f0,uStack_80ec,uStack_80e8,uStack_80e4);\n      if (0 < iVar4) {\n        uStack_8148 = uStack_80fc;\n        uint64_subtract(&uStack_80f0,uStack_80c8,uStack_80c4,uStack_8100);\n      }\n      puVar1 = (undefined *)scp_recv_filedata(auStack_80b4,uStack_80ec);\n      if ((int)puVar1 < 1) {\n        (*pcStack_8128)(iStack_8124 + -0x5640);\n      }\n      if (iVar24 == 0) {\n        puVar5 = (undefined *)(**(code **)(pcStack_8138 + -0x7c68))(unaff_s5,auStack_80b4,puVar1);\n        if (puVar5 == puVar1) {\n          if (*(int *)(unaff_s7 + -0x3fa8) != 0) {\n            uint64_add32(&uStack_8108,uStack_80f8,uStack_80f4,puVar1);\n            uStack_80f8 = uStack_8108;\n            uStack_80f4 = uStack_8104;\n            iVar4 = (**(code **)(pcStack_8138 + -0x7488))(0);\n            if (iVar4 <= iStack_8120) {\n              uint64_add32(&uStack_80e0,uStack_8100,uStack_80fc,puVar1);\n              iVar4 = uint64_compare(uStack_80e0,uStack_80dc,uStack_80c8,uStack_80c4);\n              if (iVar4 != 0) goto LAB_0002dc94;\n            }\n            iStack_8140 = (**(code **)(pcStack_8138 + -0x7488))(0);\n            uStack_8144 = uStack_8114;\n            uStack_8148 = uStack_80f4;\n            iStack_8120 = iStack_8140;\n            (*pcStack_810c)(uStack_811c,uStack_80c8,uStack_80c4,uStack_80f8);\n          }\nLAB_0002dc94:\n          param_1 = auStack_100b0;\n          uint64_add32(&uStack_8108,uStack_8100,uStack_80fc,puVar1);\n          uStack_8100 = uStack_8108;\n          uStack_80fc = uStack_8104;\n          goto LAB_0002db64;\n        }\n        if (*(int *)(unaff_s7 + -0x3fa8) != 0) {\n          (**(code **)(pcStack_8138 + -0x759c))\n                    (1,*(int *)(pcStack_8138 + -0x7fc8) + -0x4850,uStack_811c,iStack_8110);\n        }\n        uint64_add32(&uStack_8108,uStack_8100,uStack_80fc,puVar1);\n      }\n      else {\n        uint64_add32(&uStack_8108,uStack_8100,uStack_80fc,puVar1);\n      }\n      param_1 = auStack_100b0;\n      iVar24 = 1;\n      uStack_8100 = uStack_8108;\n      uStack_80fc = uStack_8104;\n    } while( true );" statement_identifier : (do_statement "do {\n      iVar4 = uint64_compare(uStack_8100,uStack_80fc,uStack_80c8,uStack_80c4);\n      if (-1 < iVar4) goto LAB_0002de88;\n      uint64_make(&uStack_80f0,0,0x8000);\n      uStack_8148 = uStack_80fc;\n      uint64_subtract(&uStack_80e8,uStack_80c8,uStack_80c4,uStack_8100);\n      iVar4 = uint64_compare(uStack_80f0,uStack_80ec,uStack_80e8,uStack_80e4);\n      if (0 < iVar4) {\n        uStack_8148 = uStack_80fc;\n        uint64_subtract(&uStack_80f0,uStack_80c8,uStack_80c4,uStack_8100);\n      }\n      puVar1 = (undefined *)scp_recv_filedata(auStack_80b4,uStack_80ec);\n      if ((int)puVar1 < 1) {\n        (*pcStack_8128)(iStack_8124 + -0x5640);\n      }\n      if (iVar24 == 0) {\n        puVar5 = (undefined *)(**(code **)(pcStack_8138 + -0x7c68))(unaff_s5,auStack_80b4,puVar1);\n        if (puVar5 == puVar1) {\n          if (*(int *)(unaff_s7 + -0x3fa8) != 0) {\n            uint64_add32(&uStack_8108,uStack_80f8,uStack_80f4,puVar1);\n            uStack_80f8 = uStack_8108;\n            uStack_80f4 = uStack_8104;\n            iVar4 = (**(code **)(pcStack_8138 + -0x7488))(0);\n            if (iVar4 <= iStack_8120) {\n              uint64_add32(&uStack_80e0,uStack_8100,uStack_80fc,puVar1);\n              iVar4 = uint64_compare(uStack_80e0,uStack_80dc,uStack_80c8,uStack_80c4);\n              if (iVar4 != 0) goto LAB_0002dc94;\n            }\n            iStack_8140 = (**(code **)(pcStack_8138 + -0x7488))(0);\n            uStack_8144 = uStack_8114;\n            uStack_8148 = uStack_80f4;\n            iStack_8120 = iStack_8140;\n            (*pcStack_810c)(uStack_811c,uStack_80c8,uStack_80c4,uStack_80f8);\n          }\nLAB_0002dc94:\n          param_1 = auStack_100b0;\n          uint64_add32(&uStack_8108,uStack_8100,uStack_80fc,puVar1);\n          uStack_8100 = uStack_8108;\n          uStack_80fc = uStack_8104;\n          goto LAB_0002db64;\n        }\n        if (*(int *)(unaff_s7 + -0x3fa8) != 0) {\n          (**(code **)(pcStack_8138 + -0x759c))\n                    (1,*(int *)(pcStack_8138 + -0x7fc8) + -0x4850,uStack_811c,iStack_8110);\n        }\n        uint64_add32(&uStack_8108,uStack_8100,uStack_80fc,puVar1);\n      }\n      else {\n        uint64_add32(&uStack_8108,uStack_8100,uStack_80fc,puVar1);\n      }\n      param_1 = auStack_100b0;\n      iVar24 = 1;\n      uStack_8100 = uStack_8108;\n      uStack_80fc = uStack_8104;\n    } while( true );" do (compound_statement "{\n      iVar4 = uint64_compare(uStack_8100,uStack_80fc,uStack_80c8,uStack_80c4);\n      if (-1 < iVar4) goto LAB_0002de88;\n      uint64_make(&uStack_80f0,0,0x8000);\n      uStack_8148 = uStack_80fc;\n      uint64_subtract(&uStack_80e8,uStack_80c8,uStack_80c4,uStack_8100);\n      iVar4 = uint64_compare(uStack_80f0,uStack_80ec,uStack_80e8,uStack_80e4);\n      if (0 < iVar4) {\n        uStack_8148 = uStack_80fc;\n        uint64_subtract(&uStack_80f0,uStack_80c8,uStack_80c4,uStack_8100);\n      }\n      puVar1 = (undefined *)scp_recv_filedata(auStack_80b4,uStack_80ec);\n      if ((int)puVar1 < 1) {\n        (*pcStack_8128)(iStack_8124 + -0x5640);\n      }\n      if (iVar24 == 0) {\n        puVar5 = (undefined *)(**(code **)(pcStack_8138 + -0x7c68))(unaff_s5,auStack_80b4,puVar1);\n        if (puVar5 == puVar1) {\n          if (*(int *)(unaff_s7 + -0x3fa8) != 0) {\n            uint64_add32(&uStack_8108,uStack_80f8,uStack_80f4,puVar1);\n            uStack_80f8 = uStack_8108;\n            uStack_80f4 = uStack_8104;\n            iVar4 = (**(code **)(pcStack_8138 + -0x7488))(0);\n            if (iVar4 <= iStack_8120) {\n              uint64_add32(&uStack_80e0,uStack_8100,uStack_80fc,puVar1);\n              iVar4 = uint64_compare(uStack_80e0,uStack_80dc,uStack_80c8,uStack_80c4);\n              if (iVar4 != 0) goto LAB_0002dc94;\n            }\n            iStack_8140 = (**(code **)(pcStack_8138 + -0x7488))(0);\n            uStack_8144 = uStack_8114;\n            uStack_8148 = uStack_80f4;\n            iStack_8120 = iStack_8140;\n            (*pcStack_810c)(uStack_811c,uStack_80c8,uStack_80c4,uStack_80f8);\n          }\nLAB_0002dc94:\n          param_1 = auStack_100b0;\n          uint64_add32(&uStack_8108,uStack_8100,uStack_80fc,puVar1);\n          uStack_8100 = uStack_8108;\n          uStack_80fc = uStack_8104;\n          goto LAB_0002db64;\n        }\n        if (*(int *)(unaff_s7 + -0x3fa8) != 0) {\n          (**(code **)(pcStack_8138 + -0x759c))\n                    (1,*(int *)(pcStack_8138 + -0x7fc8) + -0x4850,uStack_811c,iStack_8110);\n        }\n        uint64_add32(&uStack_8108,uStack_8100,uStack_80fc,puVar1);\n      }\n      else {\n        uint64_add32(&uStack_8108,uStack_8100,uStack_80fc,puVar1);\n      }\n      param_1 = auStack_100b0;\n      iVar24 = 1;\n      uStack_8100 = uStack_8108;\n      uStack_80fc = uStack_8104;\n    }" { (expression_statement "iVar4 = uint64_compare(uStack_8100,uStack_80fc,uStack_80c8,uStack_80c4);" (assignment_expression "iVar4 = uint64_compare(uStack_8100,uStack_80fc,uStack_80c8,uStack_80c4)" identifier = (call_expression "uint64_compare(uStack_8100,uStack_80fc,uStack_80c8,uStack_80c4)" identifier (argument_list "(uStack_8100,uStack_80fc,uStack_80c8,uStack_80c4)" ( identifier , identifier , identifier , identifier )))) ;) (if_statement "if (-1 < iVar4) goto LAB_0002de88;" if (parenthesized_expression "(-1 < iVar4)" ( (binary_expression "-1 < iVar4" number_literal < identifier) )) (goto_statement "goto LAB_0002de88;" goto statement_identifier ;)) (expression_statement "uint64_make(&uStack_80f0,0,0x8000);" (call_expression "uint64_make(&uStack_80f0,0,0x8000)" identifier (argument_list "(&uStack_80f0,0,0x8000)" ( (pointer_expression "&uStack_80f0" & identifier) , number_literal , number_literal ))) ;) (expression_statement "uStack_8148 = uStack_80fc;" (assignment_expression "uStack_8148 = uStack_80fc" identifier = identifier) ;) (expression_statement "uint64_subtract(&uStack_80e8,uStack_80c8,uStack_80c4,uStack_8100);" (call_expression "uint64_subtract(&uStack_80e8,uStack_80c8,uStack_80c4,uStack_8100)" identifier (argument_list "(&uStack_80e8,uStack_80c8,uStack_80c4,uStack_8100)" ( (pointer_expression "&uStack_80e8" & identifier) , identifier , identifier , identifier ))) ;) (expression_statement "iVar4 = uint64_compare(uStack_80f0,uStack_80ec,uStack_80e8,uStack_80e4);" (assignment_expression "iVar4 = uint64_compare(uStack_80f0,uStack_80ec,uStack_80e8,uStack_80e4)" identifier = (call_expression "uint64_compare(uStack_80f0,uStack_80ec,uStack_80e8,uStack_80e4)" identifier (argument_list "(uStack_80f0,uStack_80ec,uStack_80e8,uStack_80e4)" ( identifier , identifier , identifier , identifier )))) ;) (if_statement "if (0 < iVar4) {\n        uStack_8148 = uStack_80fc;\n        uint64_subtract(&uStack_80f0,uStack_80c8,uStack_80c4,uStack_8100);\n      }" if (parenthesized_expression "(0 < iVar4)" ( (binary_expression "0 < iVar4" number_literal < identifier) )) (compound_statement "{\n        uStack_8148 = uStack_80fc;\n        uint64_subtract(&uStack_80f0,uStack_80c8,uStack_80c4,uStack_8100);\n      }" { (expression_statement "uStack_8148 = uStack_80fc;" (assignment_expression "uStack_8148 = uStack_80fc" identifier = identifier) ;) (expression_statement "uint64_subtract(&uStack_80f0,uStack_80c8,uStack_80c4,uStack_8100);" (call_expression "uint64_subtract(&uStack_80f0,uStack_80c8,uStack_80c4,uStack_8100)" identifier (argument_list "(&uStack_80f0,uStack_80c8,uStack_80c4,uStack_8100)" ( (pointer_expression "&uStack_80f0" & identifier) , identifier , identifier , identifier ))) ;) })) (expression_statement "puVar1 = (undefined *)scp_recv_filedata(auStack_80b4,uStack_80ec);" (assignment_expression "puVar1 = (undefined *)scp_recv_filedata(auStack_80b4,uStack_80ec)" identifier = (cast_expression "(undefined *)scp_recv_filedata(auStack_80b4,uStack_80ec)" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "scp_recv_filedata(auStack_80b4,uStack_80ec)" identifier (argument_list "(auStack_80b4,uStack_80ec)" ( identifier , identifier ))))) ;) (if_statement "if ((int)puVar1 < 1) {\n        (*pcStack_8128)(iStack_8124 + -0x5640);\n      }" if (parenthesized_expression "((int)puVar1 < 1)" ( (binary_expression "(int)puVar1 < 1" (cast_expression "(int)puVar1" ( (type_descriptor "int" primitive_type) ) identifier) < number_literal) )) (compound_statement "{\n        (*pcStack_8128)(iStack_8124 + -0x5640);\n      }" { (expression_statement "(*pcStack_8128)(iStack_8124 + -0x5640);" (call_expression "(*pcStack_8128)(iStack_8124 + -0x5640)" (parenthesized_expression "(*pcStack_8128)" ( (pointer_expression "*pcStack_8128" * identifier) )) (argument_list "(iStack_8124 + -0x5640)" ( (binary_expression "iStack_8124 + -0x5640" identifier + number_literal) ))) ;) })) (if_statement "if (iVar24 == 0) {\n        puVar5 = (undefined *)(**(code **)(pcStack_8138 + -0x7c68))(unaff_s5,auStack_80b4,puVar1);\n        if (puVar5 == puVar1) {\n          if (*(int *)(unaff_s7 + -0x3fa8) != 0) {\n            uint64_add32(&uStack_8108,uStack_80f8,uStack_80f4,puVar1);\n            uStack_80f8 = uStack_8108;\n            uStack_80f4 = uStack_8104;\n            iVar4 = (**(code **)(pcStack_8138 + -0x7488))(0);\n            if (iVar4 <= iStack_8120) {\n              uint64_add32(&uStack_80e0,uStack_8100,uStack_80fc,puVar1);\n              iVar4 = uint64_compare(uStack_80e0,uStack_80dc,uStack_80c8,uStack_80c4);\n              if (iVar4 != 0) goto LAB_0002dc94;\n            }\n            iStack_8140 = (**(code **)(pcStack_8138 + -0x7488))(0);\n            uStack_8144 = uStack_8114;\n            uStack_8148 = uStack_80f4;\n            iStack_8120 = iStack_8140;\n            (*pcStack_810c)(uStack_811c,uStack_80c8,uStack_80c4,uStack_80f8);\n          }\nLAB_0002dc94:\n          param_1 = auStack_100b0;\n          uint64_add32(&uStack_8108,uStack_8100,uStack_80fc,puVar1);\n          uStack_8100 = uStack_8108;\n          uStack_80fc = uStack_8104;\n          goto LAB_0002db64;\n        }\n        if (*(int *)(unaff_s7 + -0x3fa8) != 0) {\n          (**(code **)(pcStack_8138 + -0x759c))\n                    (1,*(int *)(pcStack_8138 + -0x7fc8) + -0x4850,uStack_811c,iStack_8110);\n        }\n        uint64_add32(&uStack_8108,uStack_8100,uStack_80fc,puVar1);\n      }\n      else {\n        uint64_add32(&uStack_8108,uStack_8100,uStack_80fc,puVar1);\n      }" if (parenthesized_expression "(iVar24 == 0)" ( (binary_expression "iVar24 == 0" identifier == number_literal) )) (compound_statement "{\n        puVar5 = (undefined *)(**(code **)(pcStack_8138 + -0x7c68))(unaff_s5,auStack_80b4,puVar1);\n        if (puVar5 == puVar1) {\n          if (*(int *)(unaff_s7 + -0x3fa8) != 0) {\n            uint64_add32(&uStack_8108,uStack_80f8,uStack_80f4,puVar1);\n            uStack_80f8 = uStack_8108;\n            uStack_80f4 = uStack_8104;\n            iVar4 = (**(code **)(pcStack_8138 + -0x7488))(0);\n            if (iVar4 <= iStack_8120) {\n              uint64_add32(&uStack_80e0,uStack_8100,uStack_80fc,puVar1);\n              iVar4 = uint64_compare(uStack_80e0,uStack_80dc,uStack_80c8,uStack_80c4);\n              if (iVar4 != 0) goto LAB_0002dc94;\n            }\n            iStack_8140 = (**(code **)(pcStack_8138 + -0x7488))(0);\n            uStack_8144 = uStack_8114;\n            uStack_8148 = uStack_80f4;\n            iStack_8120 = iStack_8140;\n            (*pcStack_810c)(uStack_811c,uStack_80c8,uStack_80c4,uStack_80f8);\n          }\nLAB_0002dc94:\n          param_1 = auStack_100b0;\n          uint64_add32(&uStack_8108,uStack_8100,uStack_80fc,puVar1);\n          uStack_8100 = uStack_8108;\n          uStack_80fc = uStack_8104;\n          goto LAB_0002db64;\n        }\n        if (*(int *)(unaff_s7 + -0x3fa8) != 0) {\n          (**(code **)(pcStack_8138 + -0x759c))\n                    (1,*(int *)(pcStack_8138 + -0x7fc8) + -0x4850,uStack_811c,iStack_8110);\n        }\n        uint64_add32(&uStack_8108,uStack_8100,uStack_80fc,puVar1);\n      }" { (expression_statement "puVar5 = (undefined *)(**(code **)(pcStack_8138 + -0x7c68))(unaff_s5,auStack_80b4,puVar1);" (assignment_expression "puVar5 = (undefined *)(**(code **)(pcStack_8138 + -0x7c68))(unaff_s5,auStack_80b4,puVar1)" identifier = (cast_expression "(undefined *)(**(code **)(pcStack_8138 + -0x7c68))(unaff_s5,auStack_80b4,puVar1)" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(**(code **)(pcStack_8138 + -0x7c68))(unaff_s5,auStack_80b4,puVar1)" (parenthesized_expression "(**(code **)(pcStack_8138 + -0x7c68))" ( (pointer_expression "**(code **)(pcStack_8138 + -0x7c68)" * (pointer_expression "*(code **)(pcStack_8138 + -0x7c68)" * (cast_expression "(code **)(pcStack_8138 + -0x7c68)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_8138 + -0x7c68)" ( (binary_expression "pcStack_8138 + -0x7c68" identifier + number_literal) ))))) )) (argument_list "(unaff_s5,auStack_80b4,puVar1)" ( identifier , identifier , identifier ))))) ;) (if_statement "if (puVar5 == puVar1) {\n          if (*(int *)(unaff_s7 + -0x3fa8) != 0) {\n            uint64_add32(&uStack_8108,uStack_80f8,uStack_80f4,puVar1);\n            uStack_80f8 = uStack_8108;\n            uStack_80f4 = uStack_8104;\n            iVar4 = (**(code **)(pcStack_8138 + -0x7488))(0);\n            if (iVar4 <= iStack_8120) {\n              uint64_add32(&uStack_80e0,uStack_8100,uStack_80fc,puVar1);\n              iVar4 = uint64_compare(uStack_80e0,uStack_80dc,uStack_80c8,uStack_80c4);\n              if (iVar4 != 0) goto LAB_0002dc94;\n            }\n            iStack_8140 = (**(code **)(pcStack_8138 + -0x7488))(0);\n            uStack_8144 = uStack_8114;\n            uStack_8148 = uStack_80f4;\n            iStack_8120 = iStack_8140;\n            (*pcStack_810c)(uStack_811c,uStack_80c8,uStack_80c4,uStack_80f8);\n          }\nLAB_0002dc94:\n          param_1 = auStack_100b0;\n          uint64_add32(&uStack_8108,uStack_8100,uStack_80fc,puVar1);\n          uStack_8100 = uStack_8108;\n          uStack_80fc = uStack_8104;\n          goto LAB_0002db64;\n        }" if (parenthesized_expression "(puVar5 == puVar1)" ( (binary_expression "puVar5 == puVar1" identifier == identifier) )) (compound_statement "{\n          if (*(int *)(unaff_s7 + -0x3fa8) != 0) {\n            uint64_add32(&uStack_8108,uStack_80f8,uStack_80f4,puVar1);\n            uStack_80f8 = uStack_8108;\n            uStack_80f4 = uStack_8104;\n            iVar4 = (**(code **)(pcStack_8138 + -0x7488))(0);\n            if (iVar4 <= iStack_8120) {\n              uint64_add32(&uStack_80e0,uStack_8100,uStack_80fc,puVar1);\n              iVar4 = uint64_compare(uStack_80e0,uStack_80dc,uStack_80c8,uStack_80c4);\n              if (iVar4 != 0) goto LAB_0002dc94;\n            }\n            iStack_8140 = (**(code **)(pcStack_8138 + -0x7488))(0);\n            uStack_8144 = uStack_8114;\n            uStack_8148 = uStack_80f4;\n            iStack_8120 = iStack_8140;\n            (*pcStack_810c)(uStack_811c,uStack_80c8,uStack_80c4,uStack_80f8);\n          }\nLAB_0002dc94:\n          param_1 = auStack_100b0;\n          uint64_add32(&uStack_8108,uStack_8100,uStack_80fc,puVar1);\n          uStack_8100 = uStack_8108;\n          uStack_80fc = uStack_8104;\n          goto LAB_0002db64;\n        }" { (if_statement "if (*(int *)(unaff_s7 + -0x3fa8) != 0) {\n            uint64_add32(&uStack_8108,uStack_80f8,uStack_80f4,puVar1);\n            uStack_80f8 = uStack_8108;\n            uStack_80f4 = uStack_8104;\n            iVar4 = (**(code **)(pcStack_8138 + -0x7488))(0);\n            if (iVar4 <= iStack_8120) {\n              uint64_add32(&uStack_80e0,uStack_8100,uStack_80fc,puVar1);\n              iVar4 = uint64_compare(uStack_80e0,uStack_80dc,uStack_80c8,uStack_80c4);\n              if (iVar4 != 0) goto LAB_0002dc94;\n            }\n            iStack_8140 = (**(code **)(pcStack_8138 + -0x7488))(0);\n            uStack_8144 = uStack_8114;\n            uStack_8148 = uStack_80f4;\n            iStack_8120 = iStack_8140;\n            (*pcStack_810c)(uStack_811c,uStack_80c8,uStack_80c4,uStack_80f8);\n          }" if (parenthesized_expression "(*(int *)(unaff_s7 + -0x3fa8) != 0)" ( (binary_expression "*(int *)(unaff_s7 + -0x3fa8) != 0" (pointer_expression "*(int *)(unaff_s7 + -0x3fa8)" * (cast_expression "(int *)(unaff_s7 + -0x3fa8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(unaff_s7 + -0x3fa8)" ( (binary_expression "unaff_s7 + -0x3fa8" identifier + number_literal) )))) != number_literal) )) (compound_statement "{\n            uint64_add32(&uStack_8108,uStack_80f8,uStack_80f4,puVar1);\n            uStack_80f8 = uStack_8108;\n            uStack_80f4 = uStack_8104;\n            iVar4 = (**(code **)(pcStack_8138 + -0x7488))(0);\n            if (iVar4 <= iStack_8120) {\n              uint64_add32(&uStack_80e0,uStack_8100,uStack_80fc,puVar1);\n              iVar4 = uint64_compare(uStack_80e0,uStack_80dc,uStack_80c8,uStack_80c4);\n              if (iVar4 != 0) goto LAB_0002dc94;\n            }\n            iStack_8140 = (**(code **)(pcStack_8138 + -0x7488))(0);\n            uStack_8144 = uStack_8114;\n            uStack_8148 = uStack_80f4;\n            iStack_8120 = iStack_8140;\n            (*pcStack_810c)(uStack_811c,uStack_80c8,uStack_80c4,uStack_80f8);\n          }" { (expression_statement "uint64_add32(&uStack_8108,uStack_80f8,uStack_80f4,puVar1);" (call_expression "uint64_add32(&uStack_8108,uStack_80f8,uStack_80f4,puVar1)" identifier (argument_list "(&uStack_8108,uStack_80f8,uStack_80f4,puVar1)" ( (pointer_expression "&uStack_8108" & identifier) , identifier , identifier , identifier ))) ;) (expression_statement "uStack_80f8 = uStack_8108;" (assignment_expression "uStack_80f8 = uStack_8108" identifier = identifier) ;) (expression_statement "uStack_80f4 = uStack_8104;" (assignment_expression "uStack_80f4 = uStack_8104" identifier = identifier) ;) (expression_statement "iVar4 = (**(code **)(pcStack_8138 + -0x7488))(0);" (assignment_expression "iVar4 = (**(code **)(pcStack_8138 + -0x7488))(0)" identifier = (call_expression "(**(code **)(pcStack_8138 + -0x7488))(0)" (parenthesized_expression "(**(code **)(pcStack_8138 + -0x7488))" ( (pointer_expression "**(code **)(pcStack_8138 + -0x7488)" * (pointer_expression "*(code **)(pcStack_8138 + -0x7488)" * (cast_expression "(code **)(pcStack_8138 + -0x7488)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_8138 + -0x7488)" ( (binary_expression "pcStack_8138 + -0x7488" identifier + number_literal) ))))) )) (argument_list "(0)" ( number_literal )))) ;) (if_statement "if (iVar4 <= iStack_8120) {\n              uint64_add32(&uStack_80e0,uStack_8100,uStack_80fc,puVar1);\n              iVar4 = uint64_compare(uStack_80e0,uStack_80dc,uStack_80c8,uStack_80c4);\n              if (iVar4 != 0) goto LAB_0002dc94;\n            }" if (parenthesized_expression "(iVar4 <= iStack_8120)" ( (binary_expression "iVar4 <= iStack_8120" identifier <= identifier) )) (compound_statement "{\n              uint64_add32(&uStack_80e0,uStack_8100,uStack_80fc,puVar1);\n              iVar4 = uint64_compare(uStack_80e0,uStack_80dc,uStack_80c8,uStack_80c4);\n              if (iVar4 != 0) goto LAB_0002dc94;\n            }" { (expression_statement "uint64_add32(&uStack_80e0,uStack_8100,uStack_80fc,puVar1);" (call_expression "uint64_add32(&uStack_80e0,uStack_8100,uStack_80fc,puVar1)" identifier (argument_list "(&uStack_80e0,uStack_8100,uStack_80fc,puVar1)" ( (pointer_expression "&uStack_80e0" & identifier) , identifier , identifier , identifier ))) ;) (expression_statement "iVar4 = uint64_compare(uStack_80e0,uStack_80dc,uStack_80c8,uStack_80c4);" (assignment_expression "iVar4 = uint64_compare(uStack_80e0,uStack_80dc,uStack_80c8,uStack_80c4)" identifier = (call_expression "uint64_compare(uStack_80e0,uStack_80dc,uStack_80c8,uStack_80c4)" identifier (argument_list "(uStack_80e0,uStack_80dc,uStack_80c8,uStack_80c4)" ( identifier , identifier , identifier , identifier )))) ;) (if_statement "if (iVar4 != 0) goto LAB_0002dc94;" if (parenthesized_expression "(iVar4 != 0)" ( (binary_expression "iVar4 != 0" identifier != number_literal) )) (goto_statement "goto LAB_0002dc94;" goto statement_identifier ;)) })) (expression_statement "iStack_8140 = (**(code **)(pcStack_8138 + -0x7488))(0);" (assignment_expression "iStack_8140 = (**(code **)(pcStack_8138 + -0x7488))(0)" identifier = (call_expression "(**(code **)(pcStack_8138 + -0x7488))(0)" (parenthesized_expression "(**(code **)(pcStack_8138 + -0x7488))" ( (pointer_expression "**(code **)(pcStack_8138 + -0x7488)" * (pointer_expression "*(code **)(pcStack_8138 + -0x7488)" * (cast_expression "(code **)(pcStack_8138 + -0x7488)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_8138 + -0x7488)" ( (binary_expression "pcStack_8138 + -0x7488" identifier + number_literal) ))))) )) (argument_list "(0)" ( number_literal )))) ;) (expression_statement "uStack_8144 = uStack_8114;" (assignment_expression "uStack_8144 = uStack_8114" identifier = identifier) ;) (expression_statement "uStack_8148 = uStack_80f4;" (assignment_expression "uStack_8148 = uStack_80f4" identifier = identifier) ;) (expression_statement "iStack_8120 = iStack_8140;" (assignment_expression "iStack_8120 = iStack_8140" identifier = identifier) ;) (expression_statement "(*pcStack_810c)(uStack_811c,uStack_80c8,uStack_80c4,uStack_80f8);" (call_expression "(*pcStack_810c)(uStack_811c,uStack_80c8,uStack_80c4,uStack_80f8)" (parenthesized_expression "(*pcStack_810c)" ( (pointer_expression "*pcStack_810c" * identifier) )) (argument_list "(uStack_811c,uStack_80c8,uStack_80c4,uStack_80f8)" ( identifier , identifier , identifier , identifier ))) ;) })) (labeled_statement "LAB_0002dc94:\n          param_1 = auStack_100b0;" statement_identifier : (expression_statement "param_1 = auStack_100b0;" (assignment_expression "param_1 = auStack_100b0" identifier = identifier) ;)) (expression_statement "uint64_add32(&uStack_8108,uStack_8100,uStack_80fc,puVar1);" (call_expression "uint64_add32(&uStack_8108,uStack_8100,uStack_80fc,puVar1)" identifier (argument_list "(&uStack_8108,uStack_8100,uStack_80fc,puVar1)" ( (pointer_expression "&uStack_8108" & identifier) , identifier , identifier , identifier ))) ;) (expression_statement "uStack_8100 = uStack_8108;" (assignment_expression "uStack_8100 = uStack_8108" identifier = identifier) ;) (expression_statement "uStack_80fc = uStack_8104;" (assignment_expression "uStack_80fc = uStack_8104" identifier = identifier) ;) (goto_statement "goto LAB_0002db64;" goto statement_identifier ;) })) (if_statement "if (*(int *)(unaff_s7 + -0x3fa8) != 0) {\n          (**(code **)(pcStack_8138 + -0x759c))\n                    (1,*(int *)(pcStack_8138 + -0x7fc8) + -0x4850,uStack_811c,iStack_8110);\n        }" if (parenthesized_expression "(*(int *)(unaff_s7 + -0x3fa8) != 0)" ( (binary_expression "*(int *)(unaff_s7 + -0x3fa8) != 0" (pointer_expression "*(int *)(unaff_s7 + -0x3fa8)" * (cast_expression "(int *)(unaff_s7 + -0x3fa8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(unaff_s7 + -0x3fa8)" ( (binary_expression "unaff_s7 + -0x3fa8" identifier + number_literal) )))) != number_literal) )) (compound_statement "{\n          (**(code **)(pcStack_8138 + -0x759c))\n                    (1,*(int *)(pcStack_8138 + -0x7fc8) + -0x4850,uStack_811c,iStack_8110);\n        }" { (expression_statement "(**(code **)(pcStack_8138 + -0x759c))\n                    (1,*(int *)(pcStack_8138 + -0x7fc8) + -0x4850,uStack_811c,iStack_8110);" (call_expression "(**(code **)(pcStack_8138 + -0x759c))\n                    (1,*(int *)(pcStack_8138 + -0x7fc8) + -0x4850,uStack_811c,iStack_8110)" (parenthesized_expression "(**(code **)(pcStack_8138 + -0x759c))" ( (pointer_expression "**(code **)(pcStack_8138 + -0x759c)" * (pointer_expression "*(code **)(pcStack_8138 + -0x759c)" * (cast_expression "(code **)(pcStack_8138 + -0x759c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_8138 + -0x759c)" ( (binary_expression "pcStack_8138 + -0x759c" identifier + number_literal) ))))) )) (argument_list "(1,*(int *)(pcStack_8138 + -0x7fc8) + -0x4850,uStack_811c,iStack_8110)" ( number_literal , (binary_expression "*(int *)(pcStack_8138 + -0x7fc8) + -0x4850" (pointer_expression "*(int *)(pcStack_8138 + -0x7fc8)" * (cast_expression "(int *)(pcStack_8138 + -0x7fc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_8138 + -0x7fc8)" ( (binary_expression "pcStack_8138 + -0x7fc8" identifier + number_literal) )))) + number_literal) , identifier , identifier ))) ;) })) (expression_statement "uint64_add32(&uStack_8108,uStack_8100,uStack_80fc,puVar1);" (call_expression "uint64_add32(&uStack_8108,uStack_8100,uStack_80fc,puVar1)" identifier (argument_list "(&uStack_8108,uStack_8100,uStack_80fc,puVar1)" ( (pointer_expression "&uStack_8108" & identifier) , identifier , identifier , identifier ))) ;) }) (else_clause "else {\n        uint64_add32(&uStack_8108,uStack_8100,uStack_80fc,puVar1);\n      }" else (compound_statement "{\n        uint64_add32(&uStack_8108,uStack_8100,uStack_80fc,puVar1);\n      }" { (expression_statement "uint64_add32(&uStack_8108,uStack_8100,uStack_80fc,puVar1);" (call_expression "uint64_add32(&uStack_8108,uStack_8100,uStack_80fc,puVar1)" identifier (argument_list "(&uStack_8108,uStack_8100,uStack_80fc,puVar1)" ( (pointer_expression "&uStack_8108" & identifier) , identifier , identifier , identifier ))) ;) }))) (expression_statement "param_1 = auStack_100b0;" (assignment_expression "param_1 = auStack_100b0" identifier = identifier) ;) (expression_statement "iVar24 = 1;" (assignment_expression "iVar24 = 1" identifier = number_literal) ;) (expression_statement "uStack_8100 = uStack_8108;" (assignment_expression "uStack_8100 = uStack_8108" identifier = identifier) ;) (expression_statement "uStack_80fc = uStack_8104;" (assignment_expression "uStack_80fc = uStack_8104" identifier = identifier) ;) }) while (parenthesized_expression "( true )" ( true )) ;)) })) (expression_statement "safefree(unaff_s3);" (call_expression "safefree(unaff_s3)" identifier (argument_list "(unaff_s3)" ( identifier ))) ;) (expression_statement "(**(code **)(pcStack_8138 + -0x7c70))(unaff_s5);" (call_expression "(**(code **)(pcStack_8138 + -0x7c70))(unaff_s5)" (parenthesized_expression "(**(code **)(pcStack_8138 + -0x7c70))" ( (pointer_expression "**(code **)(pcStack_8138 + -0x7c70)" * (pointer_expression "*(code **)(pcStack_8138 + -0x7c70)" * (cast_expression "(code **)(pcStack_8138 + -0x7c70)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_8138 + -0x7c70)" ( (binary_expression "pcStack_8138 + -0x7c70" identifier + number_literal) ))))) )) (argument_list "(unaff_s5)" ( identifier ))) ;) (labeled_statement "LAB_0002da64:\n  pcVar28 = *(code **)(pcStack_8138 + -0x74a0);" statement_identifier : (expression_statement "pcVar28 = *(code **)(pcStack_8138 + -0x74a0);" (assignment_expression "pcVar28 = *(code **)(pcStack_8138 + -0x74a0)" identifier = (pointer_expression "*(code **)(pcStack_8138 + -0x74a0)" * (cast_expression "(code **)(pcStack_8138 + -0x74a0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_8138 + -0x74a0)" ( (binary_expression "pcStack_8138 + -0x74a0" identifier + number_literal) ))))) ;)) (if_statement "if (uStack_b4 == **(uint **)(pcStack_8138 + -0x7478)) {\n    return **(uint **)(pcStack_8138 + -0x7478);\n  }" if (parenthesized_expression "(uStack_b4 == **(uint **)(pcStack_8138 + -0x7478))" ( (binary_expression "uStack_b4 == **(uint **)(pcStack_8138 + -0x7478)" identifier == (pointer_expression "**(uint **)(pcStack_8138 + -0x7478)" * (pointer_expression "*(uint **)(pcStack_8138 + -0x7478)" * (cast_expression "(uint **)(pcStack_8138 + -0x7478)" ( (type_descriptor "uint **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_8138 + -0x7478)" ( (binary_expression "pcStack_8138 + -0x7478" identifier + number_literal) )))))) )) (compound_statement "{\n    return **(uint **)(pcStack_8138 + -0x7478);\n  }" { (return_statement "return **(uint **)(pcStack_8138 + -0x7478);" return (pointer_expression "**(uint **)(pcStack_8138 + -0x7478)" * (pointer_expression "*(uint **)(pcStack_8138 + -0x7478)" * (cast_expression "(uint **)(pcStack_8138 + -0x7478)" ( (type_descriptor "uint **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_8138 + -0x7478)" ( (binary_expression "pcStack_8138 + -0x7478" identifier + number_literal) ))))) ;) })) (expression_statement "pcVar30 = version;" (assignment_expression "pcVar30 = version" identifier = identifier) ;) (expression_statement "(*pcVar28)();" (call_expression "(*pcVar28)()" (parenthesized_expression "(*pcVar28)" ( (pointer_expression "*pcVar28" * identifier) )) (argument_list "()" ( ))) ;) (expression_statement "pcStack_8168 = pcVar28 + 0x961d8;" (assignment_expression "pcStack_8168 = pcVar28 + 0x961d8" identifier = (binary_expression "pcVar28 + 0x961d8" identifier + number_literal)) ;) (expression_statement "uStack_8160 = 0xffff0000;" (assignment_expression "uStack_8160 = 0xffff0000" identifier = number_literal) ;) (expression_statement "pcStack_815c = pcVar30;" (assignment_expression "pcStack_815c = pcVar30" identifier = identifier) ;) (expression_statement "uVar6 = buildinfo(*(int *)(pcVar28 + 0x8e210) + 0xaa4);" (assignment_expression "uVar6 = buildinfo(*(int *)(pcVar28 + 0x8e210) + 0xaa4)" identifier = (call_expression "buildinfo(*(int *)(pcVar28 + 0x8e210) + 0xaa4)" identifier (argument_list "(*(int *)(pcVar28 + 0x8e210) + 0xaa4)" ( (binary_expression "*(int *)(pcVar28 + 0x8e210) + 0xaa4" (pointer_expression "*(int *)(pcVar28 + 0x8e210)" * (cast_expression "(int *)(pcVar28 + 0x8e210)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar28 + 0x8e210)" ( (binary_expression "pcVar28 + 0x8e210" identifier + number_literal) )))) + number_literal) )))) ;) (expression_statement "uVar17 = *(undefined4 *)(pcStack_8168 + -0x7da8);" (assignment_expression "uVar17 = *(undefined4 *)(pcStack_8168 + -0x7da8)" identifier = (pointer_expression "*(undefined4 *)(pcStack_8168 + -0x7da8)" * (cast_expression "(undefined4 *)(pcStack_8168 + -0x7da8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_8168 + -0x7da8)" ( (binary_expression "pcStack_8168 + -0x7da8" identifier + number_literal) ))))) ;) (expression_statement "iVar4 = *(int *)(pcStack_8168 + -0x7fc8) + -0x482c;" (assignment_expression "iVar4 = *(int *)(pcStack_8168 + -0x7fc8) + -0x482c" identifier = (binary_expression "*(int *)(pcStack_8168 + -0x7fc8) + -0x482c" (pointer_expression "*(int *)(pcStack_8168 + -0x7fc8)" * (cast_expression "(int *)(pcStack_8168 + -0x7fc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_8168 + -0x7fc8)" ( (binary_expression "pcStack_8168 + -0x7fc8" identifier + number_literal) )))) + number_literal)) ;) (expression_statement "uVar7 = uVar6;" (assignment_expression "uVar7 = uVar6" identifier = identifier) ;) (expression_statement "(**(code **)(pcStack_8168 + -0x759c))(1);" (call_expression "(**(code **)(pcStack_8168 + -0x759c))(1)" (parenthesized_expression "(**(code **)(pcStack_8168 + -0x759c))" ( (pointer_expression "**(code **)(pcStack_8168 + -0x759c)" * (pointer_expression "*(code **)(pcStack_8168 + -0x759c)" * (cast_expression "(code **)(pcStack_8168 + -0x759c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_8168 + -0x759c)" ( (binary_expression "pcStack_8168 + -0x759c" identifier + number_literal) ))))) )) (argument_list "(1)" ( number_literal ))) ;) (expression_statement "safefree(uVar6);" (call_expression "safefree(uVar6)" identifier (argument_list "(uVar6)" ( identifier ))) ;) (expression_statement "uVar12 = 0;" (assignment_expression "uVar12 = 0" identifier = number_literal) ;) (expression_statement "pcVar28 = *(code **)(pcStack_8168 + -0x7504);" (assignment_expression "pcVar28 = *(code **)(pcStack_8168 + -0x7504)" identifier = (pointer_expression "*(code **)(pcStack_8168 + -0x7504)" * (cast_expression "(code **)(pcStack_8168 + -0x7504)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_8168 + -0x7504)" ( (binary_expression "pcStack_8168 + -0x7504" identifier + number_literal) ))))) ;) (expression_statement "pcVar30 = cmdline_error;" (assignment_expression "pcVar30 = cmdline_error" identifier = identifier) ;) (expression_statement "(*pcVar28)();" (call_expression "(*pcVar28)()" (parenthesized_expression "(*pcVar28)" ( (pointer_expression "*pcVar28" * identifier) )) (argument_list "()" ( ))) ;) (expression_statement "pcStack_8198 = pcVar28 + 0x96158;" (assignment_expression "pcStack_8198 = pcVar28 + 0x96158" identifier = (binary_expression "pcVar28 + 0x96158" identifier + number_literal)) ;) (expression_statement "uStack_818c = **(undefined4 **)(pcVar28 + 0x8ece0);" (assignment_expression "uStack_818c = **(undefined4 **)(pcVar28 + 0x8ece0)" identifier = (pointer_expression "**(undefined4 **)(pcVar28 + 0x8ece0)" * (pointer_expression "*(undefined4 **)(pcVar28 + 0x8ece0)" * (cast_expression "(undefined4 **)(pcVar28 + 0x8ece0)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar28 + 0x8ece0)" ( (binary_expression "pcVar28 + 0x8ece0" identifier + number_literal) )))))) ;) (expression_statement "puVar23 = *(undefined4 **)(pcVar28 + 0x8ecf8);" (assignment_expression "puVar23 = *(undefined4 **)(pcVar28 + 0x8ecf8)" identifier = (pointer_expression "*(undefined4 **)(pcVar28 + 0x8ecf8)" * (cast_expression "(undefined4 **)(pcVar28 + 0x8ecf8)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar28 + 0x8ecf8)" ( (binary_expression "pcVar28 + 0x8ecf8" identifier + number_literal) ))))) ;) (expression_statement "uStack_8184 = uVar6;" (assignment_expression "uStack_8184 = uVar6" identifier = identifier) ;) (expression_statement "puStack_8180 = puVar1;" (assignment_expression "puStack_8180 = puVar1" identifier = identifier) ;) (expression_statement "pcStack_817c = pcVar30;" (assignment_expression "pcStack_817c = pcVar30" identifier = identifier) ;) (expression_statement "iStack_8174 = iVar4;" (assignment_expression "iStack_8174 = iVar4" identifier = identifier) ;) (expression_statement "uStack_8170 = uVar17;" (assignment_expression "uStack_8170 = uVar17" identifier = identifier) ;) (expression_statement "uStack_816c = uVar7;" (assignment_expression "uStack_816c = uVar7" identifier = identifier) ;) (expression_statement "(**(code **)(pcVar28 + 0x8ec90))(*(int *)(pcVar28 + 0x8e190) + -0x4e28,1,6,*puVar23);" (call_expression "(**(code **)(pcVar28 + 0x8ec90))(*(int *)(pcVar28 + 0x8e190) + -0x4e28,1,6,*puVar23)" (parenthesized_expression "(**(code **)(pcVar28 + 0x8ec90))" ( (pointer_expression "**(code **)(pcVar28 + 0x8ec90)" * (pointer_expression "*(code **)(pcVar28 + 0x8ec90)" * (cast_expression "(code **)(pcVar28 + 0x8ec90)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar28 + 0x8ec90)" ( (binary_expression "pcVar28 + 0x8ec90" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar28 + 0x8e190) + -0x4e28,1,6,*puVar23)" ( (binary_expression "*(int *)(pcVar28 + 0x8e190) + -0x4e28" (pointer_expression "*(int *)(pcVar28 + 0x8e190)" * (cast_expression "(int *)(pcVar28 + 0x8e190)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar28 + 0x8e190)" ( (binary_expression "pcVar28 + 0x8e190" identifier + number_literal) )))) + number_literal) , number_literal , number_literal , (pointer_expression "*puVar23" * identifier) ))) ;) (expression_statement "piStack_8190 = &iStack_8174;" (assignment_expression "piStack_8190 = &iStack_8174" identifier = (pointer_expression "&iStack_8174" & identifier)) ;) (expression_statement "(**(code **)(pcStack_8198 + -0x7444))(*puVar23,1,uVar12);" (call_expression "(**(code **)(pcStack_8198 + -0x7444))(*puVar23,1,uVar12)" (parenthesized_expression "(**(code **)(pcStack_8198 + -0x7444))" ( (pointer_expression "**(code **)(pcStack_8198 + -0x7444)" * (pointer_expression "*(code **)(pcStack_8198 + -0x7444)" * (cast_expression "(code **)(pcStack_8198 + -0x7444)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_8198 + -0x7444)" ( (binary_expression "pcStack_8198 + -0x7444" identifier + number_literal) ))))) )) (argument_list "(*puVar23,1,uVar12)" ( (pointer_expression "*puVar23" * identifier) , number_literal , identifier ))) ;) (expression_statement "iVar15 = 1;" (assignment_expression "iVar15 = 1" identifier = number_literal) ;) (expression_statement "(**(code **)(pcStack_8198 + -0x74c8))(*(int *)(pcStack_8198 + -0x7fc8) + -0x481c,1,0x27,*puVar23);" (call_expression "(**(code **)(pcStack_8198 + -0x74c8))(*(int *)(pcStack_8198 + -0x7fc8) + -0x481c,1,0x27,*puVar23)" (parenthesized_expression "(**(code **)(pcStack_8198 + -0x74c8))" ( (pointer_expression "**(code **)(pcStack_8198 + -0x74c8)" * (pointer_expression "*(code **)(pcStack_8198 + -0x74c8)" * (cast_expression "(code **)(pcStack_8198 + -0x74c8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_8198 + -0x74c8)" ( (binary_expression "pcStack_8198 + -0x74c8" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcStack_8198 + -0x7fc8) + -0x481c,1,0x27,*puVar23)" ( (binary_expression "*(int *)(pcStack_8198 + -0x7fc8) + -0x481c" (pointer_expression "*(int *)(pcStack_8198 + -0x7fc8)" * (cast_expression "(int *)(pcStack_8198 + -0x7fc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_8198 + -0x7fc8)" ( (binary_expression "pcStack_8198 + -0x7fc8" identifier + number_literal) )))) + number_literal) , number_literal , number_literal , (pointer_expression "*puVar23" * identifier) ))) ;) (expression_statement "iVar4 = 1;" (assignment_expression "iVar4 = 1" identifier = number_literal) ;) (expression_statement "pcVar28 = *(code **)(pcStack_8198 + -0x7504);" (assignment_expression "pcVar28 = *(code **)(pcStack_8198 + -0x7504)" identifier = (pointer_expression "*(code **)(pcStack_8198 + -0x7504)" * (cast_expression "(code **)(pcStack_8198 + -0x7504)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_8198 + -0x7504)" ( (binary_expression "pcStack_8198 + -0x7504" identifier + number_literal) ))))) ;) (expression_statement "pcVar30 = psftp_main;" (assignment_expression "pcVar30 = psftp_main" identifier = identifier) ;) (expression_statement "(*pcVar28)();" (call_expression "(*pcVar28)()" (parenthesized_expression "(*pcVar28)" ( (pointer_expression "*pcVar28" * identifier) )) (argument_list "()" ( ))) ;) (expression_statement "pcStack_81e8 = pcVar28 + 0x9609c;" (assignment_expression "pcStack_81e8 = pcVar28 + 0x9609c" identifier = (binary_expression "pcVar28 + 0x9609c" identifier + number_literal)) ;) (expression_statement "puStack_81d4 = (undefined4 *)**(undefined4 **)(pcVar28 + 0x8ec24);" (assignment_expression "puStack_81d4 = (undefined4 *)**(undefined4 **)(pcVar28 + 0x8ec24)" identifier = (cast_expression "(undefined4 *)**(undefined4 **)(pcVar28 + 0x8ec24)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "**(undefined4 **)(pcVar28 + 0x8ec24)" * (pointer_expression "*(undefined4 **)(pcVar28 + 0x8ec24)" * (cast_expression "(undefined4 **)(pcVar28 + 0x8ec24)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar28 + 0x8ec24)" ( (binary_expression "pcVar28 + 0x8ec24" identifier + number_literal) ))))))) ;) (expression_statement "**(undefined4 **)(pcVar28 + 0x8e144) = 1;" (assignment_expression "**(undefined4 **)(pcVar28 + 0x8e144) = 1" (pointer_expression "**(undefined4 **)(pcVar28 + 0x8e144)" * (pointer_expression "*(undefined4 **)(pcVar28 + 0x8e144)" * (cast_expression "(undefined4 **)(pcVar28 + 0x8e144)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar28 + 0x8e144)" ( (binary_expression "pcVar28 + 0x8e144" identifier + number_literal) ))))) = number_literal) ;) (expression_statement "**(undefined4 **)(pcVar28 + 0x8e158) = 2;" (assignment_expression "**(undefined4 **)(pcVar28 + 0x8e158) = 2" (pointer_expression "**(undefined4 **)(pcVar28 + 0x8e158)" * (pointer_expression "*(undefined4 **)(pcVar28 + 0x8e158)" * (cast_expression "(undefined4 **)(pcVar28 + 0x8e158)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar28 + 0x8e158)" ( (binary_expression "pcVar28 + 0x8e158" identifier + number_literal) ))))) = number_literal) ;) (expression_statement "**(undefined4 **)(pcVar28 + 0x8e120) = 1;" (assignment_expression "**(undefined4 **)(pcVar28 + 0x8e120) = 1" (pointer_expression "**(undefined4 **)(pcVar28 + 0x8e120)" * (pointer_expression "*(undefined4 **)(pcVar28 + 0x8e120)" * (cast_expression "(undefined4 **)(pcVar28 + 0x8e120)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar28 + 0x8e120)" ( (binary_expression "pcVar28 + 0x8e120" identifier + number_literal) ))))) = number_literal) ;) (expression_statement "puStack_81d0 = puVar23;" (assignment_expression "puStack_81d0 = puVar23" identifier = identifier) ;) (expression_statement "uStack_81cc = uVar12;" (assignment_expression "uStack_81cc = uVar12" identifier = identifier) ;) (expression_statement "puStack_81c8 = param_1;" (assignment_expression "puStack_81c8 = param_1" identifier = identifier) ;) (expression_statement "puStack_81c4 = unaff_s3;" (assignment_expression "puStack_81c4 = unaff_s3" identifier = identifier) ;) (expression_statement "iStack_81c0 = iVar24;" (assignment_expression "iStack_81c0 = iVar24" identifier = identifier) ;) (expression_statement "iStack_81bc = unaff_s5;" (assignment_expression "iStack_81bc = unaff_s5" identifier = identifier) ;) (expression_statement "piStack_81b8 = &iStack_80d8;" (assignment_expression "piStack_81b8 = &iStack_80d8" identifier = (pointer_expression "&iStack_80d8" & identifier)) ;) (expression_statement "iStack_81b4 = unaff_s7;" (assignment_expression "iStack_81b4 = unaff_s7" identifier = identifier) ;) (expression_statement "iStack_81b0 = iVar2;" (assignment_expression "iStack_81b0 = iVar2" identifier = identifier) ;) (expression_statement "pcStack_81ac = pcVar30;" (assignment_expression "pcStack_81ac = pcVar30" identifier = identifier) ;) (expression_statement "(**(code **)(pcVar28 + 0x8e444))();" (call_expression "(**(code **)(pcVar28 + 0x8e444))()" (parenthesized_expression "(**(code **)(pcVar28 + 0x8e444))" ( (pointer_expression "**(code **)(pcVar28 + 0x8e444)" * (pointer_expression "*(code **)(pcVar28 + 0x8e444)" * (cast_expression "(code **)(pcVar28 + 0x8e444)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar28 + 0x8e444)" ( (binary_expression "pcVar28 + 0x8e444" identifier + number_literal) ))))) )) (argument_list "()" ( ))) ;) (expression_statement "uVar7 = conf_new();" (assignment_expression "uVar7 = conf_new()" identifier = (call_expression "conf_new()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31fc) = uVar7;" (assignment_expression "*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31fc) = uVar7" (pointer_expression "*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31fc)" * (cast_expression "(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31fc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31fc)" ( (binary_expression "*(int *)(pcStack_81e8 + -0x7fd8) + -0x31fc" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fd8)" * (cast_expression "(int *)(pcStack_81e8 + -0x7fd8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_81e8 + -0x7fd8)" ( (binary_expression "pcStack_81e8 + -0x7fd8" identifier + number_literal) )))) + number_literal) )))) = identifier) ;) (expression_statement "do_defaults(0,uVar7);" (call_expression "do_defaults(0,uVar7)" identifier (argument_list "(0,uVar7)" ( number_literal , identifier ))) ;) (expression_statement "**(undefined4 **)(pcStack_81e8 + -0x7f60) = 0;" (assignment_expression "**(undefined4 **)(pcStack_81e8 + -0x7f60) = 0" (pointer_expression "**(undefined4 **)(pcStack_81e8 + -0x7f60)" * (pointer_expression "*(undefined4 **)(pcStack_81e8 + -0x7f60)" * (cast_expression "(undefined4 **)(pcStack_81e8 + -0x7f60)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_81e8 + -0x7f60)" ( (binary_expression "pcStack_81e8 + -0x7f60" identifier + number_literal) ))))) = number_literal) ;) (expression_statement "pcVar28 = pcStack_81e8;" (assignment_expression "pcVar28 = pcStack_81e8" identifier = identifier) ;) (if_statement "if (iVar4 < 2) {\n    iVar2 = 1;\n  }\n  else {\n    pcVar13 = *(char **)(iVar15 + 4);\n    piVar19 = (int *)(iVar15 + 4);\n    if (*pcVar13 == '-') {\n      iVar25 = *(int *)(pcStack_81e8 + -0x7fd8);\n      iVar26 = *(int *)(pcStack_81e8 + -0x7fc8);\n      pcVar27 = (char *)(*(int *)(pcStack_81e8 + -0x7fc8) + -0x47b8);\n      iVar29 = *(int *)(pcStack_81e8 + -0x7fc8);\n      pcStack_81dc = (code *)(*(int *)(pcStack_81e8 + -0x7db0) + -0x79e4);\n      iVar24 = 1;\nLAB_0002e488:\n      iVar2 = iVar24 + 1;\n      uVar7 = 0;\n      if (iVar2 < iVar4) {\n        uVar7 = *(undefined4 *)(iVar15 + (iVar24 + 1) * 4);\n      }\n      iVar8 = cmdline_process_param(pcVar13,uVar7,1,*(undefined4 *)(iVar25 + -0x31fc));\n      pcVar28 = pcStack_81e8;\n      if (iVar8 == -2) {\n        cmdline_error(*(int *)(pcStack_81e8 + -0x7fc8) + -0x47e4,*piVar19);\n        uVar7 = extraout_v1;\nLAB_0002e1d0:\n        iVar2 = iVar24;\n        if ((**(uint **)(pcVar28 + -0x7f44) & 1) != 0) {\n          *(undefined4 *)(*(int *)(pcVar28 + -0x7fd8) + -0x31c8) = uVar7;\n        }\n        goto LAB_0002e464;\n      }\n      uVar7 = 1;\n      if (iVar8 == 2) goto LAB_0002e464;\n      if (iVar8 == 1) goto LAB_0002e1d0;\n      iVar20 = *piVar19;\n      iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar26 + -0x47c0);\n      if (iVar8 == 0) {\n        (**(code **)(pcStack_81e8 + -0x7c54))();\n        uVar3 = 1;\n        goto LAB_0002e878;\n      }\n      iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20);\n      if (iVar8 == 0) {\n        *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31cc) = 1;\n        pcVar28 = pcStack_81e8;\n        iVar2 = iVar24;\n      }\n      else {\n        iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar29 + -0x47b4);\n        if (iVar8 == 0) {\n          *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d0) = 1;\n          pcVar28 = pcStack_81e8;\n          iVar2 = iVar24;\n        }\n        else {\n          iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                            (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47b0);\n          if (iVar8 == 0) {\n            *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fa8) = 0;\n            pcVar28 = pcStack_81e8;\n            iVar2 = iVar24;\n          }\n          else {\n            iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                              (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47ac);\n            if ((iVar8 != 0) &&\n               (iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                  (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47a8), iVar8 != 0))\n            {\n              iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47a4);\n              if (iVar8 != 0) {\n                iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                  (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x479c);\n                iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                if (iVar8 == 0) {\nLAB_0002e348:\n                  pcVar28 = pcStack_81e8;\n                  version();\n                }\n                else {\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar16 + -0x4798);\n                  iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                  if (iVar8 == 0) goto LAB_0002e348;\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar16 + -0x478c);\n                  iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                  pcVar28 = pcStack_81e8;\n                  if (iVar8 == 0) {\n                    *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31c4) = 1;\n                    iVar2 = iVar24;\n                    goto LAB_0002e464;\n                  }\n                }\n                iVar8 = (**(code **)(pcVar28 + -0x743c))(iVar20,iVar16 + -0x4788);\n                if (iVar8 == 0) {\n                  **(undefined4 **)(pcStack_81e8 + -0x7c4c) = 1;\n                  pcVar28 = pcStack_81e8;\n                  iVar2 = iVar24;\n                }\n                else {\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                    (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4780);\n                  if (iVar8 == 0) {\n                    *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31dc) = 1;\n                    pcVar28 = pcStack_81e8;\n                    iVar2 = iVar24;\n                  }\n                  else {\n                    iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                      (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4778);\n                    if (iVar8 == 0) {\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac) = 0;\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0) = 1;\n                      pcVar28 = pcStack_81e8;\n                      iVar2 = iVar24;\n                      goto LAB_0002e464;\n                    }\n                    iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                      (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4770);\n                    if (iVar8 == 0) {\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac) = 1;\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0) = 0;\n                      pcVar28 = pcStack_81e8;\n                      iVar2 = iVar24;\n                    }\n                    else {\n                      iVar24 = (**(code **)(pcStack_81e8 + -0x743c))\n                                         (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4768);\n                      pcVar28 = pcStack_81e8;\n                      if (iVar24 == 0) goto LAB_0002e52c;\n                      cmdline_error(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4764,iVar20);\n                    }\n                  }\n                }\n                goto LAB_0002e464;\n              }\n            }\n            (*pcStack_81dc)();\n            pcVar28 = pcStack_81e8;\n            iVar2 = iVar24;\n          }\n        }\n      }\nLAB_0002e464:\n      iVar2 = iVar2 + 1;\n      if (iVar4 <= iVar2) goto LAB_0002e52c;\n      piVar19 = (int *)(iVar15 + iVar2 * 4);\n      pcVar13 = (char *)*piVar19;\n      iVar24 = iVar2;\n      if (*pcVar13 != '-') goto LAB_0002e52c;\n      goto LAB_0002e488;\n    }\n    iVar2 = 1;\n  }" if (parenthesized_expression "(iVar4 < 2)" ( (binary_expression "iVar4 < 2" identifier < number_literal) )) (compound_statement "{\n    iVar2 = 1;\n  }" { (expression_statement "iVar2 = 1;" (assignment_expression "iVar2 = 1" identifier = number_literal) ;) }) (else_clause "else {\n    pcVar13 = *(char **)(iVar15 + 4);\n    piVar19 = (int *)(iVar15 + 4);\n    if (*pcVar13 == '-') {\n      iVar25 = *(int *)(pcStack_81e8 + -0x7fd8);\n      iVar26 = *(int *)(pcStack_81e8 + -0x7fc8);\n      pcVar27 = (char *)(*(int *)(pcStack_81e8 + -0x7fc8) + -0x47b8);\n      iVar29 = *(int *)(pcStack_81e8 + -0x7fc8);\n      pcStack_81dc = (code *)(*(int *)(pcStack_81e8 + -0x7db0) + -0x79e4);\n      iVar24 = 1;\nLAB_0002e488:\n      iVar2 = iVar24 + 1;\n      uVar7 = 0;\n      if (iVar2 < iVar4) {\n        uVar7 = *(undefined4 *)(iVar15 + (iVar24 + 1) * 4);\n      }\n      iVar8 = cmdline_process_param(pcVar13,uVar7,1,*(undefined4 *)(iVar25 + -0x31fc));\n      pcVar28 = pcStack_81e8;\n      if (iVar8 == -2) {\n        cmdline_error(*(int *)(pcStack_81e8 + -0x7fc8) + -0x47e4,*piVar19);\n        uVar7 = extraout_v1;\nLAB_0002e1d0:\n        iVar2 = iVar24;\n        if ((**(uint **)(pcVar28 + -0x7f44) & 1) != 0) {\n          *(undefined4 *)(*(int *)(pcVar28 + -0x7fd8) + -0x31c8) = uVar7;\n        }\n        goto LAB_0002e464;\n      }\n      uVar7 = 1;\n      if (iVar8 == 2) goto LAB_0002e464;\n      if (iVar8 == 1) goto LAB_0002e1d0;\n      iVar20 = *piVar19;\n      iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar26 + -0x47c0);\n      if (iVar8 == 0) {\n        (**(code **)(pcStack_81e8 + -0x7c54))();\n        uVar3 = 1;\n        goto LAB_0002e878;\n      }\n      iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20);\n      if (iVar8 == 0) {\n        *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31cc) = 1;\n        pcVar28 = pcStack_81e8;\n        iVar2 = iVar24;\n      }\n      else {\n        iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar29 + -0x47b4);\n        if (iVar8 == 0) {\n          *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d0) = 1;\n          pcVar28 = pcStack_81e8;\n          iVar2 = iVar24;\n        }\n        else {\n          iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                            (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47b0);\n          if (iVar8 == 0) {\n            *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fa8) = 0;\n            pcVar28 = pcStack_81e8;\n            iVar2 = iVar24;\n          }\n          else {\n            iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                              (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47ac);\n            if ((iVar8 != 0) &&\n               (iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                  (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47a8), iVar8 != 0))\n            {\n              iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47a4);\n              if (iVar8 != 0) {\n                iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                  (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x479c);\n                iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                if (iVar8 == 0) {\nLAB_0002e348:\n                  pcVar28 = pcStack_81e8;\n                  version();\n                }\n                else {\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar16 + -0x4798);\n                  iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                  if (iVar8 == 0) goto LAB_0002e348;\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar16 + -0x478c);\n                  iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                  pcVar28 = pcStack_81e8;\n                  if (iVar8 == 0) {\n                    *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31c4) = 1;\n                    iVar2 = iVar24;\n                    goto LAB_0002e464;\n                  }\n                }\n                iVar8 = (**(code **)(pcVar28 + -0x743c))(iVar20,iVar16 + -0x4788);\n                if (iVar8 == 0) {\n                  **(undefined4 **)(pcStack_81e8 + -0x7c4c) = 1;\n                  pcVar28 = pcStack_81e8;\n                  iVar2 = iVar24;\n                }\n                else {\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                    (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4780);\n                  if (iVar8 == 0) {\n                    *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31dc) = 1;\n                    pcVar28 = pcStack_81e8;\n                    iVar2 = iVar24;\n                  }\n                  else {\n                    iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                      (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4778);\n                    if (iVar8 == 0) {\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac) = 0;\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0) = 1;\n                      pcVar28 = pcStack_81e8;\n                      iVar2 = iVar24;\n                      goto LAB_0002e464;\n                    }\n                    iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                      (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4770);\n                    if (iVar8 == 0) {\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac) = 1;\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0) = 0;\n                      pcVar28 = pcStack_81e8;\n                      iVar2 = iVar24;\n                    }\n                    else {\n                      iVar24 = (**(code **)(pcStack_81e8 + -0x743c))\n                                         (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4768);\n                      pcVar28 = pcStack_81e8;\n                      if (iVar24 == 0) goto LAB_0002e52c;\n                      cmdline_error(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4764,iVar20);\n                    }\n                  }\n                }\n                goto LAB_0002e464;\n              }\n            }\n            (*pcStack_81dc)();\n            pcVar28 = pcStack_81e8;\n            iVar2 = iVar24;\n          }\n        }\n      }\nLAB_0002e464:\n      iVar2 = iVar2 + 1;\n      if (iVar4 <= iVar2) goto LAB_0002e52c;\n      piVar19 = (int *)(iVar15 + iVar2 * 4);\n      pcVar13 = (char *)*piVar19;\n      iVar24 = iVar2;\n      if (*pcVar13 != '-') goto LAB_0002e52c;\n      goto LAB_0002e488;\n    }\n    iVar2 = 1;\n  }" else (compound_statement "{\n    pcVar13 = *(char **)(iVar15 + 4);\n    piVar19 = (int *)(iVar15 + 4);\n    if (*pcVar13 == '-') {\n      iVar25 = *(int *)(pcStack_81e8 + -0x7fd8);\n      iVar26 = *(int *)(pcStack_81e8 + -0x7fc8);\n      pcVar27 = (char *)(*(int *)(pcStack_81e8 + -0x7fc8) + -0x47b8);\n      iVar29 = *(int *)(pcStack_81e8 + -0x7fc8);\n      pcStack_81dc = (code *)(*(int *)(pcStack_81e8 + -0x7db0) + -0x79e4);\n      iVar24 = 1;\nLAB_0002e488:\n      iVar2 = iVar24 + 1;\n      uVar7 = 0;\n      if (iVar2 < iVar4) {\n        uVar7 = *(undefined4 *)(iVar15 + (iVar24 + 1) * 4);\n      }\n      iVar8 = cmdline_process_param(pcVar13,uVar7,1,*(undefined4 *)(iVar25 + -0x31fc));\n      pcVar28 = pcStack_81e8;\n      if (iVar8 == -2) {\n        cmdline_error(*(int *)(pcStack_81e8 + -0x7fc8) + -0x47e4,*piVar19);\n        uVar7 = extraout_v1;\nLAB_0002e1d0:\n        iVar2 = iVar24;\n        if ((**(uint **)(pcVar28 + -0x7f44) & 1) != 0) {\n          *(undefined4 *)(*(int *)(pcVar28 + -0x7fd8) + -0x31c8) = uVar7;\n        }\n        goto LAB_0002e464;\n      }\n      uVar7 = 1;\n      if (iVar8 == 2) goto LAB_0002e464;\n      if (iVar8 == 1) goto LAB_0002e1d0;\n      iVar20 = *piVar19;\n      iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar26 + -0x47c0);\n      if (iVar8 == 0) {\n        (**(code **)(pcStack_81e8 + -0x7c54))();\n        uVar3 = 1;\n        goto LAB_0002e878;\n      }\n      iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20);\n      if (iVar8 == 0) {\n        *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31cc) = 1;\n        pcVar28 = pcStack_81e8;\n        iVar2 = iVar24;\n      }\n      else {\n        iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar29 + -0x47b4);\n        if (iVar8 == 0) {\n          *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d0) = 1;\n          pcVar28 = pcStack_81e8;\n          iVar2 = iVar24;\n        }\n        else {\n          iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                            (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47b0);\n          if (iVar8 == 0) {\n            *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fa8) = 0;\n            pcVar28 = pcStack_81e8;\n            iVar2 = iVar24;\n          }\n          else {\n            iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                              (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47ac);\n            if ((iVar8 != 0) &&\n               (iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                  (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47a8), iVar8 != 0))\n            {\n              iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47a4);\n              if (iVar8 != 0) {\n                iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                  (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x479c);\n                iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                if (iVar8 == 0) {\nLAB_0002e348:\n                  pcVar28 = pcStack_81e8;\n                  version();\n                }\n                else {\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar16 + -0x4798);\n                  iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                  if (iVar8 == 0) goto LAB_0002e348;\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar16 + -0x478c);\n                  iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                  pcVar28 = pcStack_81e8;\n                  if (iVar8 == 0) {\n                    *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31c4) = 1;\n                    iVar2 = iVar24;\n                    goto LAB_0002e464;\n                  }\n                }\n                iVar8 = (**(code **)(pcVar28 + -0x743c))(iVar20,iVar16 + -0x4788);\n                if (iVar8 == 0) {\n                  **(undefined4 **)(pcStack_81e8 + -0x7c4c) = 1;\n                  pcVar28 = pcStack_81e8;\n                  iVar2 = iVar24;\n                }\n                else {\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                    (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4780);\n                  if (iVar8 == 0) {\n                    *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31dc) = 1;\n                    pcVar28 = pcStack_81e8;\n                    iVar2 = iVar24;\n                  }\n                  else {\n                    iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                      (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4778);\n                    if (iVar8 == 0) {\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac) = 0;\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0) = 1;\n                      pcVar28 = pcStack_81e8;\n                      iVar2 = iVar24;\n                      goto LAB_0002e464;\n                    }\n                    iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                      (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4770);\n                    if (iVar8 == 0) {\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac) = 1;\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0) = 0;\n                      pcVar28 = pcStack_81e8;\n                      iVar2 = iVar24;\n                    }\n                    else {\n                      iVar24 = (**(code **)(pcStack_81e8 + -0x743c))\n                                         (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4768);\n                      pcVar28 = pcStack_81e8;\n                      if (iVar24 == 0) goto LAB_0002e52c;\n                      cmdline_error(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4764,iVar20);\n                    }\n                  }\n                }\n                goto LAB_0002e464;\n              }\n            }\n            (*pcStack_81dc)();\n            pcVar28 = pcStack_81e8;\n            iVar2 = iVar24;\n          }\n        }\n      }\nLAB_0002e464:\n      iVar2 = iVar2 + 1;\n      if (iVar4 <= iVar2) goto LAB_0002e52c;\n      piVar19 = (int *)(iVar15 + iVar2 * 4);\n      pcVar13 = (char *)*piVar19;\n      iVar24 = iVar2;\n      if (*pcVar13 != '-') goto LAB_0002e52c;\n      goto LAB_0002e488;\n    }\n    iVar2 = 1;\n  }" { (expression_statement "pcVar13 = *(char **)(iVar15 + 4);" (assignment_expression "pcVar13 = *(char **)(iVar15 + 4)" identifier = (pointer_expression "*(char **)(iVar15 + 4)" * (cast_expression "(char **)(iVar15 + 4)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar15 + 4)" ( (binary_expression "iVar15 + 4" identifier + number_literal) ))))) ;) (expression_statement "piVar19 = (int *)(iVar15 + 4);" (assignment_expression "piVar19 = (int *)(iVar15 + 4)" identifier = (cast_expression "(int *)(iVar15 + 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar15 + 4)" ( (binary_expression "iVar15 + 4" identifier + number_literal) )))) ;) (if_statement "if (*pcVar13 == '-') {\n      iVar25 = *(int *)(pcStack_81e8 + -0x7fd8);\n      iVar26 = *(int *)(pcStack_81e8 + -0x7fc8);\n      pcVar27 = (char *)(*(int *)(pcStack_81e8 + -0x7fc8) + -0x47b8);\n      iVar29 = *(int *)(pcStack_81e8 + -0x7fc8);\n      pcStack_81dc = (code *)(*(int *)(pcStack_81e8 + -0x7db0) + -0x79e4);\n      iVar24 = 1;\nLAB_0002e488:\n      iVar2 = iVar24 + 1;\n      uVar7 = 0;\n      if (iVar2 < iVar4) {\n        uVar7 = *(undefined4 *)(iVar15 + (iVar24 + 1) * 4);\n      }\n      iVar8 = cmdline_process_param(pcVar13,uVar7,1,*(undefined4 *)(iVar25 + -0x31fc));\n      pcVar28 = pcStack_81e8;\n      if (iVar8 == -2) {\n        cmdline_error(*(int *)(pcStack_81e8 + -0x7fc8) + -0x47e4,*piVar19);\n        uVar7 = extraout_v1;\nLAB_0002e1d0:\n        iVar2 = iVar24;\n        if ((**(uint **)(pcVar28 + -0x7f44) & 1) != 0) {\n          *(undefined4 *)(*(int *)(pcVar28 + -0x7fd8) + -0x31c8) = uVar7;\n        }\n        goto LAB_0002e464;\n      }\n      uVar7 = 1;\n      if (iVar8 == 2) goto LAB_0002e464;\n      if (iVar8 == 1) goto LAB_0002e1d0;\n      iVar20 = *piVar19;\n      iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar26 + -0x47c0);\n      if (iVar8 == 0) {\n        (**(code **)(pcStack_81e8 + -0x7c54))();\n        uVar3 = 1;\n        goto LAB_0002e878;\n      }\n      iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20);\n      if (iVar8 == 0) {\n        *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31cc) = 1;\n        pcVar28 = pcStack_81e8;\n        iVar2 = iVar24;\n      }\n      else {\n        iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar29 + -0x47b4);\n        if (iVar8 == 0) {\n          *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d0) = 1;\n          pcVar28 = pcStack_81e8;\n          iVar2 = iVar24;\n        }\n        else {\n          iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                            (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47b0);\n          if (iVar8 == 0) {\n            *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fa8) = 0;\n            pcVar28 = pcStack_81e8;\n            iVar2 = iVar24;\n          }\n          else {\n            iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                              (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47ac);\n            if ((iVar8 != 0) &&\n               (iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                  (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47a8), iVar8 != 0))\n            {\n              iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47a4);\n              if (iVar8 != 0) {\n                iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                  (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x479c);\n                iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                if (iVar8 == 0) {\nLAB_0002e348:\n                  pcVar28 = pcStack_81e8;\n                  version();\n                }\n                else {\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar16 + -0x4798);\n                  iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                  if (iVar8 == 0) goto LAB_0002e348;\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar16 + -0x478c);\n                  iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                  pcVar28 = pcStack_81e8;\n                  if (iVar8 == 0) {\n                    *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31c4) = 1;\n                    iVar2 = iVar24;\n                    goto LAB_0002e464;\n                  }\n                }\n                iVar8 = (**(code **)(pcVar28 + -0x743c))(iVar20,iVar16 + -0x4788);\n                if (iVar8 == 0) {\n                  **(undefined4 **)(pcStack_81e8 + -0x7c4c) = 1;\n                  pcVar28 = pcStack_81e8;\n                  iVar2 = iVar24;\n                }\n                else {\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                    (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4780);\n                  if (iVar8 == 0) {\n                    *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31dc) = 1;\n                    pcVar28 = pcStack_81e8;\n                    iVar2 = iVar24;\n                  }\n                  else {\n                    iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                      (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4778);\n                    if (iVar8 == 0) {\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac) = 0;\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0) = 1;\n                      pcVar28 = pcStack_81e8;\n                      iVar2 = iVar24;\n                      goto LAB_0002e464;\n                    }\n                    iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                      (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4770);\n                    if (iVar8 == 0) {\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac) = 1;\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0) = 0;\n                      pcVar28 = pcStack_81e8;\n                      iVar2 = iVar24;\n                    }\n                    else {\n                      iVar24 = (**(code **)(pcStack_81e8 + -0x743c))\n                                         (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4768);\n                      pcVar28 = pcStack_81e8;\n                      if (iVar24 == 0) goto LAB_0002e52c;\n                      cmdline_error(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4764,iVar20);\n                    }\n                  }\n                }\n                goto LAB_0002e464;\n              }\n            }\n            (*pcStack_81dc)();\n            pcVar28 = pcStack_81e8;\n            iVar2 = iVar24;\n          }\n        }\n      }\nLAB_0002e464:\n      iVar2 = iVar2 + 1;\n      if (iVar4 <= iVar2) goto LAB_0002e52c;\n      piVar19 = (int *)(iVar15 + iVar2 * 4);\n      pcVar13 = (char *)*piVar19;\n      iVar24 = iVar2;\n      if (*pcVar13 != '-') goto LAB_0002e52c;\n      goto LAB_0002e488;\n    }" if (parenthesized_expression "(*pcVar13 == '-')" ( (binary_expression "*pcVar13 == '-'" (pointer_expression "*pcVar13" * identifier) == (char_literal "'-'" ' character ')) )) (compound_statement "{\n      iVar25 = *(int *)(pcStack_81e8 + -0x7fd8);\n      iVar26 = *(int *)(pcStack_81e8 + -0x7fc8);\n      pcVar27 = (char *)(*(int *)(pcStack_81e8 + -0x7fc8) + -0x47b8);\n      iVar29 = *(int *)(pcStack_81e8 + -0x7fc8);\n      pcStack_81dc = (code *)(*(int *)(pcStack_81e8 + -0x7db0) + -0x79e4);\n      iVar24 = 1;\nLAB_0002e488:\n      iVar2 = iVar24 + 1;\n      uVar7 = 0;\n      if (iVar2 < iVar4) {\n        uVar7 = *(undefined4 *)(iVar15 + (iVar24 + 1) * 4);\n      }\n      iVar8 = cmdline_process_param(pcVar13,uVar7,1,*(undefined4 *)(iVar25 + -0x31fc));\n      pcVar28 = pcStack_81e8;\n      if (iVar8 == -2) {\n        cmdline_error(*(int *)(pcStack_81e8 + -0x7fc8) + -0x47e4,*piVar19);\n        uVar7 = extraout_v1;\nLAB_0002e1d0:\n        iVar2 = iVar24;\n        if ((**(uint **)(pcVar28 + -0x7f44) & 1) != 0) {\n          *(undefined4 *)(*(int *)(pcVar28 + -0x7fd8) + -0x31c8) = uVar7;\n        }\n        goto LAB_0002e464;\n      }\n      uVar7 = 1;\n      if (iVar8 == 2) goto LAB_0002e464;\n      if (iVar8 == 1) goto LAB_0002e1d0;\n      iVar20 = *piVar19;\n      iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar26 + -0x47c0);\n      if (iVar8 == 0) {\n        (**(code **)(pcStack_81e8 + -0x7c54))();\n        uVar3 = 1;\n        goto LAB_0002e878;\n      }\n      iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20);\n      if (iVar8 == 0) {\n        *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31cc) = 1;\n        pcVar28 = pcStack_81e8;\n        iVar2 = iVar24;\n      }\n      else {\n        iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar29 + -0x47b4);\n        if (iVar8 == 0) {\n          *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d0) = 1;\n          pcVar28 = pcStack_81e8;\n          iVar2 = iVar24;\n        }\n        else {\n          iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                            (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47b0);\n          if (iVar8 == 0) {\n            *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fa8) = 0;\n            pcVar28 = pcStack_81e8;\n            iVar2 = iVar24;\n          }\n          else {\n            iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                              (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47ac);\n            if ((iVar8 != 0) &&\n               (iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                  (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47a8), iVar8 != 0))\n            {\n              iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47a4);\n              if (iVar8 != 0) {\n                iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                  (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x479c);\n                iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                if (iVar8 == 0) {\nLAB_0002e348:\n                  pcVar28 = pcStack_81e8;\n                  version();\n                }\n                else {\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar16 + -0x4798);\n                  iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                  if (iVar8 == 0) goto LAB_0002e348;\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar16 + -0x478c);\n                  iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                  pcVar28 = pcStack_81e8;\n                  if (iVar8 == 0) {\n                    *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31c4) = 1;\n                    iVar2 = iVar24;\n                    goto LAB_0002e464;\n                  }\n                }\n                iVar8 = (**(code **)(pcVar28 + -0x743c))(iVar20,iVar16 + -0x4788);\n                if (iVar8 == 0) {\n                  **(undefined4 **)(pcStack_81e8 + -0x7c4c) = 1;\n                  pcVar28 = pcStack_81e8;\n                  iVar2 = iVar24;\n                }\n                else {\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                    (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4780);\n                  if (iVar8 == 0) {\n                    *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31dc) = 1;\n                    pcVar28 = pcStack_81e8;\n                    iVar2 = iVar24;\n                  }\n                  else {\n                    iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                      (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4778);\n                    if (iVar8 == 0) {\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac) = 0;\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0) = 1;\n                      pcVar28 = pcStack_81e8;\n                      iVar2 = iVar24;\n                      goto LAB_0002e464;\n                    }\n                    iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                      (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4770);\n                    if (iVar8 == 0) {\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac) = 1;\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0) = 0;\n                      pcVar28 = pcStack_81e8;\n                      iVar2 = iVar24;\n                    }\n                    else {\n                      iVar24 = (**(code **)(pcStack_81e8 + -0x743c))\n                                         (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4768);\n                      pcVar28 = pcStack_81e8;\n                      if (iVar24 == 0) goto LAB_0002e52c;\n                      cmdline_error(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4764,iVar20);\n                    }\n                  }\n                }\n                goto LAB_0002e464;\n              }\n            }\n            (*pcStack_81dc)();\n            pcVar28 = pcStack_81e8;\n            iVar2 = iVar24;\n          }\n        }\n      }\nLAB_0002e464:\n      iVar2 = iVar2 + 1;\n      if (iVar4 <= iVar2) goto LAB_0002e52c;\n      piVar19 = (int *)(iVar15 + iVar2 * 4);\n      pcVar13 = (char *)*piVar19;\n      iVar24 = iVar2;\n      if (*pcVar13 != '-') goto LAB_0002e52c;\n      goto LAB_0002e488;\n    }" { (expression_statement "iVar25 = *(int *)(pcStack_81e8 + -0x7fd8);" (assignment_expression "iVar25 = *(int *)(pcStack_81e8 + -0x7fd8)" identifier = (pointer_expression "*(int *)(pcStack_81e8 + -0x7fd8)" * (cast_expression "(int *)(pcStack_81e8 + -0x7fd8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_81e8 + -0x7fd8)" ( (binary_expression "pcStack_81e8 + -0x7fd8" identifier + number_literal) ))))) ;) (expression_statement "iVar26 = *(int *)(pcStack_81e8 + -0x7fc8);" (assignment_expression "iVar26 = *(int *)(pcStack_81e8 + -0x7fc8)" identifier = (pointer_expression "*(int *)(pcStack_81e8 + -0x7fc8)" * (cast_expression "(int *)(pcStack_81e8 + -0x7fc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_81e8 + -0x7fc8)" ( (binary_expression "pcStack_81e8 + -0x7fc8" identifier + number_literal) ))))) ;) (expression_statement "pcVar27 = (char *)(*(int *)(pcStack_81e8 + -0x7fc8) + -0x47b8);" (assignment_expression "pcVar27 = (char *)(*(int *)(pcStack_81e8 + -0x7fc8) + -0x47b8)" identifier = (cast_expression "(char *)(*(int *)(pcStack_81e8 + -0x7fc8) + -0x47b8)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcStack_81e8 + -0x7fc8) + -0x47b8)" ( (binary_expression "*(int *)(pcStack_81e8 + -0x7fc8) + -0x47b8" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fc8)" * (cast_expression "(int *)(pcStack_81e8 + -0x7fc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_81e8 + -0x7fc8)" ( (binary_expression "pcStack_81e8 + -0x7fc8" identifier + number_literal) )))) + number_literal) )))) ;) (expression_statement "iVar29 = *(int *)(pcStack_81e8 + -0x7fc8);" (assignment_expression "iVar29 = *(int *)(pcStack_81e8 + -0x7fc8)" identifier = (pointer_expression "*(int *)(pcStack_81e8 + -0x7fc8)" * (cast_expression "(int *)(pcStack_81e8 + -0x7fc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_81e8 + -0x7fc8)" ( (binary_expression "pcStack_81e8 + -0x7fc8" identifier + number_literal) ))))) ;) (expression_statement "pcStack_81dc = (code *)(*(int *)(pcStack_81e8 + -0x7db0) + -0x79e4);" (assignment_expression "pcStack_81dc = (code *)(*(int *)(pcStack_81e8 + -0x7db0) + -0x79e4)" identifier = (cast_expression "(code *)(*(int *)(pcStack_81e8 + -0x7db0) + -0x79e4)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcStack_81e8 + -0x7db0) + -0x79e4)" ( (binary_expression "*(int *)(pcStack_81e8 + -0x7db0) + -0x79e4" (pointer_expression "*(int *)(pcStack_81e8 + -0x7db0)" * (cast_expression "(int *)(pcStack_81e8 + -0x7db0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_81e8 + -0x7db0)" ( (binary_expression "pcStack_81e8 + -0x7db0" identifier + number_literal) )))) + number_literal) )))) ;) (expression_statement "iVar24 = 1;" (assignment_expression "iVar24 = 1" identifier = number_literal) ;) (labeled_statement "LAB_0002e488:\n      iVar2 = iVar24 + 1;" statement_identifier : (expression_statement "iVar2 = iVar24 + 1;" (assignment_expression "iVar2 = iVar24 + 1" identifier = (binary_expression "iVar24 + 1" identifier + number_literal)) ;)) (expression_statement "uVar7 = 0;" (assignment_expression "uVar7 = 0" identifier = number_literal) ;) (if_statement "if (iVar2 < iVar4) {\n        uVar7 = *(undefined4 *)(iVar15 + (iVar24 + 1) * 4);\n      }" if (parenthesized_expression "(iVar2 < iVar4)" ( (binary_expression "iVar2 < iVar4" identifier < identifier) )) (compound_statement "{\n        uVar7 = *(undefined4 *)(iVar15 + (iVar24 + 1) * 4);\n      }" { (expression_statement "uVar7 = *(undefined4 *)(iVar15 + (iVar24 + 1) * 4);" (assignment_expression "uVar7 = *(undefined4 *)(iVar15 + (iVar24 + 1) * 4)" identifier = (pointer_expression "*(undefined4 *)(iVar15 + (iVar24 + 1) * 4)" * (cast_expression "(undefined4 *)(iVar15 + (iVar24 + 1) * 4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar15 + (iVar24 + 1) * 4)" ( (binary_expression "iVar15 + (iVar24 + 1) * 4" identifier + (binary_expression "(iVar24 + 1) * 4" (parenthesized_expression "(iVar24 + 1)" ( (binary_expression "iVar24 + 1" identifier + number_literal) )) * number_literal)) ))))) ;) })) (expression_statement "iVar8 = cmdline_process_param(pcVar13,uVar7,1,*(undefined4 *)(iVar25 + -0x31fc));" (assignment_expression "iVar8 = cmdline_process_param(pcVar13,uVar7,1,*(undefined4 *)(iVar25 + -0x31fc))" identifier = (call_expression "cmdline_process_param(pcVar13,uVar7,1,*(undefined4 *)(iVar25 + -0x31fc))" identifier (argument_list "(pcVar13,uVar7,1,*(undefined4 *)(iVar25 + -0x31fc))" ( identifier , identifier , number_literal , (pointer_expression "*(undefined4 *)(iVar25 + -0x31fc)" * (cast_expression "(undefined4 *)(iVar25 + -0x31fc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar25 + -0x31fc)" ( (binary_expression "iVar25 + -0x31fc" identifier + number_literal) )))) )))) ;) (expression_statement "pcVar28 = pcStack_81e8;" (assignment_expression "pcVar28 = pcStack_81e8" identifier = identifier) ;) (if_statement "if (iVar8 == -2) {\n        cmdline_error(*(int *)(pcStack_81e8 + -0x7fc8) + -0x47e4,*piVar19);\n        uVar7 = extraout_v1;\nLAB_0002e1d0:\n        iVar2 = iVar24;\n        if ((**(uint **)(pcVar28 + -0x7f44) & 1) != 0) {\n          *(undefined4 *)(*(int *)(pcVar28 + -0x7fd8) + -0x31c8) = uVar7;\n        }\n        goto LAB_0002e464;\n      }" if (parenthesized_expression "(iVar8 == -2)" ( (binary_expression "iVar8 == -2" identifier == number_literal) )) (compound_statement "{\n        cmdline_error(*(int *)(pcStack_81e8 + -0x7fc8) + -0x47e4,*piVar19);\n        uVar7 = extraout_v1;\nLAB_0002e1d0:\n        iVar2 = iVar24;\n        if ((**(uint **)(pcVar28 + -0x7f44) & 1) != 0) {\n          *(undefined4 *)(*(int *)(pcVar28 + -0x7fd8) + -0x31c8) = uVar7;\n        }\n        goto LAB_0002e464;\n      }" { (expression_statement "cmdline_error(*(int *)(pcStack_81e8 + -0x7fc8) + -0x47e4,*piVar19);" (call_expression "cmdline_error(*(int *)(pcStack_81e8 + -0x7fc8) + -0x47e4,*piVar19)" identifier (argument_list "(*(int *)(pcStack_81e8 + -0x7fc8) + -0x47e4,*piVar19)" ( (binary_expression "*(int *)(pcStack_81e8 + -0x7fc8) + -0x47e4" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fc8)" * (cast_expression "(int *)(pcStack_81e8 + -0x7fc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_81e8 + -0x7fc8)" ( (binary_expression "pcStack_81e8 + -0x7fc8" identifier + number_literal) )))) + number_literal) , (pointer_expression "*piVar19" * identifier) ))) ;) (expression_statement "uVar7 = extraout_v1;" (assignment_expression "uVar7 = extraout_v1" identifier = identifier) ;) (labeled_statement "LAB_0002e1d0:\n        iVar2 = iVar24;" statement_identifier : (expression_statement "iVar2 = iVar24;" (assignment_expression "iVar2 = iVar24" identifier = identifier) ;)) (if_statement "if ((**(uint **)(pcVar28 + -0x7f44) & 1) != 0) {\n          *(undefined4 *)(*(int *)(pcVar28 + -0x7fd8) + -0x31c8) = uVar7;\n        }" if (parenthesized_expression "((**(uint **)(pcVar28 + -0x7f44) & 1) != 0)" ( (binary_expression "(**(uint **)(pcVar28 + -0x7f44) & 1) != 0" (parenthesized_expression "(**(uint **)(pcVar28 + -0x7f44) & 1)" ( (binary_expression "**(uint **)(pcVar28 + -0x7f44) & 1" (pointer_expression "**(uint **)(pcVar28 + -0x7f44)" * (pointer_expression "*(uint **)(pcVar28 + -0x7f44)" * (cast_expression "(uint **)(pcVar28 + -0x7f44)" ( (type_descriptor "uint **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar28 + -0x7f44)" ( (binary_expression "pcVar28 + -0x7f44" identifier + number_literal) ))))) & number_literal) )) != number_literal) )) (compound_statement "{\n          *(undefined4 *)(*(int *)(pcVar28 + -0x7fd8) + -0x31c8) = uVar7;\n        }" { (expression_statement "*(undefined4 *)(*(int *)(pcVar28 + -0x7fd8) + -0x31c8) = uVar7;" (assignment_expression "*(undefined4 *)(*(int *)(pcVar28 + -0x7fd8) + -0x31c8) = uVar7" (pointer_expression "*(undefined4 *)(*(int *)(pcVar28 + -0x7fd8) + -0x31c8)" * (cast_expression "(undefined4 *)(*(int *)(pcVar28 + -0x7fd8) + -0x31c8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar28 + -0x7fd8) + -0x31c8)" ( (binary_expression "*(int *)(pcVar28 + -0x7fd8) + -0x31c8" (pointer_expression "*(int *)(pcVar28 + -0x7fd8)" * (cast_expression "(int *)(pcVar28 + -0x7fd8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar28 + -0x7fd8)" ( (binary_expression "pcVar28 + -0x7fd8" identifier + number_literal) )))) + number_literal) )))) = identifier) ;) })) (goto_statement "goto LAB_0002e464;" goto statement_identifier ;) })) (expression_statement "uVar7 = 1;" (assignment_expression "uVar7 = 1" identifier = number_literal) ;) (if_statement "if (iVar8 == 2) goto LAB_0002e464;" if (parenthesized_expression "(iVar8 == 2)" ( (binary_expression "iVar8 == 2" identifier == number_literal) )) (goto_statement "goto LAB_0002e464;" goto statement_identifier ;)) (if_statement "if (iVar8 == 1) goto LAB_0002e1d0;" if (parenthesized_expression "(iVar8 == 1)" ( (binary_expression "iVar8 == 1" identifier == number_literal) )) (goto_statement "goto LAB_0002e1d0;" goto statement_identifier ;)) (expression_statement "iVar20 = *piVar19;" (assignment_expression "iVar20 = *piVar19" identifier = (pointer_expression "*piVar19" * identifier)) ;) (expression_statement "iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar26 + -0x47c0);" (assignment_expression "iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar26 + -0x47c0)" identifier = (call_expression "(**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar26 + -0x47c0)" (parenthesized_expression "(**(code **)(pcStack_81e8 + -0x743c))" ( (pointer_expression "**(code **)(pcStack_81e8 + -0x743c)" * (pointer_expression "*(code **)(pcStack_81e8 + -0x743c)" * (cast_expression "(code **)(pcStack_81e8 + -0x743c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_81e8 + -0x743c)" ( (binary_expression "pcStack_81e8 + -0x743c" identifier + number_literal) ))))) )) (argument_list "(iVar20,iVar26 + -0x47c0)" ( identifier , (binary_expression "iVar26 + -0x47c0" identifier + number_literal) )))) ;) (if_statement "if (iVar8 == 0) {\n        (**(code **)(pcStack_81e8 + -0x7c54))();\n        uVar3 = 1;\n        goto LAB_0002e878;\n      }" if (parenthesized_expression "(iVar8 == 0)" ( (binary_expression "iVar8 == 0" identifier == number_literal) )) (compound_statement "{\n        (**(code **)(pcStack_81e8 + -0x7c54))();\n        uVar3 = 1;\n        goto LAB_0002e878;\n      }" { (expression_statement "(**(code **)(pcStack_81e8 + -0x7c54))();" (call_expression "(**(code **)(pcStack_81e8 + -0x7c54))()" (parenthesized_expression "(**(code **)(pcStack_81e8 + -0x7c54))" ( (pointer_expression "**(code **)(pcStack_81e8 + -0x7c54)" * (pointer_expression "*(code **)(pcStack_81e8 + -0x7c54)" * (cast_expression "(code **)(pcStack_81e8 + -0x7c54)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_81e8 + -0x7c54)" ( (binary_expression "pcStack_81e8 + -0x7c54" identifier + number_literal) ))))) )) (argument_list "()" ( ))) ;) (expression_statement "uVar3 = 1;" (assignment_expression "uVar3 = 1" identifier = number_literal) ;) (goto_statement "goto LAB_0002e878;" goto statement_identifier ;) })) (expression_statement "iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20);" (assignment_expression "iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20)" identifier = (call_expression "(**(code **)(pcStack_81e8 + -0x743c))(iVar20)" (parenthesized_expression "(**(code **)(pcStack_81e8 + -0x743c))" ( (pointer_expression "**(code **)(pcStack_81e8 + -0x743c)" * (pointer_expression "*(code **)(pcStack_81e8 + -0x743c)" * (cast_expression "(code **)(pcStack_81e8 + -0x743c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_81e8 + -0x743c)" ( (binary_expression "pcStack_81e8 + -0x743c" identifier + number_literal) ))))) )) (argument_list "(iVar20)" ( identifier )))) ;) (if_statement "if (iVar8 == 0) {\n        *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31cc) = 1;\n        pcVar28 = pcStack_81e8;\n        iVar2 = iVar24;\n      }\n      else {\n        iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar29 + -0x47b4);\n        if (iVar8 == 0) {\n          *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d0) = 1;\n          pcVar28 = pcStack_81e8;\n          iVar2 = iVar24;\n        }\n        else {\n          iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                            (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47b0);\n          if (iVar8 == 0) {\n            *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fa8) = 0;\n            pcVar28 = pcStack_81e8;\n            iVar2 = iVar24;\n          }\n          else {\n            iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                              (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47ac);\n            if ((iVar8 != 0) &&\n               (iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                  (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47a8), iVar8 != 0))\n            {\n              iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47a4);\n              if (iVar8 != 0) {\n                iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                  (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x479c);\n                iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                if (iVar8 == 0) {\nLAB_0002e348:\n                  pcVar28 = pcStack_81e8;\n                  version();\n                }\n                else {\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar16 + -0x4798);\n                  iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                  if (iVar8 == 0) goto LAB_0002e348;\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar16 + -0x478c);\n                  iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                  pcVar28 = pcStack_81e8;\n                  if (iVar8 == 0) {\n                    *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31c4) = 1;\n                    iVar2 = iVar24;\n                    goto LAB_0002e464;\n                  }\n                }\n                iVar8 = (**(code **)(pcVar28 + -0x743c))(iVar20,iVar16 + -0x4788);\n                if (iVar8 == 0) {\n                  **(undefined4 **)(pcStack_81e8 + -0x7c4c) = 1;\n                  pcVar28 = pcStack_81e8;\n                  iVar2 = iVar24;\n                }\n                else {\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                    (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4780);\n                  if (iVar8 == 0) {\n                    *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31dc) = 1;\n                    pcVar28 = pcStack_81e8;\n                    iVar2 = iVar24;\n                  }\n                  else {\n                    iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                      (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4778);\n                    if (iVar8 == 0) {\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac) = 0;\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0) = 1;\n                      pcVar28 = pcStack_81e8;\n                      iVar2 = iVar24;\n                      goto LAB_0002e464;\n                    }\n                    iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                      (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4770);\n                    if (iVar8 == 0) {\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac) = 1;\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0) = 0;\n                      pcVar28 = pcStack_81e8;\n                      iVar2 = iVar24;\n                    }\n                    else {\n                      iVar24 = (**(code **)(pcStack_81e8 + -0x743c))\n                                         (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4768);\n                      pcVar28 = pcStack_81e8;\n                      if (iVar24 == 0) goto LAB_0002e52c;\n                      cmdline_error(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4764,iVar20);\n                    }\n                  }\n                }\n                goto LAB_0002e464;\n              }\n            }\n            (*pcStack_81dc)();\n            pcVar28 = pcStack_81e8;\n            iVar2 = iVar24;\n          }\n        }\n      }" if (parenthesized_expression "(iVar8 == 0)" ( (binary_expression "iVar8 == 0" identifier == number_literal) )) (compound_statement "{\n        *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31cc) = 1;\n        pcVar28 = pcStack_81e8;\n        iVar2 = iVar24;\n      }" { (expression_statement "*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31cc) = 1;" (assignment_expression "*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31cc) = 1" (pointer_expression "*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31cc)" * (cast_expression "(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31cc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31cc)" ( (binary_expression "*(int *)(pcStack_81e8 + -0x7fd8) + -0x31cc" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fd8)" * (cast_expression "(int *)(pcStack_81e8 + -0x7fd8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_81e8 + -0x7fd8)" ( (binary_expression "pcStack_81e8 + -0x7fd8" identifier + number_literal) )))) + number_literal) )))) = number_literal) ;) (expression_statement "pcVar28 = pcStack_81e8;" (assignment_expression "pcVar28 = pcStack_81e8" identifier = identifier) ;) (expression_statement "iVar2 = iVar24;" (assignment_expression "iVar2 = iVar24" identifier = identifier) ;) }) (else_clause "else {\n        iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar29 + -0x47b4);\n        if (iVar8 == 0) {\n          *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d0) = 1;\n          pcVar28 = pcStack_81e8;\n          iVar2 = iVar24;\n        }\n        else {\n          iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                            (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47b0);\n          if (iVar8 == 0) {\n            *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fa8) = 0;\n            pcVar28 = pcStack_81e8;\n            iVar2 = iVar24;\n          }\n          else {\n            iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                              (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47ac);\n            if ((iVar8 != 0) &&\n               (iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                  (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47a8), iVar8 != 0))\n            {\n              iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47a4);\n              if (iVar8 != 0) {\n                iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                  (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x479c);\n                iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                if (iVar8 == 0) {\nLAB_0002e348:\n                  pcVar28 = pcStack_81e8;\n                  version();\n                }\n                else {\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar16 + -0x4798);\n                  iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                  if (iVar8 == 0) goto LAB_0002e348;\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar16 + -0x478c);\n                  iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                  pcVar28 = pcStack_81e8;\n                  if (iVar8 == 0) {\n                    *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31c4) = 1;\n                    iVar2 = iVar24;\n                    goto LAB_0002e464;\n                  }\n                }\n                iVar8 = (**(code **)(pcVar28 + -0x743c))(iVar20,iVar16 + -0x4788);\n                if (iVar8 == 0) {\n                  **(undefined4 **)(pcStack_81e8 + -0x7c4c) = 1;\n                  pcVar28 = pcStack_81e8;\n                  iVar2 = iVar24;\n                }\n                else {\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                    (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4780);\n                  if (iVar8 == 0) {\n                    *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31dc) = 1;\n                    pcVar28 = pcStack_81e8;\n                    iVar2 = iVar24;\n                  }\n                  else {\n                    iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                      (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4778);\n                    if (iVar8 == 0) {\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac) = 0;\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0) = 1;\n                      pcVar28 = pcStack_81e8;\n                      iVar2 = iVar24;\n                      goto LAB_0002e464;\n                    }\n                    iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                      (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4770);\n                    if (iVar8 == 0) {\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac) = 1;\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0) = 0;\n                      pcVar28 = pcStack_81e8;\n                      iVar2 = iVar24;\n                    }\n                    else {\n                      iVar24 = (**(code **)(pcStack_81e8 + -0x743c))\n                                         (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4768);\n                      pcVar28 = pcStack_81e8;\n                      if (iVar24 == 0) goto LAB_0002e52c;\n                      cmdline_error(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4764,iVar20);\n                    }\n                  }\n                }\n                goto LAB_0002e464;\n              }\n            }\n            (*pcStack_81dc)();\n            pcVar28 = pcStack_81e8;\n            iVar2 = iVar24;\n          }\n        }\n      }" else (compound_statement "{\n        iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar29 + -0x47b4);\n        if (iVar8 == 0) {\n          *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d0) = 1;\n          pcVar28 = pcStack_81e8;\n          iVar2 = iVar24;\n        }\n        else {\n          iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                            (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47b0);\n          if (iVar8 == 0) {\n            *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fa8) = 0;\n            pcVar28 = pcStack_81e8;\n            iVar2 = iVar24;\n          }\n          else {\n            iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                              (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47ac);\n            if ((iVar8 != 0) &&\n               (iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                  (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47a8), iVar8 != 0))\n            {\n              iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47a4);\n              if (iVar8 != 0) {\n                iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                  (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x479c);\n                iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                if (iVar8 == 0) {\nLAB_0002e348:\n                  pcVar28 = pcStack_81e8;\n                  version();\n                }\n                else {\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar16 + -0x4798);\n                  iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                  if (iVar8 == 0) goto LAB_0002e348;\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar16 + -0x478c);\n                  iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                  pcVar28 = pcStack_81e8;\n                  if (iVar8 == 0) {\n                    *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31c4) = 1;\n                    iVar2 = iVar24;\n                    goto LAB_0002e464;\n                  }\n                }\n                iVar8 = (**(code **)(pcVar28 + -0x743c))(iVar20,iVar16 + -0x4788);\n                if (iVar8 == 0) {\n                  **(undefined4 **)(pcStack_81e8 + -0x7c4c) = 1;\n                  pcVar28 = pcStack_81e8;\n                  iVar2 = iVar24;\n                }\n                else {\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                    (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4780);\n                  if (iVar8 == 0) {\n                    *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31dc) = 1;\n                    pcVar28 = pcStack_81e8;\n                    iVar2 = iVar24;\n                  }\n                  else {\n                    iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                      (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4778);\n                    if (iVar8 == 0) {\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac) = 0;\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0) = 1;\n                      pcVar28 = pcStack_81e8;\n                      iVar2 = iVar24;\n                      goto LAB_0002e464;\n                    }\n                    iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                      (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4770);\n                    if (iVar8 == 0) {\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac) = 1;\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0) = 0;\n                      pcVar28 = pcStack_81e8;\n                      iVar2 = iVar24;\n                    }\n                    else {\n                      iVar24 = (**(code **)(pcStack_81e8 + -0x743c))\n                                         (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4768);\n                      pcVar28 = pcStack_81e8;\n                      if (iVar24 == 0) goto LAB_0002e52c;\n                      cmdline_error(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4764,iVar20);\n                    }\n                  }\n                }\n                goto LAB_0002e464;\n              }\n            }\n            (*pcStack_81dc)();\n            pcVar28 = pcStack_81e8;\n            iVar2 = iVar24;\n          }\n        }\n      }" { (expression_statement "iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar29 + -0x47b4);" (assignment_expression "iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar29 + -0x47b4)" identifier = (call_expression "(**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar29 + -0x47b4)" (parenthesized_expression "(**(code **)(pcStack_81e8 + -0x743c))" ( (pointer_expression "**(code **)(pcStack_81e8 + -0x743c)" * (pointer_expression "*(code **)(pcStack_81e8 + -0x743c)" * (cast_expression "(code **)(pcStack_81e8 + -0x743c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_81e8 + -0x743c)" ( (binary_expression "pcStack_81e8 + -0x743c" identifier + number_literal) ))))) )) (argument_list "(iVar20,iVar29 + -0x47b4)" ( identifier , (binary_expression "iVar29 + -0x47b4" identifier + number_literal) )))) ;) (if_statement "if (iVar8 == 0) {\n          *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d0) = 1;\n          pcVar28 = pcStack_81e8;\n          iVar2 = iVar24;\n        }\n        else {\n          iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                            (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47b0);\n          if (iVar8 == 0) {\n            *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fa8) = 0;\n            pcVar28 = pcStack_81e8;\n            iVar2 = iVar24;\n          }\n          else {\n            iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                              (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47ac);\n            if ((iVar8 != 0) &&\n               (iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                  (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47a8), iVar8 != 0))\n            {\n              iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47a4);\n              if (iVar8 != 0) {\n                iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                  (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x479c);\n                iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                if (iVar8 == 0) {\nLAB_0002e348:\n                  pcVar28 = pcStack_81e8;\n                  version();\n                }\n                else {\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar16 + -0x4798);\n                  iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                  if (iVar8 == 0) goto LAB_0002e348;\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar16 + -0x478c);\n                  iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                  pcVar28 = pcStack_81e8;\n                  if (iVar8 == 0) {\n                    *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31c4) = 1;\n                    iVar2 = iVar24;\n                    goto LAB_0002e464;\n                  }\n                }\n                iVar8 = (**(code **)(pcVar28 + -0x743c))(iVar20,iVar16 + -0x4788);\n                if (iVar8 == 0) {\n                  **(undefined4 **)(pcStack_81e8 + -0x7c4c) = 1;\n                  pcVar28 = pcStack_81e8;\n                  iVar2 = iVar24;\n                }\n                else {\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                    (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4780);\n                  if (iVar8 == 0) {\n                    *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31dc) = 1;\n                    pcVar28 = pcStack_81e8;\n                    iVar2 = iVar24;\n                  }\n                  else {\n                    iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                      (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4778);\n                    if (iVar8 == 0) {\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac) = 0;\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0) = 1;\n                      pcVar28 = pcStack_81e8;\n                      iVar2 = iVar24;\n                      goto LAB_0002e464;\n                    }\n                    iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                      (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4770);\n                    if (iVar8 == 0) {\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac) = 1;\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0) = 0;\n                      pcVar28 = pcStack_81e8;\n                      iVar2 = iVar24;\n                    }\n                    else {\n                      iVar24 = (**(code **)(pcStack_81e8 + -0x743c))\n                                         (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4768);\n                      pcVar28 = pcStack_81e8;\n                      if (iVar24 == 0) goto LAB_0002e52c;\n                      cmdline_error(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4764,iVar20);\n                    }\n                  }\n                }\n                goto LAB_0002e464;\n              }\n            }\n            (*pcStack_81dc)();\n            pcVar28 = pcStack_81e8;\n            iVar2 = iVar24;\n          }\n        }" if (parenthesized_expression "(iVar8 == 0)" ( (binary_expression "iVar8 == 0" identifier == number_literal) )) (compound_statement "{\n          *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d0) = 1;\n          pcVar28 = pcStack_81e8;\n          iVar2 = iVar24;\n        }" { (expression_statement "*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d0) = 1;" (assignment_expression "*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d0) = 1" (pointer_expression "*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d0)" * (cast_expression "(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d0)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d0)" ( (binary_expression "*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d0" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fd8)" * (cast_expression "(int *)(pcStack_81e8 + -0x7fd8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_81e8 + -0x7fd8)" ( (binary_expression "pcStack_81e8 + -0x7fd8" identifier + number_literal) )))) + number_literal) )))) = number_literal) ;) (expression_statement "pcVar28 = pcStack_81e8;" (assignment_expression "pcVar28 = pcStack_81e8" identifier = identifier) ;) (expression_statement "iVar2 = iVar24;" (assignment_expression "iVar2 = iVar24" identifier = identifier) ;) }) (else_clause "else {\n          iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                            (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47b0);\n          if (iVar8 == 0) {\n            *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fa8) = 0;\n            pcVar28 = pcStack_81e8;\n            iVar2 = iVar24;\n          }\n          else {\n            iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                              (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47ac);\n            if ((iVar8 != 0) &&\n               (iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                  (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47a8), iVar8 != 0))\n            {\n              iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47a4);\n              if (iVar8 != 0) {\n                iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                  (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x479c);\n                iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                if (iVar8 == 0) {\nLAB_0002e348:\n                  pcVar28 = pcStack_81e8;\n                  version();\n                }\n                else {\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar16 + -0x4798);\n                  iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                  if (iVar8 == 0) goto LAB_0002e348;\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar16 + -0x478c);\n                  iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                  pcVar28 = pcStack_81e8;\n                  if (iVar8 == 0) {\n                    *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31c4) = 1;\n                    iVar2 = iVar24;\n                    goto LAB_0002e464;\n                  }\n                }\n                iVar8 = (**(code **)(pcVar28 + -0x743c))(iVar20,iVar16 + -0x4788);\n                if (iVar8 == 0) {\n                  **(undefined4 **)(pcStack_81e8 + -0x7c4c) = 1;\n                  pcVar28 = pcStack_81e8;\n                  iVar2 = iVar24;\n                }\n                else {\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                    (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4780);\n                  if (iVar8 == 0) {\n                    *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31dc) = 1;\n                    pcVar28 = pcStack_81e8;\n                    iVar2 = iVar24;\n                  }\n                  else {\n                    iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                      (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4778);\n                    if (iVar8 == 0) {\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac) = 0;\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0) = 1;\n                      pcVar28 = pcStack_81e8;\n                      iVar2 = iVar24;\n                      goto LAB_0002e464;\n                    }\n                    iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                      (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4770);\n                    if (iVar8 == 0) {\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac) = 1;\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0) = 0;\n                      pcVar28 = pcStack_81e8;\n                      iVar2 = iVar24;\n                    }\n                    else {\n                      iVar24 = (**(code **)(pcStack_81e8 + -0x743c))\n                                         (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4768);\n                      pcVar28 = pcStack_81e8;\n                      if (iVar24 == 0) goto LAB_0002e52c;\n                      cmdline_error(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4764,iVar20);\n                    }\n                  }\n                }\n                goto LAB_0002e464;\n              }\n            }\n            (*pcStack_81dc)();\n            pcVar28 = pcStack_81e8;\n            iVar2 = iVar24;\n          }\n        }" else (compound_statement "{\n          iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                            (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47b0);\n          if (iVar8 == 0) {\n            *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fa8) = 0;\n            pcVar28 = pcStack_81e8;\n            iVar2 = iVar24;\n          }\n          else {\n            iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                              (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47ac);\n            if ((iVar8 != 0) &&\n               (iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                  (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47a8), iVar8 != 0))\n            {\n              iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47a4);\n              if (iVar8 != 0) {\n                iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                  (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x479c);\n                iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                if (iVar8 == 0) {\nLAB_0002e348:\n                  pcVar28 = pcStack_81e8;\n                  version();\n                }\n                else {\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar16 + -0x4798);\n                  iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                  if (iVar8 == 0) goto LAB_0002e348;\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar16 + -0x478c);\n                  iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                  pcVar28 = pcStack_81e8;\n                  if (iVar8 == 0) {\n                    *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31c4) = 1;\n                    iVar2 = iVar24;\n                    goto LAB_0002e464;\n                  }\n                }\n                iVar8 = (**(code **)(pcVar28 + -0x743c))(iVar20,iVar16 + -0x4788);\n                if (iVar8 == 0) {\n                  **(undefined4 **)(pcStack_81e8 + -0x7c4c) = 1;\n                  pcVar28 = pcStack_81e8;\n                  iVar2 = iVar24;\n                }\n                else {\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                    (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4780);\n                  if (iVar8 == 0) {\n                    *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31dc) = 1;\n                    pcVar28 = pcStack_81e8;\n                    iVar2 = iVar24;\n                  }\n                  else {\n                    iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                      (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4778);\n                    if (iVar8 == 0) {\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac) = 0;\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0) = 1;\n                      pcVar28 = pcStack_81e8;\n                      iVar2 = iVar24;\n                      goto LAB_0002e464;\n                    }\n                    iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                      (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4770);\n                    if (iVar8 == 0) {\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac) = 1;\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0) = 0;\n                      pcVar28 = pcStack_81e8;\n                      iVar2 = iVar24;\n                    }\n                    else {\n                      iVar24 = (**(code **)(pcStack_81e8 + -0x743c))\n                                         (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4768);\n                      pcVar28 = pcStack_81e8;\n                      if (iVar24 == 0) goto LAB_0002e52c;\n                      cmdline_error(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4764,iVar20);\n                    }\n                  }\n                }\n                goto LAB_0002e464;\n              }\n            }\n            (*pcStack_81dc)();\n            pcVar28 = pcStack_81e8;\n            iVar2 = iVar24;\n          }\n        }" { (expression_statement "iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                            (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47b0);" (assignment_expression "iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                            (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47b0)" identifier = (call_expression "(**(code **)(pcStack_81e8 + -0x743c))\n                            (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47b0)" (parenthesized_expression "(**(code **)(pcStack_81e8 + -0x743c))" ( (pointer_expression "**(code **)(pcStack_81e8 + -0x743c)" * (pointer_expression "*(code **)(pcStack_81e8 + -0x743c)" * (cast_expression "(code **)(pcStack_81e8 + -0x743c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_81e8 + -0x743c)" ( (binary_expression "pcStack_81e8 + -0x743c" identifier + number_literal) ))))) )) (argument_list "(iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47b0)" ( identifier , (binary_expression "*(int *)(pcStack_81e8 + -0x7fc8) + -0x47b0" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fc8)" * (cast_expression "(int *)(pcStack_81e8 + -0x7fc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_81e8 + -0x7fc8)" ( (binary_expression "pcStack_81e8 + -0x7fc8" identifier + number_literal) )))) + number_literal) )))) ;) (if_statement "if (iVar8 == 0) {\n            *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fa8) = 0;\n            pcVar28 = pcStack_81e8;\n            iVar2 = iVar24;\n          }\n          else {\n            iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                              (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47ac);\n            if ((iVar8 != 0) &&\n               (iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                  (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47a8), iVar8 != 0))\n            {\n              iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47a4);\n              if (iVar8 != 0) {\n                iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                  (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x479c);\n                iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                if (iVar8 == 0) {\nLAB_0002e348:\n                  pcVar28 = pcStack_81e8;\n                  version();\n                }\n                else {\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar16 + -0x4798);\n                  iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                  if (iVar8 == 0) goto LAB_0002e348;\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar16 + -0x478c);\n                  iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                  pcVar28 = pcStack_81e8;\n                  if (iVar8 == 0) {\n                    *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31c4) = 1;\n                    iVar2 = iVar24;\n                    goto LAB_0002e464;\n                  }\n                }\n                iVar8 = (**(code **)(pcVar28 + -0x743c))(iVar20,iVar16 + -0x4788);\n                if (iVar8 == 0) {\n                  **(undefined4 **)(pcStack_81e8 + -0x7c4c) = 1;\n                  pcVar28 = pcStack_81e8;\n                  iVar2 = iVar24;\n                }\n                else {\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                    (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4780);\n                  if (iVar8 == 0) {\n                    *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31dc) = 1;\n                    pcVar28 = pcStack_81e8;\n                    iVar2 = iVar24;\n                  }\n                  else {\n                    iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                      (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4778);\n                    if (iVar8 == 0) {\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac) = 0;\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0) = 1;\n                      pcVar28 = pcStack_81e8;\n                      iVar2 = iVar24;\n                      goto LAB_0002e464;\n                    }\n                    iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                      (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4770);\n                    if (iVar8 == 0) {\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac) = 1;\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0) = 0;\n                      pcVar28 = pcStack_81e8;\n                      iVar2 = iVar24;\n                    }\n                    else {\n                      iVar24 = (**(code **)(pcStack_81e8 + -0x743c))\n                                         (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4768);\n                      pcVar28 = pcStack_81e8;\n                      if (iVar24 == 0) goto LAB_0002e52c;\n                      cmdline_error(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4764,iVar20);\n                    }\n                  }\n                }\n                goto LAB_0002e464;\n              }\n            }\n            (*pcStack_81dc)();\n            pcVar28 = pcStack_81e8;\n            iVar2 = iVar24;\n          }" if (parenthesized_expression "(iVar8 == 0)" ( (binary_expression "iVar8 == 0" identifier == number_literal) )) (compound_statement "{\n            *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fa8) = 0;\n            pcVar28 = pcStack_81e8;\n            iVar2 = iVar24;\n          }" { (expression_statement "*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fa8) = 0;" (assignment_expression "*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fa8) = 0" (pointer_expression "*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fa8)" * (cast_expression "(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fa8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fa8)" ( (binary_expression "*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fa8" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fd8)" * (cast_expression "(int *)(pcStack_81e8 + -0x7fd8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_81e8 + -0x7fd8)" ( (binary_expression "pcStack_81e8 + -0x7fd8" identifier + number_literal) )))) + number_literal) )))) = number_literal) ;) (expression_statement "pcVar28 = pcStack_81e8;" (assignment_expression "pcVar28 = pcStack_81e8" identifier = identifier) ;) (expression_statement "iVar2 = iVar24;" (assignment_expression "iVar2 = iVar24" identifier = identifier) ;) }) (else_clause "else {\n            iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                              (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47ac);\n            if ((iVar8 != 0) &&\n               (iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                  (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47a8), iVar8 != 0))\n            {\n              iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47a4);\n              if (iVar8 != 0) {\n                iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                  (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x479c);\n                iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                if (iVar8 == 0) {\nLAB_0002e348:\n                  pcVar28 = pcStack_81e8;\n                  version();\n                }\n                else {\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar16 + -0x4798);\n                  iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                  if (iVar8 == 0) goto LAB_0002e348;\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar16 + -0x478c);\n                  iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                  pcVar28 = pcStack_81e8;\n                  if (iVar8 == 0) {\n                    *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31c4) = 1;\n                    iVar2 = iVar24;\n                    goto LAB_0002e464;\n                  }\n                }\n                iVar8 = (**(code **)(pcVar28 + -0x743c))(iVar20,iVar16 + -0x4788);\n                if (iVar8 == 0) {\n                  **(undefined4 **)(pcStack_81e8 + -0x7c4c) = 1;\n                  pcVar28 = pcStack_81e8;\n                  iVar2 = iVar24;\n                }\n                else {\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                    (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4780);\n                  if (iVar8 == 0) {\n                    *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31dc) = 1;\n                    pcVar28 = pcStack_81e8;\n                    iVar2 = iVar24;\n                  }\n                  else {\n                    iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                      (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4778);\n                    if (iVar8 == 0) {\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac) = 0;\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0) = 1;\n                      pcVar28 = pcStack_81e8;\n                      iVar2 = iVar24;\n                      goto LAB_0002e464;\n                    }\n                    iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                      (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4770);\n                    if (iVar8 == 0) {\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac) = 1;\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0) = 0;\n                      pcVar28 = pcStack_81e8;\n                      iVar2 = iVar24;\n                    }\n                    else {\n                      iVar24 = (**(code **)(pcStack_81e8 + -0x743c))\n                                         (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4768);\n                      pcVar28 = pcStack_81e8;\n                      if (iVar24 == 0) goto LAB_0002e52c;\n                      cmdline_error(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4764,iVar20);\n                    }\n                  }\n                }\n                goto LAB_0002e464;\n              }\n            }\n            (*pcStack_81dc)();\n            pcVar28 = pcStack_81e8;\n            iVar2 = iVar24;\n          }" else (compound_statement "{\n            iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                              (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47ac);\n            if ((iVar8 != 0) &&\n               (iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                  (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47a8), iVar8 != 0))\n            {\n              iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47a4);\n              if (iVar8 != 0) {\n                iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                  (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x479c);\n                iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                if (iVar8 == 0) {\nLAB_0002e348:\n                  pcVar28 = pcStack_81e8;\n                  version();\n                }\n                else {\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar16 + -0x4798);\n                  iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                  if (iVar8 == 0) goto LAB_0002e348;\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar16 + -0x478c);\n                  iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                  pcVar28 = pcStack_81e8;\n                  if (iVar8 == 0) {\n                    *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31c4) = 1;\n                    iVar2 = iVar24;\n                    goto LAB_0002e464;\n                  }\n                }\n                iVar8 = (**(code **)(pcVar28 + -0x743c))(iVar20,iVar16 + -0x4788);\n                if (iVar8 == 0) {\n                  **(undefined4 **)(pcStack_81e8 + -0x7c4c) = 1;\n                  pcVar28 = pcStack_81e8;\n                  iVar2 = iVar24;\n                }\n                else {\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                    (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4780);\n                  if (iVar8 == 0) {\n                    *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31dc) = 1;\n                    pcVar28 = pcStack_81e8;\n                    iVar2 = iVar24;\n                  }\n                  else {\n                    iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                      (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4778);\n                    if (iVar8 == 0) {\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac) = 0;\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0) = 1;\n                      pcVar28 = pcStack_81e8;\n                      iVar2 = iVar24;\n                      goto LAB_0002e464;\n                    }\n                    iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                      (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4770);\n                    if (iVar8 == 0) {\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac) = 1;\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0) = 0;\n                      pcVar28 = pcStack_81e8;\n                      iVar2 = iVar24;\n                    }\n                    else {\n                      iVar24 = (**(code **)(pcStack_81e8 + -0x743c))\n                                         (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4768);\n                      pcVar28 = pcStack_81e8;\n                      if (iVar24 == 0) goto LAB_0002e52c;\n                      cmdline_error(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4764,iVar20);\n                    }\n                  }\n                }\n                goto LAB_0002e464;\n              }\n            }\n            (*pcStack_81dc)();\n            pcVar28 = pcStack_81e8;\n            iVar2 = iVar24;\n          }" { (expression_statement "iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                              (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47ac);" (assignment_expression "iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                              (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47ac)" identifier = (call_expression "(**(code **)(pcStack_81e8 + -0x743c))\n                              (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47ac)" (parenthesized_expression "(**(code **)(pcStack_81e8 + -0x743c))" ( (pointer_expression "**(code **)(pcStack_81e8 + -0x743c)" * (pointer_expression "*(code **)(pcStack_81e8 + -0x743c)" * (cast_expression "(code **)(pcStack_81e8 + -0x743c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_81e8 + -0x743c)" ( (binary_expression "pcStack_81e8 + -0x743c" identifier + number_literal) ))))) )) (argument_list "(iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47ac)" ( identifier , (binary_expression "*(int *)(pcStack_81e8 + -0x7fc8) + -0x47ac" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fc8)" * (cast_expression "(int *)(pcStack_81e8 + -0x7fc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_81e8 + -0x7fc8)" ( (binary_expression "pcStack_81e8 + -0x7fc8" identifier + number_literal) )))) + number_literal) )))) ;) (if_statement "if ((iVar8 != 0) &&\n               (iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                  (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47a8), iVar8 != 0))\n            {\n              iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47a4);\n              if (iVar8 != 0) {\n                iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                  (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x479c);\n                iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                if (iVar8 == 0) {\nLAB_0002e348:\n                  pcVar28 = pcStack_81e8;\n                  version();\n                }\n                else {\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar16 + -0x4798);\n                  iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                  if (iVar8 == 0) goto LAB_0002e348;\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar16 + -0x478c);\n                  iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                  pcVar28 = pcStack_81e8;\n                  if (iVar8 == 0) {\n                    *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31c4) = 1;\n                    iVar2 = iVar24;\n                    goto LAB_0002e464;\n                  }\n                }\n                iVar8 = (**(code **)(pcVar28 + -0x743c))(iVar20,iVar16 + -0x4788);\n                if (iVar8 == 0) {\n                  **(undefined4 **)(pcStack_81e8 + -0x7c4c) = 1;\n                  pcVar28 = pcStack_81e8;\n                  iVar2 = iVar24;\n                }\n                else {\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                    (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4780);\n                  if (iVar8 == 0) {\n                    *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31dc) = 1;\n                    pcVar28 = pcStack_81e8;\n                    iVar2 = iVar24;\n                  }\n                  else {\n                    iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                      (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4778);\n                    if (iVar8 == 0) {\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac) = 0;\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0) = 1;\n                      pcVar28 = pcStack_81e8;\n                      iVar2 = iVar24;\n                      goto LAB_0002e464;\n                    }\n                    iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                      (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4770);\n                    if (iVar8 == 0) {\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac) = 1;\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0) = 0;\n                      pcVar28 = pcStack_81e8;\n                      iVar2 = iVar24;\n                    }\n                    else {\n                      iVar24 = (**(code **)(pcStack_81e8 + -0x743c))\n                                         (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4768);\n                      pcVar28 = pcStack_81e8;\n                      if (iVar24 == 0) goto LAB_0002e52c;\n                      cmdline_error(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4764,iVar20);\n                    }\n                  }\n                }\n                goto LAB_0002e464;\n              }\n            }" if (parenthesized_expression "((iVar8 != 0) &&\n               (iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                  (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47a8), iVar8 != 0))" ( (binary_expression "(iVar8 != 0) &&\n               (iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                  (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47a8), iVar8 != 0)" (parenthesized_expression "(iVar8 != 0)" ( (binary_expression "iVar8 != 0" identifier != number_literal) )) && (parenthesized_expression "(iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                  (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47a8), iVar8 != 0)" ( (comma_expression "iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                  (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47a8), iVar8 != 0" (assignment_expression "iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                  (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47a8)" identifier = (call_expression "(**(code **)(pcStack_81e8 + -0x743c))\n                                  (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47a8)" (parenthesized_expression "(**(code **)(pcStack_81e8 + -0x743c))" ( (pointer_expression "**(code **)(pcStack_81e8 + -0x743c)" * (pointer_expression "*(code **)(pcStack_81e8 + -0x743c)" * (cast_expression "(code **)(pcStack_81e8 + -0x743c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_81e8 + -0x743c)" ( (binary_expression "pcStack_81e8 + -0x743c" identifier + number_literal) ))))) )) (argument_list "(iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47a8)" ( identifier , (binary_expression "*(int *)(pcStack_81e8 + -0x7fc8) + -0x47a8" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fc8)" * (cast_expression "(int *)(pcStack_81e8 + -0x7fc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_81e8 + -0x7fc8)" ( (binary_expression "pcStack_81e8 + -0x7fc8" identifier + number_literal) )))) + number_literal) )))) , (binary_expression "iVar8 != 0" identifier != number_literal)) ))) )) (compound_statement "{\n              iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47a4);\n              if (iVar8 != 0) {\n                iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                  (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x479c);\n                iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                if (iVar8 == 0) {\nLAB_0002e348:\n                  pcVar28 = pcStack_81e8;\n                  version();\n                }\n                else {\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar16 + -0x4798);\n                  iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                  if (iVar8 == 0) goto LAB_0002e348;\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar16 + -0x478c);\n                  iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                  pcVar28 = pcStack_81e8;\n                  if (iVar8 == 0) {\n                    *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31c4) = 1;\n                    iVar2 = iVar24;\n                    goto LAB_0002e464;\n                  }\n                }\n                iVar8 = (**(code **)(pcVar28 + -0x743c))(iVar20,iVar16 + -0x4788);\n                if (iVar8 == 0) {\n                  **(undefined4 **)(pcStack_81e8 + -0x7c4c) = 1;\n                  pcVar28 = pcStack_81e8;\n                  iVar2 = iVar24;\n                }\n                else {\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                    (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4780);\n                  if (iVar8 == 0) {\n                    *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31dc) = 1;\n                    pcVar28 = pcStack_81e8;\n                    iVar2 = iVar24;\n                  }\n                  else {\n                    iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                      (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4778);\n                    if (iVar8 == 0) {\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac) = 0;\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0) = 1;\n                      pcVar28 = pcStack_81e8;\n                      iVar2 = iVar24;\n                      goto LAB_0002e464;\n                    }\n                    iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                      (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4770);\n                    if (iVar8 == 0) {\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac) = 1;\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0) = 0;\n                      pcVar28 = pcStack_81e8;\n                      iVar2 = iVar24;\n                    }\n                    else {\n                      iVar24 = (**(code **)(pcStack_81e8 + -0x743c))\n                                         (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4768);\n                      pcVar28 = pcStack_81e8;\n                      if (iVar24 == 0) goto LAB_0002e52c;\n                      cmdline_error(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4764,iVar20);\n                    }\n                  }\n                }\n                goto LAB_0002e464;\n              }\n            }" { (expression_statement "iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47a4);" (assignment_expression "iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47a4)" identifier = (call_expression "(**(code **)(pcStack_81e8 + -0x743c))\n                                (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47a4)" (parenthesized_expression "(**(code **)(pcStack_81e8 + -0x743c))" ( (pointer_expression "**(code **)(pcStack_81e8 + -0x743c)" * (pointer_expression "*(code **)(pcStack_81e8 + -0x743c)" * (cast_expression "(code **)(pcStack_81e8 + -0x743c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_81e8 + -0x743c)" ( (binary_expression "pcStack_81e8 + -0x743c" identifier + number_literal) ))))) )) (argument_list "(iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47a4)" ( identifier , (binary_expression "*(int *)(pcStack_81e8 + -0x7fc8) + -0x47a4" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fc8)" * (cast_expression "(int *)(pcStack_81e8 + -0x7fc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_81e8 + -0x7fc8)" ( (binary_expression "pcStack_81e8 + -0x7fc8" identifier + number_literal) )))) + number_literal) )))) ;) (if_statement "if (iVar8 != 0) {\n                iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                  (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x479c);\n                iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                if (iVar8 == 0) {\nLAB_0002e348:\n                  pcVar28 = pcStack_81e8;\n                  version();\n                }\n                else {\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar16 + -0x4798);\n                  iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                  if (iVar8 == 0) goto LAB_0002e348;\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar16 + -0x478c);\n                  iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                  pcVar28 = pcStack_81e8;\n                  if (iVar8 == 0) {\n                    *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31c4) = 1;\n                    iVar2 = iVar24;\n                    goto LAB_0002e464;\n                  }\n                }\n                iVar8 = (**(code **)(pcVar28 + -0x743c))(iVar20,iVar16 + -0x4788);\n                if (iVar8 == 0) {\n                  **(undefined4 **)(pcStack_81e8 + -0x7c4c) = 1;\n                  pcVar28 = pcStack_81e8;\n                  iVar2 = iVar24;\n                }\n                else {\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                    (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4780);\n                  if (iVar8 == 0) {\n                    *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31dc) = 1;\n                    pcVar28 = pcStack_81e8;\n                    iVar2 = iVar24;\n                  }\n                  else {\n                    iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                      (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4778);\n                    if (iVar8 == 0) {\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac) = 0;\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0) = 1;\n                      pcVar28 = pcStack_81e8;\n                      iVar2 = iVar24;\n                      goto LAB_0002e464;\n                    }\n                    iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                      (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4770);\n                    if (iVar8 == 0) {\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac) = 1;\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0) = 0;\n                      pcVar28 = pcStack_81e8;\n                      iVar2 = iVar24;\n                    }\n                    else {\n                      iVar24 = (**(code **)(pcStack_81e8 + -0x743c))\n                                         (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4768);\n                      pcVar28 = pcStack_81e8;\n                      if (iVar24 == 0) goto LAB_0002e52c;\n                      cmdline_error(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4764,iVar20);\n                    }\n                  }\n                }\n                goto LAB_0002e464;\n              }" if (parenthesized_expression "(iVar8 != 0)" ( (binary_expression "iVar8 != 0" identifier != number_literal) )) (compound_statement "{\n                iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                  (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x479c);\n                iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                if (iVar8 == 0) {\nLAB_0002e348:\n                  pcVar28 = pcStack_81e8;\n                  version();\n                }\n                else {\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar16 + -0x4798);\n                  iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                  if (iVar8 == 0) goto LAB_0002e348;\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar16 + -0x478c);\n                  iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                  pcVar28 = pcStack_81e8;\n                  if (iVar8 == 0) {\n                    *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31c4) = 1;\n                    iVar2 = iVar24;\n                    goto LAB_0002e464;\n                  }\n                }\n                iVar8 = (**(code **)(pcVar28 + -0x743c))(iVar20,iVar16 + -0x4788);\n                if (iVar8 == 0) {\n                  **(undefined4 **)(pcStack_81e8 + -0x7c4c) = 1;\n                  pcVar28 = pcStack_81e8;\n                  iVar2 = iVar24;\n                }\n                else {\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                    (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4780);\n                  if (iVar8 == 0) {\n                    *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31dc) = 1;\n                    pcVar28 = pcStack_81e8;\n                    iVar2 = iVar24;\n                  }\n                  else {\n                    iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                      (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4778);\n                    if (iVar8 == 0) {\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac) = 0;\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0) = 1;\n                      pcVar28 = pcStack_81e8;\n                      iVar2 = iVar24;\n                      goto LAB_0002e464;\n                    }\n                    iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                      (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4770);\n                    if (iVar8 == 0) {\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac) = 1;\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0) = 0;\n                      pcVar28 = pcStack_81e8;\n                      iVar2 = iVar24;\n                    }\n                    else {\n                      iVar24 = (**(code **)(pcStack_81e8 + -0x743c))\n                                         (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4768);\n                      pcVar28 = pcStack_81e8;\n                      if (iVar24 == 0) goto LAB_0002e52c;\n                      cmdline_error(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4764,iVar20);\n                    }\n                  }\n                }\n                goto LAB_0002e464;\n              }" { (expression_statement "iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                  (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x479c);" (assignment_expression "iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                  (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x479c)" identifier = (call_expression "(**(code **)(pcStack_81e8 + -0x743c))\n                                  (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x479c)" (parenthesized_expression "(**(code **)(pcStack_81e8 + -0x743c))" ( (pointer_expression "**(code **)(pcStack_81e8 + -0x743c)" * (pointer_expression "*(code **)(pcStack_81e8 + -0x743c)" * (cast_expression "(code **)(pcStack_81e8 + -0x743c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_81e8 + -0x743c)" ( (binary_expression "pcStack_81e8 + -0x743c" identifier + number_literal) ))))) )) (argument_list "(iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x479c)" ( identifier , (binary_expression "*(int *)(pcStack_81e8 + -0x7fc8) + -0x479c" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fc8)" * (cast_expression "(int *)(pcStack_81e8 + -0x7fc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_81e8 + -0x7fc8)" ( (binary_expression "pcStack_81e8 + -0x7fc8" identifier + number_literal) )))) + number_literal) )))) ;) (expression_statement "iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);" (assignment_expression "iVar16 = *(int *)(pcStack_81e8 + -0x7fc8)" identifier = (pointer_expression "*(int *)(pcStack_81e8 + -0x7fc8)" * (cast_expression "(int *)(pcStack_81e8 + -0x7fc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_81e8 + -0x7fc8)" ( (binary_expression "pcStack_81e8 + -0x7fc8" identifier + number_literal) ))))) ;) (if_statement "if (iVar8 == 0) {\nLAB_0002e348:\n                  pcVar28 = pcStack_81e8;\n                  version();\n                }\n                else {\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar16 + -0x4798);\n                  iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                  if (iVar8 == 0) goto LAB_0002e348;\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar16 + -0x478c);\n                  iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                  pcVar28 = pcStack_81e8;\n                  if (iVar8 == 0) {\n                    *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31c4) = 1;\n                    iVar2 = iVar24;\n                    goto LAB_0002e464;\n                  }\n                }" if (parenthesized_expression "(iVar8 == 0)" ( (binary_expression "iVar8 == 0" identifier == number_literal) )) (compound_statement "{\nLAB_0002e348:\n                  pcVar28 = pcStack_81e8;\n                  version();\n                }" { (labeled_statement "LAB_0002e348:\n                  pcVar28 = pcStack_81e8;" statement_identifier : (expression_statement "pcVar28 = pcStack_81e8;" (assignment_expression "pcVar28 = pcStack_81e8" identifier = identifier) ;)) (expression_statement "version();" (call_expression "version()" identifier (argument_list "()" ( ))) ;) }) (else_clause "else {\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar16 + -0x4798);\n                  iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                  if (iVar8 == 0) goto LAB_0002e348;\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar16 + -0x478c);\n                  iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                  pcVar28 = pcStack_81e8;\n                  if (iVar8 == 0) {\n                    *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31c4) = 1;\n                    iVar2 = iVar24;\n                    goto LAB_0002e464;\n                  }\n                }" else (compound_statement "{\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar16 + -0x4798);\n                  iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                  if (iVar8 == 0) goto LAB_0002e348;\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar16 + -0x478c);\n                  iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                  pcVar28 = pcStack_81e8;\n                  if (iVar8 == 0) {\n                    *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31c4) = 1;\n                    iVar2 = iVar24;\n                    goto LAB_0002e464;\n                  }\n                }" { (expression_statement "iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar16 + -0x4798);" (assignment_expression "iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar16 + -0x4798)" identifier = (call_expression "(**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar16 + -0x4798)" (parenthesized_expression "(**(code **)(pcStack_81e8 + -0x743c))" ( (pointer_expression "**(code **)(pcStack_81e8 + -0x743c)" * (pointer_expression "*(code **)(pcStack_81e8 + -0x743c)" * (cast_expression "(code **)(pcStack_81e8 + -0x743c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_81e8 + -0x743c)" ( (binary_expression "pcStack_81e8 + -0x743c" identifier + number_literal) ))))) )) (argument_list "(iVar20,iVar16 + -0x4798)" ( identifier , (binary_expression "iVar16 + -0x4798" identifier + number_literal) )))) ;) (expression_statement "iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);" (assignment_expression "iVar16 = *(int *)(pcStack_81e8 + -0x7fc8)" identifier = (pointer_expression "*(int *)(pcStack_81e8 + -0x7fc8)" * (cast_expression "(int *)(pcStack_81e8 + -0x7fc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_81e8 + -0x7fc8)" ( (binary_expression "pcStack_81e8 + -0x7fc8" identifier + number_literal) ))))) ;) (if_statement "if (iVar8 == 0) goto LAB_0002e348;" if (parenthesized_expression "(iVar8 == 0)" ( (binary_expression "iVar8 == 0" identifier == number_literal) )) (goto_statement "goto LAB_0002e348;" goto statement_identifier ;)) (expression_statement "iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar16 + -0x478c);" (assignment_expression "iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar16 + -0x478c)" identifier = (call_expression "(**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar16 + -0x478c)" (parenthesized_expression "(**(code **)(pcStack_81e8 + -0x743c))" ( (pointer_expression "**(code **)(pcStack_81e8 + -0x743c)" * (pointer_expression "*(code **)(pcStack_81e8 + -0x743c)" * (cast_expression "(code **)(pcStack_81e8 + -0x743c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_81e8 + -0x743c)" ( (binary_expression "pcStack_81e8 + -0x743c" identifier + number_literal) ))))) )) (argument_list "(iVar20,iVar16 + -0x478c)" ( identifier , (binary_expression "iVar16 + -0x478c" identifier + number_literal) )))) ;) (expression_statement "iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);" (assignment_expression "iVar16 = *(int *)(pcStack_81e8 + -0x7fc8)" identifier = (pointer_expression "*(int *)(pcStack_81e8 + -0x7fc8)" * (cast_expression "(int *)(pcStack_81e8 + -0x7fc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_81e8 + -0x7fc8)" ( (binary_expression "pcStack_81e8 + -0x7fc8" identifier + number_literal) ))))) ;) (expression_statement "pcVar28 = pcStack_81e8;" (assignment_expression "pcVar28 = pcStack_81e8" identifier = identifier) ;) (if_statement "if (iVar8 == 0) {\n                    *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31c4) = 1;\n                    iVar2 = iVar24;\n                    goto LAB_0002e464;\n                  }" if (parenthesized_expression "(iVar8 == 0)" ( (binary_expression "iVar8 == 0" identifier == number_literal) )) (compound_statement "{\n                    *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31c4) = 1;\n                    iVar2 = iVar24;\n                    goto LAB_0002e464;\n                  }" { (expression_statement "*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31c4) = 1;" (assignment_expression "*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31c4) = 1" (pointer_expression "*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31c4)" * (cast_expression "(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31c4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31c4)" ( (binary_expression "*(int *)(pcStack_81e8 + -0x7fd8) + -0x31c4" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fd8)" * (cast_expression "(int *)(pcStack_81e8 + -0x7fd8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_81e8 + -0x7fd8)" ( (binary_expression "pcStack_81e8 + -0x7fd8" identifier + number_literal) )))) + number_literal) )))) = number_literal) ;) (expression_statement "iVar2 = iVar24;" (assignment_expression "iVar2 = iVar24" identifier = identifier) ;) (goto_statement "goto LAB_0002e464;" goto statement_identifier ;) })) }))) (expression_statement "iVar8 = (**(code **)(pcVar28 + -0x743c))(iVar20,iVar16 + -0x4788);" (assignment_expression "iVar8 = (**(code **)(pcVar28 + -0x743c))(iVar20,iVar16 + -0x4788)" identifier = (call_expression "(**(code **)(pcVar28 + -0x743c))(iVar20,iVar16 + -0x4788)" (parenthesized_expression "(**(code **)(pcVar28 + -0x743c))" ( (pointer_expression "**(code **)(pcVar28 + -0x743c)" * (pointer_expression "*(code **)(pcVar28 + -0x743c)" * (cast_expression "(code **)(pcVar28 + -0x743c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar28 + -0x743c)" ( (binary_expression "pcVar28 + -0x743c" identifier + number_literal) ))))) )) (argument_list "(iVar20,iVar16 + -0x4788)" ( identifier , (binary_expression "iVar16 + -0x4788" identifier + number_literal) )))) ;) (if_statement "if (iVar8 == 0) {\n                  **(undefined4 **)(pcStack_81e8 + -0x7c4c) = 1;\n                  pcVar28 = pcStack_81e8;\n                  iVar2 = iVar24;\n                }\n                else {\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                    (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4780);\n                  if (iVar8 == 0) {\n                    *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31dc) = 1;\n                    pcVar28 = pcStack_81e8;\n                    iVar2 = iVar24;\n                  }\n                  else {\n                    iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                      (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4778);\n                    if (iVar8 == 0) {\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac) = 0;\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0) = 1;\n                      pcVar28 = pcStack_81e8;\n                      iVar2 = iVar24;\n                      goto LAB_0002e464;\n                    }\n                    iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                      (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4770);\n                    if (iVar8 == 0) {\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac) = 1;\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0) = 0;\n                      pcVar28 = pcStack_81e8;\n                      iVar2 = iVar24;\n                    }\n                    else {\n                      iVar24 = (**(code **)(pcStack_81e8 + -0x743c))\n                                         (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4768);\n                      pcVar28 = pcStack_81e8;\n                      if (iVar24 == 0) goto LAB_0002e52c;\n                      cmdline_error(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4764,iVar20);\n                    }\n                  }\n                }" if (parenthesized_expression "(iVar8 == 0)" ( (binary_expression "iVar8 == 0" identifier == number_literal) )) (compound_statement "{\n                  **(undefined4 **)(pcStack_81e8 + -0x7c4c) = 1;\n                  pcVar28 = pcStack_81e8;\n                  iVar2 = iVar24;\n                }" { (expression_statement "**(undefined4 **)(pcStack_81e8 + -0x7c4c) = 1;" (assignment_expression "**(undefined4 **)(pcStack_81e8 + -0x7c4c) = 1" (pointer_expression "**(undefined4 **)(pcStack_81e8 + -0x7c4c)" * (pointer_expression "*(undefined4 **)(pcStack_81e8 + -0x7c4c)" * (cast_expression "(undefined4 **)(pcStack_81e8 + -0x7c4c)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_81e8 + -0x7c4c)" ( (binary_expression "pcStack_81e8 + -0x7c4c" identifier + number_literal) ))))) = number_literal) ;) (expression_statement "pcVar28 = pcStack_81e8;" (assignment_expression "pcVar28 = pcStack_81e8" identifier = identifier) ;) (expression_statement "iVar2 = iVar24;" (assignment_expression "iVar2 = iVar24" identifier = identifier) ;) }) (else_clause "else {\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                    (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4780);\n                  if (iVar8 == 0) {\n                    *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31dc) = 1;\n                    pcVar28 = pcStack_81e8;\n                    iVar2 = iVar24;\n                  }\n                  else {\n                    iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                      (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4778);\n                    if (iVar8 == 0) {\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac) = 0;\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0) = 1;\n                      pcVar28 = pcStack_81e8;\n                      iVar2 = iVar24;\n                      goto LAB_0002e464;\n                    }\n                    iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                      (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4770);\n                    if (iVar8 == 0) {\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac) = 1;\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0) = 0;\n                      pcVar28 = pcStack_81e8;\n                      iVar2 = iVar24;\n                    }\n                    else {\n                      iVar24 = (**(code **)(pcStack_81e8 + -0x743c))\n                                         (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4768);\n                      pcVar28 = pcStack_81e8;\n                      if (iVar24 == 0) goto LAB_0002e52c;\n                      cmdline_error(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4764,iVar20);\n                    }\n                  }\n                }" else (compound_statement "{\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                    (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4780);\n                  if (iVar8 == 0) {\n                    *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31dc) = 1;\n                    pcVar28 = pcStack_81e8;\n                    iVar2 = iVar24;\n                  }\n                  else {\n                    iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                      (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4778);\n                    if (iVar8 == 0) {\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac) = 0;\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0) = 1;\n                      pcVar28 = pcStack_81e8;\n                      iVar2 = iVar24;\n                      goto LAB_0002e464;\n                    }\n                    iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                      (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4770);\n                    if (iVar8 == 0) {\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac) = 1;\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0) = 0;\n                      pcVar28 = pcStack_81e8;\n                      iVar2 = iVar24;\n                    }\n                    else {\n                      iVar24 = (**(code **)(pcStack_81e8 + -0x743c))\n                                         (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4768);\n                      pcVar28 = pcStack_81e8;\n                      if (iVar24 == 0) goto LAB_0002e52c;\n                      cmdline_error(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4764,iVar20);\n                    }\n                  }\n                }" { (expression_statement "iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                    (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4780);" (assignment_expression "iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                    (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4780)" identifier = (call_expression "(**(code **)(pcStack_81e8 + -0x743c))\n                                    (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4780)" (parenthesized_expression "(**(code **)(pcStack_81e8 + -0x743c))" ( (pointer_expression "**(code **)(pcStack_81e8 + -0x743c)" * (pointer_expression "*(code **)(pcStack_81e8 + -0x743c)" * (cast_expression "(code **)(pcStack_81e8 + -0x743c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_81e8 + -0x743c)" ( (binary_expression "pcStack_81e8 + -0x743c" identifier + number_literal) ))))) )) (argument_list "(iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4780)" ( identifier , (binary_expression "*(int *)(pcStack_81e8 + -0x7fc8) + -0x4780" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fc8)" * (cast_expression "(int *)(pcStack_81e8 + -0x7fc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_81e8 + -0x7fc8)" ( (binary_expression "pcStack_81e8 + -0x7fc8" identifier + number_literal) )))) + number_literal) )))) ;) (if_statement "if (iVar8 == 0) {\n                    *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31dc) = 1;\n                    pcVar28 = pcStack_81e8;\n                    iVar2 = iVar24;\n                  }\n                  else {\n                    iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                      (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4778);\n                    if (iVar8 == 0) {\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac) = 0;\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0) = 1;\n                      pcVar28 = pcStack_81e8;\n                      iVar2 = iVar24;\n                      goto LAB_0002e464;\n                    }\n                    iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                      (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4770);\n                    if (iVar8 == 0) {\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac) = 1;\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0) = 0;\n                      pcVar28 = pcStack_81e8;\n                      iVar2 = iVar24;\n                    }\n                    else {\n                      iVar24 = (**(code **)(pcStack_81e8 + -0x743c))\n                                         (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4768);\n                      pcVar28 = pcStack_81e8;\n                      if (iVar24 == 0) goto LAB_0002e52c;\n                      cmdline_error(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4764,iVar20);\n                    }\n                  }" if (parenthesized_expression "(iVar8 == 0)" ( (binary_expression "iVar8 == 0" identifier == number_literal) )) (compound_statement "{\n                    *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31dc) = 1;\n                    pcVar28 = pcStack_81e8;\n                    iVar2 = iVar24;\n                  }" { (expression_statement "*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31dc) = 1;" (assignment_expression "*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31dc) = 1" (pointer_expression "*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31dc)" * (cast_expression "(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31dc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31dc)" ( (binary_expression "*(int *)(pcStack_81e8 + -0x7fd8) + -0x31dc" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fd8)" * (cast_expression "(int *)(pcStack_81e8 + -0x7fd8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_81e8 + -0x7fd8)" ( (binary_expression "pcStack_81e8 + -0x7fd8" identifier + number_literal) )))) + number_literal) )))) = number_literal) ;) (expression_statement "pcVar28 = pcStack_81e8;" (assignment_expression "pcVar28 = pcStack_81e8" identifier = identifier) ;) (expression_statement "iVar2 = iVar24;" (assignment_expression "iVar2 = iVar24" identifier = identifier) ;) }) (else_clause "else {\n                    iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                      (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4778);\n                    if (iVar8 == 0) {\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac) = 0;\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0) = 1;\n                      pcVar28 = pcStack_81e8;\n                      iVar2 = iVar24;\n                      goto LAB_0002e464;\n                    }\n                    iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                      (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4770);\n                    if (iVar8 == 0) {\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac) = 1;\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0) = 0;\n                      pcVar28 = pcStack_81e8;\n                      iVar2 = iVar24;\n                    }\n                    else {\n                      iVar24 = (**(code **)(pcStack_81e8 + -0x743c))\n                                         (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4768);\n                      pcVar28 = pcStack_81e8;\n                      if (iVar24 == 0) goto LAB_0002e52c;\n                      cmdline_error(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4764,iVar20);\n                    }\n                  }" else (compound_statement "{\n                    iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                      (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4778);\n                    if (iVar8 == 0) {\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac) = 0;\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0) = 1;\n                      pcVar28 = pcStack_81e8;\n                      iVar2 = iVar24;\n                      goto LAB_0002e464;\n                    }\n                    iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                      (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4770);\n                    if (iVar8 == 0) {\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac) = 1;\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0) = 0;\n                      pcVar28 = pcStack_81e8;\n                      iVar2 = iVar24;\n                    }\n                    else {\n                      iVar24 = (**(code **)(pcStack_81e8 + -0x743c))\n                                         (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4768);\n                      pcVar28 = pcStack_81e8;\n                      if (iVar24 == 0) goto LAB_0002e52c;\n                      cmdline_error(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4764,iVar20);\n                    }\n                  }" { (expression_statement "iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                      (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4778);" (assignment_expression "iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                      (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4778)" identifier = (call_expression "(**(code **)(pcStack_81e8 + -0x743c))\n                                      (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4778)" (parenthesized_expression "(**(code **)(pcStack_81e8 + -0x743c))" ( (pointer_expression "**(code **)(pcStack_81e8 + -0x743c)" * (pointer_expression "*(code **)(pcStack_81e8 + -0x743c)" * (cast_expression "(code **)(pcStack_81e8 + -0x743c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_81e8 + -0x743c)" ( (binary_expression "pcStack_81e8 + -0x743c" identifier + number_literal) ))))) )) (argument_list "(iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4778)" ( identifier , (binary_expression "*(int *)(pcStack_81e8 + -0x7fc8) + -0x4778" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fc8)" * (cast_expression "(int *)(pcStack_81e8 + -0x7fc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_81e8 + -0x7fc8)" ( (binary_expression "pcStack_81e8 + -0x7fc8" identifier + number_literal) )))) + number_literal) )))) ;) (if_statement "if (iVar8 == 0) {\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac) = 0;\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0) = 1;\n                      pcVar28 = pcStack_81e8;\n                      iVar2 = iVar24;\n                      goto LAB_0002e464;\n                    }" if (parenthesized_expression "(iVar8 == 0)" ( (binary_expression "iVar8 == 0" identifier == number_literal) )) (compound_statement "{\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac) = 0;\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0) = 1;\n                      pcVar28 = pcStack_81e8;\n                      iVar2 = iVar24;\n                      goto LAB_0002e464;\n                    }" { (expression_statement "*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac) = 0;" (assignment_expression "*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac) = 0" (pointer_expression "*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac)" * (cast_expression "(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac)" ( (binary_expression "*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fd8)" * (cast_expression "(int *)(pcStack_81e8 + -0x7fd8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_81e8 + -0x7fd8)" ( (binary_expression "pcStack_81e8 + -0x7fd8" identifier + number_literal) )))) + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0) = 1;" (assignment_expression "*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0) = 1" (pointer_expression "*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0)" * (cast_expression "(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0)" ( (binary_expression "*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fd8)" * (cast_expression "(int *)(pcStack_81e8 + -0x7fd8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_81e8 + -0x7fd8)" ( (binary_expression "pcStack_81e8 + -0x7fd8" identifier + number_literal) )))) + number_literal) )))) = number_literal) ;) (expression_statement "pcVar28 = pcStack_81e8;" (assignment_expression "pcVar28 = pcStack_81e8" identifier = identifier) ;) (expression_statement "iVar2 = iVar24;" (assignment_expression "iVar2 = iVar24" identifier = identifier) ;) (goto_statement "goto LAB_0002e464;" goto statement_identifier ;) })) (expression_statement "iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                      (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4770);" (assignment_expression "iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                      (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4770)" identifier = (call_expression "(**(code **)(pcStack_81e8 + -0x743c))\n                                      (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4770)" (parenthesized_expression "(**(code **)(pcStack_81e8 + -0x743c))" ( (pointer_expression "**(code **)(pcStack_81e8 + -0x743c)" * (pointer_expression "*(code **)(pcStack_81e8 + -0x743c)" * (cast_expression "(code **)(pcStack_81e8 + -0x743c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_81e8 + -0x743c)" ( (binary_expression "pcStack_81e8 + -0x743c" identifier + number_literal) ))))) )) (argument_list "(iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4770)" ( identifier , (binary_expression "*(int *)(pcStack_81e8 + -0x7fc8) + -0x4770" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fc8)" * (cast_expression "(int *)(pcStack_81e8 + -0x7fc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_81e8 + -0x7fc8)" ( (binary_expression "pcStack_81e8 + -0x7fc8" identifier + number_literal) )))) + number_literal) )))) ;) (if_statement "if (iVar8 == 0) {\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac) = 1;\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0) = 0;\n                      pcVar28 = pcStack_81e8;\n                      iVar2 = iVar24;\n                    }\n                    else {\n                      iVar24 = (**(code **)(pcStack_81e8 + -0x743c))\n                                         (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4768);\n                      pcVar28 = pcStack_81e8;\n                      if (iVar24 == 0) goto LAB_0002e52c;\n                      cmdline_error(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4764,iVar20);\n                    }" if (parenthesized_expression "(iVar8 == 0)" ( (binary_expression "iVar8 == 0" identifier == number_literal) )) (compound_statement "{\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac) = 1;\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0) = 0;\n                      pcVar28 = pcStack_81e8;\n                      iVar2 = iVar24;\n                    }" { (expression_statement "*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac) = 1;" (assignment_expression "*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac) = 1" (pointer_expression "*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac)" * (cast_expression "(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac)" ( (binary_expression "*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fd8)" * (cast_expression "(int *)(pcStack_81e8 + -0x7fd8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_81e8 + -0x7fd8)" ( (binary_expression "pcStack_81e8 + -0x7fd8" identifier + number_literal) )))) + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0) = 0;" (assignment_expression "*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0) = 0" (pointer_expression "*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0)" * (cast_expression "(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0)" ( (binary_expression "*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fd8)" * (cast_expression "(int *)(pcStack_81e8 + -0x7fd8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_81e8 + -0x7fd8)" ( (binary_expression "pcStack_81e8 + -0x7fd8" identifier + number_literal) )))) + number_literal) )))) = number_literal) ;) (expression_statement "pcVar28 = pcStack_81e8;" (assignment_expression "pcVar28 = pcStack_81e8" identifier = identifier) ;) (expression_statement "iVar2 = iVar24;" (assignment_expression "iVar2 = iVar24" identifier = identifier) ;) }) (else_clause "else {\n                      iVar24 = (**(code **)(pcStack_81e8 + -0x743c))\n                                         (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4768);\n                      pcVar28 = pcStack_81e8;\n                      if (iVar24 == 0) goto LAB_0002e52c;\n                      cmdline_error(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4764,iVar20);\n                    }" else (compound_statement "{\n                      iVar24 = (**(code **)(pcStack_81e8 + -0x743c))\n                                         (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4768);\n                      pcVar28 = pcStack_81e8;\n                      if (iVar24 == 0) goto LAB_0002e52c;\n                      cmdline_error(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4764,iVar20);\n                    }" { (expression_statement "iVar24 = (**(code **)(pcStack_81e8 + -0x743c))\n                                         (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4768);" (assignment_expression "iVar24 = (**(code **)(pcStack_81e8 + -0x743c))\n                                         (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4768)" identifier = (call_expression "(**(code **)(pcStack_81e8 + -0x743c))\n                                         (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4768)" (parenthesized_expression "(**(code **)(pcStack_81e8 + -0x743c))" ( (pointer_expression "**(code **)(pcStack_81e8 + -0x743c)" * (pointer_expression "*(code **)(pcStack_81e8 + -0x743c)" * (cast_expression "(code **)(pcStack_81e8 + -0x743c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_81e8 + -0x743c)" ( (binary_expression "pcStack_81e8 + -0x743c" identifier + number_literal) ))))) )) (argument_list "(iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4768)" ( identifier , (binary_expression "*(int *)(pcStack_81e8 + -0x7fc8) + -0x4768" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fc8)" * (cast_expression "(int *)(pcStack_81e8 + -0x7fc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_81e8 + -0x7fc8)" ( (binary_expression "pcStack_81e8 + -0x7fc8" identifier + number_literal) )))) + number_literal) )))) ;) (expression_statement "pcVar28 = pcStack_81e8;" (assignment_expression "pcVar28 = pcStack_81e8" identifier = identifier) ;) (if_statement "if (iVar24 == 0) goto LAB_0002e52c;" if (parenthesized_expression "(iVar24 == 0)" ( (binary_expression "iVar24 == 0" identifier == number_literal) )) (goto_statement "goto LAB_0002e52c;" goto statement_identifier ;)) (expression_statement "cmdline_error(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4764,iVar20);" (call_expression "cmdline_error(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4764,iVar20)" identifier (argument_list "(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4764,iVar20)" ( (binary_expression "*(int *)(pcStack_81e8 + -0x7fc8) + -0x4764" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fc8)" * (cast_expression "(int *)(pcStack_81e8 + -0x7fc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_81e8 + -0x7fc8)" ( (binary_expression "pcStack_81e8 + -0x7fc8" identifier + number_literal) )))) + number_literal) , identifier ))) ;) }))) }))) }))) (goto_statement "goto LAB_0002e464;" goto statement_identifier ;) })) })) (expression_statement "(*pcStack_81dc)();" (call_expression "(*pcStack_81dc)()" (parenthesized_expression "(*pcStack_81dc)" ( (pointer_expression "*pcStack_81dc" * identifier) )) (argument_list "()" ( ))) ;) (expression_statement "pcVar28 = pcStack_81e8;" (assignment_expression "pcVar28 = pcStack_81e8" identifier = identifier) ;) (expression_statement "iVar2 = iVar24;" (assignment_expression "iVar2 = iVar24" identifier = identifier) ;) }))) }))) }))) (labeled_statement "LAB_0002e464:\n      iVar2 = iVar2 + 1;" statement_identifier : (expression_statement "iVar2 = iVar2 + 1;" (assignment_expression "iVar2 = iVar2 + 1" identifier = (binary_expression "iVar2 + 1" identifier + number_literal)) ;)) (if_statement "if (iVar4 <= iVar2) goto LAB_0002e52c;" if (parenthesized_expression "(iVar4 <= iVar2)" ( (binary_expression "iVar4 <= iVar2" identifier <= identifier) )) (goto_statement "goto LAB_0002e52c;" goto statement_identifier ;)) (expression_statement "piVar19 = (int *)(iVar15 + iVar2 * 4);" (assignment_expression "piVar19 = (int *)(iVar15 + iVar2 * 4)" identifier = (cast_expression "(int *)(iVar15 + iVar2 * 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar15 + iVar2 * 4)" ( (binary_expression "iVar15 + iVar2 * 4" identifier + (binary_expression "iVar2 * 4" identifier * number_literal)) )))) ;) (expression_statement "pcVar13 = (char *)*piVar19;" (assignment_expression "pcVar13 = (char *)*piVar19" identifier = (cast_expression "(char *)*piVar19" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "*piVar19" * identifier))) ;) (expression_statement "iVar24 = iVar2;" (assignment_expression "iVar24 = iVar2" identifier = identifier) ;) (if_statement "if (*pcVar13 != '-') goto LAB_0002e52c;" if (parenthesized_expression "(*pcVar13 != '-')" ( (binary_expression "*pcVar13 != '-'" (pointer_expression "*pcVar13" * identifier) != (char_literal "'-'" ' character ')) )) (goto_statement "goto LAB_0002e52c;" goto statement_identifier ;)) (goto_statement "goto LAB_0002e488;" goto statement_identifier ;) })) (expression_statement "iVar2 = 1;" (assignment_expression "iVar2 = 1" identifier = number_literal) ;) }))) (labeled_statement "LAB_0002e52c:\n  iVar4 = iVar4 - iVar2;" statement_identifier : (expression_statement "iVar4 = iVar4 - iVar2;" (assignment_expression "iVar4 = iVar4 - iVar2" identifier = (binary_expression "iVar4 - iVar2" identifier - identifier)) ;)) (expression_statement "*(undefined4 *)(*(int *)(pcVar28 + -0x7fd8) + -0x31f4) = 0;" (assignment_expression "*(undefined4 *)(*(int *)(pcVar28 + -0x7fd8) + -0x31f4) = 0" (pointer_expression "*(undefined4 *)(*(int *)(pcVar28 + -0x7fd8) + -0x31f4)" * (cast_expression "(undefined4 *)(*(int *)(pcVar28 + -0x7fd8) + -0x31f4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar28 + -0x7fd8) + -0x31f4)" ( (binary_expression "*(int *)(pcVar28 + -0x7fd8) + -0x31f4" (pointer_expression "*(int *)(pcVar28 + -0x7fd8)" * (cast_expression "(int *)(pcVar28 + -0x7fd8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar28 + -0x7fd8)" ( (binary_expression "pcVar28 + -0x7fd8" identifier + number_literal) )))) + number_literal) )))) = number_literal) ;) (expression_statement "puVar23 = (undefined4 *)(iVar15 + iVar2 * 4);" (assignment_expression "puVar23 = (undefined4 *)(iVar15 + iVar2 * 4)" identifier = (cast_expression "(undefined4 *)(iVar15 + iVar2 * 4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar15 + iVar2 * 4)" ( (binary_expression "iVar15 + iVar2 * 4" identifier + (binary_expression "iVar2 * 4" identifier * number_literal)) )))) ;) (if_statement "if (*(int *)(*(int *)(pcVar28 + -0x7fd8) + -0x31c4) == 0) {\n    if (iVar4 < 2) {\n      FUN_0002861c();\n      puVar18 = puVar23 + iVar4 + 0x3fffffff;\n      iVar24 = FUN_00028968(*puVar18);\n      iVar2 = *(int *)(pcStack_81e8 + -0x7fd8);\n      if (iVar24 != 0) goto LAB_0002e90c;\n      *(undefined4 *)(iVar2 + -0x31f0) = 0;\nLAB_0002efd8:\n      iVar2 = *(int *)(pcStack_81e8 + -0x7fc8);\nLAB_0002efdc:\n      FUN_00028270(iVar2 + -0x4668);\n      pcVar13 = (char *)*puVar23;\nLAB_0002eb34:\n      uVar7 = puVar23[1];\n      puVar9 = (undefined1 *)FUN_00028968(pcVar13);\n      if (puVar9 == (undefined1 *)0x0) {\n        FUN_00028270(*(int *)(pcStack_81e8 + -0x7fc8) + -0x463c);\n        uRam00000000 = 0;\n      }\n      else {\n        *puVar9 = 0;\n      }\n      if (puVar9[1] == '\0') {\n        pcVar27 = (char *)(*(int *)(pcStack_81e8 + -0x7fc8) + -0x48b0);\n      }\n      else {\n        pcVar27 = puVar9 + 1;\n      }\n      puVar9 = (undefined1 *)(**(code **)(pcStack_81e8 + -0x75b8))(pcVar13,0x40);\n      if (puVar9 == (undefined1 *)0x0) {\n        pcVar21 = (char *)0x0;\n      }\n      else {\n        *puVar9 = 0;\n        cVar11 = *pcVar13;\n        pcVar21 = pcVar13;\n        pcVar13 = puVar9 + 1;\n        if (cVar11 == '\0') {\n          pcVar21 = (char *)0x0;\n        }\n      }\n      if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31c8) == 0) {\n        iVar2 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iVar2 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47f4;\n      }\n      if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31cc) == 0) {\n        iVar24 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iVar24 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47f0;\n      }\n      if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d0) == 0) {\n        iVar4 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iVar4 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47ec;\n      }\n      if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4) == 0) {\n        iStack_81f0 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iStack_81f0 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47e8;\n      }\n      pcStack_81ec = pcVar27;\n      uVar6 = dupprintf(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4618,iVar2,iVar24,iVar4);\n      FUN_00028a00(pcVar13,pcVar21,uVar6);\n      safefree(uVar6);\n      iVar2 = scp_sink_setup(pcVar27,*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d0),\n                             *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31cc));\n      if (iVar2 == 0) {\n        FUN_0002d4e0(uVar7);\n        iVar2 = *(int *)(pcStack_81e8 + -0x7fd8);\n        goto LAB_0002e788;\n      }\n    }\n    else {\n      if (iVar4 < 3) {\n        puVar18 = puVar23 + iVar4 + 0x3fffffff;\n        iVar2 = FUN_00028968(*puVar18);\n        if (iVar2 == 0) {\n          *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f0) = 0;\n          iVar2 = *(int *)(pcStack_81e8 + -0x7fc8);\n          if (iVar4 != 2) goto LAB_0002efdc;\n          pcVar13 = (char *)*puVar23;\n          goto LAB_0002eb34;\n        }\n      }\n      else {\n        *(undefined4 *)(*(int *)(pcVar28 + -0x7fd8) + -0x31d4) = 1;\n        puVar18 = puVar23 + iVar4 + 0x3fffffff;\n        iVar2 = FUN_00028968(*puVar18);\n        if (iVar2 == 0) {\n          *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f0) = 0;\n          goto LAB_0002efd8;\n        }\n      }\n      iVar2 = *(int *)(pcStack_81e8 + -0x7fd8);\nLAB_0002e90c:\n      *(undefined4 *)(iVar2 + -0x31f0) = 1;\n      pcVar13 = (char *)*puVar18;\n      puVar9 = (undefined1 *)FUN_00028968(pcVar13);\n      if (puVar9 == (undefined1 *)0x0) {\n        FUN_00028270(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4720);\n        uRam00000000 = 0;\n      }\n      else {\n        *puVar9 = 0;\n      }\n      if (puVar9[1] == '\0') {\n        pcVar21 = (char *)(*(int *)(pcStack_81e8 + -0x7fc8) + -0x48b0);\n      }\n      else {\n        pcVar21 = puVar9 + 1;\n      }\n      puVar9 = (undefined1 *)(**(code **)(pcStack_81e8 + -0x75b8))(pcVar13,0x40);\n      if (puVar9 == (undefined1 *)0x0) {\n        pcVar27 = (char *)0x0;\n      }\n      else {\n        *puVar9 = 0;\n        cVar11 = *pcVar13;\n        pcVar27 = pcVar13;\n        pcVar13 = puVar9 + 1;\n        if (cVar11 == '\0') {\n          pcVar27 = (char *)0x0;\n        }\n      }\n      if (iVar4 == 2) {\n        iVar2 = FUN_00028968(*puVar23);\n        if (iVar2 != 0) {\n          FUN_00028270(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4704,*puVar23);\n        }\n        iVar2 = (**(code **)(pcStack_81e8 + -0x7c30))(*puVar23,1);\n        if (iVar2 == 0) {\n          FUN_00028270(*(int *)(pcStack_81e8 + -0x7fc8) + -0x46e0,*puVar23);\n          iVar24 = *(int *)(pcStack_81e8 + -0x7fd8);\n        }\n        else {\n          iVar24 = *(int *)(pcStack_81e8 + -0x7fd8);\n          if (iVar2 == 2) {\n            *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4) = 1;\n            goto LAB_0002e988;\n          }\n        }\n      }\n      else {\nLAB_0002e988:\n        iVar24 = *(int *)(pcStack_81e8 + -0x7fd8);\n      }\n      if (*(int *)(iVar24 + -0x31c8) == 0) {\n        iVar2 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iVar2 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47f4;\n      }\n      if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31cc) == 0) {\n        iVar24 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iVar24 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47f0;\n      }\n      if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d0) == 0) {\n        iVar15 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iVar15 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47ec;\n      }\n      if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4) == 0) {\n        iStack_81f0 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iStack_81f0 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47e8;\n      }\n      pcStack_81ec = pcVar21;\n      uVar7 = dupprintf(*(int *)(pcStack_81e8 + -0x7fc8) + -0x46c0,iVar2,iVar24,iVar15);\n      FUN_00028a00(pcVar13,pcVar27,uVar7);\n      safefree(uVar7);\n      pcVar27 = *(char **)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4);\n      iVar2 = scp_source_setup(pcVar21);\n      if ((iVar2 == 0) && (1 < iVar4)) {\n        puVar18 = puVar23 + iVar4 + -1;\n        iVar24 = *(int *)(pcStack_81e8 + -0x7db0);\n        iVar25 = *(int *)(pcStack_81e8 + -0x7fc8);\n        iVar15 = *(int *)(pcStack_81e8 + -0x7db0);\n        iVar4 = *(int *)(pcStack_81e8 + -0x7fc8);\n        do {\n          pcVar13 = (char *)*puVar23;\n          iVar2 = FUN_00028968(pcVar13);\n          if (iVar2 == 0) {\n            pcVar27 = (char *)0x1;\n            iVar2 = (**(code **)(pcStack_81e8 + -0x7c30))(pcVar13,1,pcVar13);\n            if (iVar2 == 0) {\n              (*(code *)(iVar15 + -0x59a8))(iVar25 + -0x4688);\n              pcVar27 = pcVar13;\n            }\n            else if (iVar2 == 1) {\n              (*(code *)(iVar24 + -0x4b8c))(pcVar13);\n            }\n            else {\n              iVar2 = (**(code **)(pcStack_81e8 + -0x7c2c))();\n              if (iVar2 == 0) {\n                (*(code *)(iVar15 + -0x59a8))(iVar25 + -0x4688);\n                pcVar27 = pcVar13;\n              }\n              else {\n                while (iVar26 = (**(code **)(pcStack_81e8 + -0x7c28))(iVar2), iVar26 != 0) {\n                  (*(code *)(iVar24 + -0x4b8c))(iVar26);\n                  safefree(iVar26);\n                }\n                (**(code **)(pcStack_81e8 + -0x7c24))(iVar2);\n              }\n            }\n          }\n          else {\n            pcVar27 = (char *)(iVar4 + -0x46ac);\n            FUN_00027ff8(**(undefined4 **)(pcStack_81e8 + -0x7460));\n            *(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31e0) =\n                 *(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31e0) + 1;\n          }\n          puVar23 = puVar23 + 1;\n          iVar2 = *(int *)(pcStack_81e8 + -0x7fd8);\n        } while (puVar18 != puVar23);\n        goto LAB_0002e788;\n      }\n    }\n  }\n  else {\n    if (iVar4 == 1) {\n      pcVar13 = (char *)*puVar23;\n    }\n    else {\n      FUN_0002861c();\n      pcVar13 = (char *)*puVar23;\n    }\n    puVar9 = (undefined1 *)FUN_00028968(pcVar13);\n    if (puVar9 == (undefined1 *)0x0) {\n      FUN_00028270(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4750);\n      uRam00000000 = 0;\n    }\n    else {\n      *puVar9 = 0;\n    }\n    if (puVar9[1] == '\0') {\n      puVar9 = (undefined1 *)(**(code **)(pcStack_81e8 + -0x75b8))(pcVar13,0x40);\n      if (puVar9 == (undefined1 *)0x0) {\n        puVar23 = (undefined4 *)safemalloc(0x68,1);\n        iVar2 = *(int *)(pcStack_81e8 + -0x7fc8);\n        uVar7 = *(undefined4 *)(iVar2 + -0x4728);\n        *puVar23 = *(undefined4 *)(iVar2 + -0x472c);\n        puVar23[1] = uVar7;\n        *(undefined1 *)(puVar23 + 2) = *(undefined1 *)(iVar2 + -0x4724);\n        iVar2 = (**(code **)(pcStack_81e8 + -0x752c))(puVar23);\n        pcVar10 = (char *)((int)puVar23 + iVar2);\n        pcVar21 = (char *)(*(int *)(pcStack_81e8 + -0x7fc8) + -0x48b0);\n        cVar11 = '.';\n        pcVar27 = (char *)0x0;\n        pcVar22 = pcVar21;\n        goto LAB_0002e6b4;\n      }\n      pcVar21 = (char *)(*(int *)(pcStack_81e8 + -0x7fc8) + -0x48b0);\nLAB_0002e5ac:\n      *puVar9 = 0;\n      cVar11 = *pcVar13;\n      pcVar27 = pcVar13;\n      pcVar13 = puVar9 + 1;\n      if (cVar11 == '\0') {\n        pcVar27 = (char *)0x0;\n      }\n    }\n    else {\n      pcVar21 = puVar9 + 1;\n      puVar9 = (undefined1 *)(**(code **)(pcStack_81e8 + -0x75b8))(pcVar13);\n      if (puVar9 != (undefined1 *)0x0) goto LAB_0002e5ac;\n      pcVar27 = (char *)0x0;\n    }\n    iVar2 = (**(code **)(pcStack_81e8 + -0x752c))(pcVar21);\n    puVar23 = (undefined4 *)safemalloc((iVar2 + 0x19) * 4,1);\n    iVar2 = *(int *)(pcStack_81e8 + -0x7fc8);\n    uVar7 = *(undefined4 *)(iVar2 + -0x4728);\n    *puVar23 = *(undefined4 *)(iVar2 + -0x472c);\n    puVar23[1] = uVar7;\n    *(undefined1 *)(puVar23 + 2) = *(undefined1 *)(iVar2 + -0x4724);\n    iVar2 = (**(code **)(pcStack_81e8 + -0x752c))(puVar23);\n    pcVar10 = (char *)((int)puVar23 + iVar2);\n    cVar11 = *pcVar21;\n    pcVar22 = pcVar21;\n    while (cVar11 != '\0') {\nLAB_0002e6b4:\n      if (cVar11 == '\'') {\n        builtin_strncpy(pcVar10,"\'\\\'\'",4);\n        pcVar10 = pcVar10 + 4;\n      }\n      else {\n        *pcVar10 = cVar11;\n        pcVar10 = pcVar10 + 1;\n      }\n      pcVar21 = pcVar21 + 1;\n      cVar11 = *pcVar21;\n    }\n    *pcVar10 = '\'';\n    pcVar10[1] = '\0';\n    FUN_00028a00(pcVar13,pcVar27,puVar23);\n    safefree(puVar23);\n    if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31ec) != 0) {\n      scp_sftp_listdir(pcVar22);\n      iVar2 = *(int *)(pcStack_81e8 + -0x7fd8);\n      goto LAB_0002e788;\n    }\n    puVar23 = *(undefined4 **)(pcStack_81e8 + -0x7594);\n    while( true ) {\n      pcVar27 = (char *)0x1;\n      iVar2 = FUN_000280f4(&cStack_81d5);\n      if (iVar2 < 1) break;\n      (**(code **)(pcStack_81e8 + -0x75c4))((int)cStack_81d5,*puVar23);\n    }\n  }" if (parenthesized_expression "(*(int *)(*(int *)(pcVar28 + -0x7fd8) + -0x31c4) == 0)" ( (binary_expression "*(int *)(*(int *)(pcVar28 + -0x7fd8) + -0x31c4) == 0" (pointer_expression "*(int *)(*(int *)(pcVar28 + -0x7fd8) + -0x31c4)" * (cast_expression "(int *)(*(int *)(pcVar28 + -0x7fd8) + -0x31c4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar28 + -0x7fd8) + -0x31c4)" ( (binary_expression "*(int *)(pcVar28 + -0x7fd8) + -0x31c4" (pointer_expression "*(int *)(pcVar28 + -0x7fd8)" * (cast_expression "(int *)(pcVar28 + -0x7fd8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar28 + -0x7fd8)" ( (binary_expression "pcVar28 + -0x7fd8" identifier + number_literal) )))) + number_literal) )))) == number_literal) )) (compound_statement "{\n    if (iVar4 < 2) {\n      FUN_0002861c();\n      puVar18 = puVar23 + iVar4 + 0x3fffffff;\n      iVar24 = FUN_00028968(*puVar18);\n      iVar2 = *(int *)(pcStack_81e8 + -0x7fd8);\n      if (iVar24 != 0) goto LAB_0002e90c;\n      *(undefined4 *)(iVar2 + -0x31f0) = 0;\nLAB_0002efd8:\n      iVar2 = *(int *)(pcStack_81e8 + -0x7fc8);\nLAB_0002efdc:\n      FUN_00028270(iVar2 + -0x4668);\n      pcVar13 = (char *)*puVar23;\nLAB_0002eb34:\n      uVar7 = puVar23[1];\n      puVar9 = (undefined1 *)FUN_00028968(pcVar13);\n      if (puVar9 == (undefined1 *)0x0) {\n        FUN_00028270(*(int *)(pcStack_81e8 + -0x7fc8) + -0x463c);\n        uRam00000000 = 0;\n      }\n      else {\n        *puVar9 = 0;\n      }\n      if (puVar9[1] == '\0') {\n        pcVar27 = (char *)(*(int *)(pcStack_81e8 + -0x7fc8) + -0x48b0);\n      }\n      else {\n        pcVar27 = puVar9 + 1;\n      }\n      puVar9 = (undefined1 *)(**(code **)(pcStack_81e8 + -0x75b8))(pcVar13,0x40);\n      if (puVar9 == (undefined1 *)0x0) {\n        pcVar21 = (char *)0x0;\n      }\n      else {\n        *puVar9 = 0;\n        cVar11 = *pcVar13;\n        pcVar21 = pcVar13;\n        pcVar13 = puVar9 + 1;\n        if (cVar11 == '\0') {\n          pcVar21 = (char *)0x0;\n        }\n      }\n      if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31c8) == 0) {\n        iVar2 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iVar2 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47f4;\n      }\n      if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31cc) == 0) {\n        iVar24 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iVar24 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47f0;\n      }\n      if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d0) == 0) {\n        iVar4 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iVar4 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47ec;\n      }\n      if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4) == 0) {\n        iStack_81f0 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iStack_81f0 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47e8;\n      }\n      pcStack_81ec = pcVar27;\n      uVar6 = dupprintf(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4618,iVar2,iVar24,iVar4);\n      FUN_00028a00(pcVar13,pcVar21,uVar6);\n      safefree(uVar6);\n      iVar2 = scp_sink_setup(pcVar27,*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d0),\n                             *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31cc));\n      if (iVar2 == 0) {\n        FUN_0002d4e0(uVar7);\n        iVar2 = *(int *)(pcStack_81e8 + -0x7fd8);\n        goto LAB_0002e788;\n      }\n    }\n    else {\n      if (iVar4 < 3) {\n        puVar18 = puVar23 + iVar4 + 0x3fffffff;\n        iVar2 = FUN_00028968(*puVar18);\n        if (iVar2 == 0) {\n          *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f0) = 0;\n          iVar2 = *(int *)(pcStack_81e8 + -0x7fc8);\n          if (iVar4 != 2) goto LAB_0002efdc;\n          pcVar13 = (char *)*puVar23;\n          goto LAB_0002eb34;\n        }\n      }\n      else {\n        *(undefined4 *)(*(int *)(pcVar28 + -0x7fd8) + -0x31d4) = 1;\n        puVar18 = puVar23 + iVar4 + 0x3fffffff;\n        iVar2 = FUN_00028968(*puVar18);\n        if (iVar2 == 0) {\n          *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f0) = 0;\n          goto LAB_0002efd8;\n        }\n      }\n      iVar2 = *(int *)(pcStack_81e8 + -0x7fd8);\nLAB_0002e90c:\n      *(undefined4 *)(iVar2 + -0x31f0) = 1;\n      pcVar13 = (char *)*puVar18;\n      puVar9 = (undefined1 *)FUN_00028968(pcVar13);\n      if (puVar9 == (undefined1 *)0x0) {\n        FUN_00028270(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4720);\n        uRam00000000 = 0;\n      }\n      else {\n        *puVar9 = 0;\n      }\n      if (puVar9[1] == '\0') {\n        pcVar21 = (char *)(*(int *)(pcStack_81e8 + -0x7fc8) + -0x48b0);\n      }\n      else {\n        pcVar21 = puVar9 + 1;\n      }\n      puVar9 = (undefined1 *)(**(code **)(pcStack_81e8 + -0x75b8))(pcVar13,0x40);\n      if (puVar9 == (undefined1 *)0x0) {\n        pcVar27 = (char *)0x0;\n      }\n      else {\n        *puVar9 = 0;\n        cVar11 = *pcVar13;\n        pcVar27 = pcVar13;\n        pcVar13 = puVar9 + 1;\n        if (cVar11 == '\0') {\n          pcVar27 = (char *)0x0;\n        }\n      }\n      if (iVar4 == 2) {\n        iVar2 = FUN_00028968(*puVar23);\n        if (iVar2 != 0) {\n          FUN_00028270(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4704,*puVar23);\n        }\n        iVar2 = (**(code **)(pcStack_81e8 + -0x7c30))(*puVar23,1);\n        if (iVar2 == 0) {\n          FUN_00028270(*(int *)(pcStack_81e8 + -0x7fc8) + -0x46e0,*puVar23);\n          iVar24 = *(int *)(pcStack_81e8 + -0x7fd8);\n        }\n        else {\n          iVar24 = *(int *)(pcStack_81e8 + -0x7fd8);\n          if (iVar2 == 2) {\n            *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4) = 1;\n            goto LAB_0002e988;\n          }\n        }\n      }\n      else {\nLAB_0002e988:\n        iVar24 = *(int *)(pcStack_81e8 + -0x7fd8);\n      }\n      if (*(int *)(iVar24 + -0x31c8) == 0) {\n        iVar2 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iVar2 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47f4;\n      }\n      if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31cc) == 0) {\n        iVar24 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iVar24 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47f0;\n      }\n      if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d0) == 0) {\n        iVar15 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iVar15 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47ec;\n      }\n      if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4) == 0) {\n        iStack_81f0 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iStack_81f0 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47e8;\n      }\n      pcStack_81ec = pcVar21;\n      uVar7 = dupprintf(*(int *)(pcStack_81e8 + -0x7fc8) + -0x46c0,iVar2,iVar24,iVar15);\n      FUN_00028a00(pcVar13,pcVar27,uVar7);\n      safefree(uVar7);\n      pcVar27 = *(char **)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4);\n      iVar2 = scp_source_setup(pcVar21);\n      if ((iVar2 == 0) && (1 < iVar4)) {\n        puVar18 = puVar23 + iVar4 + -1;\n        iVar24 = *(int *)(pcStack_81e8 + -0x7db0);\n        iVar25 = *(int *)(pcStack_81e8 + -0x7fc8);\n        iVar15 = *(int *)(pcStack_81e8 + -0x7db0);\n        iVar4 = *(int *)(pcStack_81e8 + -0x7fc8);\n        do {\n          pcVar13 = (char *)*puVar23;\n          iVar2 = FUN_00028968(pcVar13);\n          if (iVar2 == 0) {\n            pcVar27 = (char *)0x1;\n            iVar2 = (**(code **)(pcStack_81e8 + -0x7c30))(pcVar13,1,pcVar13);\n            if (iVar2 == 0) {\n              (*(code *)(iVar15 + -0x59a8))(iVar25 + -0x4688);\n              pcVar27 = pcVar13;\n            }\n            else if (iVar2 == 1) {\n              (*(code *)(iVar24 + -0x4b8c))(pcVar13);\n            }\n            else {\n              iVar2 = (**(code **)(pcStack_81e8 + -0x7c2c))();\n              if (iVar2 == 0) {\n                (*(code *)(iVar15 + -0x59a8))(iVar25 + -0x4688);\n                pcVar27 = pcVar13;\n              }\n              else {\n                while (iVar26 = (**(code **)(pcStack_81e8 + -0x7c28))(iVar2), iVar26 != 0) {\n                  (*(code *)(iVar24 + -0x4b8c))(iVar26);\n                  safefree(iVar26);\n                }\n                (**(code **)(pcStack_81e8 + -0x7c24))(iVar2);\n              }\n            }\n          }\n          else {\n            pcVar27 = (char *)(iVar4 + -0x46ac);\n            FUN_00027ff8(**(undefined4 **)(pcStack_81e8 + -0x7460));\n            *(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31e0) =\n                 *(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31e0) + 1;\n          }\n          puVar23 = puVar23 + 1;\n          iVar2 = *(int *)(pcStack_81e8 + -0x7fd8);\n        } while (puVar18 != puVar23);\n        goto LAB_0002e788;\n      }\n    }\n  }" { (if_statement "if (iVar4 < 2) {\n      FUN_0002861c();\n      puVar18 = puVar23 + iVar4 + 0x3fffffff;\n      iVar24 = FUN_00028968(*puVar18);\n      iVar2 = *(int *)(pcStack_81e8 + -0x7fd8);\n      if (iVar24 != 0) goto LAB_0002e90c;\n      *(undefined4 *)(iVar2 + -0x31f0) = 0;\nLAB_0002efd8:\n      iVar2 = *(int *)(pcStack_81e8 + -0x7fc8);\nLAB_0002efdc:\n      FUN_00028270(iVar2 + -0x4668);\n      pcVar13 = (char *)*puVar23;\nLAB_0002eb34:\n      uVar7 = puVar23[1];\n      puVar9 = (undefined1 *)FUN_00028968(pcVar13);\n      if (puVar9 == (undefined1 *)0x0) {\n        FUN_00028270(*(int *)(pcStack_81e8 + -0x7fc8) + -0x463c);\n        uRam00000000 = 0;\n      }\n      else {\n        *puVar9 = 0;\n      }\n      if (puVar9[1] == '\0') {\n        pcVar27 = (char *)(*(int *)(pcStack_81e8 + -0x7fc8) + -0x48b0);\n      }\n      else {\n        pcVar27 = puVar9 + 1;\n      }\n      puVar9 = (undefined1 *)(**(code **)(pcStack_81e8 + -0x75b8))(pcVar13,0x40);\n      if (puVar9 == (undefined1 *)0x0) {\n        pcVar21 = (char *)0x0;\n      }\n      else {\n        *puVar9 = 0;\n        cVar11 = *pcVar13;\n        pcVar21 = pcVar13;\n        pcVar13 = puVar9 + 1;\n        if (cVar11 == '\0') {\n          pcVar21 = (char *)0x0;\n        }\n      }\n      if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31c8) == 0) {\n        iVar2 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iVar2 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47f4;\n      }\n      if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31cc) == 0) {\n        iVar24 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iVar24 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47f0;\n      }\n      if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d0) == 0) {\n        iVar4 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iVar4 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47ec;\n      }\n      if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4) == 0) {\n        iStack_81f0 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iStack_81f0 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47e8;\n      }\n      pcStack_81ec = pcVar27;\n      uVar6 = dupprintf(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4618,iVar2,iVar24,iVar4);\n      FUN_00028a00(pcVar13,pcVar21,uVar6);\n      safefree(uVar6);\n      iVar2 = scp_sink_setup(pcVar27,*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d0),\n                             *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31cc));\n      if (iVar2 == 0) {\n        FUN_0002d4e0(uVar7);\n        iVar2 = *(int *)(pcStack_81e8 + -0x7fd8);\n        goto LAB_0002e788;\n      }\n    }\n    else {\n      if (iVar4 < 3) {\n        puVar18 = puVar23 + iVar4 + 0x3fffffff;\n        iVar2 = FUN_00028968(*puVar18);\n        if (iVar2 == 0) {\n          *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f0) = 0;\n          iVar2 = *(int *)(pcStack_81e8 + -0x7fc8);\n          if (iVar4 != 2) goto LAB_0002efdc;\n          pcVar13 = (char *)*puVar23;\n          goto LAB_0002eb34;\n        }\n      }\n      else {\n        *(undefined4 *)(*(int *)(pcVar28 + -0x7fd8) + -0x31d4) = 1;\n        puVar18 = puVar23 + iVar4 + 0x3fffffff;\n        iVar2 = FUN_00028968(*puVar18);\n        if (iVar2 == 0) {\n          *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f0) = 0;\n          goto LAB_0002efd8;\n        }\n      }\n      iVar2 = *(int *)(pcStack_81e8 + -0x7fd8);\nLAB_0002e90c:\n      *(undefined4 *)(iVar2 + -0x31f0) = 1;\n      pcVar13 = (char *)*puVar18;\n      puVar9 = (undefined1 *)FUN_00028968(pcVar13);\n      if (puVar9 == (undefined1 *)0x0) {\n        FUN_00028270(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4720);\n        uRam00000000 = 0;\n      }\n      else {\n        *puVar9 = 0;\n      }\n      if (puVar9[1] == '\0') {\n        pcVar21 = (char *)(*(int *)(pcStack_81e8 + -0x7fc8) + -0x48b0);\n      }\n      else {\n        pcVar21 = puVar9 + 1;\n      }\n      puVar9 = (undefined1 *)(**(code **)(pcStack_81e8 + -0x75b8))(pcVar13,0x40);\n      if (puVar9 == (undefined1 *)0x0) {\n        pcVar27 = (char *)0x0;\n      }\n      else {\n        *puVar9 = 0;\n        cVar11 = *pcVar13;\n        pcVar27 = pcVar13;\n        pcVar13 = puVar9 + 1;\n        if (cVar11 == '\0') {\n          pcVar27 = (char *)0x0;\n        }\n      }\n      if (iVar4 == 2) {\n        iVar2 = FUN_00028968(*puVar23);\n        if (iVar2 != 0) {\n          FUN_00028270(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4704,*puVar23);\n        }\n        iVar2 = (**(code **)(pcStack_81e8 + -0x7c30))(*puVar23,1);\n        if (iVar2 == 0) {\n          FUN_00028270(*(int *)(pcStack_81e8 + -0x7fc8) + -0x46e0,*puVar23);\n          iVar24 = *(int *)(pcStack_81e8 + -0x7fd8);\n        }\n        else {\n          iVar24 = *(int *)(pcStack_81e8 + -0x7fd8);\n          if (iVar2 == 2) {\n            *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4) = 1;\n            goto LAB_0002e988;\n          }\n        }\n      }\n      else {\nLAB_0002e988:\n        iVar24 = *(int *)(pcStack_81e8 + -0x7fd8);\n      }\n      if (*(int *)(iVar24 + -0x31c8) == 0) {\n        iVar2 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iVar2 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47f4;\n      }\n      if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31cc) == 0) {\n        iVar24 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iVar24 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47f0;\n      }\n      if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d0) == 0) {\n        iVar15 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iVar15 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47ec;\n      }\n      if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4) == 0) {\n        iStack_81f0 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iStack_81f0 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47e8;\n      }\n      pcStack_81ec = pcVar21;\n      uVar7 = dupprintf(*(int *)(pcStack_81e8 + -0x7fc8) + -0x46c0,iVar2,iVar24,iVar15);\n      FUN_00028a00(pcVar13,pcVar27,uVar7);\n      safefree(uVar7);\n      pcVar27 = *(char **)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4);\n      iVar2 = scp_source_setup(pcVar21);\n      if ((iVar2 == 0) && (1 < iVar4)) {\n        puVar18 = puVar23 + iVar4 + -1;\n        iVar24 = *(int *)(pcStack_81e8 + -0x7db0);\n        iVar25 = *(int *)(pcStack_81e8 + -0x7fc8);\n        iVar15 = *(int *)(pcStack_81e8 + -0x7db0);\n        iVar4 = *(int *)(pcStack_81e8 + -0x7fc8);\n        do {\n          pcVar13 = (char *)*puVar23;\n          iVar2 = FUN_00028968(pcVar13);\n          if (iVar2 == 0) {\n            pcVar27 = (char *)0x1;\n            iVar2 = (**(code **)(pcStack_81e8 + -0x7c30))(pcVar13,1,pcVar13);\n            if (iVar2 == 0) {\n              (*(code *)(iVar15 + -0x59a8))(iVar25 + -0x4688);\n              pcVar27 = pcVar13;\n            }\n            else if (iVar2 == 1) {\n              (*(code *)(iVar24 + -0x4b8c))(pcVar13);\n            }\n            else {\n              iVar2 = (**(code **)(pcStack_81e8 + -0x7c2c))();\n              if (iVar2 == 0) {\n                (*(code *)(iVar15 + -0x59a8))(iVar25 + -0x4688);\n                pcVar27 = pcVar13;\n              }\n              else {\n                while (iVar26 = (**(code **)(pcStack_81e8 + -0x7c28))(iVar2), iVar26 != 0) {\n                  (*(code *)(iVar24 + -0x4b8c))(iVar26);\n                  safefree(iVar26);\n                }\n                (**(code **)(pcStack_81e8 + -0x7c24))(iVar2);\n              }\n            }\n          }\n          else {\n            pcVar27 = (char *)(iVar4 + -0x46ac);\n            FUN_00027ff8(**(undefined4 **)(pcStack_81e8 + -0x7460));\n            *(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31e0) =\n                 *(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31e0) + 1;\n          }\n          puVar23 = puVar23 + 1;\n          iVar2 = *(int *)(pcStack_81e8 + -0x7fd8);\n        } while (puVar18 != puVar23);\n        goto LAB_0002e788;\n      }\n    }" if (parenthesized_expression "(iVar4 < 2)" ( (binary_expression "iVar4 < 2" identifier < number_literal) )) (compound_statement "{\n      FUN_0002861c();\n      puVar18 = puVar23 + iVar4 + 0x3fffffff;\n      iVar24 = FUN_00028968(*puVar18);\n      iVar2 = *(int *)(pcStack_81e8 + -0x7fd8);\n      if (iVar24 != 0) goto LAB_0002e90c;\n      *(undefined4 *)(iVar2 + -0x31f0) = 0;\nLAB_0002efd8:\n      iVar2 = *(int *)(pcStack_81e8 + -0x7fc8);\nLAB_0002efdc:\n      FUN_00028270(iVar2 + -0x4668);\n      pcVar13 = (char *)*puVar23;\nLAB_0002eb34:\n      uVar7 = puVar23[1];\n      puVar9 = (undefined1 *)FUN_00028968(pcVar13);\n      if (puVar9 == (undefined1 *)0x0) {\n        FUN_00028270(*(int *)(pcStack_81e8 + -0x7fc8) + -0x463c);\n        uRam00000000 = 0;\n      }\n      else {\n        *puVar9 = 0;\n      }\n      if (puVar9[1] == '\0') {\n        pcVar27 = (char *)(*(int *)(pcStack_81e8 + -0x7fc8) + -0x48b0);\n      }\n      else {\n        pcVar27 = puVar9 + 1;\n      }\n      puVar9 = (undefined1 *)(**(code **)(pcStack_81e8 + -0x75b8))(pcVar13,0x40);\n      if (puVar9 == (undefined1 *)0x0) {\n        pcVar21 = (char *)0x0;\n      }\n      else {\n        *puVar9 = 0;\n        cVar11 = *pcVar13;\n        pcVar21 = pcVar13;\n        pcVar13 = puVar9 + 1;\n        if (cVar11 == '\0') {\n          pcVar21 = (char *)0x0;\n        }\n      }\n      if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31c8) == 0) {\n        iVar2 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iVar2 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47f4;\n      }\n      if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31cc) == 0) {\n        iVar24 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iVar24 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47f0;\n      }\n      if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d0) == 0) {\n        iVar4 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iVar4 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47ec;\n      }\n      if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4) == 0) {\n        iStack_81f0 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iStack_81f0 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47e8;\n      }\n      pcStack_81ec = pcVar27;\n      uVar6 = dupprintf(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4618,iVar2,iVar24,iVar4);\n      FUN_00028a00(pcVar13,pcVar21,uVar6);\n      safefree(uVar6);\n      iVar2 = scp_sink_setup(pcVar27,*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d0),\n                             *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31cc));\n      if (iVar2 == 0) {\n        FUN_0002d4e0(uVar7);\n        iVar2 = *(int *)(pcStack_81e8 + -0x7fd8);\n        goto LAB_0002e788;\n      }\n    }" { (expression_statement "FUN_0002861c();" (call_expression "FUN_0002861c()" identifier (argument_list "()" ( ))) ;) (expression_statement "puVar18 = puVar23 + iVar4 + 0x3fffffff;" (assignment_expression "puVar18 = puVar23 + iVar4 + 0x3fffffff" identifier = (binary_expression "puVar23 + iVar4 + 0x3fffffff" (binary_expression "puVar23 + iVar4" identifier + identifier) + number_literal)) ;) (expression_statement "iVar24 = FUN_00028968(*puVar18);" (assignment_expression "iVar24 = FUN_00028968(*puVar18)" identifier = (call_expression "FUN_00028968(*puVar18)" identifier (argument_list "(*puVar18)" ( (pointer_expression "*puVar18" * identifier) )))) ;) (expression_statement "iVar2 = *(int *)(pcStack_81e8 + -0x7fd8);" (assignment_expression "iVar2 = *(int *)(pcStack_81e8 + -0x7fd8)" identifier = (pointer_expression "*(int *)(pcStack_81e8 + -0x7fd8)" * (cast_expression "(int *)(pcStack_81e8 + -0x7fd8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_81e8 + -0x7fd8)" ( (binary_expression "pcStack_81e8 + -0x7fd8" identifier + number_literal) ))))) ;) (if_statement "if (iVar24 != 0) goto LAB_0002e90c;" if (parenthesized_expression "(iVar24 != 0)" ( (binary_expression "iVar24 != 0" identifier != number_literal) )) (goto_statement "goto LAB_0002e90c;" goto statement_identifier ;)) (expression_statement "*(undefined4 *)(iVar2 + -0x31f0) = 0;" (assignment_expression "*(undefined4 *)(iVar2 + -0x31f0) = 0" (pointer_expression "*(undefined4 *)(iVar2 + -0x31f0)" * (cast_expression "(undefined4 *)(iVar2 + -0x31f0)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + -0x31f0)" ( (binary_expression "iVar2 + -0x31f0" identifier + number_literal) )))) = number_literal) ;) (labeled_statement "LAB_0002efd8:\n      iVar2 = *(int *)(pcStack_81e8 + -0x7fc8);" statement_identifier : (expression_statement "iVar2 = *(int *)(pcStack_81e8 + -0x7fc8);" (assignment_expression "iVar2 = *(int *)(pcStack_81e8 + -0x7fc8)" identifier = (pointer_expression "*(int *)(pcStack_81e8 + -0x7fc8)" * (cast_expression "(int *)(pcStack_81e8 + -0x7fc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_81e8 + -0x7fc8)" ( (binary_expression "pcStack_81e8 + -0x7fc8" identifier + number_literal) ))))) ;)) (labeled_statement "LAB_0002efdc:\n      FUN_00028270(iVar2 + -0x4668);" statement_identifier : (expression_statement "FUN_00028270(iVar2 + -0x4668);" (call_expression "FUN_00028270(iVar2 + -0x4668)" identifier (argument_list "(iVar2 + -0x4668)" ( (binary_expression "iVar2 + -0x4668" identifier + number_literal) ))) ;)) (expression_statement "pcVar13 = (char *)*puVar23;" (assignment_expression "pcVar13 = (char *)*puVar23" identifier = (cast_expression "(char *)*puVar23" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "*puVar23" * identifier))) ;) (labeled_statement "LAB_0002eb34:\n      uVar7 = puVar23[1];" statement_identifier : (expression_statement "uVar7 = puVar23[1];" (assignment_expression "uVar7 = puVar23[1]" identifier = (subscript_expression "puVar23[1]" identifier [ number_literal ])) ;)) (expression_statement "puVar9 = (undefined1 *)FUN_00028968(pcVar13);" (assignment_expression "puVar9 = (undefined1 *)FUN_00028968(pcVar13)" identifier = (cast_expression "(undefined1 *)FUN_00028968(pcVar13)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_00028968(pcVar13)" identifier (argument_list "(pcVar13)" ( identifier ))))) ;) (if_statement "if (puVar9 == (undefined1 *)0x0) {\n        FUN_00028270(*(int *)(pcStack_81e8 + -0x7fc8) + -0x463c);\n        uRam00000000 = 0;\n      }\n      else {\n        *puVar9 = 0;\n      }" if (parenthesized_expression "(puVar9 == (undefined1 *)0x0)" ( (binary_expression "puVar9 == (undefined1 *)0x0" identifier == (cast_expression "(undefined1 *)0x0" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n        FUN_00028270(*(int *)(pcStack_81e8 + -0x7fc8) + -0x463c);\n        uRam00000000 = 0;\n      }" { (expression_statement "FUN_00028270(*(int *)(pcStack_81e8 + -0x7fc8) + -0x463c);" (call_expression "FUN_00028270(*(int *)(pcStack_81e8 + -0x7fc8) + -0x463c)" identifier (argument_list "(*(int *)(pcStack_81e8 + -0x7fc8) + -0x463c)" ( (binary_expression "*(int *)(pcStack_81e8 + -0x7fc8) + -0x463c" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fc8)" * (cast_expression "(int *)(pcStack_81e8 + -0x7fc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_81e8 + -0x7fc8)" ( (binary_expression "pcStack_81e8 + -0x7fc8" identifier + number_literal) )))) + number_literal) ))) ;) (expression_statement "uRam00000000 = 0;" (assignment_expression "uRam00000000 = 0" identifier = number_literal) ;) }) (else_clause "else {\n        *puVar9 = 0;\n      }" else (compound_statement "{\n        *puVar9 = 0;\n      }" { (expression_statement "*puVar9 = 0;" (assignment_expression "*puVar9 = 0" (pointer_expression "*puVar9" * identifier) = number_literal) ;) }))) (if_statement "if (puVar9[1] == '\0') {\n        pcVar27 = (char *)(*(int *)(pcStack_81e8 + -0x7fc8) + -0x48b0);\n      }\n      else {\n        pcVar27 = puVar9 + 1;\n      }" if (parenthesized_expression "(puVar9[1] == '\0')" ( (binary_expression "puVar9[1] == '\0'" (subscript_expression "puVar9[1]" identifier [ number_literal ]) == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n        pcVar27 = (char *)(*(int *)(pcStack_81e8 + -0x7fc8) + -0x48b0);\n      }" { (expression_statement "pcVar27 = (char *)(*(int *)(pcStack_81e8 + -0x7fc8) + -0x48b0);" (assignment_expression "pcVar27 = (char *)(*(int *)(pcStack_81e8 + -0x7fc8) + -0x48b0)" identifier = (cast_expression "(char *)(*(int *)(pcStack_81e8 + -0x7fc8) + -0x48b0)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcStack_81e8 + -0x7fc8) + -0x48b0)" ( (binary_expression "*(int *)(pcStack_81e8 + -0x7fc8) + -0x48b0" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fc8)" * (cast_expression "(int *)(pcStack_81e8 + -0x7fc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_81e8 + -0x7fc8)" ( (binary_expression "pcStack_81e8 + -0x7fc8" identifier + number_literal) )))) + number_literal) )))) ;) }) (else_clause "else {\n        pcVar27 = puVar9 + 1;\n      }" else (compound_statement "{\n        pcVar27 = puVar9 + 1;\n      }" { (expression_statement "pcVar27 = puVar9 + 1;" (assignment_expression "pcVar27 = puVar9 + 1" identifier = (binary_expression "puVar9 + 1" identifier + number_literal)) ;) }))) (expression_statement "puVar9 = (undefined1 *)(**(code **)(pcStack_81e8 + -0x75b8))(pcVar13,0x40);" (assignment_expression "puVar9 = (undefined1 *)(**(code **)(pcStack_81e8 + -0x75b8))(pcVar13,0x40)" identifier = (cast_expression "(undefined1 *)(**(code **)(pcStack_81e8 + -0x75b8))(pcVar13,0x40)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(**(code **)(pcStack_81e8 + -0x75b8))(pcVar13,0x40)" (parenthesized_expression "(**(code **)(pcStack_81e8 + -0x75b8))" ( (pointer_expression "**(code **)(pcStack_81e8 + -0x75b8)" * (pointer_expression "*(code **)(pcStack_81e8 + -0x75b8)" * (cast_expression "(code **)(pcStack_81e8 + -0x75b8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_81e8 + -0x75b8)" ( (binary_expression "pcStack_81e8 + -0x75b8" identifier + number_literal) ))))) )) (argument_list "(pcVar13,0x40)" ( identifier , number_literal ))))) ;) (if_statement "if (puVar9 == (undefined1 *)0x0) {\n        pcVar21 = (char *)0x0;\n      }\n      else {\n        *puVar9 = 0;\n        cVar11 = *pcVar13;\n        pcVar21 = pcVar13;\n        pcVar13 = puVar9 + 1;\n        if (cVar11 == '\0') {\n          pcVar21 = (char *)0x0;\n        }\n      }" if (parenthesized_expression "(puVar9 == (undefined1 *)0x0)" ( (binary_expression "puVar9 == (undefined1 *)0x0" identifier == (cast_expression "(undefined1 *)0x0" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n        pcVar21 = (char *)0x0;\n      }" { (expression_statement "pcVar21 = (char *)0x0;" (assignment_expression "pcVar21 = (char *)0x0" identifier = (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) }) (else_clause "else {\n        *puVar9 = 0;\n        cVar11 = *pcVar13;\n        pcVar21 = pcVar13;\n        pcVar13 = puVar9 + 1;\n        if (cVar11 == '\0') {\n          pcVar21 = (char *)0x0;\n        }\n      }" else (compound_statement "{\n        *puVar9 = 0;\n        cVar11 = *pcVar13;\n        pcVar21 = pcVar13;\n        pcVar13 = puVar9 + 1;\n        if (cVar11 == '\0') {\n          pcVar21 = (char *)0x0;\n        }\n      }" { (expression_statement "*puVar9 = 0;" (assignment_expression "*puVar9 = 0" (pointer_expression "*puVar9" * identifier) = number_literal) ;) (expression_statement "cVar11 = *pcVar13;" (assignment_expression "cVar11 = *pcVar13" identifier = (pointer_expression "*pcVar13" * identifier)) ;) (expression_statement "pcVar21 = pcVar13;" (assignment_expression "pcVar21 = pcVar13" identifier = identifier) ;) (expression_statement "pcVar13 = puVar9 + 1;" (assignment_expression "pcVar13 = puVar9 + 1" identifier = (binary_expression "puVar9 + 1" identifier + number_literal)) ;) (if_statement "if (cVar11 == '\0') {\n          pcVar21 = (char *)0x0;\n        }" if (parenthesized_expression "(cVar11 == '\0')" ( (binary_expression "cVar11 == '\0'" identifier == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n          pcVar21 = (char *)0x0;\n        }" { (expression_statement "pcVar21 = (char *)0x0;" (assignment_expression "pcVar21 = (char *)0x0" identifier = (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) })) }))) (if_statement "if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31c8) == 0) {\n        iVar2 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iVar2 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47f4;\n      }" if (parenthesized_expression "(*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31c8) == 0)" ( (binary_expression "*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31c8) == 0" (pointer_expression "*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31c8)" * (cast_expression "(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31c8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31c8)" ( (binary_expression "*(int *)(pcStack_81e8 + -0x7fd8) + -0x31c8" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fd8)" * (cast_expression "(int *)(pcStack_81e8 + -0x7fd8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_81e8 + -0x7fd8)" ( (binary_expression "pcStack_81e8 + -0x7fd8" identifier + number_literal) )))) + number_literal) )))) == number_literal) )) (compound_statement "{\n        iVar2 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }" { (expression_statement "iVar2 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;" (assignment_expression "iVar2 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc" identifier = (binary_expression "*(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fc8)" * (cast_expression "(int *)(pcStack_81e8 + -0x7fc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_81e8 + -0x7fc8)" ( (binary_expression "pcStack_81e8 + -0x7fc8" identifier + number_literal) )))) + number_literal)) ;) }) (else_clause "else {\n        iVar2 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47f4;\n      }" else (compound_statement "{\n        iVar2 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47f4;\n      }" { (expression_statement "iVar2 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47f4;" (assignment_expression "iVar2 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47f4" identifier = (binary_expression "*(int *)(pcStack_81e8 + -0x7fc8) + -0x47f4" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fc8)" * (cast_expression "(int *)(pcStack_81e8 + -0x7fc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_81e8 + -0x7fc8)" ( (binary_expression "pcStack_81e8 + -0x7fc8" identifier + number_literal) )))) + number_literal)) ;) }))) (if_statement "if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31cc) == 0) {\n        iVar24 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iVar24 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47f0;\n      }" if (parenthesized_expression "(*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31cc) == 0)" ( (binary_expression "*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31cc) == 0" (pointer_expression "*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31cc)" * (cast_expression "(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31cc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31cc)" ( (binary_expression "*(int *)(pcStack_81e8 + -0x7fd8) + -0x31cc" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fd8)" * (cast_expression "(int *)(pcStack_81e8 + -0x7fd8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_81e8 + -0x7fd8)" ( (binary_expression "pcStack_81e8 + -0x7fd8" identifier + number_literal) )))) + number_literal) )))) == number_literal) )) (compound_statement "{\n        iVar24 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }" { (expression_statement "iVar24 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;" (assignment_expression "iVar24 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc" identifier = (binary_expression "*(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fc8)" * (cast_expression "(int *)(pcStack_81e8 + -0x7fc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_81e8 + -0x7fc8)" ( (binary_expression "pcStack_81e8 + -0x7fc8" identifier + number_literal) )))) + number_literal)) ;) }) (else_clause "else {\n        iVar24 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47f0;\n      }" else (compound_statement "{\n        iVar24 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47f0;\n      }" { (expression_statement "iVar24 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47f0;" (assignment_expression "iVar24 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47f0" identifier = (binary_expression "*(int *)(pcStack_81e8 + -0x7fc8) + -0x47f0" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fc8)" * (cast_expression "(int *)(pcStack_81e8 + -0x7fc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_81e8 + -0x7fc8)" ( (binary_expression "pcStack_81e8 + -0x7fc8" identifier + number_literal) )))) + number_literal)) ;) }))) (if_statement "if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d0) == 0) {\n        iVar4 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iVar4 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47ec;\n      }" if (parenthesized_expression "(*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d0) == 0)" ( (binary_expression "*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d0) == 0" (pointer_expression "*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d0)" * (cast_expression "(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d0)" ( (binary_expression "*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d0" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fd8)" * (cast_expression "(int *)(pcStack_81e8 + -0x7fd8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_81e8 + -0x7fd8)" ( (binary_expression "pcStack_81e8 + -0x7fd8" identifier + number_literal) )))) + number_literal) )))) == number_literal) )) (compound_statement "{\n        iVar4 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }" { (expression_statement "iVar4 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;" (assignment_expression "iVar4 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc" identifier = (binary_expression "*(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fc8)" * (cast_expression "(int *)(pcStack_81e8 + -0x7fc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_81e8 + -0x7fc8)" ( (binary_expression "pcStack_81e8 + -0x7fc8" identifier + number_literal) )))) + number_literal)) ;) }) (else_clause "else {\n        iVar4 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47ec;\n      }" else (compound_statement "{\n        iVar4 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47ec;\n      }" { (expression_statement "iVar4 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47ec;" (assignment_expression "iVar4 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47ec" identifier = (binary_expression "*(int *)(pcStack_81e8 + -0x7fc8) + -0x47ec" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fc8)" * (cast_expression "(int *)(pcStack_81e8 + -0x7fc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_81e8 + -0x7fc8)" ( (binary_expression "pcStack_81e8 + -0x7fc8" identifier + number_literal) )))) + number_literal)) ;) }))) (if_statement "if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4) == 0) {\n        iStack_81f0 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iStack_81f0 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47e8;\n      }" if (parenthesized_expression "(*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4) == 0)" ( (binary_expression "*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4) == 0" (pointer_expression "*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4)" * (cast_expression "(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4)" ( (binary_expression "*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fd8)" * (cast_expression "(int *)(pcStack_81e8 + -0x7fd8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_81e8 + -0x7fd8)" ( (binary_expression "pcStack_81e8 + -0x7fd8" identifier + number_literal) )))) + number_literal) )))) == number_literal) )) (compound_statement "{\n        iStack_81f0 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }" { (expression_statement "iStack_81f0 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;" (assignment_expression "iStack_81f0 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc" identifier = (binary_expression "*(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fc8)" * (cast_expression "(int *)(pcStack_81e8 + -0x7fc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_81e8 + -0x7fc8)" ( (binary_expression "pcStack_81e8 + -0x7fc8" identifier + number_literal) )))) + number_literal)) ;) }) (else_clause "else {\n        iStack_81f0 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47e8;\n      }" else (compound_statement "{\n        iStack_81f0 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47e8;\n      }" { (expression_statement "iStack_81f0 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47e8;" (assignment_expression "iStack_81f0 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47e8" identifier = (binary_expression "*(int *)(pcStack_81e8 + -0x7fc8) + -0x47e8" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fc8)" * (cast_expression "(int *)(pcStack_81e8 + -0x7fc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_81e8 + -0x7fc8)" ( (binary_expression "pcStack_81e8 + -0x7fc8" identifier + number_literal) )))) + number_literal)) ;) }))) (expression_statement "pcStack_81ec = pcVar27;" (assignment_expression "pcStack_81ec = pcVar27" identifier = identifier) ;) (expression_statement "uVar6 = dupprintf(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4618,iVar2,iVar24,iVar4);" (assignment_expression "uVar6 = dupprintf(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4618,iVar2,iVar24,iVar4)" identifier = (call_expression "dupprintf(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4618,iVar2,iVar24,iVar4)" identifier (argument_list "(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4618,iVar2,iVar24,iVar4)" ( (binary_expression "*(int *)(pcStack_81e8 + -0x7fc8) + -0x4618" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fc8)" * (cast_expression "(int *)(pcStack_81e8 + -0x7fc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_81e8 + -0x7fc8)" ( (binary_expression "pcStack_81e8 + -0x7fc8" identifier + number_literal) )))) + number_literal) , identifier , identifier , identifier )))) ;) (expression_statement "FUN_00028a00(pcVar13,pcVar21,uVar6);" (call_expression "FUN_00028a00(pcVar13,pcVar21,uVar6)" identifier (argument_list "(pcVar13,pcVar21,uVar6)" ( identifier , identifier , identifier ))) ;) (expression_statement "safefree(uVar6);" (call_expression "safefree(uVar6)" identifier (argument_list "(uVar6)" ( identifier ))) ;) (expression_statement "iVar2 = scp_sink_setup(pcVar27,*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d0),\n                             *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31cc));" (assignment_expression "iVar2 = scp_sink_setup(pcVar27,*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d0),\n                             *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31cc))" identifier = (call_expression "scp_sink_setup(pcVar27,*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d0),\n                             *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31cc))" identifier (argument_list "(pcVar27,*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d0),\n                             *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31cc))" ( identifier , (pointer_expression "*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d0)" * (cast_expression "(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d0)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d0)" ( (binary_expression "*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d0" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fd8)" * (cast_expression "(int *)(pcStack_81e8 + -0x7fd8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_81e8 + -0x7fd8)" ( (binary_expression "pcStack_81e8 + -0x7fd8" identifier + number_literal) )))) + number_literal) )))) , (pointer_expression "*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31cc)" * (cast_expression "(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31cc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31cc)" ( (binary_expression "*(int *)(pcStack_81e8 + -0x7fd8) + -0x31cc" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fd8)" * (cast_expression "(int *)(pcStack_81e8 + -0x7fd8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_81e8 + -0x7fd8)" ( (binary_expression "pcStack_81e8 + -0x7fd8" identifier + number_literal) )))) + number_literal) )))) )))) ;) (if_statement "if (iVar2 == 0) {\n        FUN_0002d4e0(uVar7);\n        iVar2 = *(int *)(pcStack_81e8 + -0x7fd8);\n        goto LAB_0002e788;\n      }" if (parenthesized_expression "(iVar2 == 0)" ( (binary_expression "iVar2 == 0" identifier == number_literal) )) (compound_statement "{\n        FUN_0002d4e0(uVar7);\n        iVar2 = *(int *)(pcStack_81e8 + -0x7fd8);\n        goto LAB_0002e788;\n      }" { (expression_statement "FUN_0002d4e0(uVar7);" (call_expression "FUN_0002d4e0(uVar7)" identifier (argument_list "(uVar7)" ( identifier ))) ;) (expression_statement "iVar2 = *(int *)(pcStack_81e8 + -0x7fd8);" (assignment_expression "iVar2 = *(int *)(pcStack_81e8 + -0x7fd8)" identifier = (pointer_expression "*(int *)(pcStack_81e8 + -0x7fd8)" * (cast_expression "(int *)(pcStack_81e8 + -0x7fd8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_81e8 + -0x7fd8)" ( (binary_expression "pcStack_81e8 + -0x7fd8" identifier + number_literal) ))))) ;) (goto_statement "goto LAB_0002e788;" goto statement_identifier ;) })) }) (else_clause "else {\n      if (iVar4 < 3) {\n        puVar18 = puVar23 + iVar4 + 0x3fffffff;\n        iVar2 = FUN_00028968(*puVar18);\n        if (iVar2 == 0) {\n          *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f0) = 0;\n          iVar2 = *(int *)(pcStack_81e8 + -0x7fc8);\n          if (iVar4 != 2) goto LAB_0002efdc;\n          pcVar13 = (char *)*puVar23;\n          goto LAB_0002eb34;\n        }\n      }\n      else {\n        *(undefined4 *)(*(int *)(pcVar28 + -0x7fd8) + -0x31d4) = 1;\n        puVar18 = puVar23 + iVar4 + 0x3fffffff;\n        iVar2 = FUN_00028968(*puVar18);\n        if (iVar2 == 0) {\n          *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f0) = 0;\n          goto LAB_0002efd8;\n        }\n      }\n      iVar2 = *(int *)(pcStack_81e8 + -0x7fd8);\nLAB_0002e90c:\n      *(undefined4 *)(iVar2 + -0x31f0) = 1;\n      pcVar13 = (char *)*puVar18;\n      puVar9 = (undefined1 *)FUN_00028968(pcVar13);\n      if (puVar9 == (undefined1 *)0x0) {\n        FUN_00028270(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4720);\n        uRam00000000 = 0;\n      }\n      else {\n        *puVar9 = 0;\n      }\n      if (puVar9[1] == '\0') {\n        pcVar21 = (char *)(*(int *)(pcStack_81e8 + -0x7fc8) + -0x48b0);\n      }\n      else {\n        pcVar21 = puVar9 + 1;\n      }\n      puVar9 = (undefined1 *)(**(code **)(pcStack_81e8 + -0x75b8))(pcVar13,0x40);\n      if (puVar9 == (undefined1 *)0x0) {\n        pcVar27 = (char *)0x0;\n      }\n      else {\n        *puVar9 = 0;\n        cVar11 = *pcVar13;\n        pcVar27 = pcVar13;\n        pcVar13 = puVar9 + 1;\n        if (cVar11 == '\0') {\n          pcVar27 = (char *)0x0;\n        }\n      }\n      if (iVar4 == 2) {\n        iVar2 = FUN_00028968(*puVar23);\n        if (iVar2 != 0) {\n          FUN_00028270(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4704,*puVar23);\n        }\n        iVar2 = (**(code **)(pcStack_81e8 + -0x7c30))(*puVar23,1);\n        if (iVar2 == 0) {\n          FUN_00028270(*(int *)(pcStack_81e8 + -0x7fc8) + -0x46e0,*puVar23);\n          iVar24 = *(int *)(pcStack_81e8 + -0x7fd8);\n        }\n        else {\n          iVar24 = *(int *)(pcStack_81e8 + -0x7fd8);\n          if (iVar2 == 2) {\n            *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4) = 1;\n            goto LAB_0002e988;\n          }\n        }\n      }\n      else {\nLAB_0002e988:\n        iVar24 = *(int *)(pcStack_81e8 + -0x7fd8);\n      }\n      if (*(int *)(iVar24 + -0x31c8) == 0) {\n        iVar2 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iVar2 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47f4;\n      }\n      if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31cc) == 0) {\n        iVar24 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iVar24 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47f0;\n      }\n      if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d0) == 0) {\n        iVar15 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iVar15 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47ec;\n      }\n      if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4) == 0) {\n        iStack_81f0 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iStack_81f0 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47e8;\n      }\n      pcStack_81ec = pcVar21;\n      uVar7 = dupprintf(*(int *)(pcStack_81e8 + -0x7fc8) + -0x46c0,iVar2,iVar24,iVar15);\n      FUN_00028a00(pcVar13,pcVar27,uVar7);\n      safefree(uVar7);\n      pcVar27 = *(char **)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4);\n      iVar2 = scp_source_setup(pcVar21);\n      if ((iVar2 == 0) && (1 < iVar4)) {\n        puVar18 = puVar23 + iVar4 + -1;\n        iVar24 = *(int *)(pcStack_81e8 + -0x7db0);\n        iVar25 = *(int *)(pcStack_81e8 + -0x7fc8);\n        iVar15 = *(int *)(pcStack_81e8 + -0x7db0);\n        iVar4 = *(int *)(pcStack_81e8 + -0x7fc8);\n        do {\n          pcVar13 = (char *)*puVar23;\n          iVar2 = FUN_00028968(pcVar13);\n          if (iVar2 == 0) {\n            pcVar27 = (char *)0x1;\n            iVar2 = (**(code **)(pcStack_81e8 + -0x7c30))(pcVar13,1,pcVar13);\n            if (iVar2 == 0) {\n              (*(code *)(iVar15 + -0x59a8))(iVar25 + -0x4688);\n              pcVar27 = pcVar13;\n            }\n            else if (iVar2 == 1) {\n              (*(code *)(iVar24 + -0x4b8c))(pcVar13);\n            }\n            else {\n              iVar2 = (**(code **)(pcStack_81e8 + -0x7c2c))();\n              if (iVar2 == 0) {\n                (*(code *)(iVar15 + -0x59a8))(iVar25 + -0x4688);\n                pcVar27 = pcVar13;\n              }\n              else {\n                while (iVar26 = (**(code **)(pcStack_81e8 + -0x7c28))(iVar2), iVar26 != 0) {\n                  (*(code *)(iVar24 + -0x4b8c))(iVar26);\n                  safefree(iVar26);\n                }\n                (**(code **)(pcStack_81e8 + -0x7c24))(iVar2);\n              }\n            }\n          }\n          else {\n            pcVar27 = (char *)(iVar4 + -0x46ac);\n            FUN_00027ff8(**(undefined4 **)(pcStack_81e8 + -0x7460));\n            *(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31e0) =\n                 *(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31e0) + 1;\n          }\n          puVar23 = puVar23 + 1;\n          iVar2 = *(int *)(pcStack_81e8 + -0x7fd8);\n        } while (puVar18 != puVar23);\n        goto LAB_0002e788;\n      }\n    }" else (compound_statement "{\n      if (iVar4 < 3) {\n        puVar18 = puVar23 + iVar4 + 0x3fffffff;\n        iVar2 = FUN_00028968(*puVar18);\n        if (iVar2 == 0) {\n          *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f0) = 0;\n          iVar2 = *(int *)(pcStack_81e8 + -0x7fc8);\n          if (iVar4 != 2) goto LAB_0002efdc;\n          pcVar13 = (char *)*puVar23;\n          goto LAB_0002eb34;\n        }\n      }\n      else {\n        *(undefined4 *)(*(int *)(pcVar28 + -0x7fd8) + -0x31d4) = 1;\n        puVar18 = puVar23 + iVar4 + 0x3fffffff;\n        iVar2 = FUN_00028968(*puVar18);\n        if (iVar2 == 0) {\n          *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f0) = 0;\n          goto LAB_0002efd8;\n        }\n      }\n      iVar2 = *(int *)(pcStack_81e8 + -0x7fd8);\nLAB_0002e90c:\n      *(undefined4 *)(iVar2 + -0x31f0) = 1;\n      pcVar13 = (char *)*puVar18;\n      puVar9 = (undefined1 *)FUN_00028968(pcVar13);\n      if (puVar9 == (undefined1 *)0x0) {\n        FUN_00028270(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4720);\n        uRam00000000 = 0;\n      }\n      else {\n        *puVar9 = 0;\n      }\n      if (puVar9[1] == '\0') {\n        pcVar21 = (char *)(*(int *)(pcStack_81e8 + -0x7fc8) + -0x48b0);\n      }\n      else {\n        pcVar21 = puVar9 + 1;\n      }\n      puVar9 = (undefined1 *)(**(code **)(pcStack_81e8 + -0x75b8))(pcVar13,0x40);\n      if (puVar9 == (undefined1 *)0x0) {\n        pcVar27 = (char *)0x0;\n      }\n      else {\n        *puVar9 = 0;\n        cVar11 = *pcVar13;\n        pcVar27 = pcVar13;\n        pcVar13 = puVar9 + 1;\n        if (cVar11 == '\0') {\n          pcVar27 = (char *)0x0;\n        }\n      }\n      if (iVar4 == 2) {\n        iVar2 = FUN_00028968(*puVar23);\n        if (iVar2 != 0) {\n          FUN_00028270(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4704,*puVar23);\n        }\n        iVar2 = (**(code **)(pcStack_81e8 + -0x7c30))(*puVar23,1);\n        if (iVar2 == 0) {\n          FUN_00028270(*(int *)(pcStack_81e8 + -0x7fc8) + -0x46e0,*puVar23);\n          iVar24 = *(int *)(pcStack_81e8 + -0x7fd8);\n        }\n        else {\n          iVar24 = *(int *)(pcStack_81e8 + -0x7fd8);\n          if (iVar2 == 2) {\n            *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4) = 1;\n            goto LAB_0002e988;\n          }\n        }\n      }\n      else {\nLAB_0002e988:\n        iVar24 = *(int *)(pcStack_81e8 + -0x7fd8);\n      }\n      if (*(int *)(iVar24 + -0x31c8) == 0) {\n        iVar2 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iVar2 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47f4;\n      }\n      if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31cc) == 0) {\n        iVar24 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iVar24 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47f0;\n      }\n      if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d0) == 0) {\n        iVar15 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iVar15 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47ec;\n      }\n      if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4) == 0) {\n        iStack_81f0 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iStack_81f0 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47e8;\n      }\n      pcStack_81ec = pcVar21;\n      uVar7 = dupprintf(*(int *)(pcStack_81e8 + -0x7fc8) + -0x46c0,iVar2,iVar24,iVar15);\n      FUN_00028a00(pcVar13,pcVar27,uVar7);\n      safefree(uVar7);\n      pcVar27 = *(char **)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4);\n      iVar2 = scp_source_setup(pcVar21);\n      if ((iVar2 == 0) && (1 < iVar4)) {\n        puVar18 = puVar23 + iVar4 + -1;\n        iVar24 = *(int *)(pcStack_81e8 + -0x7db0);\n        iVar25 = *(int *)(pcStack_81e8 + -0x7fc8);\n        iVar15 = *(int *)(pcStack_81e8 + -0x7db0);\n        iVar4 = *(int *)(pcStack_81e8 + -0x7fc8);\n        do {\n          pcVar13 = (char *)*puVar23;\n          iVar2 = FUN_00028968(pcVar13);\n          if (iVar2 == 0) {\n            pcVar27 = (char *)0x1;\n            iVar2 = (**(code **)(pcStack_81e8 + -0x7c30))(pcVar13,1,pcVar13);\n            if (iVar2 == 0) {\n              (*(code *)(iVar15 + -0x59a8))(iVar25 + -0x4688);\n              pcVar27 = pcVar13;\n            }\n            else if (iVar2 == 1) {\n              (*(code *)(iVar24 + -0x4b8c))(pcVar13);\n            }\n            else {\n              iVar2 = (**(code **)(pcStack_81e8 + -0x7c2c))();\n              if (iVar2 == 0) {\n                (*(code *)(iVar15 + -0x59a8))(iVar25 + -0x4688);\n                pcVar27 = pcVar13;\n              }\n              else {\n                while (iVar26 = (**(code **)(pcStack_81e8 + -0x7c28))(iVar2), iVar26 != 0) {\n                  (*(code *)(iVar24 + -0x4b8c))(iVar26);\n                  safefree(iVar26);\n                }\n                (**(code **)(pcStack_81e8 + -0x7c24))(iVar2);\n              }\n            }\n          }\n          else {\n            pcVar27 = (char *)(iVar4 + -0x46ac);\n            FUN_00027ff8(**(undefined4 **)(pcStack_81e8 + -0x7460));\n            *(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31e0) =\n                 *(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31e0) + 1;\n          }\n          puVar23 = puVar23 + 1;\n          iVar2 = *(int *)(pcStack_81e8 + -0x7fd8);\n        } while (puVar18 != puVar23);\n        goto LAB_0002e788;\n      }\n    }" { (if_statement "if (iVar4 < 3) {\n        puVar18 = puVar23 + iVar4 + 0x3fffffff;\n        iVar2 = FUN_00028968(*puVar18);\n        if (iVar2 == 0) {\n          *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f0) = 0;\n          iVar2 = *(int *)(pcStack_81e8 + -0x7fc8);\n          if (iVar4 != 2) goto LAB_0002efdc;\n          pcVar13 = (char *)*puVar23;\n          goto LAB_0002eb34;\n        }\n      }\n      else {\n        *(undefined4 *)(*(int *)(pcVar28 + -0x7fd8) + -0x31d4) = 1;\n        puVar18 = puVar23 + iVar4 + 0x3fffffff;\n        iVar2 = FUN_00028968(*puVar18);\n        if (iVar2 == 0) {\n          *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f0) = 0;\n          goto LAB_0002efd8;\n        }\n      }" if (parenthesized_expression "(iVar4 < 3)" ( (binary_expression "iVar4 < 3" identifier < number_literal) )) (compound_statement "{\n        puVar18 = puVar23 + iVar4 + 0x3fffffff;\n        iVar2 = FUN_00028968(*puVar18);\n        if (iVar2 == 0) {\n          *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f0) = 0;\n          iVar2 = *(int *)(pcStack_81e8 + -0x7fc8);\n          if (iVar4 != 2) goto LAB_0002efdc;\n          pcVar13 = (char *)*puVar23;\n          goto LAB_0002eb34;\n        }\n      }" { (expression_statement "puVar18 = puVar23 + iVar4 + 0x3fffffff;" (assignment_expression "puVar18 = puVar23 + iVar4 + 0x3fffffff" identifier = (binary_expression "puVar23 + iVar4 + 0x3fffffff" (binary_expression "puVar23 + iVar4" identifier + identifier) + number_literal)) ;) (expression_statement "iVar2 = FUN_00028968(*puVar18);" (assignment_expression "iVar2 = FUN_00028968(*puVar18)" identifier = (call_expression "FUN_00028968(*puVar18)" identifier (argument_list "(*puVar18)" ( (pointer_expression "*puVar18" * identifier) )))) ;) (if_statement "if (iVar2 == 0) {\n          *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f0) = 0;\n          iVar2 = *(int *)(pcStack_81e8 + -0x7fc8);\n          if (iVar4 != 2) goto LAB_0002efdc;\n          pcVar13 = (char *)*puVar23;\n          goto LAB_0002eb34;\n        }" if (parenthesized_expression "(iVar2 == 0)" ( (binary_expression "iVar2 == 0" identifier == number_literal) )) (compound_statement "{\n          *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f0) = 0;\n          iVar2 = *(int *)(pcStack_81e8 + -0x7fc8);\n          if (iVar4 != 2) goto LAB_0002efdc;\n          pcVar13 = (char *)*puVar23;\n          goto LAB_0002eb34;\n        }" { (expression_statement "*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f0) = 0;" (assignment_expression "*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f0) = 0" (pointer_expression "*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f0)" * (cast_expression "(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f0)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f0)" ( (binary_expression "*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f0" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fd8)" * (cast_expression "(int *)(pcStack_81e8 + -0x7fd8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_81e8 + -0x7fd8)" ( (binary_expression "pcStack_81e8 + -0x7fd8" identifier + number_literal) )))) + number_literal) )))) = number_literal) ;) (expression_statement "iVar2 = *(int *)(pcStack_81e8 + -0x7fc8);" (assignment_expression "iVar2 = *(int *)(pcStack_81e8 + -0x7fc8)" identifier = (pointer_expression "*(int *)(pcStack_81e8 + -0x7fc8)" * (cast_expression "(int *)(pcStack_81e8 + -0x7fc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_81e8 + -0x7fc8)" ( (binary_expression "pcStack_81e8 + -0x7fc8" identifier + number_literal) ))))) ;) (if_statement "if (iVar4 != 2) goto LAB_0002efdc;" if (parenthesized_expression "(iVar4 != 2)" ( (binary_expression "iVar4 != 2" identifier != number_literal) )) (goto_statement "goto LAB_0002efdc;" goto statement_identifier ;)) (expression_statement "pcVar13 = (char *)*puVar23;" (assignment_expression "pcVar13 = (char *)*puVar23" identifier = (cast_expression "(char *)*puVar23" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "*puVar23" * identifier))) ;) (goto_statement "goto LAB_0002eb34;" goto statement_identifier ;) })) }) (else_clause "else {\n        *(undefined4 *)(*(int *)(pcVar28 + -0x7fd8) + -0x31d4) = 1;\n        puVar18 = puVar23 + iVar4 + 0x3fffffff;\n        iVar2 = FUN_00028968(*puVar18);\n        if (iVar2 == 0) {\n          *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f0) = 0;\n          goto LAB_0002efd8;\n        }\n      }" else (compound_statement "{\n        *(undefined4 *)(*(int *)(pcVar28 + -0x7fd8) + -0x31d4) = 1;\n        puVar18 = puVar23 + iVar4 + 0x3fffffff;\n        iVar2 = FUN_00028968(*puVar18);\n        if (iVar2 == 0) {\n          *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f0) = 0;\n          goto LAB_0002efd8;\n        }\n      }" { (expression_statement "*(undefined4 *)(*(int *)(pcVar28 + -0x7fd8) + -0x31d4) = 1;" (assignment_expression "*(undefined4 *)(*(int *)(pcVar28 + -0x7fd8) + -0x31d4) = 1" (pointer_expression "*(undefined4 *)(*(int *)(pcVar28 + -0x7fd8) + -0x31d4)" * (cast_expression "(undefined4 *)(*(int *)(pcVar28 + -0x7fd8) + -0x31d4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar28 + -0x7fd8) + -0x31d4)" ( (binary_expression "*(int *)(pcVar28 + -0x7fd8) + -0x31d4" (pointer_expression "*(int *)(pcVar28 + -0x7fd8)" * (cast_expression "(int *)(pcVar28 + -0x7fd8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar28 + -0x7fd8)" ( (binary_expression "pcVar28 + -0x7fd8" identifier + number_literal) )))) + number_literal) )))) = number_literal) ;) (expression_statement "puVar18 = puVar23 + iVar4 + 0x3fffffff;" (assignment_expression "puVar18 = puVar23 + iVar4 + 0x3fffffff" identifier = (binary_expression "puVar23 + iVar4 + 0x3fffffff" (binary_expression "puVar23 + iVar4" identifier + identifier) + number_literal)) ;) (expression_statement "iVar2 = FUN_00028968(*puVar18);" (assignment_expression "iVar2 = FUN_00028968(*puVar18)" identifier = (call_expression "FUN_00028968(*puVar18)" identifier (argument_list "(*puVar18)" ( (pointer_expression "*puVar18" * identifier) )))) ;) (if_statement "if (iVar2 == 0) {\n          *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f0) = 0;\n          goto LAB_0002efd8;\n        }" if (parenthesized_expression "(iVar2 == 0)" ( (binary_expression "iVar2 == 0" identifier == number_literal) )) (compound_statement "{\n          *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f0) = 0;\n          goto LAB_0002efd8;\n        }" { (expression_statement "*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f0) = 0;" (assignment_expression "*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f0) = 0" (pointer_expression "*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f0)" * (cast_expression "(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f0)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f0)" ( (binary_expression "*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f0" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fd8)" * (cast_expression "(int *)(pcStack_81e8 + -0x7fd8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_81e8 + -0x7fd8)" ( (binary_expression "pcStack_81e8 + -0x7fd8" identifier + number_literal) )))) + number_literal) )))) = number_literal) ;) (goto_statement "goto LAB_0002efd8;" goto statement_identifier ;) })) }))) (expression_statement "iVar2 = *(int *)(pcStack_81e8 + -0x7fd8);" (assignment_expression "iVar2 = *(int *)(pcStack_81e8 + -0x7fd8)" identifier = (pointer_expression "*(int *)(pcStack_81e8 + -0x7fd8)" * (cast_expression "(int *)(pcStack_81e8 + -0x7fd8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_81e8 + -0x7fd8)" ( (binary_expression "pcStack_81e8 + -0x7fd8" identifier + number_literal) ))))) ;) (labeled_statement "LAB_0002e90c:\n      *(undefined4 *)(iVar2 + -0x31f0) = 1;" statement_identifier : (expression_statement "*(undefined4 *)(iVar2 + -0x31f0) = 1;" (assignment_expression "*(undefined4 *)(iVar2 + -0x31f0) = 1" (pointer_expression "*(undefined4 *)(iVar2 + -0x31f0)" * (cast_expression "(undefined4 *)(iVar2 + -0x31f0)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + -0x31f0)" ( (binary_expression "iVar2 + -0x31f0" identifier + number_literal) )))) = number_literal) ;)) (expression_statement "pcVar13 = (char *)*puVar18;" (assignment_expression "pcVar13 = (char *)*puVar18" identifier = (cast_expression "(char *)*puVar18" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "*puVar18" * identifier))) ;) (expression_statement "puVar9 = (undefined1 *)FUN_00028968(pcVar13);" (assignment_expression "puVar9 = (undefined1 *)FUN_00028968(pcVar13)" identifier = (cast_expression "(undefined1 *)FUN_00028968(pcVar13)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_00028968(pcVar13)" identifier (argument_list "(pcVar13)" ( identifier ))))) ;) (if_statement "if (puVar9 == (undefined1 *)0x0) {\n        FUN_00028270(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4720);\n        uRam00000000 = 0;\n      }\n      else {\n        *puVar9 = 0;\n      }" if (parenthesized_expression "(puVar9 == (undefined1 *)0x0)" ( (binary_expression "puVar9 == (undefined1 *)0x0" identifier == (cast_expression "(undefined1 *)0x0" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n        FUN_00028270(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4720);\n        uRam00000000 = 0;\n      }" { (expression_statement "FUN_00028270(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4720);" (call_expression "FUN_00028270(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4720)" identifier (argument_list "(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4720)" ( (binary_expression "*(int *)(pcStack_81e8 + -0x7fc8) + -0x4720" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fc8)" * (cast_expression "(int *)(pcStack_81e8 + -0x7fc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_81e8 + -0x7fc8)" ( (binary_expression "pcStack_81e8 + -0x7fc8" identifier + number_literal) )))) + number_literal) ))) ;) (expression_statement "uRam00000000 = 0;" (assignment_expression "uRam00000000 = 0" identifier = number_literal) ;) }) (else_clause "else {\n        *puVar9 = 0;\n      }" else (compound_statement "{\n        *puVar9 = 0;\n      }" { (expression_statement "*puVar9 = 0;" (assignment_expression "*puVar9 = 0" (pointer_expression "*puVar9" * identifier) = number_literal) ;) }))) (if_statement "if (puVar9[1] == '\0') {\n        pcVar21 = (char *)(*(int *)(pcStack_81e8 + -0x7fc8) + -0x48b0);\n      }\n      else {\n        pcVar21 = puVar9 + 1;\n      }" if (parenthesized_expression "(puVar9[1] == '\0')" ( (binary_expression "puVar9[1] == '\0'" (subscript_expression "puVar9[1]" identifier [ number_literal ]) == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n        pcVar21 = (char *)(*(int *)(pcStack_81e8 + -0x7fc8) + -0x48b0);\n      }" { (expression_statement "pcVar21 = (char *)(*(int *)(pcStack_81e8 + -0x7fc8) + -0x48b0);" (assignment_expression "pcVar21 = (char *)(*(int *)(pcStack_81e8 + -0x7fc8) + -0x48b0)" identifier = (cast_expression "(char *)(*(int *)(pcStack_81e8 + -0x7fc8) + -0x48b0)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcStack_81e8 + -0x7fc8) + -0x48b0)" ( (binary_expression "*(int *)(pcStack_81e8 + -0x7fc8) + -0x48b0" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fc8)" * (cast_expression "(int *)(pcStack_81e8 + -0x7fc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_81e8 + -0x7fc8)" ( (binary_expression "pcStack_81e8 + -0x7fc8" identifier + number_literal) )))) + number_literal) )))) ;) }) (else_clause "else {\n        pcVar21 = puVar9 + 1;\n      }" else (compound_statement "{\n        pcVar21 = puVar9 + 1;\n      }" { (expression_statement "pcVar21 = puVar9 + 1;" (assignment_expression "pcVar21 = puVar9 + 1" identifier = (binary_expression "puVar9 + 1" identifier + number_literal)) ;) }))) (expression_statement "puVar9 = (undefined1 *)(**(code **)(pcStack_81e8 + -0x75b8))(pcVar13,0x40);" (assignment_expression "puVar9 = (undefined1 *)(**(code **)(pcStack_81e8 + -0x75b8))(pcVar13,0x40)" identifier = (cast_expression "(undefined1 *)(**(code **)(pcStack_81e8 + -0x75b8))(pcVar13,0x40)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(**(code **)(pcStack_81e8 + -0x75b8))(pcVar13,0x40)" (parenthesized_expression "(**(code **)(pcStack_81e8 + -0x75b8))" ( (pointer_expression "**(code **)(pcStack_81e8 + -0x75b8)" * (pointer_expression "*(code **)(pcStack_81e8 + -0x75b8)" * (cast_expression "(code **)(pcStack_81e8 + -0x75b8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_81e8 + -0x75b8)" ( (binary_expression "pcStack_81e8 + -0x75b8" identifier + number_literal) ))))) )) (argument_list "(pcVar13,0x40)" ( identifier , number_literal ))))) ;) (if_statement "if (puVar9 == (undefined1 *)0x0) {\n        pcVar27 = (char *)0x0;\n      }\n      else {\n        *puVar9 = 0;\n        cVar11 = *pcVar13;\n        pcVar27 = pcVar13;\n        pcVar13 = puVar9 + 1;\n        if (cVar11 == '\0') {\n          pcVar27 = (char *)0x0;\n        }\n      }" if (parenthesized_expression "(puVar9 == (undefined1 *)0x0)" ( (binary_expression "puVar9 == (undefined1 *)0x0" identifier == (cast_expression "(undefined1 *)0x0" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n        pcVar27 = (char *)0x0;\n      }" { (expression_statement "pcVar27 = (char *)0x0;" (assignment_expression "pcVar27 = (char *)0x0" identifier = (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) }) (else_clause "else {\n        *puVar9 = 0;\n        cVar11 = *pcVar13;\n        pcVar27 = pcVar13;\n        pcVar13 = puVar9 + 1;\n        if (cVar11 == '\0') {\n          pcVar27 = (char *)0x0;\n        }\n      }" else (compound_statement "{\n        *puVar9 = 0;\n        cVar11 = *pcVar13;\n        pcVar27 = pcVar13;\n        pcVar13 = puVar9 + 1;\n        if (cVar11 == '\0') {\n          pcVar27 = (char *)0x0;\n        }\n      }" { (expression_statement "*puVar9 = 0;" (assignment_expression "*puVar9 = 0" (pointer_expression "*puVar9" * identifier) = number_literal) ;) (expression_statement "cVar11 = *pcVar13;" (assignment_expression "cVar11 = *pcVar13" identifier = (pointer_expression "*pcVar13" * identifier)) ;) (expression_statement "pcVar27 = pcVar13;" (assignment_expression "pcVar27 = pcVar13" identifier = identifier) ;) (expression_statement "pcVar13 = puVar9 + 1;" (assignment_expression "pcVar13 = puVar9 + 1" identifier = (binary_expression "puVar9 + 1" identifier + number_literal)) ;) (if_statement "if (cVar11 == '\0') {\n          pcVar27 = (char *)0x0;\n        }" if (parenthesized_expression "(cVar11 == '\0')" ( (binary_expression "cVar11 == '\0'" identifier == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n          pcVar27 = (char *)0x0;\n        }" { (expression_statement "pcVar27 = (char *)0x0;" (assignment_expression "pcVar27 = (char *)0x0" identifier = (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) })) }))) (if_statement "if (iVar4 == 2) {\n        iVar2 = FUN_00028968(*puVar23);\n        if (iVar2 != 0) {\n          FUN_00028270(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4704,*puVar23);\n        }\n        iVar2 = (**(code **)(pcStack_81e8 + -0x7c30))(*puVar23,1);\n        if (iVar2 == 0) {\n          FUN_00028270(*(int *)(pcStack_81e8 + -0x7fc8) + -0x46e0,*puVar23);\n          iVar24 = *(int *)(pcStack_81e8 + -0x7fd8);\n        }\n        else {\n          iVar24 = *(int *)(pcStack_81e8 + -0x7fd8);\n          if (iVar2 == 2) {\n            *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4) = 1;\n            goto LAB_0002e988;\n          }\n        }\n      }\n      else {\nLAB_0002e988:\n        iVar24 = *(int *)(pcStack_81e8 + -0x7fd8);\n      }" if (parenthesized_expression "(iVar4 == 2)" ( (binary_expression "iVar4 == 2" identifier == number_literal) )) (compound_statement "{\n        iVar2 = FUN_00028968(*puVar23);\n        if (iVar2 != 0) {\n          FUN_00028270(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4704,*puVar23);\n        }\n        iVar2 = (**(code **)(pcStack_81e8 + -0x7c30))(*puVar23,1);\n        if (iVar2 == 0) {\n          FUN_00028270(*(int *)(pcStack_81e8 + -0x7fc8) + -0x46e0,*puVar23);\n          iVar24 = *(int *)(pcStack_81e8 + -0x7fd8);\n        }\n        else {\n          iVar24 = *(int *)(pcStack_81e8 + -0x7fd8);\n          if (iVar2 == 2) {\n            *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4) = 1;\n            goto LAB_0002e988;\n          }\n        }\n      }" { (expression_statement "iVar2 = FUN_00028968(*puVar23);" (assignment_expression "iVar2 = FUN_00028968(*puVar23)" identifier = (call_expression "FUN_00028968(*puVar23)" identifier (argument_list "(*puVar23)" ( (pointer_expression "*puVar23" * identifier) )))) ;) (if_statement "if (iVar2 != 0) {\n          FUN_00028270(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4704,*puVar23);\n        }" if (parenthesized_expression "(iVar2 != 0)" ( (binary_expression "iVar2 != 0" identifier != number_literal) )) (compound_statement "{\n          FUN_00028270(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4704,*puVar23);\n        }" { (expression_statement "FUN_00028270(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4704,*puVar23);" (call_expression "FUN_00028270(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4704,*puVar23)" identifier (argument_list "(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4704,*puVar23)" ( (binary_expression "*(int *)(pcStack_81e8 + -0x7fc8) + -0x4704" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fc8)" * (cast_expression "(int *)(pcStack_81e8 + -0x7fc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_81e8 + -0x7fc8)" ( (binary_expression "pcStack_81e8 + -0x7fc8" identifier + number_literal) )))) + number_literal) , (pointer_expression "*puVar23" * identifier) ))) ;) })) (expression_statement "iVar2 = (**(code **)(pcStack_81e8 + -0x7c30))(*puVar23,1);" (assignment_expression "iVar2 = (**(code **)(pcStack_81e8 + -0x7c30))(*puVar23,1)" identifier = (call_expression "(**(code **)(pcStack_81e8 + -0x7c30))(*puVar23,1)" (parenthesized_expression "(**(code **)(pcStack_81e8 + -0x7c30))" ( (pointer_expression "**(code **)(pcStack_81e8 + -0x7c30)" * (pointer_expression "*(code **)(pcStack_81e8 + -0x7c30)" * (cast_expression "(code **)(pcStack_81e8 + -0x7c30)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_81e8 + -0x7c30)" ( (binary_expression "pcStack_81e8 + -0x7c30" identifier + number_literal) ))))) )) (argument_list "(*puVar23,1)" ( (pointer_expression "*puVar23" * identifier) , number_literal )))) ;) (if_statement "if (iVar2 == 0) {\n          FUN_00028270(*(int *)(pcStack_81e8 + -0x7fc8) + -0x46e0,*puVar23);\n          iVar24 = *(int *)(pcStack_81e8 + -0x7fd8);\n        }\n        else {\n          iVar24 = *(int *)(pcStack_81e8 + -0x7fd8);\n          if (iVar2 == 2) {\n            *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4) = 1;\n            goto LAB_0002e988;\n          }\n        }" if (parenthesized_expression "(iVar2 == 0)" ( (binary_expression "iVar2 == 0" identifier == number_literal) )) (compound_statement "{\n          FUN_00028270(*(int *)(pcStack_81e8 + -0x7fc8) + -0x46e0,*puVar23);\n          iVar24 = *(int *)(pcStack_81e8 + -0x7fd8);\n        }" { (expression_statement "FUN_00028270(*(int *)(pcStack_81e8 + -0x7fc8) + -0x46e0,*puVar23);" (call_expression "FUN_00028270(*(int *)(pcStack_81e8 + -0x7fc8) + -0x46e0,*puVar23)" identifier (argument_list "(*(int *)(pcStack_81e8 + -0x7fc8) + -0x46e0,*puVar23)" ( (binary_expression "*(int *)(pcStack_81e8 + -0x7fc8) + -0x46e0" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fc8)" * (cast_expression "(int *)(pcStack_81e8 + -0x7fc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_81e8 + -0x7fc8)" ( (binary_expression "pcStack_81e8 + -0x7fc8" identifier + number_literal) )))) + number_literal) , (pointer_expression "*puVar23" * identifier) ))) ;) (expression_statement "iVar24 = *(int *)(pcStack_81e8 + -0x7fd8);" (assignment_expression "iVar24 = *(int *)(pcStack_81e8 + -0x7fd8)" identifier = (pointer_expression "*(int *)(pcStack_81e8 + -0x7fd8)" * (cast_expression "(int *)(pcStack_81e8 + -0x7fd8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_81e8 + -0x7fd8)" ( (binary_expression "pcStack_81e8 + -0x7fd8" identifier + number_literal) ))))) ;) }) (else_clause "else {\n          iVar24 = *(int *)(pcStack_81e8 + -0x7fd8);\n          if (iVar2 == 2) {\n            *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4) = 1;\n            goto LAB_0002e988;\n          }\n        }" else (compound_statement "{\n          iVar24 = *(int *)(pcStack_81e8 + -0x7fd8);\n          if (iVar2 == 2) {\n            *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4) = 1;\n            goto LAB_0002e988;\n          }\n        }" { (expression_statement "iVar24 = *(int *)(pcStack_81e8 + -0x7fd8);" (assignment_expression "iVar24 = *(int *)(pcStack_81e8 + -0x7fd8)" identifier = (pointer_expression "*(int *)(pcStack_81e8 + -0x7fd8)" * (cast_expression "(int *)(pcStack_81e8 + -0x7fd8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_81e8 + -0x7fd8)" ( (binary_expression "pcStack_81e8 + -0x7fd8" identifier + number_literal) ))))) ;) (if_statement "if (iVar2 == 2) {\n            *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4) = 1;\n            goto LAB_0002e988;\n          }" if (parenthesized_expression "(iVar2 == 2)" ( (binary_expression "iVar2 == 2" identifier == number_literal) )) (compound_statement "{\n            *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4) = 1;\n            goto LAB_0002e988;\n          }" { (expression_statement "*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4) = 1;" (assignment_expression "*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4) = 1" (pointer_expression "*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4)" * (cast_expression "(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4)" ( (binary_expression "*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fd8)" * (cast_expression "(int *)(pcStack_81e8 + -0x7fd8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_81e8 + -0x7fd8)" ( (binary_expression "pcStack_81e8 + -0x7fd8" identifier + number_literal) )))) + number_literal) )))) = number_literal) ;) (goto_statement "goto LAB_0002e988;" goto statement_identifier ;) })) }))) }) (else_clause "else {\nLAB_0002e988:\n        iVar24 = *(int *)(pcStack_81e8 + -0x7fd8);\n      }" else (compound_statement "{\nLAB_0002e988:\n        iVar24 = *(int *)(pcStack_81e8 + -0x7fd8);\n      }" { (labeled_statement "LAB_0002e988:\n        iVar24 = *(int *)(pcStack_81e8 + -0x7fd8);" statement_identifier : (expression_statement "iVar24 = *(int *)(pcStack_81e8 + -0x7fd8);" (assignment_expression "iVar24 = *(int *)(pcStack_81e8 + -0x7fd8)" identifier = (pointer_expression "*(int *)(pcStack_81e8 + -0x7fd8)" * (cast_expression "(int *)(pcStack_81e8 + -0x7fd8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_81e8 + -0x7fd8)" ( (binary_expression "pcStack_81e8 + -0x7fd8" identifier + number_literal) ))))) ;)) }))) (if_statement "if (*(int *)(iVar24 + -0x31c8) == 0) {\n        iVar2 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iVar2 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47f4;\n      }" if (parenthesized_expression "(*(int *)(iVar24 + -0x31c8) == 0)" ( (binary_expression "*(int *)(iVar24 + -0x31c8) == 0" (pointer_expression "*(int *)(iVar24 + -0x31c8)" * (cast_expression "(int *)(iVar24 + -0x31c8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar24 + -0x31c8)" ( (binary_expression "iVar24 + -0x31c8" identifier + number_literal) )))) == number_literal) )) (compound_statement "{\n        iVar2 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }" { (expression_statement "iVar2 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;" (assignment_expression "iVar2 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc" identifier = (binary_expression "*(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fc8)" * (cast_expression "(int *)(pcStack_81e8 + -0x7fc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_81e8 + -0x7fc8)" ( (binary_expression "pcStack_81e8 + -0x7fc8" identifier + number_literal) )))) + number_literal)) ;) }) (else_clause "else {\n        iVar2 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47f4;\n      }" else (compound_statement "{\n        iVar2 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47f4;\n      }" { (expression_statement "iVar2 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47f4;" (assignment_expression "iVar2 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47f4" identifier = (binary_expression "*(int *)(pcStack_81e8 + -0x7fc8) + -0x47f4" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fc8)" * (cast_expression "(int *)(pcStack_81e8 + -0x7fc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_81e8 + -0x7fc8)" ( (binary_expression "pcStack_81e8 + -0x7fc8" identifier + number_literal) )))) + number_literal)) ;) }))) (if_statement "if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31cc) == 0) {\n        iVar24 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iVar24 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47f0;\n      }" if (parenthesized_expression "(*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31cc) == 0)" ( (binary_expression "*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31cc) == 0" (pointer_expression "*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31cc)" * (cast_expression "(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31cc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31cc)" ( (binary_expression "*(int *)(pcStack_81e8 + -0x7fd8) + -0x31cc" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fd8)" * (cast_expression "(int *)(pcStack_81e8 + -0x7fd8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_81e8 + -0x7fd8)" ( (binary_expression "pcStack_81e8 + -0x7fd8" identifier + number_literal) )))) + number_literal) )))) == number_literal) )) (compound_statement "{\n        iVar24 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }" { (expression_statement "iVar24 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;" (assignment_expression "iVar24 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc" identifier = (binary_expression "*(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fc8)" * (cast_expression "(int *)(pcStack_81e8 + -0x7fc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_81e8 + -0x7fc8)" ( (binary_expression "pcStack_81e8 + -0x7fc8" identifier + number_literal) )))) + number_literal)) ;) }) (else_clause "else {\n        iVar24 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47f0;\n      }" else (compound_statement "{\n        iVar24 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47f0;\n      }" { (expression_statement "iVar24 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47f0;" (assignment_expression "iVar24 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47f0" identifier = (binary_expression "*(int *)(pcStack_81e8 + -0x7fc8) + -0x47f0" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fc8)" * (cast_expression "(int *)(pcStack_81e8 + -0x7fc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_81e8 + -0x7fc8)" ( (binary_expression "pcStack_81e8 + -0x7fc8" identifier + number_literal) )))) + number_literal)) ;) }))) (if_statement "if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d0) == 0) {\n        iVar15 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iVar15 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47ec;\n      }" if (parenthesized_expression "(*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d0) == 0)" ( (binary_expression "*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d0) == 0" (pointer_expression "*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d0)" * (cast_expression "(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d0)" ( (binary_expression "*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d0" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fd8)" * (cast_expression "(int *)(pcStack_81e8 + -0x7fd8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_81e8 + -0x7fd8)" ( (binary_expression "pcStack_81e8 + -0x7fd8" identifier + number_literal) )))) + number_literal) )))) == number_literal) )) (compound_statement "{\n        iVar15 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }" { (expression_statement "iVar15 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;" (assignment_expression "iVar15 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc" identifier = (binary_expression "*(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fc8)" * (cast_expression "(int *)(pcStack_81e8 + -0x7fc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_81e8 + -0x7fc8)" ( (binary_expression "pcStack_81e8 + -0x7fc8" identifier + number_literal) )))) + number_literal)) ;) }) (else_clause "else {\n        iVar15 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47ec;\n      }" else (compound_statement "{\n        iVar15 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47ec;\n      }" { (expression_statement "iVar15 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47ec;" (assignment_expression "iVar15 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47ec" identifier = (binary_expression "*(int *)(pcStack_81e8 + -0x7fc8) + -0x47ec" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fc8)" * (cast_expression "(int *)(pcStack_81e8 + -0x7fc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_81e8 + -0x7fc8)" ( (binary_expression "pcStack_81e8 + -0x7fc8" identifier + number_literal) )))) + number_literal)) ;) }))) (if_statement "if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4) == 0) {\n        iStack_81f0 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iStack_81f0 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47e8;\n      }" if (parenthesized_expression "(*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4) == 0)" ( (binary_expression "*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4) == 0" (pointer_expression "*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4)" * (cast_expression "(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4)" ( (binary_expression "*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fd8)" * (cast_expression "(int *)(pcStack_81e8 + -0x7fd8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_81e8 + -0x7fd8)" ( (binary_expression "pcStack_81e8 + -0x7fd8" identifier + number_literal) )))) + number_literal) )))) == number_literal) )) (compound_statement "{\n        iStack_81f0 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }" { (expression_statement "iStack_81f0 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;" (assignment_expression "iStack_81f0 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc" identifier = (binary_expression "*(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fc8)" * (cast_expression "(int *)(pcStack_81e8 + -0x7fc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_81e8 + -0x7fc8)" ( (binary_expression "pcStack_81e8 + -0x7fc8" identifier + number_literal) )))) + number_literal)) ;) }) (else_clause "else {\n        iStack_81f0 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47e8;\n      }" else (compound_statement "{\n        iStack_81f0 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47e8;\n      }" { (expression_statement "iStack_81f0 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47e8;" (assignment_expression "iStack_81f0 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47e8" identifier = (binary_expression "*(int *)(pcStack_81e8 + -0x7fc8) + -0x47e8" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fc8)" * (cast_expression "(int *)(pcStack_81e8 + -0x7fc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_81e8 + -0x7fc8)" ( (binary_expression "pcStack_81e8 + -0x7fc8" identifier + number_literal) )))) + number_literal)) ;) }))) (expression_statement "pcStack_81ec = pcVar21;" (assignment_expression "pcStack_81ec = pcVar21" identifier = identifier) ;) (expression_statement "uVar7 = dupprintf(*(int *)(pcStack_81e8 + -0x7fc8) + -0x46c0,iVar2,iVar24,iVar15);" (assignment_expression "uVar7 = dupprintf(*(int *)(pcStack_81e8 + -0x7fc8) + -0x46c0,iVar2,iVar24,iVar15)" identifier = (call_expression "dupprintf(*(int *)(pcStack_81e8 + -0x7fc8) + -0x46c0,iVar2,iVar24,iVar15)" identifier (argument_list "(*(int *)(pcStack_81e8 + -0x7fc8) + -0x46c0,iVar2,iVar24,iVar15)" ( (binary_expression "*(int *)(pcStack_81e8 + -0x7fc8) + -0x46c0" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fc8)" * (cast_expression "(int *)(pcStack_81e8 + -0x7fc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_81e8 + -0x7fc8)" ( (binary_expression "pcStack_81e8 + -0x7fc8" identifier + number_literal) )))) + number_literal) , identifier , identifier , identifier )))) ;) (expression_statement "FUN_00028a00(pcVar13,pcVar27,uVar7);" (call_expression "FUN_00028a00(pcVar13,pcVar27,uVar7)" identifier (argument_list "(pcVar13,pcVar27,uVar7)" ( identifier , identifier , identifier ))) ;) (expression_statement "safefree(uVar7);" (call_expression "safefree(uVar7)" identifier (argument_list "(uVar7)" ( identifier ))) ;) (expression_statement "pcVar27 = *(char **)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4);" (assignment_expression "pcVar27 = *(char **)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4)" identifier = (pointer_expression "*(char **)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4)" * (cast_expression "(char **)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4)" ( (binary_expression "*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fd8)" * (cast_expression "(int *)(pcStack_81e8 + -0x7fd8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_81e8 + -0x7fd8)" ( (binary_expression "pcStack_81e8 + -0x7fd8" identifier + number_literal) )))) + number_literal) ))))) ;) (expression_statement "iVar2 = scp_source_setup(pcVar21);" (assignment_expression "iVar2 = scp_source_setup(pcVar21)" identifier = (call_expression "scp_source_setup(pcVar21)" identifier (argument_list "(pcVar21)" ( identifier )))) ;) (if_statement "if ((iVar2 == 0) && (1 < iVar4)) {\n        puVar18 = puVar23 + iVar4 + -1;\n        iVar24 = *(int *)(pcStack_81e8 + -0x7db0);\n        iVar25 = *(int *)(pcStack_81e8 + -0x7fc8);\n        iVar15 = *(int *)(pcStack_81e8 + -0x7db0);\n        iVar4 = *(int *)(pcStack_81e8 + -0x7fc8);\n        do {\n          pcVar13 = (char *)*puVar23;\n          iVar2 = FUN_00028968(pcVar13);\n          if (iVar2 == 0) {\n            pcVar27 = (char *)0x1;\n            iVar2 = (**(code **)(pcStack_81e8 + -0x7c30))(pcVar13,1,pcVar13);\n            if (iVar2 == 0) {\n              (*(code *)(iVar15 + -0x59a8))(iVar25 + -0x4688);\n              pcVar27 = pcVar13;\n            }\n            else if (iVar2 == 1) {\n              (*(code *)(iVar24 + -0x4b8c))(pcVar13);\n            }\n            else {\n              iVar2 = (**(code **)(pcStack_81e8 + -0x7c2c))();\n              if (iVar2 == 0) {\n                (*(code *)(iVar15 + -0x59a8))(iVar25 + -0x4688);\n                pcVar27 = pcVar13;\n              }\n              else {\n                while (iVar26 = (**(code **)(pcStack_81e8 + -0x7c28))(iVar2), iVar26 != 0) {\n                  (*(code *)(iVar24 + -0x4b8c))(iVar26);\n                  safefree(iVar26);\n                }\n                (**(code **)(pcStack_81e8 + -0x7c24))(iVar2);\n              }\n            }\n          }\n          else {\n            pcVar27 = (char *)(iVar4 + -0x46ac);\n            FUN_00027ff8(**(undefined4 **)(pcStack_81e8 + -0x7460));\n            *(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31e0) =\n                 *(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31e0) + 1;\n          }\n          puVar23 = puVar23 + 1;\n          iVar2 = *(int *)(pcStack_81e8 + -0x7fd8);\n        } while (puVar18 != puVar23);\n        goto LAB_0002e788;\n      }" if (parenthesized_expression "((iVar2 == 0) && (1 < iVar4))" ( (binary_expression "(iVar2 == 0) && (1 < iVar4)" (parenthesized_expression "(iVar2 == 0)" ( (binary_expression "iVar2 == 0" identifier == number_literal) )) && (parenthesized_expression "(1 < iVar4)" ( (binary_expression "1 < iVar4" number_literal < identifier) ))) )) (compound_statement "{\n        puVar18 = puVar23 + iVar4 + -1;\n        iVar24 = *(int *)(pcStack_81e8 + -0x7db0);\n        iVar25 = *(int *)(pcStack_81e8 + -0x7fc8);\n        iVar15 = *(int *)(pcStack_81e8 + -0x7db0);\n        iVar4 = *(int *)(pcStack_81e8 + -0x7fc8);\n        do {\n          pcVar13 = (char *)*puVar23;\n          iVar2 = FUN_00028968(pcVar13);\n          if (iVar2 == 0) {\n            pcVar27 = (char *)0x1;\n            iVar2 = (**(code **)(pcStack_81e8 + -0x7c30))(pcVar13,1,pcVar13);\n            if (iVar2 == 0) {\n              (*(code *)(iVar15 + -0x59a8))(iVar25 + -0x4688);\n              pcVar27 = pcVar13;\n            }\n            else if (iVar2 == 1) {\n              (*(code *)(iVar24 + -0x4b8c))(pcVar13);\n            }\n            else {\n              iVar2 = (**(code **)(pcStack_81e8 + -0x7c2c))();\n              if (iVar2 == 0) {\n                (*(code *)(iVar15 + -0x59a8))(iVar25 + -0x4688);\n                pcVar27 = pcVar13;\n              }\n              else {\n                while (iVar26 = (**(code **)(pcStack_81e8 + -0x7c28))(iVar2), iVar26 != 0) {\n                  (*(code *)(iVar24 + -0x4b8c))(iVar26);\n                  safefree(iVar26);\n                }\n                (**(code **)(pcStack_81e8 + -0x7c24))(iVar2);\n              }\n            }\n          }\n          else {\n            pcVar27 = (char *)(iVar4 + -0x46ac);\n            FUN_00027ff8(**(undefined4 **)(pcStack_81e8 + -0x7460));\n            *(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31e0) =\n                 *(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31e0) + 1;\n          }\n          puVar23 = puVar23 + 1;\n          iVar2 = *(int *)(pcStack_81e8 + -0x7fd8);\n        } while (puVar18 != puVar23);\n        goto LAB_0002e788;\n      }" { (expression_statement "puVar18 = puVar23 + iVar4 + -1;" (assignment_expression "puVar18 = puVar23 + iVar4 + -1" identifier = (binary_expression "puVar23 + iVar4 + -1" (binary_expression "puVar23 + iVar4" identifier + identifier) + number_literal)) ;) (expression_statement "iVar24 = *(int *)(pcStack_81e8 + -0x7db0);" (assignment_expression "iVar24 = *(int *)(pcStack_81e8 + -0x7db0)" identifier = (pointer_expression "*(int *)(pcStack_81e8 + -0x7db0)" * (cast_expression "(int *)(pcStack_81e8 + -0x7db0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_81e8 + -0x7db0)" ( (binary_expression "pcStack_81e8 + -0x7db0" identifier + number_literal) ))))) ;) (expression_statement "iVar25 = *(int *)(pcStack_81e8 + -0x7fc8);" (assignment_expression "iVar25 = *(int *)(pcStack_81e8 + -0x7fc8)" identifier = (pointer_expression "*(int *)(pcStack_81e8 + -0x7fc8)" * (cast_expression "(int *)(pcStack_81e8 + -0x7fc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_81e8 + -0x7fc8)" ( (binary_expression "pcStack_81e8 + -0x7fc8" identifier + number_literal) ))))) ;) (expression_statement "iVar15 = *(int *)(pcStack_81e8 + -0x7db0);" (assignment_expression "iVar15 = *(int *)(pcStack_81e8 + -0x7db0)" identifier = (pointer_expression "*(int *)(pcStack_81e8 + -0x7db0)" * (cast_expression "(int *)(pcStack_81e8 + -0x7db0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_81e8 + -0x7db0)" ( (binary_expression "pcStack_81e8 + -0x7db0" identifier + number_literal) ))))) ;) (expression_statement "iVar4 = *(int *)(pcStack_81e8 + -0x7fc8);" (assignment_expression "iVar4 = *(int *)(pcStack_81e8 + -0x7fc8)" identifier = (pointer_expression "*(int *)(pcStack_81e8 + -0x7fc8)" * (cast_expression "(int *)(pcStack_81e8 + -0x7fc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_81e8 + -0x7fc8)" ( (binary_expression "pcStack_81e8 + -0x7fc8" identifier + number_literal) ))))) ;) (do_statement "do {\n          pcVar13 = (char *)*puVar23;\n          iVar2 = FUN_00028968(pcVar13);\n          if (iVar2 == 0) {\n            pcVar27 = (char *)0x1;\n            iVar2 = (**(code **)(pcStack_81e8 + -0x7c30))(pcVar13,1,pcVar13);\n            if (iVar2 == 0) {\n              (*(code *)(iVar15 + -0x59a8))(iVar25 + -0x4688);\n              pcVar27 = pcVar13;\n            }\n            else if (iVar2 == 1) {\n              (*(code *)(iVar24 + -0x4b8c))(pcVar13);\n            }\n            else {\n              iVar2 = (**(code **)(pcStack_81e8 + -0x7c2c))();\n              if (iVar2 == 0) {\n                (*(code *)(iVar15 + -0x59a8))(iVar25 + -0x4688);\n                pcVar27 = pcVar13;\n              }\n              else {\n                while (iVar26 = (**(code **)(pcStack_81e8 + -0x7c28))(iVar2), iVar26 != 0) {\n                  (*(code *)(iVar24 + -0x4b8c))(iVar26);\n                  safefree(iVar26);\n                }\n                (**(code **)(pcStack_81e8 + -0x7c24))(iVar2);\n              }\n            }\n          }\n          else {\n            pcVar27 = (char *)(iVar4 + -0x46ac);\n            FUN_00027ff8(**(undefined4 **)(pcStack_81e8 + -0x7460));\n            *(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31e0) =\n                 *(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31e0) + 1;\n          }\n          puVar23 = puVar23 + 1;\n          iVar2 = *(int *)(pcStack_81e8 + -0x7fd8);\n        } while (puVar18 != puVar23);" do (compound_statement "{\n          pcVar13 = (char *)*puVar23;\n          iVar2 = FUN_00028968(pcVar13);\n          if (iVar2 == 0) {\n            pcVar27 = (char *)0x1;\n            iVar2 = (**(code **)(pcStack_81e8 + -0x7c30))(pcVar13,1,pcVar13);\n            if (iVar2 == 0) {\n              (*(code *)(iVar15 + -0x59a8))(iVar25 + -0x4688);\n              pcVar27 = pcVar13;\n            }\n            else if (iVar2 == 1) {\n              (*(code *)(iVar24 + -0x4b8c))(pcVar13);\n            }\n            else {\n              iVar2 = (**(code **)(pcStack_81e8 + -0x7c2c))();\n              if (iVar2 == 0) {\n                (*(code *)(iVar15 + -0x59a8))(iVar25 + -0x4688);\n                pcVar27 = pcVar13;\n              }\n              else {\n                while (iVar26 = (**(code **)(pcStack_81e8 + -0x7c28))(iVar2), iVar26 != 0) {\n                  (*(code *)(iVar24 + -0x4b8c))(iVar26);\n                  safefree(iVar26);\n                }\n                (**(code **)(pcStack_81e8 + -0x7c24))(iVar2);\n              }\n            }\n          }\n          else {\n            pcVar27 = (char *)(iVar4 + -0x46ac);\n            FUN_00027ff8(**(undefined4 **)(pcStack_81e8 + -0x7460));\n            *(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31e0) =\n                 *(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31e0) + 1;\n          }\n          puVar23 = puVar23 + 1;\n          iVar2 = *(int *)(pcStack_81e8 + -0x7fd8);\n        }" { (expression_statement "pcVar13 = (char *)*puVar23;" (assignment_expression "pcVar13 = (char *)*puVar23" identifier = (cast_expression "(char *)*puVar23" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "*puVar23" * identifier))) ;) (expression_statement "iVar2 = FUN_00028968(pcVar13);" (assignment_expression "iVar2 = FUN_00028968(pcVar13)" identifier = (call_expression "FUN_00028968(pcVar13)" identifier (argument_list "(pcVar13)" ( identifier )))) ;) (if_statement "if (iVar2 == 0) {\n            pcVar27 = (char *)0x1;\n            iVar2 = (**(code **)(pcStack_81e8 + -0x7c30))(pcVar13,1,pcVar13);\n            if (iVar2 == 0) {\n              (*(code *)(iVar15 + -0x59a8))(iVar25 + -0x4688);\n              pcVar27 = pcVar13;\n            }\n            else if (iVar2 == 1) {\n              (*(code *)(iVar24 + -0x4b8c))(pcVar13);\n            }\n            else {\n              iVar2 = (**(code **)(pcStack_81e8 + -0x7c2c))();\n              if (iVar2 == 0) {\n                (*(code *)(iVar15 + -0x59a8))(iVar25 + -0x4688);\n                pcVar27 = pcVar13;\n              }\n              else {\n                while (iVar26 = (**(code **)(pcStack_81e8 + -0x7c28))(iVar2), iVar26 != 0) {\n                  (*(code *)(iVar24 + -0x4b8c))(iVar26);\n                  safefree(iVar26);\n                }\n                (**(code **)(pcStack_81e8 + -0x7c24))(iVar2);\n              }\n            }\n          }\n          else {\n            pcVar27 = (char *)(iVar4 + -0x46ac);\n            FUN_00027ff8(**(undefined4 **)(pcStack_81e8 + -0x7460));\n            *(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31e0) =\n                 *(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31e0) + 1;\n          }" if (parenthesized_expression "(iVar2 == 0)" ( (binary_expression "iVar2 == 0" identifier == number_literal) )) (compound_statement "{\n            pcVar27 = (char *)0x1;\n            iVar2 = (**(code **)(pcStack_81e8 + -0x7c30))(pcVar13,1,pcVar13);\n            if (iVar2 == 0) {\n              (*(code *)(iVar15 + -0x59a8))(iVar25 + -0x4688);\n              pcVar27 = pcVar13;\n            }\n            else if (iVar2 == 1) {\n              (*(code *)(iVar24 + -0x4b8c))(pcVar13);\n            }\n            else {\n              iVar2 = (**(code **)(pcStack_81e8 + -0x7c2c))();\n              if (iVar2 == 0) {\n                (*(code *)(iVar15 + -0x59a8))(iVar25 + -0x4688);\n                pcVar27 = pcVar13;\n              }\n              else {\n                while (iVar26 = (**(code **)(pcStack_81e8 + -0x7c28))(iVar2), iVar26 != 0) {\n                  (*(code *)(iVar24 + -0x4b8c))(iVar26);\n                  safefree(iVar26);\n                }\n                (**(code **)(pcStack_81e8 + -0x7c24))(iVar2);\n              }\n            }\n          }" { (expression_statement "pcVar27 = (char *)0x1;" (assignment_expression "pcVar27 = (char *)0x1" identifier = (cast_expression "(char *)0x1" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "iVar2 = (**(code **)(pcStack_81e8 + -0x7c30))(pcVar13,1,pcVar13);" (assignment_expression "iVar2 = (**(code **)(pcStack_81e8 + -0x7c30))(pcVar13,1,pcVar13)" identifier = (call_expression "(**(code **)(pcStack_81e8 + -0x7c30))(pcVar13,1,pcVar13)" (parenthesized_expression "(**(code **)(pcStack_81e8 + -0x7c30))" ( (pointer_expression "**(code **)(pcStack_81e8 + -0x7c30)" * (pointer_expression "*(code **)(pcStack_81e8 + -0x7c30)" * (cast_expression "(code **)(pcStack_81e8 + -0x7c30)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_81e8 + -0x7c30)" ( (binary_expression "pcStack_81e8 + -0x7c30" identifier + number_literal) ))))) )) (argument_list "(pcVar13,1,pcVar13)" ( identifier , number_literal , identifier )))) ;) (if_statement "if (iVar2 == 0) {\n              (*(code *)(iVar15 + -0x59a8))(iVar25 + -0x4688);\n              pcVar27 = pcVar13;\n            }\n            else if (iVar2 == 1) {\n              (*(code *)(iVar24 + -0x4b8c))(pcVar13);\n            }\n            else {\n              iVar2 = (**(code **)(pcStack_81e8 + -0x7c2c))();\n              if (iVar2 == 0) {\n                (*(code *)(iVar15 + -0x59a8))(iVar25 + -0x4688);\n                pcVar27 = pcVar13;\n              }\n              else {\n                while (iVar26 = (**(code **)(pcStack_81e8 + -0x7c28))(iVar2), iVar26 != 0) {\n                  (*(code *)(iVar24 + -0x4b8c))(iVar26);\n                  safefree(iVar26);\n                }\n                (**(code **)(pcStack_81e8 + -0x7c24))(iVar2);\n              }\n            }" if (parenthesized_expression "(iVar2 == 0)" ( (binary_expression "iVar2 == 0" identifier == number_literal) )) (compound_statement "{\n              (*(code *)(iVar15 + -0x59a8))(iVar25 + -0x4688);\n              pcVar27 = pcVar13;\n            }" { (expression_statement "(*(code *)(iVar15 + -0x59a8))(iVar25 + -0x4688);" (call_expression "(*(code *)(iVar15 + -0x59a8))(iVar25 + -0x4688)" (parenthesized_expression "(*(code *)(iVar15 + -0x59a8))" ( (pointer_expression "*(code *)(iVar15 + -0x59a8)" * (cast_expression "(code *)(iVar15 + -0x59a8)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar15 + -0x59a8)" ( (binary_expression "iVar15 + -0x59a8" identifier + number_literal) )))) )) (argument_list "(iVar25 + -0x4688)" ( (binary_expression "iVar25 + -0x4688" identifier + number_literal) ))) ;) (expression_statement "pcVar27 = pcVar13;" (assignment_expression "pcVar27 = pcVar13" identifier = identifier) ;) }) (else_clause "else if (iVar2 == 1) {\n              (*(code *)(iVar24 + -0x4b8c))(pcVar13);\n            }\n            else {\n              iVar2 = (**(code **)(pcStack_81e8 + -0x7c2c))();\n              if (iVar2 == 0) {\n                (*(code *)(iVar15 + -0x59a8))(iVar25 + -0x4688);\n                pcVar27 = pcVar13;\n              }\n              else {\n                while (iVar26 = (**(code **)(pcStack_81e8 + -0x7c28))(iVar2), iVar26 != 0) {\n                  (*(code *)(iVar24 + -0x4b8c))(iVar26);\n                  safefree(iVar26);\n                }\n                (**(code **)(pcStack_81e8 + -0x7c24))(iVar2);\n              }\n            }" else (if_statement "if (iVar2 == 1) {\n              (*(code *)(iVar24 + -0x4b8c))(pcVar13);\n            }\n            else {\n              iVar2 = (**(code **)(pcStack_81e8 + -0x7c2c))();\n              if (iVar2 == 0) {\n                (*(code *)(iVar15 + -0x59a8))(iVar25 + -0x4688);\n                pcVar27 = pcVar13;\n              }\n              else {\n                while (iVar26 = (**(code **)(pcStack_81e8 + -0x7c28))(iVar2), iVar26 != 0) {\n                  (*(code *)(iVar24 + -0x4b8c))(iVar26);\n                  safefree(iVar26);\n                }\n                (**(code **)(pcStack_81e8 + -0x7c24))(iVar2);\n              }\n            }" if (parenthesized_expression "(iVar2 == 1)" ( (binary_expression "iVar2 == 1" identifier == number_literal) )) (compound_statement "{\n              (*(code *)(iVar24 + -0x4b8c))(pcVar13);\n            }" { (expression_statement "(*(code *)(iVar24 + -0x4b8c))(pcVar13);" (call_expression "(*(code *)(iVar24 + -0x4b8c))(pcVar13)" (parenthesized_expression "(*(code *)(iVar24 + -0x4b8c))" ( (pointer_expression "*(code *)(iVar24 + -0x4b8c)" * (cast_expression "(code *)(iVar24 + -0x4b8c)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar24 + -0x4b8c)" ( (binary_expression "iVar24 + -0x4b8c" identifier + number_literal) )))) )) (argument_list "(pcVar13)" ( identifier ))) ;) }) (else_clause "else {\n              iVar2 = (**(code **)(pcStack_81e8 + -0x7c2c))();\n              if (iVar2 == 0) {\n                (*(code *)(iVar15 + -0x59a8))(iVar25 + -0x4688);\n                pcVar27 = pcVar13;\n              }\n              else {\n                while (iVar26 = (**(code **)(pcStack_81e8 + -0x7c28))(iVar2), iVar26 != 0) {\n                  (*(code *)(iVar24 + -0x4b8c))(iVar26);\n                  safefree(iVar26);\n                }\n                (**(code **)(pcStack_81e8 + -0x7c24))(iVar2);\n              }\n            }" else (compound_statement "{\n              iVar2 = (**(code **)(pcStack_81e8 + -0x7c2c))();\n              if (iVar2 == 0) {\n                (*(code *)(iVar15 + -0x59a8))(iVar25 + -0x4688);\n                pcVar27 = pcVar13;\n              }\n              else {\n                while (iVar26 = (**(code **)(pcStack_81e8 + -0x7c28))(iVar2), iVar26 != 0) {\n                  (*(code *)(iVar24 + -0x4b8c))(iVar26);\n                  safefree(iVar26);\n                }\n                (**(code **)(pcStack_81e8 + -0x7c24))(iVar2);\n              }\n            }" { (expression_statement "iVar2 = (**(code **)(pcStack_81e8 + -0x7c2c))();" (assignment_expression "iVar2 = (**(code **)(pcStack_81e8 + -0x7c2c))()" identifier = (call_expression "(**(code **)(pcStack_81e8 + -0x7c2c))()" (parenthesized_expression "(**(code **)(pcStack_81e8 + -0x7c2c))" ( (pointer_expression "**(code **)(pcStack_81e8 + -0x7c2c)" * (pointer_expression "*(code **)(pcStack_81e8 + -0x7c2c)" * (cast_expression "(code **)(pcStack_81e8 + -0x7c2c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_81e8 + -0x7c2c)" ( (binary_expression "pcStack_81e8 + -0x7c2c" identifier + number_literal) ))))) )) (argument_list "()" ( )))) ;) (if_statement "if (iVar2 == 0) {\n                (*(code *)(iVar15 + -0x59a8))(iVar25 + -0x4688);\n                pcVar27 = pcVar13;\n              }\n              else {\n                while (iVar26 = (**(code **)(pcStack_81e8 + -0x7c28))(iVar2), iVar26 != 0) {\n                  (*(code *)(iVar24 + -0x4b8c))(iVar26);\n                  safefree(iVar26);\n                }\n                (**(code **)(pcStack_81e8 + -0x7c24))(iVar2);\n              }" if (parenthesized_expression "(iVar2 == 0)" ( (binary_expression "iVar2 == 0" identifier == number_literal) )) (compound_statement "{\n                (*(code *)(iVar15 + -0x59a8))(iVar25 + -0x4688);\n                pcVar27 = pcVar13;\n              }" { (expression_statement "(*(code *)(iVar15 + -0x59a8))(iVar25 + -0x4688);" (call_expression "(*(code *)(iVar15 + -0x59a8))(iVar25 + -0x4688)" (parenthesized_expression "(*(code *)(iVar15 + -0x59a8))" ( (pointer_expression "*(code *)(iVar15 + -0x59a8)" * (cast_expression "(code *)(iVar15 + -0x59a8)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar15 + -0x59a8)" ( (binary_expression "iVar15 + -0x59a8" identifier + number_literal) )))) )) (argument_list "(iVar25 + -0x4688)" ( (binary_expression "iVar25 + -0x4688" identifier + number_literal) ))) ;) (expression_statement "pcVar27 = pcVar13;" (assignment_expression "pcVar27 = pcVar13" identifier = identifier) ;) }) (else_clause "else {\n                while (iVar26 = (**(code **)(pcStack_81e8 + -0x7c28))(iVar2), iVar26 != 0) {\n                  (*(code *)(iVar24 + -0x4b8c))(iVar26);\n                  safefree(iVar26);\n                }\n                (**(code **)(pcStack_81e8 + -0x7c24))(iVar2);\n              }" else (compound_statement "{\n                while (iVar26 = (**(code **)(pcStack_81e8 + -0x7c28))(iVar2), iVar26 != 0) {\n                  (*(code *)(iVar24 + -0x4b8c))(iVar26);\n                  safefree(iVar26);\n                }\n                (**(code **)(pcStack_81e8 + -0x7c24))(iVar2);\n              }" { (while_statement "while (iVar26 = (**(code **)(pcStack_81e8 + -0x7c28))(iVar2), iVar26 != 0) {\n                  (*(code *)(iVar24 + -0x4b8c))(iVar26);\n                  safefree(iVar26);\n                }" while (parenthesized_expression "(iVar26 = (**(code **)(pcStack_81e8 + -0x7c28))(iVar2), iVar26 != 0)" ( (comma_expression "iVar26 = (**(code **)(pcStack_81e8 + -0x7c28))(iVar2), iVar26 != 0" (assignment_expression "iVar26 = (**(code **)(pcStack_81e8 + -0x7c28))(iVar2)" identifier = (call_expression "(**(code **)(pcStack_81e8 + -0x7c28))(iVar2)" (parenthesized_expression "(**(code **)(pcStack_81e8 + -0x7c28))" ( (pointer_expression "**(code **)(pcStack_81e8 + -0x7c28)" * (pointer_expression "*(code **)(pcStack_81e8 + -0x7c28)" * (cast_expression "(code **)(pcStack_81e8 + -0x7c28)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_81e8 + -0x7c28)" ( (binary_expression "pcStack_81e8 + -0x7c28" identifier + number_literal) ))))) )) (argument_list "(iVar2)" ( identifier )))) , (binary_expression "iVar26 != 0" identifier != number_literal)) )) (compound_statement "{\n                  (*(code *)(iVar24 + -0x4b8c))(iVar26);\n                  safefree(iVar26);\n                }" { (expression_statement "(*(code *)(iVar24 + -0x4b8c))(iVar26);" (call_expression "(*(code *)(iVar24 + -0x4b8c))(iVar26)" (parenthesized_expression "(*(code *)(iVar24 + -0x4b8c))" ( (pointer_expression "*(code *)(iVar24 + -0x4b8c)" * (cast_expression "(code *)(iVar24 + -0x4b8c)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar24 + -0x4b8c)" ( (binary_expression "iVar24 + -0x4b8c" identifier + number_literal) )))) )) (argument_list "(iVar26)" ( identifier ))) ;) (expression_statement "safefree(iVar26);" (call_expression "safefree(iVar26)" identifier (argument_list "(iVar26)" ( identifier ))) ;) })) (expression_statement "(**(code **)(pcStack_81e8 + -0x7c24))(iVar2);" (call_expression "(**(code **)(pcStack_81e8 + -0x7c24))(iVar2)" (parenthesized_expression "(**(code **)(pcStack_81e8 + -0x7c24))" ( (pointer_expression "**(code **)(pcStack_81e8 + -0x7c24)" * (pointer_expression "*(code **)(pcStack_81e8 + -0x7c24)" * (cast_expression "(code **)(pcStack_81e8 + -0x7c24)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_81e8 + -0x7c24)" ( (binary_expression "pcStack_81e8 + -0x7c24" identifier + number_literal) ))))) )) (argument_list "(iVar2)" ( identifier ))) ;) }))) }))))) }) (else_clause "else {\n            pcVar27 = (char *)(iVar4 + -0x46ac);\n            FUN_00027ff8(**(undefined4 **)(pcStack_81e8 + -0x7460));\n            *(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31e0) =\n                 *(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31e0) + 1;\n          }" else (compound_statement "{\n            pcVar27 = (char *)(iVar4 + -0x46ac);\n            FUN_00027ff8(**(undefined4 **)(pcStack_81e8 + -0x7460));\n            *(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31e0) =\n                 *(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31e0) + 1;\n          }" { (expression_statement "pcVar27 = (char *)(iVar4 + -0x46ac);" (assignment_expression "pcVar27 = (char *)(iVar4 + -0x46ac)" identifier = (cast_expression "(char *)(iVar4 + -0x46ac)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar4 + -0x46ac)" ( (binary_expression "iVar4 + -0x46ac" identifier + number_literal) )))) ;) (expression_statement "FUN_00027ff8(**(undefined4 **)(pcStack_81e8 + -0x7460));" (call_expression "FUN_00027ff8(**(undefined4 **)(pcStack_81e8 + -0x7460))" identifier (argument_list "(**(undefined4 **)(pcStack_81e8 + -0x7460))" ( (pointer_expression "**(undefined4 **)(pcStack_81e8 + -0x7460)" * (pointer_expression "*(undefined4 **)(pcStack_81e8 + -0x7460)" * (cast_expression "(undefined4 **)(pcStack_81e8 + -0x7460)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_81e8 + -0x7460)" ( (binary_expression "pcStack_81e8 + -0x7460" identifier + number_literal) ))))) ))) ;) (expression_statement "*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31e0) =\n                 *(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31e0) + 1;" (assignment_expression "*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31e0) =\n                 *(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31e0) + 1" (pointer_expression "*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31e0)" * (cast_expression "(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31e0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31e0)" ( (binary_expression "*(int *)(pcStack_81e8 + -0x7fd8) + -0x31e0" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fd8)" * (cast_expression "(int *)(pcStack_81e8 + -0x7fd8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_81e8 + -0x7fd8)" ( (binary_expression "pcStack_81e8 + -0x7fd8" identifier + number_literal) )))) + number_literal) )))) = (binary_expression "*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31e0) + 1" (pointer_expression "*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31e0)" * (cast_expression "(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31e0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31e0)" ( (binary_expression "*(int *)(pcStack_81e8 + -0x7fd8) + -0x31e0" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fd8)" * (cast_expression "(int *)(pcStack_81e8 + -0x7fd8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_81e8 + -0x7fd8)" ( (binary_expression "pcStack_81e8 + -0x7fd8" identifier + number_literal) )))) + number_literal) )))) + number_literal)) ;) }))) (expression_statement "puVar23 = puVar23 + 1;" (assignment_expression "puVar23 = puVar23 + 1" identifier = (binary_expression "puVar23 + 1" identifier + number_literal)) ;) (expression_statement "iVar2 = *(int *)(pcStack_81e8 + -0x7fd8);" (assignment_expression "iVar2 = *(int *)(pcStack_81e8 + -0x7fd8)" identifier = (pointer_expression "*(int *)(pcStack_81e8 + -0x7fd8)" * (cast_expression "(int *)(pcStack_81e8 + -0x7fd8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_81e8 + -0x7fd8)" ( (binary_expression "pcStack_81e8 + -0x7fd8" identifier + number_literal) ))))) ;) }) while (parenthesized_expression "(puVar18 != puVar23)" ( (binary_expression "puVar18 != puVar23" identifier != identifier) )) ;) (goto_statement "goto LAB_0002e788;" goto statement_identifier ;) })) }))) }) (else_clause "else {\n    if (iVar4 == 1) {\n      pcVar13 = (char *)*puVar23;\n    }\n    else {\n      FUN_0002861c();\n      pcVar13 = (char *)*puVar23;\n    }\n    puVar9 = (undefined1 *)FUN_00028968(pcVar13);\n    if (puVar9 == (undefined1 *)0x0) {\n      FUN_00028270(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4750);\n      uRam00000000 = 0;\n    }\n    else {\n      *puVar9 = 0;\n    }\n    if (puVar9[1] == '\0') {\n      puVar9 = (undefined1 *)(**(code **)(pcStack_81e8 + -0x75b8))(pcVar13,0x40);\n      if (puVar9 == (undefined1 *)0x0) {\n        puVar23 = (undefined4 *)safemalloc(0x68,1);\n        iVar2 = *(int *)(pcStack_81e8 + -0x7fc8);\n        uVar7 = *(undefined4 *)(iVar2 + -0x4728);\n        *puVar23 = *(undefined4 *)(iVar2 + -0x472c);\n        puVar23[1] = uVar7;\n        *(undefined1 *)(puVar23 + 2) = *(undefined1 *)(iVar2 + -0x4724);\n        iVar2 = (**(code **)(pcStack_81e8 + -0x752c))(puVar23);\n        pcVar10 = (char *)((int)puVar23 + iVar2);\n        pcVar21 = (char *)(*(int *)(pcStack_81e8 + -0x7fc8) + -0x48b0);\n        cVar11 = '.';\n        pcVar27 = (char *)0x0;\n        pcVar22 = pcVar21;\n        goto LAB_0002e6b4;\n      }\n      pcVar21 = (char *)(*(int *)(pcStack_81e8 + -0x7fc8) + -0x48b0);\nLAB_0002e5ac:\n      *puVar9 = 0;\n      cVar11 = *pcVar13;\n      pcVar27 = pcVar13;\n      pcVar13 = puVar9 + 1;\n      if (cVar11 == '\0') {\n        pcVar27 = (char *)0x0;\n      }\n    }\n    else {\n      pcVar21 = puVar9 + 1;\n      puVar9 = (undefined1 *)(**(code **)(pcStack_81e8 + -0x75b8))(pcVar13);\n      if (puVar9 != (undefined1 *)0x0) goto LAB_0002e5ac;\n      pcVar27 = (char *)0x0;\n    }\n    iVar2 = (**(code **)(pcStack_81e8 + -0x752c))(pcVar21);\n    puVar23 = (undefined4 *)safemalloc((iVar2 + 0x19) * 4,1);\n    iVar2 = *(int *)(pcStack_81e8 + -0x7fc8);\n    uVar7 = *(undefined4 *)(iVar2 + -0x4728);\n    *puVar23 = *(undefined4 *)(iVar2 + -0x472c);\n    puVar23[1] = uVar7;\n    *(undefined1 *)(puVar23 + 2) = *(undefined1 *)(iVar2 + -0x4724);\n    iVar2 = (**(code **)(pcStack_81e8 + -0x752c))(puVar23);\n    pcVar10 = (char *)((int)puVar23 + iVar2);\n    cVar11 = *pcVar21;\n    pcVar22 = pcVar21;\n    while (cVar11 != '\0') {\nLAB_0002e6b4:\n      if (cVar11 == '\'') {\n        builtin_strncpy(pcVar10,"\'\\\'\'",4);\n        pcVar10 = pcVar10 + 4;\n      }\n      else {\n        *pcVar10 = cVar11;\n        pcVar10 = pcVar10 + 1;\n      }\n      pcVar21 = pcVar21 + 1;\n      cVar11 = *pcVar21;\n    }\n    *pcVar10 = '\'';\n    pcVar10[1] = '\0';\n    FUN_00028a00(pcVar13,pcVar27,puVar23);\n    safefree(puVar23);\n    if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31ec) != 0) {\n      scp_sftp_listdir(pcVar22);\n      iVar2 = *(int *)(pcStack_81e8 + -0x7fd8);\n      goto LAB_0002e788;\n    }\n    puVar23 = *(undefined4 **)(pcStack_81e8 + -0x7594);\n    while( true ) {\n      pcVar27 = (char *)0x1;\n      iVar2 = FUN_000280f4(&cStack_81d5);\n      if (iVar2 < 1) break;\n      (**(code **)(pcStack_81e8 + -0x75c4))((int)cStack_81d5,*puVar23);\n    }\n  }" else (compound_statement "{\n    if (iVar4 == 1) {\n      pcVar13 = (char *)*puVar23;\n    }\n    else {\n      FUN_0002861c();\n      pcVar13 = (char *)*puVar23;\n    }\n    puVar9 = (undefined1 *)FUN_00028968(pcVar13);\n    if (puVar9 == (undefined1 *)0x0) {\n      FUN_00028270(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4750);\n      uRam00000000 = 0;\n    }\n    else {\n      *puVar9 = 0;\n    }\n    if (puVar9[1] == '\0') {\n      puVar9 = (undefined1 *)(**(code **)(pcStack_81e8 + -0x75b8))(pcVar13,0x40);\n      if (puVar9 == (undefined1 *)0x0) {\n        puVar23 = (undefined4 *)safemalloc(0x68,1);\n        iVar2 = *(int *)(pcStack_81e8 + -0x7fc8);\n        uVar7 = *(undefined4 *)(iVar2 + -0x4728);\n        *puVar23 = *(undefined4 *)(iVar2 + -0x472c);\n        puVar23[1] = uVar7;\n        *(undefined1 *)(puVar23 + 2) = *(undefined1 *)(iVar2 + -0x4724);\n        iVar2 = (**(code **)(pcStack_81e8 + -0x752c))(puVar23);\n        pcVar10 = (char *)((int)puVar23 + iVar2);\n        pcVar21 = (char *)(*(int *)(pcStack_81e8 + -0x7fc8) + -0x48b0);\n        cVar11 = '.';\n        pcVar27 = (char *)0x0;\n        pcVar22 = pcVar21;\n        goto LAB_0002e6b4;\n      }\n      pcVar21 = (char *)(*(int *)(pcStack_81e8 + -0x7fc8) + -0x48b0);\nLAB_0002e5ac:\n      *puVar9 = 0;\n      cVar11 = *pcVar13;\n      pcVar27 = pcVar13;\n      pcVar13 = puVar9 + 1;\n      if (cVar11 == '\0') {\n        pcVar27 = (char *)0x0;\n      }\n    }\n    else {\n      pcVar21 = puVar9 + 1;\n      puVar9 = (undefined1 *)(**(code **)(pcStack_81e8 + -0x75b8))(pcVar13);\n      if (puVar9 != (undefined1 *)0x0) goto LAB_0002e5ac;\n      pcVar27 = (char *)0x0;\n    }\n    iVar2 = (**(code **)(pcStack_81e8 + -0x752c))(pcVar21);\n    puVar23 = (undefined4 *)safemalloc((iVar2 + 0x19) * 4,1);\n    iVar2 = *(int *)(pcStack_81e8 + -0x7fc8);\n    uVar7 = *(undefined4 *)(iVar2 + -0x4728);\n    *puVar23 = *(undefined4 *)(iVar2 + -0x472c);\n    puVar23[1] = uVar7;\n    *(undefined1 *)(puVar23 + 2) = *(undefined1 *)(iVar2 + -0x4724);\n    iVar2 = (**(code **)(pcStack_81e8 + -0x752c))(puVar23);\n    pcVar10 = (char *)((int)puVar23 + iVar2);\n    cVar11 = *pcVar21;\n    pcVar22 = pcVar21;\n    while (cVar11 != '\0') {\nLAB_0002e6b4:\n      if (cVar11 == '\'') {\n        builtin_strncpy(pcVar10,"\'\\\'\'",4);\n        pcVar10 = pcVar10 + 4;\n      }\n      else {\n        *pcVar10 = cVar11;\n        pcVar10 = pcVar10 + 1;\n      }\n      pcVar21 = pcVar21 + 1;\n      cVar11 = *pcVar21;\n    }\n    *pcVar10 = '\'';\n    pcVar10[1] = '\0';\n    FUN_00028a00(pcVar13,pcVar27,puVar23);\n    safefree(puVar23);\n    if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31ec) != 0) {\n      scp_sftp_listdir(pcVar22);\n      iVar2 = *(int *)(pcStack_81e8 + -0x7fd8);\n      goto LAB_0002e788;\n    }\n    puVar23 = *(undefined4 **)(pcStack_81e8 + -0x7594);\n    while( true ) {\n      pcVar27 = (char *)0x1;\n      iVar2 = FUN_000280f4(&cStack_81d5);\n      if (iVar2 < 1) break;\n      (**(code **)(pcStack_81e8 + -0x75c4))((int)cStack_81d5,*puVar23);\n    }\n  }" { (if_statement "if (iVar4 == 1) {\n      pcVar13 = (char *)*puVar23;\n    }\n    else {\n      FUN_0002861c();\n      pcVar13 = (char *)*puVar23;\n    }" if (parenthesized_expression "(iVar4 == 1)" ( (binary_expression "iVar4 == 1" identifier == number_literal) )) (compound_statement "{\n      pcVar13 = (char *)*puVar23;\n    }" { (expression_statement "pcVar13 = (char *)*puVar23;" (assignment_expression "pcVar13 = (char *)*puVar23" identifier = (cast_expression "(char *)*puVar23" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "*puVar23" * identifier))) ;) }) (else_clause "else {\n      FUN_0002861c();\n      pcVar13 = (char *)*puVar23;\n    }" else (compound_statement "{\n      FUN_0002861c();\n      pcVar13 = (char *)*puVar23;\n    }" { (expression_statement "FUN_0002861c();" (call_expression "FUN_0002861c()" identifier (argument_list "()" ( ))) ;) (expression_statement "pcVar13 = (char *)*puVar23;" (assignment_expression "pcVar13 = (char *)*puVar23" identifier = (cast_expression "(char *)*puVar23" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "*puVar23" * identifier))) ;) }))) (expression_statement "puVar9 = (undefined1 *)FUN_00028968(pcVar13);" (assignment_expression "puVar9 = (undefined1 *)FUN_00028968(pcVar13)" identifier = (cast_expression "(undefined1 *)FUN_00028968(pcVar13)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_00028968(pcVar13)" identifier (argument_list "(pcVar13)" ( identifier ))))) ;) (if_statement "if (puVar9 == (undefined1 *)0x0) {\n      FUN_00028270(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4750);\n      uRam00000000 = 0;\n    }\n    else {\n      *puVar9 = 0;\n    }" if (parenthesized_expression "(puVar9 == (undefined1 *)0x0)" ( (binary_expression "puVar9 == (undefined1 *)0x0" identifier == (cast_expression "(undefined1 *)0x0" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n      FUN_00028270(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4750);\n      uRam00000000 = 0;\n    }" { (expression_statement "FUN_00028270(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4750);" (call_expression "FUN_00028270(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4750)" identifier (argument_list "(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4750)" ( (binary_expression "*(int *)(pcStack_81e8 + -0x7fc8) + -0x4750" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fc8)" * (cast_expression "(int *)(pcStack_81e8 + -0x7fc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_81e8 + -0x7fc8)" ( (binary_expression "pcStack_81e8 + -0x7fc8" identifier + number_literal) )))) + number_literal) ))) ;) (expression_statement "uRam00000000 = 0;" (assignment_expression "uRam00000000 = 0" identifier = number_literal) ;) }) (else_clause "else {\n      *puVar9 = 0;\n    }" else (compound_statement "{\n      *puVar9 = 0;\n    }" { (expression_statement "*puVar9 = 0;" (assignment_expression "*puVar9 = 0" (pointer_expression "*puVar9" * identifier) = number_literal) ;) }))) (if_statement "if (puVar9[1] == '\0') {\n      puVar9 = (undefined1 *)(**(code **)(pcStack_81e8 + -0x75b8))(pcVar13,0x40);\n      if (puVar9 == (undefined1 *)0x0) {\n        puVar23 = (undefined4 *)safemalloc(0x68,1);\n        iVar2 = *(int *)(pcStack_81e8 + -0x7fc8);\n        uVar7 = *(undefined4 *)(iVar2 + -0x4728);\n        *puVar23 = *(undefined4 *)(iVar2 + -0x472c);\n        puVar23[1] = uVar7;\n        *(undefined1 *)(puVar23 + 2) = *(undefined1 *)(iVar2 + -0x4724);\n        iVar2 = (**(code **)(pcStack_81e8 + -0x752c))(puVar23);\n        pcVar10 = (char *)((int)puVar23 + iVar2);\n        pcVar21 = (char *)(*(int *)(pcStack_81e8 + -0x7fc8) + -0x48b0);\n        cVar11 = '.';\n        pcVar27 = (char *)0x0;\n        pcVar22 = pcVar21;\n        goto LAB_0002e6b4;\n      }\n      pcVar21 = (char *)(*(int *)(pcStack_81e8 + -0x7fc8) + -0x48b0);\nLAB_0002e5ac:\n      *puVar9 = 0;\n      cVar11 = *pcVar13;\n      pcVar27 = pcVar13;\n      pcVar13 = puVar9 + 1;\n      if (cVar11 == '\0') {\n        pcVar27 = (char *)0x0;\n      }\n    }\n    else {\n      pcVar21 = puVar9 + 1;\n      puVar9 = (undefined1 *)(**(code **)(pcStack_81e8 + -0x75b8))(pcVar13);\n      if (puVar9 != (undefined1 *)0x0) goto LAB_0002e5ac;\n      pcVar27 = (char *)0x0;\n    }" if (parenthesized_expression "(puVar9[1] == '\0')" ( (binary_expression "puVar9[1] == '\0'" (subscript_expression "puVar9[1]" identifier [ number_literal ]) == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n      puVar9 = (undefined1 *)(**(code **)(pcStack_81e8 + -0x75b8))(pcVar13,0x40);\n      if (puVar9 == (undefined1 *)0x0) {\n        puVar23 = (undefined4 *)safemalloc(0x68,1);\n        iVar2 = *(int *)(pcStack_81e8 + -0x7fc8);\n        uVar7 = *(undefined4 *)(iVar2 + -0x4728);\n        *puVar23 = *(undefined4 *)(iVar2 + -0x472c);\n        puVar23[1] = uVar7;\n        *(undefined1 *)(puVar23 + 2) = *(undefined1 *)(iVar2 + -0x4724);\n        iVar2 = (**(code **)(pcStack_81e8 + -0x752c))(puVar23);\n        pcVar10 = (char *)((int)puVar23 + iVar2);\n        pcVar21 = (char *)(*(int *)(pcStack_81e8 + -0x7fc8) + -0x48b0);\n        cVar11 = '.';\n        pcVar27 = (char *)0x0;\n        pcVar22 = pcVar21;\n        goto LAB_0002e6b4;\n      }\n      pcVar21 = (char *)(*(int *)(pcStack_81e8 + -0x7fc8) + -0x48b0);\nLAB_0002e5ac:\n      *puVar9 = 0;\n      cVar11 = *pcVar13;\n      pcVar27 = pcVar13;\n      pcVar13 = puVar9 + 1;\n      if (cVar11 == '\0') {\n        pcVar27 = (char *)0x0;\n      }\n    }" { (expression_statement "puVar9 = (undefined1 *)(**(code **)(pcStack_81e8 + -0x75b8))(pcVar13,0x40);" (assignment_expression "puVar9 = (undefined1 *)(**(code **)(pcStack_81e8 + -0x75b8))(pcVar13,0x40)" identifier = (cast_expression "(undefined1 *)(**(code **)(pcStack_81e8 + -0x75b8))(pcVar13,0x40)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(**(code **)(pcStack_81e8 + -0x75b8))(pcVar13,0x40)" (parenthesized_expression "(**(code **)(pcStack_81e8 + -0x75b8))" ( (pointer_expression "**(code **)(pcStack_81e8 + -0x75b8)" * (pointer_expression "*(code **)(pcStack_81e8 + -0x75b8)" * (cast_expression "(code **)(pcStack_81e8 + -0x75b8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_81e8 + -0x75b8)" ( (binary_expression "pcStack_81e8 + -0x75b8" identifier + number_literal) ))))) )) (argument_list "(pcVar13,0x40)" ( identifier , number_literal ))))) ;) (if_statement "if (puVar9 == (undefined1 *)0x0) {\n        puVar23 = (undefined4 *)safemalloc(0x68,1);\n        iVar2 = *(int *)(pcStack_81e8 + -0x7fc8);\n        uVar7 = *(undefined4 *)(iVar2 + -0x4728);\n        *puVar23 = *(undefined4 *)(iVar2 + -0x472c);\n        puVar23[1] = uVar7;\n        *(undefined1 *)(puVar23 + 2) = *(undefined1 *)(iVar2 + -0x4724);\n        iVar2 = (**(code **)(pcStack_81e8 + -0x752c))(puVar23);\n        pcVar10 = (char *)((int)puVar23 + iVar2);\n        pcVar21 = (char *)(*(int *)(pcStack_81e8 + -0x7fc8) + -0x48b0);\n        cVar11 = '.';\n        pcVar27 = (char *)0x0;\n        pcVar22 = pcVar21;\n        goto LAB_0002e6b4;\n      }" if (parenthesized_expression "(puVar9 == (undefined1 *)0x0)" ( (binary_expression "puVar9 == (undefined1 *)0x0" identifier == (cast_expression "(undefined1 *)0x0" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n        puVar23 = (undefined4 *)safemalloc(0x68,1);\n        iVar2 = *(int *)(pcStack_81e8 + -0x7fc8);\n        uVar7 = *(undefined4 *)(iVar2 + -0x4728);\n        *puVar23 = *(undefined4 *)(iVar2 + -0x472c);\n        puVar23[1] = uVar7;\n        *(undefined1 *)(puVar23 + 2) = *(undefined1 *)(iVar2 + -0x4724);\n        iVar2 = (**(code **)(pcStack_81e8 + -0x752c))(puVar23);\n        pcVar10 = (char *)((int)puVar23 + iVar2);\n        pcVar21 = (char *)(*(int *)(pcStack_81e8 + -0x7fc8) + -0x48b0);\n        cVar11 = '.';\n        pcVar27 = (char *)0x0;\n        pcVar22 = pcVar21;\n        goto LAB_0002e6b4;\n      }" { (expression_statement "puVar23 = (undefined4 *)safemalloc(0x68,1);" (assignment_expression "puVar23 = (undefined4 *)safemalloc(0x68,1)" identifier = (cast_expression "(undefined4 *)safemalloc(0x68,1)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "safemalloc(0x68,1)" identifier (argument_list "(0x68,1)" ( number_literal , number_literal ))))) ;) (expression_statement "iVar2 = *(int *)(pcStack_81e8 + -0x7fc8);" (assignment_expression "iVar2 = *(int *)(pcStack_81e8 + -0x7fc8)" identifier = (pointer_expression "*(int *)(pcStack_81e8 + -0x7fc8)" * (cast_expression "(int *)(pcStack_81e8 + -0x7fc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_81e8 + -0x7fc8)" ( (binary_expression "pcStack_81e8 + -0x7fc8" identifier + number_literal) ))))) ;) (expression_statement "uVar7 = *(undefined4 *)(iVar2 + -0x4728);" (assignment_expression "uVar7 = *(undefined4 *)(iVar2 + -0x4728)" identifier = (pointer_expression "*(undefined4 *)(iVar2 + -0x4728)" * (cast_expression "(undefined4 *)(iVar2 + -0x4728)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + -0x4728)" ( (binary_expression "iVar2 + -0x4728" identifier + number_literal) ))))) ;) (expression_statement "*puVar23 = *(undefined4 *)(iVar2 + -0x472c);" (assignment_expression "*puVar23 = *(undefined4 *)(iVar2 + -0x472c)" (pointer_expression "*puVar23" * identifier) = (pointer_expression "*(undefined4 *)(iVar2 + -0x472c)" * (cast_expression "(undefined4 *)(iVar2 + -0x472c)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + -0x472c)" ( (binary_expression "iVar2 + -0x472c" identifier + number_literal) ))))) ;) (expression_statement "puVar23[1] = uVar7;" (assignment_expression "puVar23[1] = uVar7" (subscript_expression "puVar23[1]" identifier [ number_literal ]) = identifier) ;) (expression_statement "*(undefined1 *)(puVar23 + 2) = *(undefined1 *)(iVar2 + -0x4724);" (assignment_expression "*(undefined1 *)(puVar23 + 2) = *(undefined1 *)(iVar2 + -0x4724)" (pointer_expression "*(undefined1 *)(puVar23 + 2)" * (cast_expression "(undefined1 *)(puVar23 + 2)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar23 + 2)" ( (binary_expression "puVar23 + 2" identifier + number_literal) )))) = (pointer_expression "*(undefined1 *)(iVar2 + -0x4724)" * (cast_expression "(undefined1 *)(iVar2 + -0x4724)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + -0x4724)" ( (binary_expression "iVar2 + -0x4724" identifier + number_literal) ))))) ;) (expression_statement "iVar2 = (**(code **)(pcStack_81e8 + -0x752c))(puVar23);" (assignment_expression "iVar2 = (**(code **)(pcStack_81e8 + -0x752c))(puVar23)" identifier = (call_expression "(**(code **)(pcStack_81e8 + -0x752c))(puVar23)" (parenthesized_expression "(**(code **)(pcStack_81e8 + -0x752c))" ( (pointer_expression "**(code **)(pcStack_81e8 + -0x752c)" * (pointer_expression "*(code **)(pcStack_81e8 + -0x752c)" * (cast_expression "(code **)(pcStack_81e8 + -0x752c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_81e8 + -0x752c)" ( (binary_expression "pcStack_81e8 + -0x752c" identifier + number_literal) ))))) )) (argument_list "(puVar23)" ( identifier )))) ;) (expression_statement "pcVar10 = (char *)((int)puVar23 + iVar2);" (assignment_expression "pcVar10 = (char *)((int)puVar23 + iVar2)" identifier = (cast_expression "(char *)((int)puVar23 + iVar2)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)puVar23 + iVar2)" ( (binary_expression "(int)puVar23 + iVar2" (cast_expression "(int)puVar23" ( (type_descriptor "int" primitive_type) ) identifier) + identifier) )))) ;) (expression_statement "pcVar21 = (char *)(*(int *)(pcStack_81e8 + -0x7fc8) + -0x48b0);" (assignment_expression "pcVar21 = (char *)(*(int *)(pcStack_81e8 + -0x7fc8) + -0x48b0)" identifier = (cast_expression "(char *)(*(int *)(pcStack_81e8 + -0x7fc8) + -0x48b0)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcStack_81e8 + -0x7fc8) + -0x48b0)" ( (binary_expression "*(int *)(pcStack_81e8 + -0x7fc8) + -0x48b0" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fc8)" * (cast_expression "(int *)(pcStack_81e8 + -0x7fc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_81e8 + -0x7fc8)" ( (binary_expression "pcStack_81e8 + -0x7fc8" identifier + number_literal) )))) + number_literal) )))) ;) (expression_statement "cVar11 = '.';" (assignment_expression "cVar11 = '.'" identifier = (char_literal "'.'" ' character ')) ;) (expression_statement "pcVar27 = (char *)0x0;" (assignment_expression "pcVar27 = (char *)0x0" identifier = (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "pcVar22 = pcVar21;" (assignment_expression "pcVar22 = pcVar21" identifier = identifier) ;) (goto_statement "goto LAB_0002e6b4;" goto statement_identifier ;) })) (expression_statement "pcVar21 = (char *)(*(int *)(pcStack_81e8 + -0x7fc8) + -0x48b0);" (assignment_expression "pcVar21 = (char *)(*(int *)(pcStack_81e8 + -0x7fc8) + -0x48b0)" identifier = (cast_expression "(char *)(*(int *)(pcStack_81e8 + -0x7fc8) + -0x48b0)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcStack_81e8 + -0x7fc8) + -0x48b0)" ( (binary_expression "*(int *)(pcStack_81e8 + -0x7fc8) + -0x48b0" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fc8)" * (cast_expression "(int *)(pcStack_81e8 + -0x7fc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_81e8 + -0x7fc8)" ( (binary_expression "pcStack_81e8 + -0x7fc8" identifier + number_literal) )))) + number_literal) )))) ;) (labeled_statement "LAB_0002e5ac:\n      *puVar9 = 0;" statement_identifier : (expression_statement "*puVar9 = 0;" (assignment_expression "*puVar9 = 0" (pointer_expression "*puVar9" * identifier) = number_literal) ;)) (expression_statement "cVar11 = *pcVar13;" (assignment_expression "cVar11 = *pcVar13" identifier = (pointer_expression "*pcVar13" * identifier)) ;) (expression_statement "pcVar27 = pcVar13;" (assignment_expression "pcVar27 = pcVar13" identifier = identifier) ;) (expression_statement "pcVar13 = puVar9 + 1;" (assignment_expression "pcVar13 = puVar9 + 1" identifier = (binary_expression "puVar9 + 1" identifier + number_literal)) ;) (if_statement "if (cVar11 == '\0') {\n        pcVar27 = (char *)0x0;\n      }" if (parenthesized_expression "(cVar11 == '\0')" ( (binary_expression "cVar11 == '\0'" identifier == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n        pcVar27 = (char *)0x0;\n      }" { (expression_statement "pcVar27 = (char *)0x0;" (assignment_expression "pcVar27 = (char *)0x0" identifier = (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) })) }) (else_clause "else {\n      pcVar21 = puVar9 + 1;\n      puVar9 = (undefined1 *)(**(code **)(pcStack_81e8 + -0x75b8))(pcVar13);\n      if (puVar9 != (undefined1 *)0x0) goto LAB_0002e5ac;\n      pcVar27 = (char *)0x0;\n    }" else (compound_statement "{\n      pcVar21 = puVar9 + 1;\n      puVar9 = (undefined1 *)(**(code **)(pcStack_81e8 + -0x75b8))(pcVar13);\n      if (puVar9 != (undefined1 *)0x0) goto LAB_0002e5ac;\n      pcVar27 = (char *)0x0;\n    }" { (expression_statement "pcVar21 = puVar9 + 1;" (assignment_expression "pcVar21 = puVar9 + 1" identifier = (binary_expression "puVar9 + 1" identifier + number_literal)) ;) (expression_statement "puVar9 = (undefined1 *)(**(code **)(pcStack_81e8 + -0x75b8))(pcVar13);" (assignment_expression "puVar9 = (undefined1 *)(**(code **)(pcStack_81e8 + -0x75b8))(pcVar13)" identifier = (cast_expression "(undefined1 *)(**(code **)(pcStack_81e8 + -0x75b8))(pcVar13)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(**(code **)(pcStack_81e8 + -0x75b8))(pcVar13)" (parenthesized_expression "(**(code **)(pcStack_81e8 + -0x75b8))" ( (pointer_expression "**(code **)(pcStack_81e8 + -0x75b8)" * (pointer_expression "*(code **)(pcStack_81e8 + -0x75b8)" * (cast_expression "(code **)(pcStack_81e8 + -0x75b8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_81e8 + -0x75b8)" ( (binary_expression "pcStack_81e8 + -0x75b8" identifier + number_literal) ))))) )) (argument_list "(pcVar13)" ( identifier ))))) ;) (if_statement "if (puVar9 != (undefined1 *)0x0) goto LAB_0002e5ac;" if (parenthesized_expression "(puVar9 != (undefined1 *)0x0)" ( (binary_expression "puVar9 != (undefined1 *)0x0" identifier != (cast_expression "(undefined1 *)0x0" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_0002e5ac;" goto statement_identifier ;)) (expression_statement "pcVar27 = (char *)0x0;" (assignment_expression "pcVar27 = (char *)0x0" identifier = (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) }))) (expression_statement "iVar2 = (**(code **)(pcStack_81e8 + -0x752c))(pcVar21);" (assignment_expression "iVar2 = (**(code **)(pcStack_81e8 + -0x752c))(pcVar21)" identifier = (call_expression "(**(code **)(pcStack_81e8 + -0x752c))(pcVar21)" (parenthesized_expression "(**(code **)(pcStack_81e8 + -0x752c))" ( (pointer_expression "**(code **)(pcStack_81e8 + -0x752c)" * (pointer_expression "*(code **)(pcStack_81e8 + -0x752c)" * (cast_expression "(code **)(pcStack_81e8 + -0x752c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_81e8 + -0x752c)" ( (binary_expression "pcStack_81e8 + -0x752c" identifier + number_literal) ))))) )) (argument_list "(pcVar21)" ( identifier )))) ;) (expression_statement "puVar23 = (undefined4 *)safemalloc((iVar2 + 0x19) * 4,1);" (assignment_expression "puVar23 = (undefined4 *)safemalloc((iVar2 + 0x19) * 4,1)" identifier = (cast_expression "(undefined4 *)safemalloc((iVar2 + 0x19) * 4,1)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "safemalloc((iVar2 + 0x19) * 4,1)" identifier (argument_list "((iVar2 + 0x19) * 4,1)" ( (binary_expression "(iVar2 + 0x19) * 4" (parenthesized_expression "(iVar2 + 0x19)" ( (binary_expression "iVar2 + 0x19" identifier + number_literal) )) * number_literal) , number_literal ))))) ;) (expression_statement "iVar2 = *(int *)(pcStack_81e8 + -0x7fc8);" (assignment_expression "iVar2 = *(int *)(pcStack_81e8 + -0x7fc8)" identifier = (pointer_expression "*(int *)(pcStack_81e8 + -0x7fc8)" * (cast_expression "(int *)(pcStack_81e8 + -0x7fc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_81e8 + -0x7fc8)" ( (binary_expression "pcStack_81e8 + -0x7fc8" identifier + number_literal) ))))) ;) (expression_statement "uVar7 = *(undefined4 *)(iVar2 + -0x4728);" (assignment_expression "uVar7 = *(undefined4 *)(iVar2 + -0x4728)" identifier = (pointer_expression "*(undefined4 *)(iVar2 + -0x4728)" * (cast_expression "(undefined4 *)(iVar2 + -0x4728)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + -0x4728)" ( (binary_expression "iVar2 + -0x4728" identifier + number_literal) ))))) ;) (expression_statement "*puVar23 = *(undefined4 *)(iVar2 + -0x472c);" (assignment_expression "*puVar23 = *(undefined4 *)(iVar2 + -0x472c)" (pointer_expression "*puVar23" * identifier) = (pointer_expression "*(undefined4 *)(iVar2 + -0x472c)" * (cast_expression "(undefined4 *)(iVar2 + -0x472c)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + -0x472c)" ( (binary_expression "iVar2 + -0x472c" identifier + number_literal) ))))) ;) (expression_statement "puVar23[1] = uVar7;" (assignment_expression "puVar23[1] = uVar7" (subscript_expression "puVar23[1]" identifier [ number_literal ]) = identifier) ;) (expression_statement "*(undefined1 *)(puVar23 + 2) = *(undefined1 *)(iVar2 + -0x4724);" (assignment_expression "*(undefined1 *)(puVar23 + 2) = *(undefined1 *)(iVar2 + -0x4724)" (pointer_expression "*(undefined1 *)(puVar23 + 2)" * (cast_expression "(undefined1 *)(puVar23 + 2)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar23 + 2)" ( (binary_expression "puVar23 + 2" identifier + number_literal) )))) = (pointer_expression "*(undefined1 *)(iVar2 + -0x4724)" * (cast_expression "(undefined1 *)(iVar2 + -0x4724)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + -0x4724)" ( (binary_expression "iVar2 + -0x4724" identifier + number_literal) ))))) ;) (expression_statement "iVar2 = (**(code **)(pcStack_81e8 + -0x752c))(puVar23);" (assignment_expression "iVar2 = (**(code **)(pcStack_81e8 + -0x752c))(puVar23)" identifier = (call_expression "(**(code **)(pcStack_81e8 + -0x752c))(puVar23)" (parenthesized_expression "(**(code **)(pcStack_81e8 + -0x752c))" ( (pointer_expression "**(code **)(pcStack_81e8 + -0x752c)" * (pointer_expression "*(code **)(pcStack_81e8 + -0x752c)" * (cast_expression "(code **)(pcStack_81e8 + -0x752c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_81e8 + -0x752c)" ( (binary_expression "pcStack_81e8 + -0x752c" identifier + number_literal) ))))) )) (argument_list "(puVar23)" ( identifier )))) ;) (expression_statement "pcVar10 = (char *)((int)puVar23 + iVar2);" (assignment_expression "pcVar10 = (char *)((int)puVar23 + iVar2)" identifier = (cast_expression "(char *)((int)puVar23 + iVar2)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)puVar23 + iVar2)" ( (binary_expression "(int)puVar23 + iVar2" (cast_expression "(int)puVar23" ( (type_descriptor "int" primitive_type) ) identifier) + identifier) )))) ;) (expression_statement "cVar11 = *pcVar21;" (assignment_expression "cVar11 = *pcVar21" identifier = (pointer_expression "*pcVar21" * identifier)) ;) (expression_statement "pcVar22 = pcVar21;" (assignment_expression "pcVar22 = pcVar21" identifier = identifier) ;) (while_statement "while (cVar11 != '\0') {\nLAB_0002e6b4:\n      if (cVar11 == '\'') {\n        builtin_strncpy(pcVar10,"\'\\\'\'",4);\n        pcVar10 = pcVar10 + 4;\n      }\n      else {\n        *pcVar10 = cVar11;\n        pcVar10 = pcVar10 + 1;\n      }\n      pcVar21 = pcVar21 + 1;\n      cVar11 = *pcVar21;\n    }" while (parenthesized_expression "(cVar11 != '\0')" ( (binary_expression "cVar11 != '\0'" identifier != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\nLAB_0002e6b4:\n      if (cVar11 == '\'') {\n        builtin_strncpy(pcVar10,"\'\\\'\'",4);\n        pcVar10 = pcVar10 + 4;\n      }\n      else {\n        *pcVar10 = cVar11;\n        pcVar10 = pcVar10 + 1;\n      }\n      pcVar21 = pcVar21 + 1;\n      cVar11 = *pcVar21;\n    }" { (labeled_statement "LAB_0002e6b4:\n      if (cVar11 == '\'') {\n        builtin_strncpy(pcVar10,"\'\\\'\'",4);\n        pcVar10 = pcVar10 + 4;\n      }\n      else {\n        *pcVar10 = cVar11;\n        pcVar10 = pcVar10 + 1;\n      }" statement_identifier : (if_statement "if (cVar11 == '\'') {\n        builtin_strncpy(pcVar10,"\'\\\'\'",4);\n        pcVar10 = pcVar10 + 4;\n      }\n      else {\n        *pcVar10 = cVar11;\n        pcVar10 = pcVar10 + 1;\n      }" if (parenthesized_expression "(cVar11 == '\'')" ( (binary_expression "cVar11 == '\''" identifier == (char_literal "'\''" ' escape_sequence ')) )) (compound_statement "{\n        builtin_strncpy(pcVar10,"\'\\\'\'",4);\n        pcVar10 = pcVar10 + 4;\n      }" { (expression_statement "builtin_strncpy(pcVar10,"\'\\\'\'",4);" (call_expression "builtin_strncpy(pcVar10,"\'\\\'\'",4)" identifier (argument_list "(pcVar10,"\'\\\'\'",4)" ( identifier , (string_literal ""\'\\\'\'"" " escape_sequence escape_sequence escape_sequence escape_sequence ") , number_literal ))) ;) (expression_statement "pcVar10 = pcVar10 + 4;" (assignment_expression "pcVar10 = pcVar10 + 4" identifier = (binary_expression "pcVar10 + 4" identifier + number_literal)) ;) }) (else_clause "else {\n        *pcVar10 = cVar11;\n        pcVar10 = pcVar10 + 1;\n      }" else (compound_statement "{\n        *pcVar10 = cVar11;\n        pcVar10 = pcVar10 + 1;\n      }" { (expression_statement "*pcVar10 = cVar11;" (assignment_expression "*pcVar10 = cVar11" (pointer_expression "*pcVar10" * identifier) = identifier) ;) (expression_statement "pcVar10 = pcVar10 + 1;" (assignment_expression "pcVar10 = pcVar10 + 1" identifier = (binary_expression "pcVar10 + 1" identifier + number_literal)) ;) })))) (expression_statement "pcVar21 = pcVar21 + 1;" (assignment_expression "pcVar21 = pcVar21 + 1" identifier = (binary_expression "pcVar21 + 1" identifier + number_literal)) ;) (expression_statement "cVar11 = *pcVar21;" (assignment_expression "cVar11 = *pcVar21" identifier = (pointer_expression "*pcVar21" * identifier)) ;) })) (expression_statement "*pcVar10 = '\'';" (assignment_expression "*pcVar10 = '\''" (pointer_expression "*pcVar10" * identifier) = (char_literal "'\''" ' escape_sequence ')) ;) (expression_statement "pcVar10[1] = '\0';" (assignment_expression "pcVar10[1] = '\0'" (subscript_expression "pcVar10[1]" identifier [ number_literal ]) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "FUN_00028a00(pcVar13,pcVar27,puVar23);" (call_expression "FUN_00028a00(pcVar13,pcVar27,puVar23)" identifier (argument_list "(pcVar13,pcVar27,puVar23)" ( identifier , identifier , identifier ))) ;) (expression_statement "safefree(puVar23);" (call_expression "safefree(puVar23)" identifier (argument_list "(puVar23)" ( identifier ))) ;) (if_statement "if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31ec) != 0) {\n      scp_sftp_listdir(pcVar22);\n      iVar2 = *(int *)(pcStack_81e8 + -0x7fd8);\n      goto LAB_0002e788;\n    }" if (parenthesized_expression "(*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31ec) != 0)" ( (binary_expression "*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31ec) != 0" (pointer_expression "*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31ec)" * (cast_expression "(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31ec)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31ec)" ( (binary_expression "*(int *)(pcStack_81e8 + -0x7fd8) + -0x31ec" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fd8)" * (cast_expression "(int *)(pcStack_81e8 + -0x7fd8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_81e8 + -0x7fd8)" ( (binary_expression "pcStack_81e8 + -0x7fd8" identifier + number_literal) )))) + number_literal) )))) != number_literal) )) (compound_statement "{\n      scp_sftp_listdir(pcVar22);\n      iVar2 = *(int *)(pcStack_81e8 + -0x7fd8);\n      goto LAB_0002e788;\n    }" { (expression_statement "scp_sftp_listdir(pcVar22);" (call_expression "scp_sftp_listdir(pcVar22)" identifier (argument_list "(pcVar22)" ( identifier ))) ;) (expression_statement "iVar2 = *(int *)(pcStack_81e8 + -0x7fd8);" (assignment_expression "iVar2 = *(int *)(pcStack_81e8 + -0x7fd8)" identifier = (pointer_expression "*(int *)(pcStack_81e8 + -0x7fd8)" * (cast_expression "(int *)(pcStack_81e8 + -0x7fd8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_81e8 + -0x7fd8)" ( (binary_expression "pcStack_81e8 + -0x7fd8" identifier + number_literal) ))))) ;) (goto_statement "goto LAB_0002e788;" goto statement_identifier ;) })) (expression_statement "puVar23 = *(undefined4 **)(pcStack_81e8 + -0x7594);" (assignment_expression "puVar23 = *(undefined4 **)(pcStack_81e8 + -0x7594)" identifier = (pointer_expression "*(undefined4 **)(pcStack_81e8 + -0x7594)" * (cast_expression "(undefined4 **)(pcStack_81e8 + -0x7594)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_81e8 + -0x7594)" ( (binary_expression "pcStack_81e8 + -0x7594" identifier + number_literal) ))))) ;) (while_statement "while( true ) {\n      pcVar27 = (char *)0x1;\n      iVar2 = FUN_000280f4(&cStack_81d5);\n      if (iVar2 < 1) break;\n      (**(code **)(pcStack_81e8 + -0x75c4))((int)cStack_81d5,*puVar23);\n    }" while (parenthesized_expression "( true )" ( true )) (compound_statement "{\n      pcVar27 = (char *)0x1;\n      iVar2 = FUN_000280f4(&cStack_81d5);\n      if (iVar2 < 1) break;\n      (**(code **)(pcStack_81e8 + -0x75c4))((int)cStack_81d5,*puVar23);\n    }" { (expression_statement "pcVar27 = (char *)0x1;" (assignment_expression "pcVar27 = (char *)0x1" identifier = (cast_expression "(char *)0x1" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "iVar2 = FUN_000280f4(&cStack_81d5);" (assignment_expression "iVar2 = FUN_000280f4(&cStack_81d5)" identifier = (call_expression "FUN_000280f4(&cStack_81d5)" identifier (argument_list "(&cStack_81d5)" ( (pointer_expression "&cStack_81d5" & identifier) )))) ;) (if_statement "if (iVar2 < 1) break;" if (parenthesized_expression "(iVar2 < 1)" ( (binary_expression "iVar2 < 1" identifier < number_literal) )) (break_statement "break;" break ;)) (expression_statement "(**(code **)(pcStack_81e8 + -0x75c4))((int)cStack_81d5,*puVar23);" (call_expression "(**(code **)(pcStack_81e8 + -0x75c4))((int)cStack_81d5,*puVar23)" (parenthesized_expression "(**(code **)(pcStack_81e8 + -0x75c4))" ( (pointer_expression "**(code **)(pcStack_81e8 + -0x75c4)" * (pointer_expression "*(code **)(pcStack_81e8 + -0x75c4)" * (cast_expression "(code **)(pcStack_81e8 + -0x75c4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_81e8 + -0x75c4)" ( (binary_expression "pcStack_81e8 + -0x75c4" identifier + number_literal) ))))) )) (argument_list "((int)cStack_81d5,*puVar23)" ( (cast_expression "(int)cStack_81d5" ( (type_descriptor "int" primitive_type) ) identifier) , (pointer_expression "*puVar23" * identifier) ))) ;) })) }))) (expression_statement "iVar2 = *(int *)(pcStack_81e8 + -0x7fd8);" (assignment_expression "iVar2 = *(int *)(pcStack_81e8 + -0x7fd8)" identifier = (pointer_expression "*(int *)(pcStack_81e8 + -0x7fd8)" * (cast_expression "(int *)(pcStack_81e8 + -0x7fd8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_81e8 + -0x7fd8)" ( (binary_expression "pcStack_81e8 + -0x7fd8" identifier + number_literal) ))))) ;) (labeled_statement "LAB_0002e788:\n  pcVar28 = *(code **)(pcStack_81e8 + -0x7c44);" statement_identifier : (expression_statement "pcVar28 = *(code **)(pcStack_81e8 + -0x7c44);" (assignment_expression "pcVar28 = *(code **)(pcStack_81e8 + -0x7c44)" identifier = (pointer_expression "*(code **)(pcStack_81e8 + -0x7c44)" * (cast_expression "(code **)(pcStack_81e8 + -0x7c44)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_81e8 + -0x7c44)" ( (binary_expression "pcStack_81e8 + -0x7c44" identifier + number_literal) ))))) ;)) (if_statement "if (*(int *)(iVar2 + -0x31f4) != 0) {\n    iVar2 = (**(code **)(*(int *)(iVar2 + -0x31f4) + 0x20))\n                      (*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f8));\n    pcVar28 = *(code **)(pcStack_81e8 + -0x7c44);\n    if (iVar2 != 0) {\n      (**(code **)(*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f4) + 0x18))\n                (*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f8),0xc);\n      **(undefined4 **)(pcStack_81e8 + -0x7db4) = 1;\n      pcVar27 = (char *)0x1;\n      FUN_000280f4(&cStack_81d5);\n      pcVar28 = *(code **)(pcStack_81e8 + -0x7c44);\n    }\n  }" if (parenthesized_expression "(*(int *)(iVar2 + -0x31f4) != 0)" ( (binary_expression "*(int *)(iVar2 + -0x31f4) != 0" (pointer_expression "*(int *)(iVar2 + -0x31f4)" * (cast_expression "(int *)(iVar2 + -0x31f4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + -0x31f4)" ( (binary_expression "iVar2 + -0x31f4" identifier + number_literal) )))) != number_literal) )) (compound_statement "{\n    iVar2 = (**(code **)(*(int *)(iVar2 + -0x31f4) + 0x20))\n                      (*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f8));\n    pcVar28 = *(code **)(pcStack_81e8 + -0x7c44);\n    if (iVar2 != 0) {\n      (**(code **)(*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f4) + 0x18))\n                (*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f8),0xc);\n      **(undefined4 **)(pcStack_81e8 + -0x7db4) = 1;\n      pcVar27 = (char *)0x1;\n      FUN_000280f4(&cStack_81d5);\n      pcVar28 = *(code **)(pcStack_81e8 + -0x7c44);\n    }\n  }" { (expression_statement "iVar2 = (**(code **)(*(int *)(iVar2 + -0x31f4) + 0x20))\n                      (*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f8));" (assignment_expression "iVar2 = (**(code **)(*(int *)(iVar2 + -0x31f4) + 0x20))\n                      (*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f8))" identifier = (call_expression "(**(code **)(*(int *)(iVar2 + -0x31f4) + 0x20))\n                      (*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f8))" (parenthesized_expression "(**(code **)(*(int *)(iVar2 + -0x31f4) + 0x20))" ( (pointer_expression "**(code **)(*(int *)(iVar2 + -0x31f4) + 0x20)" * (pointer_expression "*(code **)(*(int *)(iVar2 + -0x31f4) + 0x20)" * (cast_expression "(code **)(*(int *)(iVar2 + -0x31f4) + 0x20)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*(int *)(iVar2 + -0x31f4) + 0x20)" ( (binary_expression "*(int *)(iVar2 + -0x31f4) + 0x20" (pointer_expression "*(int *)(iVar2 + -0x31f4)" * (cast_expression "(int *)(iVar2 + -0x31f4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + -0x31f4)" ( (binary_expression "iVar2 + -0x31f4" identifier + number_literal) )))) + number_literal) ))))) )) (argument_list "(*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f8))" ( (pointer_expression "*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f8)" * (cast_expression "(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f8)" ( (binary_expression "*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f8" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fd8)" * (cast_expression "(int *)(pcStack_81e8 + -0x7fd8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_81e8 + -0x7fd8)" ( (binary_expression "pcStack_81e8 + -0x7fd8" identifier + number_literal) )))) + number_literal) )))) )))) ;) (expression_statement "pcVar28 = *(code **)(pcStack_81e8 + -0x7c44);" (assignment_expression "pcVar28 = *(code **)(pcStack_81e8 + -0x7c44)" identifier = (pointer_expression "*(code **)(pcStack_81e8 + -0x7c44)" * (cast_expression "(code **)(pcStack_81e8 + -0x7c44)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_81e8 + -0x7c44)" ( (binary_expression "pcStack_81e8 + -0x7c44" identifier + number_literal) ))))) ;) (if_statement "if (iVar2 != 0) {\n      (**(code **)(*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f4) + 0x18))\n                (*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f8),0xc);\n      **(undefined4 **)(pcStack_81e8 + -0x7db4) = 1;\n      pcVar27 = (char *)0x1;\n      FUN_000280f4(&cStack_81d5);\n      pcVar28 = *(code **)(pcStack_81e8 + -0x7c44);\n    }" if (parenthesized_expression "(iVar2 != 0)" ( (binary_expression "iVar2 != 0" identifier != number_literal) )) (compound_statement "{\n      (**(code **)(*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f4) + 0x18))\n                (*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f8),0xc);\n      **(undefined4 **)(pcStack_81e8 + -0x7db4) = 1;\n      pcVar27 = (char *)0x1;\n      FUN_000280f4(&cStack_81d5);\n      pcVar28 = *(code **)(pcStack_81e8 + -0x7c44);\n    }" { (expression_statement "(**(code **)(*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f4) + 0x18))\n                (*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f8),0xc);" (call_expression "(**(code **)(*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f4) + 0x18))\n                (*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f8),0xc)" (parenthesized_expression "(**(code **)(*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f4) + 0x18))" ( (pointer_expression "**(code **)(*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f4) + 0x18)" * (pointer_expression "*(code **)(*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f4) + 0x18)" * (cast_expression "(code **)(*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f4) + 0x18)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f4) + 0x18)" ( (binary_expression "*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f4) + 0x18" (pointer_expression "*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f4)" * (cast_expression "(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f4)" ( (binary_expression "*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f4" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fd8)" * (cast_expression "(int *)(pcStack_81e8 + -0x7fd8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_81e8 + -0x7fd8)" ( (binary_expression "pcStack_81e8 + -0x7fd8" identifier + number_literal) )))) + number_literal) )))) + number_literal) ))))) )) (argument_list "(*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f8),0xc)" ( (pointer_expression "*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f8)" * (cast_expression "(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f8)" ( (binary_expression "*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f8" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fd8)" * (cast_expression "(int *)(pcStack_81e8 + -0x7fd8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_81e8 + -0x7fd8)" ( (binary_expression "pcStack_81e8 + -0x7fd8" identifier + number_literal) )))) + number_literal) )))) , number_literal ))) ;) (expression_statement "**(undefined4 **)(pcStack_81e8 + -0x7db4) = 1;" (assignment_expression "**(undefined4 **)(pcStack_81e8 + -0x7db4) = 1" (pointer_expression "**(undefined4 **)(pcStack_81e8 + -0x7db4)" * (pointer_expression "*(undefined4 **)(pcStack_81e8 + -0x7db4)" * (cast_expression "(undefined4 **)(pcStack_81e8 + -0x7db4)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_81e8 + -0x7db4)" ( (binary_expression "pcStack_81e8 + -0x7db4" identifier + number_literal) ))))) = number_literal) ;) (expression_statement "pcVar27 = (char *)0x1;" (assignment_expression "pcVar27 = (char *)0x1" identifier = (cast_expression "(char *)0x1" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "FUN_000280f4(&cStack_81d5);" (call_expression "FUN_000280f4(&cStack_81d5)" identifier (argument_list "(&cStack_81d5)" ( (pointer_expression "&cStack_81d5" & identifier) ))) ;) (expression_statement "pcVar28 = *(code **)(pcStack_81e8 + -0x7c44);" (assignment_expression "pcVar28 = *(code **)(pcStack_81e8 + -0x7c44)" identifier = (pointer_expression "*(code **)(pcStack_81e8 + -0x7c44)" * (cast_expression "(code **)(pcStack_81e8 + -0x7c44)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_81e8 + -0x7c44)" ( (binary_expression "pcStack_81e8 + -0x7c44" identifier + number_literal) ))))) ;) })) })) (expression_statement "(*pcVar28)();" (call_expression "(*pcVar28)()" (parenthesized_expression "(*pcVar28)" ( (pointer_expression "*pcVar28" * identifier) )) (argument_list "()" ( ))) ;) (expression_statement "cmdline_cleanup();" (call_expression "cmdline_cleanup()" identifier (argument_list "()" ( ))) ;) (expression_statement "(**(code **)(pcStack_81e8 + -0x7d88))(0);" (call_expression "(**(code **)(pcStack_81e8 + -0x7d88))(0)" (parenthesized_expression "(**(code **)(pcStack_81e8 + -0x7d88))" ( (pointer_expression "**(code **)(pcStack_81e8 + -0x7d88)" * (pointer_expression "*(code **)(pcStack_81e8 + -0x7d88)" * (cast_expression "(code **)(pcStack_81e8 + -0x7d88)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_81e8 + -0x7d88)" ( (binary_expression "pcStack_81e8 + -0x7d88" identifier + number_literal) ))))) )) (argument_list "(0)" ( number_literal ))) ;) (expression_statement "iVar20 = *(int *)(pcStack_81e8 + -0x7fd8);" (assignment_expression "iVar20 = *(int *)(pcStack_81e8 + -0x7fd8)" identifier = (pointer_expression "*(int *)(pcStack_81e8 + -0x7fd8)" * (cast_expression "(int *)(pcStack_81e8 + -0x7fd8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_81e8 + -0x7fd8)" ( (binary_expression "pcStack_81e8 + -0x7fd8" identifier + number_literal) ))))) ;) (expression_statement "iVar24 = *(int *)(pcStack_81e8 + -0x7fd8);" (assignment_expression "iVar24 = *(int *)(pcStack_81e8 + -0x7fd8)" identifier = (pointer_expression "*(int *)(pcStack_81e8 + -0x7fd8)" * (cast_expression "(int *)(pcStack_81e8 + -0x7fd8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_81e8 + -0x7fd8)" ( (binary_expression "pcStack_81e8 + -0x7fd8" identifier + number_literal) ))))) ;) (expression_statement "(**(code **)(*(int *)(iVar24 + -0x31f4) + 4))(*(undefined4 *)(iVar20 + -0x31f8));" (call_expression "(**(code **)(*(int *)(iVar24 + -0x31f4) + 4))(*(undefined4 *)(iVar20 + -0x31f8))" (parenthesized_expression "(**(code **)(*(int *)(iVar24 + -0x31f4) + 4))" ( (pointer_expression "**(code **)(*(int *)(iVar24 + -0x31f4) + 4)" * (pointer_expression "*(code **)(*(int *)(iVar24 + -0x31f4) + 4)" * (cast_expression "(code **)(*(int *)(iVar24 + -0x31f4) + 4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*(int *)(iVar24 + -0x31f4) + 4)" ( (binary_expression "*(int *)(iVar24 + -0x31f4) + 4" (pointer_expression "*(int *)(iVar24 + -0x31f4)" * (cast_expression "(int *)(iVar24 + -0x31f4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar24 + -0x31f4)" ( (binary_expression "iVar24 + -0x31f4" identifier + number_literal) )))) + number_literal) ))))) )) (argument_list "(*(undefined4 *)(iVar20 + -0x31f8))" ( (pointer_expression "*(undefined4 *)(iVar20 + -0x31f8)" * (cast_expression "(undefined4 *)(iVar20 + -0x31f8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar20 + -0x31f8)" ( (binary_expression "iVar20 + -0x31f8" identifier + number_literal) )))) ))) ;) (expression_statement "*(undefined4 *)(iVar20 + -0x31f8) = 0;" (assignment_expression "*(undefined4 *)(iVar20 + -0x31f8) = 0" (pointer_expression "*(undefined4 *)(iVar20 + -0x31f8)" * (cast_expression "(undefined4 *)(iVar20 + -0x31f8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar20 + -0x31f8)" ( (binary_expression "iVar20 + -0x31f8" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(iVar24 + -0x31f4) = 0;" (assignment_expression "*(undefined4 *)(iVar24 + -0x31f4) = 0" (pointer_expression "*(undefined4 *)(iVar24 + -0x31f4)" * (cast_expression "(undefined4 *)(iVar24 + -0x31f4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar24 + -0x31f4)" ( (binary_expression "iVar24 + -0x31f4" identifier + number_literal) )))) = number_literal) ;) (expression_statement "(**(code **)(pcStack_81e8 + -0x7c3c))();" (call_expression "(**(code **)(pcStack_81e8 + -0x7c3c))()" (parenthesized_expression "(**(code **)(pcStack_81e8 + -0x7c3c))" ( (pointer_expression "**(code **)(pcStack_81e8 + -0x7c3c)" * (pointer_expression "*(code **)(pcStack_81e8 + -0x7c3c)" * (cast_expression "(code **)(pcStack_81e8 + -0x7c3c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_81e8 + -0x7c3c)" ( (binary_expression "pcStack_81e8 + -0x7c3c" identifier + number_literal) ))))) )) (argument_list "()" ( ))) ;) (expression_statement "uVar3 = (uint)(*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31e0) != 0);" (assignment_expression "uVar3 = (uint)(*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31e0) != 0)" identifier = (call_expression "(uint)(*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31e0) != 0)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31e0) != 0)" ( (binary_expression "*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31e0) != 0" (pointer_expression "*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31e0)" * (cast_expression "(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31e0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31e0)" ( (binary_expression "*(int *)(pcStack_81e8 + -0x7fd8) + -0x31e0" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fd8)" * (cast_expression "(int *)(pcStack_81e8 + -0x7fd8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_81e8 + -0x7fd8)" ( (binary_expression "pcStack_81e8 + -0x7fd8" identifier + number_literal) )))) + number_literal) )))) != number_literal) )))) ;) (labeled_statement "LAB_0002e878:\n  if (puStack_81d4 == (undefined4 *)**(int **)(pcStack_81e8 + -0x7478)) {\n    return uVar3;\n  }" statement_identifier : (if_statement "if (puStack_81d4 == (undefined4 *)**(int **)(pcStack_81e8 + -0x7478)) {\n    return uVar3;\n  }" if (parenthesized_expression "(puStack_81d4 == (undefined4 *)**(int **)(pcStack_81e8 + -0x7478))" ( (binary_expression "puStack_81d4 == (undefined4 *)**(int **)(pcStack_81e8 + -0x7478)" identifier == (cast_expression "(undefined4 *)**(int **)(pcStack_81e8 + -0x7478)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "**(int **)(pcStack_81e8 + -0x7478)" * (pointer_expression "*(int **)(pcStack_81e8 + -0x7478)" * (cast_expression "(int **)(pcStack_81e8 + -0x7478)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_81e8 + -0x7478)" ( (binary_expression "pcStack_81e8 + -0x7478" identifier + number_literal) ))))))) )) (compound_statement "{\n    return uVar3;\n  }" { (return_statement "return uVar3;" return identifier ;) }))) (expression_statement "pcVar28 = *(code **)(pcStack_81e8 + -0x74a0);" (assignment_expression "pcVar28 = *(code **)(pcStack_81e8 + -0x74a0)" identifier = (pointer_expression "*(code **)(pcStack_81e8 + -0x74a0)" * (cast_expression "(code **)(pcStack_81e8 + -0x74a0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_81e8 + -0x74a0)" ( (binary_expression "pcStack_81e8 + -0x74a0" identifier + number_literal) ))))) ;) (expression_statement "uVar12 = 0x2f008;" (assignment_expression "uVar12 = 0x2f008" identifier = number_literal) ;) (expression_statement "puVar23 = puStack_81d4;" (assignment_expression "puVar23 = puStack_81d4" identifier = identifier) ;) (expression_statement "(*pcVar28)();" (call_expression "(*pcVar28)()" (parenthesized_expression "(*pcVar28)" ( (pointer_expression "*pcVar28" * identifier) )) (argument_list "()" ( ))) ;) (expression_statement "pcStack_8218 = pcVar28 + 0x95140;" (assignment_expression "pcStack_8218 = pcVar28 + 0x95140" identifier = (binary_expression "pcVar28 + 0x95140" identifier + number_literal)) ;) (expression_statement "uVar7 = *puVar23;" (assignment_expression "uVar7 = *puVar23" identifier = (pointer_expression "*puVar23" * identifier)) ;) (expression_statement "uVar6 = *(undefined4 *)pcVar27;" (assignment_expression "uVar6 = *(undefined4 *)pcVar27" identifier = (pointer_expression "*(undefined4 *)pcVar27" * (cast_expression "(undefined4 *)pcVar27" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier))) ;) (expression_statement "iStack_820c = iVar24;" (assignment_expression "iStack_820c = iVar24" identifier = identifier) ;) (expression_statement "iStack_8208 = iVar20;" (assignment_expression "iStack_8208 = iVar20" identifier = identifier) ;) (expression_statement "uStack_8204 = uVar12;" (assignment_expression "uStack_8204 = uVar12" identifier = identifier) ;) (expression_statement "iVar2 = (**(code **)(pcVar28 + 0x8dd04))(uVar7,*(int *)(pcVar28 + 0x8d178) + -0x4584);" (assignment_expression "iVar2 = (**(code **)(pcVar28 + 0x8dd04))(uVar7,*(int *)(pcVar28 + 0x8d178) + -0x4584)" identifier = (call_expression "(**(code **)(pcVar28 + 0x8dd04))(uVar7,*(int *)(pcVar28 + 0x8d178) + -0x4584)" (parenthesized_expression "(**(code **)(pcVar28 + 0x8dd04))" ( (pointer_expression "**(code **)(pcVar28 + 0x8dd04)" * (pointer_expression "*(code **)(pcVar28 + 0x8dd04)" * (cast_expression "(code **)(pcVar28 + 0x8dd04)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar28 + 0x8dd04)" ( (binary_expression "pcVar28 + 0x8dd04" identifier + number_literal) ))))) )) (argument_list "(uVar7,*(int *)(pcVar28 + 0x8d178) + -0x4584)" ( identifier , (binary_expression "*(int *)(pcVar28 + 0x8d178) + -0x4584" (pointer_expression "*(int *)(pcVar28 + 0x8d178)" * (cast_expression "(int *)(pcVar28 + 0x8d178)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar28 + 0x8d178)" ( (binary_expression "pcVar28 + 0x8d178" identifier + number_literal) )))) + number_literal) )))) ;) (if_statement "if (iVar2 == 0) {\n    uVar3 = 0xffffffff;\n  }\n  else {\n    iVar2 = (**(code **)(pcStack_8218 + -0x743c))(uVar6,*(int *)(pcStack_8218 + -0x7fc8) + -0x4584);\n    if (iVar2 == 0) {\n      uVar3 = 1;\n    }\n    else {\n      uVar3 = (**(code **)(pcStack_8218 + -0x743c))(uVar7,uVar6);\n    }\n  }" if (parenthesized_expression "(iVar2 == 0)" ( (binary_expression "iVar2 == 0" identifier == number_literal) )) (compound_statement "{\n    uVar3 = 0xffffffff;\n  }" { (expression_statement "uVar3 = 0xffffffff;" (assignment_expression "uVar3 = 0xffffffff" identifier = number_literal) ;) }) (else_clause "else {\n    iVar2 = (**(code **)(pcStack_8218 + -0x743c))(uVar6,*(int *)(pcStack_8218 + -0x7fc8) + -0x4584);\n    if (iVar2 == 0) {\n      uVar3 = 1;\n    }\n    else {\n      uVar3 = (**(code **)(pcStack_8218 + -0x743c))(uVar7,uVar6);\n    }\n  }" else (compound_statement "{\n    iVar2 = (**(code **)(pcStack_8218 + -0x743c))(uVar6,*(int *)(pcStack_8218 + -0x7fc8) + -0x4584);\n    if (iVar2 == 0) {\n      uVar3 = 1;\n    }\n    else {\n      uVar3 = (**(code **)(pcStack_8218 + -0x743c))(uVar7,uVar6);\n    }\n  }" { (expression_statement "iVar2 = (**(code **)(pcStack_8218 + -0x743c))(uVar6,*(int *)(pcStack_8218 + -0x7fc8) + -0x4584);" (assignment_expression "iVar2 = (**(code **)(pcStack_8218 + -0x743c))(uVar6,*(int *)(pcStack_8218 + -0x7fc8) + -0x4584)" identifier = (call_expression "(**(code **)(pcStack_8218 + -0x743c))(uVar6,*(int *)(pcStack_8218 + -0x7fc8) + -0x4584)" (parenthesized_expression "(**(code **)(pcStack_8218 + -0x743c))" ( (pointer_expression "**(code **)(pcStack_8218 + -0x743c)" * (pointer_expression "*(code **)(pcStack_8218 + -0x743c)" * (cast_expression "(code **)(pcStack_8218 + -0x743c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_8218 + -0x743c)" ( (binary_expression "pcStack_8218 + -0x743c" identifier + number_literal) ))))) )) (argument_list "(uVar6,*(int *)(pcStack_8218 + -0x7fc8) + -0x4584)" ( identifier , (binary_expression "*(int *)(pcStack_8218 + -0x7fc8) + -0x4584" (pointer_expression "*(int *)(pcStack_8218 + -0x7fc8)" * (cast_expression "(int *)(pcStack_8218 + -0x7fc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_8218 + -0x7fc8)" ( (binary_expression "pcStack_8218 + -0x7fc8" identifier + number_literal) )))) + number_literal) )))) ;) (if_statement "if (iVar2 == 0) {\n      uVar3 = 1;\n    }\n    else {\n      uVar3 = (**(code **)(pcStack_8218 + -0x743c))(uVar7,uVar6);\n    }" if (parenthesized_expression "(iVar2 == 0)" ( (binary_expression "iVar2 == 0" identifier == number_literal) )) (compound_statement "{\n      uVar3 = 1;\n    }" { (expression_statement "uVar3 = 1;" (assignment_expression "uVar3 = 1" identifier = number_literal) ;) }) (else_clause "else {\n      uVar3 = (**(code **)(pcStack_8218 + -0x743c))(uVar7,uVar6);\n    }" else (compound_statement "{\n      uVar3 = (**(code **)(pcStack_8218 + -0x743c))(uVar7,uVar6);\n    }" { (expression_statement "uVar3 = (**(code **)(pcStack_8218 + -0x743c))(uVar7,uVar6);" (assignment_expression "uVar3 = (**(code **)(pcStack_8218 + -0x743c))(uVar7,uVar6)" identifier = (call_expression "(**(code **)(pcStack_8218 + -0x743c))(uVar7,uVar6)" (parenthesized_expression "(**(code **)(pcStack_8218 + -0x743c))" ( (pointer_expression "**(code **)(pcStack_8218 + -0x743c)" * (pointer_expression "*(code **)(pcStack_8218 + -0x743c)" * (cast_expression "(code **)(pcStack_8218 + -0x743c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_8218 + -0x743c)" ( (binary_expression "pcStack_8218 + -0x743c" identifier + number_literal) ))))) )) (argument_list "(uVar7,uVar6)" ( identifier , identifier )))) ;) }))) }))) (return_statement "return uVar3;" return identifier ;) (labeled_statement "LAB_0002de88:\n  if (iStack_80c0 != 0) {\n    (**(code **)(pcStack_8138 + -0x7c60))(unaff_s5,uStack_80b8,uStack_80bc);\n  }" statement_identifier : (if_statement "if (iStack_80c0 != 0) {\n    (**(code **)(pcStack_8138 + -0x7c60))(unaff_s5,uStack_80b8,uStack_80bc);\n  }" if (parenthesized_expression "(iStack_80c0 != 0)" ( (binary_expression "iStack_80c0 != 0" identifier != number_literal) )) (compound_statement "{\n    (**(code **)(pcStack_8138 + -0x7c60))(unaff_s5,uStack_80b8,uStack_80bc);\n  }" { (expression_statement "(**(code **)(pcStack_8138 + -0x7c60))(unaff_s5,uStack_80b8,uStack_80bc);" (call_expression "(**(code **)(pcStack_8138 + -0x7c60))(unaff_s5,uStack_80b8,uStack_80bc)" (parenthesized_expression "(**(code **)(pcStack_8138 + -0x7c60))" ( (pointer_expression "**(code **)(pcStack_8138 + -0x7c60)" * (pointer_expression "*(code **)(pcStack_8138 + -0x7c60)" * (cast_expression "(code **)(pcStack_8138 + -0x7c60)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_8138 + -0x7c60)" ( (binary_expression "pcStack_8138 + -0x7c60" identifier + number_literal) ))))) )) (argument_list "(unaff_s5,uStack_80b8,uStack_80bc)" ( identifier , identifier , identifier ))) ;) }))) (expression_statement "(**(code **)(pcStack_8138 + -0x7c70))(unaff_s5);" (call_expression "(**(code **)(pcStack_8138 + -0x7c70))(unaff_s5)" (parenthesized_expression "(**(code **)(pcStack_8138 + -0x7c70))" ( (pointer_expression "**(code **)(pcStack_8138 + -0x7c70)" * (pointer_expression "*(code **)(pcStack_8138 + -0x7c70)" * (cast_expression "(code **)(pcStack_8138 + -0x7c70)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_8138 + -0x7c70)" ( (binary_expression "pcStack_8138 + -0x7c70" identifier + number_literal) ))))) )) (argument_list "(unaff_s5)" ( identifier ))) ;) (if_statement "if (iVar24 == 0) {\n    scp_finish_filerecv();\n    safefree(unaff_s3);\n    safefree(uStack_80d4);\n  }\n  else {\n    FUN_0002a658(*(int *)(pcStack_8138 + -0x7fc8) + -0x483c,unaff_s3);\n    safefree(unaff_s3);\n  }" if (parenthesized_expression "(iVar24 == 0)" ( (binary_expression "iVar24 == 0" identifier == number_literal) )) (compound_statement "{\n    scp_finish_filerecv();\n    safefree(unaff_s3);\n    safefree(uStack_80d4);\n  }" { (expression_statement "scp_finish_filerecv();" (call_expression "scp_finish_filerecv()" identifier (argument_list "()" ( ))) ;) (expression_statement "safefree(unaff_s3);" (call_expression "safefree(unaff_s3)" identifier (argument_list "(unaff_s3)" ( identifier ))) ;) (expression_statement "safefree(uStack_80d4);" (call_expression "safefree(uStack_80d4)" identifier (argument_list "(uStack_80d4)" ( identifier ))) ;) }) (else_clause "else {\n    FUN_0002a658(*(int *)(pcStack_8138 + -0x7fc8) + -0x483c,unaff_s3);\n    safefree(unaff_s3);\n  }" else (compound_statement "{\n    FUN_0002a658(*(int *)(pcStack_8138 + -0x7fc8) + -0x483c,unaff_s3);\n    safefree(unaff_s3);\n  }" { (expression_statement "FUN_0002a658(*(int *)(pcStack_8138 + -0x7fc8) + -0x483c,unaff_s3);" (call_expression "FUN_0002a658(*(int *)(pcStack_8138 + -0x7fc8) + -0x483c,unaff_s3)" identifier (argument_list "(*(int *)(pcStack_8138 + -0x7fc8) + -0x483c,unaff_s3)" ( (binary_expression "*(int *)(pcStack_8138 + -0x7fc8) + -0x483c" (pointer_expression "*(int *)(pcStack_8138 + -0x7fc8)" * (cast_expression "(int *)(pcStack_8138 + -0x7fc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_8138 + -0x7fc8)" ( (binary_expression "pcStack_8138 + -0x7fc8" identifier + number_literal) )))) + number_literal) , identifier ))) ;) (expression_statement "safefree(unaff_s3);" (call_expression "safefree(unaff_s3)" identifier (argument_list "(unaff_s3)" ( identifier ))) ;) }))) (goto_statement "goto LAB_0002d77c;" goto statement_identifier ;) })))
(translation_unit "int scp_recv_filedata(char *data,int len)\n\n{\n  uint64 x;\n  undefined *puVar1;\n  sftp_packet *psVar2;\n  int iVar3;\n  sftp_request *req;\n  int iVar4;\n  code *pcVar5;\n  void *pvStackY_6c;\n  int iStackY_68;\n  int iStackY_64;\n  int iStackY_60;\n  undefined *puStackY_5c;\n  char *pcStackY_58;\n  undefined1 *puVar6;\n  ulong in_stack_ffffffcc;\n  undefined1 auStack_30 [12];\n  int actuallen;\n  void *vbuf;\n  int local_1c;\n  \n  puVar1 = PTR_DAT_000bc178;\n  puVar6 = &_gp;\n  local_1c = *(int *)PTR___stack_chk_guard_000bccd8;\n  if (*(int *)(PTR_DAT_000bc178 + -0x31ec) == 0) {\n    iVar3 = ssh_scp_recv((uchar *)data,len);\n    if (local_1c == **(int **)(puVar6 + -0x7478)) {\n      return iVar3;\n    }\n    pcVar5 = *(code **)(puVar6 + -0x74a0);\n    (*pcVar5)();\n    puStackY_5c = puVar1;\n    iStackY_64 = **(int **)(pcVar5 + 0x8fa44);\n    iStackY_60 = len;\n    pcStackY_58 = data;\n    if (*(int *)(*(int *)(pcVar5 + 0x8eee4) + -0x31ec) == 0) {\n      (**(code **)(*(int *)(*(int *)(pcVar5 + 0x8eee4) + -0x31f4) + 0xc))\n                (*(undefined4 *)(*(int *)(pcVar5 + 0x8eee4) + -0x31f8),\n                 *(int *)(pcVar5 + 0x8eef4) + -0x17dc,1);\n      iVar3 = response();\n    }\n    else {\n      xfer_set_error(*(fxp_xfer **)(*(int *)(pcVar5 + 0x8eee4) + -0x3244));\n      iVar3 = *(int *)(pcVar5 + 0x8eee4);\n      while( true ) {\n        iVar4 = xfer_done(*(fxp_xfer **)(iVar3 + -0x3244));\n        if (iVar4 != 0) break;\n        psVar2 = sftp_recv();\n        iVar4 = xfer_download_gotpkt(*(fxp_xfer **)(iVar3 + -0x3244),psVar2);\n        if (iVar4 < 1) {\n                    /* WARNING: Subroutine does not return */\n          fxp_error();\n        }\n        iVar4 = xfer_download_data(*(fxp_xfer **)(iVar3 + -0x3244),&pvStackY_6c,&iStackY_68);\n        if (iVar4 != 0) {\n                    /* WARNING: Subroutine does not return */\n          safefree(pvStackY_6c);\n        }\n      }\n      xfer_cleanup(*(fxp_xfer **)(*(int *)(pcVar5 + 0x8eee4) + -0x3244));\n      req = fxp_close_send(*(fxp_handle **)(*(int *)(pcVar5 + 0x8eee4) + -0x3240));\n      psVar2 = sftp_wait_for_reply(req);\n      fxp_close_recv(psVar2,req);\n      iVar3 = 0;\n    }\n    if (iStackY_64 == **(int **)(pcVar5 + 0x8fa44)) {\n      return iVar3;\n    }\n    pcVar5 = *(code **)(pcVar5 + 0x8fa1c);\n    iVar3 = iStackY_64;\n    (*pcVar5)();\n    iVar4 = (**(code **)(pcVar5 + 0x8ef84))();\n    if ((*(int *)(*(int *)(pcVar5 + 0x8ec98) + -0x31d4) != 0) && (iVar4 != 2)) {\n      bump((char *)(*(int *)(pcVar5 + 0x8eca8) + -0x4a68),iVar3);\n    }\n    scp_sink_init();\n    iVar3 = FUN_0002d778();\n    return iVar3;\n  }\n  xfer_download_queue(*(fxp_xfer **)(PTR_DAT_000bc178 + -0x3244));\n  psVar2 = sftp_recv();\n  iVar3 = xfer_download_gotpkt(*(fxp_xfer **)(puVar1 + -0x3244),psVar2);\n  if (iVar3 < 1) {\n                    /* WARNING: Subroutine does not return */\n    fxp_error();\n  }\n  iVar3 = xfer_download_data(*(fxp_xfer **)(*(int *)(puVar6 + -0x7fd8) + -0x3244),&vbuf,&actuallen);\n  if (iVar3 != 0) {\n    if (actuallen < 1) {\n      tell_user((FILE *)**(undefined4 **)(puVar6 + -0x7460),\n                (char *)(*(int *)(puVar6 + -0x7fc8) + -0x4a9c));\n      *(int *)(*(int *)(puVar6 + -0x7fd8) + -0x31e0) =\n           *(int *)(*(int *)(puVar6 + -0x7fd8) + -0x31e0) + 1;\n                    /* WARNING: Subroutine does not return */\n      safefree(vbuf);\n    }\n    if (actuallen <= len) {\n      iVar3 = (**(code **)(puVar6 + -0x7474))(data,vbuf);\n      return iVar3;\n    }\n    iVar3 = (**(code **)(puVar6 + -0x7650))\n                      (*(int *)(puVar6 + -0x7fc8) + -0x4a7c,*(int *)(puVar6 + -0x7fc8) + -0x4fb0,\n                       0x628,*(int *)(puVar6 + -0x7fc8) + -0x45f0);\n    return iVar3;\n  }\n  actuallen = 0;\n  x.hi = (ulong)puVar6;\n  x.lo = in_stack_ffffffcc;\n                    /* WARNING: Subroutine does not return */\n  uint64_add32(x,(ulong)auStack_30);\n}\n\n" (function_definition "int scp_recv_filedata(char *data,int len)\n\n{\n  uint64 x;\n  undefined *puVar1;\n  sftp_packet *psVar2;\n  int iVar3;\n  sftp_request *req;\n  int iVar4;\n  code *pcVar5;\n  void *pvStackY_6c;\n  int iStackY_68;\n  int iStackY_64;\n  int iStackY_60;\n  undefined *puStackY_5c;\n  char *pcStackY_58;\n  undefined1 *puVar6;\n  ulong in_stack_ffffffcc;\n  undefined1 auStack_30 [12];\n  int actuallen;\n  void *vbuf;\n  int local_1c;\n  \n  puVar1 = PTR_DAT_000bc178;\n  puVar6 = &_gp;\n  local_1c = *(int *)PTR___stack_chk_guard_000bccd8;\n  if (*(int *)(PTR_DAT_000bc178 + -0x31ec) == 0) {\n    iVar3 = ssh_scp_recv((uchar *)data,len);\n    if (local_1c == **(int **)(puVar6 + -0x7478)) {\n      return iVar3;\n    }\n    pcVar5 = *(code **)(puVar6 + -0x74a0);\n    (*pcVar5)();\n    puStackY_5c = puVar1;\n    iStackY_64 = **(int **)(pcVar5 + 0x8fa44);\n    iStackY_60 = len;\n    pcStackY_58 = data;\n    if (*(int *)(*(int *)(pcVar5 + 0x8eee4) + -0x31ec) == 0) {\n      (**(code **)(*(int *)(*(int *)(pcVar5 + 0x8eee4) + -0x31f4) + 0xc))\n                (*(undefined4 *)(*(int *)(pcVar5 + 0x8eee4) + -0x31f8),\n                 *(int *)(pcVar5 + 0x8eef4) + -0x17dc,1);\n      iVar3 = response();\n    }\n    else {\n      xfer_set_error(*(fxp_xfer **)(*(int *)(pcVar5 + 0x8eee4) + -0x3244));\n      iVar3 = *(int *)(pcVar5 + 0x8eee4);\n      while( true ) {\n        iVar4 = xfer_done(*(fxp_xfer **)(iVar3 + -0x3244));\n        if (iVar4 != 0) break;\n        psVar2 = sftp_recv();\n        iVar4 = xfer_download_gotpkt(*(fxp_xfer **)(iVar3 + -0x3244),psVar2);\n        if (iVar4 < 1) {\n                    /* WARNING: Subroutine does not return */\n          fxp_error();\n        }\n        iVar4 = xfer_download_data(*(fxp_xfer **)(iVar3 + -0x3244),&pvStackY_6c,&iStackY_68);\n        if (iVar4 != 0) {\n                    /* WARNING: Subroutine does not return */\n          safefree(pvStackY_6c);\n        }\n      }\n      xfer_cleanup(*(fxp_xfer **)(*(int *)(pcVar5 + 0x8eee4) + -0x3244));\n      req = fxp_close_send(*(fxp_handle **)(*(int *)(pcVar5 + 0x8eee4) + -0x3240));\n      psVar2 = sftp_wait_for_reply(req);\n      fxp_close_recv(psVar2,req);\n      iVar3 = 0;\n    }\n    if (iStackY_64 == **(int **)(pcVar5 + 0x8fa44)) {\n      return iVar3;\n    }\n    pcVar5 = *(code **)(pcVar5 + 0x8fa1c);\n    iVar3 = iStackY_64;\n    (*pcVar5)();\n    iVar4 = (**(code **)(pcVar5 + 0x8ef84))();\n    if ((*(int *)(*(int *)(pcVar5 + 0x8ec98) + -0x31d4) != 0) && (iVar4 != 2)) {\n      bump((char *)(*(int *)(pcVar5 + 0x8eca8) + -0x4a68),iVar3);\n    }\n    scp_sink_init();\n    iVar3 = FUN_0002d778();\n    return iVar3;\n  }\n  xfer_download_queue(*(fxp_xfer **)(PTR_DAT_000bc178 + -0x3244));\n  psVar2 = sftp_recv();\n  iVar3 = xfer_download_gotpkt(*(fxp_xfer **)(puVar1 + -0x3244),psVar2);\n  if (iVar3 < 1) {\n                    /* WARNING: Subroutine does not return */\n    fxp_error();\n  }\n  iVar3 = xfer_download_data(*(fxp_xfer **)(*(int *)(puVar6 + -0x7fd8) + -0x3244),&vbuf,&actuallen);\n  if (iVar3 != 0) {\n    if (actuallen < 1) {\n      tell_user((FILE *)**(undefined4 **)(puVar6 + -0x7460),\n                (char *)(*(int *)(puVar6 + -0x7fc8) + -0x4a9c));\n      *(int *)(*(int *)(puVar6 + -0x7fd8) + -0x31e0) =\n           *(int *)(*(int *)(puVar6 + -0x7fd8) + -0x31e0) + 1;\n                    /* WARNING: Subroutine does not return */\n      safefree(vbuf);\n    }\n    if (actuallen <= len) {\n      iVar3 = (**(code **)(puVar6 + -0x7474))(data,vbuf);\n      return iVar3;\n    }\n    iVar3 = (**(code **)(puVar6 + -0x7650))\n                      (*(int *)(puVar6 + -0x7fc8) + -0x4a7c,*(int *)(puVar6 + -0x7fc8) + -0x4fb0,\n                       0x628,*(int *)(puVar6 + -0x7fc8) + -0x45f0);\n    return iVar3;\n  }\n  actuallen = 0;\n  x.hi = (ulong)puVar6;\n  x.lo = in_stack_ffffffcc;\n                    /* WARNING: Subroutine does not return */\n  uint64_add32(x,(ulong)auStack_30);\n}" primitive_type (function_declarator "scp_recv_filedata(char *data,int len)" identifier (parameter_list "(char *data,int len)" ( (parameter_declaration "char *data" primitive_type (pointer_declarator "*data" * identifier)) , (parameter_declaration "int len" primitive_type identifier) ))) (compound_statement "{\n  uint64 x;\n  undefined *puVar1;\n  sftp_packet *psVar2;\n  int iVar3;\n  sftp_request *req;\n  int iVar4;\n  code *pcVar5;\n  void *pvStackY_6c;\n  int iStackY_68;\n  int iStackY_64;\n  int iStackY_60;\n  undefined *puStackY_5c;\n  char *pcStackY_58;\n  undefined1 *puVar6;\n  ulong in_stack_ffffffcc;\n  undefined1 auStack_30 [12];\n  int actuallen;\n  void *vbuf;\n  int local_1c;\n  \n  puVar1 = PTR_DAT_000bc178;\n  puVar6 = &_gp;\n  local_1c = *(int *)PTR___stack_chk_guard_000bccd8;\n  if (*(int *)(PTR_DAT_000bc178 + -0x31ec) == 0) {\n    iVar3 = ssh_scp_recv((uchar *)data,len);\n    if (local_1c == **(int **)(puVar6 + -0x7478)) {\n      return iVar3;\n    }\n    pcVar5 = *(code **)(puVar6 + -0x74a0);\n    (*pcVar5)();\n    puStackY_5c = puVar1;\n    iStackY_64 = **(int **)(pcVar5 + 0x8fa44);\n    iStackY_60 = len;\n    pcStackY_58 = data;\n    if (*(int *)(*(int *)(pcVar5 + 0x8eee4) + -0x31ec) == 0) {\n      (**(code **)(*(int *)(*(int *)(pcVar5 + 0x8eee4) + -0x31f4) + 0xc))\n                (*(undefined4 *)(*(int *)(pcVar5 + 0x8eee4) + -0x31f8),\n                 *(int *)(pcVar5 + 0x8eef4) + -0x17dc,1);\n      iVar3 = response();\n    }\n    else {\n      xfer_set_error(*(fxp_xfer **)(*(int *)(pcVar5 + 0x8eee4) + -0x3244));\n      iVar3 = *(int *)(pcVar5 + 0x8eee4);\n      while( true ) {\n        iVar4 = xfer_done(*(fxp_xfer **)(iVar3 + -0x3244));\n        if (iVar4 != 0) break;\n        psVar2 = sftp_recv();\n        iVar4 = xfer_download_gotpkt(*(fxp_xfer **)(iVar3 + -0x3244),psVar2);\n        if (iVar4 < 1) {\n                    /* WARNING: Subroutine does not return */\n          fxp_error();\n        }\n        iVar4 = xfer_download_data(*(fxp_xfer **)(iVar3 + -0x3244),&pvStackY_6c,&iStackY_68);\n        if (iVar4 != 0) {\n                    /* WARNING: Subroutine does not return */\n          safefree(pvStackY_6c);\n        }\n      }\n      xfer_cleanup(*(fxp_xfer **)(*(int *)(pcVar5 + 0x8eee4) + -0x3244));\n      req = fxp_close_send(*(fxp_handle **)(*(int *)(pcVar5 + 0x8eee4) + -0x3240));\n      psVar2 = sftp_wait_for_reply(req);\n      fxp_close_recv(psVar2,req);\n      iVar3 = 0;\n    }\n    if (iStackY_64 == **(int **)(pcVar5 + 0x8fa44)) {\n      return iVar3;\n    }\n    pcVar5 = *(code **)(pcVar5 + 0x8fa1c);\n    iVar3 = iStackY_64;\n    (*pcVar5)();\n    iVar4 = (**(code **)(pcVar5 + 0x8ef84))();\n    if ((*(int *)(*(int *)(pcVar5 + 0x8ec98) + -0x31d4) != 0) && (iVar4 != 2)) {\n      bump((char *)(*(int *)(pcVar5 + 0x8eca8) + -0x4a68),iVar3);\n    }\n    scp_sink_init();\n    iVar3 = FUN_0002d778();\n    return iVar3;\n  }\n  xfer_download_queue(*(fxp_xfer **)(PTR_DAT_000bc178 + -0x3244));\n  psVar2 = sftp_recv();\n  iVar3 = xfer_download_gotpkt(*(fxp_xfer **)(puVar1 + -0x3244),psVar2);\n  if (iVar3 < 1) {\n                    /* WARNING: Subroutine does not return */\n    fxp_error();\n  }\n  iVar3 = xfer_download_data(*(fxp_xfer **)(*(int *)(puVar6 + -0x7fd8) + -0x3244),&vbuf,&actuallen);\n  if (iVar3 != 0) {\n    if (actuallen < 1) {\n      tell_user((FILE *)**(undefined4 **)(puVar6 + -0x7460),\n                (char *)(*(int *)(puVar6 + -0x7fc8) + -0x4a9c));\n      *(int *)(*(int *)(puVar6 + -0x7fd8) + -0x31e0) =\n           *(int *)(*(int *)(puVar6 + -0x7fd8) + -0x31e0) + 1;\n                    /* WARNING: Subroutine does not return */\n      safefree(vbuf);\n    }\n    if (actuallen <= len) {\n      iVar3 = (**(code **)(puVar6 + -0x7474))(data,vbuf);\n      return iVar3;\n    }\n    iVar3 = (**(code **)(puVar6 + -0x7650))\n                      (*(int *)(puVar6 + -0x7fc8) + -0x4a7c,*(int *)(puVar6 + -0x7fc8) + -0x4fb0,\n                       0x628,*(int *)(puVar6 + -0x7fc8) + -0x45f0);\n    return iVar3;\n  }\n  actuallen = 0;\n  x.hi = (ulong)puVar6;\n  x.lo = in_stack_ffffffcc;\n                    /* WARNING: Subroutine does not return */\n  uint64_add32(x,(ulong)auStack_30);\n}" { (declaration "uint64 x;" type_identifier identifier ;) (declaration "undefined *puVar1;" type_identifier (pointer_declarator "*puVar1" * identifier) ;) (declaration "sftp_packet *psVar2;" type_identifier (pointer_declarator "*psVar2" * identifier) ;) (declaration "int iVar3;" primitive_type identifier ;) (declaration "sftp_request *req;" type_identifier (pointer_declarator "*req" * identifier) ;) (declaration "int iVar4;" primitive_type identifier ;) (declaration "code *pcVar5;" type_identifier (pointer_declarator "*pcVar5" * identifier) ;) (declaration "void *pvStackY_6c;" primitive_type (pointer_declarator "*pvStackY_6c" * identifier) ;) (declaration "int iStackY_68;" primitive_type identifier ;) (declaration "int iStackY_64;" primitive_type identifier ;) (declaration "int iStackY_60;" primitive_type identifier ;) (declaration "undefined *puStackY_5c;" type_identifier (pointer_declarator "*puStackY_5c" * identifier) ;) (declaration "char *pcStackY_58;" primitive_type (pointer_declarator "*pcStackY_58" * identifier) ;) (declaration "undefined1 *puVar6;" type_identifier (pointer_declarator "*puVar6" * identifier) ;) (declaration "ulong in_stack_ffffffcc;" type_identifier identifier ;) (declaration "undefined1 auStack_30 [12];" type_identifier (array_declarator "auStack_30 [12]" identifier [ number_literal ]) ;) (declaration "int actuallen;" primitive_type identifier ;) (declaration "void *vbuf;" primitive_type (pointer_declarator "*vbuf" * identifier) ;) (declaration "int local_1c;" primitive_type identifier ;) (expression_statement "puVar1 = PTR_DAT_000bc178;" (assignment_expression "puVar1 = PTR_DAT_000bc178" identifier = identifier) ;) (expression_statement "puVar6 = &_gp;" (assignment_expression "puVar6 = &_gp" identifier = (pointer_expression "&_gp" & identifier)) ;) (expression_statement "local_1c = *(int *)PTR___stack_chk_guard_000bccd8;" (assignment_expression "local_1c = *(int *)PTR___stack_chk_guard_000bccd8" identifier = (pointer_expression "*(int *)PTR___stack_chk_guard_000bccd8" * (cast_expression "(int *)PTR___stack_chk_guard_000bccd8" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier))) ;) (if_statement "if (*(int *)(PTR_DAT_000bc178 + -0x31ec) == 0) {\n    iVar3 = ssh_scp_recv((uchar *)data,len);\n    if (local_1c == **(int **)(puVar6 + -0x7478)) {\n      return iVar3;\n    }\n    pcVar5 = *(code **)(puVar6 + -0x74a0);\n    (*pcVar5)();\n    puStackY_5c = puVar1;\n    iStackY_64 = **(int **)(pcVar5 + 0x8fa44);\n    iStackY_60 = len;\n    pcStackY_58 = data;\n    if (*(int *)(*(int *)(pcVar5 + 0x8eee4) + -0x31ec) == 0) {\n      (**(code **)(*(int *)(*(int *)(pcVar5 + 0x8eee4) + -0x31f4) + 0xc))\n                (*(undefined4 *)(*(int *)(pcVar5 + 0x8eee4) + -0x31f8),\n                 *(int *)(pcVar5 + 0x8eef4) + -0x17dc,1);\n      iVar3 = response();\n    }\n    else {\n      xfer_set_error(*(fxp_xfer **)(*(int *)(pcVar5 + 0x8eee4) + -0x3244));\n      iVar3 = *(int *)(pcVar5 + 0x8eee4);\n      while( true ) {\n        iVar4 = xfer_done(*(fxp_xfer **)(iVar3 + -0x3244));\n        if (iVar4 != 0) break;\n        psVar2 = sftp_recv();\n        iVar4 = xfer_download_gotpkt(*(fxp_xfer **)(iVar3 + -0x3244),psVar2);\n        if (iVar4 < 1) {\n                    /* WARNING: Subroutine does not return */\n          fxp_error();\n        }\n        iVar4 = xfer_download_data(*(fxp_xfer **)(iVar3 + -0x3244),&pvStackY_6c,&iStackY_68);\n        if (iVar4 != 0) {\n                    /* WARNING: Subroutine does not return */\n          safefree(pvStackY_6c);\n        }\n      }\n      xfer_cleanup(*(fxp_xfer **)(*(int *)(pcVar5 + 0x8eee4) + -0x3244));\n      req = fxp_close_send(*(fxp_handle **)(*(int *)(pcVar5 + 0x8eee4) + -0x3240));\n      psVar2 = sftp_wait_for_reply(req);\n      fxp_close_recv(psVar2,req);\n      iVar3 = 0;\n    }\n    if (iStackY_64 == **(int **)(pcVar5 + 0x8fa44)) {\n      return iVar3;\n    }\n    pcVar5 = *(code **)(pcVar5 + 0x8fa1c);\n    iVar3 = iStackY_64;\n    (*pcVar5)();\n    iVar4 = (**(code **)(pcVar5 + 0x8ef84))();\n    if ((*(int *)(*(int *)(pcVar5 + 0x8ec98) + -0x31d4) != 0) && (iVar4 != 2)) {\n      bump((char *)(*(int *)(pcVar5 + 0x8eca8) + -0x4a68),iVar3);\n    }\n    scp_sink_init();\n    iVar3 = FUN_0002d778();\n    return iVar3;\n  }" if (parenthesized_expression "(*(int *)(PTR_DAT_000bc178 + -0x31ec) == 0)" ( (binary_expression "*(int *)(PTR_DAT_000bc178 + -0x31ec) == 0" (pointer_expression "*(int *)(PTR_DAT_000bc178 + -0x31ec)" * (cast_expression "(int *)(PTR_DAT_000bc178 + -0x31ec)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_DAT_000bc178 + -0x31ec)" ( (binary_expression "PTR_DAT_000bc178 + -0x31ec" identifier + number_literal) )))) == number_literal) )) (compound_statement "{\n    iVar3 = ssh_scp_recv((uchar *)data,len);\n    if (local_1c == **(int **)(puVar6 + -0x7478)) {\n      return iVar3;\n    }\n    pcVar5 = *(code **)(puVar6 + -0x74a0);\n    (*pcVar5)();\n    puStackY_5c = puVar1;\n    iStackY_64 = **(int **)(pcVar5 + 0x8fa44);\n    iStackY_60 = len;\n    pcStackY_58 = data;\n    if (*(int *)(*(int *)(pcVar5 + 0x8eee4) + -0x31ec) == 0) {\n      (**(code **)(*(int *)(*(int *)(pcVar5 + 0x8eee4) + -0x31f4) + 0xc))\n                (*(undefined4 *)(*(int *)(pcVar5 + 0x8eee4) + -0x31f8),\n                 *(int *)(pcVar5 + 0x8eef4) + -0x17dc,1);\n      iVar3 = response();\n    }\n    else {\n      xfer_set_error(*(fxp_xfer **)(*(int *)(pcVar5 + 0x8eee4) + -0x3244));\n      iVar3 = *(int *)(pcVar5 + 0x8eee4);\n      while( true ) {\n        iVar4 = xfer_done(*(fxp_xfer **)(iVar3 + -0x3244));\n        if (iVar4 != 0) break;\n        psVar2 = sftp_recv();\n        iVar4 = xfer_download_gotpkt(*(fxp_xfer **)(iVar3 + -0x3244),psVar2);\n        if (iVar4 < 1) {\n                    /* WARNING: Subroutine does not return */\n          fxp_error();\n        }\n        iVar4 = xfer_download_data(*(fxp_xfer **)(iVar3 + -0x3244),&pvStackY_6c,&iStackY_68);\n        if (iVar4 != 0) {\n                    /* WARNING: Subroutine does not return */\n          safefree(pvStackY_6c);\n        }\n      }\n      xfer_cleanup(*(fxp_xfer **)(*(int *)(pcVar5 + 0x8eee4) + -0x3244));\n      req = fxp_close_send(*(fxp_handle **)(*(int *)(pcVar5 + 0x8eee4) + -0x3240));\n      psVar2 = sftp_wait_for_reply(req);\n      fxp_close_recv(psVar2,req);\n      iVar3 = 0;\n    }\n    if (iStackY_64 == **(int **)(pcVar5 + 0x8fa44)) {\n      return iVar3;\n    }\n    pcVar5 = *(code **)(pcVar5 + 0x8fa1c);\n    iVar3 = iStackY_64;\n    (*pcVar5)();\n    iVar4 = (**(code **)(pcVar5 + 0x8ef84))();\n    if ((*(int *)(*(int *)(pcVar5 + 0x8ec98) + -0x31d4) != 0) && (iVar4 != 2)) {\n      bump((char *)(*(int *)(pcVar5 + 0x8eca8) + -0x4a68),iVar3);\n    }\n    scp_sink_init();\n    iVar3 = FUN_0002d778();\n    return iVar3;\n  }" { (expression_statement "iVar3 = ssh_scp_recv((uchar *)data,len);" (assignment_expression "iVar3 = ssh_scp_recv((uchar *)data,len)" identifier = (call_expression "ssh_scp_recv((uchar *)data,len)" identifier (argument_list "((uchar *)data,len)" ( (cast_expression "(uchar *)data" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) , identifier )))) ;) (if_statement "if (local_1c == **(int **)(puVar6 + -0x7478)) {\n      return iVar3;\n    }" if (parenthesized_expression "(local_1c == **(int **)(puVar6 + -0x7478))" ( (binary_expression "local_1c == **(int **)(puVar6 + -0x7478)" identifier == (pointer_expression "**(int **)(puVar6 + -0x7478)" * (pointer_expression "*(int **)(puVar6 + -0x7478)" * (cast_expression "(int **)(puVar6 + -0x7478)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar6 + -0x7478)" ( (binary_expression "puVar6 + -0x7478" identifier + number_literal) )))))) )) (compound_statement "{\n      return iVar3;\n    }" { (return_statement "return iVar3;" return identifier ;) })) (expression_statement "pcVar5 = *(code **)(puVar6 + -0x74a0);" (assignment_expression "pcVar5 = *(code **)(puVar6 + -0x74a0)" identifier = (pointer_expression "*(code **)(puVar6 + -0x74a0)" * (cast_expression "(code **)(puVar6 + -0x74a0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar6 + -0x74a0)" ( (binary_expression "puVar6 + -0x74a0" identifier + number_literal) ))))) ;) (expression_statement "(*pcVar5)();" (call_expression "(*pcVar5)()" (parenthesized_expression "(*pcVar5)" ( (pointer_expression "*pcVar5" * identifier) )) (argument_list "()" ( ))) ;) (expression_statement "puStackY_5c = puVar1;" (assignment_expression "puStackY_5c = puVar1" identifier = identifier) ;) (expression_statement "iStackY_64 = **(int **)(pcVar5 + 0x8fa44);" (assignment_expression "iStackY_64 = **(int **)(pcVar5 + 0x8fa44)" identifier = (pointer_expression "**(int **)(pcVar5 + 0x8fa44)" * (pointer_expression "*(int **)(pcVar5 + 0x8fa44)" * (cast_expression "(int **)(pcVar5 + 0x8fa44)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar5 + 0x8fa44)" ( (binary_expression "pcVar5 + 0x8fa44" identifier + number_literal) )))))) ;) (expression_statement "iStackY_60 = len;" (assignment_expression "iStackY_60 = len" identifier = identifier) ;) (expression_statement "pcStackY_58 = data;" (assignment_expression "pcStackY_58 = data" identifier = identifier) ;) (if_statement "if (*(int *)(*(int *)(pcVar5 + 0x8eee4) + -0x31ec) == 0) {\n      (**(code **)(*(int *)(*(int *)(pcVar5 + 0x8eee4) + -0x31f4) + 0xc))\n                (*(undefined4 *)(*(int *)(pcVar5 + 0x8eee4) + -0x31f8),\n                 *(int *)(pcVar5 + 0x8eef4) + -0x17dc,1);\n      iVar3 = response();\n    }\n    else {\n      xfer_set_error(*(fxp_xfer **)(*(int *)(pcVar5 + 0x8eee4) + -0x3244));\n      iVar3 = *(int *)(pcVar5 + 0x8eee4);\n      while( true ) {\n        iVar4 = xfer_done(*(fxp_xfer **)(iVar3 + -0x3244));\n        if (iVar4 != 0) break;\n        psVar2 = sftp_recv();\n        iVar4 = xfer_download_gotpkt(*(fxp_xfer **)(iVar3 + -0x3244),psVar2);\n        if (iVar4 < 1) {\n                    /* WARNING: Subroutine does not return */\n          fxp_error();\n        }\n        iVar4 = xfer_download_data(*(fxp_xfer **)(iVar3 + -0x3244),&pvStackY_6c,&iStackY_68);\n        if (iVar4 != 0) {\n                    /* WARNING: Subroutine does not return */\n          safefree(pvStackY_6c);\n        }\n      }\n      xfer_cleanup(*(fxp_xfer **)(*(int *)(pcVar5 + 0x8eee4) + -0x3244));\n      req = fxp_close_send(*(fxp_handle **)(*(int *)(pcVar5 + 0x8eee4) + -0x3240));\n      psVar2 = sftp_wait_for_reply(req);\n      fxp_close_recv(psVar2,req);\n      iVar3 = 0;\n    }" if (parenthesized_expression "(*(int *)(*(int *)(pcVar5 + 0x8eee4) + -0x31ec) == 0)" ( (binary_expression "*(int *)(*(int *)(pcVar5 + 0x8eee4) + -0x31ec) == 0" (pointer_expression "*(int *)(*(int *)(pcVar5 + 0x8eee4) + -0x31ec)" * (cast_expression "(int *)(*(int *)(pcVar5 + 0x8eee4) + -0x31ec)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar5 + 0x8eee4) + -0x31ec)" ( (binary_expression "*(int *)(pcVar5 + 0x8eee4) + -0x31ec" (pointer_expression "*(int *)(pcVar5 + 0x8eee4)" * (cast_expression "(int *)(pcVar5 + 0x8eee4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar5 + 0x8eee4)" ( (binary_expression "pcVar5 + 0x8eee4" identifier + number_literal) )))) + number_literal) )))) == number_literal) )) (compound_statement "{\n      (**(code **)(*(int *)(*(int *)(pcVar5 + 0x8eee4) + -0x31f4) + 0xc))\n                (*(undefined4 *)(*(int *)(pcVar5 + 0x8eee4) + -0x31f8),\n                 *(int *)(pcVar5 + 0x8eef4) + -0x17dc,1);\n      iVar3 = response();\n    }" { (expression_statement "(**(code **)(*(int *)(*(int *)(pcVar5 + 0x8eee4) + -0x31f4) + 0xc))\n                (*(undefined4 *)(*(int *)(pcVar5 + 0x8eee4) + -0x31f8),\n                 *(int *)(pcVar5 + 0x8eef4) + -0x17dc,1);" (call_expression "(**(code **)(*(int *)(*(int *)(pcVar5 + 0x8eee4) + -0x31f4) + 0xc))\n                (*(undefined4 *)(*(int *)(pcVar5 + 0x8eee4) + -0x31f8),\n                 *(int *)(pcVar5 + 0x8eef4) + -0x17dc,1)" (parenthesized_expression "(**(code **)(*(int *)(*(int *)(pcVar5 + 0x8eee4) + -0x31f4) + 0xc))" ( (pointer_expression "**(code **)(*(int *)(*(int *)(pcVar5 + 0x8eee4) + -0x31f4) + 0xc)" * (pointer_expression "*(code **)(*(int *)(*(int *)(pcVar5 + 0x8eee4) + -0x31f4) + 0xc)" * (cast_expression "(code **)(*(int *)(*(int *)(pcVar5 + 0x8eee4) + -0x31f4) + 0xc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*(int *)(*(int *)(pcVar5 + 0x8eee4) + -0x31f4) + 0xc)" ( (binary_expression "*(int *)(*(int *)(pcVar5 + 0x8eee4) + -0x31f4) + 0xc" (pointer_expression "*(int *)(*(int *)(pcVar5 + 0x8eee4) + -0x31f4)" * (cast_expression "(int *)(*(int *)(pcVar5 + 0x8eee4) + -0x31f4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar5 + 0x8eee4) + -0x31f4)" ( (binary_expression "*(int *)(pcVar5 + 0x8eee4) + -0x31f4" (pointer_expression "*(int *)(pcVar5 + 0x8eee4)" * (cast_expression "(int *)(pcVar5 + 0x8eee4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar5 + 0x8eee4)" ( (binary_expression "pcVar5 + 0x8eee4" identifier + number_literal) )))) + number_literal) )))) + number_literal) ))))) )) (argument_list "(*(undefined4 *)(*(int *)(pcVar5 + 0x8eee4) + -0x31f8),\n                 *(int *)(pcVar5 + 0x8eef4) + -0x17dc,1)" ( (pointer_expression "*(undefined4 *)(*(int *)(pcVar5 + 0x8eee4) + -0x31f8)" * (cast_expression "(undefined4 *)(*(int *)(pcVar5 + 0x8eee4) + -0x31f8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar5 + 0x8eee4) + -0x31f8)" ( (binary_expression "*(int *)(pcVar5 + 0x8eee4) + -0x31f8" (pointer_expression "*(int *)(pcVar5 + 0x8eee4)" * (cast_expression "(int *)(pcVar5 + 0x8eee4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar5 + 0x8eee4)" ( (binary_expression "pcVar5 + 0x8eee4" identifier + number_literal) )))) + number_literal) )))) , (binary_expression "*(int *)(pcVar5 + 0x8eef4) + -0x17dc" (pointer_expression "*(int *)(pcVar5 + 0x8eef4)" * (cast_expression "(int *)(pcVar5 + 0x8eef4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar5 + 0x8eef4)" ( (binary_expression "pcVar5 + 0x8eef4" identifier + number_literal) )))) + number_literal) , number_literal ))) ;) (expression_statement "iVar3 = response();" (assignment_expression "iVar3 = response()" identifier = (call_expression "response()" identifier (argument_list "()" ( )))) ;) }) (else_clause "else {\n      xfer_set_error(*(fxp_xfer **)(*(int *)(pcVar5 + 0x8eee4) + -0x3244));\n      iVar3 = *(int *)(pcVar5 + 0x8eee4);\n      while( true ) {\n        iVar4 = xfer_done(*(fxp_xfer **)(iVar3 + -0x3244));\n        if (iVar4 != 0) break;\n        psVar2 = sftp_recv();\n        iVar4 = xfer_download_gotpkt(*(fxp_xfer **)(iVar3 + -0x3244),psVar2);\n        if (iVar4 < 1) {\n                    /* WARNING: Subroutine does not return */\n          fxp_error();\n        }\n        iVar4 = xfer_download_data(*(fxp_xfer **)(iVar3 + -0x3244),&pvStackY_6c,&iStackY_68);\n        if (iVar4 != 0) {\n                    /* WARNING: Subroutine does not return */\n          safefree(pvStackY_6c);\n        }\n      }\n      xfer_cleanup(*(fxp_xfer **)(*(int *)(pcVar5 + 0x8eee4) + -0x3244));\n      req = fxp_close_send(*(fxp_handle **)(*(int *)(pcVar5 + 0x8eee4) + -0x3240));\n      psVar2 = sftp_wait_for_reply(req);\n      fxp_close_recv(psVar2,req);\n      iVar3 = 0;\n    }" else (compound_statement "{\n      xfer_set_error(*(fxp_xfer **)(*(int *)(pcVar5 + 0x8eee4) + -0x3244));\n      iVar3 = *(int *)(pcVar5 + 0x8eee4);\n      while( true ) {\n        iVar4 = xfer_done(*(fxp_xfer **)(iVar3 + -0x3244));\n        if (iVar4 != 0) break;\n        psVar2 = sftp_recv();\n        iVar4 = xfer_download_gotpkt(*(fxp_xfer **)(iVar3 + -0x3244),psVar2);\n        if (iVar4 < 1) {\n                    /* WARNING: Subroutine does not return */\n          fxp_error();\n        }\n        iVar4 = xfer_download_data(*(fxp_xfer **)(iVar3 + -0x3244),&pvStackY_6c,&iStackY_68);\n        if (iVar4 != 0) {\n                    /* WARNING: Subroutine does not return */\n          safefree(pvStackY_6c);\n        }\n      }\n      xfer_cleanup(*(fxp_xfer **)(*(int *)(pcVar5 + 0x8eee4) + -0x3244));\n      req = fxp_close_send(*(fxp_handle **)(*(int *)(pcVar5 + 0x8eee4) + -0x3240));\n      psVar2 = sftp_wait_for_reply(req);\n      fxp_close_recv(psVar2,req);\n      iVar3 = 0;\n    }" { (expression_statement "xfer_set_error(*(fxp_xfer **)(*(int *)(pcVar5 + 0x8eee4) + -0x3244));" (call_expression "xfer_set_error(*(fxp_xfer **)(*(int *)(pcVar5 + 0x8eee4) + -0x3244))" identifier (argument_list "(*(fxp_xfer **)(*(int *)(pcVar5 + 0x8eee4) + -0x3244))" ( (pointer_expression "*(fxp_xfer **)(*(int *)(pcVar5 + 0x8eee4) + -0x3244)" * (cast_expression "(fxp_xfer **)(*(int *)(pcVar5 + 0x8eee4) + -0x3244)" ( (type_descriptor "fxp_xfer **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*(int *)(pcVar5 + 0x8eee4) + -0x3244)" ( (binary_expression "*(int *)(pcVar5 + 0x8eee4) + -0x3244" (pointer_expression "*(int *)(pcVar5 + 0x8eee4)" * (cast_expression "(int *)(pcVar5 + 0x8eee4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar5 + 0x8eee4)" ( (binary_expression "pcVar5 + 0x8eee4" identifier + number_literal) )))) + number_literal) )))) ))) ;) (expression_statement "iVar3 = *(int *)(pcVar5 + 0x8eee4);" (assignment_expression "iVar3 = *(int *)(pcVar5 + 0x8eee4)" identifier = (pointer_expression "*(int *)(pcVar5 + 0x8eee4)" * (cast_expression "(int *)(pcVar5 + 0x8eee4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar5 + 0x8eee4)" ( (binary_expression "pcVar5 + 0x8eee4" identifier + number_literal) ))))) ;) (while_statement "while( true ) {\n        iVar4 = xfer_done(*(fxp_xfer **)(iVar3 + -0x3244));\n        if (iVar4 != 0) break;\n        psVar2 = sftp_recv();\n        iVar4 = xfer_download_gotpkt(*(fxp_xfer **)(iVar3 + -0x3244),psVar2);\n        if (iVar4 < 1) {\n                    /* WARNING: Subroutine does not return */\n          fxp_error();\n        }\n        iVar4 = xfer_download_data(*(fxp_xfer **)(iVar3 + -0x3244),&pvStackY_6c,&iStackY_68);\n        if (iVar4 != 0) {\n                    /* WARNING: Subroutine does not return */\n          safefree(pvStackY_6c);\n        }\n      }" while (parenthesized_expression "( true )" ( true )) (compound_statement "{\n        iVar4 = xfer_done(*(fxp_xfer **)(iVar3 + -0x3244));\n        if (iVar4 != 0) break;\n        psVar2 = sftp_recv();\n        iVar4 = xfer_download_gotpkt(*(fxp_xfer **)(iVar3 + -0x3244),psVar2);\n        if (iVar4 < 1) {\n                    /* WARNING: Subroutine does not return */\n          fxp_error();\n        }\n        iVar4 = xfer_download_data(*(fxp_xfer **)(iVar3 + -0x3244),&pvStackY_6c,&iStackY_68);\n        if (iVar4 != 0) {\n                    /* WARNING: Subroutine does not return */\n          safefree(pvStackY_6c);\n        }\n      }" { (expression_statement "iVar4 = xfer_done(*(fxp_xfer **)(iVar3 + -0x3244));" (assignment_expression "iVar4 = xfer_done(*(fxp_xfer **)(iVar3 + -0x3244))" identifier = (call_expression "xfer_done(*(fxp_xfer **)(iVar3 + -0x3244))" identifier (argument_list "(*(fxp_xfer **)(iVar3 + -0x3244))" ( (pointer_expression "*(fxp_xfer **)(iVar3 + -0x3244)" * (cast_expression "(fxp_xfer **)(iVar3 + -0x3244)" ( (type_descriptor "fxp_xfer **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar3 + -0x3244)" ( (binary_expression "iVar3 + -0x3244" identifier + number_literal) )))) )))) ;) (if_statement "if (iVar4 != 0) break;" if (parenthesized_expression "(iVar4 != 0)" ( (binary_expression "iVar4 != 0" identifier != number_literal) )) (break_statement "break;" break ;)) (expression_statement "psVar2 = sftp_recv();" (assignment_expression "psVar2 = sftp_recv()" identifier = (call_expression "sftp_recv()" identifier (argument_list "()" ( )))) ;) (expression_statement "iVar4 = xfer_download_gotpkt(*(fxp_xfer **)(iVar3 + -0x3244),psVar2);" (assignment_expression "iVar4 = xfer_download_gotpkt(*(fxp_xfer **)(iVar3 + -0x3244),psVar2)" identifier = (call_expression "xfer_download_gotpkt(*(fxp_xfer **)(iVar3 + -0x3244),psVar2)" identifier (argument_list "(*(fxp_xfer **)(iVar3 + -0x3244),psVar2)" ( (pointer_expression "*(fxp_xfer **)(iVar3 + -0x3244)" * (cast_expression "(fxp_xfer **)(iVar3 + -0x3244)" ( (type_descriptor "fxp_xfer **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar3 + -0x3244)" ( (binary_expression "iVar3 + -0x3244" identifier + number_literal) )))) , identifier )))) ;) (if_statement "if (iVar4 < 1) {\n                    /* WARNING: Subroutine does not return */\n          fxp_error();\n        }" if (parenthesized_expression "(iVar4 < 1)" ( (binary_expression "iVar4 < 1" identifier < number_literal) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n          fxp_error();\n        }" { comment (expression_statement "fxp_error();" (call_expression "fxp_error()" identifier (argument_list "()" ( ))) ;) })) (expression_statement "iVar4 = xfer_download_data(*(fxp_xfer **)(iVar3 + -0x3244),&pvStackY_6c,&iStackY_68);" (assignment_expression "iVar4 = xfer_download_data(*(fxp_xfer **)(iVar3 + -0x3244),&pvStackY_6c,&iStackY_68)" identifier = (call_expression "xfer_download_data(*(fxp_xfer **)(iVar3 + -0x3244),&pvStackY_6c,&iStackY_68)" identifier (argument_list "(*(fxp_xfer **)(iVar3 + -0x3244),&pvStackY_6c,&iStackY_68)" ( (pointer_expression "*(fxp_xfer **)(iVar3 + -0x3244)" * (cast_expression "(fxp_xfer **)(iVar3 + -0x3244)" ( (type_descriptor "fxp_xfer **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar3 + -0x3244)" ( (binary_expression "iVar3 + -0x3244" identifier + number_literal) )))) , (pointer_expression "&pvStackY_6c" & identifier) , (pointer_expression "&iStackY_68" & identifier) )))) ;) (if_statement "if (iVar4 != 0) {\n                    /* WARNING: Subroutine does not return */\n          safefree(pvStackY_6c);\n        }" if (parenthesized_expression "(iVar4 != 0)" ( (binary_expression "iVar4 != 0" identifier != number_literal) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n          safefree(pvStackY_6c);\n        }" { comment (expression_statement "safefree(pvStackY_6c);" (call_expression "safefree(pvStackY_6c)" identifier (argument_list "(pvStackY_6c)" ( identifier ))) ;) })) })) (expression_statement "xfer_cleanup(*(fxp_xfer **)(*(int *)(pcVar5 + 0x8eee4) + -0x3244));" (call_expression "xfer_cleanup(*(fxp_xfer **)(*(int *)(pcVar5 + 0x8eee4) + -0x3244))" identifier (argument_list "(*(fxp_xfer **)(*(int *)(pcVar5 + 0x8eee4) + -0x3244))" ( (pointer_expression "*(fxp_xfer **)(*(int *)(pcVar5 + 0x8eee4) + -0x3244)" * (cast_expression "(fxp_xfer **)(*(int *)(pcVar5 + 0x8eee4) + -0x3244)" ( (type_descriptor "fxp_xfer **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*(int *)(pcVar5 + 0x8eee4) + -0x3244)" ( (binary_expression "*(int *)(pcVar5 + 0x8eee4) + -0x3244" (pointer_expression "*(int *)(pcVar5 + 0x8eee4)" * (cast_expression "(int *)(pcVar5 + 0x8eee4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar5 + 0x8eee4)" ( (binary_expression "pcVar5 + 0x8eee4" identifier + number_literal) )))) + number_literal) )))) ))) ;) (expression_statement "req = fxp_close_send(*(fxp_handle **)(*(int *)(pcVar5 + 0x8eee4) + -0x3240));" (assignment_expression "req = fxp_close_send(*(fxp_handle **)(*(int *)(pcVar5 + 0x8eee4) + -0x3240))" identifier = (call_expression "fxp_close_send(*(fxp_handle **)(*(int *)(pcVar5 + 0x8eee4) + -0x3240))" identifier (argument_list "(*(fxp_handle **)(*(int *)(pcVar5 + 0x8eee4) + -0x3240))" ( (pointer_expression "*(fxp_handle **)(*(int *)(pcVar5 + 0x8eee4) + -0x3240)" * (cast_expression "(fxp_handle **)(*(int *)(pcVar5 + 0x8eee4) + -0x3240)" ( (type_descriptor "fxp_handle **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*(int *)(pcVar5 + 0x8eee4) + -0x3240)" ( (binary_expression "*(int *)(pcVar5 + 0x8eee4) + -0x3240" (pointer_expression "*(int *)(pcVar5 + 0x8eee4)" * (cast_expression "(int *)(pcVar5 + 0x8eee4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar5 + 0x8eee4)" ( (binary_expression "pcVar5 + 0x8eee4" identifier + number_literal) )))) + number_literal) )))) )))) ;) (expression_statement "psVar2 = sftp_wait_for_reply(req);" (assignment_expression "psVar2 = sftp_wait_for_reply(req)" identifier = (call_expression "sftp_wait_for_reply(req)" identifier (argument_list "(req)" ( identifier )))) ;) (expression_statement "fxp_close_recv(psVar2,req);" (call_expression "fxp_close_recv(psVar2,req)" identifier (argument_list "(psVar2,req)" ( identifier , identifier ))) ;) (expression_statement "iVar3 = 0;" (assignment_expression "iVar3 = 0" identifier = number_literal) ;) }))) (if_statement "if (iStackY_64 == **(int **)(pcVar5 + 0x8fa44)) {\n      return iVar3;\n    }" if (parenthesized_expression "(iStackY_64 == **(int **)(pcVar5 + 0x8fa44))" ( (binary_expression "iStackY_64 == **(int **)(pcVar5 + 0x8fa44)" identifier == (pointer_expression "**(int **)(pcVar5 + 0x8fa44)" * (pointer_expression "*(int **)(pcVar5 + 0x8fa44)" * (cast_expression "(int **)(pcVar5 + 0x8fa44)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar5 + 0x8fa44)" ( (binary_expression "pcVar5 + 0x8fa44" identifier + number_literal) )))))) )) (compound_statement "{\n      return iVar3;\n    }" { (return_statement "return iVar3;" return identifier ;) })) (expression_statement "pcVar5 = *(code **)(pcVar5 + 0x8fa1c);" (assignment_expression "pcVar5 = *(code **)(pcVar5 + 0x8fa1c)" identifier = (pointer_expression "*(code **)(pcVar5 + 0x8fa1c)" * (cast_expression "(code **)(pcVar5 + 0x8fa1c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar5 + 0x8fa1c)" ( (binary_expression "pcVar5 + 0x8fa1c" identifier + number_literal) ))))) ;) (expression_statement "iVar3 = iStackY_64;" (assignment_expression "iVar3 = iStackY_64" identifier = identifier) ;) (expression_statement "(*pcVar5)();" (call_expression "(*pcVar5)()" (parenthesized_expression "(*pcVar5)" ( (pointer_expression "*pcVar5" * identifier) )) (argument_list "()" ( ))) ;) (expression_statement "iVar4 = (**(code **)(pcVar5 + 0x8ef84))();" (assignment_expression "iVar4 = (**(code **)(pcVar5 + 0x8ef84))()" identifier = (call_expression "(**(code **)(pcVar5 + 0x8ef84))()" (parenthesized_expression "(**(code **)(pcVar5 + 0x8ef84))" ( (pointer_expression "**(code **)(pcVar5 + 0x8ef84)" * (pointer_expression "*(code **)(pcVar5 + 0x8ef84)" * (cast_expression "(code **)(pcVar5 + 0x8ef84)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar5 + 0x8ef84)" ( (binary_expression "pcVar5 + 0x8ef84" identifier + number_literal) ))))) )) (argument_list "()" ( )))) ;) (if_statement "if ((*(int *)(*(int *)(pcVar5 + 0x8ec98) + -0x31d4) != 0) && (iVar4 != 2)) {\n      bump((char *)(*(int *)(pcVar5 + 0x8eca8) + -0x4a68),iVar3);\n    }" if (parenthesized_expression "((*(int *)(*(int *)(pcVar5 + 0x8ec98) + -0x31d4) != 0) && (iVar4 != 2))" ( (binary_expression "(*(int *)(*(int *)(pcVar5 + 0x8ec98) + -0x31d4) != 0) && (iVar4 != 2)" (parenthesized_expression "(*(int *)(*(int *)(pcVar5 + 0x8ec98) + -0x31d4) != 0)" ( (binary_expression "*(int *)(*(int *)(pcVar5 + 0x8ec98) + -0x31d4) != 0" (pointer_expression "*(int *)(*(int *)(pcVar5 + 0x8ec98) + -0x31d4)" * (cast_expression "(int *)(*(int *)(pcVar5 + 0x8ec98) + -0x31d4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar5 + 0x8ec98) + -0x31d4)" ( (binary_expression "*(int *)(pcVar5 + 0x8ec98) + -0x31d4" (pointer_expression "*(int *)(pcVar5 + 0x8ec98)" * (cast_expression "(int *)(pcVar5 + 0x8ec98)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar5 + 0x8ec98)" ( (binary_expression "pcVar5 + 0x8ec98" identifier + number_literal) )))) + number_literal) )))) != number_literal) )) && (parenthesized_expression "(iVar4 != 2)" ( (binary_expression "iVar4 != 2" identifier != number_literal) ))) )) (compound_statement "{\n      bump((char *)(*(int *)(pcVar5 + 0x8eca8) + -0x4a68),iVar3);\n    }" { (expression_statement "bump((char *)(*(int *)(pcVar5 + 0x8eca8) + -0x4a68),iVar3);" (call_expression "bump((char *)(*(int *)(pcVar5 + 0x8eca8) + -0x4a68),iVar3)" identifier (argument_list "((char *)(*(int *)(pcVar5 + 0x8eca8) + -0x4a68),iVar3)" ( (cast_expression "(char *)(*(int *)(pcVar5 + 0x8eca8) + -0x4a68)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar5 + 0x8eca8) + -0x4a68)" ( (binary_expression "*(int *)(pcVar5 + 0x8eca8) + -0x4a68" (pointer_expression "*(int *)(pcVar5 + 0x8eca8)" * (cast_expression "(int *)(pcVar5 + 0x8eca8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar5 + 0x8eca8)" ( (binary_expression "pcVar5 + 0x8eca8" identifier + number_literal) )))) + number_literal) ))) , identifier ))) ;) })) (expression_statement "scp_sink_init();" (call_expression "scp_sink_init()" identifier (argument_list "()" ( ))) ;) (expression_statement "iVar3 = FUN_0002d778();" (assignment_expression "iVar3 = FUN_0002d778()" identifier = (call_expression "FUN_0002d778()" identifier (argument_list "()" ( )))) ;) (return_statement "return iVar3;" return identifier ;) })) (expression_statement "xfer_download_queue(*(fxp_xfer **)(PTR_DAT_000bc178 + -0x3244));" (call_expression "xfer_download_queue(*(fxp_xfer **)(PTR_DAT_000bc178 + -0x3244))" identifier (argument_list "(*(fxp_xfer **)(PTR_DAT_000bc178 + -0x3244))" ( (pointer_expression "*(fxp_xfer **)(PTR_DAT_000bc178 + -0x3244)" * (cast_expression "(fxp_xfer **)(PTR_DAT_000bc178 + -0x3244)" ( (type_descriptor "fxp_xfer **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(PTR_DAT_000bc178 + -0x3244)" ( (binary_expression "PTR_DAT_000bc178 + -0x3244" identifier + number_literal) )))) ))) ;) (expression_statement "psVar2 = sftp_recv();" (assignment_expression "psVar2 = sftp_recv()" identifier = (call_expression "sftp_recv()" identifier (argument_list "()" ( )))) ;) (expression_statement "iVar3 = xfer_download_gotpkt(*(fxp_xfer **)(puVar1 + -0x3244),psVar2);" (assignment_expression "iVar3 = xfer_download_gotpkt(*(fxp_xfer **)(puVar1 + -0x3244),psVar2)" identifier = (call_expression "xfer_download_gotpkt(*(fxp_xfer **)(puVar1 + -0x3244),psVar2)" identifier (argument_list "(*(fxp_xfer **)(puVar1 + -0x3244),psVar2)" ( (pointer_expression "*(fxp_xfer **)(puVar1 + -0x3244)" * (cast_expression "(fxp_xfer **)(puVar1 + -0x3244)" ( (type_descriptor "fxp_xfer **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar1 + -0x3244)" ( (binary_expression "puVar1 + -0x3244" identifier + number_literal) )))) , identifier )))) ;) (if_statement "if (iVar3 < 1) {\n                    /* WARNING: Subroutine does not return */\n    fxp_error();\n  }" if (parenthesized_expression "(iVar3 < 1)" ( (binary_expression "iVar3 < 1" identifier < number_literal) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n    fxp_error();\n  }" { comment (expression_statement "fxp_error();" (call_expression "fxp_error()" identifier (argument_list "()" ( ))) ;) })) (expression_statement "iVar3 = xfer_download_data(*(fxp_xfer **)(*(int *)(puVar6 + -0x7fd8) + -0x3244),&vbuf,&actuallen);" (assignment_expression "iVar3 = xfer_download_data(*(fxp_xfer **)(*(int *)(puVar6 + -0x7fd8) + -0x3244),&vbuf,&actuallen)" identifier = (call_expression "xfer_download_data(*(fxp_xfer **)(*(int *)(puVar6 + -0x7fd8) + -0x3244),&vbuf,&actuallen)" identifier (argument_list "(*(fxp_xfer **)(*(int *)(puVar6 + -0x7fd8) + -0x3244),&vbuf,&actuallen)" ( (pointer_expression "*(fxp_xfer **)(*(int *)(puVar6 + -0x7fd8) + -0x3244)" * (cast_expression "(fxp_xfer **)(*(int *)(puVar6 + -0x7fd8) + -0x3244)" ( (type_descriptor "fxp_xfer **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*(int *)(puVar6 + -0x7fd8) + -0x3244)" ( (binary_expression "*(int *)(puVar6 + -0x7fd8) + -0x3244" (pointer_expression "*(int *)(puVar6 + -0x7fd8)" * (cast_expression "(int *)(puVar6 + -0x7fd8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar6 + -0x7fd8)" ( (binary_expression "puVar6 + -0x7fd8" identifier + number_literal) )))) + number_literal) )))) , (pointer_expression "&vbuf" & identifier) , (pointer_expression "&actuallen" & identifier) )))) ;) (if_statement "if (iVar3 != 0) {\n    if (actuallen < 1) {\n      tell_user((FILE *)**(undefined4 **)(puVar6 + -0x7460),\n                (char *)(*(int *)(puVar6 + -0x7fc8) + -0x4a9c));\n      *(int *)(*(int *)(puVar6 + -0x7fd8) + -0x31e0) =\n           *(int *)(*(int *)(puVar6 + -0x7fd8) + -0x31e0) + 1;\n                    /* WARNING: Subroutine does not return */\n      safefree(vbuf);\n    }\n    if (actuallen <= len) {\n      iVar3 = (**(code **)(puVar6 + -0x7474))(data,vbuf);\n      return iVar3;\n    }\n    iVar3 = (**(code **)(puVar6 + -0x7650))\n                      (*(int *)(puVar6 + -0x7fc8) + -0x4a7c,*(int *)(puVar6 + -0x7fc8) + -0x4fb0,\n                       0x628,*(int *)(puVar6 + -0x7fc8) + -0x45f0);\n    return iVar3;\n  }" if (parenthesized_expression "(iVar3 != 0)" ( (binary_expression "iVar3 != 0" identifier != number_literal) )) (compound_statement "{\n    if (actuallen < 1) {\n      tell_user((FILE *)**(undefined4 **)(puVar6 + -0x7460),\n                (char *)(*(int *)(puVar6 + -0x7fc8) + -0x4a9c));\n      *(int *)(*(int *)(puVar6 + -0x7fd8) + -0x31e0) =\n           *(int *)(*(int *)(puVar6 + -0x7fd8) + -0x31e0) + 1;\n                    /* WARNING: Subroutine does not return */\n      safefree(vbuf);\n    }\n    if (actuallen <= len) {\n      iVar3 = (**(code **)(puVar6 + -0x7474))(data,vbuf);\n      return iVar3;\n    }\n    iVar3 = (**(code **)(puVar6 + -0x7650))\n                      (*(int *)(puVar6 + -0x7fc8) + -0x4a7c,*(int *)(puVar6 + -0x7fc8) + -0x4fb0,\n                       0x628,*(int *)(puVar6 + -0x7fc8) + -0x45f0);\n    return iVar3;\n  }" { (if_statement "if (actuallen < 1) {\n      tell_user((FILE *)**(undefined4 **)(puVar6 + -0x7460),\n                (char *)(*(int *)(puVar6 + -0x7fc8) + -0x4a9c));\n      *(int *)(*(int *)(puVar6 + -0x7fd8) + -0x31e0) =\n           *(int *)(*(int *)(puVar6 + -0x7fd8) + -0x31e0) + 1;\n                    /* WARNING: Subroutine does not return */\n      safefree(vbuf);\n    }" if (parenthesized_expression "(actuallen < 1)" ( (binary_expression "actuallen < 1" identifier < number_literal) )) (compound_statement "{\n      tell_user((FILE *)**(undefined4 **)(puVar6 + -0x7460),\n                (char *)(*(int *)(puVar6 + -0x7fc8) + -0x4a9c));\n      *(int *)(*(int *)(puVar6 + -0x7fd8) + -0x31e0) =\n           *(int *)(*(int *)(puVar6 + -0x7fd8) + -0x31e0) + 1;\n                    /* WARNING: Subroutine does not return */\n      safefree(vbuf);\n    }" { (expression_statement "tell_user((FILE *)**(undefined4 **)(puVar6 + -0x7460),\n                (char *)(*(int *)(puVar6 + -0x7fc8) + -0x4a9c));" (call_expression "tell_user((FILE *)**(undefined4 **)(puVar6 + -0x7460),\n                (char *)(*(int *)(puVar6 + -0x7fc8) + -0x4a9c))" identifier (argument_list "((FILE *)**(undefined4 **)(puVar6 + -0x7460),\n                (char *)(*(int *)(puVar6 + -0x7fc8) + -0x4a9c))" ( (cast_expression "(FILE *)**(undefined4 **)(puVar6 + -0x7460)" ( (type_descriptor "FILE *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "**(undefined4 **)(puVar6 + -0x7460)" * (pointer_expression "*(undefined4 **)(puVar6 + -0x7460)" * (cast_expression "(undefined4 **)(puVar6 + -0x7460)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar6 + -0x7460)" ( (binary_expression "puVar6 + -0x7460" identifier + number_literal) )))))) , (cast_expression "(char *)(*(int *)(puVar6 + -0x7fc8) + -0x4a9c)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(puVar6 + -0x7fc8) + -0x4a9c)" ( (binary_expression "*(int *)(puVar6 + -0x7fc8) + -0x4a9c" (pointer_expression "*(int *)(puVar6 + -0x7fc8)" * (cast_expression "(int *)(puVar6 + -0x7fc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar6 + -0x7fc8)" ( (binary_expression "puVar6 + -0x7fc8" identifier + number_literal) )))) + number_literal) ))) ))) ;) (expression_statement "*(int *)(*(int *)(puVar6 + -0x7fd8) + -0x31e0) =\n           *(int *)(*(int *)(puVar6 + -0x7fd8) + -0x31e0) + 1;" (assignment_expression "*(int *)(*(int *)(puVar6 + -0x7fd8) + -0x31e0) =\n           *(int *)(*(int *)(puVar6 + -0x7fd8) + -0x31e0) + 1" (pointer_expression "*(int *)(*(int *)(puVar6 + -0x7fd8) + -0x31e0)" * (cast_expression "(int *)(*(int *)(puVar6 + -0x7fd8) + -0x31e0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(puVar6 + -0x7fd8) + -0x31e0)" ( (binary_expression "*(int *)(puVar6 + -0x7fd8) + -0x31e0" (pointer_expression "*(int *)(puVar6 + -0x7fd8)" * (cast_expression "(int *)(puVar6 + -0x7fd8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar6 + -0x7fd8)" ( (binary_expression "puVar6 + -0x7fd8" identifier + number_literal) )))) + number_literal) )))) = (binary_expression "*(int *)(*(int *)(puVar6 + -0x7fd8) + -0x31e0) + 1" (pointer_expression "*(int *)(*(int *)(puVar6 + -0x7fd8) + -0x31e0)" * (cast_expression "(int *)(*(int *)(puVar6 + -0x7fd8) + -0x31e0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(puVar6 + -0x7fd8) + -0x31e0)" ( (binary_expression "*(int *)(puVar6 + -0x7fd8) + -0x31e0" (pointer_expression "*(int *)(puVar6 + -0x7fd8)" * (cast_expression "(int *)(puVar6 + -0x7fd8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar6 + -0x7fd8)" ( (binary_expression "puVar6 + -0x7fd8" identifier + number_literal) )))) + number_literal) )))) + number_literal)) ;) comment (expression_statement "safefree(vbuf);" (call_expression "safefree(vbuf)" identifier (argument_list "(vbuf)" ( identifier ))) ;) })) (if_statement "if (actuallen <= len) {\n      iVar3 = (**(code **)(puVar6 + -0x7474))(data,vbuf);\n      return iVar3;\n    }" if (parenthesized_expression "(actuallen <= len)" ( (binary_expression "actuallen <= len" identifier <= identifier) )) (compound_statement "{\n      iVar3 = (**(code **)(puVar6 + -0x7474))(data,vbuf);\n      return iVar3;\n    }" { (expression_statement "iVar3 = (**(code **)(puVar6 + -0x7474))(data,vbuf);" (assignment_expression "iVar3 = (**(code **)(puVar6 + -0x7474))(data,vbuf)" identifier = (call_expression "(**(code **)(puVar6 + -0x7474))(data,vbuf)" (parenthesized_expression "(**(code **)(puVar6 + -0x7474))" ( (pointer_expression "**(code **)(puVar6 + -0x7474)" * (pointer_expression "*(code **)(puVar6 + -0x7474)" * (cast_expression "(code **)(puVar6 + -0x7474)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar6 + -0x7474)" ( (binary_expression "puVar6 + -0x7474" identifier + number_literal) ))))) )) (argument_list "(data,vbuf)" ( identifier , identifier )))) ;) (return_statement "return iVar3;" return identifier ;) })) (expression_statement "iVar3 = (**(code **)(puVar6 + -0x7650))\n                      (*(int *)(puVar6 + -0x7fc8) + -0x4a7c,*(int *)(puVar6 + -0x7fc8) + -0x4fb0,\n                       0x628,*(int *)(puVar6 + -0x7fc8) + -0x45f0);" (assignment_expression "iVar3 = (**(code **)(puVar6 + -0x7650))\n                      (*(int *)(puVar6 + -0x7fc8) + -0x4a7c,*(int *)(puVar6 + -0x7fc8) + -0x4fb0,\n                       0x628,*(int *)(puVar6 + -0x7fc8) + -0x45f0)" identifier = (call_expression "(**(code **)(puVar6 + -0x7650))\n                      (*(int *)(puVar6 + -0x7fc8) + -0x4a7c,*(int *)(puVar6 + -0x7fc8) + -0x4fb0,\n                       0x628,*(int *)(puVar6 + -0x7fc8) + -0x45f0)" (parenthesized_expression "(**(code **)(puVar6 + -0x7650))" ( (pointer_expression "**(code **)(puVar6 + -0x7650)" * (pointer_expression "*(code **)(puVar6 + -0x7650)" * (cast_expression "(code **)(puVar6 + -0x7650)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar6 + -0x7650)" ( (binary_expression "puVar6 + -0x7650" identifier + number_literal) ))))) )) (argument_list "(*(int *)(puVar6 + -0x7fc8) + -0x4a7c,*(int *)(puVar6 + -0x7fc8) + -0x4fb0,\n                       0x628,*(int *)(puVar6 + -0x7fc8) + -0x45f0)" ( (binary_expression "*(int *)(puVar6 + -0x7fc8) + -0x4a7c" (pointer_expression "*(int *)(puVar6 + -0x7fc8)" * (cast_expression "(int *)(puVar6 + -0x7fc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar6 + -0x7fc8)" ( (binary_expression "puVar6 + -0x7fc8" identifier + number_literal) )))) + number_literal) , (binary_expression "*(int *)(puVar6 + -0x7fc8) + -0x4fb0" (pointer_expression "*(int *)(puVar6 + -0x7fc8)" * (cast_expression "(int *)(puVar6 + -0x7fc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar6 + -0x7fc8)" ( (binary_expression "puVar6 + -0x7fc8" identifier + number_literal) )))) + number_literal) , number_literal , (binary_expression "*(int *)(puVar6 + -0x7fc8) + -0x45f0" (pointer_expression "*(int *)(puVar6 + -0x7fc8)" * (cast_expression "(int *)(puVar6 + -0x7fc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar6 + -0x7fc8)" ( (binary_expression "puVar6 + -0x7fc8" identifier + number_literal) )))) + number_literal) )))) ;) (return_statement "return iVar3;" return identifier ;) })) (expression_statement "actuallen = 0;" (assignment_expression "actuallen = 0" identifier = number_literal) ;) (expression_statement "x.hi = (ulong)puVar6;" (assignment_expression "x.hi = (ulong)puVar6" (field_expression "x.hi" identifier . field_identifier) = (cast_expression "(ulong)puVar6" ( (type_descriptor "ulong" type_identifier) ) identifier)) ;) (expression_statement "x.lo = in_stack_ffffffcc;" (assignment_expression "x.lo = in_stack_ffffffcc" (field_expression "x.lo" identifier . field_identifier) = identifier) ;) comment (expression_statement "uint64_add32(x,(ulong)auStack_30);" (call_expression "uint64_add32(x,(ulong)auStack_30)" identifier (argument_list "(x,(ulong)auStack_30)" ( identifier , (cast_expression "(ulong)auStack_30" ( (type_descriptor "ulong" type_identifier) ) identifier) ))) ;) })))
(translation_unit "uint scp_recv_filedata(undefined *param_1,undefined *param_2)\n\n{\n  undefined *puVar1;\n  int iVar2;\n  uint uVar3;\n  int iVar4;\n  undefined *puVar5;\n  undefined4 uVar6;\n  undefined4 uVar7;\n  int iVar8;\n  undefined1 *puVar9;\n  char *pcVar10;\n  undefined4 extraout_v1;\n  char cVar11;\n  undefined4 uVar12;\n  char *pcVar13;\n  undefined *puVar14;\n  int iVar15;\n  int iVar16;\n  undefined4 uVar17;\n  undefined4 *puVar18;\n  int *piVar19;\n  int iVar20;\n  char *pcVar21;\n  char *pcVar22;\n  undefined4 *unaff_s3;\n  undefined4 *puVar23;\n  undefined1 *unaff_s4;\n  int iVar24;\n  int unaff_s5;\n  int iVar25;\n  int iVar26;\n  int unaff_s7;\n  char *pcVar27;\n  code *pcVar28;\n  int iVar29;\n  code *pcVar30;\n  undefined auStack_100b0 [32408];\n  code *pcStack_8218;\n  int iStack_820c;\n  int iStack_8208;\n  undefined4 uStack_8204;\n  int iStack_81f0;\n  char *pcStack_81ec;\n  code *pcStack_81e8;\n  code *pcStack_81dc;\n  char cStack_81d5;\n  undefined4 *puStack_81d4;\n  undefined4 *puStack_81d0;\n  undefined4 uStack_81cc;\n  undefined *puStack_81c8;\n  undefined4 *puStack_81c4;\n  int iStack_81c0;\n  int iStack_81bc;\n  int *piStack_81b8;\n  int iStack_81b4;\n  int iStack_81b0;\n  code *pcStack_81ac;\n  code *pcStack_8198;\n  int *piStack_8190;\n  undefined4 uStack_818c;\n  undefined4 uStack_8184;\n  undefined *puStack_8180;\n  code *pcStack_817c;\n  int iStack_8174;\n  undefined4 uStack_8170;\n  undefined4 uStack_816c;\n  code *pcStack_8168;\n  undefined4 uStack_8160;\n  code *pcStack_815c;\n  undefined4 uStack_8148;\n  undefined4 uStack_8144;\n  int iStack_8140;\n  code *pcStack_8138;\n  char *pcStack_812c;\n  code *pcStack_8128;\n  int iStack_8124;\n  int iStack_8120;\n  undefined4 uStack_811c;\n  undefined *puStack_8118;\n  undefined4 uStack_8114;\n  int iStack_8110;\n  code *pcStack_810c;\n  undefined4 uStack_8108;\n  undefined4 uStack_8104;\n  undefined4 uStack_8100;\n  undefined4 uStack_80fc;\n  undefined4 uStack_80f8;\n  undefined4 uStack_80f4;\n  undefined4 uStack_80f0;\n  undefined4 uStack_80ec;\n  undefined4 uStack_80e8;\n  undefined4 uStack_80e4;\n  undefined4 uStack_80e0;\n  undefined4 uStack_80dc;\n  int iStack_80d8;\n  undefined4 uStack_80d4;\n  undefined *puStack_80d0;\n  undefined4 uStack_80cc;\n  undefined4 uStack_80c8;\n  undefined4 uStack_80c4;\n  int iStack_80c0;\n  undefined4 uStack_80bc;\n  undefined4 uStack_80b8;\n  undefined1 auStack_80b4 [32768];\n  uint uStack_b4;\n  undefined *puStack_b0;\n  undefined *puStack_ac;\n  undefined *puStack_a8;\n  undefined4 *puStack_a4;\n  undefined1 *puStack_a0;\n  undefined4 uStack_6c;\n  undefined1 auStack_68 [4];\n  char *pcStack_64;\n  undefined *puStack_60;\n  undefined *puStack_5c;\n  undefined *puStack_58;\n  undefined4 *puStack_54;\n  undefined4 local_30;\n  undefined4 local_2c;\n  uint local_24;\n  undefined4 local_20;\n  int local_1c;\n  \n  puVar1 = PTR_DAT_000bc178;\n  local_1c = *(int *)PTR___stack_chk_guard_000bccd8;\n  if (*(int *)(PTR_DAT_000bc178 + -0x31ec) == 0) {\n    uVar3 = FUN_000280f4();\n  }\n  else {\n    xfer_download_queue(*(undefined4 *)(PTR_DAT_000bc178 + -0x3244));\n    unaff_s3 = (undefined4 *)sftp_recv();\n    puVar1 = (undefined *)xfer_download_gotpkt(*(undefined4 *)(puVar1 + -0x3244),unaff_s3);\n    if ((int)puVar1 < 1) {\n      param_2 = *(undefined **)PTR_stderr_000bccf0;\n      uVar7 = fxp_error();\n      FUN_00027ff8(param_2,PTR_s_Server_sent_command_exit_status___000bc188 + -0x4abc,uVar7);\n      if (puVar1 == (undefined *)0x80000000) {\n        safefree(unaff_s3);\n      }\n      *(int *)(PTR_DAT_000bc178 + -0x31e0) = *(int *)(PTR_DAT_000bc178 + -0x31e0) + 1;\n      uVar3 = 0xffffffff;\n    }\n    else {\n      iVar2 = xfer_download_data(*(undefined4 *)(PTR_DAT_000bc178 + -0x3244),&local_20,&local_24);\n      if (iVar2 == 0) {\n        local_24 = 0;\n      }\n      else {\n        param_2 = (undefined *)(uint)((int)param_2 < (int)local_24);\n        if ((int)local_24 < 1) {\n          FUN_00027ff8(*(undefined4 *)PTR_stderr_000bccf0,\n                       PTR_s_Server_sent_command_exit_status___000bc188 + -0x4a9c);\n          *(int *)(PTR_DAT_000bc178 + -0x31e0) = *(int *)(PTR_DAT_000bc178 + -0x31e0) + 1;\n          safefree(local_20);\n          uVar3 = 0xffffffff;\n          goto LAB_0002d148;\n        }\n        if (param_2 != (undefined *)0x0) {\n          uVar3 = (*(code *)PTR___assert_fail_000bcb00)\n                            (PTR_s_Server_sent_command_exit_status___000bc188 + -0x4a7c,\n                             PTR_s_Server_sent_command_exit_status___000bc188 + -0x4fb0,0x628,\n                             PTR_s_Server_sent_command_exit_status___000bc188 + -0x45f0);\n          return uVar3;\n        }\n        (*(code *)PTR_memcpy_000bccdc)(param_1,local_20);\n        safefree(local_20);\n      }\n      param_2 = PTR_DAT_000bc178;\n      puVar1 = PTR_DAT_000bc178 + -0x324c;\n      uint64_add32(&local_30,*(undefined4 *)(PTR_DAT_000bc178 + -0x324c),\n                   *(undefined4 *)(PTR_DAT_000bc178 + -0x3248),local_24);\n      *(undefined4 *)(param_2 + -0x324c) = local_30;\n      *(undefined4 *)(param_2 + -0x3248) = local_2c;\n      uVar3 = local_24;\n    }\n  }\nLAB_0002d148:\n  if (local_1c == *(int *)PTR___stack_chk_guard_000bccd8) {\n    return uVar3;\n  }\n  puVar5 = PTR___stack_chk_fail_000bccb0;\n  (*(code *)PTR___stack_chk_fail_000bccb0)();\n  pcStack_64 = (char *)**(undefined4 **)(puVar5 + 0x8fa44);\n  puStack_60 = param_2;\n  puStack_5c = puVar1;\n  puStack_58 = param_1;\n  puStack_54 = unaff_s3;\n  if (*(int *)(*(int *)(puVar5 + 0x8eee4) + -0x31ec) == 0) {\n    puVar14 = (undefined *)(*(int *)(puVar5 + 0x8eef4) + -0x17dc);\n    (**(code **)(*(int *)(*(int *)(puVar5 + 0x8eee4) + -0x31f4) + 0xc))\n              (*(undefined4 *)(*(int *)(puVar5 + 0x8eee4) + -0x31f8),puVar14,1);\n    uVar3 = FUN_00028400();\n  }\n  else {\n    xfer_set_error(*(undefined4 *)(*(int *)(puVar5 + 0x8eee4) + -0x3244));\n    iVar2 = *(int *)(puVar5 + 0x8eee4);\n    unaff_s4 = auStack_68;\n    unaff_s3 = &uStack_6c;\n    while (iVar24 = xfer_done(*(undefined4 *)(iVar2 + -0x3244)), iVar24 == 0) {\n      param_1 = (undefined *)sftp_recv();\n      puVar1 = (undefined *)xfer_download_gotpkt(*(undefined4 *)(iVar2 + -0x3244),param_1);\n      if ((int)puVar1 < 1) {\n        param_2 = (undefined *)**(undefined4 **)(puVar5 + 0x8fa5c);\n        uVar7 = fxp_error();\n        puVar14 = (undefined *)(*(int *)(puVar5 + 0x8eef4) + -0x4abc);\n        FUN_00027ff8(param_2,puVar14,uVar7);\n        if (puVar1 == (undefined *)0x80000000) {\n          safefree(param_1);\n          iVar2 = *(int *)(puVar5 + 0x8eee4);\n        }\n        else {\n          iVar2 = *(int *)(puVar5 + 0x8eee4);\n        }\n        *(int *)(iVar2 + -0x31e0) = *(int *)(iVar2 + -0x31e0) + 1;\n        uVar3 = 0xffffffff;\n        goto LAB_0002d318;\n      }\n      iVar24 = xfer_download_data(*(undefined4 *)(iVar2 + -0x3244),unaff_s3,unaff_s4);\n      if (iVar24 != 0) {\n        safefree(uStack_6c);\n      }\n    }\n    xfer_cleanup(*(undefined4 *)(*(int *)(puVar5 + 0x8eee4) + -0x3244));\n    param_2 = (undefined *)fxp_close_send(*(undefined4 *)(*(int *)(puVar5 + 0x8eee4) + -0x3240));\n    uVar7 = sftp_wait_for_reply(param_2);\n    puVar14 = param_2;\n    fxp_close_recv(uVar7);\n    uVar3 = 0;\n  }\nLAB_0002d318:\n  if (pcStack_64 == (char *)**(undefined4 **)(puVar5 + 0x8fa44)) {\n    return uVar3;\n  }\n  pcVar28 = *(code **)(puVar5 + 0x8fa1c);\n  pcVar13 = pcStack_64;\n  (*pcVar28)();\n  pcStack_8138 = pcVar28 + 0x96c70;\n  uStack_b4 = **(uint **)(pcVar28 + 0x8f7f8);\n  pcStack_812c = pcVar13;\n  puStack_8118 = puVar14;\n  puStack_b0 = param_2;\n  puStack_ac = puVar1;\n  puStack_a8 = param_1;\n  puStack_a4 = unaff_s3;\n  puStack_a0 = unaff_s4;\n  iVar2 = (**(code **)(pcVar28 + 0x8ef84))();\n  if ((*(int *)(*(int *)(pcStack_8138 + -0x7fd8) + -0x31d4) != 0) && (iVar2 != 2)) {\n    FUN_00028270(*(int *)(pcStack_8138 + -0x7fc8) + -0x4a68,pcStack_812c);\n  }\n  scp_sink_init();\n  iVar24 = 0;\n  pcStack_8128 = (code *)(*(int *)(pcStack_8138 + -0x7db0) + -0x7d90);\n  pcStack_810c = (code *)(*(int *)(pcStack_8138 + -0x7db0) + -0x6cb8);\n  iStack_8110 = *(int *)(pcStack_8138 + -0x7fc8) + -0x4878;\nLAB_0002d77c:\n  do {\n    iVar4 = scp_get_sink_action(&iStack_80d8);\n    if ((iVar4 != 0) || (iStack_80d8 == 3)) goto LAB_0002da64;\n  } while (iStack_80d8 == 4);\n  if (iVar2 == 2) {\n    param_1 = auStack_100b0;\n    puVar1 = (undefined *)(**(code **)(pcStack_8138 + -0x7cac))(puStack_80d0,1);\n    if (puStack_80d0 != puVar1) {\n      puVar23 = *(undefined4 **)(pcStack_8138 + -0x7460);\n      param_1 = (undefined *)(*(int *)(pcStack_8138 + -0x7fcc) + 0x7ff8);\n      FUN_00027ff8(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x4a54);\n      FUN_00027ff8(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x4a20,puVar1);\n    }\n    iVar4 = (**(code **)(pcStack_8138 + -0x7640))(puVar1,*(int *)(pcStack_8138 + -0x7fc8) + -0x48b0)\n    ;\n    if (puVar1[iVar4] == '\0') {\n      (*pcStack_8128)(*(int *)(pcStack_8138 + -0x7fc8) + -0x49f8);\n    }\n    if (puStack_8118 != (undefined *)0x0) {\n      param_1 = (undefined *)(**(code **)(pcStack_8138 + -0x7cac))(puStack_8118,1);\n      iVar4 = (**(code **)(pcStack_8138 + -0x743c))(puVar1,param_1);\n      if ((iVar4 != 0) &&\n         (puVar23 = *(undefined4 **)(pcStack_8138 + -0x7460),\n         *(int *)(*(int *)(pcStack_8138 + -0x7fd8) + -0x31ec) == 0 &&\n         *(int *)(*(int *)(pcStack_8138 + -0x7fd8) + -0x31dc) == 0)) {\n        FUN_00027ff8(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x49ac,puVar1);\n        FUN_00027ff8(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x4970,param_1);\n        FUN_00027ff8(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x4940);\n        FUN_00027ff8(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x48f8);\n        puVar1 = param_1;\n      }\n    }\n    if (*pcStack_812c == '\0') {\n      unaff_s3 = (undefined4 *)dupstr(puVar1);\n    }\n    else {\n      unaff_s3 = (undefined4 *)(**(code **)(pcStack_8138 + -0x7c78))(pcStack_812c,puVar1);\n    }\n  }\n  else {\n    unaff_s3 = (undefined4 *)dupstr(pcStack_812c);\n  }\n  iVar4 = (**(code **)(pcStack_8138 + -0x7cec))(unaff_s3);\n  if (iStack_80d8 == 2) {\n    if (iVar4 == 0) {\n      iVar4 = (**(code **)(pcStack_8138 + -0x7c80))(unaff_s3);\n      if (iVar4 == 0) {\n        FUN_0002a658(*(int *)(pcStack_8138 + -0x7fc8) + -0x48ac,unaff_s3);\n        safefree(unaff_s3);\n        goto LAB_0002d77c;\n      }\n    }\n    else if (iVar4 != 2) {\n      FUN_0002a658(*(int *)(pcStack_8138 + -0x7fc8) + -0x4a68,unaff_s3);\n      safefree(unaff_s3);\n      goto LAB_0002d77c;\n    }\n    FUN_0002d4e0(unaff_s3,0);\n    safefree(unaff_s3);\n    goto LAB_0002d77c;\n  }\n  unaff_s5 = (**(code **)(pcStack_8138 + -0x7c84))(unaff_s3,uStack_80cc);\n  if (unaff_s5 == 0) {\n    FUN_0002a658(*(int *)(pcStack_8138 + -0x7fc8) + -0x4890,unaff_s3);\n    safefree(unaff_s3);\n    goto LAB_0002d77c;\n  }\n  iStack_8120 = scp_accept_filexfer();\n  if (iStack_8120 == 0) {\n    puVar1 = auStack_100b0;\n    uint64_make(&uStack_80f8,0,0);\n    uStack_8114 = (**(code **)(pcStack_8138 + -0x7488))(0);\n    uStack_811c = (**(code **)(pcStack_8138 + -0x7cac))(unaff_s3,1);\n    uint64_make(&uStack_8100,0,0);\n    iStack_8124 = *(int *)(pcStack_8138 + -0x7fc8);\n    unaff_s7 = *(int *)(pcStack_8138 + -0x7fd8);\nLAB_0002db64:\n    do {\n      iVar4 = uint64_compare(uStack_8100,uStack_80fc,uStack_80c8,uStack_80c4);\n      if (-1 < iVar4) goto LAB_0002de88;\n      uint64_make(&uStack_80f0,0,0x8000);\n      uStack_8148 = uStack_80fc;\n      uint64_subtract(&uStack_80e8,uStack_80c8,uStack_80c4,uStack_8100);\n      iVar4 = uint64_compare(uStack_80f0,uStack_80ec,uStack_80e8,uStack_80e4);\n      if (0 < iVar4) {\n        uStack_8148 = uStack_80fc;\n        uint64_subtract(&uStack_80f0,uStack_80c8,uStack_80c4,uStack_8100);\n      }\n      puVar1 = (undefined *)scp_recv_filedata(auStack_80b4,uStack_80ec);\n      if ((int)puVar1 < 1) {\n        (*pcStack_8128)(iStack_8124 + -0x5640);\n      }\n      if (iVar24 == 0) {\n        puVar5 = (undefined *)(**(code **)(pcStack_8138 + -0x7c68))(unaff_s5,auStack_80b4,puVar1);\n        if (puVar5 == puVar1) {\n          if (*(int *)(unaff_s7 + -0x3fa8) != 0) {\n            uint64_add32(&uStack_8108,uStack_80f8,uStack_80f4,puVar1);\n            uStack_80f8 = uStack_8108;\n            uStack_80f4 = uStack_8104;\n            iVar4 = (**(code **)(pcStack_8138 + -0x7488))(0);\n            if (iVar4 <= iStack_8120) {\n              uint64_add32(&uStack_80e0,uStack_8100,uStack_80fc,puVar1);\n              iVar4 = uint64_compare(uStack_80e0,uStack_80dc,uStack_80c8,uStack_80c4);\n              if (iVar4 != 0) goto LAB_0002dc94;\n            }\n            iStack_8140 = (**(code **)(pcStack_8138 + -0x7488))(0);\n            uStack_8144 = uStack_8114;\n            uStack_8148 = uStack_80f4;\n            iStack_8120 = iStack_8140;\n            (*pcStack_810c)(uStack_811c,uStack_80c8,uStack_80c4,uStack_80f8);\n          }\nLAB_0002dc94:\n          param_1 = auStack_100b0;\n          uint64_add32(&uStack_8108,uStack_8100,uStack_80fc,puVar1);\n          uStack_8100 = uStack_8108;\n          uStack_80fc = uStack_8104;\n          goto LAB_0002db64;\n        }\n        if (*(int *)(unaff_s7 + -0x3fa8) != 0) {\n          (**(code **)(pcStack_8138 + -0x759c))\n                    (1,*(int *)(pcStack_8138 + -0x7fc8) + -0x4850,uStack_811c,iStack_8110);\n        }\n        uint64_add32(&uStack_8108,uStack_8100,uStack_80fc,puVar1);\n      }\n      else {\n        uint64_add32(&uStack_8108,uStack_8100,uStack_80fc,puVar1);\n      }\n      param_1 = auStack_100b0;\n      iVar24 = 1;\n      uStack_8100 = uStack_8108;\n      uStack_80fc = uStack_8104;\n    } while( true );\n  }\n  safefree(unaff_s3);\n  (**(code **)(pcStack_8138 + -0x7c70))(unaff_s5);\nLAB_0002da64:\n  pcVar28 = *(code **)(pcStack_8138 + -0x74a0);\n  if (uStack_b4 == **(uint **)(pcStack_8138 + -0x7478)) {\n    return **(uint **)(pcStack_8138 + -0x7478);\n  }\n  pcVar30 = version;\n  (*pcVar28)();\n  pcStack_8168 = pcVar28 + 0x961d8;\n  uStack_8160 = 0xffff0000;\n  pcStack_815c = pcVar30;\n  uVar6 = buildinfo(*(int *)(pcVar28 + 0x8e210) + 0xaa4);\n  uVar17 = *(undefined4 *)(pcStack_8168 + -0x7da8);\n  iVar4 = *(int *)(pcStack_8168 + -0x7fc8) + -0x482c;\n  uVar7 = uVar6;\n  (**(code **)(pcStack_8168 + -0x759c))(1);\n  safefree(uVar6);\n  uVar12 = 0;\n  pcVar28 = *(code **)(pcStack_8168 + -0x7504);\n  pcVar30 = cmdline_error;\n  (*pcVar28)();\n  pcStack_8198 = pcVar28 + 0x96158;\n  uStack_818c = **(undefined4 **)(pcVar28 + 0x8ece0);\n  puVar23 = *(undefined4 **)(pcVar28 + 0x8ecf8);\n  uStack_8184 = uVar6;\n  puStack_8180 = puVar1;\n  pcStack_817c = pcVar30;\n  iStack_8174 = iVar4;\n  uStack_8170 = uVar17;\n  uStack_816c = uVar7;\n  (**(code **)(pcVar28 + 0x8ec90))(*(int *)(pcVar28 + 0x8e190) + -0x4e28,1,6,*puVar23);\n  piStack_8190 = &iStack_8174;\n  (**(code **)(pcStack_8198 + -0x7444))(*puVar23,1,uVar12);\n  iVar15 = 1;\n  (**(code **)(pcStack_8198 + -0x74c8))(*(int *)(pcStack_8198 + -0x7fc8) + -0x481c,1,0x27,*puVar23);\n  iVar4 = 1;\n  pcVar28 = *(code **)(pcStack_8198 + -0x7504);\n  pcVar30 = psftp_main;\n  (*pcVar28)();\n  pcStack_81e8 = pcVar28 + 0x9609c;\n  puStack_81d4 = (undefined4 *)**(undefined4 **)(pcVar28 + 0x8ec24);\n  **(undefined4 **)(pcVar28 + 0x8e144) = 1;\n  **(undefined4 **)(pcVar28 + 0x8e158) = 2;\n  **(undefined4 **)(pcVar28 + 0x8e120) = 1;\n  puStack_81d0 = puVar23;\n  uStack_81cc = uVar12;\n  puStack_81c8 = param_1;\n  puStack_81c4 = unaff_s3;\n  iStack_81c0 = iVar24;\n  iStack_81bc = unaff_s5;\n  piStack_81b8 = &iStack_80d8;\n  iStack_81b4 = unaff_s7;\n  iStack_81b0 = iVar2;\n  pcStack_81ac = pcVar30;\n  (**(code **)(pcVar28 + 0x8e444))();\n  uVar7 = conf_new();\n  *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31fc) = uVar7;\n  do_defaults(0,uVar7);\n  **(undefined4 **)(pcStack_81e8 + -0x7f60) = 0;\n  pcVar28 = pcStack_81e8;\n  if (iVar4 < 2) {\n    iVar2 = 1;\n  }\n  else {\n    pcVar13 = *(char **)(iVar15 + 4);\n    piVar19 = (int *)(iVar15 + 4);\n    if (*pcVar13 == '-') {\n      iVar25 = *(int *)(pcStack_81e8 + -0x7fd8);\n      iVar26 = *(int *)(pcStack_81e8 + -0x7fc8);\n      pcVar27 = (char *)(*(int *)(pcStack_81e8 + -0x7fc8) + -0x47b8);\n      iVar29 = *(int *)(pcStack_81e8 + -0x7fc8);\n      pcStack_81dc = (code *)(*(int *)(pcStack_81e8 + -0x7db0) + -0x79e4);\n      iVar24 = 1;\nLAB_0002e488:\n      iVar2 = iVar24 + 1;\n      uVar7 = 0;\n      if (iVar2 < iVar4) {\n        uVar7 = *(undefined4 *)(iVar15 + (iVar24 + 1) * 4);\n      }\n      iVar8 = cmdline_process_param(pcVar13,uVar7,1,*(undefined4 *)(iVar25 + -0x31fc));\n      pcVar28 = pcStack_81e8;\n      if (iVar8 == -2) {\n        cmdline_error(*(int *)(pcStack_81e8 + -0x7fc8) + -0x47e4,*piVar19);\n        uVar7 = extraout_v1;\nLAB_0002e1d0:\n        iVar2 = iVar24;\n        if ((**(uint **)(pcVar28 + -0x7f44) & 1) != 0) {\n          *(undefined4 *)(*(int *)(pcVar28 + -0x7fd8) + -0x31c8) = uVar7;\n        }\n        goto LAB_0002e464;\n      }\n      uVar7 = 1;\n      if (iVar8 == 2) goto LAB_0002e464;\n      if (iVar8 == 1) goto LAB_0002e1d0;\n      iVar20 = *piVar19;\n      iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar26 + -0x47c0);\n      if (iVar8 == 0) {\n        (**(code **)(pcStack_81e8 + -0x7c54))();\n        uVar3 = 1;\n        goto LAB_0002e878;\n      }\n      iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20);\n      if (iVar8 == 0) {\n        *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31cc) = 1;\n        pcVar28 = pcStack_81e8;\n        iVar2 = iVar24;\n      }\n      else {\n        iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar29 + -0x47b4);\n        if (iVar8 == 0) {\n          *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d0) = 1;\n          pcVar28 = pcStack_81e8;\n          iVar2 = iVar24;\n        }\n        else {\n          iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                            (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47b0);\n          if (iVar8 == 0) {\n            *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fa8) = 0;\n            pcVar28 = pcStack_81e8;\n            iVar2 = iVar24;\n          }\n          else {\n            iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                              (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47ac);\n            if ((iVar8 != 0) &&\n               (iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                  (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47a8), iVar8 != 0))\n            {\n              iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47a4);\n              if (iVar8 != 0) {\n                iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                  (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x479c);\n                iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                if (iVar8 == 0) {\nLAB_0002e348:\n                  pcVar28 = pcStack_81e8;\n                  version();\n                }\n                else {\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar16 + -0x4798);\n                  iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                  if (iVar8 == 0) goto LAB_0002e348;\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar16 + -0x478c);\n                  iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                  pcVar28 = pcStack_81e8;\n                  if (iVar8 == 0) {\n                    *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31c4) = 1;\n                    iVar2 = iVar24;\n                    goto LAB_0002e464;\n                  }\n                }\n                iVar8 = (**(code **)(pcVar28 + -0x743c))(iVar20,iVar16 + -0x4788);\n                if (iVar8 == 0) {\n                  **(undefined4 **)(pcStack_81e8 + -0x7c4c) = 1;\n                  pcVar28 = pcStack_81e8;\n                  iVar2 = iVar24;\n                }\n                else {\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                    (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4780);\n                  if (iVar8 == 0) {\n                    *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31dc) = 1;\n                    pcVar28 = pcStack_81e8;\n                    iVar2 = iVar24;\n                  }\n                  else {\n                    iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                      (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4778);\n                    if (iVar8 == 0) {\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac) = 0;\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0) = 1;\n                      pcVar28 = pcStack_81e8;\n                      iVar2 = iVar24;\n                      goto LAB_0002e464;\n                    }\n                    iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                      (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4770);\n                    if (iVar8 == 0) {\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac) = 1;\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0) = 0;\n                      pcVar28 = pcStack_81e8;\n                      iVar2 = iVar24;\n                    }\n                    else {\n                      iVar24 = (**(code **)(pcStack_81e8 + -0x743c))\n                                         (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4768);\n                      pcVar28 = pcStack_81e8;\n                      if (iVar24 == 0) goto LAB_0002e52c;\n                      cmdline_error(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4764,iVar20);\n                    }\n                  }\n                }\n                goto LAB_0002e464;\n              }\n            }\n            (*pcStack_81dc)();\n            pcVar28 = pcStack_81e8;\n            iVar2 = iVar24;\n          }\n        }\n      }\nLAB_0002e464:\n      iVar2 = iVar2 + 1;\n      if (iVar4 <= iVar2) goto LAB_0002e52c;\n      piVar19 = (int *)(iVar15 + iVar2 * 4);\n      pcVar13 = (char *)*piVar19;\n      iVar24 = iVar2;\n      if (*pcVar13 != '-') goto LAB_0002e52c;\n      goto LAB_0002e488;\n    }\n    iVar2 = 1;\n  }\nLAB_0002e52c:\n  iVar4 = iVar4 - iVar2;\n  *(undefined4 *)(*(int *)(pcVar28 + -0x7fd8) + -0x31f4) = 0;\n  puVar23 = (undefined4 *)(iVar15 + iVar2 * 4);\n  if (*(int *)(*(int *)(pcVar28 + -0x7fd8) + -0x31c4) == 0) {\n    if (iVar4 < 2) {\n      FUN_0002861c();\n      puVar18 = puVar23 + iVar4 + 0x3fffffff;\n      iVar24 = FUN_00028968(*puVar18);\n      iVar2 = *(int *)(pcStack_81e8 + -0x7fd8);\n      if (iVar24 != 0) goto LAB_0002e90c;\n      *(undefined4 *)(iVar2 + -0x31f0) = 0;\nLAB_0002efd8:\n      iVar2 = *(int *)(pcStack_81e8 + -0x7fc8);\nLAB_0002efdc:\n      FUN_00028270(iVar2 + -0x4668);\n      pcVar13 = (char *)*puVar23;\nLAB_0002eb34:\n      uVar7 = puVar23[1];\n      puVar9 = (undefined1 *)FUN_00028968(pcVar13);\n      if (puVar9 == (undefined1 *)0x0) {\n        FUN_00028270(*(int *)(pcStack_81e8 + -0x7fc8) + -0x463c);\n        uRam00000000 = 0;\n      }\n      else {\n        *puVar9 = 0;\n      }\n      if (puVar9[1] == '\0') {\n        pcVar27 = (char *)(*(int *)(pcStack_81e8 + -0x7fc8) + -0x48b0);\n      }\n      else {\n        pcVar27 = puVar9 + 1;\n      }\n      puVar9 = (undefined1 *)(**(code **)(pcStack_81e8 + -0x75b8))(pcVar13,0x40);\n      if (puVar9 == (undefined1 *)0x0) {\n        pcVar21 = (char *)0x0;\n      }\n      else {\n        *puVar9 = 0;\n        cVar11 = *pcVar13;\n        pcVar21 = pcVar13;\n        pcVar13 = puVar9 + 1;\n        if (cVar11 == '\0') {\n          pcVar21 = (char *)0x0;\n        }\n      }\n      if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31c8) == 0) {\n        iVar2 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iVar2 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47f4;\n      }\n      if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31cc) == 0) {\n        iVar24 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iVar24 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47f0;\n      }\n      if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d0) == 0) {\n        iVar4 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iVar4 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47ec;\n      }\n      if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4) == 0) {\n        iStack_81f0 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iStack_81f0 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47e8;\n      }\n      pcStack_81ec = pcVar27;\n      uVar6 = dupprintf(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4618,iVar2,iVar24,iVar4);\n      FUN_00028a00(pcVar13,pcVar21,uVar6);\n      safefree(uVar6);\n      iVar2 = scp_sink_setup(pcVar27,*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d0),\n                             *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31cc));\n      if (iVar2 == 0) {\n        FUN_0002d4e0(uVar7);\n        iVar2 = *(int *)(pcStack_81e8 + -0x7fd8);\n        goto LAB_0002e788;\n      }\n    }\n    else {\n      if (iVar4 < 3) {\n        puVar18 = puVar23 + iVar4 + 0x3fffffff;\n        iVar2 = FUN_00028968(*puVar18);\n        if (iVar2 == 0) {\n          *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f0) = 0;\n          iVar2 = *(int *)(pcStack_81e8 + -0x7fc8);\n          if (iVar4 != 2) goto LAB_0002efdc;\n          pcVar13 = (char *)*puVar23;\n          goto LAB_0002eb34;\n        }\n      }\n      else {\n        *(undefined4 *)(*(int *)(pcVar28 + -0x7fd8) + -0x31d4) = 1;\n        puVar18 = puVar23 + iVar4 + 0x3fffffff;\n        iVar2 = FUN_00028968(*puVar18);\n        if (iVar2 == 0) {\n          *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f0) = 0;\n          goto LAB_0002efd8;\n        }\n      }\n      iVar2 = *(int *)(pcStack_81e8 + -0x7fd8);\nLAB_0002e90c:\n      *(undefined4 *)(iVar2 + -0x31f0) = 1;\n      pcVar13 = (char *)*puVar18;\n      puVar9 = (undefined1 *)FUN_00028968(pcVar13);\n      if (puVar9 == (undefined1 *)0x0) {\n        FUN_00028270(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4720);\n        uRam00000000 = 0;\n      }\n      else {\n        *puVar9 = 0;\n      }\n      if (puVar9[1] == '\0') {\n        pcVar21 = (char *)(*(int *)(pcStack_81e8 + -0x7fc8) + -0x48b0);\n      }\n      else {\n        pcVar21 = puVar9 + 1;\n      }\n      puVar9 = (undefined1 *)(**(code **)(pcStack_81e8 + -0x75b8))(pcVar13,0x40);\n      if (puVar9 == (undefined1 *)0x0) {\n        pcVar27 = (char *)0x0;\n      }\n      else {\n        *puVar9 = 0;\n        cVar11 = *pcVar13;\n        pcVar27 = pcVar13;\n        pcVar13 = puVar9 + 1;\n        if (cVar11 == '\0') {\n          pcVar27 = (char *)0x0;\n        }\n      }\n      if (iVar4 == 2) {\n        iVar2 = FUN_00028968(*puVar23);\n        if (iVar2 != 0) {\n          FUN_00028270(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4704,*puVar23);\n        }\n        iVar2 = (**(code **)(pcStack_81e8 + -0x7c30))(*puVar23,1);\n        if (iVar2 == 0) {\n          FUN_00028270(*(int *)(pcStack_81e8 + -0x7fc8) + -0x46e0,*puVar23);\n          iVar24 = *(int *)(pcStack_81e8 + -0x7fd8);\n        }\n        else {\n          iVar24 = *(int *)(pcStack_81e8 + -0x7fd8);\n          if (iVar2 == 2) {\n            *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4) = 1;\n            goto LAB_0002e988;\n          }\n        }\n      }\n      else {\nLAB_0002e988:\n        iVar24 = *(int *)(pcStack_81e8 + -0x7fd8);\n      }\n      if (*(int *)(iVar24 + -0x31c8) == 0) {\n        iVar2 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iVar2 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47f4;\n      }\n      if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31cc) == 0) {\n        iVar24 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iVar24 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47f0;\n      }\n      if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d0) == 0) {\n        iVar15 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iVar15 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47ec;\n      }\n      if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4) == 0) {\n        iStack_81f0 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iStack_81f0 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47e8;\n      }\n      pcStack_81ec = pcVar21;\n      uVar7 = dupprintf(*(int *)(pcStack_81e8 + -0x7fc8) + -0x46c0,iVar2,iVar24,iVar15);\n      FUN_00028a00(pcVar13,pcVar27,uVar7);\n      safefree(uVar7);\n      pcVar27 = *(char **)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4);\n      iVar2 = scp_source_setup(pcVar21);\n      if ((iVar2 == 0) && (1 < iVar4)) {\n        puVar18 = puVar23 + iVar4 + -1;\n        iVar24 = *(int *)(pcStack_81e8 + -0x7db0);\n        iVar25 = *(int *)(pcStack_81e8 + -0x7fc8);\n        iVar15 = *(int *)(pcStack_81e8 + -0x7db0);\n        iVar4 = *(int *)(pcStack_81e8 + -0x7fc8);\n        do {\n          pcVar13 = (char *)*puVar23;\n          iVar2 = FUN_00028968(pcVar13);\n          if (iVar2 == 0) {\n            pcVar27 = (char *)0x1;\n            iVar2 = (**(code **)(pcStack_81e8 + -0x7c30))(pcVar13,1,pcVar13);\n            if (iVar2 == 0) {\n              (*(code *)(iVar15 + -0x59a8))(iVar25 + -0x4688);\n              pcVar27 = pcVar13;\n            }\n            else if (iVar2 == 1) {\n              (*(code *)(iVar24 + -0x4b8c))(pcVar13);\n            }\n            else {\n              iVar2 = (**(code **)(pcStack_81e8 + -0x7c2c))();\n              if (iVar2 == 0) {\n                (*(code *)(iVar15 + -0x59a8))(iVar25 + -0x4688);\n                pcVar27 = pcVar13;\n              }\n              else {\n                while (iVar26 = (**(code **)(pcStack_81e8 + -0x7c28))(iVar2), iVar26 != 0) {\n                  (*(code *)(iVar24 + -0x4b8c))(iVar26);\n                  safefree(iVar26);\n                }\n                (**(code **)(pcStack_81e8 + -0x7c24))(iVar2);\n              }\n            }\n          }\n          else {\n            pcVar27 = (char *)(iVar4 + -0x46ac);\n            FUN_00027ff8(**(undefined4 **)(pcStack_81e8 + -0x7460));\n            *(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31e0) =\n                 *(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31e0) + 1;\n          }\n          puVar23 = puVar23 + 1;\n          iVar2 = *(int *)(pcStack_81e8 + -0x7fd8);\n        } while (puVar18 != puVar23);\n        goto LAB_0002e788;\n      }\n    }\n  }\n  else {\n    if (iVar4 == 1) {\n      pcVar13 = (char *)*puVar23;\n    }\n    else {\n      FUN_0002861c();\n      pcVar13 = (char *)*puVar23;\n    }\n    puVar9 = (undefined1 *)FUN_00028968(pcVar13);\n    if (puVar9 == (undefined1 *)0x0) {\n      FUN_00028270(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4750);\n      uRam00000000 = 0;\n    }\n    else {\n      *puVar9 = 0;\n    }\n    if (puVar9[1] == '\0') {\n      puVar9 = (undefined1 *)(**(code **)(pcStack_81e8 + -0x75b8))(pcVar13,0x40);\n      if (puVar9 == (undefined1 *)0x0) {\n        puVar23 = (undefined4 *)safemalloc(0x68,1);\n        iVar2 = *(int *)(pcStack_81e8 + -0x7fc8);\n        uVar7 = *(undefined4 *)(iVar2 + -0x4728);\n        *puVar23 = *(undefined4 *)(iVar2 + -0x472c);\n        puVar23[1] = uVar7;\n        *(undefined1 *)(puVar23 + 2) = *(undefined1 *)(iVar2 + -0x4724);\n        iVar2 = (**(code **)(pcStack_81e8 + -0x752c))(puVar23);\n        pcVar10 = (char *)((int)puVar23 + iVar2);\n        pcVar21 = (char *)(*(int *)(pcStack_81e8 + -0x7fc8) + -0x48b0);\n        cVar11 = '.';\n        pcVar27 = (char *)0x0;\n        pcVar22 = pcVar21;\n        goto LAB_0002e6b4;\n      }\n      pcVar21 = (char *)(*(int *)(pcStack_81e8 + -0x7fc8) + -0x48b0);\nLAB_0002e5ac:\n      *puVar9 = 0;\n      cVar11 = *pcVar13;\n      pcVar27 = pcVar13;\n      pcVar13 = puVar9 + 1;\n      if (cVar11 == '\0') {\n        pcVar27 = (char *)0x0;\n      }\n    }\n    else {\n      pcVar21 = puVar9 + 1;\n      puVar9 = (undefined1 *)(**(code **)(pcStack_81e8 + -0x75b8))(pcVar13);\n      if (puVar9 != (undefined1 *)0x0) goto LAB_0002e5ac;\n      pcVar27 = (char *)0x0;\n    }\n    iVar2 = (**(code **)(pcStack_81e8 + -0x752c))(pcVar21);\n    puVar23 = (undefined4 *)safemalloc((iVar2 + 0x19) * 4,1);\n    iVar2 = *(int *)(pcStack_81e8 + -0x7fc8);\n    uVar7 = *(undefined4 *)(iVar2 + -0x4728);\n    *puVar23 = *(undefined4 *)(iVar2 + -0x472c);\n    puVar23[1] = uVar7;\n    *(undefined1 *)(puVar23 + 2) = *(undefined1 *)(iVar2 + -0x4724);\n    iVar2 = (**(code **)(pcStack_81e8 + -0x752c))(puVar23);\n    pcVar10 = (char *)((int)puVar23 + iVar2);\n    cVar11 = *pcVar21;\n    pcVar22 = pcVar21;\n    while (cVar11 != '\0') {\nLAB_0002e6b4:\n      if (cVar11 == '\'') {\n        builtin_strncpy(pcVar10,"\'\\\'\'",4);\n        pcVar10 = pcVar10 + 4;\n      }\n      else {\n        *pcVar10 = cVar11;\n        pcVar10 = pcVar10 + 1;\n      }\n      pcVar21 = pcVar21 + 1;\n      cVar11 = *pcVar21;\n    }\n    *pcVar10 = '\'';\n    pcVar10[1] = '\0';\n    FUN_00028a00(pcVar13,pcVar27,puVar23);\n    safefree(puVar23);\n    if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31ec) != 0) {\n      scp_sftp_listdir(pcVar22);\n      iVar2 = *(int *)(pcStack_81e8 + -0x7fd8);\n      goto LAB_0002e788;\n    }\n    puVar23 = *(undefined4 **)(pcStack_81e8 + -0x7594);\n    while( true ) {\n      pcVar27 = (char *)0x1;\n      iVar2 = FUN_000280f4(&cStack_81d5);\n      if (iVar2 < 1) break;\n      (**(code **)(pcStack_81e8 + -0x75c4))((int)cStack_81d5,*puVar23);\n    }\n  }\n  iVar2 = *(int *)(pcStack_81e8 + -0x7fd8);\nLAB_0002e788:\n  pcVar28 = *(code **)(pcStack_81e8 + -0x7c44);\n  if (*(int *)(iVar2 + -0x31f4) != 0) {\n    iVar2 = (**(code **)(*(int *)(iVar2 + -0x31f4) + 0x20))\n                      (*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f8));\n    pcVar28 = *(code **)(pcStack_81e8 + -0x7c44);\n    if (iVar2 != 0) {\n      (**(code **)(*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f4) + 0x18))\n                (*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f8),0xc);\n      **(undefined4 **)(pcStack_81e8 + -0x7db4) = 1;\n      pcVar27 = (char *)0x1;\n      FUN_000280f4(&cStack_81d5);\n      pcVar28 = *(code **)(pcStack_81e8 + -0x7c44);\n    }\n  }\n  (*pcVar28)();\n  cmdline_cleanup();\n  (**(code **)(pcStack_81e8 + -0x7d88))(0);\n  iVar20 = *(int *)(pcStack_81e8 + -0x7fd8);\n  iVar24 = *(int *)(pcStack_81e8 + -0x7fd8);\n  (**(code **)(*(int *)(iVar24 + -0x31f4) + 4))(*(undefined4 *)(iVar20 + -0x31f8));\n  *(undefined4 *)(iVar20 + -0x31f8) = 0;\n  *(undefined4 *)(iVar24 + -0x31f4) = 0;\n  (**(code **)(pcStack_81e8 + -0x7c3c))();\n  uVar3 = (uint)(*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31e0) != 0);\nLAB_0002e878:\n  if (puStack_81d4 == (undefined4 *)**(int **)(pcStack_81e8 + -0x7478)) {\n    return uVar3;\n  }\n  pcVar28 = *(code **)(pcStack_81e8 + -0x74a0);\n  uVar12 = 0x2f008;\n  puVar23 = puStack_81d4;\n  (*pcVar28)();\n  pcStack_8218 = pcVar28 + 0x95140;\n  uVar7 = *puVar23;\n  uVar6 = *(undefined4 *)pcVar27;\n  iStack_820c = iVar24;\n  iStack_8208 = iVar20;\n  uStack_8204 = uVar12;\n  iVar2 = (**(code **)(pcVar28 + 0x8dd04))(uVar7,*(int *)(pcVar28 + 0x8d178) + -0x4584);\n  if (iVar2 == 0) {\n    uVar3 = 0xffffffff;\n  }\n  else {\n    iVar2 = (**(code **)(pcStack_8218 + -0x743c))(uVar6,*(int *)(pcStack_8218 + -0x7fc8) + -0x4584);\n    if (iVar2 == 0) {\n      uVar3 = 1;\n    }\n    else {\n      uVar3 = (**(code **)(pcStack_8218 + -0x743c))(uVar7,uVar6);\n    }\n  }\n  return uVar3;\nLAB_0002de88:\n  if (iStack_80c0 != 0) {\n    (**(code **)(pcStack_8138 + -0x7c60))(unaff_s5,uStack_80b8,uStack_80bc);\n  }\n  (**(code **)(pcStack_8138 + -0x7c70))(unaff_s5);\n  if (iVar24 == 0) {\n    scp_finish_filerecv();\n    safefree(unaff_s3);\n    safefree(uStack_80d4);\n  }\n  else {\n    FUN_0002a658(*(int *)(pcStack_8138 + -0x7fc8) + -0x483c,unaff_s3);\n    safefree(unaff_s3);\n  }\n  goto LAB_0002d77c;\n}\n\n" (function_definition "uint scp_recv_filedata(undefined *param_1,undefined *param_2)\n\n{\n  undefined *puVar1;\n  int iVar2;\n  uint uVar3;\n  int iVar4;\n  undefined *puVar5;\n  undefined4 uVar6;\n  undefined4 uVar7;\n  int iVar8;\n  undefined1 *puVar9;\n  char *pcVar10;\n  undefined4 extraout_v1;\n  char cVar11;\n  undefined4 uVar12;\n  char *pcVar13;\n  undefined *puVar14;\n  int iVar15;\n  int iVar16;\n  undefined4 uVar17;\n  undefined4 *puVar18;\n  int *piVar19;\n  int iVar20;\n  char *pcVar21;\n  char *pcVar22;\n  undefined4 *unaff_s3;\n  undefined4 *puVar23;\n  undefined1 *unaff_s4;\n  int iVar24;\n  int unaff_s5;\n  int iVar25;\n  int iVar26;\n  int unaff_s7;\n  char *pcVar27;\n  code *pcVar28;\n  int iVar29;\n  code *pcVar30;\n  undefined auStack_100b0 [32408];\n  code *pcStack_8218;\n  int iStack_820c;\n  int iStack_8208;\n  undefined4 uStack_8204;\n  int iStack_81f0;\n  char *pcStack_81ec;\n  code *pcStack_81e8;\n  code *pcStack_81dc;\n  char cStack_81d5;\n  undefined4 *puStack_81d4;\n  undefined4 *puStack_81d0;\n  undefined4 uStack_81cc;\n  undefined *puStack_81c8;\n  undefined4 *puStack_81c4;\n  int iStack_81c0;\n  int iStack_81bc;\n  int *piStack_81b8;\n  int iStack_81b4;\n  int iStack_81b0;\n  code *pcStack_81ac;\n  code *pcStack_8198;\n  int *piStack_8190;\n  undefined4 uStack_818c;\n  undefined4 uStack_8184;\n  undefined *puStack_8180;\n  code *pcStack_817c;\n  int iStack_8174;\n  undefined4 uStack_8170;\n  undefined4 uStack_816c;\n  code *pcStack_8168;\n  undefined4 uStack_8160;\n  code *pcStack_815c;\n  undefined4 uStack_8148;\n  undefined4 uStack_8144;\n  int iStack_8140;\n  code *pcStack_8138;\n  char *pcStack_812c;\n  code *pcStack_8128;\n  int iStack_8124;\n  int iStack_8120;\n  undefined4 uStack_811c;\n  undefined *puStack_8118;\n  undefined4 uStack_8114;\n  int iStack_8110;\n  code *pcStack_810c;\n  undefined4 uStack_8108;\n  undefined4 uStack_8104;\n  undefined4 uStack_8100;\n  undefined4 uStack_80fc;\n  undefined4 uStack_80f8;\n  undefined4 uStack_80f4;\n  undefined4 uStack_80f0;\n  undefined4 uStack_80ec;\n  undefined4 uStack_80e8;\n  undefined4 uStack_80e4;\n  undefined4 uStack_80e0;\n  undefined4 uStack_80dc;\n  int iStack_80d8;\n  undefined4 uStack_80d4;\n  undefined *puStack_80d0;\n  undefined4 uStack_80cc;\n  undefined4 uStack_80c8;\n  undefined4 uStack_80c4;\n  int iStack_80c0;\n  undefined4 uStack_80bc;\n  undefined4 uStack_80b8;\n  undefined1 auStack_80b4 [32768];\n  uint uStack_b4;\n  undefined *puStack_b0;\n  undefined *puStack_ac;\n  undefined *puStack_a8;\n  undefined4 *puStack_a4;\n  undefined1 *puStack_a0;\n  undefined4 uStack_6c;\n  undefined1 auStack_68 [4];\n  char *pcStack_64;\n  undefined *puStack_60;\n  undefined *puStack_5c;\n  undefined *puStack_58;\n  undefined4 *puStack_54;\n  undefined4 local_30;\n  undefined4 local_2c;\n  uint local_24;\n  undefined4 local_20;\n  int local_1c;\n  \n  puVar1 = PTR_DAT_000bc178;\n  local_1c = *(int *)PTR___stack_chk_guard_000bccd8;\n  if (*(int *)(PTR_DAT_000bc178 + -0x31ec) == 0) {\n    uVar3 = FUN_000280f4();\n  }\n  else {\n    xfer_download_queue(*(undefined4 *)(PTR_DAT_000bc178 + -0x3244));\n    unaff_s3 = (undefined4 *)sftp_recv();\n    puVar1 = (undefined *)xfer_download_gotpkt(*(undefined4 *)(puVar1 + -0x3244),unaff_s3);\n    if ((int)puVar1 < 1) {\n      param_2 = *(undefined **)PTR_stderr_000bccf0;\n      uVar7 = fxp_error();\n      FUN_00027ff8(param_2,PTR_s_Server_sent_command_exit_status___000bc188 + -0x4abc,uVar7);\n      if (puVar1 == (undefined *)0x80000000) {\n        safefree(unaff_s3);\n      }\n      *(int *)(PTR_DAT_000bc178 + -0x31e0) = *(int *)(PTR_DAT_000bc178 + -0x31e0) + 1;\n      uVar3 = 0xffffffff;\n    }\n    else {\n      iVar2 = xfer_download_data(*(undefined4 *)(PTR_DAT_000bc178 + -0x3244),&local_20,&local_24);\n      if (iVar2 == 0) {\n        local_24 = 0;\n      }\n      else {\n        param_2 = (undefined *)(uint)((int)param_2 < (int)local_24);\n        if ((int)local_24 < 1) {\n          FUN_00027ff8(*(undefined4 *)PTR_stderr_000bccf0,\n                       PTR_s_Server_sent_command_exit_status___000bc188 + -0x4a9c);\n          *(int *)(PTR_DAT_000bc178 + -0x31e0) = *(int *)(PTR_DAT_000bc178 + -0x31e0) + 1;\n          safefree(local_20);\n          uVar3 = 0xffffffff;\n          goto LAB_0002d148;\n        }\n        if (param_2 != (undefined *)0x0) {\n          uVar3 = (*(code *)PTR___assert_fail_000bcb00)\n                            (PTR_s_Server_sent_command_exit_status___000bc188 + -0x4a7c,\n                             PTR_s_Server_sent_command_exit_status___000bc188 + -0x4fb0,0x628,\n                             PTR_s_Server_sent_command_exit_status___000bc188 + -0x45f0);\n          return uVar3;\n        }\n        (*(code *)PTR_memcpy_000bccdc)(param_1,local_20);\n        safefree(local_20);\n      }\n      param_2 = PTR_DAT_000bc178;\n      puVar1 = PTR_DAT_000bc178 + -0x324c;\n      uint64_add32(&local_30,*(undefined4 *)(PTR_DAT_000bc178 + -0x324c),\n                   *(undefined4 *)(PTR_DAT_000bc178 + -0x3248),local_24);\n      *(undefined4 *)(param_2 + -0x324c) = local_30;\n      *(undefined4 *)(param_2 + -0x3248) = local_2c;\n      uVar3 = local_24;\n    }\n  }\nLAB_0002d148:\n  if (local_1c == *(int *)PTR___stack_chk_guard_000bccd8) {\n    return uVar3;\n  }\n  puVar5 = PTR___stack_chk_fail_000bccb0;\n  (*(code *)PTR___stack_chk_fail_000bccb0)();\n  pcStack_64 = (char *)**(undefined4 **)(puVar5 + 0x8fa44);\n  puStack_60 = param_2;\n  puStack_5c = puVar1;\n  puStack_58 = param_1;\n  puStack_54 = unaff_s3;\n  if (*(int *)(*(int *)(puVar5 + 0x8eee4) + -0x31ec) == 0) {\n    puVar14 = (undefined *)(*(int *)(puVar5 + 0x8eef4) + -0x17dc);\n    (**(code **)(*(int *)(*(int *)(puVar5 + 0x8eee4) + -0x31f4) + 0xc))\n              (*(undefined4 *)(*(int *)(puVar5 + 0x8eee4) + -0x31f8),puVar14,1);\n    uVar3 = FUN_00028400();\n  }\n  else {\n    xfer_set_error(*(undefined4 *)(*(int *)(puVar5 + 0x8eee4) + -0x3244));\n    iVar2 = *(int *)(puVar5 + 0x8eee4);\n    unaff_s4 = auStack_68;\n    unaff_s3 = &uStack_6c;\n    while (iVar24 = xfer_done(*(undefined4 *)(iVar2 + -0x3244)), iVar24 == 0) {\n      param_1 = (undefined *)sftp_recv();\n      puVar1 = (undefined *)xfer_download_gotpkt(*(undefined4 *)(iVar2 + -0x3244),param_1);\n      if ((int)puVar1 < 1) {\n        param_2 = (undefined *)**(undefined4 **)(puVar5 + 0x8fa5c);\n        uVar7 = fxp_error();\n        puVar14 = (undefined *)(*(int *)(puVar5 + 0x8eef4) + -0x4abc);\n        FUN_00027ff8(param_2,puVar14,uVar7);\n        if (puVar1 == (undefined *)0x80000000) {\n          safefree(param_1);\n          iVar2 = *(int *)(puVar5 + 0x8eee4);\n        }\n        else {\n          iVar2 = *(int *)(puVar5 + 0x8eee4);\n        }\n        *(int *)(iVar2 + -0x31e0) = *(int *)(iVar2 + -0x31e0) + 1;\n        uVar3 = 0xffffffff;\n        goto LAB_0002d318;\n      }\n      iVar24 = xfer_download_data(*(undefined4 *)(iVar2 + -0x3244),unaff_s3,unaff_s4);\n      if (iVar24 != 0) {\n        safefree(uStack_6c);\n      }\n    }\n    xfer_cleanup(*(undefined4 *)(*(int *)(puVar5 + 0x8eee4) + -0x3244));\n    param_2 = (undefined *)fxp_close_send(*(undefined4 *)(*(int *)(puVar5 + 0x8eee4) + -0x3240));\n    uVar7 = sftp_wait_for_reply(param_2);\n    puVar14 = param_2;\n    fxp_close_recv(uVar7);\n    uVar3 = 0;\n  }\nLAB_0002d318:\n  if (pcStack_64 == (char *)**(undefined4 **)(puVar5 + 0x8fa44)) {\n    return uVar3;\n  }\n  pcVar28 = *(code **)(puVar5 + 0x8fa1c);\n  pcVar13 = pcStack_64;\n  (*pcVar28)();\n  pcStack_8138 = pcVar28 + 0x96c70;\n  uStack_b4 = **(uint **)(pcVar28 + 0x8f7f8);\n  pcStack_812c = pcVar13;\n  puStack_8118 = puVar14;\n  puStack_b0 = param_2;\n  puStack_ac = puVar1;\n  puStack_a8 = param_1;\n  puStack_a4 = unaff_s3;\n  puStack_a0 = unaff_s4;\n  iVar2 = (**(code **)(pcVar28 + 0x8ef84))();\n  if ((*(int *)(*(int *)(pcStack_8138 + -0x7fd8) + -0x31d4) != 0) && (iVar2 != 2)) {\n    FUN_00028270(*(int *)(pcStack_8138 + -0x7fc8) + -0x4a68,pcStack_812c);\n  }\n  scp_sink_init();\n  iVar24 = 0;\n  pcStack_8128 = (code *)(*(int *)(pcStack_8138 + -0x7db0) + -0x7d90);\n  pcStack_810c = (code *)(*(int *)(pcStack_8138 + -0x7db0) + -0x6cb8);\n  iStack_8110 = *(int *)(pcStack_8138 + -0x7fc8) + -0x4878;\nLAB_0002d77c:\n  do {\n    iVar4 = scp_get_sink_action(&iStack_80d8);\n    if ((iVar4 != 0) || (iStack_80d8 == 3)) goto LAB_0002da64;\n  } while (iStack_80d8 == 4);\n  if (iVar2 == 2) {\n    param_1 = auStack_100b0;\n    puVar1 = (undefined *)(**(code **)(pcStack_8138 + -0x7cac))(puStack_80d0,1);\n    if (puStack_80d0 != puVar1) {\n      puVar23 = *(undefined4 **)(pcStack_8138 + -0x7460);\n      param_1 = (undefined *)(*(int *)(pcStack_8138 + -0x7fcc) + 0x7ff8);\n      FUN_00027ff8(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x4a54);\n      FUN_00027ff8(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x4a20,puVar1);\n    }\n    iVar4 = (**(code **)(pcStack_8138 + -0x7640))(puVar1,*(int *)(pcStack_8138 + -0x7fc8) + -0x48b0)\n    ;\n    if (puVar1[iVar4] == '\0') {\n      (*pcStack_8128)(*(int *)(pcStack_8138 + -0x7fc8) + -0x49f8);\n    }\n    if (puStack_8118 != (undefined *)0x0) {\n      param_1 = (undefined *)(**(code **)(pcStack_8138 + -0x7cac))(puStack_8118,1);\n      iVar4 = (**(code **)(pcStack_8138 + -0x743c))(puVar1,param_1);\n      if ((iVar4 != 0) &&\n         (puVar23 = *(undefined4 **)(pcStack_8138 + -0x7460),\n         *(int *)(*(int *)(pcStack_8138 + -0x7fd8) + -0x31ec) == 0 &&\n         *(int *)(*(int *)(pcStack_8138 + -0x7fd8) + -0x31dc) == 0)) {\n        FUN_00027ff8(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x49ac,puVar1);\n        FUN_00027ff8(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x4970,param_1);\n        FUN_00027ff8(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x4940);\n        FUN_00027ff8(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x48f8);\n        puVar1 = param_1;\n      }\n    }\n    if (*pcStack_812c == '\0') {\n      unaff_s3 = (undefined4 *)dupstr(puVar1);\n    }\n    else {\n      unaff_s3 = (undefined4 *)(**(code **)(pcStack_8138 + -0x7c78))(pcStack_812c,puVar1);\n    }\n  }\n  else {\n    unaff_s3 = (undefined4 *)dupstr(pcStack_812c);\n  }\n  iVar4 = (**(code **)(pcStack_8138 + -0x7cec))(unaff_s3);\n  if (iStack_80d8 == 2) {\n    if (iVar4 == 0) {\n      iVar4 = (**(code **)(pcStack_8138 + -0x7c80))(unaff_s3);\n      if (iVar4 == 0) {\n        FUN_0002a658(*(int *)(pcStack_8138 + -0x7fc8) + -0x48ac,unaff_s3);\n        safefree(unaff_s3);\n        goto LAB_0002d77c;\n      }\n    }\n    else if (iVar4 != 2) {\n      FUN_0002a658(*(int *)(pcStack_8138 + -0x7fc8) + -0x4a68,unaff_s3);\n      safefree(unaff_s3);\n      goto LAB_0002d77c;\n    }\n    FUN_0002d4e0(unaff_s3,0);\n    safefree(unaff_s3);\n    goto LAB_0002d77c;\n  }\n  unaff_s5 = (**(code **)(pcStack_8138 + -0x7c84))(unaff_s3,uStack_80cc);\n  if (unaff_s5 == 0) {\n    FUN_0002a658(*(int *)(pcStack_8138 + -0x7fc8) + -0x4890,unaff_s3);\n    safefree(unaff_s3);\n    goto LAB_0002d77c;\n  }\n  iStack_8120 = scp_accept_filexfer();\n  if (iStack_8120 == 0) {\n    puVar1 = auStack_100b0;\n    uint64_make(&uStack_80f8,0,0);\n    uStack_8114 = (**(code **)(pcStack_8138 + -0x7488))(0);\n    uStack_811c = (**(code **)(pcStack_8138 + -0x7cac))(unaff_s3,1);\n    uint64_make(&uStack_8100,0,0);\n    iStack_8124 = *(int *)(pcStack_8138 + -0x7fc8);\n    unaff_s7 = *(int *)(pcStack_8138 + -0x7fd8);\nLAB_0002db64:\n    do {\n      iVar4 = uint64_compare(uStack_8100,uStack_80fc,uStack_80c8,uStack_80c4);\n      if (-1 < iVar4) goto LAB_0002de88;\n      uint64_make(&uStack_80f0,0,0x8000);\n      uStack_8148 = uStack_80fc;\n      uint64_subtract(&uStack_80e8,uStack_80c8,uStack_80c4,uStack_8100);\n      iVar4 = uint64_compare(uStack_80f0,uStack_80ec,uStack_80e8,uStack_80e4);\n      if (0 < iVar4) {\n        uStack_8148 = uStack_80fc;\n        uint64_subtract(&uStack_80f0,uStack_80c8,uStack_80c4,uStack_8100);\n      }\n      puVar1 = (undefined *)scp_recv_filedata(auStack_80b4,uStack_80ec);\n      if ((int)puVar1 < 1) {\n        (*pcStack_8128)(iStack_8124 + -0x5640);\n      }\n      if (iVar24 == 0) {\n        puVar5 = (undefined *)(**(code **)(pcStack_8138 + -0x7c68))(unaff_s5,auStack_80b4,puVar1);\n        if (puVar5 == puVar1) {\n          if (*(int *)(unaff_s7 + -0x3fa8) != 0) {\n            uint64_add32(&uStack_8108,uStack_80f8,uStack_80f4,puVar1);\n            uStack_80f8 = uStack_8108;\n            uStack_80f4 = uStack_8104;\n            iVar4 = (**(code **)(pcStack_8138 + -0x7488))(0);\n            if (iVar4 <= iStack_8120) {\n              uint64_add32(&uStack_80e0,uStack_8100,uStack_80fc,puVar1);\n              iVar4 = uint64_compare(uStack_80e0,uStack_80dc,uStack_80c8,uStack_80c4);\n              if (iVar4 != 0) goto LAB_0002dc94;\n            }\n            iStack_8140 = (**(code **)(pcStack_8138 + -0x7488))(0);\n            uStack_8144 = uStack_8114;\n            uStack_8148 = uStack_80f4;\n            iStack_8120 = iStack_8140;\n            (*pcStack_810c)(uStack_811c,uStack_80c8,uStack_80c4,uStack_80f8);\n          }\nLAB_0002dc94:\n          param_1 = auStack_100b0;\n          uint64_add32(&uStack_8108,uStack_8100,uStack_80fc,puVar1);\n          uStack_8100 = uStack_8108;\n          uStack_80fc = uStack_8104;\n          goto LAB_0002db64;\n        }\n        if (*(int *)(unaff_s7 + -0x3fa8) != 0) {\n          (**(code **)(pcStack_8138 + -0x759c))\n                    (1,*(int *)(pcStack_8138 + -0x7fc8) + -0x4850,uStack_811c,iStack_8110);\n        }\n        uint64_add32(&uStack_8108,uStack_8100,uStack_80fc,puVar1);\n      }\n      else {\n        uint64_add32(&uStack_8108,uStack_8100,uStack_80fc,puVar1);\n      }\n      param_1 = auStack_100b0;\n      iVar24 = 1;\n      uStack_8100 = uStack_8108;\n      uStack_80fc = uStack_8104;\n    } while( true );\n  }\n  safefree(unaff_s3);\n  (**(code **)(pcStack_8138 + -0x7c70))(unaff_s5);\nLAB_0002da64:\n  pcVar28 = *(code **)(pcStack_8138 + -0x74a0);\n  if (uStack_b4 == **(uint **)(pcStack_8138 + -0x7478)) {\n    return **(uint **)(pcStack_8138 + -0x7478);\n  }\n  pcVar30 = version;\n  (*pcVar28)();\n  pcStack_8168 = pcVar28 + 0x961d8;\n  uStack_8160 = 0xffff0000;\n  pcStack_815c = pcVar30;\n  uVar6 = buildinfo(*(int *)(pcVar28 + 0x8e210) + 0xaa4);\n  uVar17 = *(undefined4 *)(pcStack_8168 + -0x7da8);\n  iVar4 = *(int *)(pcStack_8168 + -0x7fc8) + -0x482c;\n  uVar7 = uVar6;\n  (**(code **)(pcStack_8168 + -0x759c))(1);\n  safefree(uVar6);\n  uVar12 = 0;\n  pcVar28 = *(code **)(pcStack_8168 + -0x7504);\n  pcVar30 = cmdline_error;\n  (*pcVar28)();\n  pcStack_8198 = pcVar28 + 0x96158;\n  uStack_818c = **(undefined4 **)(pcVar28 + 0x8ece0);\n  puVar23 = *(undefined4 **)(pcVar28 + 0x8ecf8);\n  uStack_8184 = uVar6;\n  puStack_8180 = puVar1;\n  pcStack_817c = pcVar30;\n  iStack_8174 = iVar4;\n  uStack_8170 = uVar17;\n  uStack_816c = uVar7;\n  (**(code **)(pcVar28 + 0x8ec90))(*(int *)(pcVar28 + 0x8e190) + -0x4e28,1,6,*puVar23);\n  piStack_8190 = &iStack_8174;\n  (**(code **)(pcStack_8198 + -0x7444))(*puVar23,1,uVar12);\n  iVar15 = 1;\n  (**(code **)(pcStack_8198 + -0x74c8))(*(int *)(pcStack_8198 + -0x7fc8) + -0x481c,1,0x27,*puVar23);\n  iVar4 = 1;\n  pcVar28 = *(code **)(pcStack_8198 + -0x7504);\n  pcVar30 = psftp_main;\n  (*pcVar28)();\n  pcStack_81e8 = pcVar28 + 0x9609c;\n  puStack_81d4 = (undefined4 *)**(undefined4 **)(pcVar28 + 0x8ec24);\n  **(undefined4 **)(pcVar28 + 0x8e144) = 1;\n  **(undefined4 **)(pcVar28 + 0x8e158) = 2;\n  **(undefined4 **)(pcVar28 + 0x8e120) = 1;\n  puStack_81d0 = puVar23;\n  uStack_81cc = uVar12;\n  puStack_81c8 = param_1;\n  puStack_81c4 = unaff_s3;\n  iStack_81c0 = iVar24;\n  iStack_81bc = unaff_s5;\n  piStack_81b8 = &iStack_80d8;\n  iStack_81b4 = unaff_s7;\n  iStack_81b0 = iVar2;\n  pcStack_81ac = pcVar30;\n  (**(code **)(pcVar28 + 0x8e444))();\n  uVar7 = conf_new();\n  *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31fc) = uVar7;\n  do_defaults(0,uVar7);\n  **(undefined4 **)(pcStack_81e8 + -0x7f60) = 0;\n  pcVar28 = pcStack_81e8;\n  if (iVar4 < 2) {\n    iVar2 = 1;\n  }\n  else {\n    pcVar13 = *(char **)(iVar15 + 4);\n    piVar19 = (int *)(iVar15 + 4);\n    if (*pcVar13 == '-') {\n      iVar25 = *(int *)(pcStack_81e8 + -0x7fd8);\n      iVar26 = *(int *)(pcStack_81e8 + -0x7fc8);\n      pcVar27 = (char *)(*(int *)(pcStack_81e8 + -0x7fc8) + -0x47b8);\n      iVar29 = *(int *)(pcStack_81e8 + -0x7fc8);\n      pcStack_81dc = (code *)(*(int *)(pcStack_81e8 + -0x7db0) + -0x79e4);\n      iVar24 = 1;\nLAB_0002e488:\n      iVar2 = iVar24 + 1;\n      uVar7 = 0;\n      if (iVar2 < iVar4) {\n        uVar7 = *(undefined4 *)(iVar15 + (iVar24 + 1) * 4);\n      }\n      iVar8 = cmdline_process_param(pcVar13,uVar7,1,*(undefined4 *)(iVar25 + -0x31fc));\n      pcVar28 = pcStack_81e8;\n      if (iVar8 == -2) {\n        cmdline_error(*(int *)(pcStack_81e8 + -0x7fc8) + -0x47e4,*piVar19);\n        uVar7 = extraout_v1;\nLAB_0002e1d0:\n        iVar2 = iVar24;\n        if ((**(uint **)(pcVar28 + -0x7f44) & 1) != 0) {\n          *(undefined4 *)(*(int *)(pcVar28 + -0x7fd8) + -0x31c8) = uVar7;\n        }\n        goto LAB_0002e464;\n      }\n      uVar7 = 1;\n      if (iVar8 == 2) goto LAB_0002e464;\n      if (iVar8 == 1) goto LAB_0002e1d0;\n      iVar20 = *piVar19;\n      iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar26 + -0x47c0);\n      if (iVar8 == 0) {\n        (**(code **)(pcStack_81e8 + -0x7c54))();\n        uVar3 = 1;\n        goto LAB_0002e878;\n      }\n      iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20);\n      if (iVar8 == 0) {\n        *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31cc) = 1;\n        pcVar28 = pcStack_81e8;\n        iVar2 = iVar24;\n      }\n      else {\n        iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar29 + -0x47b4);\n        if (iVar8 == 0) {\n          *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d0) = 1;\n          pcVar28 = pcStack_81e8;\n          iVar2 = iVar24;\n        }\n        else {\n          iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                            (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47b0);\n          if (iVar8 == 0) {\n            *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fa8) = 0;\n            pcVar28 = pcStack_81e8;\n            iVar2 = iVar24;\n          }\n          else {\n            iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                              (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47ac);\n            if ((iVar8 != 0) &&\n               (iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                  (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47a8), iVar8 != 0))\n            {\n              iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47a4);\n              if (iVar8 != 0) {\n                iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                  (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x479c);\n                iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                if (iVar8 == 0) {\nLAB_0002e348:\n                  pcVar28 = pcStack_81e8;\n                  version();\n                }\n                else {\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar16 + -0x4798);\n                  iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                  if (iVar8 == 0) goto LAB_0002e348;\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar16 + -0x478c);\n                  iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                  pcVar28 = pcStack_81e8;\n                  if (iVar8 == 0) {\n                    *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31c4) = 1;\n                    iVar2 = iVar24;\n                    goto LAB_0002e464;\n                  }\n                }\n                iVar8 = (**(code **)(pcVar28 + -0x743c))(iVar20,iVar16 + -0x4788);\n                if (iVar8 == 0) {\n                  **(undefined4 **)(pcStack_81e8 + -0x7c4c) = 1;\n                  pcVar28 = pcStack_81e8;\n                  iVar2 = iVar24;\n                }\n                else {\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                    (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4780);\n                  if (iVar8 == 0) {\n                    *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31dc) = 1;\n                    pcVar28 = pcStack_81e8;\n                    iVar2 = iVar24;\n                  }\n                  else {\n                    iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                      (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4778);\n                    if (iVar8 == 0) {\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac) = 0;\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0) = 1;\n                      pcVar28 = pcStack_81e8;\n                      iVar2 = iVar24;\n                      goto LAB_0002e464;\n                    }\n                    iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                      (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4770);\n                    if (iVar8 == 0) {\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac) = 1;\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0) = 0;\n                      pcVar28 = pcStack_81e8;\n                      iVar2 = iVar24;\n                    }\n                    else {\n                      iVar24 = (**(code **)(pcStack_81e8 + -0x743c))\n                                         (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4768);\n                      pcVar28 = pcStack_81e8;\n                      if (iVar24 == 0) goto LAB_0002e52c;\n                      cmdline_error(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4764,iVar20);\n                    }\n                  }\n                }\n                goto LAB_0002e464;\n              }\n            }\n            (*pcStack_81dc)();\n            pcVar28 = pcStack_81e8;\n            iVar2 = iVar24;\n          }\n        }\n      }\nLAB_0002e464:\n      iVar2 = iVar2 + 1;\n      if (iVar4 <= iVar2) goto LAB_0002e52c;\n      piVar19 = (int *)(iVar15 + iVar2 * 4);\n      pcVar13 = (char *)*piVar19;\n      iVar24 = iVar2;\n      if (*pcVar13 != '-') goto LAB_0002e52c;\n      goto LAB_0002e488;\n    }\n    iVar2 = 1;\n  }\nLAB_0002e52c:\n  iVar4 = iVar4 - iVar2;\n  *(undefined4 *)(*(int *)(pcVar28 + -0x7fd8) + -0x31f4) = 0;\n  puVar23 = (undefined4 *)(iVar15 + iVar2 * 4);\n  if (*(int *)(*(int *)(pcVar28 + -0x7fd8) + -0x31c4) == 0) {\n    if (iVar4 < 2) {\n      FUN_0002861c();\n      puVar18 = puVar23 + iVar4 + 0x3fffffff;\n      iVar24 = FUN_00028968(*puVar18);\n      iVar2 = *(int *)(pcStack_81e8 + -0x7fd8);\n      if (iVar24 != 0) goto LAB_0002e90c;\n      *(undefined4 *)(iVar2 + -0x31f0) = 0;\nLAB_0002efd8:\n      iVar2 = *(int *)(pcStack_81e8 + -0x7fc8);\nLAB_0002efdc:\n      FUN_00028270(iVar2 + -0x4668);\n      pcVar13 = (char *)*puVar23;\nLAB_0002eb34:\n      uVar7 = puVar23[1];\n      puVar9 = (undefined1 *)FUN_00028968(pcVar13);\n      if (puVar9 == (undefined1 *)0x0) {\n        FUN_00028270(*(int *)(pcStack_81e8 + -0x7fc8) + -0x463c);\n        uRam00000000 = 0;\n      }\n      else {\n        *puVar9 = 0;\n      }\n      if (puVar9[1] == '\0') {\n        pcVar27 = (char *)(*(int *)(pcStack_81e8 + -0x7fc8) + -0x48b0);\n      }\n      else {\n        pcVar27 = puVar9 + 1;\n      }\n      puVar9 = (undefined1 *)(**(code **)(pcStack_81e8 + -0x75b8))(pcVar13,0x40);\n      if (puVar9 == (undefined1 *)0x0) {\n        pcVar21 = (char *)0x0;\n      }\n      else {\n        *puVar9 = 0;\n        cVar11 = *pcVar13;\n        pcVar21 = pcVar13;\n        pcVar13 = puVar9 + 1;\n        if (cVar11 == '\0') {\n          pcVar21 = (char *)0x0;\n        }\n      }\n      if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31c8) == 0) {\n        iVar2 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iVar2 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47f4;\n      }\n      if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31cc) == 0) {\n        iVar24 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iVar24 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47f0;\n      }\n      if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d0) == 0) {\n        iVar4 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iVar4 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47ec;\n      }\n      if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4) == 0) {\n        iStack_81f0 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iStack_81f0 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47e8;\n      }\n      pcStack_81ec = pcVar27;\n      uVar6 = dupprintf(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4618,iVar2,iVar24,iVar4);\n      FUN_00028a00(pcVar13,pcVar21,uVar6);\n      safefree(uVar6);\n      iVar2 = scp_sink_setup(pcVar27,*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d0),\n                             *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31cc));\n      if (iVar2 == 0) {\n        FUN_0002d4e0(uVar7);\n        iVar2 = *(int *)(pcStack_81e8 + -0x7fd8);\n        goto LAB_0002e788;\n      }\n    }\n    else {\n      if (iVar4 < 3) {\n        puVar18 = puVar23 + iVar4 + 0x3fffffff;\n        iVar2 = FUN_00028968(*puVar18);\n        if (iVar2 == 0) {\n          *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f0) = 0;\n          iVar2 = *(int *)(pcStack_81e8 + -0x7fc8);\n          if (iVar4 != 2) goto LAB_0002efdc;\n          pcVar13 = (char *)*puVar23;\n          goto LAB_0002eb34;\n        }\n      }\n      else {\n        *(undefined4 *)(*(int *)(pcVar28 + -0x7fd8) + -0x31d4) = 1;\n        puVar18 = puVar23 + iVar4 + 0x3fffffff;\n        iVar2 = FUN_00028968(*puVar18);\n        if (iVar2 == 0) {\n          *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f0) = 0;\n          goto LAB_0002efd8;\n        }\n      }\n      iVar2 = *(int *)(pcStack_81e8 + -0x7fd8);\nLAB_0002e90c:\n      *(undefined4 *)(iVar2 + -0x31f0) = 1;\n      pcVar13 = (char *)*puVar18;\n      puVar9 = (undefined1 *)FUN_00028968(pcVar13);\n      if (puVar9 == (undefined1 *)0x0) {\n        FUN_00028270(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4720);\n        uRam00000000 = 0;\n      }\n      else {\n        *puVar9 = 0;\n      }\n      if (puVar9[1] == '\0') {\n        pcVar21 = (char *)(*(int *)(pcStack_81e8 + -0x7fc8) + -0x48b0);\n      }\n      else {\n        pcVar21 = puVar9 + 1;\n      }\n      puVar9 = (undefined1 *)(**(code **)(pcStack_81e8 + -0x75b8))(pcVar13,0x40);\n      if (puVar9 == (undefined1 *)0x0) {\n        pcVar27 = (char *)0x0;\n      }\n      else {\n        *puVar9 = 0;\n        cVar11 = *pcVar13;\n        pcVar27 = pcVar13;\n        pcVar13 = puVar9 + 1;\n        if (cVar11 == '\0') {\n          pcVar27 = (char *)0x0;\n        }\n      }\n      if (iVar4 == 2) {\n        iVar2 = FUN_00028968(*puVar23);\n        if (iVar2 != 0) {\n          FUN_00028270(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4704,*puVar23);\n        }\n        iVar2 = (**(code **)(pcStack_81e8 + -0x7c30))(*puVar23,1);\n        if (iVar2 == 0) {\n          FUN_00028270(*(int *)(pcStack_81e8 + -0x7fc8) + -0x46e0,*puVar23);\n          iVar24 = *(int *)(pcStack_81e8 + -0x7fd8);\n        }\n        else {\n          iVar24 = *(int *)(pcStack_81e8 + -0x7fd8);\n          if (iVar2 == 2) {\n            *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4) = 1;\n            goto LAB_0002e988;\n          }\n        }\n      }\n      else {\nLAB_0002e988:\n        iVar24 = *(int *)(pcStack_81e8 + -0x7fd8);\n      }\n      if (*(int *)(iVar24 + -0x31c8) == 0) {\n        iVar2 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iVar2 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47f4;\n      }\n      if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31cc) == 0) {\n        iVar24 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iVar24 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47f0;\n      }\n      if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d0) == 0) {\n        iVar15 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iVar15 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47ec;\n      }\n      if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4) == 0) {\n        iStack_81f0 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iStack_81f0 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47e8;\n      }\n      pcStack_81ec = pcVar21;\n      uVar7 = dupprintf(*(int *)(pcStack_81e8 + -0x7fc8) + -0x46c0,iVar2,iVar24,iVar15);\n      FUN_00028a00(pcVar13,pcVar27,uVar7);\n      safefree(uVar7);\n      pcVar27 = *(char **)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4);\n      iVar2 = scp_source_setup(pcVar21);\n      if ((iVar2 == 0) && (1 < iVar4)) {\n        puVar18 = puVar23 + iVar4 + -1;\n        iVar24 = *(int *)(pcStack_81e8 + -0x7db0);\n        iVar25 = *(int *)(pcStack_81e8 + -0x7fc8);\n        iVar15 = *(int *)(pcStack_81e8 + -0x7db0);\n        iVar4 = *(int *)(pcStack_81e8 + -0x7fc8);\n        do {\n          pcVar13 = (char *)*puVar23;\n          iVar2 = FUN_00028968(pcVar13);\n          if (iVar2 == 0) {\n            pcVar27 = (char *)0x1;\n            iVar2 = (**(code **)(pcStack_81e8 + -0x7c30))(pcVar13,1,pcVar13);\n            if (iVar2 == 0) {\n              (*(code *)(iVar15 + -0x59a8))(iVar25 + -0x4688);\n              pcVar27 = pcVar13;\n            }\n            else if (iVar2 == 1) {\n              (*(code *)(iVar24 + -0x4b8c))(pcVar13);\n            }\n            else {\n              iVar2 = (**(code **)(pcStack_81e8 + -0x7c2c))();\n              if (iVar2 == 0) {\n                (*(code *)(iVar15 + -0x59a8))(iVar25 + -0x4688);\n                pcVar27 = pcVar13;\n              }\n              else {\n                while (iVar26 = (**(code **)(pcStack_81e8 + -0x7c28))(iVar2), iVar26 != 0) {\n                  (*(code *)(iVar24 + -0x4b8c))(iVar26);\n                  safefree(iVar26);\n                }\n                (**(code **)(pcStack_81e8 + -0x7c24))(iVar2);\n              }\n            }\n          }\n          else {\n            pcVar27 = (char *)(iVar4 + -0x46ac);\n            FUN_00027ff8(**(undefined4 **)(pcStack_81e8 + -0x7460));\n            *(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31e0) =\n                 *(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31e0) + 1;\n          }\n          puVar23 = puVar23 + 1;\n          iVar2 = *(int *)(pcStack_81e8 + -0x7fd8);\n        } while (puVar18 != puVar23);\n        goto LAB_0002e788;\n      }\n    }\n  }\n  else {\n    if (iVar4 == 1) {\n      pcVar13 = (char *)*puVar23;\n    }\n    else {\n      FUN_0002861c();\n      pcVar13 = (char *)*puVar23;\n    }\n    puVar9 = (undefined1 *)FUN_00028968(pcVar13);\n    if (puVar9 == (undefined1 *)0x0) {\n      FUN_00028270(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4750);\n      uRam00000000 = 0;\n    }\n    else {\n      *puVar9 = 0;\n    }\n    if (puVar9[1] == '\0') {\n      puVar9 = (undefined1 *)(**(code **)(pcStack_81e8 + -0x75b8))(pcVar13,0x40);\n      if (puVar9 == (undefined1 *)0x0) {\n        puVar23 = (undefined4 *)safemalloc(0x68,1);\n        iVar2 = *(int *)(pcStack_81e8 + -0x7fc8);\n        uVar7 = *(undefined4 *)(iVar2 + -0x4728);\n        *puVar23 = *(undefined4 *)(iVar2 + -0x472c);\n        puVar23[1] = uVar7;\n        *(undefined1 *)(puVar23 + 2) = *(undefined1 *)(iVar2 + -0x4724);\n        iVar2 = (**(code **)(pcStack_81e8 + -0x752c))(puVar23);\n        pcVar10 = (char *)((int)puVar23 + iVar2);\n        pcVar21 = (char *)(*(int *)(pcStack_81e8 + -0x7fc8) + -0x48b0);\n        cVar11 = '.';\n        pcVar27 = (char *)0x0;\n        pcVar22 = pcVar21;\n        goto LAB_0002e6b4;\n      }\n      pcVar21 = (char *)(*(int *)(pcStack_81e8 + -0x7fc8) + -0x48b0);\nLAB_0002e5ac:\n      *puVar9 = 0;\n      cVar11 = *pcVar13;\n      pcVar27 = pcVar13;\n      pcVar13 = puVar9 + 1;\n      if (cVar11 == '\0') {\n        pcVar27 = (char *)0x0;\n      }\n    }\n    else {\n      pcVar21 = puVar9 + 1;\n      puVar9 = (undefined1 *)(**(code **)(pcStack_81e8 + -0x75b8))(pcVar13);\n      if (puVar9 != (undefined1 *)0x0) goto LAB_0002e5ac;\n      pcVar27 = (char *)0x0;\n    }\n    iVar2 = (**(code **)(pcStack_81e8 + -0x752c))(pcVar21);\n    puVar23 = (undefined4 *)safemalloc((iVar2 + 0x19) * 4,1);\n    iVar2 = *(int *)(pcStack_81e8 + -0x7fc8);\n    uVar7 = *(undefined4 *)(iVar2 + -0x4728);\n    *puVar23 = *(undefined4 *)(iVar2 + -0x472c);\n    puVar23[1] = uVar7;\n    *(undefined1 *)(puVar23 + 2) = *(undefined1 *)(iVar2 + -0x4724);\n    iVar2 = (**(code **)(pcStack_81e8 + -0x752c))(puVar23);\n    pcVar10 = (char *)((int)puVar23 + iVar2);\n    cVar11 = *pcVar21;\n    pcVar22 = pcVar21;\n    while (cVar11 != '\0') {\nLAB_0002e6b4:\n      if (cVar11 == '\'') {\n        builtin_strncpy(pcVar10,"\'\\\'\'",4);\n        pcVar10 = pcVar10 + 4;\n      }\n      else {\n        *pcVar10 = cVar11;\n        pcVar10 = pcVar10 + 1;\n      }\n      pcVar21 = pcVar21 + 1;\n      cVar11 = *pcVar21;\n    }\n    *pcVar10 = '\'';\n    pcVar10[1] = '\0';\n    FUN_00028a00(pcVar13,pcVar27,puVar23);\n    safefree(puVar23);\n    if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31ec) != 0) {\n      scp_sftp_listdir(pcVar22);\n      iVar2 = *(int *)(pcStack_81e8 + -0x7fd8);\n      goto LAB_0002e788;\n    }\n    puVar23 = *(undefined4 **)(pcStack_81e8 + -0x7594);\n    while( true ) {\n      pcVar27 = (char *)0x1;\n      iVar2 = FUN_000280f4(&cStack_81d5);\n      if (iVar2 < 1) break;\n      (**(code **)(pcStack_81e8 + -0x75c4))((int)cStack_81d5,*puVar23);\n    }\n  }\n  iVar2 = *(int *)(pcStack_81e8 + -0x7fd8);\nLAB_0002e788:\n  pcVar28 = *(code **)(pcStack_81e8 + -0x7c44);\n  if (*(int *)(iVar2 + -0x31f4) != 0) {\n    iVar2 = (**(code **)(*(int *)(iVar2 + -0x31f4) + 0x20))\n                      (*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f8));\n    pcVar28 = *(code **)(pcStack_81e8 + -0x7c44);\n    if (iVar2 != 0) {\n      (**(code **)(*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f4) + 0x18))\n                (*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f8),0xc);\n      **(undefined4 **)(pcStack_81e8 + -0x7db4) = 1;\n      pcVar27 = (char *)0x1;\n      FUN_000280f4(&cStack_81d5);\n      pcVar28 = *(code **)(pcStack_81e8 + -0x7c44);\n    }\n  }\n  (*pcVar28)();\n  cmdline_cleanup();\n  (**(code **)(pcStack_81e8 + -0x7d88))(0);\n  iVar20 = *(int *)(pcStack_81e8 + -0x7fd8);\n  iVar24 = *(int *)(pcStack_81e8 + -0x7fd8);\n  (**(code **)(*(int *)(iVar24 + -0x31f4) + 4))(*(undefined4 *)(iVar20 + -0x31f8));\n  *(undefined4 *)(iVar20 + -0x31f8) = 0;\n  *(undefined4 *)(iVar24 + -0x31f4) = 0;\n  (**(code **)(pcStack_81e8 + -0x7c3c))();\n  uVar3 = (uint)(*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31e0) != 0);\nLAB_0002e878:\n  if (puStack_81d4 == (undefined4 *)**(int **)(pcStack_81e8 + -0x7478)) {\n    return uVar3;\n  }\n  pcVar28 = *(code **)(pcStack_81e8 + -0x74a0);\n  uVar12 = 0x2f008;\n  puVar23 = puStack_81d4;\n  (*pcVar28)();\n  pcStack_8218 = pcVar28 + 0x95140;\n  uVar7 = *puVar23;\n  uVar6 = *(undefined4 *)pcVar27;\n  iStack_820c = iVar24;\n  iStack_8208 = iVar20;\n  uStack_8204 = uVar12;\n  iVar2 = (**(code **)(pcVar28 + 0x8dd04))(uVar7,*(int *)(pcVar28 + 0x8d178) + -0x4584);\n  if (iVar2 == 0) {\n    uVar3 = 0xffffffff;\n  }\n  else {\n    iVar2 = (**(code **)(pcStack_8218 + -0x743c))(uVar6,*(int *)(pcStack_8218 + -0x7fc8) + -0x4584);\n    if (iVar2 == 0) {\n      uVar3 = 1;\n    }\n    else {\n      uVar3 = (**(code **)(pcStack_8218 + -0x743c))(uVar7,uVar6);\n    }\n  }\n  return uVar3;\nLAB_0002de88:\n  if (iStack_80c0 != 0) {\n    (**(code **)(pcStack_8138 + -0x7c60))(unaff_s5,uStack_80b8,uStack_80bc);\n  }\n  (**(code **)(pcStack_8138 + -0x7c70))(unaff_s5);\n  if (iVar24 == 0) {\n    scp_finish_filerecv();\n    safefree(unaff_s3);\n    safefree(uStack_80d4);\n  }\n  else {\n    FUN_0002a658(*(int *)(pcStack_8138 + -0x7fc8) + -0x483c,unaff_s3);\n    safefree(unaff_s3);\n  }\n  goto LAB_0002d77c;\n}" type_identifier (function_declarator "scp_recv_filedata(undefined *param_1,undefined *param_2)" identifier (parameter_list "(undefined *param_1,undefined *param_2)" ( (parameter_declaration "undefined *param_1" type_identifier (pointer_declarator "*param_1" * identifier)) , (parameter_declaration "undefined *param_2" type_identifier (pointer_declarator "*param_2" * identifier)) ))) (compound_statement "{\n  undefined *puVar1;\n  int iVar2;\n  uint uVar3;\n  int iVar4;\n  undefined *puVar5;\n  undefined4 uVar6;\n  undefined4 uVar7;\n  int iVar8;\n  undefined1 *puVar9;\n  char *pcVar10;\n  undefined4 extraout_v1;\n  char cVar11;\n  undefined4 uVar12;\n  char *pcVar13;\n  undefined *puVar14;\n  int iVar15;\n  int iVar16;\n  undefined4 uVar17;\n  undefined4 *puVar18;\n  int *piVar19;\n  int iVar20;\n  char *pcVar21;\n  char *pcVar22;\n  undefined4 *unaff_s3;\n  undefined4 *puVar23;\n  undefined1 *unaff_s4;\n  int iVar24;\n  int unaff_s5;\n  int iVar25;\n  int iVar26;\n  int unaff_s7;\n  char *pcVar27;\n  code *pcVar28;\n  int iVar29;\n  code *pcVar30;\n  undefined auStack_100b0 [32408];\n  code *pcStack_8218;\n  int iStack_820c;\n  int iStack_8208;\n  undefined4 uStack_8204;\n  int iStack_81f0;\n  char *pcStack_81ec;\n  code *pcStack_81e8;\n  code *pcStack_81dc;\n  char cStack_81d5;\n  undefined4 *puStack_81d4;\n  undefined4 *puStack_81d0;\n  undefined4 uStack_81cc;\n  undefined *puStack_81c8;\n  undefined4 *puStack_81c4;\n  int iStack_81c0;\n  int iStack_81bc;\n  int *piStack_81b8;\n  int iStack_81b4;\n  int iStack_81b0;\n  code *pcStack_81ac;\n  code *pcStack_8198;\n  int *piStack_8190;\n  undefined4 uStack_818c;\n  undefined4 uStack_8184;\n  undefined *puStack_8180;\n  code *pcStack_817c;\n  int iStack_8174;\n  undefined4 uStack_8170;\n  undefined4 uStack_816c;\n  code *pcStack_8168;\n  undefined4 uStack_8160;\n  code *pcStack_815c;\n  undefined4 uStack_8148;\n  undefined4 uStack_8144;\n  int iStack_8140;\n  code *pcStack_8138;\n  char *pcStack_812c;\n  code *pcStack_8128;\n  int iStack_8124;\n  int iStack_8120;\n  undefined4 uStack_811c;\n  undefined *puStack_8118;\n  undefined4 uStack_8114;\n  int iStack_8110;\n  code *pcStack_810c;\n  undefined4 uStack_8108;\n  undefined4 uStack_8104;\n  undefined4 uStack_8100;\n  undefined4 uStack_80fc;\n  undefined4 uStack_80f8;\n  undefined4 uStack_80f4;\n  undefined4 uStack_80f0;\n  undefined4 uStack_80ec;\n  undefined4 uStack_80e8;\n  undefined4 uStack_80e4;\n  undefined4 uStack_80e0;\n  undefined4 uStack_80dc;\n  int iStack_80d8;\n  undefined4 uStack_80d4;\n  undefined *puStack_80d0;\n  undefined4 uStack_80cc;\n  undefined4 uStack_80c8;\n  undefined4 uStack_80c4;\n  int iStack_80c0;\n  undefined4 uStack_80bc;\n  undefined4 uStack_80b8;\n  undefined1 auStack_80b4 [32768];\n  uint uStack_b4;\n  undefined *puStack_b0;\n  undefined *puStack_ac;\n  undefined *puStack_a8;\n  undefined4 *puStack_a4;\n  undefined1 *puStack_a0;\n  undefined4 uStack_6c;\n  undefined1 auStack_68 [4];\n  char *pcStack_64;\n  undefined *puStack_60;\n  undefined *puStack_5c;\n  undefined *puStack_58;\n  undefined4 *puStack_54;\n  undefined4 local_30;\n  undefined4 local_2c;\n  uint local_24;\n  undefined4 local_20;\n  int local_1c;\n  \n  puVar1 = PTR_DAT_000bc178;\n  local_1c = *(int *)PTR___stack_chk_guard_000bccd8;\n  if (*(int *)(PTR_DAT_000bc178 + -0x31ec) == 0) {\n    uVar3 = FUN_000280f4();\n  }\n  else {\n    xfer_download_queue(*(undefined4 *)(PTR_DAT_000bc178 + -0x3244));\n    unaff_s3 = (undefined4 *)sftp_recv();\n    puVar1 = (undefined *)xfer_download_gotpkt(*(undefined4 *)(puVar1 + -0x3244),unaff_s3);\n    if ((int)puVar1 < 1) {\n      param_2 = *(undefined **)PTR_stderr_000bccf0;\n      uVar7 = fxp_error();\n      FUN_00027ff8(param_2,PTR_s_Server_sent_command_exit_status___000bc188 + -0x4abc,uVar7);\n      if (puVar1 == (undefined *)0x80000000) {\n        safefree(unaff_s3);\n      }\n      *(int *)(PTR_DAT_000bc178 + -0x31e0) = *(int *)(PTR_DAT_000bc178 + -0x31e0) + 1;\n      uVar3 = 0xffffffff;\n    }\n    else {\n      iVar2 = xfer_download_data(*(undefined4 *)(PTR_DAT_000bc178 + -0x3244),&local_20,&local_24);\n      if (iVar2 == 0) {\n        local_24 = 0;\n      }\n      else {\n        param_2 = (undefined *)(uint)((int)param_2 < (int)local_24);\n        if ((int)local_24 < 1) {\n          FUN_00027ff8(*(undefined4 *)PTR_stderr_000bccf0,\n                       PTR_s_Server_sent_command_exit_status___000bc188 + -0x4a9c);\n          *(int *)(PTR_DAT_000bc178 + -0x31e0) = *(int *)(PTR_DAT_000bc178 + -0x31e0) + 1;\n          safefree(local_20);\n          uVar3 = 0xffffffff;\n          goto LAB_0002d148;\n        }\n        if (param_2 != (undefined *)0x0) {\n          uVar3 = (*(code *)PTR___assert_fail_000bcb00)\n                            (PTR_s_Server_sent_command_exit_status___000bc188 + -0x4a7c,\n                             PTR_s_Server_sent_command_exit_status___000bc188 + -0x4fb0,0x628,\n                             PTR_s_Server_sent_command_exit_status___000bc188 + -0x45f0);\n          return uVar3;\n        }\n        (*(code *)PTR_memcpy_000bccdc)(param_1,local_20);\n        safefree(local_20);\n      }\n      param_2 = PTR_DAT_000bc178;\n      puVar1 = PTR_DAT_000bc178 + -0x324c;\n      uint64_add32(&local_30,*(undefined4 *)(PTR_DAT_000bc178 + -0x324c),\n                   *(undefined4 *)(PTR_DAT_000bc178 + -0x3248),local_24);\n      *(undefined4 *)(param_2 + -0x324c) = local_30;\n      *(undefined4 *)(param_2 + -0x3248) = local_2c;\n      uVar3 = local_24;\n    }\n  }\nLAB_0002d148:\n  if (local_1c == *(int *)PTR___stack_chk_guard_000bccd8) {\n    return uVar3;\n  }\n  puVar5 = PTR___stack_chk_fail_000bccb0;\n  (*(code *)PTR___stack_chk_fail_000bccb0)();\n  pcStack_64 = (char *)**(undefined4 **)(puVar5 + 0x8fa44);\n  puStack_60 = param_2;\n  puStack_5c = puVar1;\n  puStack_58 = param_1;\n  puStack_54 = unaff_s3;\n  if (*(int *)(*(int *)(puVar5 + 0x8eee4) + -0x31ec) == 0) {\n    puVar14 = (undefined *)(*(int *)(puVar5 + 0x8eef4) + -0x17dc);\n    (**(code **)(*(int *)(*(int *)(puVar5 + 0x8eee4) + -0x31f4) + 0xc))\n              (*(undefined4 *)(*(int *)(puVar5 + 0x8eee4) + -0x31f8),puVar14,1);\n    uVar3 = FUN_00028400();\n  }\n  else {\n    xfer_set_error(*(undefined4 *)(*(int *)(puVar5 + 0x8eee4) + -0x3244));\n    iVar2 = *(int *)(puVar5 + 0x8eee4);\n    unaff_s4 = auStack_68;\n    unaff_s3 = &uStack_6c;\n    while (iVar24 = xfer_done(*(undefined4 *)(iVar2 + -0x3244)), iVar24 == 0) {\n      param_1 = (undefined *)sftp_recv();\n      puVar1 = (undefined *)xfer_download_gotpkt(*(undefined4 *)(iVar2 + -0x3244),param_1);\n      if ((int)puVar1 < 1) {\n        param_2 = (undefined *)**(undefined4 **)(puVar5 + 0x8fa5c);\n        uVar7 = fxp_error();\n        puVar14 = (undefined *)(*(int *)(puVar5 + 0x8eef4) + -0x4abc);\n        FUN_00027ff8(param_2,puVar14,uVar7);\n        if (puVar1 == (undefined *)0x80000000) {\n          safefree(param_1);\n          iVar2 = *(int *)(puVar5 + 0x8eee4);\n        }\n        else {\n          iVar2 = *(int *)(puVar5 + 0x8eee4);\n        }\n        *(int *)(iVar2 + -0x31e0) = *(int *)(iVar2 + -0x31e0) + 1;\n        uVar3 = 0xffffffff;\n        goto LAB_0002d318;\n      }\n      iVar24 = xfer_download_data(*(undefined4 *)(iVar2 + -0x3244),unaff_s3,unaff_s4);\n      if (iVar24 != 0) {\n        safefree(uStack_6c);\n      }\n    }\n    xfer_cleanup(*(undefined4 *)(*(int *)(puVar5 + 0x8eee4) + -0x3244));\n    param_2 = (undefined *)fxp_close_send(*(undefined4 *)(*(int *)(puVar5 + 0x8eee4) + -0x3240));\n    uVar7 = sftp_wait_for_reply(param_2);\n    puVar14 = param_2;\n    fxp_close_recv(uVar7);\n    uVar3 = 0;\n  }\nLAB_0002d318:\n  if (pcStack_64 == (char *)**(undefined4 **)(puVar5 + 0x8fa44)) {\n    return uVar3;\n  }\n  pcVar28 = *(code **)(puVar5 + 0x8fa1c);\n  pcVar13 = pcStack_64;\n  (*pcVar28)();\n  pcStack_8138 = pcVar28 + 0x96c70;\n  uStack_b4 = **(uint **)(pcVar28 + 0x8f7f8);\n  pcStack_812c = pcVar13;\n  puStack_8118 = puVar14;\n  puStack_b0 = param_2;\n  puStack_ac = puVar1;\n  puStack_a8 = param_1;\n  puStack_a4 = unaff_s3;\n  puStack_a0 = unaff_s4;\n  iVar2 = (**(code **)(pcVar28 + 0x8ef84))();\n  if ((*(int *)(*(int *)(pcStack_8138 + -0x7fd8) + -0x31d4) != 0) && (iVar2 != 2)) {\n    FUN_00028270(*(int *)(pcStack_8138 + -0x7fc8) + -0x4a68,pcStack_812c);\n  }\n  scp_sink_init();\n  iVar24 = 0;\n  pcStack_8128 = (code *)(*(int *)(pcStack_8138 + -0x7db0) + -0x7d90);\n  pcStack_810c = (code *)(*(int *)(pcStack_8138 + -0x7db0) + -0x6cb8);\n  iStack_8110 = *(int *)(pcStack_8138 + -0x7fc8) + -0x4878;\nLAB_0002d77c:\n  do {\n    iVar4 = scp_get_sink_action(&iStack_80d8);\n    if ((iVar4 != 0) || (iStack_80d8 == 3)) goto LAB_0002da64;\n  } while (iStack_80d8 == 4);\n  if (iVar2 == 2) {\n    param_1 = auStack_100b0;\n    puVar1 = (undefined *)(**(code **)(pcStack_8138 + -0x7cac))(puStack_80d0,1);\n    if (puStack_80d0 != puVar1) {\n      puVar23 = *(undefined4 **)(pcStack_8138 + -0x7460);\n      param_1 = (undefined *)(*(int *)(pcStack_8138 + -0x7fcc) + 0x7ff8);\n      FUN_00027ff8(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x4a54);\n      FUN_00027ff8(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x4a20,puVar1);\n    }\n    iVar4 = (**(code **)(pcStack_8138 + -0x7640))(puVar1,*(int *)(pcStack_8138 + -0x7fc8) + -0x48b0)\n    ;\n    if (puVar1[iVar4] == '\0') {\n      (*pcStack_8128)(*(int *)(pcStack_8138 + -0x7fc8) + -0x49f8);\n    }\n    if (puStack_8118 != (undefined *)0x0) {\n      param_1 = (undefined *)(**(code **)(pcStack_8138 + -0x7cac))(puStack_8118,1);\n      iVar4 = (**(code **)(pcStack_8138 + -0x743c))(puVar1,param_1);\n      if ((iVar4 != 0) &&\n         (puVar23 = *(undefined4 **)(pcStack_8138 + -0x7460),\n         *(int *)(*(int *)(pcStack_8138 + -0x7fd8) + -0x31ec) == 0 &&\n         *(int *)(*(int *)(pcStack_8138 + -0x7fd8) + -0x31dc) == 0)) {\n        FUN_00027ff8(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x49ac,puVar1);\n        FUN_00027ff8(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x4970,param_1);\n        FUN_00027ff8(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x4940);\n        FUN_00027ff8(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x48f8);\n        puVar1 = param_1;\n      }\n    }\n    if (*pcStack_812c == '\0') {\n      unaff_s3 = (undefined4 *)dupstr(puVar1);\n    }\n    else {\n      unaff_s3 = (undefined4 *)(**(code **)(pcStack_8138 + -0x7c78))(pcStack_812c,puVar1);\n    }\n  }\n  else {\n    unaff_s3 = (undefined4 *)dupstr(pcStack_812c);\n  }\n  iVar4 = (**(code **)(pcStack_8138 + -0x7cec))(unaff_s3);\n  if (iStack_80d8 == 2) {\n    if (iVar4 == 0) {\n      iVar4 = (**(code **)(pcStack_8138 + -0x7c80))(unaff_s3);\n      if (iVar4 == 0) {\n        FUN_0002a658(*(int *)(pcStack_8138 + -0x7fc8) + -0x48ac,unaff_s3);\n        safefree(unaff_s3);\n        goto LAB_0002d77c;\n      }\n    }\n    else if (iVar4 != 2) {\n      FUN_0002a658(*(int *)(pcStack_8138 + -0x7fc8) + -0x4a68,unaff_s3);\n      safefree(unaff_s3);\n      goto LAB_0002d77c;\n    }\n    FUN_0002d4e0(unaff_s3,0);\n    safefree(unaff_s3);\n    goto LAB_0002d77c;\n  }\n  unaff_s5 = (**(code **)(pcStack_8138 + -0x7c84))(unaff_s3,uStack_80cc);\n  if (unaff_s5 == 0) {\n    FUN_0002a658(*(int *)(pcStack_8138 + -0x7fc8) + -0x4890,unaff_s3);\n    safefree(unaff_s3);\n    goto LAB_0002d77c;\n  }\n  iStack_8120 = scp_accept_filexfer();\n  if (iStack_8120 == 0) {\n    puVar1 = auStack_100b0;\n    uint64_make(&uStack_80f8,0,0);\n    uStack_8114 = (**(code **)(pcStack_8138 + -0x7488))(0);\n    uStack_811c = (**(code **)(pcStack_8138 + -0x7cac))(unaff_s3,1);\n    uint64_make(&uStack_8100,0,0);\n    iStack_8124 = *(int *)(pcStack_8138 + -0x7fc8);\n    unaff_s7 = *(int *)(pcStack_8138 + -0x7fd8);\nLAB_0002db64:\n    do {\n      iVar4 = uint64_compare(uStack_8100,uStack_80fc,uStack_80c8,uStack_80c4);\n      if (-1 < iVar4) goto LAB_0002de88;\n      uint64_make(&uStack_80f0,0,0x8000);\n      uStack_8148 = uStack_80fc;\n      uint64_subtract(&uStack_80e8,uStack_80c8,uStack_80c4,uStack_8100);\n      iVar4 = uint64_compare(uStack_80f0,uStack_80ec,uStack_80e8,uStack_80e4);\n      if (0 < iVar4) {\n        uStack_8148 = uStack_80fc;\n        uint64_subtract(&uStack_80f0,uStack_80c8,uStack_80c4,uStack_8100);\n      }\n      puVar1 = (undefined *)scp_recv_filedata(auStack_80b4,uStack_80ec);\n      if ((int)puVar1 < 1) {\n        (*pcStack_8128)(iStack_8124 + -0x5640);\n      }\n      if (iVar24 == 0) {\n        puVar5 = (undefined *)(**(code **)(pcStack_8138 + -0x7c68))(unaff_s5,auStack_80b4,puVar1);\n        if (puVar5 == puVar1) {\n          if (*(int *)(unaff_s7 + -0x3fa8) != 0) {\n            uint64_add32(&uStack_8108,uStack_80f8,uStack_80f4,puVar1);\n            uStack_80f8 = uStack_8108;\n            uStack_80f4 = uStack_8104;\n            iVar4 = (**(code **)(pcStack_8138 + -0x7488))(0);\n            if (iVar4 <= iStack_8120) {\n              uint64_add32(&uStack_80e0,uStack_8100,uStack_80fc,puVar1);\n              iVar4 = uint64_compare(uStack_80e0,uStack_80dc,uStack_80c8,uStack_80c4);\n              if (iVar4 != 0) goto LAB_0002dc94;\n            }\n            iStack_8140 = (**(code **)(pcStack_8138 + -0x7488))(0);\n            uStack_8144 = uStack_8114;\n            uStack_8148 = uStack_80f4;\n            iStack_8120 = iStack_8140;\n            (*pcStack_810c)(uStack_811c,uStack_80c8,uStack_80c4,uStack_80f8);\n          }\nLAB_0002dc94:\n          param_1 = auStack_100b0;\n          uint64_add32(&uStack_8108,uStack_8100,uStack_80fc,puVar1);\n          uStack_8100 = uStack_8108;\n          uStack_80fc = uStack_8104;\n          goto LAB_0002db64;\n        }\n        if (*(int *)(unaff_s7 + -0x3fa8) != 0) {\n          (**(code **)(pcStack_8138 + -0x759c))\n                    (1,*(int *)(pcStack_8138 + -0x7fc8) + -0x4850,uStack_811c,iStack_8110);\n        }\n        uint64_add32(&uStack_8108,uStack_8100,uStack_80fc,puVar1);\n      }\n      else {\n        uint64_add32(&uStack_8108,uStack_8100,uStack_80fc,puVar1);\n      }\n      param_1 = auStack_100b0;\n      iVar24 = 1;\n      uStack_8100 = uStack_8108;\n      uStack_80fc = uStack_8104;\n    } while( true );\n  }\n  safefree(unaff_s3);\n  (**(code **)(pcStack_8138 + -0x7c70))(unaff_s5);\nLAB_0002da64:\n  pcVar28 = *(code **)(pcStack_8138 + -0x74a0);\n  if (uStack_b4 == **(uint **)(pcStack_8138 + -0x7478)) {\n    return **(uint **)(pcStack_8138 + -0x7478);\n  }\n  pcVar30 = version;\n  (*pcVar28)();\n  pcStack_8168 = pcVar28 + 0x961d8;\n  uStack_8160 = 0xffff0000;\n  pcStack_815c = pcVar30;\n  uVar6 = buildinfo(*(int *)(pcVar28 + 0x8e210) + 0xaa4);\n  uVar17 = *(undefined4 *)(pcStack_8168 + -0x7da8);\n  iVar4 = *(int *)(pcStack_8168 + -0x7fc8) + -0x482c;\n  uVar7 = uVar6;\n  (**(code **)(pcStack_8168 + -0x759c))(1);\n  safefree(uVar6);\n  uVar12 = 0;\n  pcVar28 = *(code **)(pcStack_8168 + -0x7504);\n  pcVar30 = cmdline_error;\n  (*pcVar28)();\n  pcStack_8198 = pcVar28 + 0x96158;\n  uStack_818c = **(undefined4 **)(pcVar28 + 0x8ece0);\n  puVar23 = *(undefined4 **)(pcVar28 + 0x8ecf8);\n  uStack_8184 = uVar6;\n  puStack_8180 = puVar1;\n  pcStack_817c = pcVar30;\n  iStack_8174 = iVar4;\n  uStack_8170 = uVar17;\n  uStack_816c = uVar7;\n  (**(code **)(pcVar28 + 0x8ec90))(*(int *)(pcVar28 + 0x8e190) + -0x4e28,1,6,*puVar23);\n  piStack_8190 = &iStack_8174;\n  (**(code **)(pcStack_8198 + -0x7444))(*puVar23,1,uVar12);\n  iVar15 = 1;\n  (**(code **)(pcStack_8198 + -0x74c8))(*(int *)(pcStack_8198 + -0x7fc8) + -0x481c,1,0x27,*puVar23);\n  iVar4 = 1;\n  pcVar28 = *(code **)(pcStack_8198 + -0x7504);\n  pcVar30 = psftp_main;\n  (*pcVar28)();\n  pcStack_81e8 = pcVar28 + 0x9609c;\n  puStack_81d4 = (undefined4 *)**(undefined4 **)(pcVar28 + 0x8ec24);\n  **(undefined4 **)(pcVar28 + 0x8e144) = 1;\n  **(undefined4 **)(pcVar28 + 0x8e158) = 2;\n  **(undefined4 **)(pcVar28 + 0x8e120) = 1;\n  puStack_81d0 = puVar23;\n  uStack_81cc = uVar12;\n  puStack_81c8 = param_1;\n  puStack_81c4 = unaff_s3;\n  iStack_81c0 = iVar24;\n  iStack_81bc = unaff_s5;\n  piStack_81b8 = &iStack_80d8;\n  iStack_81b4 = unaff_s7;\n  iStack_81b0 = iVar2;\n  pcStack_81ac = pcVar30;\n  (**(code **)(pcVar28 + 0x8e444))();\n  uVar7 = conf_new();\n  *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31fc) = uVar7;\n  do_defaults(0,uVar7);\n  **(undefined4 **)(pcStack_81e8 + -0x7f60) = 0;\n  pcVar28 = pcStack_81e8;\n  if (iVar4 < 2) {\n    iVar2 = 1;\n  }\n  else {\n    pcVar13 = *(char **)(iVar15 + 4);\n    piVar19 = (int *)(iVar15 + 4);\n    if (*pcVar13 == '-') {\n      iVar25 = *(int *)(pcStack_81e8 + -0x7fd8);\n      iVar26 = *(int *)(pcStack_81e8 + -0x7fc8);\n      pcVar27 = (char *)(*(int *)(pcStack_81e8 + -0x7fc8) + -0x47b8);\n      iVar29 = *(int *)(pcStack_81e8 + -0x7fc8);\n      pcStack_81dc = (code *)(*(int *)(pcStack_81e8 + -0x7db0) + -0x79e4);\n      iVar24 = 1;\nLAB_0002e488:\n      iVar2 = iVar24 + 1;\n      uVar7 = 0;\n      if (iVar2 < iVar4) {\n        uVar7 = *(undefined4 *)(iVar15 + (iVar24 + 1) * 4);\n      }\n      iVar8 = cmdline_process_param(pcVar13,uVar7,1,*(undefined4 *)(iVar25 + -0x31fc));\n      pcVar28 = pcStack_81e8;\n      if (iVar8 == -2) {\n        cmdline_error(*(int *)(pcStack_81e8 + -0x7fc8) + -0x47e4,*piVar19);\n        uVar7 = extraout_v1;\nLAB_0002e1d0:\n        iVar2 = iVar24;\n        if ((**(uint **)(pcVar28 + -0x7f44) & 1) != 0) {\n          *(undefined4 *)(*(int *)(pcVar28 + -0x7fd8) + -0x31c8) = uVar7;\n        }\n        goto LAB_0002e464;\n      }\n      uVar7 = 1;\n      if (iVar8 == 2) goto LAB_0002e464;\n      if (iVar8 == 1) goto LAB_0002e1d0;\n      iVar20 = *piVar19;\n      iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar26 + -0x47c0);\n      if (iVar8 == 0) {\n        (**(code **)(pcStack_81e8 + -0x7c54))();\n        uVar3 = 1;\n        goto LAB_0002e878;\n      }\n      iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20);\n      if (iVar8 == 0) {\n        *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31cc) = 1;\n        pcVar28 = pcStack_81e8;\n        iVar2 = iVar24;\n      }\n      else {\n        iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar29 + -0x47b4);\n        if (iVar8 == 0) {\n          *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d0) = 1;\n          pcVar28 = pcStack_81e8;\n          iVar2 = iVar24;\n        }\n        else {\n          iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                            (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47b0);\n          if (iVar8 == 0) {\n            *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fa8) = 0;\n            pcVar28 = pcStack_81e8;\n            iVar2 = iVar24;\n          }\n          else {\n            iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                              (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47ac);\n            if ((iVar8 != 0) &&\n               (iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                  (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47a8), iVar8 != 0))\n            {\n              iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47a4);\n              if (iVar8 != 0) {\n                iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                  (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x479c);\n                iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                if (iVar8 == 0) {\nLAB_0002e348:\n                  pcVar28 = pcStack_81e8;\n                  version();\n                }\n                else {\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar16 + -0x4798);\n                  iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                  if (iVar8 == 0) goto LAB_0002e348;\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar16 + -0x478c);\n                  iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                  pcVar28 = pcStack_81e8;\n                  if (iVar8 == 0) {\n                    *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31c4) = 1;\n                    iVar2 = iVar24;\n                    goto LAB_0002e464;\n                  }\n                }\n                iVar8 = (**(code **)(pcVar28 + -0x743c))(iVar20,iVar16 + -0x4788);\n                if (iVar8 == 0) {\n                  **(undefined4 **)(pcStack_81e8 + -0x7c4c) = 1;\n                  pcVar28 = pcStack_81e8;\n                  iVar2 = iVar24;\n                }\n                else {\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                    (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4780);\n                  if (iVar8 == 0) {\n                    *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31dc) = 1;\n                    pcVar28 = pcStack_81e8;\n                    iVar2 = iVar24;\n                  }\n                  else {\n                    iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                      (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4778);\n                    if (iVar8 == 0) {\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac) = 0;\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0) = 1;\n                      pcVar28 = pcStack_81e8;\n                      iVar2 = iVar24;\n                      goto LAB_0002e464;\n                    }\n                    iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                      (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4770);\n                    if (iVar8 == 0) {\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac) = 1;\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0) = 0;\n                      pcVar28 = pcStack_81e8;\n                      iVar2 = iVar24;\n                    }\n                    else {\n                      iVar24 = (**(code **)(pcStack_81e8 + -0x743c))\n                                         (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4768);\n                      pcVar28 = pcStack_81e8;\n                      if (iVar24 == 0) goto LAB_0002e52c;\n                      cmdline_error(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4764,iVar20);\n                    }\n                  }\n                }\n                goto LAB_0002e464;\n              }\n            }\n            (*pcStack_81dc)();\n            pcVar28 = pcStack_81e8;\n            iVar2 = iVar24;\n          }\n        }\n      }\nLAB_0002e464:\n      iVar2 = iVar2 + 1;\n      if (iVar4 <= iVar2) goto LAB_0002e52c;\n      piVar19 = (int *)(iVar15 + iVar2 * 4);\n      pcVar13 = (char *)*piVar19;\n      iVar24 = iVar2;\n      if (*pcVar13 != '-') goto LAB_0002e52c;\n      goto LAB_0002e488;\n    }\n    iVar2 = 1;\n  }\nLAB_0002e52c:\n  iVar4 = iVar4 - iVar2;\n  *(undefined4 *)(*(int *)(pcVar28 + -0x7fd8) + -0x31f4) = 0;\n  puVar23 = (undefined4 *)(iVar15 + iVar2 * 4);\n  if (*(int *)(*(int *)(pcVar28 + -0x7fd8) + -0x31c4) == 0) {\n    if (iVar4 < 2) {\n      FUN_0002861c();\n      puVar18 = puVar23 + iVar4 + 0x3fffffff;\n      iVar24 = FUN_00028968(*puVar18);\n      iVar2 = *(int *)(pcStack_81e8 + -0x7fd8);\n      if (iVar24 != 0) goto LAB_0002e90c;\n      *(undefined4 *)(iVar2 + -0x31f0) = 0;\nLAB_0002efd8:\n      iVar2 = *(int *)(pcStack_81e8 + -0x7fc8);\nLAB_0002efdc:\n      FUN_00028270(iVar2 + -0x4668);\n      pcVar13 = (char *)*puVar23;\nLAB_0002eb34:\n      uVar7 = puVar23[1];\n      puVar9 = (undefined1 *)FUN_00028968(pcVar13);\n      if (puVar9 == (undefined1 *)0x0) {\n        FUN_00028270(*(int *)(pcStack_81e8 + -0x7fc8) + -0x463c);\n        uRam00000000 = 0;\n      }\n      else {\n        *puVar9 = 0;\n      }\n      if (puVar9[1] == '\0') {\n        pcVar27 = (char *)(*(int *)(pcStack_81e8 + -0x7fc8) + -0x48b0);\n      }\n      else {\n        pcVar27 = puVar9 + 1;\n      }\n      puVar9 = (undefined1 *)(**(code **)(pcStack_81e8 + -0x75b8))(pcVar13,0x40);\n      if (puVar9 == (undefined1 *)0x0) {\n        pcVar21 = (char *)0x0;\n      }\n      else {\n        *puVar9 = 0;\n        cVar11 = *pcVar13;\n        pcVar21 = pcVar13;\n        pcVar13 = puVar9 + 1;\n        if (cVar11 == '\0') {\n          pcVar21 = (char *)0x0;\n        }\n      }\n      if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31c8) == 0) {\n        iVar2 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iVar2 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47f4;\n      }\n      if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31cc) == 0) {\n        iVar24 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iVar24 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47f0;\n      }\n      if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d0) == 0) {\n        iVar4 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iVar4 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47ec;\n      }\n      if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4) == 0) {\n        iStack_81f0 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iStack_81f0 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47e8;\n      }\n      pcStack_81ec = pcVar27;\n      uVar6 = dupprintf(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4618,iVar2,iVar24,iVar4);\n      FUN_00028a00(pcVar13,pcVar21,uVar6);\n      safefree(uVar6);\n      iVar2 = scp_sink_setup(pcVar27,*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d0),\n                             *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31cc));\n      if (iVar2 == 0) {\n        FUN_0002d4e0(uVar7);\n        iVar2 = *(int *)(pcStack_81e8 + -0x7fd8);\n        goto LAB_0002e788;\n      }\n    }\n    else {\n      if (iVar4 < 3) {\n        puVar18 = puVar23 + iVar4 + 0x3fffffff;\n        iVar2 = FUN_00028968(*puVar18);\n        if (iVar2 == 0) {\n          *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f0) = 0;\n          iVar2 = *(int *)(pcStack_81e8 + -0x7fc8);\n          if (iVar4 != 2) goto LAB_0002efdc;\n          pcVar13 = (char *)*puVar23;\n          goto LAB_0002eb34;\n        }\n      }\n      else {\n        *(undefined4 *)(*(int *)(pcVar28 + -0x7fd8) + -0x31d4) = 1;\n        puVar18 = puVar23 + iVar4 + 0x3fffffff;\n        iVar2 = FUN_00028968(*puVar18);\n        if (iVar2 == 0) {\n          *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f0) = 0;\n          goto LAB_0002efd8;\n        }\n      }\n      iVar2 = *(int *)(pcStack_81e8 + -0x7fd8);\nLAB_0002e90c:\n      *(undefined4 *)(iVar2 + -0x31f0) = 1;\n      pcVar13 = (char *)*puVar18;\n      puVar9 = (undefined1 *)FUN_00028968(pcVar13);\n      if (puVar9 == (undefined1 *)0x0) {\n        FUN_00028270(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4720);\n        uRam00000000 = 0;\n      }\n      else {\n        *puVar9 = 0;\n      }\n      if (puVar9[1] == '\0') {\n        pcVar21 = (char *)(*(int *)(pcStack_81e8 + -0x7fc8) + -0x48b0);\n      }\n      else {\n        pcVar21 = puVar9 + 1;\n      }\n      puVar9 = (undefined1 *)(**(code **)(pcStack_81e8 + -0x75b8))(pcVar13,0x40);\n      if (puVar9 == (undefined1 *)0x0) {\n        pcVar27 = (char *)0x0;\n      }\n      else {\n        *puVar9 = 0;\n        cVar11 = *pcVar13;\n        pcVar27 = pcVar13;\n        pcVar13 = puVar9 + 1;\n        if (cVar11 == '\0') {\n          pcVar27 = (char *)0x0;\n        }\n      }\n      if (iVar4 == 2) {\n        iVar2 = FUN_00028968(*puVar23);\n        if (iVar2 != 0) {\n          FUN_00028270(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4704,*puVar23);\n        }\n        iVar2 = (**(code **)(pcStack_81e8 + -0x7c30))(*puVar23,1);\n        if (iVar2 == 0) {\n          FUN_00028270(*(int *)(pcStack_81e8 + -0x7fc8) + -0x46e0,*puVar23);\n          iVar24 = *(int *)(pcStack_81e8 + -0x7fd8);\n        }\n        else {\n          iVar24 = *(int *)(pcStack_81e8 + -0x7fd8);\n          if (iVar2 == 2) {\n            *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4) = 1;\n            goto LAB_0002e988;\n          }\n        }\n      }\n      else {\nLAB_0002e988:\n        iVar24 = *(int *)(pcStack_81e8 + -0x7fd8);\n      }\n      if (*(int *)(iVar24 + -0x31c8) == 0) {\n        iVar2 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iVar2 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47f4;\n      }\n      if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31cc) == 0) {\n        iVar24 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iVar24 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47f0;\n      }\n      if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d0) == 0) {\n        iVar15 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iVar15 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47ec;\n      }\n      if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4) == 0) {\n        iStack_81f0 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iStack_81f0 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47e8;\n      }\n      pcStack_81ec = pcVar21;\n      uVar7 = dupprintf(*(int *)(pcStack_81e8 + -0x7fc8) + -0x46c0,iVar2,iVar24,iVar15);\n      FUN_00028a00(pcVar13,pcVar27,uVar7);\n      safefree(uVar7);\n      pcVar27 = *(char **)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4);\n      iVar2 = scp_source_setup(pcVar21);\n      if ((iVar2 == 0) && (1 < iVar4)) {\n        puVar18 = puVar23 + iVar4 + -1;\n        iVar24 = *(int *)(pcStack_81e8 + -0x7db0);\n        iVar25 = *(int *)(pcStack_81e8 + -0x7fc8);\n        iVar15 = *(int *)(pcStack_81e8 + -0x7db0);\n        iVar4 = *(int *)(pcStack_81e8 + -0x7fc8);\n        do {\n          pcVar13 = (char *)*puVar23;\n          iVar2 = FUN_00028968(pcVar13);\n          if (iVar2 == 0) {\n            pcVar27 = (char *)0x1;\n            iVar2 = (**(code **)(pcStack_81e8 + -0x7c30))(pcVar13,1,pcVar13);\n            if (iVar2 == 0) {\n              (*(code *)(iVar15 + -0x59a8))(iVar25 + -0x4688);\n              pcVar27 = pcVar13;\n            }\n            else if (iVar2 == 1) {\n              (*(code *)(iVar24 + -0x4b8c))(pcVar13);\n            }\n            else {\n              iVar2 = (**(code **)(pcStack_81e8 + -0x7c2c))();\n              if (iVar2 == 0) {\n                (*(code *)(iVar15 + -0x59a8))(iVar25 + -0x4688);\n                pcVar27 = pcVar13;\n              }\n              else {\n                while (iVar26 = (**(code **)(pcStack_81e8 + -0x7c28))(iVar2), iVar26 != 0) {\n                  (*(code *)(iVar24 + -0x4b8c))(iVar26);\n                  safefree(iVar26);\n                }\n                (**(code **)(pcStack_81e8 + -0x7c24))(iVar2);\n              }\n            }\n          }\n          else {\n            pcVar27 = (char *)(iVar4 + -0x46ac);\n            FUN_00027ff8(**(undefined4 **)(pcStack_81e8 + -0x7460));\n            *(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31e0) =\n                 *(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31e0) + 1;\n          }\n          puVar23 = puVar23 + 1;\n          iVar2 = *(int *)(pcStack_81e8 + -0x7fd8);\n        } while (puVar18 != puVar23);\n        goto LAB_0002e788;\n      }\n    }\n  }\n  else {\n    if (iVar4 == 1) {\n      pcVar13 = (char *)*puVar23;\n    }\n    else {\n      FUN_0002861c();\n      pcVar13 = (char *)*puVar23;\n    }\n    puVar9 = (undefined1 *)FUN_00028968(pcVar13);\n    if (puVar9 == (undefined1 *)0x0) {\n      FUN_00028270(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4750);\n      uRam00000000 = 0;\n    }\n    else {\n      *puVar9 = 0;\n    }\n    if (puVar9[1] == '\0') {\n      puVar9 = (undefined1 *)(**(code **)(pcStack_81e8 + -0x75b8))(pcVar13,0x40);\n      if (puVar9 == (undefined1 *)0x0) {\n        puVar23 = (undefined4 *)safemalloc(0x68,1);\n        iVar2 = *(int *)(pcStack_81e8 + -0x7fc8);\n        uVar7 = *(undefined4 *)(iVar2 + -0x4728);\n        *puVar23 = *(undefined4 *)(iVar2 + -0x472c);\n        puVar23[1] = uVar7;\n        *(undefined1 *)(puVar23 + 2) = *(undefined1 *)(iVar2 + -0x4724);\n        iVar2 = (**(code **)(pcStack_81e8 + -0x752c))(puVar23);\n        pcVar10 = (char *)((int)puVar23 + iVar2);\n        pcVar21 = (char *)(*(int *)(pcStack_81e8 + -0x7fc8) + -0x48b0);\n        cVar11 = '.';\n        pcVar27 = (char *)0x0;\n        pcVar22 = pcVar21;\n        goto LAB_0002e6b4;\n      }\n      pcVar21 = (char *)(*(int *)(pcStack_81e8 + -0x7fc8) + -0x48b0);\nLAB_0002e5ac:\n      *puVar9 = 0;\n      cVar11 = *pcVar13;\n      pcVar27 = pcVar13;\n      pcVar13 = puVar9 + 1;\n      if (cVar11 == '\0') {\n        pcVar27 = (char *)0x0;\n      }\n    }\n    else {\n      pcVar21 = puVar9 + 1;\n      puVar9 = (undefined1 *)(**(code **)(pcStack_81e8 + -0x75b8))(pcVar13);\n      if (puVar9 != (undefined1 *)0x0) goto LAB_0002e5ac;\n      pcVar27 = (char *)0x0;\n    }\n    iVar2 = (**(code **)(pcStack_81e8 + -0x752c))(pcVar21);\n    puVar23 = (undefined4 *)safemalloc((iVar2 + 0x19) * 4,1);\n    iVar2 = *(int *)(pcStack_81e8 + -0x7fc8);\n    uVar7 = *(undefined4 *)(iVar2 + -0x4728);\n    *puVar23 = *(undefined4 *)(iVar2 + -0x472c);\n    puVar23[1] = uVar7;\n    *(undefined1 *)(puVar23 + 2) = *(undefined1 *)(iVar2 + -0x4724);\n    iVar2 = (**(code **)(pcStack_81e8 + -0x752c))(puVar23);\n    pcVar10 = (char *)((int)puVar23 + iVar2);\n    cVar11 = *pcVar21;\n    pcVar22 = pcVar21;\n    while (cVar11 != '\0') {\nLAB_0002e6b4:\n      if (cVar11 == '\'') {\n        builtin_strncpy(pcVar10,"\'\\\'\'",4);\n        pcVar10 = pcVar10 + 4;\n      }\n      else {\n        *pcVar10 = cVar11;\n        pcVar10 = pcVar10 + 1;\n      }\n      pcVar21 = pcVar21 + 1;\n      cVar11 = *pcVar21;\n    }\n    *pcVar10 = '\'';\n    pcVar10[1] = '\0';\n    FUN_00028a00(pcVar13,pcVar27,puVar23);\n    safefree(puVar23);\n    if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31ec) != 0) {\n      scp_sftp_listdir(pcVar22);\n      iVar2 = *(int *)(pcStack_81e8 + -0x7fd8);\n      goto LAB_0002e788;\n    }\n    puVar23 = *(undefined4 **)(pcStack_81e8 + -0x7594);\n    while( true ) {\n      pcVar27 = (char *)0x1;\n      iVar2 = FUN_000280f4(&cStack_81d5);\n      if (iVar2 < 1) break;\n      (**(code **)(pcStack_81e8 + -0x75c4))((int)cStack_81d5,*puVar23);\n    }\n  }\n  iVar2 = *(int *)(pcStack_81e8 + -0x7fd8);\nLAB_0002e788:\n  pcVar28 = *(code **)(pcStack_81e8 + -0x7c44);\n  if (*(int *)(iVar2 + -0x31f4) != 0) {\n    iVar2 = (**(code **)(*(int *)(iVar2 + -0x31f4) + 0x20))\n                      (*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f8));\n    pcVar28 = *(code **)(pcStack_81e8 + -0x7c44);\n    if (iVar2 != 0) {\n      (**(code **)(*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f4) + 0x18))\n                (*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f8),0xc);\n      **(undefined4 **)(pcStack_81e8 + -0x7db4) = 1;\n      pcVar27 = (char *)0x1;\n      FUN_000280f4(&cStack_81d5);\n      pcVar28 = *(code **)(pcStack_81e8 + -0x7c44);\n    }\n  }\n  (*pcVar28)();\n  cmdline_cleanup();\n  (**(code **)(pcStack_81e8 + -0x7d88))(0);\n  iVar20 = *(int *)(pcStack_81e8 + -0x7fd8);\n  iVar24 = *(int *)(pcStack_81e8 + -0x7fd8);\n  (**(code **)(*(int *)(iVar24 + -0x31f4) + 4))(*(undefined4 *)(iVar20 + -0x31f8));\n  *(undefined4 *)(iVar20 + -0x31f8) = 0;\n  *(undefined4 *)(iVar24 + -0x31f4) = 0;\n  (**(code **)(pcStack_81e8 + -0x7c3c))();\n  uVar3 = (uint)(*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31e0) != 0);\nLAB_0002e878:\n  if (puStack_81d4 == (undefined4 *)**(int **)(pcStack_81e8 + -0x7478)) {\n    return uVar3;\n  }\n  pcVar28 = *(code **)(pcStack_81e8 + -0x74a0);\n  uVar12 = 0x2f008;\n  puVar23 = puStack_81d4;\n  (*pcVar28)();\n  pcStack_8218 = pcVar28 + 0x95140;\n  uVar7 = *puVar23;\n  uVar6 = *(undefined4 *)pcVar27;\n  iStack_820c = iVar24;\n  iStack_8208 = iVar20;\n  uStack_8204 = uVar12;\n  iVar2 = (**(code **)(pcVar28 + 0x8dd04))(uVar7,*(int *)(pcVar28 + 0x8d178) + -0x4584);\n  if (iVar2 == 0) {\n    uVar3 = 0xffffffff;\n  }\n  else {\n    iVar2 = (**(code **)(pcStack_8218 + -0x743c))(uVar6,*(int *)(pcStack_8218 + -0x7fc8) + -0x4584);\n    if (iVar2 == 0) {\n      uVar3 = 1;\n    }\n    else {\n      uVar3 = (**(code **)(pcStack_8218 + -0x743c))(uVar7,uVar6);\n    }\n  }\n  return uVar3;\nLAB_0002de88:\n  if (iStack_80c0 != 0) {\n    (**(code **)(pcStack_8138 + -0x7c60))(unaff_s5,uStack_80b8,uStack_80bc);\n  }\n  (**(code **)(pcStack_8138 + -0x7c70))(unaff_s5);\n  if (iVar24 == 0) {\n    scp_finish_filerecv();\n    safefree(unaff_s3);\n    safefree(uStack_80d4);\n  }\n  else {\n    FUN_0002a658(*(int *)(pcStack_8138 + -0x7fc8) + -0x483c,unaff_s3);\n    safefree(unaff_s3);\n  }\n  goto LAB_0002d77c;\n}" { (declaration "undefined *puVar1;" type_identifier (pointer_declarator "*puVar1" * identifier) ;) (declaration "int iVar2;" primitive_type identifier ;) (declaration "uint uVar3;" type_identifier identifier ;) (declaration "int iVar4;" primitive_type identifier ;) (declaration "undefined *puVar5;" type_identifier (pointer_declarator "*puVar5" * identifier) ;) (declaration "undefined4 uVar6;" type_identifier identifier ;) (declaration "undefined4 uVar7;" type_identifier identifier ;) (declaration "int iVar8;" primitive_type identifier ;) (declaration "undefined1 *puVar9;" type_identifier (pointer_declarator "*puVar9" * identifier) ;) (declaration "char *pcVar10;" primitive_type (pointer_declarator "*pcVar10" * identifier) ;) (declaration "undefined4 extraout_v1;" type_identifier identifier ;) (declaration "char cVar11;" primitive_type identifier ;) (declaration "undefined4 uVar12;" type_identifier identifier ;) (declaration "char *pcVar13;" primitive_type (pointer_declarator "*pcVar13" * identifier) ;) (declaration "undefined *puVar14;" type_identifier (pointer_declarator "*puVar14" * identifier) ;) (declaration "int iVar15;" primitive_type identifier ;) (declaration "int iVar16;" primitive_type identifier ;) (declaration "undefined4 uVar17;" type_identifier identifier ;) (declaration "undefined4 *puVar18;" type_identifier (pointer_declarator "*puVar18" * identifier) ;) (declaration "int *piVar19;" primitive_type (pointer_declarator "*piVar19" * identifier) ;) (declaration "int iVar20;" primitive_type identifier ;) (declaration "char *pcVar21;" primitive_type (pointer_declarator "*pcVar21" * identifier) ;) (declaration "char *pcVar22;" primitive_type (pointer_declarator "*pcVar22" * identifier) ;) (declaration "undefined4 *unaff_s3;" type_identifier (pointer_declarator "*unaff_s3" * identifier) ;) (declaration "undefined4 *puVar23;" type_identifier (pointer_declarator "*puVar23" * identifier) ;) (declaration "undefined1 *unaff_s4;" type_identifier (pointer_declarator "*unaff_s4" * identifier) ;) (declaration "int iVar24;" primitive_type identifier ;) (declaration "int unaff_s5;" primitive_type identifier ;) (declaration "int iVar25;" primitive_type identifier ;) (declaration "int iVar26;" primitive_type identifier ;) (declaration "int unaff_s7;" primitive_type identifier ;) (declaration "char *pcVar27;" primitive_type (pointer_declarator "*pcVar27" * identifier) ;) (declaration "code *pcVar28;" type_identifier (pointer_declarator "*pcVar28" * identifier) ;) (declaration "int iVar29;" primitive_type identifier ;) (declaration "code *pcVar30;" type_identifier (pointer_declarator "*pcVar30" * identifier) ;) (declaration "undefined auStack_100b0 [32408];" type_identifier (array_declarator "auStack_100b0 [32408]" identifier [ number_literal ]) ;) (declaration "code *pcStack_8218;" type_identifier (pointer_declarator "*pcStack_8218" * identifier) ;) (declaration "int iStack_820c;" primitive_type identifier ;) (declaration "int iStack_8208;" primitive_type identifier ;) (declaration "undefined4 uStack_8204;" type_identifier identifier ;) (declaration "int iStack_81f0;" primitive_type identifier ;) (declaration "char *pcStack_81ec;" primitive_type (pointer_declarator "*pcStack_81ec" * identifier) ;) (declaration "code *pcStack_81e8;" type_identifier (pointer_declarator "*pcStack_81e8" * identifier) ;) (declaration "code *pcStack_81dc;" type_identifier (pointer_declarator "*pcStack_81dc" * identifier) ;) (declaration "char cStack_81d5;" primitive_type identifier ;) (declaration "undefined4 *puStack_81d4;" type_identifier (pointer_declarator "*puStack_81d4" * identifier) ;) (declaration "undefined4 *puStack_81d0;" type_identifier (pointer_declarator "*puStack_81d0" * identifier) ;) (declaration "undefined4 uStack_81cc;" type_identifier identifier ;) (declaration "undefined *puStack_81c8;" type_identifier (pointer_declarator "*puStack_81c8" * identifier) ;) (declaration "undefined4 *puStack_81c4;" type_identifier (pointer_declarator "*puStack_81c4" * identifier) ;) (declaration "int iStack_81c0;" primitive_type identifier ;) (declaration "int iStack_81bc;" primitive_type identifier ;) (declaration "int *piStack_81b8;" primitive_type (pointer_declarator "*piStack_81b8" * identifier) ;) (declaration "int iStack_81b4;" primitive_type identifier ;) (declaration "int iStack_81b0;" primitive_type identifier ;) (declaration "code *pcStack_81ac;" type_identifier (pointer_declarator "*pcStack_81ac" * identifier) ;) (declaration "code *pcStack_8198;" type_identifier (pointer_declarator "*pcStack_8198" * identifier) ;) (declaration "int *piStack_8190;" primitive_type (pointer_declarator "*piStack_8190" * identifier) ;) (declaration "undefined4 uStack_818c;" type_identifier identifier ;) (declaration "undefined4 uStack_8184;" type_identifier identifier ;) (declaration "undefined *puStack_8180;" type_identifier (pointer_declarator "*puStack_8180" * identifier) ;) (declaration "code *pcStack_817c;" type_identifier (pointer_declarator "*pcStack_817c" * identifier) ;) (declaration "int iStack_8174;" primitive_type identifier ;) (declaration "undefined4 uStack_8170;" type_identifier identifier ;) (declaration "undefined4 uStack_816c;" type_identifier identifier ;) (declaration "code *pcStack_8168;" type_identifier (pointer_declarator "*pcStack_8168" * identifier) ;) (declaration "undefined4 uStack_8160;" type_identifier identifier ;) (declaration "code *pcStack_815c;" type_identifier (pointer_declarator "*pcStack_815c" * identifier) ;) (declaration "undefined4 uStack_8148;" type_identifier identifier ;) (declaration "undefined4 uStack_8144;" type_identifier identifier ;) (declaration "int iStack_8140;" primitive_type identifier ;) (declaration "code *pcStack_8138;" type_identifier (pointer_declarator "*pcStack_8138" * identifier) ;) (declaration "char *pcStack_812c;" primitive_type (pointer_declarator "*pcStack_812c" * identifier) ;) (declaration "code *pcStack_8128;" type_identifier (pointer_declarator "*pcStack_8128" * identifier) ;) (declaration "int iStack_8124;" primitive_type identifier ;) (declaration "int iStack_8120;" primitive_type identifier ;) (declaration "undefined4 uStack_811c;" type_identifier identifier ;) (declaration "undefined *puStack_8118;" type_identifier (pointer_declarator "*puStack_8118" * identifier) ;) (declaration "undefined4 uStack_8114;" type_identifier identifier ;) (declaration "int iStack_8110;" primitive_type identifier ;) (declaration "code *pcStack_810c;" type_identifier (pointer_declarator "*pcStack_810c" * identifier) ;) (declaration "undefined4 uStack_8108;" type_identifier identifier ;) (declaration "undefined4 uStack_8104;" type_identifier identifier ;) (declaration "undefined4 uStack_8100;" type_identifier identifier ;) (declaration "undefined4 uStack_80fc;" type_identifier identifier ;) (declaration "undefined4 uStack_80f8;" type_identifier identifier ;) (declaration "undefined4 uStack_80f4;" type_identifier identifier ;) (declaration "undefined4 uStack_80f0;" type_identifier identifier ;) (declaration "undefined4 uStack_80ec;" type_identifier identifier ;) (declaration "undefined4 uStack_80e8;" type_identifier identifier ;) (declaration "undefined4 uStack_80e4;" type_identifier identifier ;) (declaration "undefined4 uStack_80e0;" type_identifier identifier ;) (declaration "undefined4 uStack_80dc;" type_identifier identifier ;) (declaration "int iStack_80d8;" primitive_type identifier ;) (declaration "undefined4 uStack_80d4;" type_identifier identifier ;) (declaration "undefined *puStack_80d0;" type_identifier (pointer_declarator "*puStack_80d0" * identifier) ;) (declaration "undefined4 uStack_80cc;" type_identifier identifier ;) (declaration "undefined4 uStack_80c8;" type_identifier identifier ;) (declaration "undefined4 uStack_80c4;" type_identifier identifier ;) (declaration "int iStack_80c0;" primitive_type identifier ;) (declaration "undefined4 uStack_80bc;" type_identifier identifier ;) (declaration "undefined4 uStack_80b8;" type_identifier identifier ;) (declaration "undefined1 auStack_80b4 [32768];" type_identifier (array_declarator "auStack_80b4 [32768]" identifier [ number_literal ]) ;) (declaration "uint uStack_b4;" type_identifier identifier ;) (declaration "undefined *puStack_b0;" type_identifier (pointer_declarator "*puStack_b0" * identifier) ;) (declaration "undefined *puStack_ac;" type_identifier (pointer_declarator "*puStack_ac" * identifier) ;) (declaration "undefined *puStack_a8;" type_identifier (pointer_declarator "*puStack_a8" * identifier) ;) (declaration "undefined4 *puStack_a4;" type_identifier (pointer_declarator "*puStack_a4" * identifier) ;) (declaration "undefined1 *puStack_a0;" type_identifier (pointer_declarator "*puStack_a0" * identifier) ;) (declaration "undefined4 uStack_6c;" type_identifier identifier ;) (declaration "undefined1 auStack_68 [4];" type_identifier (array_declarator "auStack_68 [4]" identifier [ number_literal ]) ;) (declaration "char *pcStack_64;" primitive_type (pointer_declarator "*pcStack_64" * identifier) ;) (declaration "undefined *puStack_60;" type_identifier (pointer_declarator "*puStack_60" * identifier) ;) (declaration "undefined *puStack_5c;" type_identifier (pointer_declarator "*puStack_5c" * identifier) ;) (declaration "undefined *puStack_58;" type_identifier (pointer_declarator "*puStack_58" * identifier) ;) (declaration "undefined4 *puStack_54;" type_identifier (pointer_declarator "*puStack_54" * identifier) ;) (declaration "undefined4 local_30;" type_identifier identifier ;) (declaration "undefined4 local_2c;" type_identifier identifier ;) (declaration "uint local_24;" type_identifier identifier ;) (declaration "undefined4 local_20;" type_identifier identifier ;) (declaration "int local_1c;" primitive_type identifier ;) (expression_statement "puVar1 = PTR_DAT_000bc178;" (assignment_expression "puVar1 = PTR_DAT_000bc178" identifier = identifier) ;) (expression_statement "local_1c = *(int *)PTR___stack_chk_guard_000bccd8;" (assignment_expression "local_1c = *(int *)PTR___stack_chk_guard_000bccd8" identifier = (pointer_expression "*(int *)PTR___stack_chk_guard_000bccd8" * (cast_expression "(int *)PTR___stack_chk_guard_000bccd8" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier))) ;) (if_statement "if (*(int *)(PTR_DAT_000bc178 + -0x31ec) == 0) {\n    uVar3 = FUN_000280f4();\n  }\n  else {\n    xfer_download_queue(*(undefined4 *)(PTR_DAT_000bc178 + -0x3244));\n    unaff_s3 = (undefined4 *)sftp_recv();\n    puVar1 = (undefined *)xfer_download_gotpkt(*(undefined4 *)(puVar1 + -0x3244),unaff_s3);\n    if ((int)puVar1 < 1) {\n      param_2 = *(undefined **)PTR_stderr_000bccf0;\n      uVar7 = fxp_error();\n      FUN_00027ff8(param_2,PTR_s_Server_sent_command_exit_status___000bc188 + -0x4abc,uVar7);\n      if (puVar1 == (undefined *)0x80000000) {\n        safefree(unaff_s3);\n      }\n      *(int *)(PTR_DAT_000bc178 + -0x31e0) = *(int *)(PTR_DAT_000bc178 + -0x31e0) + 1;\n      uVar3 = 0xffffffff;\n    }\n    else {\n      iVar2 = xfer_download_data(*(undefined4 *)(PTR_DAT_000bc178 + -0x3244),&local_20,&local_24);\n      if (iVar2 == 0) {\n        local_24 = 0;\n      }\n      else {\n        param_2 = (undefined *)(uint)((int)param_2 < (int)local_24);\n        if ((int)local_24 < 1) {\n          FUN_00027ff8(*(undefined4 *)PTR_stderr_000bccf0,\n                       PTR_s_Server_sent_command_exit_status___000bc188 + -0x4a9c);\n          *(int *)(PTR_DAT_000bc178 + -0x31e0) = *(int *)(PTR_DAT_000bc178 + -0x31e0) + 1;\n          safefree(local_20);\n          uVar3 = 0xffffffff;\n          goto LAB_0002d148;\n        }\n        if (param_2 != (undefined *)0x0) {\n          uVar3 = (*(code *)PTR___assert_fail_000bcb00)\n                            (PTR_s_Server_sent_command_exit_status___000bc188 + -0x4a7c,\n                             PTR_s_Server_sent_command_exit_status___000bc188 + -0x4fb0,0x628,\n                             PTR_s_Server_sent_command_exit_status___000bc188 + -0x45f0);\n          return uVar3;\n        }\n        (*(code *)PTR_memcpy_000bccdc)(param_1,local_20);\n        safefree(local_20);\n      }\n      param_2 = PTR_DAT_000bc178;\n      puVar1 = PTR_DAT_000bc178 + -0x324c;\n      uint64_add32(&local_30,*(undefined4 *)(PTR_DAT_000bc178 + -0x324c),\n                   *(undefined4 *)(PTR_DAT_000bc178 + -0x3248),local_24);\n      *(undefined4 *)(param_2 + -0x324c) = local_30;\n      *(undefined4 *)(param_2 + -0x3248) = local_2c;\n      uVar3 = local_24;\n    }\n  }" if (parenthesized_expression "(*(int *)(PTR_DAT_000bc178 + -0x31ec) == 0)" ( (binary_expression "*(int *)(PTR_DAT_000bc178 + -0x31ec) == 0" (pointer_expression "*(int *)(PTR_DAT_000bc178 + -0x31ec)" * (cast_expression "(int *)(PTR_DAT_000bc178 + -0x31ec)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_DAT_000bc178 + -0x31ec)" ( (binary_expression "PTR_DAT_000bc178 + -0x31ec" identifier + number_literal) )))) == number_literal) )) (compound_statement "{\n    uVar3 = FUN_000280f4();\n  }" { (expression_statement "uVar3 = FUN_000280f4();" (assignment_expression "uVar3 = FUN_000280f4()" identifier = (call_expression "FUN_000280f4()" identifier (argument_list "()" ( )))) ;) }) (else_clause "else {\n    xfer_download_queue(*(undefined4 *)(PTR_DAT_000bc178 + -0x3244));\n    unaff_s3 = (undefined4 *)sftp_recv();\n    puVar1 = (undefined *)xfer_download_gotpkt(*(undefined4 *)(puVar1 + -0x3244),unaff_s3);\n    if ((int)puVar1 < 1) {\n      param_2 = *(undefined **)PTR_stderr_000bccf0;\n      uVar7 = fxp_error();\n      FUN_00027ff8(param_2,PTR_s_Server_sent_command_exit_status___000bc188 + -0x4abc,uVar7);\n      if (puVar1 == (undefined *)0x80000000) {\n        safefree(unaff_s3);\n      }\n      *(int *)(PTR_DAT_000bc178 + -0x31e0) = *(int *)(PTR_DAT_000bc178 + -0x31e0) + 1;\n      uVar3 = 0xffffffff;\n    }\n    else {\n      iVar2 = xfer_download_data(*(undefined4 *)(PTR_DAT_000bc178 + -0x3244),&local_20,&local_24);\n      if (iVar2 == 0) {\n        local_24 = 0;\n      }\n      else {\n        param_2 = (undefined *)(uint)((int)param_2 < (int)local_24);\n        if ((int)local_24 < 1) {\n          FUN_00027ff8(*(undefined4 *)PTR_stderr_000bccf0,\n                       PTR_s_Server_sent_command_exit_status___000bc188 + -0x4a9c);\n          *(int *)(PTR_DAT_000bc178 + -0x31e0) = *(int *)(PTR_DAT_000bc178 + -0x31e0) + 1;\n          safefree(local_20);\n          uVar3 = 0xffffffff;\n          goto LAB_0002d148;\n        }\n        if (param_2 != (undefined *)0x0) {\n          uVar3 = (*(code *)PTR___assert_fail_000bcb00)\n                            (PTR_s_Server_sent_command_exit_status___000bc188 + -0x4a7c,\n                             PTR_s_Server_sent_command_exit_status___000bc188 + -0x4fb0,0x628,\n                             PTR_s_Server_sent_command_exit_status___000bc188 + -0x45f0);\n          return uVar3;\n        }\n        (*(code *)PTR_memcpy_000bccdc)(param_1,local_20);\n        safefree(local_20);\n      }\n      param_2 = PTR_DAT_000bc178;\n      puVar1 = PTR_DAT_000bc178 + -0x324c;\n      uint64_add32(&local_30,*(undefined4 *)(PTR_DAT_000bc178 + -0x324c),\n                   *(undefined4 *)(PTR_DAT_000bc178 + -0x3248),local_24);\n      *(undefined4 *)(param_2 + -0x324c) = local_30;\n      *(undefined4 *)(param_2 + -0x3248) = local_2c;\n      uVar3 = local_24;\n    }\n  }" else (compound_statement "{\n    xfer_download_queue(*(undefined4 *)(PTR_DAT_000bc178 + -0x3244));\n    unaff_s3 = (undefined4 *)sftp_recv();\n    puVar1 = (undefined *)xfer_download_gotpkt(*(undefined4 *)(puVar1 + -0x3244),unaff_s3);\n    if ((int)puVar1 < 1) {\n      param_2 = *(undefined **)PTR_stderr_000bccf0;\n      uVar7 = fxp_error();\n      FUN_00027ff8(param_2,PTR_s_Server_sent_command_exit_status___000bc188 + -0x4abc,uVar7);\n      if (puVar1 == (undefined *)0x80000000) {\n        safefree(unaff_s3);\n      }\n      *(int *)(PTR_DAT_000bc178 + -0x31e0) = *(int *)(PTR_DAT_000bc178 + -0x31e0) + 1;\n      uVar3 = 0xffffffff;\n    }\n    else {\n      iVar2 = xfer_download_data(*(undefined4 *)(PTR_DAT_000bc178 + -0x3244),&local_20,&local_24);\n      if (iVar2 == 0) {\n        local_24 = 0;\n      }\n      else {\n        param_2 = (undefined *)(uint)((int)param_2 < (int)local_24);\n        if ((int)local_24 < 1) {\n          FUN_00027ff8(*(undefined4 *)PTR_stderr_000bccf0,\n                       PTR_s_Server_sent_command_exit_status___000bc188 + -0x4a9c);\n          *(int *)(PTR_DAT_000bc178 + -0x31e0) = *(int *)(PTR_DAT_000bc178 + -0x31e0) + 1;\n          safefree(local_20);\n          uVar3 = 0xffffffff;\n          goto LAB_0002d148;\n        }\n        if (param_2 != (undefined *)0x0) {\n          uVar3 = (*(code *)PTR___assert_fail_000bcb00)\n                            (PTR_s_Server_sent_command_exit_status___000bc188 + -0x4a7c,\n                             PTR_s_Server_sent_command_exit_status___000bc188 + -0x4fb0,0x628,\n                             PTR_s_Server_sent_command_exit_status___000bc188 + -0x45f0);\n          return uVar3;\n        }\n        (*(code *)PTR_memcpy_000bccdc)(param_1,local_20);\n        safefree(local_20);\n      }\n      param_2 = PTR_DAT_000bc178;\n      puVar1 = PTR_DAT_000bc178 + -0x324c;\n      uint64_add32(&local_30,*(undefined4 *)(PTR_DAT_000bc178 + -0x324c),\n                   *(undefined4 *)(PTR_DAT_000bc178 + -0x3248),local_24);\n      *(undefined4 *)(param_2 + -0x324c) = local_30;\n      *(undefined4 *)(param_2 + -0x3248) = local_2c;\n      uVar3 = local_24;\n    }\n  }" { (expression_statement "xfer_download_queue(*(undefined4 *)(PTR_DAT_000bc178 + -0x3244));" (call_expression "xfer_download_queue(*(undefined4 *)(PTR_DAT_000bc178 + -0x3244))" identifier (argument_list "(*(undefined4 *)(PTR_DAT_000bc178 + -0x3244))" ( (pointer_expression "*(undefined4 *)(PTR_DAT_000bc178 + -0x3244)" * (cast_expression "(undefined4 *)(PTR_DAT_000bc178 + -0x3244)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_DAT_000bc178 + -0x3244)" ( (binary_expression "PTR_DAT_000bc178 + -0x3244" identifier + number_literal) )))) ))) ;) (expression_statement "unaff_s3 = (undefined4 *)sftp_recv();" (assignment_expression "unaff_s3 = (undefined4 *)sftp_recv()" identifier = (cast_expression "(undefined4 *)sftp_recv()" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "sftp_recv()" identifier (argument_list "()" ( ))))) ;) (expression_statement "puVar1 = (undefined *)xfer_download_gotpkt(*(undefined4 *)(puVar1 + -0x3244),unaff_s3);" (assignment_expression "puVar1 = (undefined *)xfer_download_gotpkt(*(undefined4 *)(puVar1 + -0x3244),unaff_s3)" identifier = (cast_expression "(undefined *)xfer_download_gotpkt(*(undefined4 *)(puVar1 + -0x3244),unaff_s3)" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "xfer_download_gotpkt(*(undefined4 *)(puVar1 + -0x3244),unaff_s3)" identifier (argument_list "(*(undefined4 *)(puVar1 + -0x3244),unaff_s3)" ( (pointer_expression "*(undefined4 *)(puVar1 + -0x3244)" * (cast_expression "(undefined4 *)(puVar1 + -0x3244)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar1 + -0x3244)" ( (binary_expression "puVar1 + -0x3244" identifier + number_literal) )))) , identifier ))))) ;) (if_statement "if ((int)puVar1 < 1) {\n      param_2 = *(undefined **)PTR_stderr_000bccf0;\n      uVar7 = fxp_error();\n      FUN_00027ff8(param_2,PTR_s_Server_sent_command_exit_status___000bc188 + -0x4abc,uVar7);\n      if (puVar1 == (undefined *)0x80000000) {\n        safefree(unaff_s3);\n      }\n      *(int *)(PTR_DAT_000bc178 + -0x31e0) = *(int *)(PTR_DAT_000bc178 + -0x31e0) + 1;\n      uVar3 = 0xffffffff;\n    }\n    else {\n      iVar2 = xfer_download_data(*(undefined4 *)(PTR_DAT_000bc178 + -0x3244),&local_20,&local_24);\n      if (iVar2 == 0) {\n        local_24 = 0;\n      }\n      else {\n        param_2 = (undefined *)(uint)((int)param_2 < (int)local_24);\n        if ((int)local_24 < 1) {\n          FUN_00027ff8(*(undefined4 *)PTR_stderr_000bccf0,\n                       PTR_s_Server_sent_command_exit_status___000bc188 + -0x4a9c);\n          *(int *)(PTR_DAT_000bc178 + -0x31e0) = *(int *)(PTR_DAT_000bc178 + -0x31e0) + 1;\n          safefree(local_20);\n          uVar3 = 0xffffffff;\n          goto LAB_0002d148;\n        }\n        if (param_2 != (undefined *)0x0) {\n          uVar3 = (*(code *)PTR___assert_fail_000bcb00)\n                            (PTR_s_Server_sent_command_exit_status___000bc188 + -0x4a7c,\n                             PTR_s_Server_sent_command_exit_status___000bc188 + -0x4fb0,0x628,\n                             PTR_s_Server_sent_command_exit_status___000bc188 + -0x45f0);\n          return uVar3;\n        }\n        (*(code *)PTR_memcpy_000bccdc)(param_1,local_20);\n        safefree(local_20);\n      }\n      param_2 = PTR_DAT_000bc178;\n      puVar1 = PTR_DAT_000bc178 + -0x324c;\n      uint64_add32(&local_30,*(undefined4 *)(PTR_DAT_000bc178 + -0x324c),\n                   *(undefined4 *)(PTR_DAT_000bc178 + -0x3248),local_24);\n      *(undefined4 *)(param_2 + -0x324c) = local_30;\n      *(undefined4 *)(param_2 + -0x3248) = local_2c;\n      uVar3 = local_24;\n    }" if (parenthesized_expression "((int)puVar1 < 1)" ( (binary_expression "(int)puVar1 < 1" (cast_expression "(int)puVar1" ( (type_descriptor "int" primitive_type) ) identifier) < number_literal) )) (compound_statement "{\n      param_2 = *(undefined **)PTR_stderr_000bccf0;\n      uVar7 = fxp_error();\n      FUN_00027ff8(param_2,PTR_s_Server_sent_command_exit_status___000bc188 + -0x4abc,uVar7);\n      if (puVar1 == (undefined *)0x80000000) {\n        safefree(unaff_s3);\n      }\n      *(int *)(PTR_DAT_000bc178 + -0x31e0) = *(int *)(PTR_DAT_000bc178 + -0x31e0) + 1;\n      uVar3 = 0xffffffff;\n    }" { (expression_statement "param_2 = *(undefined **)PTR_stderr_000bccf0;" (assignment_expression "param_2 = *(undefined **)PTR_stderr_000bccf0" identifier = (pointer_expression "*(undefined **)PTR_stderr_000bccf0" * (cast_expression "(undefined **)PTR_stderr_000bccf0" ( (type_descriptor "undefined **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier))) ;) (expression_statement "uVar7 = fxp_error();" (assignment_expression "uVar7 = fxp_error()" identifier = (call_expression "fxp_error()" identifier (argument_list "()" ( )))) ;) (expression_statement "FUN_00027ff8(param_2,PTR_s_Server_sent_command_exit_status___000bc188 + -0x4abc,uVar7);" (call_expression "FUN_00027ff8(param_2,PTR_s_Server_sent_command_exit_status___000bc188 + -0x4abc,uVar7)" identifier (argument_list "(param_2,PTR_s_Server_sent_command_exit_status___000bc188 + -0x4abc,uVar7)" ( identifier , (binary_expression "PTR_s_Server_sent_command_exit_status___000bc188 + -0x4abc" identifier + number_literal) , identifier ))) ;) (if_statement "if (puVar1 == (undefined *)0x80000000) {\n        safefree(unaff_s3);\n      }" if (parenthesized_expression "(puVar1 == (undefined *)0x80000000)" ( (binary_expression "puVar1 == (undefined *)0x80000000" identifier == (cast_expression "(undefined *)0x80000000" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n        safefree(unaff_s3);\n      }" { (expression_statement "safefree(unaff_s3);" (call_expression "safefree(unaff_s3)" identifier (argument_list "(unaff_s3)" ( identifier ))) ;) })) (expression_statement "*(int *)(PTR_DAT_000bc178 + -0x31e0) = *(int *)(PTR_DAT_000bc178 + -0x31e0) + 1;" (assignment_expression "*(int *)(PTR_DAT_000bc178 + -0x31e0) = *(int *)(PTR_DAT_000bc178 + -0x31e0) + 1" (pointer_expression "*(int *)(PTR_DAT_000bc178 + -0x31e0)" * (cast_expression "(int *)(PTR_DAT_000bc178 + -0x31e0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_DAT_000bc178 + -0x31e0)" ( (binary_expression "PTR_DAT_000bc178 + -0x31e0" identifier + number_literal) )))) = (binary_expression "*(int *)(PTR_DAT_000bc178 + -0x31e0) + 1" (pointer_expression "*(int *)(PTR_DAT_000bc178 + -0x31e0)" * (cast_expression "(int *)(PTR_DAT_000bc178 + -0x31e0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_DAT_000bc178 + -0x31e0)" ( (binary_expression "PTR_DAT_000bc178 + -0x31e0" identifier + number_literal) )))) + number_literal)) ;) (expression_statement "uVar3 = 0xffffffff;" (assignment_expression "uVar3 = 0xffffffff" identifier = number_literal) ;) }) (else_clause "else {\n      iVar2 = xfer_download_data(*(undefined4 *)(PTR_DAT_000bc178 + -0x3244),&local_20,&local_24);\n      if (iVar2 == 0) {\n        local_24 = 0;\n      }\n      else {\n        param_2 = (undefined *)(uint)((int)param_2 < (int)local_24);\n        if ((int)local_24 < 1) {\n          FUN_00027ff8(*(undefined4 *)PTR_stderr_000bccf0,\n                       PTR_s_Server_sent_command_exit_status___000bc188 + -0x4a9c);\n          *(int *)(PTR_DAT_000bc178 + -0x31e0) = *(int *)(PTR_DAT_000bc178 + -0x31e0) + 1;\n          safefree(local_20);\n          uVar3 = 0xffffffff;\n          goto LAB_0002d148;\n        }\n        if (param_2 != (undefined *)0x0) {\n          uVar3 = (*(code *)PTR___assert_fail_000bcb00)\n                            (PTR_s_Server_sent_command_exit_status___000bc188 + -0x4a7c,\n                             PTR_s_Server_sent_command_exit_status___000bc188 + -0x4fb0,0x628,\n                             PTR_s_Server_sent_command_exit_status___000bc188 + -0x45f0);\n          return uVar3;\n        }\n        (*(code *)PTR_memcpy_000bccdc)(param_1,local_20);\n        safefree(local_20);\n      }\n      param_2 = PTR_DAT_000bc178;\n      puVar1 = PTR_DAT_000bc178 + -0x324c;\n      uint64_add32(&local_30,*(undefined4 *)(PTR_DAT_000bc178 + -0x324c),\n                   *(undefined4 *)(PTR_DAT_000bc178 + -0x3248),local_24);\n      *(undefined4 *)(param_2 + -0x324c) = local_30;\n      *(undefined4 *)(param_2 + -0x3248) = local_2c;\n      uVar3 = local_24;\n    }" else (compound_statement "{\n      iVar2 = xfer_download_data(*(undefined4 *)(PTR_DAT_000bc178 + -0x3244),&local_20,&local_24);\n      if (iVar2 == 0) {\n        local_24 = 0;\n      }\n      else {\n        param_2 = (undefined *)(uint)((int)param_2 < (int)local_24);\n        if ((int)local_24 < 1) {\n          FUN_00027ff8(*(undefined4 *)PTR_stderr_000bccf0,\n                       PTR_s_Server_sent_command_exit_status___000bc188 + -0x4a9c);\n          *(int *)(PTR_DAT_000bc178 + -0x31e0) = *(int *)(PTR_DAT_000bc178 + -0x31e0) + 1;\n          safefree(local_20);\n          uVar3 = 0xffffffff;\n          goto LAB_0002d148;\n        }\n        if (param_2 != (undefined *)0x0) {\n          uVar3 = (*(code *)PTR___assert_fail_000bcb00)\n                            (PTR_s_Server_sent_command_exit_status___000bc188 + -0x4a7c,\n                             PTR_s_Server_sent_command_exit_status___000bc188 + -0x4fb0,0x628,\n                             PTR_s_Server_sent_command_exit_status___000bc188 + -0x45f0);\n          return uVar3;\n        }\n        (*(code *)PTR_memcpy_000bccdc)(param_1,local_20);\n        safefree(local_20);\n      }\n      param_2 = PTR_DAT_000bc178;\n      puVar1 = PTR_DAT_000bc178 + -0x324c;\n      uint64_add32(&local_30,*(undefined4 *)(PTR_DAT_000bc178 + -0x324c),\n                   *(undefined4 *)(PTR_DAT_000bc178 + -0x3248),local_24);\n      *(undefined4 *)(param_2 + -0x324c) = local_30;\n      *(undefined4 *)(param_2 + -0x3248) = local_2c;\n      uVar3 = local_24;\n    }" { (expression_statement "iVar2 = xfer_download_data(*(undefined4 *)(PTR_DAT_000bc178 + -0x3244),&local_20,&local_24);" (assignment_expression "iVar2 = xfer_download_data(*(undefined4 *)(PTR_DAT_000bc178 + -0x3244),&local_20,&local_24)" identifier = (call_expression "xfer_download_data(*(undefined4 *)(PTR_DAT_000bc178 + -0x3244),&local_20,&local_24)" identifier (argument_list "(*(undefined4 *)(PTR_DAT_000bc178 + -0x3244),&local_20,&local_24)" ( (pointer_expression "*(undefined4 *)(PTR_DAT_000bc178 + -0x3244)" * (cast_expression "(undefined4 *)(PTR_DAT_000bc178 + -0x3244)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_DAT_000bc178 + -0x3244)" ( (binary_expression "PTR_DAT_000bc178 + -0x3244" identifier + number_literal) )))) , (pointer_expression "&local_20" & identifier) , (pointer_expression "&local_24" & identifier) )))) ;) (if_statement "if (iVar2 == 0) {\n        local_24 = 0;\n      }\n      else {\n        param_2 = (undefined *)(uint)((int)param_2 < (int)local_24);\n        if ((int)local_24 < 1) {\n          FUN_00027ff8(*(undefined4 *)PTR_stderr_000bccf0,\n                       PTR_s_Server_sent_command_exit_status___000bc188 + -0x4a9c);\n          *(int *)(PTR_DAT_000bc178 + -0x31e0) = *(int *)(PTR_DAT_000bc178 + -0x31e0) + 1;\n          safefree(local_20);\n          uVar3 = 0xffffffff;\n          goto LAB_0002d148;\n        }\n        if (param_2 != (undefined *)0x0) {\n          uVar3 = (*(code *)PTR___assert_fail_000bcb00)\n                            (PTR_s_Server_sent_command_exit_status___000bc188 + -0x4a7c,\n                             PTR_s_Server_sent_command_exit_status___000bc188 + -0x4fb0,0x628,\n                             PTR_s_Server_sent_command_exit_status___000bc188 + -0x45f0);\n          return uVar3;\n        }\n        (*(code *)PTR_memcpy_000bccdc)(param_1,local_20);\n        safefree(local_20);\n      }" if (parenthesized_expression "(iVar2 == 0)" ( (binary_expression "iVar2 == 0" identifier == number_literal) )) (compound_statement "{\n        local_24 = 0;\n      }" { (expression_statement "local_24 = 0;" (assignment_expression "local_24 = 0" identifier = number_literal) ;) }) (else_clause "else {\n        param_2 = (undefined *)(uint)((int)param_2 < (int)local_24);\n        if ((int)local_24 < 1) {\n          FUN_00027ff8(*(undefined4 *)PTR_stderr_000bccf0,\n                       PTR_s_Server_sent_command_exit_status___000bc188 + -0x4a9c);\n          *(int *)(PTR_DAT_000bc178 + -0x31e0) = *(int *)(PTR_DAT_000bc178 + -0x31e0) + 1;\n          safefree(local_20);\n          uVar3 = 0xffffffff;\n          goto LAB_0002d148;\n        }\n        if (param_2 != (undefined *)0x0) {\n          uVar3 = (*(code *)PTR___assert_fail_000bcb00)\n                            (PTR_s_Server_sent_command_exit_status___000bc188 + -0x4a7c,\n                             PTR_s_Server_sent_command_exit_status___000bc188 + -0x4fb0,0x628,\n                             PTR_s_Server_sent_command_exit_status___000bc188 + -0x45f0);\n          return uVar3;\n        }\n        (*(code *)PTR_memcpy_000bccdc)(param_1,local_20);\n        safefree(local_20);\n      }" else (compound_statement "{\n        param_2 = (undefined *)(uint)((int)param_2 < (int)local_24);\n        if ((int)local_24 < 1) {\n          FUN_00027ff8(*(undefined4 *)PTR_stderr_000bccf0,\n                       PTR_s_Server_sent_command_exit_status___000bc188 + -0x4a9c);\n          *(int *)(PTR_DAT_000bc178 + -0x31e0) = *(int *)(PTR_DAT_000bc178 + -0x31e0) + 1;\n          safefree(local_20);\n          uVar3 = 0xffffffff;\n          goto LAB_0002d148;\n        }\n        if (param_2 != (undefined *)0x0) {\n          uVar3 = (*(code *)PTR___assert_fail_000bcb00)\n                            (PTR_s_Server_sent_command_exit_status___000bc188 + -0x4a7c,\n                             PTR_s_Server_sent_command_exit_status___000bc188 + -0x4fb0,0x628,\n                             PTR_s_Server_sent_command_exit_status___000bc188 + -0x45f0);\n          return uVar3;\n        }\n        (*(code *)PTR_memcpy_000bccdc)(param_1,local_20);\n        safefree(local_20);\n      }" { (expression_statement "param_2 = (undefined *)(uint)((int)param_2 < (int)local_24);" (assignment_expression "param_2 = (undefined *)(uint)((int)param_2 < (int)local_24)" identifier = (cast_expression "(undefined *)(uint)((int)param_2 < (int)local_24)" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(uint)((int)param_2 < (int)local_24)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "((int)param_2 < (int)local_24)" ( (binary_expression "(int)param_2 < (int)local_24" (cast_expression "(int)param_2" ( (type_descriptor "int" primitive_type) ) identifier) < (cast_expression "(int)local_24" ( (type_descriptor "int" primitive_type) ) identifier)) ))))) ;) (if_statement "if ((int)local_24 < 1) {\n          FUN_00027ff8(*(undefined4 *)PTR_stderr_000bccf0,\n                       PTR_s_Server_sent_command_exit_status___000bc188 + -0x4a9c);\n          *(int *)(PTR_DAT_000bc178 + -0x31e0) = *(int *)(PTR_DAT_000bc178 + -0x31e0) + 1;\n          safefree(local_20);\n          uVar3 = 0xffffffff;\n          goto LAB_0002d148;\n        }" if (parenthesized_expression "((int)local_24 < 1)" ( (binary_expression "(int)local_24 < 1" (cast_expression "(int)local_24" ( (type_descriptor "int" primitive_type) ) identifier) < number_literal) )) (compound_statement "{\n          FUN_00027ff8(*(undefined4 *)PTR_stderr_000bccf0,\n                       PTR_s_Server_sent_command_exit_status___000bc188 + -0x4a9c);\n          *(int *)(PTR_DAT_000bc178 + -0x31e0) = *(int *)(PTR_DAT_000bc178 + -0x31e0) + 1;\n          safefree(local_20);\n          uVar3 = 0xffffffff;\n          goto LAB_0002d148;\n        }" { (expression_statement "FUN_00027ff8(*(undefined4 *)PTR_stderr_000bccf0,\n                       PTR_s_Server_sent_command_exit_status___000bc188 + -0x4a9c);" (call_expression "FUN_00027ff8(*(undefined4 *)PTR_stderr_000bccf0,\n                       PTR_s_Server_sent_command_exit_status___000bc188 + -0x4a9c)" identifier (argument_list "(*(undefined4 *)PTR_stderr_000bccf0,\n                       PTR_s_Server_sent_command_exit_status___000bc188 + -0x4a9c)" ( (pointer_expression "*(undefined4 *)PTR_stderr_000bccf0" * (cast_expression "(undefined4 *)PTR_stderr_000bccf0" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) , (binary_expression "PTR_s_Server_sent_command_exit_status___000bc188 + -0x4a9c" identifier + number_literal) ))) ;) (expression_statement "*(int *)(PTR_DAT_000bc178 + -0x31e0) = *(int *)(PTR_DAT_000bc178 + -0x31e0) + 1;" (assignment_expression "*(int *)(PTR_DAT_000bc178 + -0x31e0) = *(int *)(PTR_DAT_000bc178 + -0x31e0) + 1" (pointer_expression "*(int *)(PTR_DAT_000bc178 + -0x31e0)" * (cast_expression "(int *)(PTR_DAT_000bc178 + -0x31e0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_DAT_000bc178 + -0x31e0)" ( (binary_expression "PTR_DAT_000bc178 + -0x31e0" identifier + number_literal) )))) = (binary_expression "*(int *)(PTR_DAT_000bc178 + -0x31e0) + 1" (pointer_expression "*(int *)(PTR_DAT_000bc178 + -0x31e0)" * (cast_expression "(int *)(PTR_DAT_000bc178 + -0x31e0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_DAT_000bc178 + -0x31e0)" ( (binary_expression "PTR_DAT_000bc178 + -0x31e0" identifier + number_literal) )))) + number_literal)) ;) (expression_statement "safefree(local_20);" (call_expression "safefree(local_20)" identifier (argument_list "(local_20)" ( identifier ))) ;) (expression_statement "uVar3 = 0xffffffff;" (assignment_expression "uVar3 = 0xffffffff" identifier = number_literal) ;) (goto_statement "goto LAB_0002d148;" goto statement_identifier ;) })) (if_statement "if (param_2 != (undefined *)0x0) {\n          uVar3 = (*(code *)PTR___assert_fail_000bcb00)\n                            (PTR_s_Server_sent_command_exit_status___000bc188 + -0x4a7c,\n                             PTR_s_Server_sent_command_exit_status___000bc188 + -0x4fb0,0x628,\n                             PTR_s_Server_sent_command_exit_status___000bc188 + -0x45f0);\n          return uVar3;\n        }" if (parenthesized_expression "(param_2 != (undefined *)0x0)" ( (binary_expression "param_2 != (undefined *)0x0" identifier != (cast_expression "(undefined *)0x0" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n          uVar3 = (*(code *)PTR___assert_fail_000bcb00)\n                            (PTR_s_Server_sent_command_exit_status___000bc188 + -0x4a7c,\n                             PTR_s_Server_sent_command_exit_status___000bc188 + -0x4fb0,0x628,\n                             PTR_s_Server_sent_command_exit_status___000bc188 + -0x45f0);\n          return uVar3;\n        }" { (expression_statement "uVar3 = (*(code *)PTR___assert_fail_000bcb00)\n                            (PTR_s_Server_sent_command_exit_status___000bc188 + -0x4a7c,\n                             PTR_s_Server_sent_command_exit_status___000bc188 + -0x4fb0,0x628,\n                             PTR_s_Server_sent_command_exit_status___000bc188 + -0x45f0);" (assignment_expression "uVar3 = (*(code *)PTR___assert_fail_000bcb00)\n                            (PTR_s_Server_sent_command_exit_status___000bc188 + -0x4a7c,\n                             PTR_s_Server_sent_command_exit_status___000bc188 + -0x4fb0,0x628,\n                             PTR_s_Server_sent_command_exit_status___000bc188 + -0x45f0)" identifier = (call_expression "(*(code *)PTR___assert_fail_000bcb00)\n                            (PTR_s_Server_sent_command_exit_status___000bc188 + -0x4a7c,\n                             PTR_s_Server_sent_command_exit_status___000bc188 + -0x4fb0,0x628,\n                             PTR_s_Server_sent_command_exit_status___000bc188 + -0x45f0)" (parenthesized_expression "(*(code *)PTR___assert_fail_000bcb00)" ( (pointer_expression "*(code *)PTR___assert_fail_000bcb00" * (cast_expression "(code *)PTR___assert_fail_000bcb00" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(PTR_s_Server_sent_command_exit_status___000bc188 + -0x4a7c,\n                             PTR_s_Server_sent_command_exit_status___000bc188 + -0x4fb0,0x628,\n                             PTR_s_Server_sent_command_exit_status___000bc188 + -0x45f0)" ( (binary_expression "PTR_s_Server_sent_command_exit_status___000bc188 + -0x4a7c" identifier + number_literal) , (binary_expression "PTR_s_Server_sent_command_exit_status___000bc188 + -0x4fb0" identifier + number_literal) , number_literal , (binary_expression "PTR_s_Server_sent_command_exit_status___000bc188 + -0x45f0" identifier + number_literal) )))) ;) (return_statement "return uVar3;" return identifier ;) })) (expression_statement "(*(code *)PTR_memcpy_000bccdc)(param_1,local_20);" (call_expression "(*(code *)PTR_memcpy_000bccdc)(param_1,local_20)" (parenthesized_expression "(*(code *)PTR_memcpy_000bccdc)" ( (pointer_expression "*(code *)PTR_memcpy_000bccdc" * (cast_expression "(code *)PTR_memcpy_000bccdc" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "(param_1,local_20)" ( identifier , identifier ))) ;) (expression_statement "safefree(local_20);" (call_expression "safefree(local_20)" identifier (argument_list "(local_20)" ( identifier ))) ;) }))) (expression_statement "param_2 = PTR_DAT_000bc178;" (assignment_expression "param_2 = PTR_DAT_000bc178" identifier = identifier) ;) (expression_statement "puVar1 = PTR_DAT_000bc178 + -0x324c;" (assignment_expression "puVar1 = PTR_DAT_000bc178 + -0x324c" identifier = (binary_expression "PTR_DAT_000bc178 + -0x324c" identifier + number_literal)) ;) (expression_statement "uint64_add32(&local_30,*(undefined4 *)(PTR_DAT_000bc178 + -0x324c),\n                   *(undefined4 *)(PTR_DAT_000bc178 + -0x3248),local_24);" (call_expression "uint64_add32(&local_30,*(undefined4 *)(PTR_DAT_000bc178 + -0x324c),\n                   *(undefined4 *)(PTR_DAT_000bc178 + -0x3248),local_24)" identifier (argument_list "(&local_30,*(undefined4 *)(PTR_DAT_000bc178 + -0x324c),\n                   *(undefined4 *)(PTR_DAT_000bc178 + -0x3248),local_24)" ( (pointer_expression "&local_30" & identifier) , (pointer_expression "*(undefined4 *)(PTR_DAT_000bc178 + -0x324c)" * (cast_expression "(undefined4 *)(PTR_DAT_000bc178 + -0x324c)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_DAT_000bc178 + -0x324c)" ( (binary_expression "PTR_DAT_000bc178 + -0x324c" identifier + number_literal) )))) , (pointer_expression "*(undefined4 *)(PTR_DAT_000bc178 + -0x3248)" * (cast_expression "(undefined4 *)(PTR_DAT_000bc178 + -0x3248)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_DAT_000bc178 + -0x3248)" ( (binary_expression "PTR_DAT_000bc178 + -0x3248" identifier + number_literal) )))) , identifier ))) ;) (expression_statement "*(undefined4 *)(param_2 + -0x324c) = local_30;" (assignment_expression "*(undefined4 *)(param_2 + -0x324c) = local_30" (pointer_expression "*(undefined4 *)(param_2 + -0x324c)" * (cast_expression "(undefined4 *)(param_2 + -0x324c)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_2 + -0x324c)" ( (binary_expression "param_2 + -0x324c" identifier + number_literal) )))) = identifier) ;) (expression_statement "*(undefined4 *)(param_2 + -0x3248) = local_2c;" (assignment_expression "*(undefined4 *)(param_2 + -0x3248) = local_2c" (pointer_expression "*(undefined4 *)(param_2 + -0x3248)" * (cast_expression "(undefined4 *)(param_2 + -0x3248)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_2 + -0x3248)" ( (binary_expression "param_2 + -0x3248" identifier + number_literal) )))) = identifier) ;) (expression_statement "uVar3 = local_24;" (assignment_expression "uVar3 = local_24" identifier = identifier) ;) }))) }))) (labeled_statement "LAB_0002d148:\n  if (local_1c == *(int *)PTR___stack_chk_guard_000bccd8) {\n    return uVar3;\n  }" statement_identifier : (if_statement "if (local_1c == *(int *)PTR___stack_chk_guard_000bccd8) {\n    return uVar3;\n  }" if (parenthesized_expression "(local_1c == *(int *)PTR___stack_chk_guard_000bccd8)" ( (binary_expression "local_1c == *(int *)PTR___stack_chk_guard_000bccd8" identifier == (pointer_expression "*(int *)PTR___stack_chk_guard_000bccd8" * (cast_expression "(int *)PTR___stack_chk_guard_000bccd8" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier))) )) (compound_statement "{\n    return uVar3;\n  }" { (return_statement "return uVar3;" return identifier ;) }))) (expression_statement "puVar5 = PTR___stack_chk_fail_000bccb0;" (assignment_expression "puVar5 = PTR___stack_chk_fail_000bccb0" identifier = identifier) ;) (expression_statement "(*(code *)PTR___stack_chk_fail_000bccb0)();" (call_expression "(*(code *)PTR___stack_chk_fail_000bccb0)()" (parenthesized_expression "(*(code *)PTR___stack_chk_fail_000bccb0)" ( (pointer_expression "*(code *)PTR___stack_chk_fail_000bccb0" * (cast_expression "(code *)PTR___stack_chk_fail_000bccb0" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "()" ( ))) ;) (expression_statement "pcStack_64 = (char *)**(undefined4 **)(puVar5 + 0x8fa44);" (assignment_expression "pcStack_64 = (char *)**(undefined4 **)(puVar5 + 0x8fa44)" identifier = (cast_expression "(char *)**(undefined4 **)(puVar5 + 0x8fa44)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "**(undefined4 **)(puVar5 + 0x8fa44)" * (pointer_expression "*(undefined4 **)(puVar5 + 0x8fa44)" * (cast_expression "(undefined4 **)(puVar5 + 0x8fa44)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar5 + 0x8fa44)" ( (binary_expression "puVar5 + 0x8fa44" identifier + number_literal) ))))))) ;) (expression_statement "puStack_60 = param_2;" (assignment_expression "puStack_60 = param_2" identifier = identifier) ;) (expression_statement "puStack_5c = puVar1;" (assignment_expression "puStack_5c = puVar1" identifier = identifier) ;) (expression_statement "puStack_58 = param_1;" (assignment_expression "puStack_58 = param_1" identifier = identifier) ;) (expression_statement "puStack_54 = unaff_s3;" (assignment_expression "puStack_54 = unaff_s3" identifier = identifier) ;) (if_statement "if (*(int *)(*(int *)(puVar5 + 0x8eee4) + -0x31ec) == 0) {\n    puVar14 = (undefined *)(*(int *)(puVar5 + 0x8eef4) + -0x17dc);\n    (**(code **)(*(int *)(*(int *)(puVar5 + 0x8eee4) + -0x31f4) + 0xc))\n              (*(undefined4 *)(*(int *)(puVar5 + 0x8eee4) + -0x31f8),puVar14,1);\n    uVar3 = FUN_00028400();\n  }\n  else {\n    xfer_set_error(*(undefined4 *)(*(int *)(puVar5 + 0x8eee4) + -0x3244));\n    iVar2 = *(int *)(puVar5 + 0x8eee4);\n    unaff_s4 = auStack_68;\n    unaff_s3 = &uStack_6c;\n    while (iVar24 = xfer_done(*(undefined4 *)(iVar2 + -0x3244)), iVar24 == 0) {\n      param_1 = (undefined *)sftp_recv();\n      puVar1 = (undefined *)xfer_download_gotpkt(*(undefined4 *)(iVar2 + -0x3244),param_1);\n      if ((int)puVar1 < 1) {\n        param_2 = (undefined *)**(undefined4 **)(puVar5 + 0x8fa5c);\n        uVar7 = fxp_error();\n        puVar14 = (undefined *)(*(int *)(puVar5 + 0x8eef4) + -0x4abc);\n        FUN_00027ff8(param_2,puVar14,uVar7);\n        if (puVar1 == (undefined *)0x80000000) {\n          safefree(param_1);\n          iVar2 = *(int *)(puVar5 + 0x8eee4);\n        }\n        else {\n          iVar2 = *(int *)(puVar5 + 0x8eee4);\n        }\n        *(int *)(iVar2 + -0x31e0) = *(int *)(iVar2 + -0x31e0) + 1;\n        uVar3 = 0xffffffff;\n        goto LAB_0002d318;\n      }\n      iVar24 = xfer_download_data(*(undefined4 *)(iVar2 + -0x3244),unaff_s3,unaff_s4);\n      if (iVar24 != 0) {\n        safefree(uStack_6c);\n      }\n    }\n    xfer_cleanup(*(undefined4 *)(*(int *)(puVar5 + 0x8eee4) + -0x3244));\n    param_2 = (undefined *)fxp_close_send(*(undefined4 *)(*(int *)(puVar5 + 0x8eee4) + -0x3240));\n    uVar7 = sftp_wait_for_reply(param_2);\n    puVar14 = param_2;\n    fxp_close_recv(uVar7);\n    uVar3 = 0;\n  }" if (parenthesized_expression "(*(int *)(*(int *)(puVar5 + 0x8eee4) + -0x31ec) == 0)" ( (binary_expression "*(int *)(*(int *)(puVar5 + 0x8eee4) + -0x31ec) == 0" (pointer_expression "*(int *)(*(int *)(puVar5 + 0x8eee4) + -0x31ec)" * (cast_expression "(int *)(*(int *)(puVar5 + 0x8eee4) + -0x31ec)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(puVar5 + 0x8eee4) + -0x31ec)" ( (binary_expression "*(int *)(puVar5 + 0x8eee4) + -0x31ec" (pointer_expression "*(int *)(puVar5 + 0x8eee4)" * (cast_expression "(int *)(puVar5 + 0x8eee4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar5 + 0x8eee4)" ( (binary_expression "puVar5 + 0x8eee4" identifier + number_literal) )))) + number_literal) )))) == number_literal) )) (compound_statement "{\n    puVar14 = (undefined *)(*(int *)(puVar5 + 0x8eef4) + -0x17dc);\n    (**(code **)(*(int *)(*(int *)(puVar5 + 0x8eee4) + -0x31f4) + 0xc))\n              (*(undefined4 *)(*(int *)(puVar5 + 0x8eee4) + -0x31f8),puVar14,1);\n    uVar3 = FUN_00028400();\n  }" { (expression_statement "puVar14 = (undefined *)(*(int *)(puVar5 + 0x8eef4) + -0x17dc);" (assignment_expression "puVar14 = (undefined *)(*(int *)(puVar5 + 0x8eef4) + -0x17dc)" identifier = (cast_expression "(undefined *)(*(int *)(puVar5 + 0x8eef4) + -0x17dc)" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(puVar5 + 0x8eef4) + -0x17dc)" ( (binary_expression "*(int *)(puVar5 + 0x8eef4) + -0x17dc" (pointer_expression "*(int *)(puVar5 + 0x8eef4)" * (cast_expression "(int *)(puVar5 + 0x8eef4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar5 + 0x8eef4)" ( (binary_expression "puVar5 + 0x8eef4" identifier + number_literal) )))) + number_literal) )))) ;) (expression_statement "(**(code **)(*(int *)(*(int *)(puVar5 + 0x8eee4) + -0x31f4) + 0xc))\n              (*(undefined4 *)(*(int *)(puVar5 + 0x8eee4) + -0x31f8),puVar14,1);" (call_expression "(**(code **)(*(int *)(*(int *)(puVar5 + 0x8eee4) + -0x31f4) + 0xc))\n              (*(undefined4 *)(*(int *)(puVar5 + 0x8eee4) + -0x31f8),puVar14,1)" (parenthesized_expression "(**(code **)(*(int *)(*(int *)(puVar5 + 0x8eee4) + -0x31f4) + 0xc))" ( (pointer_expression "**(code **)(*(int *)(*(int *)(puVar5 + 0x8eee4) + -0x31f4) + 0xc)" * (pointer_expression "*(code **)(*(int *)(*(int *)(puVar5 + 0x8eee4) + -0x31f4) + 0xc)" * (cast_expression "(code **)(*(int *)(*(int *)(puVar5 + 0x8eee4) + -0x31f4) + 0xc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*(int *)(*(int *)(puVar5 + 0x8eee4) + -0x31f4) + 0xc)" ( (binary_expression "*(int *)(*(int *)(puVar5 + 0x8eee4) + -0x31f4) + 0xc" (pointer_expression "*(int *)(*(int *)(puVar5 + 0x8eee4) + -0x31f4)" * (cast_expression "(int *)(*(int *)(puVar5 + 0x8eee4) + -0x31f4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(puVar5 + 0x8eee4) + -0x31f4)" ( (binary_expression "*(int *)(puVar5 + 0x8eee4) + -0x31f4" (pointer_expression "*(int *)(puVar5 + 0x8eee4)" * (cast_expression "(int *)(puVar5 + 0x8eee4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar5 + 0x8eee4)" ( (binary_expression "puVar5 + 0x8eee4" identifier + number_literal) )))) + number_literal) )))) + number_literal) ))))) )) (argument_list "(*(undefined4 *)(*(int *)(puVar5 + 0x8eee4) + -0x31f8),puVar14,1)" ( (pointer_expression "*(undefined4 *)(*(int *)(puVar5 + 0x8eee4) + -0x31f8)" * (cast_expression "(undefined4 *)(*(int *)(puVar5 + 0x8eee4) + -0x31f8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(puVar5 + 0x8eee4) + -0x31f8)" ( (binary_expression "*(int *)(puVar5 + 0x8eee4) + -0x31f8" (pointer_expression "*(int *)(puVar5 + 0x8eee4)" * (cast_expression "(int *)(puVar5 + 0x8eee4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar5 + 0x8eee4)" ( (binary_expression "puVar5 + 0x8eee4" identifier + number_literal) )))) + number_literal) )))) , identifier , number_literal ))) ;) (expression_statement "uVar3 = FUN_00028400();" (assignment_expression "uVar3 = FUN_00028400()" identifier = (call_expression "FUN_00028400()" identifier (argument_list "()" ( )))) ;) }) (else_clause "else {\n    xfer_set_error(*(undefined4 *)(*(int *)(puVar5 + 0x8eee4) + -0x3244));\n    iVar2 = *(int *)(puVar5 + 0x8eee4);\n    unaff_s4 = auStack_68;\n    unaff_s3 = &uStack_6c;\n    while (iVar24 = xfer_done(*(undefined4 *)(iVar2 + -0x3244)), iVar24 == 0) {\n      param_1 = (undefined *)sftp_recv();\n      puVar1 = (undefined *)xfer_download_gotpkt(*(undefined4 *)(iVar2 + -0x3244),param_1);\n      if ((int)puVar1 < 1) {\n        param_2 = (undefined *)**(undefined4 **)(puVar5 + 0x8fa5c);\n        uVar7 = fxp_error();\n        puVar14 = (undefined *)(*(int *)(puVar5 + 0x8eef4) + -0x4abc);\n        FUN_00027ff8(param_2,puVar14,uVar7);\n        if (puVar1 == (undefined *)0x80000000) {\n          safefree(param_1);\n          iVar2 = *(int *)(puVar5 + 0x8eee4);\n        }\n        else {\n          iVar2 = *(int *)(puVar5 + 0x8eee4);\n        }\n        *(int *)(iVar2 + -0x31e0) = *(int *)(iVar2 + -0x31e0) + 1;\n        uVar3 = 0xffffffff;\n        goto LAB_0002d318;\n      }\n      iVar24 = xfer_download_data(*(undefined4 *)(iVar2 + -0x3244),unaff_s3,unaff_s4);\n      if (iVar24 != 0) {\n        safefree(uStack_6c);\n      }\n    }\n    xfer_cleanup(*(undefined4 *)(*(int *)(puVar5 + 0x8eee4) + -0x3244));\n    param_2 = (undefined *)fxp_close_send(*(undefined4 *)(*(int *)(puVar5 + 0x8eee4) + -0x3240));\n    uVar7 = sftp_wait_for_reply(param_2);\n    puVar14 = param_2;\n    fxp_close_recv(uVar7);\n    uVar3 = 0;\n  }" else (compound_statement "{\n    xfer_set_error(*(undefined4 *)(*(int *)(puVar5 + 0x8eee4) + -0x3244));\n    iVar2 = *(int *)(puVar5 + 0x8eee4);\n    unaff_s4 = auStack_68;\n    unaff_s3 = &uStack_6c;\n    while (iVar24 = xfer_done(*(undefined4 *)(iVar2 + -0x3244)), iVar24 == 0) {\n      param_1 = (undefined *)sftp_recv();\n      puVar1 = (undefined *)xfer_download_gotpkt(*(undefined4 *)(iVar2 + -0x3244),param_1);\n      if ((int)puVar1 < 1) {\n        param_2 = (undefined *)**(undefined4 **)(puVar5 + 0x8fa5c);\n        uVar7 = fxp_error();\n        puVar14 = (undefined *)(*(int *)(puVar5 + 0x8eef4) + -0x4abc);\n        FUN_00027ff8(param_2,puVar14,uVar7);\n        if (puVar1 == (undefined *)0x80000000) {\n          safefree(param_1);\n          iVar2 = *(int *)(puVar5 + 0x8eee4);\n        }\n        else {\n          iVar2 = *(int *)(puVar5 + 0x8eee4);\n        }\n        *(int *)(iVar2 + -0x31e0) = *(int *)(iVar2 + -0x31e0) + 1;\n        uVar3 = 0xffffffff;\n        goto LAB_0002d318;\n      }\n      iVar24 = xfer_download_data(*(undefined4 *)(iVar2 + -0x3244),unaff_s3,unaff_s4);\n      if (iVar24 != 0) {\n        safefree(uStack_6c);\n      }\n    }\n    xfer_cleanup(*(undefined4 *)(*(int *)(puVar5 + 0x8eee4) + -0x3244));\n    param_2 = (undefined *)fxp_close_send(*(undefined4 *)(*(int *)(puVar5 + 0x8eee4) + -0x3240));\n    uVar7 = sftp_wait_for_reply(param_2);\n    puVar14 = param_2;\n    fxp_close_recv(uVar7);\n    uVar3 = 0;\n  }" { (expression_statement "xfer_set_error(*(undefined4 *)(*(int *)(puVar5 + 0x8eee4) + -0x3244));" (call_expression "xfer_set_error(*(undefined4 *)(*(int *)(puVar5 + 0x8eee4) + -0x3244))" identifier (argument_list "(*(undefined4 *)(*(int *)(puVar5 + 0x8eee4) + -0x3244))" ( (pointer_expression "*(undefined4 *)(*(int *)(puVar5 + 0x8eee4) + -0x3244)" * (cast_expression "(undefined4 *)(*(int *)(puVar5 + 0x8eee4) + -0x3244)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(puVar5 + 0x8eee4) + -0x3244)" ( (binary_expression "*(int *)(puVar5 + 0x8eee4) + -0x3244" (pointer_expression "*(int *)(puVar5 + 0x8eee4)" * (cast_expression "(int *)(puVar5 + 0x8eee4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar5 + 0x8eee4)" ( (binary_expression "puVar5 + 0x8eee4" identifier + number_literal) )))) + number_literal) )))) ))) ;) (expression_statement "iVar2 = *(int *)(puVar5 + 0x8eee4);" (assignment_expression "iVar2 = *(int *)(puVar5 + 0x8eee4)" identifier = (pointer_expression "*(int *)(puVar5 + 0x8eee4)" * (cast_expression "(int *)(puVar5 + 0x8eee4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar5 + 0x8eee4)" ( (binary_expression "puVar5 + 0x8eee4" identifier + number_literal) ))))) ;) (expression_statement "unaff_s4 = auStack_68;" (assignment_expression "unaff_s4 = auStack_68" identifier = identifier) ;) (expression_statement "unaff_s3 = &uStack_6c;" (assignment_expression "unaff_s3 = &uStack_6c" identifier = (pointer_expression "&uStack_6c" & identifier)) ;) (while_statement "while (iVar24 = xfer_done(*(undefined4 *)(iVar2 + -0x3244)), iVar24 == 0) {\n      param_1 = (undefined *)sftp_recv();\n      puVar1 = (undefined *)xfer_download_gotpkt(*(undefined4 *)(iVar2 + -0x3244),param_1);\n      if ((int)puVar1 < 1) {\n        param_2 = (undefined *)**(undefined4 **)(puVar5 + 0x8fa5c);\n        uVar7 = fxp_error();\n        puVar14 = (undefined *)(*(int *)(puVar5 + 0x8eef4) + -0x4abc);\n        FUN_00027ff8(param_2,puVar14,uVar7);\n        if (puVar1 == (undefined *)0x80000000) {\n          safefree(param_1);\n          iVar2 = *(int *)(puVar5 + 0x8eee4);\n        }\n        else {\n          iVar2 = *(int *)(puVar5 + 0x8eee4);\n        }\n        *(int *)(iVar2 + -0x31e0) = *(int *)(iVar2 + -0x31e0) + 1;\n        uVar3 = 0xffffffff;\n        goto LAB_0002d318;\n      }\n      iVar24 = xfer_download_data(*(undefined4 *)(iVar2 + -0x3244),unaff_s3,unaff_s4);\n      if (iVar24 != 0) {\n        safefree(uStack_6c);\n      }\n    }" while (parenthesized_expression "(iVar24 = xfer_done(*(undefined4 *)(iVar2 + -0x3244)), iVar24 == 0)" ( (comma_expression "iVar24 = xfer_done(*(undefined4 *)(iVar2 + -0x3244)), iVar24 == 0" (assignment_expression "iVar24 = xfer_done(*(undefined4 *)(iVar2 + -0x3244))" identifier = (call_expression "xfer_done(*(undefined4 *)(iVar2 + -0x3244))" identifier (argument_list "(*(undefined4 *)(iVar2 + -0x3244))" ( (pointer_expression "*(undefined4 *)(iVar2 + -0x3244)" * (cast_expression "(undefined4 *)(iVar2 + -0x3244)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + -0x3244)" ( (binary_expression "iVar2 + -0x3244" identifier + number_literal) )))) )))) , (binary_expression "iVar24 == 0" identifier == number_literal)) )) (compound_statement "{\n      param_1 = (undefined *)sftp_recv();\n      puVar1 = (undefined *)xfer_download_gotpkt(*(undefined4 *)(iVar2 + -0x3244),param_1);\n      if ((int)puVar1 < 1) {\n        param_2 = (undefined *)**(undefined4 **)(puVar5 + 0x8fa5c);\n        uVar7 = fxp_error();\n        puVar14 = (undefined *)(*(int *)(puVar5 + 0x8eef4) + -0x4abc);\n        FUN_00027ff8(param_2,puVar14,uVar7);\n        if (puVar1 == (undefined *)0x80000000) {\n          safefree(param_1);\n          iVar2 = *(int *)(puVar5 + 0x8eee4);\n        }\n        else {\n          iVar2 = *(int *)(puVar5 + 0x8eee4);\n        }\n        *(int *)(iVar2 + -0x31e0) = *(int *)(iVar2 + -0x31e0) + 1;\n        uVar3 = 0xffffffff;\n        goto LAB_0002d318;\n      }\n      iVar24 = xfer_download_data(*(undefined4 *)(iVar2 + -0x3244),unaff_s3,unaff_s4);\n      if (iVar24 != 0) {\n        safefree(uStack_6c);\n      }\n    }" { (expression_statement "param_1 = (undefined *)sftp_recv();" (assignment_expression "param_1 = (undefined *)sftp_recv()" identifier = (cast_expression "(undefined *)sftp_recv()" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "sftp_recv()" identifier (argument_list "()" ( ))))) ;) (expression_statement "puVar1 = (undefined *)xfer_download_gotpkt(*(undefined4 *)(iVar2 + -0x3244),param_1);" (assignment_expression "puVar1 = (undefined *)xfer_download_gotpkt(*(undefined4 *)(iVar2 + -0x3244),param_1)" identifier = (cast_expression "(undefined *)xfer_download_gotpkt(*(undefined4 *)(iVar2 + -0x3244),param_1)" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "xfer_download_gotpkt(*(undefined4 *)(iVar2 + -0x3244),param_1)" identifier (argument_list "(*(undefined4 *)(iVar2 + -0x3244),param_1)" ( (pointer_expression "*(undefined4 *)(iVar2 + -0x3244)" * (cast_expression "(undefined4 *)(iVar2 + -0x3244)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + -0x3244)" ( (binary_expression "iVar2 + -0x3244" identifier + number_literal) )))) , identifier ))))) ;) (if_statement "if ((int)puVar1 < 1) {\n        param_2 = (undefined *)**(undefined4 **)(puVar5 + 0x8fa5c);\n        uVar7 = fxp_error();\n        puVar14 = (undefined *)(*(int *)(puVar5 + 0x8eef4) + -0x4abc);\n        FUN_00027ff8(param_2,puVar14,uVar7);\n        if (puVar1 == (undefined *)0x80000000) {\n          safefree(param_1);\n          iVar2 = *(int *)(puVar5 + 0x8eee4);\n        }\n        else {\n          iVar2 = *(int *)(puVar5 + 0x8eee4);\n        }\n        *(int *)(iVar2 + -0x31e0) = *(int *)(iVar2 + -0x31e0) + 1;\n        uVar3 = 0xffffffff;\n        goto LAB_0002d318;\n      }" if (parenthesized_expression "((int)puVar1 < 1)" ( (binary_expression "(int)puVar1 < 1" (cast_expression "(int)puVar1" ( (type_descriptor "int" primitive_type) ) identifier) < number_literal) )) (compound_statement "{\n        param_2 = (undefined *)**(undefined4 **)(puVar5 + 0x8fa5c);\n        uVar7 = fxp_error();\n        puVar14 = (undefined *)(*(int *)(puVar5 + 0x8eef4) + -0x4abc);\n        FUN_00027ff8(param_2,puVar14,uVar7);\n        if (puVar1 == (undefined *)0x80000000) {\n          safefree(param_1);\n          iVar2 = *(int *)(puVar5 + 0x8eee4);\n        }\n        else {\n          iVar2 = *(int *)(puVar5 + 0x8eee4);\n        }\n        *(int *)(iVar2 + -0x31e0) = *(int *)(iVar2 + -0x31e0) + 1;\n        uVar3 = 0xffffffff;\n        goto LAB_0002d318;\n      }" { (expression_statement "param_2 = (undefined *)**(undefined4 **)(puVar5 + 0x8fa5c);" (assignment_expression "param_2 = (undefined *)**(undefined4 **)(puVar5 + 0x8fa5c)" identifier = (cast_expression "(undefined *)**(undefined4 **)(puVar5 + 0x8fa5c)" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "**(undefined4 **)(puVar5 + 0x8fa5c)" * (pointer_expression "*(undefined4 **)(puVar5 + 0x8fa5c)" * (cast_expression "(undefined4 **)(puVar5 + 0x8fa5c)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar5 + 0x8fa5c)" ( (binary_expression "puVar5 + 0x8fa5c" identifier + number_literal) ))))))) ;) (expression_statement "uVar7 = fxp_error();" (assignment_expression "uVar7 = fxp_error()" identifier = (call_expression "fxp_error()" identifier (argument_list "()" ( )))) ;) (expression_statement "puVar14 = (undefined *)(*(int *)(puVar5 + 0x8eef4) + -0x4abc);" (assignment_expression "puVar14 = (undefined *)(*(int *)(puVar5 + 0x8eef4) + -0x4abc)" identifier = (cast_expression "(undefined *)(*(int *)(puVar5 + 0x8eef4) + -0x4abc)" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(puVar5 + 0x8eef4) + -0x4abc)" ( (binary_expression "*(int *)(puVar5 + 0x8eef4) + -0x4abc" (pointer_expression "*(int *)(puVar5 + 0x8eef4)" * (cast_expression "(int *)(puVar5 + 0x8eef4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar5 + 0x8eef4)" ( (binary_expression "puVar5 + 0x8eef4" identifier + number_literal) )))) + number_literal) )))) ;) (expression_statement "FUN_00027ff8(param_2,puVar14,uVar7);" (call_expression "FUN_00027ff8(param_2,puVar14,uVar7)" identifier (argument_list "(param_2,puVar14,uVar7)" ( identifier , identifier , identifier ))) ;) (if_statement "if (puVar1 == (undefined *)0x80000000) {\n          safefree(param_1);\n          iVar2 = *(int *)(puVar5 + 0x8eee4);\n        }\n        else {\n          iVar2 = *(int *)(puVar5 + 0x8eee4);\n        }" if (parenthesized_expression "(puVar1 == (undefined *)0x80000000)" ( (binary_expression "puVar1 == (undefined *)0x80000000" identifier == (cast_expression "(undefined *)0x80000000" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n          safefree(param_1);\n          iVar2 = *(int *)(puVar5 + 0x8eee4);\n        }" { (expression_statement "safefree(param_1);" (call_expression "safefree(param_1)" identifier (argument_list "(param_1)" ( identifier ))) ;) (expression_statement "iVar2 = *(int *)(puVar5 + 0x8eee4);" (assignment_expression "iVar2 = *(int *)(puVar5 + 0x8eee4)" identifier = (pointer_expression "*(int *)(puVar5 + 0x8eee4)" * (cast_expression "(int *)(puVar5 + 0x8eee4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar5 + 0x8eee4)" ( (binary_expression "puVar5 + 0x8eee4" identifier + number_literal) ))))) ;) }) (else_clause "else {\n          iVar2 = *(int *)(puVar5 + 0x8eee4);\n        }" else (compound_statement "{\n          iVar2 = *(int *)(puVar5 + 0x8eee4);\n        }" { (expression_statement "iVar2 = *(int *)(puVar5 + 0x8eee4);" (assignment_expression "iVar2 = *(int *)(puVar5 + 0x8eee4)" identifier = (pointer_expression "*(int *)(puVar5 + 0x8eee4)" * (cast_expression "(int *)(puVar5 + 0x8eee4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar5 + 0x8eee4)" ( (binary_expression "puVar5 + 0x8eee4" identifier + number_literal) ))))) ;) }))) (expression_statement "*(int *)(iVar2 + -0x31e0) = *(int *)(iVar2 + -0x31e0) + 1;" (assignment_expression "*(int *)(iVar2 + -0x31e0) = *(int *)(iVar2 + -0x31e0) + 1" (pointer_expression "*(int *)(iVar2 + -0x31e0)" * (cast_expression "(int *)(iVar2 + -0x31e0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + -0x31e0)" ( (binary_expression "iVar2 + -0x31e0" identifier + number_literal) )))) = (binary_expression "*(int *)(iVar2 + -0x31e0) + 1" (pointer_expression "*(int *)(iVar2 + -0x31e0)" * (cast_expression "(int *)(iVar2 + -0x31e0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + -0x31e0)" ( (binary_expression "iVar2 + -0x31e0" identifier + number_literal) )))) + number_literal)) ;) (expression_statement "uVar3 = 0xffffffff;" (assignment_expression "uVar3 = 0xffffffff" identifier = number_literal) ;) (goto_statement "goto LAB_0002d318;" goto statement_identifier ;) })) (expression_statement "iVar24 = xfer_download_data(*(undefined4 *)(iVar2 + -0x3244),unaff_s3,unaff_s4);" (assignment_expression "iVar24 = xfer_download_data(*(undefined4 *)(iVar2 + -0x3244),unaff_s3,unaff_s4)" identifier = (call_expression "xfer_download_data(*(undefined4 *)(iVar2 + -0x3244),unaff_s3,unaff_s4)" identifier (argument_list "(*(undefined4 *)(iVar2 + -0x3244),unaff_s3,unaff_s4)" ( (pointer_expression "*(undefined4 *)(iVar2 + -0x3244)" * (cast_expression "(undefined4 *)(iVar2 + -0x3244)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + -0x3244)" ( (binary_expression "iVar2 + -0x3244" identifier + number_literal) )))) , identifier , identifier )))) ;) (if_statement "if (iVar24 != 0) {\n        safefree(uStack_6c);\n      }" if (parenthesized_expression "(iVar24 != 0)" ( (binary_expression "iVar24 != 0" identifier != number_literal) )) (compound_statement "{\n        safefree(uStack_6c);\n      }" { (expression_statement "safefree(uStack_6c);" (call_expression "safefree(uStack_6c)" identifier (argument_list "(uStack_6c)" ( identifier ))) ;) })) })) (expression_statement "xfer_cleanup(*(undefined4 *)(*(int *)(puVar5 + 0x8eee4) + -0x3244));" (call_expression "xfer_cleanup(*(undefined4 *)(*(int *)(puVar5 + 0x8eee4) + -0x3244))" identifier (argument_list "(*(undefined4 *)(*(int *)(puVar5 + 0x8eee4) + -0x3244))" ( (pointer_expression "*(undefined4 *)(*(int *)(puVar5 + 0x8eee4) + -0x3244)" * (cast_expression "(undefined4 *)(*(int *)(puVar5 + 0x8eee4) + -0x3244)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(puVar5 + 0x8eee4) + -0x3244)" ( (binary_expression "*(int *)(puVar5 + 0x8eee4) + -0x3244" (pointer_expression "*(int *)(puVar5 + 0x8eee4)" * (cast_expression "(int *)(puVar5 + 0x8eee4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar5 + 0x8eee4)" ( (binary_expression "puVar5 + 0x8eee4" identifier + number_literal) )))) + number_literal) )))) ))) ;) (expression_statement "param_2 = (undefined *)fxp_close_send(*(undefined4 *)(*(int *)(puVar5 + 0x8eee4) + -0x3240));" (assignment_expression "param_2 = (undefined *)fxp_close_send(*(undefined4 *)(*(int *)(puVar5 + 0x8eee4) + -0x3240))" identifier = (cast_expression "(undefined *)fxp_close_send(*(undefined4 *)(*(int *)(puVar5 + 0x8eee4) + -0x3240))" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "fxp_close_send(*(undefined4 *)(*(int *)(puVar5 + 0x8eee4) + -0x3240))" identifier (argument_list "(*(undefined4 *)(*(int *)(puVar5 + 0x8eee4) + -0x3240))" ( (pointer_expression "*(undefined4 *)(*(int *)(puVar5 + 0x8eee4) + -0x3240)" * (cast_expression "(undefined4 *)(*(int *)(puVar5 + 0x8eee4) + -0x3240)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(puVar5 + 0x8eee4) + -0x3240)" ( (binary_expression "*(int *)(puVar5 + 0x8eee4) + -0x3240" (pointer_expression "*(int *)(puVar5 + 0x8eee4)" * (cast_expression "(int *)(puVar5 + 0x8eee4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar5 + 0x8eee4)" ( (binary_expression "puVar5 + 0x8eee4" identifier + number_literal) )))) + number_literal) )))) ))))) ;) (expression_statement "uVar7 = sftp_wait_for_reply(param_2);" (assignment_expression "uVar7 = sftp_wait_for_reply(param_2)" identifier = (call_expression "sftp_wait_for_reply(param_2)" identifier (argument_list "(param_2)" ( identifier )))) ;) (expression_statement "puVar14 = param_2;" (assignment_expression "puVar14 = param_2" identifier = identifier) ;) (expression_statement "fxp_close_recv(uVar7);" (call_expression "fxp_close_recv(uVar7)" identifier (argument_list "(uVar7)" ( identifier ))) ;) (expression_statement "uVar3 = 0;" (assignment_expression "uVar3 = 0" identifier = number_literal) ;) }))) (labeled_statement "LAB_0002d318:\n  if (pcStack_64 == (char *)**(undefined4 **)(puVar5 + 0x8fa44)) {\n    return uVar3;\n  }" statement_identifier : (if_statement "if (pcStack_64 == (char *)**(undefined4 **)(puVar5 + 0x8fa44)) {\n    return uVar3;\n  }" if (parenthesized_expression "(pcStack_64 == (char *)**(undefined4 **)(puVar5 + 0x8fa44))" ( (binary_expression "pcStack_64 == (char *)**(undefined4 **)(puVar5 + 0x8fa44)" identifier == (cast_expression "(char *)**(undefined4 **)(puVar5 + 0x8fa44)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "**(undefined4 **)(puVar5 + 0x8fa44)" * (pointer_expression "*(undefined4 **)(puVar5 + 0x8fa44)" * (cast_expression "(undefined4 **)(puVar5 + 0x8fa44)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar5 + 0x8fa44)" ( (binary_expression "puVar5 + 0x8fa44" identifier + number_literal) ))))))) )) (compound_statement "{\n    return uVar3;\n  }" { (return_statement "return uVar3;" return identifier ;) }))) (expression_statement "pcVar28 = *(code **)(puVar5 + 0x8fa1c);" (assignment_expression "pcVar28 = *(code **)(puVar5 + 0x8fa1c)" identifier = (pointer_expression "*(code **)(puVar5 + 0x8fa1c)" * (cast_expression "(code **)(puVar5 + 0x8fa1c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar5 + 0x8fa1c)" ( (binary_expression "puVar5 + 0x8fa1c" identifier + number_literal) ))))) ;) (expression_statement "pcVar13 = pcStack_64;" (assignment_expression "pcVar13 = pcStack_64" identifier = identifier) ;) (expression_statement "(*pcVar28)();" (call_expression "(*pcVar28)()" (parenthesized_expression "(*pcVar28)" ( (pointer_expression "*pcVar28" * identifier) )) (argument_list "()" ( ))) ;) (expression_statement "pcStack_8138 = pcVar28 + 0x96c70;" (assignment_expression "pcStack_8138 = pcVar28 + 0x96c70" identifier = (binary_expression "pcVar28 + 0x96c70" identifier + number_literal)) ;) (expression_statement "uStack_b4 = **(uint **)(pcVar28 + 0x8f7f8);" (assignment_expression "uStack_b4 = **(uint **)(pcVar28 + 0x8f7f8)" identifier = (pointer_expression "**(uint **)(pcVar28 + 0x8f7f8)" * (pointer_expression "*(uint **)(pcVar28 + 0x8f7f8)" * (cast_expression "(uint **)(pcVar28 + 0x8f7f8)" ( (type_descriptor "uint **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar28 + 0x8f7f8)" ( (binary_expression "pcVar28 + 0x8f7f8" identifier + number_literal) )))))) ;) (expression_statement "pcStack_812c = pcVar13;" (assignment_expression "pcStack_812c = pcVar13" identifier = identifier) ;) (expression_statement "puStack_8118 = puVar14;" (assignment_expression "puStack_8118 = puVar14" identifier = identifier) ;) (expression_statement "puStack_b0 = param_2;" (assignment_expression "puStack_b0 = param_2" identifier = identifier) ;) (expression_statement "puStack_ac = puVar1;" (assignment_expression "puStack_ac = puVar1" identifier = identifier) ;) (expression_statement "puStack_a8 = param_1;" (assignment_expression "puStack_a8 = param_1" identifier = identifier) ;) (expression_statement "puStack_a4 = unaff_s3;" (assignment_expression "puStack_a4 = unaff_s3" identifier = identifier) ;) (expression_statement "puStack_a0 = unaff_s4;" (assignment_expression "puStack_a0 = unaff_s4" identifier = identifier) ;) (expression_statement "iVar2 = (**(code **)(pcVar28 + 0x8ef84))();" (assignment_expression "iVar2 = (**(code **)(pcVar28 + 0x8ef84))()" identifier = (call_expression "(**(code **)(pcVar28 + 0x8ef84))()" (parenthesized_expression "(**(code **)(pcVar28 + 0x8ef84))" ( (pointer_expression "**(code **)(pcVar28 + 0x8ef84)" * (pointer_expression "*(code **)(pcVar28 + 0x8ef84)" * (cast_expression "(code **)(pcVar28 + 0x8ef84)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar28 + 0x8ef84)" ( (binary_expression "pcVar28 + 0x8ef84" identifier + number_literal) ))))) )) (argument_list "()" ( )))) ;) (if_statement "if ((*(int *)(*(int *)(pcStack_8138 + -0x7fd8) + -0x31d4) != 0) && (iVar2 != 2)) {\n    FUN_00028270(*(int *)(pcStack_8138 + -0x7fc8) + -0x4a68,pcStack_812c);\n  }" if (parenthesized_expression "((*(int *)(*(int *)(pcStack_8138 + -0x7fd8) + -0x31d4) != 0) && (iVar2 != 2))" ( (binary_expression "(*(int *)(*(int *)(pcStack_8138 + -0x7fd8) + -0x31d4) != 0) && (iVar2 != 2)" (parenthesized_expression "(*(int *)(*(int *)(pcStack_8138 + -0x7fd8) + -0x31d4) != 0)" ( (binary_expression "*(int *)(*(int *)(pcStack_8138 + -0x7fd8) + -0x31d4) != 0" (pointer_expression "*(int *)(*(int *)(pcStack_8138 + -0x7fd8) + -0x31d4)" * (cast_expression "(int *)(*(int *)(pcStack_8138 + -0x7fd8) + -0x31d4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcStack_8138 + -0x7fd8) + -0x31d4)" ( (binary_expression "*(int *)(pcStack_8138 + -0x7fd8) + -0x31d4" (pointer_expression "*(int *)(pcStack_8138 + -0x7fd8)" * (cast_expression "(int *)(pcStack_8138 + -0x7fd8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_8138 + -0x7fd8)" ( (binary_expression "pcStack_8138 + -0x7fd8" identifier + number_literal) )))) + number_literal) )))) != number_literal) )) && (parenthesized_expression "(iVar2 != 2)" ( (binary_expression "iVar2 != 2" identifier != number_literal) ))) )) (compound_statement "{\n    FUN_00028270(*(int *)(pcStack_8138 + -0x7fc8) + -0x4a68,pcStack_812c);\n  }" { (expression_statement "FUN_00028270(*(int *)(pcStack_8138 + -0x7fc8) + -0x4a68,pcStack_812c);" (call_expression "FUN_00028270(*(int *)(pcStack_8138 + -0x7fc8) + -0x4a68,pcStack_812c)" identifier (argument_list "(*(int *)(pcStack_8138 + -0x7fc8) + -0x4a68,pcStack_812c)" ( (binary_expression "*(int *)(pcStack_8138 + -0x7fc8) + -0x4a68" (pointer_expression "*(int *)(pcStack_8138 + -0x7fc8)" * (cast_expression "(int *)(pcStack_8138 + -0x7fc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_8138 + -0x7fc8)" ( (binary_expression "pcStack_8138 + -0x7fc8" identifier + number_literal) )))) + number_literal) , identifier ))) ;) })) (expression_statement "scp_sink_init();" (call_expression "scp_sink_init()" identifier (argument_list "()" ( ))) ;) (expression_statement "iVar24 = 0;" (assignment_expression "iVar24 = 0" identifier = number_literal) ;) (expression_statement "pcStack_8128 = (code *)(*(int *)(pcStack_8138 + -0x7db0) + -0x7d90);" (assignment_expression "pcStack_8128 = (code *)(*(int *)(pcStack_8138 + -0x7db0) + -0x7d90)" identifier = (cast_expression "(code *)(*(int *)(pcStack_8138 + -0x7db0) + -0x7d90)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcStack_8138 + -0x7db0) + -0x7d90)" ( (binary_expression "*(int *)(pcStack_8138 + -0x7db0) + -0x7d90" (pointer_expression "*(int *)(pcStack_8138 + -0x7db0)" * (cast_expression "(int *)(pcStack_8138 + -0x7db0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_8138 + -0x7db0)" ( (binary_expression "pcStack_8138 + -0x7db0" identifier + number_literal) )))) + number_literal) )))) ;) (expression_statement "pcStack_810c = (code *)(*(int *)(pcStack_8138 + -0x7db0) + -0x6cb8);" (assignment_expression "pcStack_810c = (code *)(*(int *)(pcStack_8138 + -0x7db0) + -0x6cb8)" identifier = (cast_expression "(code *)(*(int *)(pcStack_8138 + -0x7db0) + -0x6cb8)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcStack_8138 + -0x7db0) + -0x6cb8)" ( (binary_expression "*(int *)(pcStack_8138 + -0x7db0) + -0x6cb8" (pointer_expression "*(int *)(pcStack_8138 + -0x7db0)" * (cast_expression "(int *)(pcStack_8138 + -0x7db0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_8138 + -0x7db0)" ( (binary_expression "pcStack_8138 + -0x7db0" identifier + number_literal) )))) + number_literal) )))) ;) (expression_statement "iStack_8110 = *(int *)(pcStack_8138 + -0x7fc8) + -0x4878;" (assignment_expression "iStack_8110 = *(int *)(pcStack_8138 + -0x7fc8) + -0x4878" identifier = (binary_expression "*(int *)(pcStack_8138 + -0x7fc8) + -0x4878" (pointer_expression "*(int *)(pcStack_8138 + -0x7fc8)" * (cast_expression "(int *)(pcStack_8138 + -0x7fc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_8138 + -0x7fc8)" ( (binary_expression "pcStack_8138 + -0x7fc8" identifier + number_literal) )))) + number_literal)) ;) (labeled_statement "LAB_0002d77c:\n  do {\n    iVar4 = scp_get_sink_action(&iStack_80d8);\n    if ((iVar4 != 0) || (iStack_80d8 == 3)) goto LAB_0002da64;\n  } while (iStack_80d8 == 4);" statement_identifier : (do_statement "do {\n    iVar4 = scp_get_sink_action(&iStack_80d8);\n    if ((iVar4 != 0) || (iStack_80d8 == 3)) goto LAB_0002da64;\n  } while (iStack_80d8 == 4);" do (compound_statement "{\n    iVar4 = scp_get_sink_action(&iStack_80d8);\n    if ((iVar4 != 0) || (iStack_80d8 == 3)) goto LAB_0002da64;\n  }" { (expression_statement "iVar4 = scp_get_sink_action(&iStack_80d8);" (assignment_expression "iVar4 = scp_get_sink_action(&iStack_80d8)" identifier = (call_expression "scp_get_sink_action(&iStack_80d8)" identifier (argument_list "(&iStack_80d8)" ( (pointer_expression "&iStack_80d8" & identifier) )))) ;) (if_statement "if ((iVar4 != 0) || (iStack_80d8 == 3)) goto LAB_0002da64;" if (parenthesized_expression "((iVar4 != 0) || (iStack_80d8 == 3))" ( (binary_expression "(iVar4 != 0) || (iStack_80d8 == 3)" (parenthesized_expression "(iVar4 != 0)" ( (binary_expression "iVar4 != 0" identifier != number_literal) )) || (parenthesized_expression "(iStack_80d8 == 3)" ( (binary_expression "iStack_80d8 == 3" identifier == number_literal) ))) )) (goto_statement "goto LAB_0002da64;" goto statement_identifier ;)) }) while (parenthesized_expression "(iStack_80d8 == 4)" ( (binary_expression "iStack_80d8 == 4" identifier == number_literal) )) ;)) (if_statement "if (iVar2 == 2) {\n    param_1 = auStack_100b0;\n    puVar1 = (undefined *)(**(code **)(pcStack_8138 + -0x7cac))(puStack_80d0,1);\n    if (puStack_80d0 != puVar1) {\n      puVar23 = *(undefined4 **)(pcStack_8138 + -0x7460);\n      param_1 = (undefined *)(*(int *)(pcStack_8138 + -0x7fcc) + 0x7ff8);\n      FUN_00027ff8(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x4a54);\n      FUN_00027ff8(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x4a20,puVar1);\n    }\n    iVar4 = (**(code **)(pcStack_8138 + -0x7640))(puVar1,*(int *)(pcStack_8138 + -0x7fc8) + -0x48b0)\n    ;\n    if (puVar1[iVar4] == '\0') {\n      (*pcStack_8128)(*(int *)(pcStack_8138 + -0x7fc8) + -0x49f8);\n    }\n    if (puStack_8118 != (undefined *)0x0) {\n      param_1 = (undefined *)(**(code **)(pcStack_8138 + -0x7cac))(puStack_8118,1);\n      iVar4 = (**(code **)(pcStack_8138 + -0x743c))(puVar1,param_1);\n      if ((iVar4 != 0) &&\n         (puVar23 = *(undefined4 **)(pcStack_8138 + -0x7460),\n         *(int *)(*(int *)(pcStack_8138 + -0x7fd8) + -0x31ec) == 0 &&\n         *(int *)(*(int *)(pcStack_8138 + -0x7fd8) + -0x31dc) == 0)) {\n        FUN_00027ff8(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x49ac,puVar1);\n        FUN_00027ff8(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x4970,param_1);\n        FUN_00027ff8(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x4940);\n        FUN_00027ff8(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x48f8);\n        puVar1 = param_1;\n      }\n    }\n    if (*pcStack_812c == '\0') {\n      unaff_s3 = (undefined4 *)dupstr(puVar1);\n    }\n    else {\n      unaff_s3 = (undefined4 *)(**(code **)(pcStack_8138 + -0x7c78))(pcStack_812c,puVar1);\n    }\n  }\n  else {\n    unaff_s3 = (undefined4 *)dupstr(pcStack_812c);\n  }" if (parenthesized_expression "(iVar2 == 2)" ( (binary_expression "iVar2 == 2" identifier == number_literal) )) (compound_statement "{\n    param_1 = auStack_100b0;\n    puVar1 = (undefined *)(**(code **)(pcStack_8138 + -0x7cac))(puStack_80d0,1);\n    if (puStack_80d0 != puVar1) {\n      puVar23 = *(undefined4 **)(pcStack_8138 + -0x7460);\n      param_1 = (undefined *)(*(int *)(pcStack_8138 + -0x7fcc) + 0x7ff8);\n      FUN_00027ff8(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x4a54);\n      FUN_00027ff8(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x4a20,puVar1);\n    }\n    iVar4 = (**(code **)(pcStack_8138 + -0x7640))(puVar1,*(int *)(pcStack_8138 + -0x7fc8) + -0x48b0)\n    ;\n    if (puVar1[iVar4] == '\0') {\n      (*pcStack_8128)(*(int *)(pcStack_8138 + -0x7fc8) + -0x49f8);\n    }\n    if (puStack_8118 != (undefined *)0x0) {\n      param_1 = (undefined *)(**(code **)(pcStack_8138 + -0x7cac))(puStack_8118,1);\n      iVar4 = (**(code **)(pcStack_8138 + -0x743c))(puVar1,param_1);\n      if ((iVar4 != 0) &&\n         (puVar23 = *(undefined4 **)(pcStack_8138 + -0x7460),\n         *(int *)(*(int *)(pcStack_8138 + -0x7fd8) + -0x31ec) == 0 &&\n         *(int *)(*(int *)(pcStack_8138 + -0x7fd8) + -0x31dc) == 0)) {\n        FUN_00027ff8(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x49ac,puVar1);\n        FUN_00027ff8(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x4970,param_1);\n        FUN_00027ff8(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x4940);\n        FUN_00027ff8(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x48f8);\n        puVar1 = param_1;\n      }\n    }\n    if (*pcStack_812c == '\0') {\n      unaff_s3 = (undefined4 *)dupstr(puVar1);\n    }\n    else {\n      unaff_s3 = (undefined4 *)(**(code **)(pcStack_8138 + -0x7c78))(pcStack_812c,puVar1);\n    }\n  }" { (expression_statement "param_1 = auStack_100b0;" (assignment_expression "param_1 = auStack_100b0" identifier = identifier) ;) (expression_statement "puVar1 = (undefined *)(**(code **)(pcStack_8138 + -0x7cac))(puStack_80d0,1);" (assignment_expression "puVar1 = (undefined *)(**(code **)(pcStack_8138 + -0x7cac))(puStack_80d0,1)" identifier = (cast_expression "(undefined *)(**(code **)(pcStack_8138 + -0x7cac))(puStack_80d0,1)" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(**(code **)(pcStack_8138 + -0x7cac))(puStack_80d0,1)" (parenthesized_expression "(**(code **)(pcStack_8138 + -0x7cac))" ( (pointer_expression "**(code **)(pcStack_8138 + -0x7cac)" * (pointer_expression "*(code **)(pcStack_8138 + -0x7cac)" * (cast_expression "(code **)(pcStack_8138 + -0x7cac)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_8138 + -0x7cac)" ( (binary_expression "pcStack_8138 + -0x7cac" identifier + number_literal) ))))) )) (argument_list "(puStack_80d0,1)" ( identifier , number_literal ))))) ;) (if_statement "if (puStack_80d0 != puVar1) {\n      puVar23 = *(undefined4 **)(pcStack_8138 + -0x7460);\n      param_1 = (undefined *)(*(int *)(pcStack_8138 + -0x7fcc) + 0x7ff8);\n      FUN_00027ff8(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x4a54);\n      FUN_00027ff8(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x4a20,puVar1);\n    }" if (parenthesized_expression "(puStack_80d0 != puVar1)" ( (binary_expression "puStack_80d0 != puVar1" identifier != identifier) )) (compound_statement "{\n      puVar23 = *(undefined4 **)(pcStack_8138 + -0x7460);\n      param_1 = (undefined *)(*(int *)(pcStack_8138 + -0x7fcc) + 0x7ff8);\n      FUN_00027ff8(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x4a54);\n      FUN_00027ff8(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x4a20,puVar1);\n    }" { (expression_statement "puVar23 = *(undefined4 **)(pcStack_8138 + -0x7460);" (assignment_expression "puVar23 = *(undefined4 **)(pcStack_8138 + -0x7460)" identifier = (pointer_expression "*(undefined4 **)(pcStack_8138 + -0x7460)" * (cast_expression "(undefined4 **)(pcStack_8138 + -0x7460)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_8138 + -0x7460)" ( (binary_expression "pcStack_8138 + -0x7460" identifier + number_literal) ))))) ;) (expression_statement "param_1 = (undefined *)(*(int *)(pcStack_8138 + -0x7fcc) + 0x7ff8);" (assignment_expression "param_1 = (undefined *)(*(int *)(pcStack_8138 + -0x7fcc) + 0x7ff8)" identifier = (cast_expression "(undefined *)(*(int *)(pcStack_8138 + -0x7fcc) + 0x7ff8)" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcStack_8138 + -0x7fcc) + 0x7ff8)" ( (binary_expression "*(int *)(pcStack_8138 + -0x7fcc) + 0x7ff8" (pointer_expression "*(int *)(pcStack_8138 + -0x7fcc)" * (cast_expression "(int *)(pcStack_8138 + -0x7fcc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_8138 + -0x7fcc)" ( (binary_expression "pcStack_8138 + -0x7fcc" identifier + number_literal) )))) + number_literal) )))) ;) (expression_statement "FUN_00027ff8(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x4a54);" (call_expression "FUN_00027ff8(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x4a54)" identifier (argument_list "(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x4a54)" ( (pointer_expression "*puVar23" * identifier) , (binary_expression "*(int *)(pcStack_8138 + -0x7fc8) + -0x4a54" (pointer_expression "*(int *)(pcStack_8138 + -0x7fc8)" * (cast_expression "(int *)(pcStack_8138 + -0x7fc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_8138 + -0x7fc8)" ( (binary_expression "pcStack_8138 + -0x7fc8" identifier + number_literal) )))) + number_literal) ))) ;) (expression_statement "FUN_00027ff8(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x4a20,puVar1);" (call_expression "FUN_00027ff8(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x4a20,puVar1)" identifier (argument_list "(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x4a20,puVar1)" ( (pointer_expression "*puVar23" * identifier) , (binary_expression "*(int *)(pcStack_8138 + -0x7fc8) + -0x4a20" (pointer_expression "*(int *)(pcStack_8138 + -0x7fc8)" * (cast_expression "(int *)(pcStack_8138 + -0x7fc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_8138 + -0x7fc8)" ( (binary_expression "pcStack_8138 + -0x7fc8" identifier + number_literal) )))) + number_literal) , identifier ))) ;) })) (expression_statement "iVar4 = (**(code **)(pcStack_8138 + -0x7640))(puVar1,*(int *)(pcStack_8138 + -0x7fc8) + -0x48b0)\n    ;" (assignment_expression "iVar4 = (**(code **)(pcStack_8138 + -0x7640))(puVar1,*(int *)(pcStack_8138 + -0x7fc8) + -0x48b0)" identifier = (call_expression "(**(code **)(pcStack_8138 + -0x7640))(puVar1,*(int *)(pcStack_8138 + -0x7fc8) + -0x48b0)" (parenthesized_expression "(**(code **)(pcStack_8138 + -0x7640))" ( (pointer_expression "**(code **)(pcStack_8138 + -0x7640)" * (pointer_expression "*(code **)(pcStack_8138 + -0x7640)" * (cast_expression "(code **)(pcStack_8138 + -0x7640)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_8138 + -0x7640)" ( (binary_expression "pcStack_8138 + -0x7640" identifier + number_literal) ))))) )) (argument_list "(puVar1,*(int *)(pcStack_8138 + -0x7fc8) + -0x48b0)" ( identifier , (binary_expression "*(int *)(pcStack_8138 + -0x7fc8) + -0x48b0" (pointer_expression "*(int *)(pcStack_8138 + -0x7fc8)" * (cast_expression "(int *)(pcStack_8138 + -0x7fc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_8138 + -0x7fc8)" ( (binary_expression "pcStack_8138 + -0x7fc8" identifier + number_literal) )))) + number_literal) )))) ;) (if_statement "if (puVar1[iVar4] == '\0') {\n      (*pcStack_8128)(*(int *)(pcStack_8138 + -0x7fc8) + -0x49f8);\n    }" if (parenthesized_expression "(puVar1[iVar4] == '\0')" ( (binary_expression "puVar1[iVar4] == '\0'" (subscript_expression "puVar1[iVar4]" identifier [ identifier ]) == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n      (*pcStack_8128)(*(int *)(pcStack_8138 + -0x7fc8) + -0x49f8);\n    }" { (expression_statement "(*pcStack_8128)(*(int *)(pcStack_8138 + -0x7fc8) + -0x49f8);" (call_expression "(*pcStack_8128)(*(int *)(pcStack_8138 + -0x7fc8) + -0x49f8)" (parenthesized_expression "(*pcStack_8128)" ( (pointer_expression "*pcStack_8128" * identifier) )) (argument_list "(*(int *)(pcStack_8138 + -0x7fc8) + -0x49f8)" ( (binary_expression "*(int *)(pcStack_8138 + -0x7fc8) + -0x49f8" (pointer_expression "*(int *)(pcStack_8138 + -0x7fc8)" * (cast_expression "(int *)(pcStack_8138 + -0x7fc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_8138 + -0x7fc8)" ( (binary_expression "pcStack_8138 + -0x7fc8" identifier + number_literal) )))) + number_literal) ))) ;) })) (if_statement "if (puStack_8118 != (undefined *)0x0) {\n      param_1 = (undefined *)(**(code **)(pcStack_8138 + -0x7cac))(puStack_8118,1);\n      iVar4 = (**(code **)(pcStack_8138 + -0x743c))(puVar1,param_1);\n      if ((iVar4 != 0) &&\n         (puVar23 = *(undefined4 **)(pcStack_8138 + -0x7460),\n         *(int *)(*(int *)(pcStack_8138 + -0x7fd8) + -0x31ec) == 0 &&\n         *(int *)(*(int *)(pcStack_8138 + -0x7fd8) + -0x31dc) == 0)) {\n        FUN_00027ff8(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x49ac,puVar1);\n        FUN_00027ff8(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x4970,param_1);\n        FUN_00027ff8(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x4940);\n        FUN_00027ff8(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x48f8);\n        puVar1 = param_1;\n      }\n    }" if (parenthesized_expression "(puStack_8118 != (undefined *)0x0)" ( (binary_expression "puStack_8118 != (undefined *)0x0" identifier != (cast_expression "(undefined *)0x0" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n      param_1 = (undefined *)(**(code **)(pcStack_8138 + -0x7cac))(puStack_8118,1);\n      iVar4 = (**(code **)(pcStack_8138 + -0x743c))(puVar1,param_1);\n      if ((iVar4 != 0) &&\n         (puVar23 = *(undefined4 **)(pcStack_8138 + -0x7460),\n         *(int *)(*(int *)(pcStack_8138 + -0x7fd8) + -0x31ec) == 0 &&\n         *(int *)(*(int *)(pcStack_8138 + -0x7fd8) + -0x31dc) == 0)) {\n        FUN_00027ff8(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x49ac,puVar1);\n        FUN_00027ff8(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x4970,param_1);\n        FUN_00027ff8(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x4940);\n        FUN_00027ff8(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x48f8);\n        puVar1 = param_1;\n      }\n    }" { (expression_statement "param_1 = (undefined *)(**(code **)(pcStack_8138 + -0x7cac))(puStack_8118,1);" (assignment_expression "param_1 = (undefined *)(**(code **)(pcStack_8138 + -0x7cac))(puStack_8118,1)" identifier = (cast_expression "(undefined *)(**(code **)(pcStack_8138 + -0x7cac))(puStack_8118,1)" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(**(code **)(pcStack_8138 + -0x7cac))(puStack_8118,1)" (parenthesized_expression "(**(code **)(pcStack_8138 + -0x7cac))" ( (pointer_expression "**(code **)(pcStack_8138 + -0x7cac)" * (pointer_expression "*(code **)(pcStack_8138 + -0x7cac)" * (cast_expression "(code **)(pcStack_8138 + -0x7cac)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_8138 + -0x7cac)" ( (binary_expression "pcStack_8138 + -0x7cac" identifier + number_literal) ))))) )) (argument_list "(puStack_8118,1)" ( identifier , number_literal ))))) ;) (expression_statement "iVar4 = (**(code **)(pcStack_8138 + -0x743c))(puVar1,param_1);" (assignment_expression "iVar4 = (**(code **)(pcStack_8138 + -0x743c))(puVar1,param_1)" identifier = (call_expression "(**(code **)(pcStack_8138 + -0x743c))(puVar1,param_1)" (parenthesized_expression "(**(code **)(pcStack_8138 + -0x743c))" ( (pointer_expression "**(code **)(pcStack_8138 + -0x743c)" * (pointer_expression "*(code **)(pcStack_8138 + -0x743c)" * (cast_expression "(code **)(pcStack_8138 + -0x743c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_8138 + -0x743c)" ( (binary_expression "pcStack_8138 + -0x743c" identifier + number_literal) ))))) )) (argument_list "(puVar1,param_1)" ( identifier , identifier )))) ;) (if_statement "if ((iVar4 != 0) &&\n         (puVar23 = *(undefined4 **)(pcStack_8138 + -0x7460),\n         *(int *)(*(int *)(pcStack_8138 + -0x7fd8) + -0x31ec) == 0 &&\n         *(int *)(*(int *)(pcStack_8138 + -0x7fd8) + -0x31dc) == 0)) {\n        FUN_00027ff8(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x49ac,puVar1);\n        FUN_00027ff8(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x4970,param_1);\n        FUN_00027ff8(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x4940);\n        FUN_00027ff8(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x48f8);\n        puVar1 = param_1;\n      }" if (parenthesized_expression "((iVar4 != 0) &&\n         (puVar23 = *(undefined4 **)(pcStack_8138 + -0x7460),\n         *(int *)(*(int *)(pcStack_8138 + -0x7fd8) + -0x31ec) == 0 &&\n         *(int *)(*(int *)(pcStack_8138 + -0x7fd8) + -0x31dc) == 0))" ( (binary_expression "(iVar4 != 0) &&\n         (puVar23 = *(undefined4 **)(pcStack_8138 + -0x7460),\n         *(int *)(*(int *)(pcStack_8138 + -0x7fd8) + -0x31ec) == 0 &&\n         *(int *)(*(int *)(pcStack_8138 + -0x7fd8) + -0x31dc) == 0)" (parenthesized_expression "(iVar4 != 0)" ( (binary_expression "iVar4 != 0" identifier != number_literal) )) && (parenthesized_expression "(puVar23 = *(undefined4 **)(pcStack_8138 + -0x7460),\n         *(int *)(*(int *)(pcStack_8138 + -0x7fd8) + -0x31ec) == 0 &&\n         *(int *)(*(int *)(pcStack_8138 + -0x7fd8) + -0x31dc) == 0)" ( (comma_expression "puVar23 = *(undefined4 **)(pcStack_8138 + -0x7460),\n         *(int *)(*(int *)(pcStack_8138 + -0x7fd8) + -0x31ec) == 0 &&\n         *(int *)(*(int *)(pcStack_8138 + -0x7fd8) + -0x31dc) == 0" (assignment_expression "puVar23 = *(undefined4 **)(pcStack_8138 + -0x7460)" identifier = (pointer_expression "*(undefined4 **)(pcStack_8138 + -0x7460)" * (cast_expression "(undefined4 **)(pcStack_8138 + -0x7460)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_8138 + -0x7460)" ( (binary_expression "pcStack_8138 + -0x7460" identifier + number_literal) ))))) , (binary_expression "*(int *)(*(int *)(pcStack_8138 + -0x7fd8) + -0x31ec) == 0 &&\n         *(int *)(*(int *)(pcStack_8138 + -0x7fd8) + -0x31dc) == 0" (binary_expression "*(int *)(*(int *)(pcStack_8138 + -0x7fd8) + -0x31ec) == 0" (pointer_expression "*(int *)(*(int *)(pcStack_8138 + -0x7fd8) + -0x31ec)" * (cast_expression "(int *)(*(int *)(pcStack_8138 + -0x7fd8) + -0x31ec)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcStack_8138 + -0x7fd8) + -0x31ec)" ( (binary_expression "*(int *)(pcStack_8138 + -0x7fd8) + -0x31ec" (pointer_expression "*(int *)(pcStack_8138 + -0x7fd8)" * (cast_expression "(int *)(pcStack_8138 + -0x7fd8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_8138 + -0x7fd8)" ( (binary_expression "pcStack_8138 + -0x7fd8" identifier + number_literal) )))) + number_literal) )))) == number_literal) && (binary_expression "*(int *)(*(int *)(pcStack_8138 + -0x7fd8) + -0x31dc) == 0" (pointer_expression "*(int *)(*(int *)(pcStack_8138 + -0x7fd8) + -0x31dc)" * (cast_expression "(int *)(*(int *)(pcStack_8138 + -0x7fd8) + -0x31dc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcStack_8138 + -0x7fd8) + -0x31dc)" ( (binary_expression "*(int *)(pcStack_8138 + -0x7fd8) + -0x31dc" (pointer_expression "*(int *)(pcStack_8138 + -0x7fd8)" * (cast_expression "(int *)(pcStack_8138 + -0x7fd8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_8138 + -0x7fd8)" ( (binary_expression "pcStack_8138 + -0x7fd8" identifier + number_literal) )))) + number_literal) )))) == number_literal))) ))) )) (compound_statement "{\n        FUN_00027ff8(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x49ac,puVar1);\n        FUN_00027ff8(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x4970,param_1);\n        FUN_00027ff8(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x4940);\n        FUN_00027ff8(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x48f8);\n        puVar1 = param_1;\n      }" { (expression_statement "FUN_00027ff8(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x49ac,puVar1);" (call_expression "FUN_00027ff8(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x49ac,puVar1)" identifier (argument_list "(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x49ac,puVar1)" ( (pointer_expression "*puVar23" * identifier) , (binary_expression "*(int *)(pcStack_8138 + -0x7fc8) + -0x49ac" (pointer_expression "*(int *)(pcStack_8138 + -0x7fc8)" * (cast_expression "(int *)(pcStack_8138 + -0x7fc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_8138 + -0x7fc8)" ( (binary_expression "pcStack_8138 + -0x7fc8" identifier + number_literal) )))) + number_literal) , identifier ))) ;) (expression_statement "FUN_00027ff8(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x4970,param_1);" (call_expression "FUN_00027ff8(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x4970,param_1)" identifier (argument_list "(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x4970,param_1)" ( (pointer_expression "*puVar23" * identifier) , (binary_expression "*(int *)(pcStack_8138 + -0x7fc8) + -0x4970" (pointer_expression "*(int *)(pcStack_8138 + -0x7fc8)" * (cast_expression "(int *)(pcStack_8138 + -0x7fc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_8138 + -0x7fc8)" ( (binary_expression "pcStack_8138 + -0x7fc8" identifier + number_literal) )))) + number_literal) , identifier ))) ;) (expression_statement "FUN_00027ff8(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x4940);" (call_expression "FUN_00027ff8(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x4940)" identifier (argument_list "(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x4940)" ( (pointer_expression "*puVar23" * identifier) , (binary_expression "*(int *)(pcStack_8138 + -0x7fc8) + -0x4940" (pointer_expression "*(int *)(pcStack_8138 + -0x7fc8)" * (cast_expression "(int *)(pcStack_8138 + -0x7fc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_8138 + -0x7fc8)" ( (binary_expression "pcStack_8138 + -0x7fc8" identifier + number_literal) )))) + number_literal) ))) ;) (expression_statement "FUN_00027ff8(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x48f8);" (call_expression "FUN_00027ff8(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x48f8)" identifier (argument_list "(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x48f8)" ( (pointer_expression "*puVar23" * identifier) , (binary_expression "*(int *)(pcStack_8138 + -0x7fc8) + -0x48f8" (pointer_expression "*(int *)(pcStack_8138 + -0x7fc8)" * (cast_expression "(int *)(pcStack_8138 + -0x7fc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_8138 + -0x7fc8)" ( (binary_expression "pcStack_8138 + -0x7fc8" identifier + number_literal) )))) + number_literal) ))) ;) (expression_statement "puVar1 = param_1;" (assignment_expression "puVar1 = param_1" identifier = identifier) ;) })) })) (if_statement "if (*pcStack_812c == '\0') {\n      unaff_s3 = (undefined4 *)dupstr(puVar1);\n    }\n    else {\n      unaff_s3 = (undefined4 *)(**(code **)(pcStack_8138 + -0x7c78))(pcStack_812c,puVar1);\n    }" if (parenthesized_expression "(*pcStack_812c == '\0')" ( (binary_expression "*pcStack_812c == '\0'" (pointer_expression "*pcStack_812c" * identifier) == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n      unaff_s3 = (undefined4 *)dupstr(puVar1);\n    }" { (expression_statement "unaff_s3 = (undefined4 *)dupstr(puVar1);" (assignment_expression "unaff_s3 = (undefined4 *)dupstr(puVar1)" identifier = (cast_expression "(undefined4 *)dupstr(puVar1)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "dupstr(puVar1)" identifier (argument_list "(puVar1)" ( identifier ))))) ;) }) (else_clause "else {\n      unaff_s3 = (undefined4 *)(**(code **)(pcStack_8138 + -0x7c78))(pcStack_812c,puVar1);\n    }" else (compound_statement "{\n      unaff_s3 = (undefined4 *)(**(code **)(pcStack_8138 + -0x7c78))(pcStack_812c,puVar1);\n    }" { (expression_statement "unaff_s3 = (undefined4 *)(**(code **)(pcStack_8138 + -0x7c78))(pcStack_812c,puVar1);" (assignment_expression "unaff_s3 = (undefined4 *)(**(code **)(pcStack_8138 + -0x7c78))(pcStack_812c,puVar1)" identifier = (cast_expression "(undefined4 *)(**(code **)(pcStack_8138 + -0x7c78))(pcStack_812c,puVar1)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(**(code **)(pcStack_8138 + -0x7c78))(pcStack_812c,puVar1)" (parenthesized_expression "(**(code **)(pcStack_8138 + -0x7c78))" ( (pointer_expression "**(code **)(pcStack_8138 + -0x7c78)" * (pointer_expression "*(code **)(pcStack_8138 + -0x7c78)" * (cast_expression "(code **)(pcStack_8138 + -0x7c78)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_8138 + -0x7c78)" ( (binary_expression "pcStack_8138 + -0x7c78" identifier + number_literal) ))))) )) (argument_list "(pcStack_812c,puVar1)" ( identifier , identifier ))))) ;) }))) }) (else_clause "else {\n    unaff_s3 = (undefined4 *)dupstr(pcStack_812c);\n  }" else (compound_statement "{\n    unaff_s3 = (undefined4 *)dupstr(pcStack_812c);\n  }" { (expression_statement "unaff_s3 = (undefined4 *)dupstr(pcStack_812c);" (assignment_expression "unaff_s3 = (undefined4 *)dupstr(pcStack_812c)" identifier = (cast_expression "(undefined4 *)dupstr(pcStack_812c)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "dupstr(pcStack_812c)" identifier (argument_list "(pcStack_812c)" ( identifier ))))) ;) }))) (expression_statement "iVar4 = (**(code **)(pcStack_8138 + -0x7cec))(unaff_s3);" (assignment_expression "iVar4 = (**(code **)(pcStack_8138 + -0x7cec))(unaff_s3)" identifier = (call_expression "(**(code **)(pcStack_8138 + -0x7cec))(unaff_s3)" (parenthesized_expression "(**(code **)(pcStack_8138 + -0x7cec))" ( (pointer_expression "**(code **)(pcStack_8138 + -0x7cec)" * (pointer_expression "*(code **)(pcStack_8138 + -0x7cec)" * (cast_expression "(code **)(pcStack_8138 + -0x7cec)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_8138 + -0x7cec)" ( (binary_expression "pcStack_8138 + -0x7cec" identifier + number_literal) ))))) )) (argument_list "(unaff_s3)" ( identifier )))) ;) (if_statement "if (iStack_80d8 == 2) {\n    if (iVar4 == 0) {\n      iVar4 = (**(code **)(pcStack_8138 + -0x7c80))(unaff_s3);\n      if (iVar4 == 0) {\n        FUN_0002a658(*(int *)(pcStack_8138 + -0x7fc8) + -0x48ac,unaff_s3);\n        safefree(unaff_s3);\n        goto LAB_0002d77c;\n      }\n    }\n    else if (iVar4 != 2) {\n      FUN_0002a658(*(int *)(pcStack_8138 + -0x7fc8) + -0x4a68,unaff_s3);\n      safefree(unaff_s3);\n      goto LAB_0002d77c;\n    }\n    FUN_0002d4e0(unaff_s3,0);\n    safefree(unaff_s3);\n    goto LAB_0002d77c;\n  }" if (parenthesized_expression "(iStack_80d8 == 2)" ( (binary_expression "iStack_80d8 == 2" identifier == number_literal) )) (compound_statement "{\n    if (iVar4 == 0) {\n      iVar4 = (**(code **)(pcStack_8138 + -0x7c80))(unaff_s3);\n      if (iVar4 == 0) {\n        FUN_0002a658(*(int *)(pcStack_8138 + -0x7fc8) + -0x48ac,unaff_s3);\n        safefree(unaff_s3);\n        goto LAB_0002d77c;\n      }\n    }\n    else if (iVar4 != 2) {\n      FUN_0002a658(*(int *)(pcStack_8138 + -0x7fc8) + -0x4a68,unaff_s3);\n      safefree(unaff_s3);\n      goto LAB_0002d77c;\n    }\n    FUN_0002d4e0(unaff_s3,0);\n    safefree(unaff_s3);\n    goto LAB_0002d77c;\n  }" { (if_statement "if (iVar4 == 0) {\n      iVar4 = (**(code **)(pcStack_8138 + -0x7c80))(unaff_s3);\n      if (iVar4 == 0) {\n        FUN_0002a658(*(int *)(pcStack_8138 + -0x7fc8) + -0x48ac,unaff_s3);\n        safefree(unaff_s3);\n        goto LAB_0002d77c;\n      }\n    }\n    else if (iVar4 != 2) {\n      FUN_0002a658(*(int *)(pcStack_8138 + -0x7fc8) + -0x4a68,unaff_s3);\n      safefree(unaff_s3);\n      goto LAB_0002d77c;\n    }" if (parenthesized_expression "(iVar4 == 0)" ( (binary_expression "iVar4 == 0" identifier == number_literal) )) (compound_statement "{\n      iVar4 = (**(code **)(pcStack_8138 + -0x7c80))(unaff_s3);\n      if (iVar4 == 0) {\n        FUN_0002a658(*(int *)(pcStack_8138 + -0x7fc8) + -0x48ac,unaff_s3);\n        safefree(unaff_s3);\n        goto LAB_0002d77c;\n      }\n    }" { (expression_statement "iVar4 = (**(code **)(pcStack_8138 + -0x7c80))(unaff_s3);" (assignment_expression "iVar4 = (**(code **)(pcStack_8138 + -0x7c80))(unaff_s3)" identifier = (call_expression "(**(code **)(pcStack_8138 + -0x7c80))(unaff_s3)" (parenthesized_expression "(**(code **)(pcStack_8138 + -0x7c80))" ( (pointer_expression "**(code **)(pcStack_8138 + -0x7c80)" * (pointer_expression "*(code **)(pcStack_8138 + -0x7c80)" * (cast_expression "(code **)(pcStack_8138 + -0x7c80)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_8138 + -0x7c80)" ( (binary_expression "pcStack_8138 + -0x7c80" identifier + number_literal) ))))) )) (argument_list "(unaff_s3)" ( identifier )))) ;) (if_statement "if (iVar4 == 0) {\n        FUN_0002a658(*(int *)(pcStack_8138 + -0x7fc8) + -0x48ac,unaff_s3);\n        safefree(unaff_s3);\n        goto LAB_0002d77c;\n      }" if (parenthesized_expression "(iVar4 == 0)" ( (binary_expression "iVar4 == 0" identifier == number_literal) )) (compound_statement "{\n        FUN_0002a658(*(int *)(pcStack_8138 + -0x7fc8) + -0x48ac,unaff_s3);\n        safefree(unaff_s3);\n        goto LAB_0002d77c;\n      }" { (expression_statement "FUN_0002a658(*(int *)(pcStack_8138 + -0x7fc8) + -0x48ac,unaff_s3);" (call_expression "FUN_0002a658(*(int *)(pcStack_8138 + -0x7fc8) + -0x48ac,unaff_s3)" identifier (argument_list "(*(int *)(pcStack_8138 + -0x7fc8) + -0x48ac,unaff_s3)" ( (binary_expression "*(int *)(pcStack_8138 + -0x7fc8) + -0x48ac" (pointer_expression "*(int *)(pcStack_8138 + -0x7fc8)" * (cast_expression "(int *)(pcStack_8138 + -0x7fc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_8138 + -0x7fc8)" ( (binary_expression "pcStack_8138 + -0x7fc8" identifier + number_literal) )))) + number_literal) , identifier ))) ;) (expression_statement "safefree(unaff_s3);" (call_expression "safefree(unaff_s3)" identifier (argument_list "(unaff_s3)" ( identifier ))) ;) (goto_statement "goto LAB_0002d77c;" goto statement_identifier ;) })) }) (else_clause "else if (iVar4 != 2) {\n      FUN_0002a658(*(int *)(pcStack_8138 + -0x7fc8) + -0x4a68,unaff_s3);\n      safefree(unaff_s3);\n      goto LAB_0002d77c;\n    }" else (if_statement "if (iVar4 != 2) {\n      FUN_0002a658(*(int *)(pcStack_8138 + -0x7fc8) + -0x4a68,unaff_s3);\n      safefree(unaff_s3);\n      goto LAB_0002d77c;\n    }" if (parenthesized_expression "(iVar4 != 2)" ( (binary_expression "iVar4 != 2" identifier != number_literal) )) (compound_statement "{\n      FUN_0002a658(*(int *)(pcStack_8138 + -0x7fc8) + -0x4a68,unaff_s3);\n      safefree(unaff_s3);\n      goto LAB_0002d77c;\n    }" { (expression_statement "FUN_0002a658(*(int *)(pcStack_8138 + -0x7fc8) + -0x4a68,unaff_s3);" (call_expression "FUN_0002a658(*(int *)(pcStack_8138 + -0x7fc8) + -0x4a68,unaff_s3)" identifier (argument_list "(*(int *)(pcStack_8138 + -0x7fc8) + -0x4a68,unaff_s3)" ( (binary_expression "*(int *)(pcStack_8138 + -0x7fc8) + -0x4a68" (pointer_expression "*(int *)(pcStack_8138 + -0x7fc8)" * (cast_expression "(int *)(pcStack_8138 + -0x7fc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_8138 + -0x7fc8)" ( (binary_expression "pcStack_8138 + -0x7fc8" identifier + number_literal) )))) + number_literal) , identifier ))) ;) (expression_statement "safefree(unaff_s3);" (call_expression "safefree(unaff_s3)" identifier (argument_list "(unaff_s3)" ( identifier ))) ;) (goto_statement "goto LAB_0002d77c;" goto statement_identifier ;) })))) (expression_statement "FUN_0002d4e0(unaff_s3,0);" (call_expression "FUN_0002d4e0(unaff_s3,0)" identifier (argument_list "(unaff_s3,0)" ( identifier , number_literal ))) ;) (expression_statement "safefree(unaff_s3);" (call_expression "safefree(unaff_s3)" identifier (argument_list "(unaff_s3)" ( identifier ))) ;) (goto_statement "goto LAB_0002d77c;" goto statement_identifier ;) })) (expression_statement "unaff_s5 = (**(code **)(pcStack_8138 + -0x7c84))(unaff_s3,uStack_80cc);" (assignment_expression "unaff_s5 = (**(code **)(pcStack_8138 + -0x7c84))(unaff_s3,uStack_80cc)" identifier = (call_expression "(**(code **)(pcStack_8138 + -0x7c84))(unaff_s3,uStack_80cc)" (parenthesized_expression "(**(code **)(pcStack_8138 + -0x7c84))" ( (pointer_expression "**(code **)(pcStack_8138 + -0x7c84)" * (pointer_expression "*(code **)(pcStack_8138 + -0x7c84)" * (cast_expression "(code **)(pcStack_8138 + -0x7c84)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_8138 + -0x7c84)" ( (binary_expression "pcStack_8138 + -0x7c84" identifier + number_literal) ))))) )) (argument_list "(unaff_s3,uStack_80cc)" ( identifier , identifier )))) ;) (if_statement "if (unaff_s5 == 0) {\n    FUN_0002a658(*(int *)(pcStack_8138 + -0x7fc8) + -0x4890,unaff_s3);\n    safefree(unaff_s3);\n    goto LAB_0002d77c;\n  }" if (parenthesized_expression "(unaff_s5 == 0)" ( (binary_expression "unaff_s5 == 0" identifier == number_literal) )) (compound_statement "{\n    FUN_0002a658(*(int *)(pcStack_8138 + -0x7fc8) + -0x4890,unaff_s3);\n    safefree(unaff_s3);\n    goto LAB_0002d77c;\n  }" { (expression_statement "FUN_0002a658(*(int *)(pcStack_8138 + -0x7fc8) + -0x4890,unaff_s3);" (call_expression "FUN_0002a658(*(int *)(pcStack_8138 + -0x7fc8) + -0x4890,unaff_s3)" identifier (argument_list "(*(int *)(pcStack_8138 + -0x7fc8) + -0x4890,unaff_s3)" ( (binary_expression "*(int *)(pcStack_8138 + -0x7fc8) + -0x4890" (pointer_expression "*(int *)(pcStack_8138 + -0x7fc8)" * (cast_expression "(int *)(pcStack_8138 + -0x7fc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_8138 + -0x7fc8)" ( (binary_expression "pcStack_8138 + -0x7fc8" identifier + number_literal) )))) + number_literal) , identifier ))) ;) (expression_statement "safefree(unaff_s3);" (call_expression "safefree(unaff_s3)" identifier (argument_list "(unaff_s3)" ( identifier ))) ;) (goto_statement "goto LAB_0002d77c;" goto statement_identifier ;) })) (expression_statement "iStack_8120 = scp_accept_filexfer();" (assignment_expression "iStack_8120 = scp_accept_filexfer()" identifier = (call_expression "scp_accept_filexfer()" identifier (argument_list "()" ( )))) ;) (if_statement "if (iStack_8120 == 0) {\n    puVar1 = auStack_100b0;\n    uint64_make(&uStack_80f8,0,0);\n    uStack_8114 = (**(code **)(pcStack_8138 + -0x7488))(0);\n    uStack_811c = (**(code **)(pcStack_8138 + -0x7cac))(unaff_s3,1);\n    uint64_make(&uStack_8100,0,0);\n    iStack_8124 = *(int *)(pcStack_8138 + -0x7fc8);\n    unaff_s7 = *(int *)(pcStack_8138 + -0x7fd8);\nLAB_0002db64:\n    do {\n      iVar4 = uint64_compare(uStack_8100,uStack_80fc,uStack_80c8,uStack_80c4);\n      if (-1 < iVar4) goto LAB_0002de88;\n      uint64_make(&uStack_80f0,0,0x8000);\n      uStack_8148 = uStack_80fc;\n      uint64_subtract(&uStack_80e8,uStack_80c8,uStack_80c4,uStack_8100);\n      iVar4 = uint64_compare(uStack_80f0,uStack_80ec,uStack_80e8,uStack_80e4);\n      if (0 < iVar4) {\n        uStack_8148 = uStack_80fc;\n        uint64_subtract(&uStack_80f0,uStack_80c8,uStack_80c4,uStack_8100);\n      }\n      puVar1 = (undefined *)scp_recv_filedata(auStack_80b4,uStack_80ec);\n      if ((int)puVar1 < 1) {\n        (*pcStack_8128)(iStack_8124 + -0x5640);\n      }\n      if (iVar24 == 0) {\n        puVar5 = (undefined *)(**(code **)(pcStack_8138 + -0x7c68))(unaff_s5,auStack_80b4,puVar1);\n        if (puVar5 == puVar1) {\n          if (*(int *)(unaff_s7 + -0x3fa8) != 0) {\n            uint64_add32(&uStack_8108,uStack_80f8,uStack_80f4,puVar1);\n            uStack_80f8 = uStack_8108;\n            uStack_80f4 = uStack_8104;\n            iVar4 = (**(code **)(pcStack_8138 + -0x7488))(0);\n            if (iVar4 <= iStack_8120) {\n              uint64_add32(&uStack_80e0,uStack_8100,uStack_80fc,puVar1);\n              iVar4 = uint64_compare(uStack_80e0,uStack_80dc,uStack_80c8,uStack_80c4);\n              if (iVar4 != 0) goto LAB_0002dc94;\n            }\n            iStack_8140 = (**(code **)(pcStack_8138 + -0x7488))(0);\n            uStack_8144 = uStack_8114;\n            uStack_8148 = uStack_80f4;\n            iStack_8120 = iStack_8140;\n            (*pcStack_810c)(uStack_811c,uStack_80c8,uStack_80c4,uStack_80f8);\n          }\nLAB_0002dc94:\n          param_1 = auStack_100b0;\n          uint64_add32(&uStack_8108,uStack_8100,uStack_80fc,puVar1);\n          uStack_8100 = uStack_8108;\n          uStack_80fc = uStack_8104;\n          goto LAB_0002db64;\n        }\n        if (*(int *)(unaff_s7 + -0x3fa8) != 0) {\n          (**(code **)(pcStack_8138 + -0x759c))\n                    (1,*(int *)(pcStack_8138 + -0x7fc8) + -0x4850,uStack_811c,iStack_8110);\n        }\n        uint64_add32(&uStack_8108,uStack_8100,uStack_80fc,puVar1);\n      }\n      else {\n        uint64_add32(&uStack_8108,uStack_8100,uStack_80fc,puVar1);\n      }\n      param_1 = auStack_100b0;\n      iVar24 = 1;\n      uStack_8100 = uStack_8108;\n      uStack_80fc = uStack_8104;\n    } while( true );\n  }" if (parenthesized_expression "(iStack_8120 == 0)" ( (binary_expression "iStack_8120 == 0" identifier == number_literal) )) (compound_statement "{\n    puVar1 = auStack_100b0;\n    uint64_make(&uStack_80f8,0,0);\n    uStack_8114 = (**(code **)(pcStack_8138 + -0x7488))(0);\n    uStack_811c = (**(code **)(pcStack_8138 + -0x7cac))(unaff_s3,1);\n    uint64_make(&uStack_8100,0,0);\n    iStack_8124 = *(int *)(pcStack_8138 + -0x7fc8);\n    unaff_s7 = *(int *)(pcStack_8138 + -0x7fd8);\nLAB_0002db64:\n    do {\n      iVar4 = uint64_compare(uStack_8100,uStack_80fc,uStack_80c8,uStack_80c4);\n      if (-1 < iVar4) goto LAB_0002de88;\n      uint64_make(&uStack_80f0,0,0x8000);\n      uStack_8148 = uStack_80fc;\n      uint64_subtract(&uStack_80e8,uStack_80c8,uStack_80c4,uStack_8100);\n      iVar4 = uint64_compare(uStack_80f0,uStack_80ec,uStack_80e8,uStack_80e4);\n      if (0 < iVar4) {\n        uStack_8148 = uStack_80fc;\n        uint64_subtract(&uStack_80f0,uStack_80c8,uStack_80c4,uStack_8100);\n      }\n      puVar1 = (undefined *)scp_recv_filedata(auStack_80b4,uStack_80ec);\n      if ((int)puVar1 < 1) {\n        (*pcStack_8128)(iStack_8124 + -0x5640);\n      }\n      if (iVar24 == 0) {\n        puVar5 = (undefined *)(**(code **)(pcStack_8138 + -0x7c68))(unaff_s5,auStack_80b4,puVar1);\n        if (puVar5 == puVar1) {\n          if (*(int *)(unaff_s7 + -0x3fa8) != 0) {\n            uint64_add32(&uStack_8108,uStack_80f8,uStack_80f4,puVar1);\n            uStack_80f8 = uStack_8108;\n            uStack_80f4 = uStack_8104;\n            iVar4 = (**(code **)(pcStack_8138 + -0x7488))(0);\n            if (iVar4 <= iStack_8120) {\n              uint64_add32(&uStack_80e0,uStack_8100,uStack_80fc,puVar1);\n              iVar4 = uint64_compare(uStack_80e0,uStack_80dc,uStack_80c8,uStack_80c4);\n              if (iVar4 != 0) goto LAB_0002dc94;\n            }\n            iStack_8140 = (**(code **)(pcStack_8138 + -0x7488))(0);\n            uStack_8144 = uStack_8114;\n            uStack_8148 = uStack_80f4;\n            iStack_8120 = iStack_8140;\n            (*pcStack_810c)(uStack_811c,uStack_80c8,uStack_80c4,uStack_80f8);\n          }\nLAB_0002dc94:\n          param_1 = auStack_100b0;\n          uint64_add32(&uStack_8108,uStack_8100,uStack_80fc,puVar1);\n          uStack_8100 = uStack_8108;\n          uStack_80fc = uStack_8104;\n          goto LAB_0002db64;\n        }\n        if (*(int *)(unaff_s7 + -0x3fa8) != 0) {\n          (**(code **)(pcStack_8138 + -0x759c))\n                    (1,*(int *)(pcStack_8138 + -0x7fc8) + -0x4850,uStack_811c,iStack_8110);\n        }\n        uint64_add32(&uStack_8108,uStack_8100,uStack_80fc,puVar1);\n      }\n      else {\n        uint64_add32(&uStack_8108,uStack_8100,uStack_80fc,puVar1);\n      }\n      param_1 = auStack_100b0;\n      iVar24 = 1;\n      uStack_8100 = uStack_8108;\n      uStack_80fc = uStack_8104;\n    } while( true );\n  }" { (expression_statement "puVar1 = auStack_100b0;" (assignment_expression "puVar1 = auStack_100b0" identifier = identifier) ;) (expression_statement "uint64_make(&uStack_80f8,0,0);" (call_expression "uint64_make(&uStack_80f8,0,0)" identifier (argument_list "(&uStack_80f8,0,0)" ( (pointer_expression "&uStack_80f8" & identifier) , number_literal , number_literal ))) ;) (expression_statement "uStack_8114 = (**(code **)(pcStack_8138 + -0x7488))(0);" (assignment_expression "uStack_8114 = (**(code **)(pcStack_8138 + -0x7488))(0)" identifier = (call_expression "(**(code **)(pcStack_8138 + -0x7488))(0)" (parenthesized_expression "(**(code **)(pcStack_8138 + -0x7488))" ( (pointer_expression "**(code **)(pcStack_8138 + -0x7488)" * (pointer_expression "*(code **)(pcStack_8138 + -0x7488)" * (cast_expression "(code **)(pcStack_8138 + -0x7488)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_8138 + -0x7488)" ( (binary_expression "pcStack_8138 + -0x7488" identifier + number_literal) ))))) )) (argument_list "(0)" ( number_literal )))) ;) (expression_statement "uStack_811c = (**(code **)(pcStack_8138 + -0x7cac))(unaff_s3,1);" (assignment_expression "uStack_811c = (**(code **)(pcStack_8138 + -0x7cac))(unaff_s3,1)" identifier = (call_expression "(**(code **)(pcStack_8138 + -0x7cac))(unaff_s3,1)" (parenthesized_expression "(**(code **)(pcStack_8138 + -0x7cac))" ( (pointer_expression "**(code **)(pcStack_8138 + -0x7cac)" * (pointer_expression "*(code **)(pcStack_8138 + -0x7cac)" * (cast_expression "(code **)(pcStack_8138 + -0x7cac)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_8138 + -0x7cac)" ( (binary_expression "pcStack_8138 + -0x7cac" identifier + number_literal) ))))) )) (argument_list "(unaff_s3,1)" ( identifier , number_literal )))) ;) (expression_statement "uint64_make(&uStack_8100,0,0);" (call_expression "uint64_make(&uStack_8100,0,0)" identifier (argument_list "(&uStack_8100,0,0)" ( (pointer_expression "&uStack_8100" & identifier) , number_literal , number_literal ))) ;) (expression_statement "iStack_8124 = *(int *)(pcStack_8138 + -0x7fc8);" (assignment_expression "iStack_8124 = *(int *)(pcStack_8138 + -0x7fc8)" identifier = (pointer_expression "*(int *)(pcStack_8138 + -0x7fc8)" * (cast_expression "(int *)(pcStack_8138 + -0x7fc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_8138 + -0x7fc8)" ( (binary_expression "pcStack_8138 + -0x7fc8" identifier + number_literal) ))))) ;) (expression_statement "unaff_s7 = *(int *)(pcStack_8138 + -0x7fd8);" (assignment_expression "unaff_s7 = *(int *)(pcStack_8138 + -0x7fd8)" identifier = (pointer_expression "*(int *)(pcStack_8138 + -0x7fd8)" * (cast_expression "(int *)(pcStack_8138 + -0x7fd8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_8138 + -0x7fd8)" ( (binary_expression "pcStack_8138 + -0x7fd8" identifier + number_literal) ))))) ;) (labeled_statement "LAB_0002db64:\n    do {\n      iVar4 = uint64_compare(uStack_8100,uStack_80fc,uStack_80c8,uStack_80c4);\n      if (-1 < iVar4) goto LAB_0002de88;\n      uint64_make(&uStack_80f0,0,0x8000);\n      uStack_8148 = uStack_80fc;\n      uint64_subtract(&uStack_80e8,uStack_80c8,uStack_80c4,uStack_8100);\n      iVar4 = uint64_compare(uStack_80f0,uStack_80ec,uStack_80e8,uStack_80e4);\n      if (0 < iVar4) {\n        uStack_8148 = uStack_80fc;\n        uint64_subtract(&uStack_80f0,uStack_80c8,uStack_80c4,uStack_8100);\n      }\n      puVar1 = (undefined *)scp_recv_filedata(auStack_80b4,uStack_80ec);\n      if ((int)puVar1 < 1) {\n        (*pcStack_8128)(iStack_8124 + -0x5640);\n      }\n      if (iVar24 == 0) {\n        puVar5 = (undefined *)(**(code **)(pcStack_8138 + -0x7c68))(unaff_s5,auStack_80b4,puVar1);\n        if (puVar5 == puVar1) {\n          if (*(int *)(unaff_s7 + -0x3fa8) != 0) {\n            uint64_add32(&uStack_8108,uStack_80f8,uStack_80f4,puVar1);\n            uStack_80f8 = uStack_8108;\n            uStack_80f4 = uStack_8104;\n            iVar4 = (**(code **)(pcStack_8138 + -0x7488))(0);\n            if (iVar4 <= iStack_8120) {\n              uint64_add32(&uStack_80e0,uStack_8100,uStack_80fc,puVar1);\n              iVar4 = uint64_compare(uStack_80e0,uStack_80dc,uStack_80c8,uStack_80c4);\n              if (iVar4 != 0) goto LAB_0002dc94;\n            }\n            iStack_8140 = (**(code **)(pcStack_8138 + -0x7488))(0);\n            uStack_8144 = uStack_8114;\n            uStack_8148 = uStack_80f4;\n            iStack_8120 = iStack_8140;\n            (*pcStack_810c)(uStack_811c,uStack_80c8,uStack_80c4,uStack_80f8);\n          }\nLAB_0002dc94:\n          param_1 = auStack_100b0;\n          uint64_add32(&uStack_8108,uStack_8100,uStack_80fc,puVar1);\n          uStack_8100 = uStack_8108;\n          uStack_80fc = uStack_8104;\n          goto LAB_0002db64;\n        }\n        if (*(int *)(unaff_s7 + -0x3fa8) != 0) {\n          (**(code **)(pcStack_8138 + -0x759c))\n                    (1,*(int *)(pcStack_8138 + -0x7fc8) + -0x4850,uStack_811c,iStack_8110);\n        }\n        uint64_add32(&uStack_8108,uStack_8100,uStack_80fc,puVar1);\n      }\n      else {\n        uint64_add32(&uStack_8108,uStack_8100,uStack_80fc,puVar1);\n      }\n      param_1 = auStack_100b0;\n      iVar24 = 1;\n      uStack_8100 = uStack_8108;\n      uStack_80fc = uStack_8104;\n    } while( true );" statement_identifier : (do_statement "do {\n      iVar4 = uint64_compare(uStack_8100,uStack_80fc,uStack_80c8,uStack_80c4);\n      if (-1 < iVar4) goto LAB_0002de88;\n      uint64_make(&uStack_80f0,0,0x8000);\n      uStack_8148 = uStack_80fc;\n      uint64_subtract(&uStack_80e8,uStack_80c8,uStack_80c4,uStack_8100);\n      iVar4 = uint64_compare(uStack_80f0,uStack_80ec,uStack_80e8,uStack_80e4);\n      if (0 < iVar4) {\n        uStack_8148 = uStack_80fc;\n        uint64_subtract(&uStack_80f0,uStack_80c8,uStack_80c4,uStack_8100);\n      }\n      puVar1 = (undefined *)scp_recv_filedata(auStack_80b4,uStack_80ec);\n      if ((int)puVar1 < 1) {\n        (*pcStack_8128)(iStack_8124 + -0x5640);\n      }\n      if (iVar24 == 0) {\n        puVar5 = (undefined *)(**(code **)(pcStack_8138 + -0x7c68))(unaff_s5,auStack_80b4,puVar1);\n        if (puVar5 == puVar1) {\n          if (*(int *)(unaff_s7 + -0x3fa8) != 0) {\n            uint64_add32(&uStack_8108,uStack_80f8,uStack_80f4,puVar1);\n            uStack_80f8 = uStack_8108;\n            uStack_80f4 = uStack_8104;\n            iVar4 = (**(code **)(pcStack_8138 + -0x7488))(0);\n            if (iVar4 <= iStack_8120) {\n              uint64_add32(&uStack_80e0,uStack_8100,uStack_80fc,puVar1);\n              iVar4 = uint64_compare(uStack_80e0,uStack_80dc,uStack_80c8,uStack_80c4);\n              if (iVar4 != 0) goto LAB_0002dc94;\n            }\n            iStack_8140 = (**(code **)(pcStack_8138 + -0x7488))(0);\n            uStack_8144 = uStack_8114;\n            uStack_8148 = uStack_80f4;\n            iStack_8120 = iStack_8140;\n            (*pcStack_810c)(uStack_811c,uStack_80c8,uStack_80c4,uStack_80f8);\n          }\nLAB_0002dc94:\n          param_1 = auStack_100b0;\n          uint64_add32(&uStack_8108,uStack_8100,uStack_80fc,puVar1);\n          uStack_8100 = uStack_8108;\n          uStack_80fc = uStack_8104;\n          goto LAB_0002db64;\n        }\n        if (*(int *)(unaff_s7 + -0x3fa8) != 0) {\n          (**(code **)(pcStack_8138 + -0x759c))\n                    (1,*(int *)(pcStack_8138 + -0x7fc8) + -0x4850,uStack_811c,iStack_8110);\n        }\n        uint64_add32(&uStack_8108,uStack_8100,uStack_80fc,puVar1);\n      }\n      else {\n        uint64_add32(&uStack_8108,uStack_8100,uStack_80fc,puVar1);\n      }\n      param_1 = auStack_100b0;\n      iVar24 = 1;\n      uStack_8100 = uStack_8108;\n      uStack_80fc = uStack_8104;\n    } while( true );" do (compound_statement "{\n      iVar4 = uint64_compare(uStack_8100,uStack_80fc,uStack_80c8,uStack_80c4);\n      if (-1 < iVar4) goto LAB_0002de88;\n      uint64_make(&uStack_80f0,0,0x8000);\n      uStack_8148 = uStack_80fc;\n      uint64_subtract(&uStack_80e8,uStack_80c8,uStack_80c4,uStack_8100);\n      iVar4 = uint64_compare(uStack_80f0,uStack_80ec,uStack_80e8,uStack_80e4);\n      if (0 < iVar4) {\n        uStack_8148 = uStack_80fc;\n        uint64_subtract(&uStack_80f0,uStack_80c8,uStack_80c4,uStack_8100);\n      }\n      puVar1 = (undefined *)scp_recv_filedata(auStack_80b4,uStack_80ec);\n      if ((int)puVar1 < 1) {\n        (*pcStack_8128)(iStack_8124 + -0x5640);\n      }\n      if (iVar24 == 0) {\n        puVar5 = (undefined *)(**(code **)(pcStack_8138 + -0x7c68))(unaff_s5,auStack_80b4,puVar1);\n        if (puVar5 == puVar1) {\n          if (*(int *)(unaff_s7 + -0x3fa8) != 0) {\n            uint64_add32(&uStack_8108,uStack_80f8,uStack_80f4,puVar1);\n            uStack_80f8 = uStack_8108;\n            uStack_80f4 = uStack_8104;\n            iVar4 = (**(code **)(pcStack_8138 + -0x7488))(0);\n            if (iVar4 <= iStack_8120) {\n              uint64_add32(&uStack_80e0,uStack_8100,uStack_80fc,puVar1);\n              iVar4 = uint64_compare(uStack_80e0,uStack_80dc,uStack_80c8,uStack_80c4);\n              if (iVar4 != 0) goto LAB_0002dc94;\n            }\n            iStack_8140 = (**(code **)(pcStack_8138 + -0x7488))(0);\n            uStack_8144 = uStack_8114;\n            uStack_8148 = uStack_80f4;\n            iStack_8120 = iStack_8140;\n            (*pcStack_810c)(uStack_811c,uStack_80c8,uStack_80c4,uStack_80f8);\n          }\nLAB_0002dc94:\n          param_1 = auStack_100b0;\n          uint64_add32(&uStack_8108,uStack_8100,uStack_80fc,puVar1);\n          uStack_8100 = uStack_8108;\n          uStack_80fc = uStack_8104;\n          goto LAB_0002db64;\n        }\n        if (*(int *)(unaff_s7 + -0x3fa8) != 0) {\n          (**(code **)(pcStack_8138 + -0x759c))\n                    (1,*(int *)(pcStack_8138 + -0x7fc8) + -0x4850,uStack_811c,iStack_8110);\n        }\n        uint64_add32(&uStack_8108,uStack_8100,uStack_80fc,puVar1);\n      }\n      else {\n        uint64_add32(&uStack_8108,uStack_8100,uStack_80fc,puVar1);\n      }\n      param_1 = auStack_100b0;\n      iVar24 = 1;\n      uStack_8100 = uStack_8108;\n      uStack_80fc = uStack_8104;\n    }" { (expression_statement "iVar4 = uint64_compare(uStack_8100,uStack_80fc,uStack_80c8,uStack_80c4);" (assignment_expression "iVar4 = uint64_compare(uStack_8100,uStack_80fc,uStack_80c8,uStack_80c4)" identifier = (call_expression "uint64_compare(uStack_8100,uStack_80fc,uStack_80c8,uStack_80c4)" identifier (argument_list "(uStack_8100,uStack_80fc,uStack_80c8,uStack_80c4)" ( identifier , identifier , identifier , identifier )))) ;) (if_statement "if (-1 < iVar4) goto LAB_0002de88;" if (parenthesized_expression "(-1 < iVar4)" ( (binary_expression "-1 < iVar4" number_literal < identifier) )) (goto_statement "goto LAB_0002de88;" goto statement_identifier ;)) (expression_statement "uint64_make(&uStack_80f0,0,0x8000);" (call_expression "uint64_make(&uStack_80f0,0,0x8000)" identifier (argument_list "(&uStack_80f0,0,0x8000)" ( (pointer_expression "&uStack_80f0" & identifier) , number_literal , number_literal ))) ;) (expression_statement "uStack_8148 = uStack_80fc;" (assignment_expression "uStack_8148 = uStack_80fc" identifier = identifier) ;) (expression_statement "uint64_subtract(&uStack_80e8,uStack_80c8,uStack_80c4,uStack_8100);" (call_expression "uint64_subtract(&uStack_80e8,uStack_80c8,uStack_80c4,uStack_8100)" identifier (argument_list "(&uStack_80e8,uStack_80c8,uStack_80c4,uStack_8100)" ( (pointer_expression "&uStack_80e8" & identifier) , identifier , identifier , identifier ))) ;) (expression_statement "iVar4 = uint64_compare(uStack_80f0,uStack_80ec,uStack_80e8,uStack_80e4);" (assignment_expression "iVar4 = uint64_compare(uStack_80f0,uStack_80ec,uStack_80e8,uStack_80e4)" identifier = (call_expression "uint64_compare(uStack_80f0,uStack_80ec,uStack_80e8,uStack_80e4)" identifier (argument_list "(uStack_80f0,uStack_80ec,uStack_80e8,uStack_80e4)" ( identifier , identifier , identifier , identifier )))) ;) (if_statement "if (0 < iVar4) {\n        uStack_8148 = uStack_80fc;\n        uint64_subtract(&uStack_80f0,uStack_80c8,uStack_80c4,uStack_8100);\n      }" if (parenthesized_expression "(0 < iVar4)" ( (binary_expression "0 < iVar4" number_literal < identifier) )) (compound_statement "{\n        uStack_8148 = uStack_80fc;\n        uint64_subtract(&uStack_80f0,uStack_80c8,uStack_80c4,uStack_8100);\n      }" { (expression_statement "uStack_8148 = uStack_80fc;" (assignment_expression "uStack_8148 = uStack_80fc" identifier = identifier) ;) (expression_statement "uint64_subtract(&uStack_80f0,uStack_80c8,uStack_80c4,uStack_8100);" (call_expression "uint64_subtract(&uStack_80f0,uStack_80c8,uStack_80c4,uStack_8100)" identifier (argument_list "(&uStack_80f0,uStack_80c8,uStack_80c4,uStack_8100)" ( (pointer_expression "&uStack_80f0" & identifier) , identifier , identifier , identifier ))) ;) })) (expression_statement "puVar1 = (undefined *)scp_recv_filedata(auStack_80b4,uStack_80ec);" (assignment_expression "puVar1 = (undefined *)scp_recv_filedata(auStack_80b4,uStack_80ec)" identifier = (cast_expression "(undefined *)scp_recv_filedata(auStack_80b4,uStack_80ec)" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "scp_recv_filedata(auStack_80b4,uStack_80ec)" identifier (argument_list "(auStack_80b4,uStack_80ec)" ( identifier , identifier ))))) ;) (if_statement "if ((int)puVar1 < 1) {\n        (*pcStack_8128)(iStack_8124 + -0x5640);\n      }" if (parenthesized_expression "((int)puVar1 < 1)" ( (binary_expression "(int)puVar1 < 1" (cast_expression "(int)puVar1" ( (type_descriptor "int" primitive_type) ) identifier) < number_literal) )) (compound_statement "{\n        (*pcStack_8128)(iStack_8124 + -0x5640);\n      }" { (expression_statement "(*pcStack_8128)(iStack_8124 + -0x5640);" (call_expression "(*pcStack_8128)(iStack_8124 + -0x5640)" (parenthesized_expression "(*pcStack_8128)" ( (pointer_expression "*pcStack_8128" * identifier) )) (argument_list "(iStack_8124 + -0x5640)" ( (binary_expression "iStack_8124 + -0x5640" identifier + number_literal) ))) ;) })) (if_statement "if (iVar24 == 0) {\n        puVar5 = (undefined *)(**(code **)(pcStack_8138 + -0x7c68))(unaff_s5,auStack_80b4,puVar1);\n        if (puVar5 == puVar1) {\n          if (*(int *)(unaff_s7 + -0x3fa8) != 0) {\n            uint64_add32(&uStack_8108,uStack_80f8,uStack_80f4,puVar1);\n            uStack_80f8 = uStack_8108;\n            uStack_80f4 = uStack_8104;\n            iVar4 = (**(code **)(pcStack_8138 + -0x7488))(0);\n            if (iVar4 <= iStack_8120) {\n              uint64_add32(&uStack_80e0,uStack_8100,uStack_80fc,puVar1);\n              iVar4 = uint64_compare(uStack_80e0,uStack_80dc,uStack_80c8,uStack_80c4);\n              if (iVar4 != 0) goto LAB_0002dc94;\n            }\n            iStack_8140 = (**(code **)(pcStack_8138 + -0x7488))(0);\n            uStack_8144 = uStack_8114;\n            uStack_8148 = uStack_80f4;\n            iStack_8120 = iStack_8140;\n            (*pcStack_810c)(uStack_811c,uStack_80c8,uStack_80c4,uStack_80f8);\n          }\nLAB_0002dc94:\n          param_1 = auStack_100b0;\n          uint64_add32(&uStack_8108,uStack_8100,uStack_80fc,puVar1);\n          uStack_8100 = uStack_8108;\n          uStack_80fc = uStack_8104;\n          goto LAB_0002db64;\n        }\n        if (*(int *)(unaff_s7 + -0x3fa8) != 0) {\n          (**(code **)(pcStack_8138 + -0x759c))\n                    (1,*(int *)(pcStack_8138 + -0x7fc8) + -0x4850,uStack_811c,iStack_8110);\n        }\n        uint64_add32(&uStack_8108,uStack_8100,uStack_80fc,puVar1);\n      }\n      else {\n        uint64_add32(&uStack_8108,uStack_8100,uStack_80fc,puVar1);\n      }" if (parenthesized_expression "(iVar24 == 0)" ( (binary_expression "iVar24 == 0" identifier == number_literal) )) (compound_statement "{\n        puVar5 = (undefined *)(**(code **)(pcStack_8138 + -0x7c68))(unaff_s5,auStack_80b4,puVar1);\n        if (puVar5 == puVar1) {\n          if (*(int *)(unaff_s7 + -0x3fa8) != 0) {\n            uint64_add32(&uStack_8108,uStack_80f8,uStack_80f4,puVar1);\n            uStack_80f8 = uStack_8108;\n            uStack_80f4 = uStack_8104;\n            iVar4 = (**(code **)(pcStack_8138 + -0x7488))(0);\n            if (iVar4 <= iStack_8120) {\n              uint64_add32(&uStack_80e0,uStack_8100,uStack_80fc,puVar1);\n              iVar4 = uint64_compare(uStack_80e0,uStack_80dc,uStack_80c8,uStack_80c4);\n              if (iVar4 != 0) goto LAB_0002dc94;\n            }\n            iStack_8140 = (**(code **)(pcStack_8138 + -0x7488))(0);\n            uStack_8144 = uStack_8114;\n            uStack_8148 = uStack_80f4;\n            iStack_8120 = iStack_8140;\n            (*pcStack_810c)(uStack_811c,uStack_80c8,uStack_80c4,uStack_80f8);\n          }\nLAB_0002dc94:\n          param_1 = auStack_100b0;\n          uint64_add32(&uStack_8108,uStack_8100,uStack_80fc,puVar1);\n          uStack_8100 = uStack_8108;\n          uStack_80fc = uStack_8104;\n          goto LAB_0002db64;\n        }\n        if (*(int *)(unaff_s7 + -0x3fa8) != 0) {\n          (**(code **)(pcStack_8138 + -0x759c))\n                    (1,*(int *)(pcStack_8138 + -0x7fc8) + -0x4850,uStack_811c,iStack_8110);\n        }\n        uint64_add32(&uStack_8108,uStack_8100,uStack_80fc,puVar1);\n      }" { (expression_statement "puVar5 = (undefined *)(**(code **)(pcStack_8138 + -0x7c68))(unaff_s5,auStack_80b4,puVar1);" (assignment_expression "puVar5 = (undefined *)(**(code **)(pcStack_8138 + -0x7c68))(unaff_s5,auStack_80b4,puVar1)" identifier = (cast_expression "(undefined *)(**(code **)(pcStack_8138 + -0x7c68))(unaff_s5,auStack_80b4,puVar1)" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(**(code **)(pcStack_8138 + -0x7c68))(unaff_s5,auStack_80b4,puVar1)" (parenthesized_expression "(**(code **)(pcStack_8138 + -0x7c68))" ( (pointer_expression "**(code **)(pcStack_8138 + -0x7c68)" * (pointer_expression "*(code **)(pcStack_8138 + -0x7c68)" * (cast_expression "(code **)(pcStack_8138 + -0x7c68)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_8138 + -0x7c68)" ( (binary_expression "pcStack_8138 + -0x7c68" identifier + number_literal) ))))) )) (argument_list "(unaff_s5,auStack_80b4,puVar1)" ( identifier , identifier , identifier ))))) ;) (if_statement "if (puVar5 == puVar1) {\n          if (*(int *)(unaff_s7 + -0x3fa8) != 0) {\n            uint64_add32(&uStack_8108,uStack_80f8,uStack_80f4,puVar1);\n            uStack_80f8 = uStack_8108;\n            uStack_80f4 = uStack_8104;\n            iVar4 = (**(code **)(pcStack_8138 + -0x7488))(0);\n            if (iVar4 <= iStack_8120) {\n              uint64_add32(&uStack_80e0,uStack_8100,uStack_80fc,puVar1);\n              iVar4 = uint64_compare(uStack_80e0,uStack_80dc,uStack_80c8,uStack_80c4);\n              if (iVar4 != 0) goto LAB_0002dc94;\n            }\n            iStack_8140 = (**(code **)(pcStack_8138 + -0x7488))(0);\n            uStack_8144 = uStack_8114;\n            uStack_8148 = uStack_80f4;\n            iStack_8120 = iStack_8140;\n            (*pcStack_810c)(uStack_811c,uStack_80c8,uStack_80c4,uStack_80f8);\n          }\nLAB_0002dc94:\n          param_1 = auStack_100b0;\n          uint64_add32(&uStack_8108,uStack_8100,uStack_80fc,puVar1);\n          uStack_8100 = uStack_8108;\n          uStack_80fc = uStack_8104;\n          goto LAB_0002db64;\n        }" if (parenthesized_expression "(puVar5 == puVar1)" ( (binary_expression "puVar5 == puVar1" identifier == identifier) )) (compound_statement "{\n          if (*(int *)(unaff_s7 + -0x3fa8) != 0) {\n            uint64_add32(&uStack_8108,uStack_80f8,uStack_80f4,puVar1);\n            uStack_80f8 = uStack_8108;\n            uStack_80f4 = uStack_8104;\n            iVar4 = (**(code **)(pcStack_8138 + -0x7488))(0);\n            if (iVar4 <= iStack_8120) {\n              uint64_add32(&uStack_80e0,uStack_8100,uStack_80fc,puVar1);\n              iVar4 = uint64_compare(uStack_80e0,uStack_80dc,uStack_80c8,uStack_80c4);\n              if (iVar4 != 0) goto LAB_0002dc94;\n            }\n            iStack_8140 = (**(code **)(pcStack_8138 + -0x7488))(0);\n            uStack_8144 = uStack_8114;\n            uStack_8148 = uStack_80f4;\n            iStack_8120 = iStack_8140;\n            (*pcStack_810c)(uStack_811c,uStack_80c8,uStack_80c4,uStack_80f8);\n          }\nLAB_0002dc94:\n          param_1 = auStack_100b0;\n          uint64_add32(&uStack_8108,uStack_8100,uStack_80fc,puVar1);\n          uStack_8100 = uStack_8108;\n          uStack_80fc = uStack_8104;\n          goto LAB_0002db64;\n        }" { (if_statement "if (*(int *)(unaff_s7 + -0x3fa8) != 0) {\n            uint64_add32(&uStack_8108,uStack_80f8,uStack_80f4,puVar1);\n            uStack_80f8 = uStack_8108;\n            uStack_80f4 = uStack_8104;\n            iVar4 = (**(code **)(pcStack_8138 + -0x7488))(0);\n            if (iVar4 <= iStack_8120) {\n              uint64_add32(&uStack_80e0,uStack_8100,uStack_80fc,puVar1);\n              iVar4 = uint64_compare(uStack_80e0,uStack_80dc,uStack_80c8,uStack_80c4);\n              if (iVar4 != 0) goto LAB_0002dc94;\n            }\n            iStack_8140 = (**(code **)(pcStack_8138 + -0x7488))(0);\n            uStack_8144 = uStack_8114;\n            uStack_8148 = uStack_80f4;\n            iStack_8120 = iStack_8140;\n            (*pcStack_810c)(uStack_811c,uStack_80c8,uStack_80c4,uStack_80f8);\n          }" if (parenthesized_expression "(*(int *)(unaff_s7 + -0x3fa8) != 0)" ( (binary_expression "*(int *)(unaff_s7 + -0x3fa8) != 0" (pointer_expression "*(int *)(unaff_s7 + -0x3fa8)" * (cast_expression "(int *)(unaff_s7 + -0x3fa8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(unaff_s7 + -0x3fa8)" ( (binary_expression "unaff_s7 + -0x3fa8" identifier + number_literal) )))) != number_literal) )) (compound_statement "{\n            uint64_add32(&uStack_8108,uStack_80f8,uStack_80f4,puVar1);\n            uStack_80f8 = uStack_8108;\n            uStack_80f4 = uStack_8104;\n            iVar4 = (**(code **)(pcStack_8138 + -0x7488))(0);\n            if (iVar4 <= iStack_8120) {\n              uint64_add32(&uStack_80e0,uStack_8100,uStack_80fc,puVar1);\n              iVar4 = uint64_compare(uStack_80e0,uStack_80dc,uStack_80c8,uStack_80c4);\n              if (iVar4 != 0) goto LAB_0002dc94;\n            }\n            iStack_8140 = (**(code **)(pcStack_8138 + -0x7488))(0);\n            uStack_8144 = uStack_8114;\n            uStack_8148 = uStack_80f4;\n            iStack_8120 = iStack_8140;\n            (*pcStack_810c)(uStack_811c,uStack_80c8,uStack_80c4,uStack_80f8);\n          }" { (expression_statement "uint64_add32(&uStack_8108,uStack_80f8,uStack_80f4,puVar1);" (call_expression "uint64_add32(&uStack_8108,uStack_80f8,uStack_80f4,puVar1)" identifier (argument_list "(&uStack_8108,uStack_80f8,uStack_80f4,puVar1)" ( (pointer_expression "&uStack_8108" & identifier) , identifier , identifier , identifier ))) ;) (expression_statement "uStack_80f8 = uStack_8108;" (assignment_expression "uStack_80f8 = uStack_8108" identifier = identifier) ;) (expression_statement "uStack_80f4 = uStack_8104;" (assignment_expression "uStack_80f4 = uStack_8104" identifier = identifier) ;) (expression_statement "iVar4 = (**(code **)(pcStack_8138 + -0x7488))(0);" (assignment_expression "iVar4 = (**(code **)(pcStack_8138 + -0x7488))(0)" identifier = (call_expression "(**(code **)(pcStack_8138 + -0x7488))(0)" (parenthesized_expression "(**(code **)(pcStack_8138 + -0x7488))" ( (pointer_expression "**(code **)(pcStack_8138 + -0x7488)" * (pointer_expression "*(code **)(pcStack_8138 + -0x7488)" * (cast_expression "(code **)(pcStack_8138 + -0x7488)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_8138 + -0x7488)" ( (binary_expression "pcStack_8138 + -0x7488" identifier + number_literal) ))))) )) (argument_list "(0)" ( number_literal )))) ;) (if_statement "if (iVar4 <= iStack_8120) {\n              uint64_add32(&uStack_80e0,uStack_8100,uStack_80fc,puVar1);\n              iVar4 = uint64_compare(uStack_80e0,uStack_80dc,uStack_80c8,uStack_80c4);\n              if (iVar4 != 0) goto LAB_0002dc94;\n            }" if (parenthesized_expression "(iVar4 <= iStack_8120)" ( (binary_expression "iVar4 <= iStack_8120" identifier <= identifier) )) (compound_statement "{\n              uint64_add32(&uStack_80e0,uStack_8100,uStack_80fc,puVar1);\n              iVar4 = uint64_compare(uStack_80e0,uStack_80dc,uStack_80c8,uStack_80c4);\n              if (iVar4 != 0) goto LAB_0002dc94;\n            }" { (expression_statement "uint64_add32(&uStack_80e0,uStack_8100,uStack_80fc,puVar1);" (call_expression "uint64_add32(&uStack_80e0,uStack_8100,uStack_80fc,puVar1)" identifier (argument_list "(&uStack_80e0,uStack_8100,uStack_80fc,puVar1)" ( (pointer_expression "&uStack_80e0" & identifier) , identifier , identifier , identifier ))) ;) (expression_statement "iVar4 = uint64_compare(uStack_80e0,uStack_80dc,uStack_80c8,uStack_80c4);" (assignment_expression "iVar4 = uint64_compare(uStack_80e0,uStack_80dc,uStack_80c8,uStack_80c4)" identifier = (call_expression "uint64_compare(uStack_80e0,uStack_80dc,uStack_80c8,uStack_80c4)" identifier (argument_list "(uStack_80e0,uStack_80dc,uStack_80c8,uStack_80c4)" ( identifier , identifier , identifier , identifier )))) ;) (if_statement "if (iVar4 != 0) goto LAB_0002dc94;" if (parenthesized_expression "(iVar4 != 0)" ( (binary_expression "iVar4 != 0" identifier != number_literal) )) (goto_statement "goto LAB_0002dc94;" goto statement_identifier ;)) })) (expression_statement "iStack_8140 = (**(code **)(pcStack_8138 + -0x7488))(0);" (assignment_expression "iStack_8140 = (**(code **)(pcStack_8138 + -0x7488))(0)" identifier = (call_expression "(**(code **)(pcStack_8138 + -0x7488))(0)" (parenthesized_expression "(**(code **)(pcStack_8138 + -0x7488))" ( (pointer_expression "**(code **)(pcStack_8138 + -0x7488)" * (pointer_expression "*(code **)(pcStack_8138 + -0x7488)" * (cast_expression "(code **)(pcStack_8138 + -0x7488)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_8138 + -0x7488)" ( (binary_expression "pcStack_8138 + -0x7488" identifier + number_literal) ))))) )) (argument_list "(0)" ( number_literal )))) ;) (expression_statement "uStack_8144 = uStack_8114;" (assignment_expression "uStack_8144 = uStack_8114" identifier = identifier) ;) (expression_statement "uStack_8148 = uStack_80f4;" (assignment_expression "uStack_8148 = uStack_80f4" identifier = identifier) ;) (expression_statement "iStack_8120 = iStack_8140;" (assignment_expression "iStack_8120 = iStack_8140" identifier = identifier) ;) (expression_statement "(*pcStack_810c)(uStack_811c,uStack_80c8,uStack_80c4,uStack_80f8);" (call_expression "(*pcStack_810c)(uStack_811c,uStack_80c8,uStack_80c4,uStack_80f8)" (parenthesized_expression "(*pcStack_810c)" ( (pointer_expression "*pcStack_810c" * identifier) )) (argument_list "(uStack_811c,uStack_80c8,uStack_80c4,uStack_80f8)" ( identifier , identifier , identifier , identifier ))) ;) })) (labeled_statement "LAB_0002dc94:\n          param_1 = auStack_100b0;" statement_identifier : (expression_statement "param_1 = auStack_100b0;" (assignment_expression "param_1 = auStack_100b0" identifier = identifier) ;)) (expression_statement "uint64_add32(&uStack_8108,uStack_8100,uStack_80fc,puVar1);" (call_expression "uint64_add32(&uStack_8108,uStack_8100,uStack_80fc,puVar1)" identifier (argument_list "(&uStack_8108,uStack_8100,uStack_80fc,puVar1)" ( (pointer_expression "&uStack_8108" & identifier) , identifier , identifier , identifier ))) ;) (expression_statement "uStack_8100 = uStack_8108;" (assignment_expression "uStack_8100 = uStack_8108" identifier = identifier) ;) (expression_statement "uStack_80fc = uStack_8104;" (assignment_expression "uStack_80fc = uStack_8104" identifier = identifier) ;) (goto_statement "goto LAB_0002db64;" goto statement_identifier ;) })) (if_statement "if (*(int *)(unaff_s7 + -0x3fa8) != 0) {\n          (**(code **)(pcStack_8138 + -0x759c))\n                    (1,*(int *)(pcStack_8138 + -0x7fc8) + -0x4850,uStack_811c,iStack_8110);\n        }" if (parenthesized_expression "(*(int *)(unaff_s7 + -0x3fa8) != 0)" ( (binary_expression "*(int *)(unaff_s7 + -0x3fa8) != 0" (pointer_expression "*(int *)(unaff_s7 + -0x3fa8)" * (cast_expression "(int *)(unaff_s7 + -0x3fa8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(unaff_s7 + -0x3fa8)" ( (binary_expression "unaff_s7 + -0x3fa8" identifier + number_literal) )))) != number_literal) )) (compound_statement "{\n          (**(code **)(pcStack_8138 + -0x759c))\n                    (1,*(int *)(pcStack_8138 + -0x7fc8) + -0x4850,uStack_811c,iStack_8110);\n        }" { (expression_statement "(**(code **)(pcStack_8138 + -0x759c))\n                    (1,*(int *)(pcStack_8138 + -0x7fc8) + -0x4850,uStack_811c,iStack_8110);" (call_expression "(**(code **)(pcStack_8138 + -0x759c))\n                    (1,*(int *)(pcStack_8138 + -0x7fc8) + -0x4850,uStack_811c,iStack_8110)" (parenthesized_expression "(**(code **)(pcStack_8138 + -0x759c))" ( (pointer_expression "**(code **)(pcStack_8138 + -0x759c)" * (pointer_expression "*(code **)(pcStack_8138 + -0x759c)" * (cast_expression "(code **)(pcStack_8138 + -0x759c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_8138 + -0x759c)" ( (binary_expression "pcStack_8138 + -0x759c" identifier + number_literal) ))))) )) (argument_list "(1,*(int *)(pcStack_8138 + -0x7fc8) + -0x4850,uStack_811c,iStack_8110)" ( number_literal , (binary_expression "*(int *)(pcStack_8138 + -0x7fc8) + -0x4850" (pointer_expression "*(int *)(pcStack_8138 + -0x7fc8)" * (cast_expression "(int *)(pcStack_8138 + -0x7fc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_8138 + -0x7fc8)" ( (binary_expression "pcStack_8138 + -0x7fc8" identifier + number_literal) )))) + number_literal) , identifier , identifier ))) ;) })) (expression_statement "uint64_add32(&uStack_8108,uStack_8100,uStack_80fc,puVar1);" (call_expression "uint64_add32(&uStack_8108,uStack_8100,uStack_80fc,puVar1)" identifier (argument_list "(&uStack_8108,uStack_8100,uStack_80fc,puVar1)" ( (pointer_expression "&uStack_8108" & identifier) , identifier , identifier , identifier ))) ;) }) (else_clause "else {\n        uint64_add32(&uStack_8108,uStack_8100,uStack_80fc,puVar1);\n      }" else (compound_statement "{\n        uint64_add32(&uStack_8108,uStack_8100,uStack_80fc,puVar1);\n      }" { (expression_statement "uint64_add32(&uStack_8108,uStack_8100,uStack_80fc,puVar1);" (call_expression "uint64_add32(&uStack_8108,uStack_8100,uStack_80fc,puVar1)" identifier (argument_list "(&uStack_8108,uStack_8100,uStack_80fc,puVar1)" ( (pointer_expression "&uStack_8108" & identifier) , identifier , identifier , identifier ))) ;) }))) (expression_statement "param_1 = auStack_100b0;" (assignment_expression "param_1 = auStack_100b0" identifier = identifier) ;) (expression_statement "iVar24 = 1;" (assignment_expression "iVar24 = 1" identifier = number_literal) ;) (expression_statement "uStack_8100 = uStack_8108;" (assignment_expression "uStack_8100 = uStack_8108" identifier = identifier) ;) (expression_statement "uStack_80fc = uStack_8104;" (assignment_expression "uStack_80fc = uStack_8104" identifier = identifier) ;) }) while (parenthesized_expression "( true )" ( true )) ;)) })) (expression_statement "safefree(unaff_s3);" (call_expression "safefree(unaff_s3)" identifier (argument_list "(unaff_s3)" ( identifier ))) ;) (expression_statement "(**(code **)(pcStack_8138 + -0x7c70))(unaff_s5);" (call_expression "(**(code **)(pcStack_8138 + -0x7c70))(unaff_s5)" (parenthesized_expression "(**(code **)(pcStack_8138 + -0x7c70))" ( (pointer_expression "**(code **)(pcStack_8138 + -0x7c70)" * (pointer_expression "*(code **)(pcStack_8138 + -0x7c70)" * (cast_expression "(code **)(pcStack_8138 + -0x7c70)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_8138 + -0x7c70)" ( (binary_expression "pcStack_8138 + -0x7c70" identifier + number_literal) ))))) )) (argument_list "(unaff_s5)" ( identifier ))) ;) (labeled_statement "LAB_0002da64:\n  pcVar28 = *(code **)(pcStack_8138 + -0x74a0);" statement_identifier : (expression_statement "pcVar28 = *(code **)(pcStack_8138 + -0x74a0);" (assignment_expression "pcVar28 = *(code **)(pcStack_8138 + -0x74a0)" identifier = (pointer_expression "*(code **)(pcStack_8138 + -0x74a0)" * (cast_expression "(code **)(pcStack_8138 + -0x74a0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_8138 + -0x74a0)" ( (binary_expression "pcStack_8138 + -0x74a0" identifier + number_literal) ))))) ;)) (if_statement "if (uStack_b4 == **(uint **)(pcStack_8138 + -0x7478)) {\n    return **(uint **)(pcStack_8138 + -0x7478);\n  }" if (parenthesized_expression "(uStack_b4 == **(uint **)(pcStack_8138 + -0x7478))" ( (binary_expression "uStack_b4 == **(uint **)(pcStack_8138 + -0x7478)" identifier == (pointer_expression "**(uint **)(pcStack_8138 + -0x7478)" * (pointer_expression "*(uint **)(pcStack_8138 + -0x7478)" * (cast_expression "(uint **)(pcStack_8138 + -0x7478)" ( (type_descriptor "uint **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_8138 + -0x7478)" ( (binary_expression "pcStack_8138 + -0x7478" identifier + number_literal) )))))) )) (compound_statement "{\n    return **(uint **)(pcStack_8138 + -0x7478);\n  }" { (return_statement "return **(uint **)(pcStack_8138 + -0x7478);" return (pointer_expression "**(uint **)(pcStack_8138 + -0x7478)" * (pointer_expression "*(uint **)(pcStack_8138 + -0x7478)" * (cast_expression "(uint **)(pcStack_8138 + -0x7478)" ( (type_descriptor "uint **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_8138 + -0x7478)" ( (binary_expression "pcStack_8138 + -0x7478" identifier + number_literal) ))))) ;) })) (expression_statement "pcVar30 = version;" (assignment_expression "pcVar30 = version" identifier = identifier) ;) (expression_statement "(*pcVar28)();" (call_expression "(*pcVar28)()" (parenthesized_expression "(*pcVar28)" ( (pointer_expression "*pcVar28" * identifier) )) (argument_list "()" ( ))) ;) (expression_statement "pcStack_8168 = pcVar28 + 0x961d8;" (assignment_expression "pcStack_8168 = pcVar28 + 0x961d8" identifier = (binary_expression "pcVar28 + 0x961d8" identifier + number_literal)) ;) (expression_statement "uStack_8160 = 0xffff0000;" (assignment_expression "uStack_8160 = 0xffff0000" identifier = number_literal) ;) (expression_statement "pcStack_815c = pcVar30;" (assignment_expression "pcStack_815c = pcVar30" identifier = identifier) ;) (expression_statement "uVar6 = buildinfo(*(int *)(pcVar28 + 0x8e210) + 0xaa4);" (assignment_expression "uVar6 = buildinfo(*(int *)(pcVar28 + 0x8e210) + 0xaa4)" identifier = (call_expression "buildinfo(*(int *)(pcVar28 + 0x8e210) + 0xaa4)" identifier (argument_list "(*(int *)(pcVar28 + 0x8e210) + 0xaa4)" ( (binary_expression "*(int *)(pcVar28 + 0x8e210) + 0xaa4" (pointer_expression "*(int *)(pcVar28 + 0x8e210)" * (cast_expression "(int *)(pcVar28 + 0x8e210)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar28 + 0x8e210)" ( (binary_expression "pcVar28 + 0x8e210" identifier + number_literal) )))) + number_literal) )))) ;) (expression_statement "uVar17 = *(undefined4 *)(pcStack_8168 + -0x7da8);" (assignment_expression "uVar17 = *(undefined4 *)(pcStack_8168 + -0x7da8)" identifier = (pointer_expression "*(undefined4 *)(pcStack_8168 + -0x7da8)" * (cast_expression "(undefined4 *)(pcStack_8168 + -0x7da8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_8168 + -0x7da8)" ( (binary_expression "pcStack_8168 + -0x7da8" identifier + number_literal) ))))) ;) (expression_statement "iVar4 = *(int *)(pcStack_8168 + -0x7fc8) + -0x482c;" (assignment_expression "iVar4 = *(int *)(pcStack_8168 + -0x7fc8) + -0x482c" identifier = (binary_expression "*(int *)(pcStack_8168 + -0x7fc8) + -0x482c" (pointer_expression "*(int *)(pcStack_8168 + -0x7fc8)" * (cast_expression "(int *)(pcStack_8168 + -0x7fc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_8168 + -0x7fc8)" ( (binary_expression "pcStack_8168 + -0x7fc8" identifier + number_literal) )))) + number_literal)) ;) (expression_statement "uVar7 = uVar6;" (assignment_expression "uVar7 = uVar6" identifier = identifier) ;) (expression_statement "(**(code **)(pcStack_8168 + -0x759c))(1);" (call_expression "(**(code **)(pcStack_8168 + -0x759c))(1)" (parenthesized_expression "(**(code **)(pcStack_8168 + -0x759c))" ( (pointer_expression "**(code **)(pcStack_8168 + -0x759c)" * (pointer_expression "*(code **)(pcStack_8168 + -0x759c)" * (cast_expression "(code **)(pcStack_8168 + -0x759c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_8168 + -0x759c)" ( (binary_expression "pcStack_8168 + -0x759c" identifier + number_literal) ))))) )) (argument_list "(1)" ( number_literal ))) ;) (expression_statement "safefree(uVar6);" (call_expression "safefree(uVar6)" identifier (argument_list "(uVar6)" ( identifier ))) ;) (expression_statement "uVar12 = 0;" (assignment_expression "uVar12 = 0" identifier = number_literal) ;) (expression_statement "pcVar28 = *(code **)(pcStack_8168 + -0x7504);" (assignment_expression "pcVar28 = *(code **)(pcStack_8168 + -0x7504)" identifier = (pointer_expression "*(code **)(pcStack_8168 + -0x7504)" * (cast_expression "(code **)(pcStack_8168 + -0x7504)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_8168 + -0x7504)" ( (binary_expression "pcStack_8168 + -0x7504" identifier + number_literal) ))))) ;) (expression_statement "pcVar30 = cmdline_error;" (assignment_expression "pcVar30 = cmdline_error" identifier = identifier) ;) (expression_statement "(*pcVar28)();" (call_expression "(*pcVar28)()" (parenthesized_expression "(*pcVar28)" ( (pointer_expression "*pcVar28" * identifier) )) (argument_list "()" ( ))) ;) (expression_statement "pcStack_8198 = pcVar28 + 0x96158;" (assignment_expression "pcStack_8198 = pcVar28 + 0x96158" identifier = (binary_expression "pcVar28 + 0x96158" identifier + number_literal)) ;) (expression_statement "uStack_818c = **(undefined4 **)(pcVar28 + 0x8ece0);" (assignment_expression "uStack_818c = **(undefined4 **)(pcVar28 + 0x8ece0)" identifier = (pointer_expression "**(undefined4 **)(pcVar28 + 0x8ece0)" * (pointer_expression "*(undefined4 **)(pcVar28 + 0x8ece0)" * (cast_expression "(undefined4 **)(pcVar28 + 0x8ece0)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar28 + 0x8ece0)" ( (binary_expression "pcVar28 + 0x8ece0" identifier + number_literal) )))))) ;) (expression_statement "puVar23 = *(undefined4 **)(pcVar28 + 0x8ecf8);" (assignment_expression "puVar23 = *(undefined4 **)(pcVar28 + 0x8ecf8)" identifier = (pointer_expression "*(undefined4 **)(pcVar28 + 0x8ecf8)" * (cast_expression "(undefined4 **)(pcVar28 + 0x8ecf8)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar28 + 0x8ecf8)" ( (binary_expression "pcVar28 + 0x8ecf8" identifier + number_literal) ))))) ;) (expression_statement "uStack_8184 = uVar6;" (assignment_expression "uStack_8184 = uVar6" identifier = identifier) ;) (expression_statement "puStack_8180 = puVar1;" (assignment_expression "puStack_8180 = puVar1" identifier = identifier) ;) (expression_statement "pcStack_817c = pcVar30;" (assignment_expression "pcStack_817c = pcVar30" identifier = identifier) ;) (expression_statement "iStack_8174 = iVar4;" (assignment_expression "iStack_8174 = iVar4" identifier = identifier) ;) (expression_statement "uStack_8170 = uVar17;" (assignment_expression "uStack_8170 = uVar17" identifier = identifier) ;) (expression_statement "uStack_816c = uVar7;" (assignment_expression "uStack_816c = uVar7" identifier = identifier) ;) (expression_statement "(**(code **)(pcVar28 + 0x8ec90))(*(int *)(pcVar28 + 0x8e190) + -0x4e28,1,6,*puVar23);" (call_expression "(**(code **)(pcVar28 + 0x8ec90))(*(int *)(pcVar28 + 0x8e190) + -0x4e28,1,6,*puVar23)" (parenthesized_expression "(**(code **)(pcVar28 + 0x8ec90))" ( (pointer_expression "**(code **)(pcVar28 + 0x8ec90)" * (pointer_expression "*(code **)(pcVar28 + 0x8ec90)" * (cast_expression "(code **)(pcVar28 + 0x8ec90)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar28 + 0x8ec90)" ( (binary_expression "pcVar28 + 0x8ec90" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcVar28 + 0x8e190) + -0x4e28,1,6,*puVar23)" ( (binary_expression "*(int *)(pcVar28 + 0x8e190) + -0x4e28" (pointer_expression "*(int *)(pcVar28 + 0x8e190)" * (cast_expression "(int *)(pcVar28 + 0x8e190)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar28 + 0x8e190)" ( (binary_expression "pcVar28 + 0x8e190" identifier + number_literal) )))) + number_literal) , number_literal , number_literal , (pointer_expression "*puVar23" * identifier) ))) ;) (expression_statement "piStack_8190 = &iStack_8174;" (assignment_expression "piStack_8190 = &iStack_8174" identifier = (pointer_expression "&iStack_8174" & identifier)) ;) (expression_statement "(**(code **)(pcStack_8198 + -0x7444))(*puVar23,1,uVar12);" (call_expression "(**(code **)(pcStack_8198 + -0x7444))(*puVar23,1,uVar12)" (parenthesized_expression "(**(code **)(pcStack_8198 + -0x7444))" ( (pointer_expression "**(code **)(pcStack_8198 + -0x7444)" * (pointer_expression "*(code **)(pcStack_8198 + -0x7444)" * (cast_expression "(code **)(pcStack_8198 + -0x7444)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_8198 + -0x7444)" ( (binary_expression "pcStack_8198 + -0x7444" identifier + number_literal) ))))) )) (argument_list "(*puVar23,1,uVar12)" ( (pointer_expression "*puVar23" * identifier) , number_literal , identifier ))) ;) (expression_statement "iVar15 = 1;" (assignment_expression "iVar15 = 1" identifier = number_literal) ;) (expression_statement "(**(code **)(pcStack_8198 + -0x74c8))(*(int *)(pcStack_8198 + -0x7fc8) + -0x481c,1,0x27,*puVar23);" (call_expression "(**(code **)(pcStack_8198 + -0x74c8))(*(int *)(pcStack_8198 + -0x7fc8) + -0x481c,1,0x27,*puVar23)" (parenthesized_expression "(**(code **)(pcStack_8198 + -0x74c8))" ( (pointer_expression "**(code **)(pcStack_8198 + -0x74c8)" * (pointer_expression "*(code **)(pcStack_8198 + -0x74c8)" * (cast_expression "(code **)(pcStack_8198 + -0x74c8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_8198 + -0x74c8)" ( (binary_expression "pcStack_8198 + -0x74c8" identifier + number_literal) ))))) )) (argument_list "(*(int *)(pcStack_8198 + -0x7fc8) + -0x481c,1,0x27,*puVar23)" ( (binary_expression "*(int *)(pcStack_8198 + -0x7fc8) + -0x481c" (pointer_expression "*(int *)(pcStack_8198 + -0x7fc8)" * (cast_expression "(int *)(pcStack_8198 + -0x7fc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_8198 + -0x7fc8)" ( (binary_expression "pcStack_8198 + -0x7fc8" identifier + number_literal) )))) + number_literal) , number_literal , number_literal , (pointer_expression "*puVar23" * identifier) ))) ;) (expression_statement "iVar4 = 1;" (assignment_expression "iVar4 = 1" identifier = number_literal) ;) (expression_statement "pcVar28 = *(code **)(pcStack_8198 + -0x7504);" (assignment_expression "pcVar28 = *(code **)(pcStack_8198 + -0x7504)" identifier = (pointer_expression "*(code **)(pcStack_8198 + -0x7504)" * (cast_expression "(code **)(pcStack_8198 + -0x7504)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_8198 + -0x7504)" ( (binary_expression "pcStack_8198 + -0x7504" identifier + number_literal) ))))) ;) (expression_statement "pcVar30 = psftp_main;" (assignment_expression "pcVar30 = psftp_main" identifier = identifier) ;) (expression_statement "(*pcVar28)();" (call_expression "(*pcVar28)()" (parenthesized_expression "(*pcVar28)" ( (pointer_expression "*pcVar28" * identifier) )) (argument_list "()" ( ))) ;) (expression_statement "pcStack_81e8 = pcVar28 + 0x9609c;" (assignment_expression "pcStack_81e8 = pcVar28 + 0x9609c" identifier = (binary_expression "pcVar28 + 0x9609c" identifier + number_literal)) ;) (expression_statement "puStack_81d4 = (undefined4 *)**(undefined4 **)(pcVar28 + 0x8ec24);" (assignment_expression "puStack_81d4 = (undefined4 *)**(undefined4 **)(pcVar28 + 0x8ec24)" identifier = (cast_expression "(undefined4 *)**(undefined4 **)(pcVar28 + 0x8ec24)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "**(undefined4 **)(pcVar28 + 0x8ec24)" * (pointer_expression "*(undefined4 **)(pcVar28 + 0x8ec24)" * (cast_expression "(undefined4 **)(pcVar28 + 0x8ec24)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar28 + 0x8ec24)" ( (binary_expression "pcVar28 + 0x8ec24" identifier + number_literal) ))))))) ;) (expression_statement "**(undefined4 **)(pcVar28 + 0x8e144) = 1;" (assignment_expression "**(undefined4 **)(pcVar28 + 0x8e144) = 1" (pointer_expression "**(undefined4 **)(pcVar28 + 0x8e144)" * (pointer_expression "*(undefined4 **)(pcVar28 + 0x8e144)" * (cast_expression "(undefined4 **)(pcVar28 + 0x8e144)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar28 + 0x8e144)" ( (binary_expression "pcVar28 + 0x8e144" identifier + number_literal) ))))) = number_literal) ;) (expression_statement "**(undefined4 **)(pcVar28 + 0x8e158) = 2;" (assignment_expression "**(undefined4 **)(pcVar28 + 0x8e158) = 2" (pointer_expression "**(undefined4 **)(pcVar28 + 0x8e158)" * (pointer_expression "*(undefined4 **)(pcVar28 + 0x8e158)" * (cast_expression "(undefined4 **)(pcVar28 + 0x8e158)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar28 + 0x8e158)" ( (binary_expression "pcVar28 + 0x8e158" identifier + number_literal) ))))) = number_literal) ;) (expression_statement "**(undefined4 **)(pcVar28 + 0x8e120) = 1;" (assignment_expression "**(undefined4 **)(pcVar28 + 0x8e120) = 1" (pointer_expression "**(undefined4 **)(pcVar28 + 0x8e120)" * (pointer_expression "*(undefined4 **)(pcVar28 + 0x8e120)" * (cast_expression "(undefined4 **)(pcVar28 + 0x8e120)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar28 + 0x8e120)" ( (binary_expression "pcVar28 + 0x8e120" identifier + number_literal) ))))) = number_literal) ;) (expression_statement "puStack_81d0 = puVar23;" (assignment_expression "puStack_81d0 = puVar23" identifier = identifier) ;) (expression_statement "uStack_81cc = uVar12;" (assignment_expression "uStack_81cc = uVar12" identifier = identifier) ;) (expression_statement "puStack_81c8 = param_1;" (assignment_expression "puStack_81c8 = param_1" identifier = identifier) ;) (expression_statement "puStack_81c4 = unaff_s3;" (assignment_expression "puStack_81c4 = unaff_s3" identifier = identifier) ;) (expression_statement "iStack_81c0 = iVar24;" (assignment_expression "iStack_81c0 = iVar24" identifier = identifier) ;) (expression_statement "iStack_81bc = unaff_s5;" (assignment_expression "iStack_81bc = unaff_s5" identifier = identifier) ;) (expression_statement "piStack_81b8 = &iStack_80d8;" (assignment_expression "piStack_81b8 = &iStack_80d8" identifier = (pointer_expression "&iStack_80d8" & identifier)) ;) (expression_statement "iStack_81b4 = unaff_s7;" (assignment_expression "iStack_81b4 = unaff_s7" identifier = identifier) ;) (expression_statement "iStack_81b0 = iVar2;" (assignment_expression "iStack_81b0 = iVar2" identifier = identifier) ;) (expression_statement "pcStack_81ac = pcVar30;" (assignment_expression "pcStack_81ac = pcVar30" identifier = identifier) ;) (expression_statement "(**(code **)(pcVar28 + 0x8e444))();" (call_expression "(**(code **)(pcVar28 + 0x8e444))()" (parenthesized_expression "(**(code **)(pcVar28 + 0x8e444))" ( (pointer_expression "**(code **)(pcVar28 + 0x8e444)" * (pointer_expression "*(code **)(pcVar28 + 0x8e444)" * (cast_expression "(code **)(pcVar28 + 0x8e444)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar28 + 0x8e444)" ( (binary_expression "pcVar28 + 0x8e444" identifier + number_literal) ))))) )) (argument_list "()" ( ))) ;) (expression_statement "uVar7 = conf_new();" (assignment_expression "uVar7 = conf_new()" identifier = (call_expression "conf_new()" identifier (argument_list "()" ( )))) ;) (expression_statement "*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31fc) = uVar7;" (assignment_expression "*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31fc) = uVar7" (pointer_expression "*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31fc)" * (cast_expression "(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31fc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31fc)" ( (binary_expression "*(int *)(pcStack_81e8 + -0x7fd8) + -0x31fc" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fd8)" * (cast_expression "(int *)(pcStack_81e8 + -0x7fd8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_81e8 + -0x7fd8)" ( (binary_expression "pcStack_81e8 + -0x7fd8" identifier + number_literal) )))) + number_literal) )))) = identifier) ;) (expression_statement "do_defaults(0,uVar7);" (call_expression "do_defaults(0,uVar7)" identifier (argument_list "(0,uVar7)" ( number_literal , identifier ))) ;) (expression_statement "**(undefined4 **)(pcStack_81e8 + -0x7f60) = 0;" (assignment_expression "**(undefined4 **)(pcStack_81e8 + -0x7f60) = 0" (pointer_expression "**(undefined4 **)(pcStack_81e8 + -0x7f60)" * (pointer_expression "*(undefined4 **)(pcStack_81e8 + -0x7f60)" * (cast_expression "(undefined4 **)(pcStack_81e8 + -0x7f60)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_81e8 + -0x7f60)" ( (binary_expression "pcStack_81e8 + -0x7f60" identifier + number_literal) ))))) = number_literal) ;) (expression_statement "pcVar28 = pcStack_81e8;" (assignment_expression "pcVar28 = pcStack_81e8" identifier = identifier) ;) (if_statement "if (iVar4 < 2) {\n    iVar2 = 1;\n  }\n  else {\n    pcVar13 = *(char **)(iVar15 + 4);\n    piVar19 = (int *)(iVar15 + 4);\n    if (*pcVar13 == '-') {\n      iVar25 = *(int *)(pcStack_81e8 + -0x7fd8);\n      iVar26 = *(int *)(pcStack_81e8 + -0x7fc8);\n      pcVar27 = (char *)(*(int *)(pcStack_81e8 + -0x7fc8) + -0x47b8);\n      iVar29 = *(int *)(pcStack_81e8 + -0x7fc8);\n      pcStack_81dc = (code *)(*(int *)(pcStack_81e8 + -0x7db0) + -0x79e4);\n      iVar24 = 1;\nLAB_0002e488:\n      iVar2 = iVar24 + 1;\n      uVar7 = 0;\n      if (iVar2 < iVar4) {\n        uVar7 = *(undefined4 *)(iVar15 + (iVar24 + 1) * 4);\n      }\n      iVar8 = cmdline_process_param(pcVar13,uVar7,1,*(undefined4 *)(iVar25 + -0x31fc));\n      pcVar28 = pcStack_81e8;\n      if (iVar8 == -2) {\n        cmdline_error(*(int *)(pcStack_81e8 + -0x7fc8) + -0x47e4,*piVar19);\n        uVar7 = extraout_v1;\nLAB_0002e1d0:\n        iVar2 = iVar24;\n        if ((**(uint **)(pcVar28 + -0x7f44) & 1) != 0) {\n          *(undefined4 *)(*(int *)(pcVar28 + -0x7fd8) + -0x31c8) = uVar7;\n        }\n        goto LAB_0002e464;\n      }\n      uVar7 = 1;\n      if (iVar8 == 2) goto LAB_0002e464;\n      if (iVar8 == 1) goto LAB_0002e1d0;\n      iVar20 = *piVar19;\n      iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar26 + -0x47c0);\n      if (iVar8 == 0) {\n        (**(code **)(pcStack_81e8 + -0x7c54))();\n        uVar3 = 1;\n        goto LAB_0002e878;\n      }\n      iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20);\n      if (iVar8 == 0) {\n        *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31cc) = 1;\n        pcVar28 = pcStack_81e8;\n        iVar2 = iVar24;\n      }\n      else {\n        iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar29 + -0x47b4);\n        if (iVar8 == 0) {\n          *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d0) = 1;\n          pcVar28 = pcStack_81e8;\n          iVar2 = iVar24;\n        }\n        else {\n          iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                            (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47b0);\n          if (iVar8 == 0) {\n            *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fa8) = 0;\n            pcVar28 = pcStack_81e8;\n            iVar2 = iVar24;\n          }\n          else {\n            iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                              (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47ac);\n            if ((iVar8 != 0) &&\n               (iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                  (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47a8), iVar8 != 0))\n            {\n              iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47a4);\n              if (iVar8 != 0) {\n                iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                  (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x479c);\n                iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                if (iVar8 == 0) {\nLAB_0002e348:\n                  pcVar28 = pcStack_81e8;\n                  version();\n                }\n                else {\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar16 + -0x4798);\n                  iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                  if (iVar8 == 0) goto LAB_0002e348;\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar16 + -0x478c);\n                  iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                  pcVar28 = pcStack_81e8;\n                  if (iVar8 == 0) {\n                    *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31c4) = 1;\n                    iVar2 = iVar24;\n                    goto LAB_0002e464;\n                  }\n                }\n                iVar8 = (**(code **)(pcVar28 + -0x743c))(iVar20,iVar16 + -0x4788);\n                if (iVar8 == 0) {\n                  **(undefined4 **)(pcStack_81e8 + -0x7c4c) = 1;\n                  pcVar28 = pcStack_81e8;\n                  iVar2 = iVar24;\n                }\n                else {\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                    (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4780);\n                  if (iVar8 == 0) {\n                    *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31dc) = 1;\n                    pcVar28 = pcStack_81e8;\n                    iVar2 = iVar24;\n                  }\n                  else {\n                    iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                      (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4778);\n                    if (iVar8 == 0) {\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac) = 0;\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0) = 1;\n                      pcVar28 = pcStack_81e8;\n                      iVar2 = iVar24;\n                      goto LAB_0002e464;\n                    }\n                    iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                      (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4770);\n                    if (iVar8 == 0) {\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac) = 1;\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0) = 0;\n                      pcVar28 = pcStack_81e8;\n                      iVar2 = iVar24;\n                    }\n                    else {\n                      iVar24 = (**(code **)(pcStack_81e8 + -0x743c))\n                                         (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4768);\n                      pcVar28 = pcStack_81e8;\n                      if (iVar24 == 0) goto LAB_0002e52c;\n                      cmdline_error(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4764,iVar20);\n                    }\n                  }\n                }\n                goto LAB_0002e464;\n              }\n            }\n            (*pcStack_81dc)();\n            pcVar28 = pcStack_81e8;\n            iVar2 = iVar24;\n          }\n        }\n      }\nLAB_0002e464:\n      iVar2 = iVar2 + 1;\n      if (iVar4 <= iVar2) goto LAB_0002e52c;\n      piVar19 = (int *)(iVar15 + iVar2 * 4);\n      pcVar13 = (char *)*piVar19;\n      iVar24 = iVar2;\n      if (*pcVar13 != '-') goto LAB_0002e52c;\n      goto LAB_0002e488;\n    }\n    iVar2 = 1;\n  }" if (parenthesized_expression "(iVar4 < 2)" ( (binary_expression "iVar4 < 2" identifier < number_literal) )) (compound_statement "{\n    iVar2 = 1;\n  }" { (expression_statement "iVar2 = 1;" (assignment_expression "iVar2 = 1" identifier = number_literal) ;) }) (else_clause "else {\n    pcVar13 = *(char **)(iVar15 + 4);\n    piVar19 = (int *)(iVar15 + 4);\n    if (*pcVar13 == '-') {\n      iVar25 = *(int *)(pcStack_81e8 + -0x7fd8);\n      iVar26 = *(int *)(pcStack_81e8 + -0x7fc8);\n      pcVar27 = (char *)(*(int *)(pcStack_81e8 + -0x7fc8) + -0x47b8);\n      iVar29 = *(int *)(pcStack_81e8 + -0x7fc8);\n      pcStack_81dc = (code *)(*(int *)(pcStack_81e8 + -0x7db0) + -0x79e4);\n      iVar24 = 1;\nLAB_0002e488:\n      iVar2 = iVar24 + 1;\n      uVar7 = 0;\n      if (iVar2 < iVar4) {\n        uVar7 = *(undefined4 *)(iVar15 + (iVar24 + 1) * 4);\n      }\n      iVar8 = cmdline_process_param(pcVar13,uVar7,1,*(undefined4 *)(iVar25 + -0x31fc));\n      pcVar28 = pcStack_81e8;\n      if (iVar8 == -2) {\n        cmdline_error(*(int *)(pcStack_81e8 + -0x7fc8) + -0x47e4,*piVar19);\n        uVar7 = extraout_v1;\nLAB_0002e1d0:\n        iVar2 = iVar24;\n        if ((**(uint **)(pcVar28 + -0x7f44) & 1) != 0) {\n          *(undefined4 *)(*(int *)(pcVar28 + -0x7fd8) + -0x31c8) = uVar7;\n        }\n        goto LAB_0002e464;\n      }\n      uVar7 = 1;\n      if (iVar8 == 2) goto LAB_0002e464;\n      if (iVar8 == 1) goto LAB_0002e1d0;\n      iVar20 = *piVar19;\n      iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar26 + -0x47c0);\n      if (iVar8 == 0) {\n        (**(code **)(pcStack_81e8 + -0x7c54))();\n        uVar3 = 1;\n        goto LAB_0002e878;\n      }\n      iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20);\n      if (iVar8 == 0) {\n        *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31cc) = 1;\n        pcVar28 = pcStack_81e8;\n        iVar2 = iVar24;\n      }\n      else {\n        iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar29 + -0x47b4);\n        if (iVar8 == 0) {\n          *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d0) = 1;\n          pcVar28 = pcStack_81e8;\n          iVar2 = iVar24;\n        }\n        else {\n          iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                            (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47b0);\n          if (iVar8 == 0) {\n            *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fa8) = 0;\n            pcVar28 = pcStack_81e8;\n            iVar2 = iVar24;\n          }\n          else {\n            iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                              (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47ac);\n            if ((iVar8 != 0) &&\n               (iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                  (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47a8), iVar8 != 0))\n            {\n              iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47a4);\n              if (iVar8 != 0) {\n                iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                  (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x479c);\n                iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                if (iVar8 == 0) {\nLAB_0002e348:\n                  pcVar28 = pcStack_81e8;\n                  version();\n                }\n                else {\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar16 + -0x4798);\n                  iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                  if (iVar8 == 0) goto LAB_0002e348;\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar16 + -0x478c);\n                  iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                  pcVar28 = pcStack_81e8;\n                  if (iVar8 == 0) {\n                    *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31c4) = 1;\n                    iVar2 = iVar24;\n                    goto LAB_0002e464;\n                  }\n                }\n                iVar8 = (**(code **)(pcVar28 + -0x743c))(iVar20,iVar16 + -0x4788);\n                if (iVar8 == 0) {\n                  **(undefined4 **)(pcStack_81e8 + -0x7c4c) = 1;\n                  pcVar28 = pcStack_81e8;\n                  iVar2 = iVar24;\n                }\n                else {\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                    (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4780);\n                  if (iVar8 == 0) {\n                    *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31dc) = 1;\n                    pcVar28 = pcStack_81e8;\n                    iVar2 = iVar24;\n                  }\n                  else {\n                    iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                      (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4778);\n                    if (iVar8 == 0) {\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac) = 0;\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0) = 1;\n                      pcVar28 = pcStack_81e8;\n                      iVar2 = iVar24;\n                      goto LAB_0002e464;\n                    }\n                    iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                      (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4770);\n                    if (iVar8 == 0) {\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac) = 1;\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0) = 0;\n                      pcVar28 = pcStack_81e8;\n                      iVar2 = iVar24;\n                    }\n                    else {\n                      iVar24 = (**(code **)(pcStack_81e8 + -0x743c))\n                                         (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4768);\n                      pcVar28 = pcStack_81e8;\n                      if (iVar24 == 0) goto LAB_0002e52c;\n                      cmdline_error(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4764,iVar20);\n                    }\n                  }\n                }\n                goto LAB_0002e464;\n              }\n            }\n            (*pcStack_81dc)();\n            pcVar28 = pcStack_81e8;\n            iVar2 = iVar24;\n          }\n        }\n      }\nLAB_0002e464:\n      iVar2 = iVar2 + 1;\n      if (iVar4 <= iVar2) goto LAB_0002e52c;\n      piVar19 = (int *)(iVar15 + iVar2 * 4);\n      pcVar13 = (char *)*piVar19;\n      iVar24 = iVar2;\n      if (*pcVar13 != '-') goto LAB_0002e52c;\n      goto LAB_0002e488;\n    }\n    iVar2 = 1;\n  }" else (compound_statement "{\n    pcVar13 = *(char **)(iVar15 + 4);\n    piVar19 = (int *)(iVar15 + 4);\n    if (*pcVar13 == '-') {\n      iVar25 = *(int *)(pcStack_81e8 + -0x7fd8);\n      iVar26 = *(int *)(pcStack_81e8 + -0x7fc8);\n      pcVar27 = (char *)(*(int *)(pcStack_81e8 + -0x7fc8) + -0x47b8);\n      iVar29 = *(int *)(pcStack_81e8 + -0x7fc8);\n      pcStack_81dc = (code *)(*(int *)(pcStack_81e8 + -0x7db0) + -0x79e4);\n      iVar24 = 1;\nLAB_0002e488:\n      iVar2 = iVar24 + 1;\n      uVar7 = 0;\n      if (iVar2 < iVar4) {\n        uVar7 = *(undefined4 *)(iVar15 + (iVar24 + 1) * 4);\n      }\n      iVar8 = cmdline_process_param(pcVar13,uVar7,1,*(undefined4 *)(iVar25 + -0x31fc));\n      pcVar28 = pcStack_81e8;\n      if (iVar8 == -2) {\n        cmdline_error(*(int *)(pcStack_81e8 + -0x7fc8) + -0x47e4,*piVar19);\n        uVar7 = extraout_v1;\nLAB_0002e1d0:\n        iVar2 = iVar24;\n        if ((**(uint **)(pcVar28 + -0x7f44) & 1) != 0) {\n          *(undefined4 *)(*(int *)(pcVar28 + -0x7fd8) + -0x31c8) = uVar7;\n        }\n        goto LAB_0002e464;\n      }\n      uVar7 = 1;\n      if (iVar8 == 2) goto LAB_0002e464;\n      if (iVar8 == 1) goto LAB_0002e1d0;\n      iVar20 = *piVar19;\n      iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar26 + -0x47c0);\n      if (iVar8 == 0) {\n        (**(code **)(pcStack_81e8 + -0x7c54))();\n        uVar3 = 1;\n        goto LAB_0002e878;\n      }\n      iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20);\n      if (iVar8 == 0) {\n        *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31cc) = 1;\n        pcVar28 = pcStack_81e8;\n        iVar2 = iVar24;\n      }\n      else {\n        iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar29 + -0x47b4);\n        if (iVar8 == 0) {\n          *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d0) = 1;\n          pcVar28 = pcStack_81e8;\n          iVar2 = iVar24;\n        }\n        else {\n          iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                            (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47b0);\n          if (iVar8 == 0) {\n            *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fa8) = 0;\n            pcVar28 = pcStack_81e8;\n            iVar2 = iVar24;\n          }\n          else {\n            iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                              (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47ac);\n            if ((iVar8 != 0) &&\n               (iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                  (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47a8), iVar8 != 0))\n            {\n              iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47a4);\n              if (iVar8 != 0) {\n                iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                  (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x479c);\n                iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                if (iVar8 == 0) {\nLAB_0002e348:\n                  pcVar28 = pcStack_81e8;\n                  version();\n                }\n                else {\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar16 + -0x4798);\n                  iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                  if (iVar8 == 0) goto LAB_0002e348;\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar16 + -0x478c);\n                  iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                  pcVar28 = pcStack_81e8;\n                  if (iVar8 == 0) {\n                    *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31c4) = 1;\n                    iVar2 = iVar24;\n                    goto LAB_0002e464;\n                  }\n                }\n                iVar8 = (**(code **)(pcVar28 + -0x743c))(iVar20,iVar16 + -0x4788);\n                if (iVar8 == 0) {\n                  **(undefined4 **)(pcStack_81e8 + -0x7c4c) = 1;\n                  pcVar28 = pcStack_81e8;\n                  iVar2 = iVar24;\n                }\n                else {\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                    (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4780);\n                  if (iVar8 == 0) {\n                    *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31dc) = 1;\n                    pcVar28 = pcStack_81e8;\n                    iVar2 = iVar24;\n                  }\n                  else {\n                    iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                      (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4778);\n                    if (iVar8 == 0) {\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac) = 0;\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0) = 1;\n                      pcVar28 = pcStack_81e8;\n                      iVar2 = iVar24;\n                      goto LAB_0002e464;\n                    }\n                    iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                      (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4770);\n                    if (iVar8 == 0) {\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac) = 1;\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0) = 0;\n                      pcVar28 = pcStack_81e8;\n                      iVar2 = iVar24;\n                    }\n                    else {\n                      iVar24 = (**(code **)(pcStack_81e8 + -0x743c))\n                                         (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4768);\n                      pcVar28 = pcStack_81e8;\n                      if (iVar24 == 0) goto LAB_0002e52c;\n                      cmdline_error(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4764,iVar20);\n                    }\n                  }\n                }\n                goto LAB_0002e464;\n              }\n            }\n            (*pcStack_81dc)();\n            pcVar28 = pcStack_81e8;\n            iVar2 = iVar24;\n          }\n        }\n      }\nLAB_0002e464:\n      iVar2 = iVar2 + 1;\n      if (iVar4 <= iVar2) goto LAB_0002e52c;\n      piVar19 = (int *)(iVar15 + iVar2 * 4);\n      pcVar13 = (char *)*piVar19;\n      iVar24 = iVar2;\n      if (*pcVar13 != '-') goto LAB_0002e52c;\n      goto LAB_0002e488;\n    }\n    iVar2 = 1;\n  }" { (expression_statement "pcVar13 = *(char **)(iVar15 + 4);" (assignment_expression "pcVar13 = *(char **)(iVar15 + 4)" identifier = (pointer_expression "*(char **)(iVar15 + 4)" * (cast_expression "(char **)(iVar15 + 4)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar15 + 4)" ( (binary_expression "iVar15 + 4" identifier + number_literal) ))))) ;) (expression_statement "piVar19 = (int *)(iVar15 + 4);" (assignment_expression "piVar19 = (int *)(iVar15 + 4)" identifier = (cast_expression "(int *)(iVar15 + 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar15 + 4)" ( (binary_expression "iVar15 + 4" identifier + number_literal) )))) ;) (if_statement "if (*pcVar13 == '-') {\n      iVar25 = *(int *)(pcStack_81e8 + -0x7fd8);\n      iVar26 = *(int *)(pcStack_81e8 + -0x7fc8);\n      pcVar27 = (char *)(*(int *)(pcStack_81e8 + -0x7fc8) + -0x47b8);\n      iVar29 = *(int *)(pcStack_81e8 + -0x7fc8);\n      pcStack_81dc = (code *)(*(int *)(pcStack_81e8 + -0x7db0) + -0x79e4);\n      iVar24 = 1;\nLAB_0002e488:\n      iVar2 = iVar24 + 1;\n      uVar7 = 0;\n      if (iVar2 < iVar4) {\n        uVar7 = *(undefined4 *)(iVar15 + (iVar24 + 1) * 4);\n      }\n      iVar8 = cmdline_process_param(pcVar13,uVar7,1,*(undefined4 *)(iVar25 + -0x31fc));\n      pcVar28 = pcStack_81e8;\n      if (iVar8 == -2) {\n        cmdline_error(*(int *)(pcStack_81e8 + -0x7fc8) + -0x47e4,*piVar19);\n        uVar7 = extraout_v1;\nLAB_0002e1d0:\n        iVar2 = iVar24;\n        if ((**(uint **)(pcVar28 + -0x7f44) & 1) != 0) {\n          *(undefined4 *)(*(int *)(pcVar28 + -0x7fd8) + -0x31c8) = uVar7;\n        }\n        goto LAB_0002e464;\n      }\n      uVar7 = 1;\n      if (iVar8 == 2) goto LAB_0002e464;\n      if (iVar8 == 1) goto LAB_0002e1d0;\n      iVar20 = *piVar19;\n      iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar26 + -0x47c0);\n      if (iVar8 == 0) {\n        (**(code **)(pcStack_81e8 + -0x7c54))();\n        uVar3 = 1;\n        goto LAB_0002e878;\n      }\n      iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20);\n      if (iVar8 == 0) {\n        *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31cc) = 1;\n        pcVar28 = pcStack_81e8;\n        iVar2 = iVar24;\n      }\n      else {\n        iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar29 + -0x47b4);\n        if (iVar8 == 0) {\n          *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d0) = 1;\n          pcVar28 = pcStack_81e8;\n          iVar2 = iVar24;\n        }\n        else {\n          iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                            (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47b0);\n          if (iVar8 == 0) {\n            *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fa8) = 0;\n            pcVar28 = pcStack_81e8;\n            iVar2 = iVar24;\n          }\n          else {\n            iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                              (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47ac);\n            if ((iVar8 != 0) &&\n               (iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                  (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47a8), iVar8 != 0))\n            {\n              iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47a4);\n              if (iVar8 != 0) {\n                iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                  (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x479c);\n                iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                if (iVar8 == 0) {\nLAB_0002e348:\n                  pcVar28 = pcStack_81e8;\n                  version();\n                }\n                else {\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar16 + -0x4798);\n                  iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                  if (iVar8 == 0) goto LAB_0002e348;\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar16 + -0x478c);\n                  iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                  pcVar28 = pcStack_81e8;\n                  if (iVar8 == 0) {\n                    *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31c4) = 1;\n                    iVar2 = iVar24;\n                    goto LAB_0002e464;\n                  }\n                }\n                iVar8 = (**(code **)(pcVar28 + -0x743c))(iVar20,iVar16 + -0x4788);\n                if (iVar8 == 0) {\n                  **(undefined4 **)(pcStack_81e8 + -0x7c4c) = 1;\n                  pcVar28 = pcStack_81e8;\n                  iVar2 = iVar24;\n                }\n                else {\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                    (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4780);\n                  if (iVar8 == 0) {\n                    *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31dc) = 1;\n                    pcVar28 = pcStack_81e8;\n                    iVar2 = iVar24;\n                  }\n                  else {\n                    iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                      (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4778);\n                    if (iVar8 == 0) {\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac) = 0;\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0) = 1;\n                      pcVar28 = pcStack_81e8;\n                      iVar2 = iVar24;\n                      goto LAB_0002e464;\n                    }\n                    iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                      (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4770);\n                    if (iVar8 == 0) {\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac) = 1;\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0) = 0;\n                      pcVar28 = pcStack_81e8;\n                      iVar2 = iVar24;\n                    }\n                    else {\n                      iVar24 = (**(code **)(pcStack_81e8 + -0x743c))\n                                         (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4768);\n                      pcVar28 = pcStack_81e8;\n                      if (iVar24 == 0) goto LAB_0002e52c;\n                      cmdline_error(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4764,iVar20);\n                    }\n                  }\n                }\n                goto LAB_0002e464;\n              }\n            }\n            (*pcStack_81dc)();\n            pcVar28 = pcStack_81e8;\n            iVar2 = iVar24;\n          }\n        }\n      }\nLAB_0002e464:\n      iVar2 = iVar2 + 1;\n      if (iVar4 <= iVar2) goto LAB_0002e52c;\n      piVar19 = (int *)(iVar15 + iVar2 * 4);\n      pcVar13 = (char *)*piVar19;\n      iVar24 = iVar2;\n      if (*pcVar13 != '-') goto LAB_0002e52c;\n      goto LAB_0002e488;\n    }" if (parenthesized_expression "(*pcVar13 == '-')" ( (binary_expression "*pcVar13 == '-'" (pointer_expression "*pcVar13" * identifier) == (char_literal "'-'" ' character ')) )) (compound_statement "{\n      iVar25 = *(int *)(pcStack_81e8 + -0x7fd8);\n      iVar26 = *(int *)(pcStack_81e8 + -0x7fc8);\n      pcVar27 = (char *)(*(int *)(pcStack_81e8 + -0x7fc8) + -0x47b8);\n      iVar29 = *(int *)(pcStack_81e8 + -0x7fc8);\n      pcStack_81dc = (code *)(*(int *)(pcStack_81e8 + -0x7db0) + -0x79e4);\n      iVar24 = 1;\nLAB_0002e488:\n      iVar2 = iVar24 + 1;\n      uVar7 = 0;\n      if (iVar2 < iVar4) {\n        uVar7 = *(undefined4 *)(iVar15 + (iVar24 + 1) * 4);\n      }\n      iVar8 = cmdline_process_param(pcVar13,uVar7,1,*(undefined4 *)(iVar25 + -0x31fc));\n      pcVar28 = pcStack_81e8;\n      if (iVar8 == -2) {\n        cmdline_error(*(int *)(pcStack_81e8 + -0x7fc8) + -0x47e4,*piVar19);\n        uVar7 = extraout_v1;\nLAB_0002e1d0:\n        iVar2 = iVar24;\n        if ((**(uint **)(pcVar28 + -0x7f44) & 1) != 0) {\n          *(undefined4 *)(*(int *)(pcVar28 + -0x7fd8) + -0x31c8) = uVar7;\n        }\n        goto LAB_0002e464;\n      }\n      uVar7 = 1;\n      if (iVar8 == 2) goto LAB_0002e464;\n      if (iVar8 == 1) goto LAB_0002e1d0;\n      iVar20 = *piVar19;\n      iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar26 + -0x47c0);\n      if (iVar8 == 0) {\n        (**(code **)(pcStack_81e8 + -0x7c54))();\n        uVar3 = 1;\n        goto LAB_0002e878;\n      }\n      iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20);\n      if (iVar8 == 0) {\n        *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31cc) = 1;\n        pcVar28 = pcStack_81e8;\n        iVar2 = iVar24;\n      }\n      else {\n        iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar29 + -0x47b4);\n        if (iVar8 == 0) {\n          *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d0) = 1;\n          pcVar28 = pcStack_81e8;\n          iVar2 = iVar24;\n        }\n        else {\n          iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                            (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47b0);\n          if (iVar8 == 0) {\n            *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fa8) = 0;\n            pcVar28 = pcStack_81e8;\n            iVar2 = iVar24;\n          }\n          else {\n            iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                              (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47ac);\n            if ((iVar8 != 0) &&\n               (iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                  (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47a8), iVar8 != 0))\n            {\n              iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47a4);\n              if (iVar8 != 0) {\n                iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                  (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x479c);\n                iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                if (iVar8 == 0) {\nLAB_0002e348:\n                  pcVar28 = pcStack_81e8;\n                  version();\n                }\n                else {\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar16 + -0x4798);\n                  iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                  if (iVar8 == 0) goto LAB_0002e348;\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar16 + -0x478c);\n                  iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                  pcVar28 = pcStack_81e8;\n                  if (iVar8 == 0) {\n                    *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31c4) = 1;\n                    iVar2 = iVar24;\n                    goto LAB_0002e464;\n                  }\n                }\n                iVar8 = (**(code **)(pcVar28 + -0x743c))(iVar20,iVar16 + -0x4788);\n                if (iVar8 == 0) {\n                  **(undefined4 **)(pcStack_81e8 + -0x7c4c) = 1;\n                  pcVar28 = pcStack_81e8;\n                  iVar2 = iVar24;\n                }\n                else {\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                    (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4780);\n                  if (iVar8 == 0) {\n                    *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31dc) = 1;\n                    pcVar28 = pcStack_81e8;\n                    iVar2 = iVar24;\n                  }\n                  else {\n                    iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                      (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4778);\n                    if (iVar8 == 0) {\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac) = 0;\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0) = 1;\n                      pcVar28 = pcStack_81e8;\n                      iVar2 = iVar24;\n                      goto LAB_0002e464;\n                    }\n                    iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                      (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4770);\n                    if (iVar8 == 0) {\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac) = 1;\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0) = 0;\n                      pcVar28 = pcStack_81e8;\n                      iVar2 = iVar24;\n                    }\n                    else {\n                      iVar24 = (**(code **)(pcStack_81e8 + -0x743c))\n                                         (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4768);\n                      pcVar28 = pcStack_81e8;\n                      if (iVar24 == 0) goto LAB_0002e52c;\n                      cmdline_error(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4764,iVar20);\n                    }\n                  }\n                }\n                goto LAB_0002e464;\n              }\n            }\n            (*pcStack_81dc)();\n            pcVar28 = pcStack_81e8;\n            iVar2 = iVar24;\n          }\n        }\n      }\nLAB_0002e464:\n      iVar2 = iVar2 + 1;\n      if (iVar4 <= iVar2) goto LAB_0002e52c;\n      piVar19 = (int *)(iVar15 + iVar2 * 4);\n      pcVar13 = (char *)*piVar19;\n      iVar24 = iVar2;\n      if (*pcVar13 != '-') goto LAB_0002e52c;\n      goto LAB_0002e488;\n    }" { (expression_statement "iVar25 = *(int *)(pcStack_81e8 + -0x7fd8);" (assignment_expression "iVar25 = *(int *)(pcStack_81e8 + -0x7fd8)" identifier = (pointer_expression "*(int *)(pcStack_81e8 + -0x7fd8)" * (cast_expression "(int *)(pcStack_81e8 + -0x7fd8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_81e8 + -0x7fd8)" ( (binary_expression "pcStack_81e8 + -0x7fd8" identifier + number_literal) ))))) ;) (expression_statement "iVar26 = *(int *)(pcStack_81e8 + -0x7fc8);" (assignment_expression "iVar26 = *(int *)(pcStack_81e8 + -0x7fc8)" identifier = (pointer_expression "*(int *)(pcStack_81e8 + -0x7fc8)" * (cast_expression "(int *)(pcStack_81e8 + -0x7fc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_81e8 + -0x7fc8)" ( (binary_expression "pcStack_81e8 + -0x7fc8" identifier + number_literal) ))))) ;) (expression_statement "pcVar27 = (char *)(*(int *)(pcStack_81e8 + -0x7fc8) + -0x47b8);" (assignment_expression "pcVar27 = (char *)(*(int *)(pcStack_81e8 + -0x7fc8) + -0x47b8)" identifier = (cast_expression "(char *)(*(int *)(pcStack_81e8 + -0x7fc8) + -0x47b8)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcStack_81e8 + -0x7fc8) + -0x47b8)" ( (binary_expression "*(int *)(pcStack_81e8 + -0x7fc8) + -0x47b8" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fc8)" * (cast_expression "(int *)(pcStack_81e8 + -0x7fc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_81e8 + -0x7fc8)" ( (binary_expression "pcStack_81e8 + -0x7fc8" identifier + number_literal) )))) + number_literal) )))) ;) (expression_statement "iVar29 = *(int *)(pcStack_81e8 + -0x7fc8);" (assignment_expression "iVar29 = *(int *)(pcStack_81e8 + -0x7fc8)" identifier = (pointer_expression "*(int *)(pcStack_81e8 + -0x7fc8)" * (cast_expression "(int *)(pcStack_81e8 + -0x7fc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_81e8 + -0x7fc8)" ( (binary_expression "pcStack_81e8 + -0x7fc8" identifier + number_literal) ))))) ;) (expression_statement "pcStack_81dc = (code *)(*(int *)(pcStack_81e8 + -0x7db0) + -0x79e4);" (assignment_expression "pcStack_81dc = (code *)(*(int *)(pcStack_81e8 + -0x7db0) + -0x79e4)" identifier = (cast_expression "(code *)(*(int *)(pcStack_81e8 + -0x7db0) + -0x79e4)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcStack_81e8 + -0x7db0) + -0x79e4)" ( (binary_expression "*(int *)(pcStack_81e8 + -0x7db0) + -0x79e4" (pointer_expression "*(int *)(pcStack_81e8 + -0x7db0)" * (cast_expression "(int *)(pcStack_81e8 + -0x7db0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_81e8 + -0x7db0)" ( (binary_expression "pcStack_81e8 + -0x7db0" identifier + number_literal) )))) + number_literal) )))) ;) (expression_statement "iVar24 = 1;" (assignment_expression "iVar24 = 1" identifier = number_literal) ;) (labeled_statement "LAB_0002e488:\n      iVar2 = iVar24 + 1;" statement_identifier : (expression_statement "iVar2 = iVar24 + 1;" (assignment_expression "iVar2 = iVar24 + 1" identifier = (binary_expression "iVar24 + 1" identifier + number_literal)) ;)) (expression_statement "uVar7 = 0;" (assignment_expression "uVar7 = 0" identifier = number_literal) ;) (if_statement "if (iVar2 < iVar4) {\n        uVar7 = *(undefined4 *)(iVar15 + (iVar24 + 1) * 4);\n      }" if (parenthesized_expression "(iVar2 < iVar4)" ( (binary_expression "iVar2 < iVar4" identifier < identifier) )) (compound_statement "{\n        uVar7 = *(undefined4 *)(iVar15 + (iVar24 + 1) * 4);\n      }" { (expression_statement "uVar7 = *(undefined4 *)(iVar15 + (iVar24 + 1) * 4);" (assignment_expression "uVar7 = *(undefined4 *)(iVar15 + (iVar24 + 1) * 4)" identifier = (pointer_expression "*(undefined4 *)(iVar15 + (iVar24 + 1) * 4)" * (cast_expression "(undefined4 *)(iVar15 + (iVar24 + 1) * 4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar15 + (iVar24 + 1) * 4)" ( (binary_expression "iVar15 + (iVar24 + 1) * 4" identifier + (binary_expression "(iVar24 + 1) * 4" (parenthesized_expression "(iVar24 + 1)" ( (binary_expression "iVar24 + 1" identifier + number_literal) )) * number_literal)) ))))) ;) })) (expression_statement "iVar8 = cmdline_process_param(pcVar13,uVar7,1,*(undefined4 *)(iVar25 + -0x31fc));" (assignment_expression "iVar8 = cmdline_process_param(pcVar13,uVar7,1,*(undefined4 *)(iVar25 + -0x31fc))" identifier = (call_expression "cmdline_process_param(pcVar13,uVar7,1,*(undefined4 *)(iVar25 + -0x31fc))" identifier (argument_list "(pcVar13,uVar7,1,*(undefined4 *)(iVar25 + -0x31fc))" ( identifier , identifier , number_literal , (pointer_expression "*(undefined4 *)(iVar25 + -0x31fc)" * (cast_expression "(undefined4 *)(iVar25 + -0x31fc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar25 + -0x31fc)" ( (binary_expression "iVar25 + -0x31fc" identifier + number_literal) )))) )))) ;) (expression_statement "pcVar28 = pcStack_81e8;" (assignment_expression "pcVar28 = pcStack_81e8" identifier = identifier) ;) (if_statement "if (iVar8 == -2) {\n        cmdline_error(*(int *)(pcStack_81e8 + -0x7fc8) + -0x47e4,*piVar19);\n        uVar7 = extraout_v1;\nLAB_0002e1d0:\n        iVar2 = iVar24;\n        if ((**(uint **)(pcVar28 + -0x7f44) & 1) != 0) {\n          *(undefined4 *)(*(int *)(pcVar28 + -0x7fd8) + -0x31c8) = uVar7;\n        }\n        goto LAB_0002e464;\n      }" if (parenthesized_expression "(iVar8 == -2)" ( (binary_expression "iVar8 == -2" identifier == number_literal) )) (compound_statement "{\n        cmdline_error(*(int *)(pcStack_81e8 + -0x7fc8) + -0x47e4,*piVar19);\n        uVar7 = extraout_v1;\nLAB_0002e1d0:\n        iVar2 = iVar24;\n        if ((**(uint **)(pcVar28 + -0x7f44) & 1) != 0) {\n          *(undefined4 *)(*(int *)(pcVar28 + -0x7fd8) + -0x31c8) = uVar7;\n        }\n        goto LAB_0002e464;\n      }" { (expression_statement "cmdline_error(*(int *)(pcStack_81e8 + -0x7fc8) + -0x47e4,*piVar19);" (call_expression "cmdline_error(*(int *)(pcStack_81e8 + -0x7fc8) + -0x47e4,*piVar19)" identifier (argument_list "(*(int *)(pcStack_81e8 + -0x7fc8) + -0x47e4,*piVar19)" ( (binary_expression "*(int *)(pcStack_81e8 + -0x7fc8) + -0x47e4" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fc8)" * (cast_expression "(int *)(pcStack_81e8 + -0x7fc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_81e8 + -0x7fc8)" ( (binary_expression "pcStack_81e8 + -0x7fc8" identifier + number_literal) )))) + number_literal) , (pointer_expression "*piVar19" * identifier) ))) ;) (expression_statement "uVar7 = extraout_v1;" (assignment_expression "uVar7 = extraout_v1" identifier = identifier) ;) (labeled_statement "LAB_0002e1d0:\n        iVar2 = iVar24;" statement_identifier : (expression_statement "iVar2 = iVar24;" (assignment_expression "iVar2 = iVar24" identifier = identifier) ;)) (if_statement "if ((**(uint **)(pcVar28 + -0x7f44) & 1) != 0) {\n          *(undefined4 *)(*(int *)(pcVar28 + -0x7fd8) + -0x31c8) = uVar7;\n        }" if (parenthesized_expression "((**(uint **)(pcVar28 + -0x7f44) & 1) != 0)" ( (binary_expression "(**(uint **)(pcVar28 + -0x7f44) & 1) != 0" (parenthesized_expression "(**(uint **)(pcVar28 + -0x7f44) & 1)" ( (binary_expression "**(uint **)(pcVar28 + -0x7f44) & 1" (pointer_expression "**(uint **)(pcVar28 + -0x7f44)" * (pointer_expression "*(uint **)(pcVar28 + -0x7f44)" * (cast_expression "(uint **)(pcVar28 + -0x7f44)" ( (type_descriptor "uint **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar28 + -0x7f44)" ( (binary_expression "pcVar28 + -0x7f44" identifier + number_literal) ))))) & number_literal) )) != number_literal) )) (compound_statement "{\n          *(undefined4 *)(*(int *)(pcVar28 + -0x7fd8) + -0x31c8) = uVar7;\n        }" { (expression_statement "*(undefined4 *)(*(int *)(pcVar28 + -0x7fd8) + -0x31c8) = uVar7;" (assignment_expression "*(undefined4 *)(*(int *)(pcVar28 + -0x7fd8) + -0x31c8) = uVar7" (pointer_expression "*(undefined4 *)(*(int *)(pcVar28 + -0x7fd8) + -0x31c8)" * (cast_expression "(undefined4 *)(*(int *)(pcVar28 + -0x7fd8) + -0x31c8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar28 + -0x7fd8) + -0x31c8)" ( (binary_expression "*(int *)(pcVar28 + -0x7fd8) + -0x31c8" (pointer_expression "*(int *)(pcVar28 + -0x7fd8)" * (cast_expression "(int *)(pcVar28 + -0x7fd8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar28 + -0x7fd8)" ( (binary_expression "pcVar28 + -0x7fd8" identifier + number_literal) )))) + number_literal) )))) = identifier) ;) })) (goto_statement "goto LAB_0002e464;" goto statement_identifier ;) })) (expression_statement "uVar7 = 1;" (assignment_expression "uVar7 = 1" identifier = number_literal) ;) (if_statement "if (iVar8 == 2) goto LAB_0002e464;" if (parenthesized_expression "(iVar8 == 2)" ( (binary_expression "iVar8 == 2" identifier == number_literal) )) (goto_statement "goto LAB_0002e464;" goto statement_identifier ;)) (if_statement "if (iVar8 == 1) goto LAB_0002e1d0;" if (parenthesized_expression "(iVar8 == 1)" ( (binary_expression "iVar8 == 1" identifier == number_literal) )) (goto_statement "goto LAB_0002e1d0;" goto statement_identifier ;)) (expression_statement "iVar20 = *piVar19;" (assignment_expression "iVar20 = *piVar19" identifier = (pointer_expression "*piVar19" * identifier)) ;) (expression_statement "iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar26 + -0x47c0);" (assignment_expression "iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar26 + -0x47c0)" identifier = (call_expression "(**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar26 + -0x47c0)" (parenthesized_expression "(**(code **)(pcStack_81e8 + -0x743c))" ( (pointer_expression "**(code **)(pcStack_81e8 + -0x743c)" * (pointer_expression "*(code **)(pcStack_81e8 + -0x743c)" * (cast_expression "(code **)(pcStack_81e8 + -0x743c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_81e8 + -0x743c)" ( (binary_expression "pcStack_81e8 + -0x743c" identifier + number_literal) ))))) )) (argument_list "(iVar20,iVar26 + -0x47c0)" ( identifier , (binary_expression "iVar26 + -0x47c0" identifier + number_literal) )))) ;) (if_statement "if (iVar8 == 0) {\n        (**(code **)(pcStack_81e8 + -0x7c54))();\n        uVar3 = 1;\n        goto LAB_0002e878;\n      }" if (parenthesized_expression "(iVar8 == 0)" ( (binary_expression "iVar8 == 0" identifier == number_literal) )) (compound_statement "{\n        (**(code **)(pcStack_81e8 + -0x7c54))();\n        uVar3 = 1;\n        goto LAB_0002e878;\n      }" { (expression_statement "(**(code **)(pcStack_81e8 + -0x7c54))();" (call_expression "(**(code **)(pcStack_81e8 + -0x7c54))()" (parenthesized_expression "(**(code **)(pcStack_81e8 + -0x7c54))" ( (pointer_expression "**(code **)(pcStack_81e8 + -0x7c54)" * (pointer_expression "*(code **)(pcStack_81e8 + -0x7c54)" * (cast_expression "(code **)(pcStack_81e8 + -0x7c54)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_81e8 + -0x7c54)" ( (binary_expression "pcStack_81e8 + -0x7c54" identifier + number_literal) ))))) )) (argument_list "()" ( ))) ;) (expression_statement "uVar3 = 1;" (assignment_expression "uVar3 = 1" identifier = number_literal) ;) (goto_statement "goto LAB_0002e878;" goto statement_identifier ;) })) (expression_statement "iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20);" (assignment_expression "iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20)" identifier = (call_expression "(**(code **)(pcStack_81e8 + -0x743c))(iVar20)" (parenthesized_expression "(**(code **)(pcStack_81e8 + -0x743c))" ( (pointer_expression "**(code **)(pcStack_81e8 + -0x743c)" * (pointer_expression "*(code **)(pcStack_81e8 + -0x743c)" * (cast_expression "(code **)(pcStack_81e8 + -0x743c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_81e8 + -0x743c)" ( (binary_expression "pcStack_81e8 + -0x743c" identifier + number_literal) ))))) )) (argument_list "(iVar20)" ( identifier )))) ;) (if_statement "if (iVar8 == 0) {\n        *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31cc) = 1;\n        pcVar28 = pcStack_81e8;\n        iVar2 = iVar24;\n      }\n      else {\n        iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar29 + -0x47b4);\n        if (iVar8 == 0) {\n          *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d0) = 1;\n          pcVar28 = pcStack_81e8;\n          iVar2 = iVar24;\n        }\n        else {\n          iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                            (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47b0);\n          if (iVar8 == 0) {\n            *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fa8) = 0;\n            pcVar28 = pcStack_81e8;\n            iVar2 = iVar24;\n          }\n          else {\n            iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                              (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47ac);\n            if ((iVar8 != 0) &&\n               (iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                  (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47a8), iVar8 != 0))\n            {\n              iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47a4);\n              if (iVar8 != 0) {\n                iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                  (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x479c);\n                iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                if (iVar8 == 0) {\nLAB_0002e348:\n                  pcVar28 = pcStack_81e8;\n                  version();\n                }\n                else {\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar16 + -0x4798);\n                  iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                  if (iVar8 == 0) goto LAB_0002e348;\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar16 + -0x478c);\n                  iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                  pcVar28 = pcStack_81e8;\n                  if (iVar8 == 0) {\n                    *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31c4) = 1;\n                    iVar2 = iVar24;\n                    goto LAB_0002e464;\n                  }\n                }\n                iVar8 = (**(code **)(pcVar28 + -0x743c))(iVar20,iVar16 + -0x4788);\n                if (iVar8 == 0) {\n                  **(undefined4 **)(pcStack_81e8 + -0x7c4c) = 1;\n                  pcVar28 = pcStack_81e8;\n                  iVar2 = iVar24;\n                }\n                else {\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                    (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4780);\n                  if (iVar8 == 0) {\n                    *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31dc) = 1;\n                    pcVar28 = pcStack_81e8;\n                    iVar2 = iVar24;\n                  }\n                  else {\n                    iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                      (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4778);\n                    if (iVar8 == 0) {\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac) = 0;\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0) = 1;\n                      pcVar28 = pcStack_81e8;\n                      iVar2 = iVar24;\n                      goto LAB_0002e464;\n                    }\n                    iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                      (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4770);\n                    if (iVar8 == 0) {\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac) = 1;\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0) = 0;\n                      pcVar28 = pcStack_81e8;\n                      iVar2 = iVar24;\n                    }\n                    else {\n                      iVar24 = (**(code **)(pcStack_81e8 + -0x743c))\n                                         (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4768);\n                      pcVar28 = pcStack_81e8;\n                      if (iVar24 == 0) goto LAB_0002e52c;\n                      cmdline_error(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4764,iVar20);\n                    }\n                  }\n                }\n                goto LAB_0002e464;\n              }\n            }\n            (*pcStack_81dc)();\n            pcVar28 = pcStack_81e8;\n            iVar2 = iVar24;\n          }\n        }\n      }" if (parenthesized_expression "(iVar8 == 0)" ( (binary_expression "iVar8 == 0" identifier == number_literal) )) (compound_statement "{\n        *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31cc) = 1;\n        pcVar28 = pcStack_81e8;\n        iVar2 = iVar24;\n      }" { (expression_statement "*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31cc) = 1;" (assignment_expression "*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31cc) = 1" (pointer_expression "*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31cc)" * (cast_expression "(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31cc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31cc)" ( (binary_expression "*(int *)(pcStack_81e8 + -0x7fd8) + -0x31cc" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fd8)" * (cast_expression "(int *)(pcStack_81e8 + -0x7fd8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_81e8 + -0x7fd8)" ( (binary_expression "pcStack_81e8 + -0x7fd8" identifier + number_literal) )))) + number_literal) )))) = number_literal) ;) (expression_statement "pcVar28 = pcStack_81e8;" (assignment_expression "pcVar28 = pcStack_81e8" identifier = identifier) ;) (expression_statement "iVar2 = iVar24;" (assignment_expression "iVar2 = iVar24" identifier = identifier) ;) }) (else_clause "else {\n        iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar29 + -0x47b4);\n        if (iVar8 == 0) {\n          *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d0) = 1;\n          pcVar28 = pcStack_81e8;\n          iVar2 = iVar24;\n        }\n        else {\n          iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                            (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47b0);\n          if (iVar8 == 0) {\n            *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fa8) = 0;\n            pcVar28 = pcStack_81e8;\n            iVar2 = iVar24;\n          }\n          else {\n            iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                              (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47ac);\n            if ((iVar8 != 0) &&\n               (iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                  (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47a8), iVar8 != 0))\n            {\n              iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47a4);\n              if (iVar8 != 0) {\n                iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                  (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x479c);\n                iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                if (iVar8 == 0) {\nLAB_0002e348:\n                  pcVar28 = pcStack_81e8;\n                  version();\n                }\n                else {\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar16 + -0x4798);\n                  iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                  if (iVar8 == 0) goto LAB_0002e348;\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar16 + -0x478c);\n                  iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                  pcVar28 = pcStack_81e8;\n                  if (iVar8 == 0) {\n                    *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31c4) = 1;\n                    iVar2 = iVar24;\n                    goto LAB_0002e464;\n                  }\n                }\n                iVar8 = (**(code **)(pcVar28 + -0x743c))(iVar20,iVar16 + -0x4788);\n                if (iVar8 == 0) {\n                  **(undefined4 **)(pcStack_81e8 + -0x7c4c) = 1;\n                  pcVar28 = pcStack_81e8;\n                  iVar2 = iVar24;\n                }\n                else {\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                    (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4780);\n                  if (iVar8 == 0) {\n                    *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31dc) = 1;\n                    pcVar28 = pcStack_81e8;\n                    iVar2 = iVar24;\n                  }\n                  else {\n                    iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                      (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4778);\n                    if (iVar8 == 0) {\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac) = 0;\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0) = 1;\n                      pcVar28 = pcStack_81e8;\n                      iVar2 = iVar24;\n                      goto LAB_0002e464;\n                    }\n                    iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                      (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4770);\n                    if (iVar8 == 0) {\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac) = 1;\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0) = 0;\n                      pcVar28 = pcStack_81e8;\n                      iVar2 = iVar24;\n                    }\n                    else {\n                      iVar24 = (**(code **)(pcStack_81e8 + -0x743c))\n                                         (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4768);\n                      pcVar28 = pcStack_81e8;\n                      if (iVar24 == 0) goto LAB_0002e52c;\n                      cmdline_error(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4764,iVar20);\n                    }\n                  }\n                }\n                goto LAB_0002e464;\n              }\n            }\n            (*pcStack_81dc)();\n            pcVar28 = pcStack_81e8;\n            iVar2 = iVar24;\n          }\n        }\n      }" else (compound_statement "{\n        iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar29 + -0x47b4);\n        if (iVar8 == 0) {\n          *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d0) = 1;\n          pcVar28 = pcStack_81e8;\n          iVar2 = iVar24;\n        }\n        else {\n          iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                            (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47b0);\n          if (iVar8 == 0) {\n            *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fa8) = 0;\n            pcVar28 = pcStack_81e8;\n            iVar2 = iVar24;\n          }\n          else {\n            iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                              (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47ac);\n            if ((iVar8 != 0) &&\n               (iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                  (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47a8), iVar8 != 0))\n            {\n              iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47a4);\n              if (iVar8 != 0) {\n                iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                  (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x479c);\n                iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                if (iVar8 == 0) {\nLAB_0002e348:\n                  pcVar28 = pcStack_81e8;\n                  version();\n                }\n                else {\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar16 + -0x4798);\n                  iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                  if (iVar8 == 0) goto LAB_0002e348;\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar16 + -0x478c);\n                  iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                  pcVar28 = pcStack_81e8;\n                  if (iVar8 == 0) {\n                    *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31c4) = 1;\n                    iVar2 = iVar24;\n                    goto LAB_0002e464;\n                  }\n                }\n                iVar8 = (**(code **)(pcVar28 + -0x743c))(iVar20,iVar16 + -0x4788);\n                if (iVar8 == 0) {\n                  **(undefined4 **)(pcStack_81e8 + -0x7c4c) = 1;\n                  pcVar28 = pcStack_81e8;\n                  iVar2 = iVar24;\n                }\n                else {\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                    (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4780);\n                  if (iVar8 == 0) {\n                    *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31dc) = 1;\n                    pcVar28 = pcStack_81e8;\n                    iVar2 = iVar24;\n                  }\n                  else {\n                    iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                      (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4778);\n                    if (iVar8 == 0) {\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac) = 0;\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0) = 1;\n                      pcVar28 = pcStack_81e8;\n                      iVar2 = iVar24;\n                      goto LAB_0002e464;\n                    }\n                    iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                      (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4770);\n                    if (iVar8 == 0) {\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac) = 1;\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0) = 0;\n                      pcVar28 = pcStack_81e8;\n                      iVar2 = iVar24;\n                    }\n                    else {\n                      iVar24 = (**(code **)(pcStack_81e8 + -0x743c))\n                                         (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4768);\n                      pcVar28 = pcStack_81e8;\n                      if (iVar24 == 0) goto LAB_0002e52c;\n                      cmdline_error(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4764,iVar20);\n                    }\n                  }\n                }\n                goto LAB_0002e464;\n              }\n            }\n            (*pcStack_81dc)();\n            pcVar28 = pcStack_81e8;\n            iVar2 = iVar24;\n          }\n        }\n      }" { (expression_statement "iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar29 + -0x47b4);" (assignment_expression "iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar29 + -0x47b4)" identifier = (call_expression "(**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar29 + -0x47b4)" (parenthesized_expression "(**(code **)(pcStack_81e8 + -0x743c))" ( (pointer_expression "**(code **)(pcStack_81e8 + -0x743c)" * (pointer_expression "*(code **)(pcStack_81e8 + -0x743c)" * (cast_expression "(code **)(pcStack_81e8 + -0x743c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_81e8 + -0x743c)" ( (binary_expression "pcStack_81e8 + -0x743c" identifier + number_literal) ))))) )) (argument_list "(iVar20,iVar29 + -0x47b4)" ( identifier , (binary_expression "iVar29 + -0x47b4" identifier + number_literal) )))) ;) (if_statement "if (iVar8 == 0) {\n          *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d0) = 1;\n          pcVar28 = pcStack_81e8;\n          iVar2 = iVar24;\n        }\n        else {\n          iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                            (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47b0);\n          if (iVar8 == 0) {\n            *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fa8) = 0;\n            pcVar28 = pcStack_81e8;\n            iVar2 = iVar24;\n          }\n          else {\n            iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                              (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47ac);\n            if ((iVar8 != 0) &&\n               (iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                  (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47a8), iVar8 != 0))\n            {\n              iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47a4);\n              if (iVar8 != 0) {\n                iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                  (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x479c);\n                iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                if (iVar8 == 0) {\nLAB_0002e348:\n                  pcVar28 = pcStack_81e8;\n                  version();\n                }\n                else {\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar16 + -0x4798);\n                  iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                  if (iVar8 == 0) goto LAB_0002e348;\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar16 + -0x478c);\n                  iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                  pcVar28 = pcStack_81e8;\n                  if (iVar8 == 0) {\n                    *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31c4) = 1;\n                    iVar2 = iVar24;\n                    goto LAB_0002e464;\n                  }\n                }\n                iVar8 = (**(code **)(pcVar28 + -0x743c))(iVar20,iVar16 + -0x4788);\n                if (iVar8 == 0) {\n                  **(undefined4 **)(pcStack_81e8 + -0x7c4c) = 1;\n                  pcVar28 = pcStack_81e8;\n                  iVar2 = iVar24;\n                }\n                else {\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                    (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4780);\n                  if (iVar8 == 0) {\n                    *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31dc) = 1;\n                    pcVar28 = pcStack_81e8;\n                    iVar2 = iVar24;\n                  }\n                  else {\n                    iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                      (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4778);\n                    if (iVar8 == 0) {\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac) = 0;\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0) = 1;\n                      pcVar28 = pcStack_81e8;\n                      iVar2 = iVar24;\n                      goto LAB_0002e464;\n                    }\n                    iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                      (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4770);\n                    if (iVar8 == 0) {\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac) = 1;\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0) = 0;\n                      pcVar28 = pcStack_81e8;\n                      iVar2 = iVar24;\n                    }\n                    else {\n                      iVar24 = (**(code **)(pcStack_81e8 + -0x743c))\n                                         (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4768);\n                      pcVar28 = pcStack_81e8;\n                      if (iVar24 == 0) goto LAB_0002e52c;\n                      cmdline_error(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4764,iVar20);\n                    }\n                  }\n                }\n                goto LAB_0002e464;\n              }\n            }\n            (*pcStack_81dc)();\n            pcVar28 = pcStack_81e8;\n            iVar2 = iVar24;\n          }\n        }" if (parenthesized_expression "(iVar8 == 0)" ( (binary_expression "iVar8 == 0" identifier == number_literal) )) (compound_statement "{\n          *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d0) = 1;\n          pcVar28 = pcStack_81e8;\n          iVar2 = iVar24;\n        }" { (expression_statement "*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d0) = 1;" (assignment_expression "*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d0) = 1" (pointer_expression "*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d0)" * (cast_expression "(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d0)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d0)" ( (binary_expression "*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d0" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fd8)" * (cast_expression "(int *)(pcStack_81e8 + -0x7fd8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_81e8 + -0x7fd8)" ( (binary_expression "pcStack_81e8 + -0x7fd8" identifier + number_literal) )))) + number_literal) )))) = number_literal) ;) (expression_statement "pcVar28 = pcStack_81e8;" (assignment_expression "pcVar28 = pcStack_81e8" identifier = identifier) ;) (expression_statement "iVar2 = iVar24;" (assignment_expression "iVar2 = iVar24" identifier = identifier) ;) }) (else_clause "else {\n          iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                            (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47b0);\n          if (iVar8 == 0) {\n            *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fa8) = 0;\n            pcVar28 = pcStack_81e8;\n            iVar2 = iVar24;\n          }\n          else {\n            iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                              (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47ac);\n            if ((iVar8 != 0) &&\n               (iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                  (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47a8), iVar8 != 0))\n            {\n              iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47a4);\n              if (iVar8 != 0) {\n                iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                  (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x479c);\n                iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                if (iVar8 == 0) {\nLAB_0002e348:\n                  pcVar28 = pcStack_81e8;\n                  version();\n                }\n                else {\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar16 + -0x4798);\n                  iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                  if (iVar8 == 0) goto LAB_0002e348;\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar16 + -0x478c);\n                  iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                  pcVar28 = pcStack_81e8;\n                  if (iVar8 == 0) {\n                    *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31c4) = 1;\n                    iVar2 = iVar24;\n                    goto LAB_0002e464;\n                  }\n                }\n                iVar8 = (**(code **)(pcVar28 + -0x743c))(iVar20,iVar16 + -0x4788);\n                if (iVar8 == 0) {\n                  **(undefined4 **)(pcStack_81e8 + -0x7c4c) = 1;\n                  pcVar28 = pcStack_81e8;\n                  iVar2 = iVar24;\n                }\n                else {\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                    (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4780);\n                  if (iVar8 == 0) {\n                    *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31dc) = 1;\n                    pcVar28 = pcStack_81e8;\n                    iVar2 = iVar24;\n                  }\n                  else {\n                    iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                      (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4778);\n                    if (iVar8 == 0) {\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac) = 0;\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0) = 1;\n                      pcVar28 = pcStack_81e8;\n                      iVar2 = iVar24;\n                      goto LAB_0002e464;\n                    }\n                    iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                      (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4770);\n                    if (iVar8 == 0) {\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac) = 1;\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0) = 0;\n                      pcVar28 = pcStack_81e8;\n                      iVar2 = iVar24;\n                    }\n                    else {\n                      iVar24 = (**(code **)(pcStack_81e8 + -0x743c))\n                                         (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4768);\n                      pcVar28 = pcStack_81e8;\n                      if (iVar24 == 0) goto LAB_0002e52c;\n                      cmdline_error(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4764,iVar20);\n                    }\n                  }\n                }\n                goto LAB_0002e464;\n              }\n            }\n            (*pcStack_81dc)();\n            pcVar28 = pcStack_81e8;\n            iVar2 = iVar24;\n          }\n        }" else (compound_statement "{\n          iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                            (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47b0);\n          if (iVar8 == 0) {\n            *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fa8) = 0;\n            pcVar28 = pcStack_81e8;\n            iVar2 = iVar24;\n          }\n          else {\n            iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                              (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47ac);\n            if ((iVar8 != 0) &&\n               (iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                  (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47a8), iVar8 != 0))\n            {\n              iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47a4);\n              if (iVar8 != 0) {\n                iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                  (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x479c);\n                iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                if (iVar8 == 0) {\nLAB_0002e348:\n                  pcVar28 = pcStack_81e8;\n                  version();\n                }\n                else {\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar16 + -0x4798);\n                  iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                  if (iVar8 == 0) goto LAB_0002e348;\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar16 + -0x478c);\n                  iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                  pcVar28 = pcStack_81e8;\n                  if (iVar8 == 0) {\n                    *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31c4) = 1;\n                    iVar2 = iVar24;\n                    goto LAB_0002e464;\n                  }\n                }\n                iVar8 = (**(code **)(pcVar28 + -0x743c))(iVar20,iVar16 + -0x4788);\n                if (iVar8 == 0) {\n                  **(undefined4 **)(pcStack_81e8 + -0x7c4c) = 1;\n                  pcVar28 = pcStack_81e8;\n                  iVar2 = iVar24;\n                }\n                else {\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                    (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4780);\n                  if (iVar8 == 0) {\n                    *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31dc) = 1;\n                    pcVar28 = pcStack_81e8;\n                    iVar2 = iVar24;\n                  }\n                  else {\n                    iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                      (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4778);\n                    if (iVar8 == 0) {\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac) = 0;\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0) = 1;\n                      pcVar28 = pcStack_81e8;\n                      iVar2 = iVar24;\n                      goto LAB_0002e464;\n                    }\n                    iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                      (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4770);\n                    if (iVar8 == 0) {\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac) = 1;\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0) = 0;\n                      pcVar28 = pcStack_81e8;\n                      iVar2 = iVar24;\n                    }\n                    else {\n                      iVar24 = (**(code **)(pcStack_81e8 + -0x743c))\n                                         (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4768);\n                      pcVar28 = pcStack_81e8;\n                      if (iVar24 == 0) goto LAB_0002e52c;\n                      cmdline_error(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4764,iVar20);\n                    }\n                  }\n                }\n                goto LAB_0002e464;\n              }\n            }\n            (*pcStack_81dc)();\n            pcVar28 = pcStack_81e8;\n            iVar2 = iVar24;\n          }\n        }" { (expression_statement "iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                            (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47b0);" (assignment_expression "iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                            (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47b0)" identifier = (call_expression "(**(code **)(pcStack_81e8 + -0x743c))\n                            (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47b0)" (parenthesized_expression "(**(code **)(pcStack_81e8 + -0x743c))" ( (pointer_expression "**(code **)(pcStack_81e8 + -0x743c)" * (pointer_expression "*(code **)(pcStack_81e8 + -0x743c)" * (cast_expression "(code **)(pcStack_81e8 + -0x743c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_81e8 + -0x743c)" ( (binary_expression "pcStack_81e8 + -0x743c" identifier + number_literal) ))))) )) (argument_list "(iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47b0)" ( identifier , (binary_expression "*(int *)(pcStack_81e8 + -0x7fc8) + -0x47b0" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fc8)" * (cast_expression "(int *)(pcStack_81e8 + -0x7fc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_81e8 + -0x7fc8)" ( (binary_expression "pcStack_81e8 + -0x7fc8" identifier + number_literal) )))) + number_literal) )))) ;) (if_statement "if (iVar8 == 0) {\n            *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fa8) = 0;\n            pcVar28 = pcStack_81e8;\n            iVar2 = iVar24;\n          }\n          else {\n            iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                              (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47ac);\n            if ((iVar8 != 0) &&\n               (iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                  (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47a8), iVar8 != 0))\n            {\n              iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47a4);\n              if (iVar8 != 0) {\n                iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                  (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x479c);\n                iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                if (iVar8 == 0) {\nLAB_0002e348:\n                  pcVar28 = pcStack_81e8;\n                  version();\n                }\n                else {\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar16 + -0x4798);\n                  iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                  if (iVar8 == 0) goto LAB_0002e348;\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar16 + -0x478c);\n                  iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                  pcVar28 = pcStack_81e8;\n                  if (iVar8 == 0) {\n                    *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31c4) = 1;\n                    iVar2 = iVar24;\n                    goto LAB_0002e464;\n                  }\n                }\n                iVar8 = (**(code **)(pcVar28 + -0x743c))(iVar20,iVar16 + -0x4788);\n                if (iVar8 == 0) {\n                  **(undefined4 **)(pcStack_81e8 + -0x7c4c) = 1;\n                  pcVar28 = pcStack_81e8;\n                  iVar2 = iVar24;\n                }\n                else {\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                    (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4780);\n                  if (iVar8 == 0) {\n                    *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31dc) = 1;\n                    pcVar28 = pcStack_81e8;\n                    iVar2 = iVar24;\n                  }\n                  else {\n                    iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                      (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4778);\n                    if (iVar8 == 0) {\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac) = 0;\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0) = 1;\n                      pcVar28 = pcStack_81e8;\n                      iVar2 = iVar24;\n                      goto LAB_0002e464;\n                    }\n                    iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                      (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4770);\n                    if (iVar8 == 0) {\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac) = 1;\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0) = 0;\n                      pcVar28 = pcStack_81e8;\n                      iVar2 = iVar24;\n                    }\n                    else {\n                      iVar24 = (**(code **)(pcStack_81e8 + -0x743c))\n                                         (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4768);\n                      pcVar28 = pcStack_81e8;\n                      if (iVar24 == 0) goto LAB_0002e52c;\n                      cmdline_error(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4764,iVar20);\n                    }\n                  }\n                }\n                goto LAB_0002e464;\n              }\n            }\n            (*pcStack_81dc)();\n            pcVar28 = pcStack_81e8;\n            iVar2 = iVar24;\n          }" if (parenthesized_expression "(iVar8 == 0)" ( (binary_expression "iVar8 == 0" identifier == number_literal) )) (compound_statement "{\n            *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fa8) = 0;\n            pcVar28 = pcStack_81e8;\n            iVar2 = iVar24;\n          }" { (expression_statement "*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fa8) = 0;" (assignment_expression "*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fa8) = 0" (pointer_expression "*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fa8)" * (cast_expression "(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fa8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fa8)" ( (binary_expression "*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fa8" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fd8)" * (cast_expression "(int *)(pcStack_81e8 + -0x7fd8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_81e8 + -0x7fd8)" ( (binary_expression "pcStack_81e8 + -0x7fd8" identifier + number_literal) )))) + number_literal) )))) = number_literal) ;) (expression_statement "pcVar28 = pcStack_81e8;" (assignment_expression "pcVar28 = pcStack_81e8" identifier = identifier) ;) (expression_statement "iVar2 = iVar24;" (assignment_expression "iVar2 = iVar24" identifier = identifier) ;) }) (else_clause "else {\n            iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                              (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47ac);\n            if ((iVar8 != 0) &&\n               (iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                  (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47a8), iVar8 != 0))\n            {\n              iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47a4);\n              if (iVar8 != 0) {\n                iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                  (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x479c);\n                iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                if (iVar8 == 0) {\nLAB_0002e348:\n                  pcVar28 = pcStack_81e8;\n                  version();\n                }\n                else {\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar16 + -0x4798);\n                  iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                  if (iVar8 == 0) goto LAB_0002e348;\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar16 + -0x478c);\n                  iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                  pcVar28 = pcStack_81e8;\n                  if (iVar8 == 0) {\n                    *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31c4) = 1;\n                    iVar2 = iVar24;\n                    goto LAB_0002e464;\n                  }\n                }\n                iVar8 = (**(code **)(pcVar28 + -0x743c))(iVar20,iVar16 + -0x4788);\n                if (iVar8 == 0) {\n                  **(undefined4 **)(pcStack_81e8 + -0x7c4c) = 1;\n                  pcVar28 = pcStack_81e8;\n                  iVar2 = iVar24;\n                }\n                else {\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                    (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4780);\n                  if (iVar8 == 0) {\n                    *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31dc) = 1;\n                    pcVar28 = pcStack_81e8;\n                    iVar2 = iVar24;\n                  }\n                  else {\n                    iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                      (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4778);\n                    if (iVar8 == 0) {\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac) = 0;\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0) = 1;\n                      pcVar28 = pcStack_81e8;\n                      iVar2 = iVar24;\n                      goto LAB_0002e464;\n                    }\n                    iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                      (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4770);\n                    if (iVar8 == 0) {\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac) = 1;\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0) = 0;\n                      pcVar28 = pcStack_81e8;\n                      iVar2 = iVar24;\n                    }\n                    else {\n                      iVar24 = (**(code **)(pcStack_81e8 + -0x743c))\n                                         (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4768);\n                      pcVar28 = pcStack_81e8;\n                      if (iVar24 == 0) goto LAB_0002e52c;\n                      cmdline_error(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4764,iVar20);\n                    }\n                  }\n                }\n                goto LAB_0002e464;\n              }\n            }\n            (*pcStack_81dc)();\n            pcVar28 = pcStack_81e8;\n            iVar2 = iVar24;\n          }" else (compound_statement "{\n            iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                              (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47ac);\n            if ((iVar8 != 0) &&\n               (iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                  (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47a8), iVar8 != 0))\n            {\n              iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47a4);\n              if (iVar8 != 0) {\n                iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                  (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x479c);\n                iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                if (iVar8 == 0) {\nLAB_0002e348:\n                  pcVar28 = pcStack_81e8;\n                  version();\n                }\n                else {\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar16 + -0x4798);\n                  iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                  if (iVar8 == 0) goto LAB_0002e348;\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar16 + -0x478c);\n                  iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                  pcVar28 = pcStack_81e8;\n                  if (iVar8 == 0) {\n                    *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31c4) = 1;\n                    iVar2 = iVar24;\n                    goto LAB_0002e464;\n                  }\n                }\n                iVar8 = (**(code **)(pcVar28 + -0x743c))(iVar20,iVar16 + -0x4788);\n                if (iVar8 == 0) {\n                  **(undefined4 **)(pcStack_81e8 + -0x7c4c) = 1;\n                  pcVar28 = pcStack_81e8;\n                  iVar2 = iVar24;\n                }\n                else {\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                    (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4780);\n                  if (iVar8 == 0) {\n                    *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31dc) = 1;\n                    pcVar28 = pcStack_81e8;\n                    iVar2 = iVar24;\n                  }\n                  else {\n                    iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                      (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4778);\n                    if (iVar8 == 0) {\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac) = 0;\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0) = 1;\n                      pcVar28 = pcStack_81e8;\n                      iVar2 = iVar24;\n                      goto LAB_0002e464;\n                    }\n                    iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                      (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4770);\n                    if (iVar8 == 0) {\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac) = 1;\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0) = 0;\n                      pcVar28 = pcStack_81e8;\n                      iVar2 = iVar24;\n                    }\n                    else {\n                      iVar24 = (**(code **)(pcStack_81e8 + -0x743c))\n                                         (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4768);\n                      pcVar28 = pcStack_81e8;\n                      if (iVar24 == 0) goto LAB_0002e52c;\n                      cmdline_error(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4764,iVar20);\n                    }\n                  }\n                }\n                goto LAB_0002e464;\n              }\n            }\n            (*pcStack_81dc)();\n            pcVar28 = pcStack_81e8;\n            iVar2 = iVar24;\n          }" { (expression_statement "iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                              (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47ac);" (assignment_expression "iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                              (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47ac)" identifier = (call_expression "(**(code **)(pcStack_81e8 + -0x743c))\n                              (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47ac)" (parenthesized_expression "(**(code **)(pcStack_81e8 + -0x743c))" ( (pointer_expression "**(code **)(pcStack_81e8 + -0x743c)" * (pointer_expression "*(code **)(pcStack_81e8 + -0x743c)" * (cast_expression "(code **)(pcStack_81e8 + -0x743c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_81e8 + -0x743c)" ( (binary_expression "pcStack_81e8 + -0x743c" identifier + number_literal) ))))) )) (argument_list "(iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47ac)" ( identifier , (binary_expression "*(int *)(pcStack_81e8 + -0x7fc8) + -0x47ac" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fc8)" * (cast_expression "(int *)(pcStack_81e8 + -0x7fc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_81e8 + -0x7fc8)" ( (binary_expression "pcStack_81e8 + -0x7fc8" identifier + number_literal) )))) + number_literal) )))) ;) (if_statement "if ((iVar8 != 0) &&\n               (iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                  (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47a8), iVar8 != 0))\n            {\n              iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47a4);\n              if (iVar8 != 0) {\n                iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                  (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x479c);\n                iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                if (iVar8 == 0) {\nLAB_0002e348:\n                  pcVar28 = pcStack_81e8;\n                  version();\n                }\n                else {\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar16 + -0x4798);\n                  iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                  if (iVar8 == 0) goto LAB_0002e348;\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar16 + -0x478c);\n                  iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                  pcVar28 = pcStack_81e8;\n                  if (iVar8 == 0) {\n                    *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31c4) = 1;\n                    iVar2 = iVar24;\n                    goto LAB_0002e464;\n                  }\n                }\n                iVar8 = (**(code **)(pcVar28 + -0x743c))(iVar20,iVar16 + -0x4788);\n                if (iVar8 == 0) {\n                  **(undefined4 **)(pcStack_81e8 + -0x7c4c) = 1;\n                  pcVar28 = pcStack_81e8;\n                  iVar2 = iVar24;\n                }\n                else {\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                    (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4780);\n                  if (iVar8 == 0) {\n                    *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31dc) = 1;\n                    pcVar28 = pcStack_81e8;\n                    iVar2 = iVar24;\n                  }\n                  else {\n                    iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                      (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4778);\n                    if (iVar8 == 0) {\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac) = 0;\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0) = 1;\n                      pcVar28 = pcStack_81e8;\n                      iVar2 = iVar24;\n                      goto LAB_0002e464;\n                    }\n                    iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                      (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4770);\n                    if (iVar8 == 0) {\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac) = 1;\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0) = 0;\n                      pcVar28 = pcStack_81e8;\n                      iVar2 = iVar24;\n                    }\n                    else {\n                      iVar24 = (**(code **)(pcStack_81e8 + -0x743c))\n                                         (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4768);\n                      pcVar28 = pcStack_81e8;\n                      if (iVar24 == 0) goto LAB_0002e52c;\n                      cmdline_error(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4764,iVar20);\n                    }\n                  }\n                }\n                goto LAB_0002e464;\n              }\n            }" if (parenthesized_expression "((iVar8 != 0) &&\n               (iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                  (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47a8), iVar8 != 0))" ( (binary_expression "(iVar8 != 0) &&\n               (iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                  (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47a8), iVar8 != 0)" (parenthesized_expression "(iVar8 != 0)" ( (binary_expression "iVar8 != 0" identifier != number_literal) )) && (parenthesized_expression "(iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                  (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47a8), iVar8 != 0)" ( (comma_expression "iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                  (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47a8), iVar8 != 0" (assignment_expression "iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                  (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47a8)" identifier = (call_expression "(**(code **)(pcStack_81e8 + -0x743c))\n                                  (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47a8)" (parenthesized_expression "(**(code **)(pcStack_81e8 + -0x743c))" ( (pointer_expression "**(code **)(pcStack_81e8 + -0x743c)" * (pointer_expression "*(code **)(pcStack_81e8 + -0x743c)" * (cast_expression "(code **)(pcStack_81e8 + -0x743c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_81e8 + -0x743c)" ( (binary_expression "pcStack_81e8 + -0x743c" identifier + number_literal) ))))) )) (argument_list "(iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47a8)" ( identifier , (binary_expression "*(int *)(pcStack_81e8 + -0x7fc8) + -0x47a8" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fc8)" * (cast_expression "(int *)(pcStack_81e8 + -0x7fc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_81e8 + -0x7fc8)" ( (binary_expression "pcStack_81e8 + -0x7fc8" identifier + number_literal) )))) + number_literal) )))) , (binary_expression "iVar8 != 0" identifier != number_literal)) ))) )) (compound_statement "{\n              iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47a4);\n              if (iVar8 != 0) {\n                iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                  (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x479c);\n                iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                if (iVar8 == 0) {\nLAB_0002e348:\n                  pcVar28 = pcStack_81e8;\n                  version();\n                }\n                else {\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar16 + -0x4798);\n                  iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                  if (iVar8 == 0) goto LAB_0002e348;\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar16 + -0x478c);\n                  iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                  pcVar28 = pcStack_81e8;\n                  if (iVar8 == 0) {\n                    *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31c4) = 1;\n                    iVar2 = iVar24;\n                    goto LAB_0002e464;\n                  }\n                }\n                iVar8 = (**(code **)(pcVar28 + -0x743c))(iVar20,iVar16 + -0x4788);\n                if (iVar8 == 0) {\n                  **(undefined4 **)(pcStack_81e8 + -0x7c4c) = 1;\n                  pcVar28 = pcStack_81e8;\n                  iVar2 = iVar24;\n                }\n                else {\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                    (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4780);\n                  if (iVar8 == 0) {\n                    *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31dc) = 1;\n                    pcVar28 = pcStack_81e8;\n                    iVar2 = iVar24;\n                  }\n                  else {\n                    iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                      (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4778);\n                    if (iVar8 == 0) {\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac) = 0;\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0) = 1;\n                      pcVar28 = pcStack_81e8;\n                      iVar2 = iVar24;\n                      goto LAB_0002e464;\n                    }\n                    iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                      (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4770);\n                    if (iVar8 == 0) {\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac) = 1;\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0) = 0;\n                      pcVar28 = pcStack_81e8;\n                      iVar2 = iVar24;\n                    }\n                    else {\n                      iVar24 = (**(code **)(pcStack_81e8 + -0x743c))\n                                         (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4768);\n                      pcVar28 = pcStack_81e8;\n                      if (iVar24 == 0) goto LAB_0002e52c;\n                      cmdline_error(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4764,iVar20);\n                    }\n                  }\n                }\n                goto LAB_0002e464;\n              }\n            }" { (expression_statement "iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47a4);" (assignment_expression "iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47a4)" identifier = (call_expression "(**(code **)(pcStack_81e8 + -0x743c))\n                                (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47a4)" (parenthesized_expression "(**(code **)(pcStack_81e8 + -0x743c))" ( (pointer_expression "**(code **)(pcStack_81e8 + -0x743c)" * (pointer_expression "*(code **)(pcStack_81e8 + -0x743c)" * (cast_expression "(code **)(pcStack_81e8 + -0x743c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_81e8 + -0x743c)" ( (binary_expression "pcStack_81e8 + -0x743c" identifier + number_literal) ))))) )) (argument_list "(iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47a4)" ( identifier , (binary_expression "*(int *)(pcStack_81e8 + -0x7fc8) + -0x47a4" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fc8)" * (cast_expression "(int *)(pcStack_81e8 + -0x7fc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_81e8 + -0x7fc8)" ( (binary_expression "pcStack_81e8 + -0x7fc8" identifier + number_literal) )))) + number_literal) )))) ;) (if_statement "if (iVar8 != 0) {\n                iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                  (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x479c);\n                iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                if (iVar8 == 0) {\nLAB_0002e348:\n                  pcVar28 = pcStack_81e8;\n                  version();\n                }\n                else {\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar16 + -0x4798);\n                  iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                  if (iVar8 == 0) goto LAB_0002e348;\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar16 + -0x478c);\n                  iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                  pcVar28 = pcStack_81e8;\n                  if (iVar8 == 0) {\n                    *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31c4) = 1;\n                    iVar2 = iVar24;\n                    goto LAB_0002e464;\n                  }\n                }\n                iVar8 = (**(code **)(pcVar28 + -0x743c))(iVar20,iVar16 + -0x4788);\n                if (iVar8 == 0) {\n                  **(undefined4 **)(pcStack_81e8 + -0x7c4c) = 1;\n                  pcVar28 = pcStack_81e8;\n                  iVar2 = iVar24;\n                }\n                else {\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                    (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4780);\n                  if (iVar8 == 0) {\n                    *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31dc) = 1;\n                    pcVar28 = pcStack_81e8;\n                    iVar2 = iVar24;\n                  }\n                  else {\n                    iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                      (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4778);\n                    if (iVar8 == 0) {\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac) = 0;\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0) = 1;\n                      pcVar28 = pcStack_81e8;\n                      iVar2 = iVar24;\n                      goto LAB_0002e464;\n                    }\n                    iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                      (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4770);\n                    if (iVar8 == 0) {\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac) = 1;\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0) = 0;\n                      pcVar28 = pcStack_81e8;\n                      iVar2 = iVar24;\n                    }\n                    else {\n                      iVar24 = (**(code **)(pcStack_81e8 + -0x743c))\n                                         (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4768);\n                      pcVar28 = pcStack_81e8;\n                      if (iVar24 == 0) goto LAB_0002e52c;\n                      cmdline_error(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4764,iVar20);\n                    }\n                  }\n                }\n                goto LAB_0002e464;\n              }" if (parenthesized_expression "(iVar8 != 0)" ( (binary_expression "iVar8 != 0" identifier != number_literal) )) (compound_statement "{\n                iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                  (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x479c);\n                iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                if (iVar8 == 0) {\nLAB_0002e348:\n                  pcVar28 = pcStack_81e8;\n                  version();\n                }\n                else {\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar16 + -0x4798);\n                  iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                  if (iVar8 == 0) goto LAB_0002e348;\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar16 + -0x478c);\n                  iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                  pcVar28 = pcStack_81e8;\n                  if (iVar8 == 0) {\n                    *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31c4) = 1;\n                    iVar2 = iVar24;\n                    goto LAB_0002e464;\n                  }\n                }\n                iVar8 = (**(code **)(pcVar28 + -0x743c))(iVar20,iVar16 + -0x4788);\n                if (iVar8 == 0) {\n                  **(undefined4 **)(pcStack_81e8 + -0x7c4c) = 1;\n                  pcVar28 = pcStack_81e8;\n                  iVar2 = iVar24;\n                }\n                else {\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                    (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4780);\n                  if (iVar8 == 0) {\n                    *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31dc) = 1;\n                    pcVar28 = pcStack_81e8;\n                    iVar2 = iVar24;\n                  }\n                  else {\n                    iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                      (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4778);\n                    if (iVar8 == 0) {\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac) = 0;\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0) = 1;\n                      pcVar28 = pcStack_81e8;\n                      iVar2 = iVar24;\n                      goto LAB_0002e464;\n                    }\n                    iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                      (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4770);\n                    if (iVar8 == 0) {\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac) = 1;\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0) = 0;\n                      pcVar28 = pcStack_81e8;\n                      iVar2 = iVar24;\n                    }\n                    else {\n                      iVar24 = (**(code **)(pcStack_81e8 + -0x743c))\n                                         (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4768);\n                      pcVar28 = pcStack_81e8;\n                      if (iVar24 == 0) goto LAB_0002e52c;\n                      cmdline_error(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4764,iVar20);\n                    }\n                  }\n                }\n                goto LAB_0002e464;\n              }" { (expression_statement "iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                  (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x479c);" (assignment_expression "iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                  (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x479c)" identifier = (call_expression "(**(code **)(pcStack_81e8 + -0x743c))\n                                  (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x479c)" (parenthesized_expression "(**(code **)(pcStack_81e8 + -0x743c))" ( (pointer_expression "**(code **)(pcStack_81e8 + -0x743c)" * (pointer_expression "*(code **)(pcStack_81e8 + -0x743c)" * (cast_expression "(code **)(pcStack_81e8 + -0x743c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_81e8 + -0x743c)" ( (binary_expression "pcStack_81e8 + -0x743c" identifier + number_literal) ))))) )) (argument_list "(iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x479c)" ( identifier , (binary_expression "*(int *)(pcStack_81e8 + -0x7fc8) + -0x479c" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fc8)" * (cast_expression "(int *)(pcStack_81e8 + -0x7fc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_81e8 + -0x7fc8)" ( (binary_expression "pcStack_81e8 + -0x7fc8" identifier + number_literal) )))) + number_literal) )))) ;) (expression_statement "iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);" (assignment_expression "iVar16 = *(int *)(pcStack_81e8 + -0x7fc8)" identifier = (pointer_expression "*(int *)(pcStack_81e8 + -0x7fc8)" * (cast_expression "(int *)(pcStack_81e8 + -0x7fc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_81e8 + -0x7fc8)" ( (binary_expression "pcStack_81e8 + -0x7fc8" identifier + number_literal) ))))) ;) (if_statement "if (iVar8 == 0) {\nLAB_0002e348:\n                  pcVar28 = pcStack_81e8;\n                  version();\n                }\n                else {\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar16 + -0x4798);\n                  iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                  if (iVar8 == 0) goto LAB_0002e348;\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar16 + -0x478c);\n                  iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                  pcVar28 = pcStack_81e8;\n                  if (iVar8 == 0) {\n                    *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31c4) = 1;\n                    iVar2 = iVar24;\n                    goto LAB_0002e464;\n                  }\n                }" if (parenthesized_expression "(iVar8 == 0)" ( (binary_expression "iVar8 == 0" identifier == number_literal) )) (compound_statement "{\nLAB_0002e348:\n                  pcVar28 = pcStack_81e8;\n                  version();\n                }" { (labeled_statement "LAB_0002e348:\n                  pcVar28 = pcStack_81e8;" statement_identifier : (expression_statement "pcVar28 = pcStack_81e8;" (assignment_expression "pcVar28 = pcStack_81e8" identifier = identifier) ;)) (expression_statement "version();" (call_expression "version()" identifier (argument_list "()" ( ))) ;) }) (else_clause "else {\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar16 + -0x4798);\n                  iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                  if (iVar8 == 0) goto LAB_0002e348;\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar16 + -0x478c);\n                  iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                  pcVar28 = pcStack_81e8;\n                  if (iVar8 == 0) {\n                    *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31c4) = 1;\n                    iVar2 = iVar24;\n                    goto LAB_0002e464;\n                  }\n                }" else (compound_statement "{\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar16 + -0x4798);\n                  iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                  if (iVar8 == 0) goto LAB_0002e348;\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar16 + -0x478c);\n                  iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                  pcVar28 = pcStack_81e8;\n                  if (iVar8 == 0) {\n                    *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31c4) = 1;\n                    iVar2 = iVar24;\n                    goto LAB_0002e464;\n                  }\n                }" { (expression_statement "iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar16 + -0x4798);" (assignment_expression "iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar16 + -0x4798)" identifier = (call_expression "(**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar16 + -0x4798)" (parenthesized_expression "(**(code **)(pcStack_81e8 + -0x743c))" ( (pointer_expression "**(code **)(pcStack_81e8 + -0x743c)" * (pointer_expression "*(code **)(pcStack_81e8 + -0x743c)" * (cast_expression "(code **)(pcStack_81e8 + -0x743c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_81e8 + -0x743c)" ( (binary_expression "pcStack_81e8 + -0x743c" identifier + number_literal) ))))) )) (argument_list "(iVar20,iVar16 + -0x4798)" ( identifier , (binary_expression "iVar16 + -0x4798" identifier + number_literal) )))) ;) (expression_statement "iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);" (assignment_expression "iVar16 = *(int *)(pcStack_81e8 + -0x7fc8)" identifier = (pointer_expression "*(int *)(pcStack_81e8 + -0x7fc8)" * (cast_expression "(int *)(pcStack_81e8 + -0x7fc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_81e8 + -0x7fc8)" ( (binary_expression "pcStack_81e8 + -0x7fc8" identifier + number_literal) ))))) ;) (if_statement "if (iVar8 == 0) goto LAB_0002e348;" if (parenthesized_expression "(iVar8 == 0)" ( (binary_expression "iVar8 == 0" identifier == number_literal) )) (goto_statement "goto LAB_0002e348;" goto statement_identifier ;)) (expression_statement "iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar16 + -0x478c);" (assignment_expression "iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar16 + -0x478c)" identifier = (call_expression "(**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar16 + -0x478c)" (parenthesized_expression "(**(code **)(pcStack_81e8 + -0x743c))" ( (pointer_expression "**(code **)(pcStack_81e8 + -0x743c)" * (pointer_expression "*(code **)(pcStack_81e8 + -0x743c)" * (cast_expression "(code **)(pcStack_81e8 + -0x743c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_81e8 + -0x743c)" ( (binary_expression "pcStack_81e8 + -0x743c" identifier + number_literal) ))))) )) (argument_list "(iVar20,iVar16 + -0x478c)" ( identifier , (binary_expression "iVar16 + -0x478c" identifier + number_literal) )))) ;) (expression_statement "iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);" (assignment_expression "iVar16 = *(int *)(pcStack_81e8 + -0x7fc8)" identifier = (pointer_expression "*(int *)(pcStack_81e8 + -0x7fc8)" * (cast_expression "(int *)(pcStack_81e8 + -0x7fc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_81e8 + -0x7fc8)" ( (binary_expression "pcStack_81e8 + -0x7fc8" identifier + number_literal) ))))) ;) (expression_statement "pcVar28 = pcStack_81e8;" (assignment_expression "pcVar28 = pcStack_81e8" identifier = identifier) ;) (if_statement "if (iVar8 == 0) {\n                    *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31c4) = 1;\n                    iVar2 = iVar24;\n                    goto LAB_0002e464;\n                  }" if (parenthesized_expression "(iVar8 == 0)" ( (binary_expression "iVar8 == 0" identifier == number_literal) )) (compound_statement "{\n                    *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31c4) = 1;\n                    iVar2 = iVar24;\n                    goto LAB_0002e464;\n                  }" { (expression_statement "*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31c4) = 1;" (assignment_expression "*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31c4) = 1" (pointer_expression "*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31c4)" * (cast_expression "(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31c4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31c4)" ( (binary_expression "*(int *)(pcStack_81e8 + -0x7fd8) + -0x31c4" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fd8)" * (cast_expression "(int *)(pcStack_81e8 + -0x7fd8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_81e8 + -0x7fd8)" ( (binary_expression "pcStack_81e8 + -0x7fd8" identifier + number_literal) )))) + number_literal) )))) = number_literal) ;) (expression_statement "iVar2 = iVar24;" (assignment_expression "iVar2 = iVar24" identifier = identifier) ;) (goto_statement "goto LAB_0002e464;" goto statement_identifier ;) })) }))) (expression_statement "iVar8 = (**(code **)(pcVar28 + -0x743c))(iVar20,iVar16 + -0x4788);" (assignment_expression "iVar8 = (**(code **)(pcVar28 + -0x743c))(iVar20,iVar16 + -0x4788)" identifier = (call_expression "(**(code **)(pcVar28 + -0x743c))(iVar20,iVar16 + -0x4788)" (parenthesized_expression "(**(code **)(pcVar28 + -0x743c))" ( (pointer_expression "**(code **)(pcVar28 + -0x743c)" * (pointer_expression "*(code **)(pcVar28 + -0x743c)" * (cast_expression "(code **)(pcVar28 + -0x743c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar28 + -0x743c)" ( (binary_expression "pcVar28 + -0x743c" identifier + number_literal) ))))) )) (argument_list "(iVar20,iVar16 + -0x4788)" ( identifier , (binary_expression "iVar16 + -0x4788" identifier + number_literal) )))) ;) (if_statement "if (iVar8 == 0) {\n                  **(undefined4 **)(pcStack_81e8 + -0x7c4c) = 1;\n                  pcVar28 = pcStack_81e8;\n                  iVar2 = iVar24;\n                }\n                else {\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                    (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4780);\n                  if (iVar8 == 0) {\n                    *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31dc) = 1;\n                    pcVar28 = pcStack_81e8;\n                    iVar2 = iVar24;\n                  }\n                  else {\n                    iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                      (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4778);\n                    if (iVar8 == 0) {\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac) = 0;\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0) = 1;\n                      pcVar28 = pcStack_81e8;\n                      iVar2 = iVar24;\n                      goto LAB_0002e464;\n                    }\n                    iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                      (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4770);\n                    if (iVar8 == 0) {\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac) = 1;\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0) = 0;\n                      pcVar28 = pcStack_81e8;\n                      iVar2 = iVar24;\n                    }\n                    else {\n                      iVar24 = (**(code **)(pcStack_81e8 + -0x743c))\n                                         (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4768);\n                      pcVar28 = pcStack_81e8;\n                      if (iVar24 == 0) goto LAB_0002e52c;\n                      cmdline_error(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4764,iVar20);\n                    }\n                  }\n                }" if (parenthesized_expression "(iVar8 == 0)" ( (binary_expression "iVar8 == 0" identifier == number_literal) )) (compound_statement "{\n                  **(undefined4 **)(pcStack_81e8 + -0x7c4c) = 1;\n                  pcVar28 = pcStack_81e8;\n                  iVar2 = iVar24;\n                }" { (expression_statement "**(undefined4 **)(pcStack_81e8 + -0x7c4c) = 1;" (assignment_expression "**(undefined4 **)(pcStack_81e8 + -0x7c4c) = 1" (pointer_expression "**(undefined4 **)(pcStack_81e8 + -0x7c4c)" * (pointer_expression "*(undefined4 **)(pcStack_81e8 + -0x7c4c)" * (cast_expression "(undefined4 **)(pcStack_81e8 + -0x7c4c)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_81e8 + -0x7c4c)" ( (binary_expression "pcStack_81e8 + -0x7c4c" identifier + number_literal) ))))) = number_literal) ;) (expression_statement "pcVar28 = pcStack_81e8;" (assignment_expression "pcVar28 = pcStack_81e8" identifier = identifier) ;) (expression_statement "iVar2 = iVar24;" (assignment_expression "iVar2 = iVar24" identifier = identifier) ;) }) (else_clause "else {\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                    (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4780);\n                  if (iVar8 == 0) {\n                    *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31dc) = 1;\n                    pcVar28 = pcStack_81e8;\n                    iVar2 = iVar24;\n                  }\n                  else {\n                    iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                      (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4778);\n                    if (iVar8 == 0) {\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac) = 0;\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0) = 1;\n                      pcVar28 = pcStack_81e8;\n                      iVar2 = iVar24;\n                      goto LAB_0002e464;\n                    }\n                    iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                      (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4770);\n                    if (iVar8 == 0) {\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac) = 1;\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0) = 0;\n                      pcVar28 = pcStack_81e8;\n                      iVar2 = iVar24;\n                    }\n                    else {\n                      iVar24 = (**(code **)(pcStack_81e8 + -0x743c))\n                                         (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4768);\n                      pcVar28 = pcStack_81e8;\n                      if (iVar24 == 0) goto LAB_0002e52c;\n                      cmdline_error(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4764,iVar20);\n                    }\n                  }\n                }" else (compound_statement "{\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                    (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4780);\n                  if (iVar8 == 0) {\n                    *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31dc) = 1;\n                    pcVar28 = pcStack_81e8;\n                    iVar2 = iVar24;\n                  }\n                  else {\n                    iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                      (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4778);\n                    if (iVar8 == 0) {\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac) = 0;\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0) = 1;\n                      pcVar28 = pcStack_81e8;\n                      iVar2 = iVar24;\n                      goto LAB_0002e464;\n                    }\n                    iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                      (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4770);\n                    if (iVar8 == 0) {\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac) = 1;\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0) = 0;\n                      pcVar28 = pcStack_81e8;\n                      iVar2 = iVar24;\n                    }\n                    else {\n                      iVar24 = (**(code **)(pcStack_81e8 + -0x743c))\n                                         (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4768);\n                      pcVar28 = pcStack_81e8;\n                      if (iVar24 == 0) goto LAB_0002e52c;\n                      cmdline_error(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4764,iVar20);\n                    }\n                  }\n                }" { (expression_statement "iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                    (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4780);" (assignment_expression "iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                    (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4780)" identifier = (call_expression "(**(code **)(pcStack_81e8 + -0x743c))\n                                    (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4780)" (parenthesized_expression "(**(code **)(pcStack_81e8 + -0x743c))" ( (pointer_expression "**(code **)(pcStack_81e8 + -0x743c)" * (pointer_expression "*(code **)(pcStack_81e8 + -0x743c)" * (cast_expression "(code **)(pcStack_81e8 + -0x743c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_81e8 + -0x743c)" ( (binary_expression "pcStack_81e8 + -0x743c" identifier + number_literal) ))))) )) (argument_list "(iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4780)" ( identifier , (binary_expression "*(int *)(pcStack_81e8 + -0x7fc8) + -0x4780" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fc8)" * (cast_expression "(int *)(pcStack_81e8 + -0x7fc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_81e8 + -0x7fc8)" ( (binary_expression "pcStack_81e8 + -0x7fc8" identifier + number_literal) )))) + number_literal) )))) ;) (if_statement "if (iVar8 == 0) {\n                    *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31dc) = 1;\n                    pcVar28 = pcStack_81e8;\n                    iVar2 = iVar24;\n                  }\n                  else {\n                    iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                      (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4778);\n                    if (iVar8 == 0) {\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac) = 0;\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0) = 1;\n                      pcVar28 = pcStack_81e8;\n                      iVar2 = iVar24;\n                      goto LAB_0002e464;\n                    }\n                    iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                      (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4770);\n                    if (iVar8 == 0) {\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac) = 1;\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0) = 0;\n                      pcVar28 = pcStack_81e8;\n                      iVar2 = iVar24;\n                    }\n                    else {\n                      iVar24 = (**(code **)(pcStack_81e8 + -0x743c))\n                                         (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4768);\n                      pcVar28 = pcStack_81e8;\n                      if (iVar24 == 0) goto LAB_0002e52c;\n                      cmdline_error(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4764,iVar20);\n                    }\n                  }" if (parenthesized_expression "(iVar8 == 0)" ( (binary_expression "iVar8 == 0" identifier == number_literal) )) (compound_statement "{\n                    *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31dc) = 1;\n                    pcVar28 = pcStack_81e8;\n                    iVar2 = iVar24;\n                  }" { (expression_statement "*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31dc) = 1;" (assignment_expression "*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31dc) = 1" (pointer_expression "*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31dc)" * (cast_expression "(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31dc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31dc)" ( (binary_expression "*(int *)(pcStack_81e8 + -0x7fd8) + -0x31dc" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fd8)" * (cast_expression "(int *)(pcStack_81e8 + -0x7fd8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_81e8 + -0x7fd8)" ( (binary_expression "pcStack_81e8 + -0x7fd8" identifier + number_literal) )))) + number_literal) )))) = number_literal) ;) (expression_statement "pcVar28 = pcStack_81e8;" (assignment_expression "pcVar28 = pcStack_81e8" identifier = identifier) ;) (expression_statement "iVar2 = iVar24;" (assignment_expression "iVar2 = iVar24" identifier = identifier) ;) }) (else_clause "else {\n                    iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                      (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4778);\n                    if (iVar8 == 0) {\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac) = 0;\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0) = 1;\n                      pcVar28 = pcStack_81e8;\n                      iVar2 = iVar24;\n                      goto LAB_0002e464;\n                    }\n                    iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                      (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4770);\n                    if (iVar8 == 0) {\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac) = 1;\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0) = 0;\n                      pcVar28 = pcStack_81e8;\n                      iVar2 = iVar24;\n                    }\n                    else {\n                      iVar24 = (**(code **)(pcStack_81e8 + -0x743c))\n                                         (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4768);\n                      pcVar28 = pcStack_81e8;\n                      if (iVar24 == 0) goto LAB_0002e52c;\n                      cmdline_error(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4764,iVar20);\n                    }\n                  }" else (compound_statement "{\n                    iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                      (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4778);\n                    if (iVar8 == 0) {\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac) = 0;\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0) = 1;\n                      pcVar28 = pcStack_81e8;\n                      iVar2 = iVar24;\n                      goto LAB_0002e464;\n                    }\n                    iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                      (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4770);\n                    if (iVar8 == 0) {\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac) = 1;\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0) = 0;\n                      pcVar28 = pcStack_81e8;\n                      iVar2 = iVar24;\n                    }\n                    else {\n                      iVar24 = (**(code **)(pcStack_81e8 + -0x743c))\n                                         (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4768);\n                      pcVar28 = pcStack_81e8;\n                      if (iVar24 == 0) goto LAB_0002e52c;\n                      cmdline_error(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4764,iVar20);\n                    }\n                  }" { (expression_statement "iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                      (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4778);" (assignment_expression "iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                      (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4778)" identifier = (call_expression "(**(code **)(pcStack_81e8 + -0x743c))\n                                      (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4778)" (parenthesized_expression "(**(code **)(pcStack_81e8 + -0x743c))" ( (pointer_expression "**(code **)(pcStack_81e8 + -0x743c)" * (pointer_expression "*(code **)(pcStack_81e8 + -0x743c)" * (cast_expression "(code **)(pcStack_81e8 + -0x743c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_81e8 + -0x743c)" ( (binary_expression "pcStack_81e8 + -0x743c" identifier + number_literal) ))))) )) (argument_list "(iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4778)" ( identifier , (binary_expression "*(int *)(pcStack_81e8 + -0x7fc8) + -0x4778" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fc8)" * (cast_expression "(int *)(pcStack_81e8 + -0x7fc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_81e8 + -0x7fc8)" ( (binary_expression "pcStack_81e8 + -0x7fc8" identifier + number_literal) )))) + number_literal) )))) ;) (if_statement "if (iVar8 == 0) {\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac) = 0;\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0) = 1;\n                      pcVar28 = pcStack_81e8;\n                      iVar2 = iVar24;\n                      goto LAB_0002e464;\n                    }" if (parenthesized_expression "(iVar8 == 0)" ( (binary_expression "iVar8 == 0" identifier == number_literal) )) (compound_statement "{\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac) = 0;\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0) = 1;\n                      pcVar28 = pcStack_81e8;\n                      iVar2 = iVar24;\n                      goto LAB_0002e464;\n                    }" { (expression_statement "*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac) = 0;" (assignment_expression "*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac) = 0" (pointer_expression "*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac)" * (cast_expression "(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac)" ( (binary_expression "*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fd8)" * (cast_expression "(int *)(pcStack_81e8 + -0x7fd8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_81e8 + -0x7fd8)" ( (binary_expression "pcStack_81e8 + -0x7fd8" identifier + number_literal) )))) + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0) = 1;" (assignment_expression "*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0) = 1" (pointer_expression "*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0)" * (cast_expression "(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0)" ( (binary_expression "*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fd8)" * (cast_expression "(int *)(pcStack_81e8 + -0x7fd8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_81e8 + -0x7fd8)" ( (binary_expression "pcStack_81e8 + -0x7fd8" identifier + number_literal) )))) + number_literal) )))) = number_literal) ;) (expression_statement "pcVar28 = pcStack_81e8;" (assignment_expression "pcVar28 = pcStack_81e8" identifier = identifier) ;) (expression_statement "iVar2 = iVar24;" (assignment_expression "iVar2 = iVar24" identifier = identifier) ;) (goto_statement "goto LAB_0002e464;" goto statement_identifier ;) })) (expression_statement "iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                      (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4770);" (assignment_expression "iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                      (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4770)" identifier = (call_expression "(**(code **)(pcStack_81e8 + -0x743c))\n                                      (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4770)" (parenthesized_expression "(**(code **)(pcStack_81e8 + -0x743c))" ( (pointer_expression "**(code **)(pcStack_81e8 + -0x743c)" * (pointer_expression "*(code **)(pcStack_81e8 + -0x743c)" * (cast_expression "(code **)(pcStack_81e8 + -0x743c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_81e8 + -0x743c)" ( (binary_expression "pcStack_81e8 + -0x743c" identifier + number_literal) ))))) )) (argument_list "(iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4770)" ( identifier , (binary_expression "*(int *)(pcStack_81e8 + -0x7fc8) + -0x4770" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fc8)" * (cast_expression "(int *)(pcStack_81e8 + -0x7fc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_81e8 + -0x7fc8)" ( (binary_expression "pcStack_81e8 + -0x7fc8" identifier + number_literal) )))) + number_literal) )))) ;) (if_statement "if (iVar8 == 0) {\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac) = 1;\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0) = 0;\n                      pcVar28 = pcStack_81e8;\n                      iVar2 = iVar24;\n                    }\n                    else {\n                      iVar24 = (**(code **)(pcStack_81e8 + -0x743c))\n                                         (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4768);\n                      pcVar28 = pcStack_81e8;\n                      if (iVar24 == 0) goto LAB_0002e52c;\n                      cmdline_error(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4764,iVar20);\n                    }" if (parenthesized_expression "(iVar8 == 0)" ( (binary_expression "iVar8 == 0" identifier == number_literal) )) (compound_statement "{\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac) = 1;\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0) = 0;\n                      pcVar28 = pcStack_81e8;\n                      iVar2 = iVar24;\n                    }" { (expression_statement "*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac) = 1;" (assignment_expression "*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac) = 1" (pointer_expression "*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac)" * (cast_expression "(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac)" ( (binary_expression "*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fd8)" * (cast_expression "(int *)(pcStack_81e8 + -0x7fd8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_81e8 + -0x7fd8)" ( (binary_expression "pcStack_81e8 + -0x7fd8" identifier + number_literal) )))) + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0) = 0;" (assignment_expression "*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0) = 0" (pointer_expression "*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0)" * (cast_expression "(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0)" ( (binary_expression "*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fd8)" * (cast_expression "(int *)(pcStack_81e8 + -0x7fd8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_81e8 + -0x7fd8)" ( (binary_expression "pcStack_81e8 + -0x7fd8" identifier + number_literal) )))) + number_literal) )))) = number_literal) ;) (expression_statement "pcVar28 = pcStack_81e8;" (assignment_expression "pcVar28 = pcStack_81e8" identifier = identifier) ;) (expression_statement "iVar2 = iVar24;" (assignment_expression "iVar2 = iVar24" identifier = identifier) ;) }) (else_clause "else {\n                      iVar24 = (**(code **)(pcStack_81e8 + -0x743c))\n                                         (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4768);\n                      pcVar28 = pcStack_81e8;\n                      if (iVar24 == 0) goto LAB_0002e52c;\n                      cmdline_error(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4764,iVar20);\n                    }" else (compound_statement "{\n                      iVar24 = (**(code **)(pcStack_81e8 + -0x743c))\n                                         (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4768);\n                      pcVar28 = pcStack_81e8;\n                      if (iVar24 == 0) goto LAB_0002e52c;\n                      cmdline_error(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4764,iVar20);\n                    }" { (expression_statement "iVar24 = (**(code **)(pcStack_81e8 + -0x743c))\n                                         (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4768);" (assignment_expression "iVar24 = (**(code **)(pcStack_81e8 + -0x743c))\n                                         (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4768)" identifier = (call_expression "(**(code **)(pcStack_81e8 + -0x743c))\n                                         (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4768)" (parenthesized_expression "(**(code **)(pcStack_81e8 + -0x743c))" ( (pointer_expression "**(code **)(pcStack_81e8 + -0x743c)" * (pointer_expression "*(code **)(pcStack_81e8 + -0x743c)" * (cast_expression "(code **)(pcStack_81e8 + -0x743c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_81e8 + -0x743c)" ( (binary_expression "pcStack_81e8 + -0x743c" identifier + number_literal) ))))) )) (argument_list "(iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4768)" ( identifier , (binary_expression "*(int *)(pcStack_81e8 + -0x7fc8) + -0x4768" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fc8)" * (cast_expression "(int *)(pcStack_81e8 + -0x7fc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_81e8 + -0x7fc8)" ( (binary_expression "pcStack_81e8 + -0x7fc8" identifier + number_literal) )))) + number_literal) )))) ;) (expression_statement "pcVar28 = pcStack_81e8;" (assignment_expression "pcVar28 = pcStack_81e8" identifier = identifier) ;) (if_statement "if (iVar24 == 0) goto LAB_0002e52c;" if (parenthesized_expression "(iVar24 == 0)" ( (binary_expression "iVar24 == 0" identifier == number_literal) )) (goto_statement "goto LAB_0002e52c;" goto statement_identifier ;)) (expression_statement "cmdline_error(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4764,iVar20);" (call_expression "cmdline_error(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4764,iVar20)" identifier (argument_list "(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4764,iVar20)" ( (binary_expression "*(int *)(pcStack_81e8 + -0x7fc8) + -0x4764" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fc8)" * (cast_expression "(int *)(pcStack_81e8 + -0x7fc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_81e8 + -0x7fc8)" ( (binary_expression "pcStack_81e8 + -0x7fc8" identifier + number_literal) )))) + number_literal) , identifier ))) ;) }))) }))) }))) (goto_statement "goto LAB_0002e464;" goto statement_identifier ;) })) })) (expression_statement "(*pcStack_81dc)();" (call_expression "(*pcStack_81dc)()" (parenthesized_expression "(*pcStack_81dc)" ( (pointer_expression "*pcStack_81dc" * identifier) )) (argument_list "()" ( ))) ;) (expression_statement "pcVar28 = pcStack_81e8;" (assignment_expression "pcVar28 = pcStack_81e8" identifier = identifier) ;) (expression_statement "iVar2 = iVar24;" (assignment_expression "iVar2 = iVar24" identifier = identifier) ;) }))) }))) }))) (labeled_statement "LAB_0002e464:\n      iVar2 = iVar2 + 1;" statement_identifier : (expression_statement "iVar2 = iVar2 + 1;" (assignment_expression "iVar2 = iVar2 + 1" identifier = (binary_expression "iVar2 + 1" identifier + number_literal)) ;)) (if_statement "if (iVar4 <= iVar2) goto LAB_0002e52c;" if (parenthesized_expression "(iVar4 <= iVar2)" ( (binary_expression "iVar4 <= iVar2" identifier <= identifier) )) (goto_statement "goto LAB_0002e52c;" goto statement_identifier ;)) (expression_statement "piVar19 = (int *)(iVar15 + iVar2 * 4);" (assignment_expression "piVar19 = (int *)(iVar15 + iVar2 * 4)" identifier = (cast_expression "(int *)(iVar15 + iVar2 * 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar15 + iVar2 * 4)" ( (binary_expression "iVar15 + iVar2 * 4" identifier + (binary_expression "iVar2 * 4" identifier * number_literal)) )))) ;) (expression_statement "pcVar13 = (char *)*piVar19;" (assignment_expression "pcVar13 = (char *)*piVar19" identifier = (cast_expression "(char *)*piVar19" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "*piVar19" * identifier))) ;) (expression_statement "iVar24 = iVar2;" (assignment_expression "iVar24 = iVar2" identifier = identifier) ;) (if_statement "if (*pcVar13 != '-') goto LAB_0002e52c;" if (parenthesized_expression "(*pcVar13 != '-')" ( (binary_expression "*pcVar13 != '-'" (pointer_expression "*pcVar13" * identifier) != (char_literal "'-'" ' character ')) )) (goto_statement "goto LAB_0002e52c;" goto statement_identifier ;)) (goto_statement "goto LAB_0002e488;" goto statement_identifier ;) })) (expression_statement "iVar2 = 1;" (assignment_expression "iVar2 = 1" identifier = number_literal) ;) }))) (labeled_statement "LAB_0002e52c:\n  iVar4 = iVar4 - iVar2;" statement_identifier : (expression_statement "iVar4 = iVar4 - iVar2;" (assignment_expression "iVar4 = iVar4 - iVar2" identifier = (binary_expression "iVar4 - iVar2" identifier - identifier)) ;)) (expression_statement "*(undefined4 *)(*(int *)(pcVar28 + -0x7fd8) + -0x31f4) = 0;" (assignment_expression "*(undefined4 *)(*(int *)(pcVar28 + -0x7fd8) + -0x31f4) = 0" (pointer_expression "*(undefined4 *)(*(int *)(pcVar28 + -0x7fd8) + -0x31f4)" * (cast_expression "(undefined4 *)(*(int *)(pcVar28 + -0x7fd8) + -0x31f4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar28 + -0x7fd8) + -0x31f4)" ( (binary_expression "*(int *)(pcVar28 + -0x7fd8) + -0x31f4" (pointer_expression "*(int *)(pcVar28 + -0x7fd8)" * (cast_expression "(int *)(pcVar28 + -0x7fd8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar28 + -0x7fd8)" ( (binary_expression "pcVar28 + -0x7fd8" identifier + number_literal) )))) + number_literal) )))) = number_literal) ;) (expression_statement "puVar23 = (undefined4 *)(iVar15 + iVar2 * 4);" (assignment_expression "puVar23 = (undefined4 *)(iVar15 + iVar2 * 4)" identifier = (cast_expression "(undefined4 *)(iVar15 + iVar2 * 4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar15 + iVar2 * 4)" ( (binary_expression "iVar15 + iVar2 * 4" identifier + (binary_expression "iVar2 * 4" identifier * number_literal)) )))) ;) (if_statement "if (*(int *)(*(int *)(pcVar28 + -0x7fd8) + -0x31c4) == 0) {\n    if (iVar4 < 2) {\n      FUN_0002861c();\n      puVar18 = puVar23 + iVar4 + 0x3fffffff;\n      iVar24 = FUN_00028968(*puVar18);\n      iVar2 = *(int *)(pcStack_81e8 + -0x7fd8);\n      if (iVar24 != 0) goto LAB_0002e90c;\n      *(undefined4 *)(iVar2 + -0x31f0) = 0;\nLAB_0002efd8:\n      iVar2 = *(int *)(pcStack_81e8 + -0x7fc8);\nLAB_0002efdc:\n      FUN_00028270(iVar2 + -0x4668);\n      pcVar13 = (char *)*puVar23;\nLAB_0002eb34:\n      uVar7 = puVar23[1];\n      puVar9 = (undefined1 *)FUN_00028968(pcVar13);\n      if (puVar9 == (undefined1 *)0x0) {\n        FUN_00028270(*(int *)(pcStack_81e8 + -0x7fc8) + -0x463c);\n        uRam00000000 = 0;\n      }\n      else {\n        *puVar9 = 0;\n      }\n      if (puVar9[1] == '\0') {\n        pcVar27 = (char *)(*(int *)(pcStack_81e8 + -0x7fc8) + -0x48b0);\n      }\n      else {\n        pcVar27 = puVar9 + 1;\n      }\n      puVar9 = (undefined1 *)(**(code **)(pcStack_81e8 + -0x75b8))(pcVar13,0x40);\n      if (puVar9 == (undefined1 *)0x0) {\n        pcVar21 = (char *)0x0;\n      }\n      else {\n        *puVar9 = 0;\n        cVar11 = *pcVar13;\n        pcVar21 = pcVar13;\n        pcVar13 = puVar9 + 1;\n        if (cVar11 == '\0') {\n          pcVar21 = (char *)0x0;\n        }\n      }\n      if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31c8) == 0) {\n        iVar2 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iVar2 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47f4;\n      }\n      if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31cc) == 0) {\n        iVar24 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iVar24 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47f0;\n      }\n      if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d0) == 0) {\n        iVar4 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iVar4 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47ec;\n      }\n      if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4) == 0) {\n        iStack_81f0 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iStack_81f0 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47e8;\n      }\n      pcStack_81ec = pcVar27;\n      uVar6 = dupprintf(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4618,iVar2,iVar24,iVar4);\n      FUN_00028a00(pcVar13,pcVar21,uVar6);\n      safefree(uVar6);\n      iVar2 = scp_sink_setup(pcVar27,*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d0),\n                             *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31cc));\n      if (iVar2 == 0) {\n        FUN_0002d4e0(uVar7);\n        iVar2 = *(int *)(pcStack_81e8 + -0x7fd8);\n        goto LAB_0002e788;\n      }\n    }\n    else {\n      if (iVar4 < 3) {\n        puVar18 = puVar23 + iVar4 + 0x3fffffff;\n        iVar2 = FUN_00028968(*puVar18);\n        if (iVar2 == 0) {\n          *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f0) = 0;\n          iVar2 = *(int *)(pcStack_81e8 + -0x7fc8);\n          if (iVar4 != 2) goto LAB_0002efdc;\n          pcVar13 = (char *)*puVar23;\n          goto LAB_0002eb34;\n        }\n      }\n      else {\n        *(undefined4 *)(*(int *)(pcVar28 + -0x7fd8) + -0x31d4) = 1;\n        puVar18 = puVar23 + iVar4 + 0x3fffffff;\n        iVar2 = FUN_00028968(*puVar18);\n        if (iVar2 == 0) {\n          *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f0) = 0;\n          goto LAB_0002efd8;\n        }\n      }\n      iVar2 = *(int *)(pcStack_81e8 + -0x7fd8);\nLAB_0002e90c:\n      *(undefined4 *)(iVar2 + -0x31f0) = 1;\n      pcVar13 = (char *)*puVar18;\n      puVar9 = (undefined1 *)FUN_00028968(pcVar13);\n      if (puVar9 == (undefined1 *)0x0) {\n        FUN_00028270(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4720);\n        uRam00000000 = 0;\n      }\n      else {\n        *puVar9 = 0;\n      }\n      if (puVar9[1] == '\0') {\n        pcVar21 = (char *)(*(int *)(pcStack_81e8 + -0x7fc8) + -0x48b0);\n      }\n      else {\n        pcVar21 = puVar9 + 1;\n      }\n      puVar9 = (undefined1 *)(**(code **)(pcStack_81e8 + -0x75b8))(pcVar13,0x40);\n      if (puVar9 == (undefined1 *)0x0) {\n        pcVar27 = (char *)0x0;\n      }\n      else {\n        *puVar9 = 0;\n        cVar11 = *pcVar13;\n        pcVar27 = pcVar13;\n        pcVar13 = puVar9 + 1;\n        if (cVar11 == '\0') {\n          pcVar27 = (char *)0x0;\n        }\n      }\n      if (iVar4 == 2) {\n        iVar2 = FUN_00028968(*puVar23);\n        if (iVar2 != 0) {\n          FUN_00028270(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4704,*puVar23);\n        }\n        iVar2 = (**(code **)(pcStack_81e8 + -0x7c30))(*puVar23,1);\n        if (iVar2 == 0) {\n          FUN_00028270(*(int *)(pcStack_81e8 + -0x7fc8) + -0x46e0,*puVar23);\n          iVar24 = *(int *)(pcStack_81e8 + -0x7fd8);\n        }\n        else {\n          iVar24 = *(int *)(pcStack_81e8 + -0x7fd8);\n          if (iVar2 == 2) {\n            *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4) = 1;\n            goto LAB_0002e988;\n          }\n        }\n      }\n      else {\nLAB_0002e988:\n        iVar24 = *(int *)(pcStack_81e8 + -0x7fd8);\n      }\n      if (*(int *)(iVar24 + -0x31c8) == 0) {\n        iVar2 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iVar2 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47f4;\n      }\n      if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31cc) == 0) {\n        iVar24 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iVar24 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47f0;\n      }\n      if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d0) == 0) {\n        iVar15 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iVar15 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47ec;\n      }\n      if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4) == 0) {\n        iStack_81f0 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iStack_81f0 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47e8;\n      }\n      pcStack_81ec = pcVar21;\n      uVar7 = dupprintf(*(int *)(pcStack_81e8 + -0x7fc8) + -0x46c0,iVar2,iVar24,iVar15);\n      FUN_00028a00(pcVar13,pcVar27,uVar7);\n      safefree(uVar7);\n      pcVar27 = *(char **)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4);\n      iVar2 = scp_source_setup(pcVar21);\n      if ((iVar2 == 0) && (1 < iVar4)) {\n        puVar18 = puVar23 + iVar4 + -1;\n        iVar24 = *(int *)(pcStack_81e8 + -0x7db0);\n        iVar25 = *(int *)(pcStack_81e8 + -0x7fc8);\n        iVar15 = *(int *)(pcStack_81e8 + -0x7db0);\n        iVar4 = *(int *)(pcStack_81e8 + -0x7fc8);\n        do {\n          pcVar13 = (char *)*puVar23;\n          iVar2 = FUN_00028968(pcVar13);\n          if (iVar2 == 0) {\n            pcVar27 = (char *)0x1;\n            iVar2 = (**(code **)(pcStack_81e8 + -0x7c30))(pcVar13,1,pcVar13);\n            if (iVar2 == 0) {\n              (*(code *)(iVar15 + -0x59a8))(iVar25 + -0x4688);\n              pcVar27 = pcVar13;\n            }\n            else if (iVar2 == 1) {\n              (*(code *)(iVar24 + -0x4b8c))(pcVar13);\n            }\n            else {\n              iVar2 = (**(code **)(pcStack_81e8 + -0x7c2c))();\n              if (iVar2 == 0) {\n                (*(code *)(iVar15 + -0x59a8))(iVar25 + -0x4688);\n                pcVar27 = pcVar13;\n              }\n              else {\n                while (iVar26 = (**(code **)(pcStack_81e8 + -0x7c28))(iVar2), iVar26 != 0) {\n                  (*(code *)(iVar24 + -0x4b8c))(iVar26);\n                  safefree(iVar26);\n                }\n                (**(code **)(pcStack_81e8 + -0x7c24))(iVar2);\n              }\n            }\n          }\n          else {\n            pcVar27 = (char *)(iVar4 + -0x46ac);\n            FUN_00027ff8(**(undefined4 **)(pcStack_81e8 + -0x7460));\n            *(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31e0) =\n                 *(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31e0) + 1;\n          }\n          puVar23 = puVar23 + 1;\n          iVar2 = *(int *)(pcStack_81e8 + -0x7fd8);\n        } while (puVar18 != puVar23);\n        goto LAB_0002e788;\n      }\n    }\n  }\n  else {\n    if (iVar4 == 1) {\n      pcVar13 = (char *)*puVar23;\n    }\n    else {\n      FUN_0002861c();\n      pcVar13 = (char *)*puVar23;\n    }\n    puVar9 = (undefined1 *)FUN_00028968(pcVar13);\n    if (puVar9 == (undefined1 *)0x0) {\n      FUN_00028270(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4750);\n      uRam00000000 = 0;\n    }\n    else {\n      *puVar9 = 0;\n    }\n    if (puVar9[1] == '\0') {\n      puVar9 = (undefined1 *)(**(code **)(pcStack_81e8 + -0x75b8))(pcVar13,0x40);\n      if (puVar9 == (undefined1 *)0x0) {\n        puVar23 = (undefined4 *)safemalloc(0x68,1);\n        iVar2 = *(int *)(pcStack_81e8 + -0x7fc8);\n        uVar7 = *(undefined4 *)(iVar2 + -0x4728);\n        *puVar23 = *(undefined4 *)(iVar2 + -0x472c);\n        puVar23[1] = uVar7;\n        *(undefined1 *)(puVar23 + 2) = *(undefined1 *)(iVar2 + -0x4724);\n        iVar2 = (**(code **)(pcStack_81e8 + -0x752c))(puVar23);\n        pcVar10 = (char *)((int)puVar23 + iVar2);\n        pcVar21 = (char *)(*(int *)(pcStack_81e8 + -0x7fc8) + -0x48b0);\n        cVar11 = '.';\n        pcVar27 = (char *)0x0;\n        pcVar22 = pcVar21;\n        goto LAB_0002e6b4;\n      }\n      pcVar21 = (char *)(*(int *)(pcStack_81e8 + -0x7fc8) + -0x48b0);\nLAB_0002e5ac:\n      *puVar9 = 0;\n      cVar11 = *pcVar13;\n      pcVar27 = pcVar13;\n      pcVar13 = puVar9 + 1;\n      if (cVar11 == '\0') {\n        pcVar27 = (char *)0x0;\n      }\n    }\n    else {\n      pcVar21 = puVar9 + 1;\n      puVar9 = (undefined1 *)(**(code **)(pcStack_81e8 + -0x75b8))(pcVar13);\n      if (puVar9 != (undefined1 *)0x0) goto LAB_0002e5ac;\n      pcVar27 = (char *)0x0;\n    }\n    iVar2 = (**(code **)(pcStack_81e8 + -0x752c))(pcVar21);\n    puVar23 = (undefined4 *)safemalloc((iVar2 + 0x19) * 4,1);\n    iVar2 = *(int *)(pcStack_81e8 + -0x7fc8);\n    uVar7 = *(undefined4 *)(iVar2 + -0x4728);\n    *puVar23 = *(undefined4 *)(iVar2 + -0x472c);\n    puVar23[1] = uVar7;\n    *(undefined1 *)(puVar23 + 2) = *(undefined1 *)(iVar2 + -0x4724);\n    iVar2 = (**(code **)(pcStack_81e8 + -0x752c))(puVar23);\n    pcVar10 = (char *)((int)puVar23 + iVar2);\n    cVar11 = *pcVar21;\n    pcVar22 = pcVar21;\n    while (cVar11 != '\0') {\nLAB_0002e6b4:\n      if (cVar11 == '\'') {\n        builtin_strncpy(pcVar10,"\'\\\'\'",4);\n        pcVar10 = pcVar10 + 4;\n      }\n      else {\n        *pcVar10 = cVar11;\n        pcVar10 = pcVar10 + 1;\n      }\n      pcVar21 = pcVar21 + 1;\n      cVar11 = *pcVar21;\n    }\n    *pcVar10 = '\'';\n    pcVar10[1] = '\0';\n    FUN_00028a00(pcVar13,pcVar27,puVar23);\n    safefree(puVar23);\n    if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31ec) != 0) {\n      scp_sftp_listdir(pcVar22);\n      iVar2 = *(int *)(pcStack_81e8 + -0x7fd8);\n      goto LAB_0002e788;\n    }\n    puVar23 = *(undefined4 **)(pcStack_81e8 + -0x7594);\n    while( true ) {\n      pcVar27 = (char *)0x1;\n      iVar2 = FUN_000280f4(&cStack_81d5);\n      if (iVar2 < 1) break;\n      (**(code **)(pcStack_81e8 + -0x75c4))((int)cStack_81d5,*puVar23);\n    }\n  }" if (parenthesized_expression "(*(int *)(*(int *)(pcVar28 + -0x7fd8) + -0x31c4) == 0)" ( (binary_expression "*(int *)(*(int *)(pcVar28 + -0x7fd8) + -0x31c4) == 0" (pointer_expression "*(int *)(*(int *)(pcVar28 + -0x7fd8) + -0x31c4)" * (cast_expression "(int *)(*(int *)(pcVar28 + -0x7fd8) + -0x31c4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar28 + -0x7fd8) + -0x31c4)" ( (binary_expression "*(int *)(pcVar28 + -0x7fd8) + -0x31c4" (pointer_expression "*(int *)(pcVar28 + -0x7fd8)" * (cast_expression "(int *)(pcVar28 + -0x7fd8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar28 + -0x7fd8)" ( (binary_expression "pcVar28 + -0x7fd8" identifier + number_literal) )))) + number_literal) )))) == number_literal) )) (compound_statement "{\n    if (iVar4 < 2) {\n      FUN_0002861c();\n      puVar18 = puVar23 + iVar4 + 0x3fffffff;\n      iVar24 = FUN_00028968(*puVar18);\n      iVar2 = *(int *)(pcStack_81e8 + -0x7fd8);\n      if (iVar24 != 0) goto LAB_0002e90c;\n      *(undefined4 *)(iVar2 + -0x31f0) = 0;\nLAB_0002efd8:\n      iVar2 = *(int *)(pcStack_81e8 + -0x7fc8);\nLAB_0002efdc:\n      FUN_00028270(iVar2 + -0x4668);\n      pcVar13 = (char *)*puVar23;\nLAB_0002eb34:\n      uVar7 = puVar23[1];\n      puVar9 = (undefined1 *)FUN_00028968(pcVar13);\n      if (puVar9 == (undefined1 *)0x0) {\n        FUN_00028270(*(int *)(pcStack_81e8 + -0x7fc8) + -0x463c);\n        uRam00000000 = 0;\n      }\n      else {\n        *puVar9 = 0;\n      }\n      if (puVar9[1] == '\0') {\n        pcVar27 = (char *)(*(int *)(pcStack_81e8 + -0x7fc8) + -0x48b0);\n      }\n      else {\n        pcVar27 = puVar9 + 1;\n      }\n      puVar9 = (undefined1 *)(**(code **)(pcStack_81e8 + -0x75b8))(pcVar13,0x40);\n      if (puVar9 == (undefined1 *)0x0) {\n        pcVar21 = (char *)0x0;\n      }\n      else {\n        *puVar9 = 0;\n        cVar11 = *pcVar13;\n        pcVar21 = pcVar13;\n        pcVar13 = puVar9 + 1;\n        if (cVar11 == '\0') {\n          pcVar21 = (char *)0x0;\n        }\n      }\n      if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31c8) == 0) {\n        iVar2 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iVar2 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47f4;\n      }\n      if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31cc) == 0) {\n        iVar24 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iVar24 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47f0;\n      }\n      if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d0) == 0) {\n        iVar4 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iVar4 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47ec;\n      }\n      if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4) == 0) {\n        iStack_81f0 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iStack_81f0 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47e8;\n      }\n      pcStack_81ec = pcVar27;\n      uVar6 = dupprintf(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4618,iVar2,iVar24,iVar4);\n      FUN_00028a00(pcVar13,pcVar21,uVar6);\n      safefree(uVar6);\n      iVar2 = scp_sink_setup(pcVar27,*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d0),\n                             *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31cc));\n      if (iVar2 == 0) {\n        FUN_0002d4e0(uVar7);\n        iVar2 = *(int *)(pcStack_81e8 + -0x7fd8);\n        goto LAB_0002e788;\n      }\n    }\n    else {\n      if (iVar4 < 3) {\n        puVar18 = puVar23 + iVar4 + 0x3fffffff;\n        iVar2 = FUN_00028968(*puVar18);\n        if (iVar2 == 0) {\n          *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f0) = 0;\n          iVar2 = *(int *)(pcStack_81e8 + -0x7fc8);\n          if (iVar4 != 2) goto LAB_0002efdc;\n          pcVar13 = (char *)*puVar23;\n          goto LAB_0002eb34;\n        }\n      }\n      else {\n        *(undefined4 *)(*(int *)(pcVar28 + -0x7fd8) + -0x31d4) = 1;\n        puVar18 = puVar23 + iVar4 + 0x3fffffff;\n        iVar2 = FUN_00028968(*puVar18);\n        if (iVar2 == 0) {\n          *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f0) = 0;\n          goto LAB_0002efd8;\n        }\n      }\n      iVar2 = *(int *)(pcStack_81e8 + -0x7fd8);\nLAB_0002e90c:\n      *(undefined4 *)(iVar2 + -0x31f0) = 1;\n      pcVar13 = (char *)*puVar18;\n      puVar9 = (undefined1 *)FUN_00028968(pcVar13);\n      if (puVar9 == (undefined1 *)0x0) {\n        FUN_00028270(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4720);\n        uRam00000000 = 0;\n      }\n      else {\n        *puVar9 = 0;\n      }\n      if (puVar9[1] == '\0') {\n        pcVar21 = (char *)(*(int *)(pcStack_81e8 + -0x7fc8) + -0x48b0);\n      }\n      else {\n        pcVar21 = puVar9 + 1;\n      }\n      puVar9 = (undefined1 *)(**(code **)(pcStack_81e8 + -0x75b8))(pcVar13,0x40);\n      if (puVar9 == (undefined1 *)0x0) {\n        pcVar27 = (char *)0x0;\n      }\n      else {\n        *puVar9 = 0;\n        cVar11 = *pcVar13;\n        pcVar27 = pcVar13;\n        pcVar13 = puVar9 + 1;\n        if (cVar11 == '\0') {\n          pcVar27 = (char *)0x0;\n        }\n      }\n      if (iVar4 == 2) {\n        iVar2 = FUN_00028968(*puVar23);\n        if (iVar2 != 0) {\n          FUN_00028270(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4704,*puVar23);\n        }\n        iVar2 = (**(code **)(pcStack_81e8 + -0x7c30))(*puVar23,1);\n        if (iVar2 == 0) {\n          FUN_00028270(*(int *)(pcStack_81e8 + -0x7fc8) + -0x46e0,*puVar23);\n          iVar24 = *(int *)(pcStack_81e8 + -0x7fd8);\n        }\n        else {\n          iVar24 = *(int *)(pcStack_81e8 + -0x7fd8);\n          if (iVar2 == 2) {\n            *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4) = 1;\n            goto LAB_0002e988;\n          }\n        }\n      }\n      else {\nLAB_0002e988:\n        iVar24 = *(int *)(pcStack_81e8 + -0x7fd8);\n      }\n      if (*(int *)(iVar24 + -0x31c8) == 0) {\n        iVar2 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iVar2 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47f4;\n      }\n      if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31cc) == 0) {\n        iVar24 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iVar24 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47f0;\n      }\n      if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d0) == 0) {\n        iVar15 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iVar15 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47ec;\n      }\n      if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4) == 0) {\n        iStack_81f0 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iStack_81f0 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47e8;\n      }\n      pcStack_81ec = pcVar21;\n      uVar7 = dupprintf(*(int *)(pcStack_81e8 + -0x7fc8) + -0x46c0,iVar2,iVar24,iVar15);\n      FUN_00028a00(pcVar13,pcVar27,uVar7);\n      safefree(uVar7);\n      pcVar27 = *(char **)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4);\n      iVar2 = scp_source_setup(pcVar21);\n      if ((iVar2 == 0) && (1 < iVar4)) {\n        puVar18 = puVar23 + iVar4 + -1;\n        iVar24 = *(int *)(pcStack_81e8 + -0x7db0);\n        iVar25 = *(int *)(pcStack_81e8 + -0x7fc8);\n        iVar15 = *(int *)(pcStack_81e8 + -0x7db0);\n        iVar4 = *(int *)(pcStack_81e8 + -0x7fc8);\n        do {\n          pcVar13 = (char *)*puVar23;\n          iVar2 = FUN_00028968(pcVar13);\n          if (iVar2 == 0) {\n            pcVar27 = (char *)0x1;\n            iVar2 = (**(code **)(pcStack_81e8 + -0x7c30))(pcVar13,1,pcVar13);\n            if (iVar2 == 0) {\n              (*(code *)(iVar15 + -0x59a8))(iVar25 + -0x4688);\n              pcVar27 = pcVar13;\n            }\n            else if (iVar2 == 1) {\n              (*(code *)(iVar24 + -0x4b8c))(pcVar13);\n            }\n            else {\n              iVar2 = (**(code **)(pcStack_81e8 + -0x7c2c))();\n              if (iVar2 == 0) {\n                (*(code *)(iVar15 + -0x59a8))(iVar25 + -0x4688);\n                pcVar27 = pcVar13;\n              }\n              else {\n                while (iVar26 = (**(code **)(pcStack_81e8 + -0x7c28))(iVar2), iVar26 != 0) {\n                  (*(code *)(iVar24 + -0x4b8c))(iVar26);\n                  safefree(iVar26);\n                }\n                (**(code **)(pcStack_81e8 + -0x7c24))(iVar2);\n              }\n            }\n          }\n          else {\n            pcVar27 = (char *)(iVar4 + -0x46ac);\n            FUN_00027ff8(**(undefined4 **)(pcStack_81e8 + -0x7460));\n            *(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31e0) =\n                 *(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31e0) + 1;\n          }\n          puVar23 = puVar23 + 1;\n          iVar2 = *(int *)(pcStack_81e8 + -0x7fd8);\n        } while (puVar18 != puVar23);\n        goto LAB_0002e788;\n      }\n    }\n  }" { (if_statement "if (iVar4 < 2) {\n      FUN_0002861c();\n      puVar18 = puVar23 + iVar4 + 0x3fffffff;\n      iVar24 = FUN_00028968(*puVar18);\n      iVar2 = *(int *)(pcStack_81e8 + -0x7fd8);\n      if (iVar24 != 0) goto LAB_0002e90c;\n      *(undefined4 *)(iVar2 + -0x31f0) = 0;\nLAB_0002efd8:\n      iVar2 = *(int *)(pcStack_81e8 + -0x7fc8);\nLAB_0002efdc:\n      FUN_00028270(iVar2 + -0x4668);\n      pcVar13 = (char *)*puVar23;\nLAB_0002eb34:\n      uVar7 = puVar23[1];\n      puVar9 = (undefined1 *)FUN_00028968(pcVar13);\n      if (puVar9 == (undefined1 *)0x0) {\n        FUN_00028270(*(int *)(pcStack_81e8 + -0x7fc8) + -0x463c);\n        uRam00000000 = 0;\n      }\n      else {\n        *puVar9 = 0;\n      }\n      if (puVar9[1] == '\0') {\n        pcVar27 = (char *)(*(int *)(pcStack_81e8 + -0x7fc8) + -0x48b0);\n      }\n      else {\n        pcVar27 = puVar9 + 1;\n      }\n      puVar9 = (undefined1 *)(**(code **)(pcStack_81e8 + -0x75b8))(pcVar13,0x40);\n      if (puVar9 == (undefined1 *)0x0) {\n        pcVar21 = (char *)0x0;\n      }\n      else {\n        *puVar9 = 0;\n        cVar11 = *pcVar13;\n        pcVar21 = pcVar13;\n        pcVar13 = puVar9 + 1;\n        if (cVar11 == '\0') {\n          pcVar21 = (char *)0x0;\n        }\n      }\n      if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31c8) == 0) {\n        iVar2 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iVar2 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47f4;\n      }\n      if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31cc) == 0) {\n        iVar24 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iVar24 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47f0;\n      }\n      if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d0) == 0) {\n        iVar4 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iVar4 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47ec;\n      }\n      if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4) == 0) {\n        iStack_81f0 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iStack_81f0 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47e8;\n      }\n      pcStack_81ec = pcVar27;\n      uVar6 = dupprintf(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4618,iVar2,iVar24,iVar4);\n      FUN_00028a00(pcVar13,pcVar21,uVar6);\n      safefree(uVar6);\n      iVar2 = scp_sink_setup(pcVar27,*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d0),\n                             *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31cc));\n      if (iVar2 == 0) {\n        FUN_0002d4e0(uVar7);\n        iVar2 = *(int *)(pcStack_81e8 + -0x7fd8);\n        goto LAB_0002e788;\n      }\n    }\n    else {\n      if (iVar4 < 3) {\n        puVar18 = puVar23 + iVar4 + 0x3fffffff;\n        iVar2 = FUN_00028968(*puVar18);\n        if (iVar2 == 0) {\n          *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f0) = 0;\n          iVar2 = *(int *)(pcStack_81e8 + -0x7fc8);\n          if (iVar4 != 2) goto LAB_0002efdc;\n          pcVar13 = (char *)*puVar23;\n          goto LAB_0002eb34;\n        }\n      }\n      else {\n        *(undefined4 *)(*(int *)(pcVar28 + -0x7fd8) + -0x31d4) = 1;\n        puVar18 = puVar23 + iVar4 + 0x3fffffff;\n        iVar2 = FUN_00028968(*puVar18);\n        if (iVar2 == 0) {\n          *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f0) = 0;\n          goto LAB_0002efd8;\n        }\n      }\n      iVar2 = *(int *)(pcStack_81e8 + -0x7fd8);\nLAB_0002e90c:\n      *(undefined4 *)(iVar2 + -0x31f0) = 1;\n      pcVar13 = (char *)*puVar18;\n      puVar9 = (undefined1 *)FUN_00028968(pcVar13);\n      if (puVar9 == (undefined1 *)0x0) {\n        FUN_00028270(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4720);\n        uRam00000000 = 0;\n      }\n      else {\n        *puVar9 = 0;\n      }\n      if (puVar9[1] == '\0') {\n        pcVar21 = (char *)(*(int *)(pcStack_81e8 + -0x7fc8) + -0x48b0);\n      }\n      else {\n        pcVar21 = puVar9 + 1;\n      }\n      puVar9 = (undefined1 *)(**(code **)(pcStack_81e8 + -0x75b8))(pcVar13,0x40);\n      if (puVar9 == (undefined1 *)0x0) {\n        pcVar27 = (char *)0x0;\n      }\n      else {\n        *puVar9 = 0;\n        cVar11 = *pcVar13;\n        pcVar27 = pcVar13;\n        pcVar13 = puVar9 + 1;\n        if (cVar11 == '\0') {\n          pcVar27 = (char *)0x0;\n        }\n      }\n      if (iVar4 == 2) {\n        iVar2 = FUN_00028968(*puVar23);\n        if (iVar2 != 0) {\n          FUN_00028270(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4704,*puVar23);\n        }\n        iVar2 = (**(code **)(pcStack_81e8 + -0x7c30))(*puVar23,1);\n        if (iVar2 == 0) {\n          FUN_00028270(*(int *)(pcStack_81e8 + -0x7fc8) + -0x46e0,*puVar23);\n          iVar24 = *(int *)(pcStack_81e8 + -0x7fd8);\n        }\n        else {\n          iVar24 = *(int *)(pcStack_81e8 + -0x7fd8);\n          if (iVar2 == 2) {\n            *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4) = 1;\n            goto LAB_0002e988;\n          }\n        }\n      }\n      else {\nLAB_0002e988:\n        iVar24 = *(int *)(pcStack_81e8 + -0x7fd8);\n      }\n      if (*(int *)(iVar24 + -0x31c8) == 0) {\n        iVar2 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iVar2 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47f4;\n      }\n      if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31cc) == 0) {\n        iVar24 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iVar24 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47f0;\n      }\n      if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d0) == 0) {\n        iVar15 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iVar15 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47ec;\n      }\n      if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4) == 0) {\n        iStack_81f0 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iStack_81f0 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47e8;\n      }\n      pcStack_81ec = pcVar21;\n      uVar7 = dupprintf(*(int *)(pcStack_81e8 + -0x7fc8) + -0x46c0,iVar2,iVar24,iVar15);\n      FUN_00028a00(pcVar13,pcVar27,uVar7);\n      safefree(uVar7);\n      pcVar27 = *(char **)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4);\n      iVar2 = scp_source_setup(pcVar21);\n      if ((iVar2 == 0) && (1 < iVar4)) {\n        puVar18 = puVar23 + iVar4 + -1;\n        iVar24 = *(int *)(pcStack_81e8 + -0x7db0);\n        iVar25 = *(int *)(pcStack_81e8 + -0x7fc8);\n        iVar15 = *(int *)(pcStack_81e8 + -0x7db0);\n        iVar4 = *(int *)(pcStack_81e8 + -0x7fc8);\n        do {\n          pcVar13 = (char *)*puVar23;\n          iVar2 = FUN_00028968(pcVar13);\n          if (iVar2 == 0) {\n            pcVar27 = (char *)0x1;\n            iVar2 = (**(code **)(pcStack_81e8 + -0x7c30))(pcVar13,1,pcVar13);\n            if (iVar2 == 0) {\n              (*(code *)(iVar15 + -0x59a8))(iVar25 + -0x4688);\n              pcVar27 = pcVar13;\n            }\n            else if (iVar2 == 1) {\n              (*(code *)(iVar24 + -0x4b8c))(pcVar13);\n            }\n            else {\n              iVar2 = (**(code **)(pcStack_81e8 + -0x7c2c))();\n              if (iVar2 == 0) {\n                (*(code *)(iVar15 + -0x59a8))(iVar25 + -0x4688);\n                pcVar27 = pcVar13;\n              }\n              else {\n                while (iVar26 = (**(code **)(pcStack_81e8 + -0x7c28))(iVar2), iVar26 != 0) {\n                  (*(code *)(iVar24 + -0x4b8c))(iVar26);\n                  safefree(iVar26);\n                }\n                (**(code **)(pcStack_81e8 + -0x7c24))(iVar2);\n              }\n            }\n          }\n          else {\n            pcVar27 = (char *)(iVar4 + -0x46ac);\n            FUN_00027ff8(**(undefined4 **)(pcStack_81e8 + -0x7460));\n            *(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31e0) =\n                 *(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31e0) + 1;\n          }\n          puVar23 = puVar23 + 1;\n          iVar2 = *(int *)(pcStack_81e8 + -0x7fd8);\n        } while (puVar18 != puVar23);\n        goto LAB_0002e788;\n      }\n    }" if (parenthesized_expression "(iVar4 < 2)" ( (binary_expression "iVar4 < 2" identifier < number_literal) )) (compound_statement "{\n      FUN_0002861c();\n      puVar18 = puVar23 + iVar4 + 0x3fffffff;\n      iVar24 = FUN_00028968(*puVar18);\n      iVar2 = *(int *)(pcStack_81e8 + -0x7fd8);\n      if (iVar24 != 0) goto LAB_0002e90c;\n      *(undefined4 *)(iVar2 + -0x31f0) = 0;\nLAB_0002efd8:\n      iVar2 = *(int *)(pcStack_81e8 + -0x7fc8);\nLAB_0002efdc:\n      FUN_00028270(iVar2 + -0x4668);\n      pcVar13 = (char *)*puVar23;\nLAB_0002eb34:\n      uVar7 = puVar23[1];\n      puVar9 = (undefined1 *)FUN_00028968(pcVar13);\n      if (puVar9 == (undefined1 *)0x0) {\n        FUN_00028270(*(int *)(pcStack_81e8 + -0x7fc8) + -0x463c);\n        uRam00000000 = 0;\n      }\n      else {\n        *puVar9 = 0;\n      }\n      if (puVar9[1] == '\0') {\n        pcVar27 = (char *)(*(int *)(pcStack_81e8 + -0x7fc8) + -0x48b0);\n      }\n      else {\n        pcVar27 = puVar9 + 1;\n      }\n      puVar9 = (undefined1 *)(**(code **)(pcStack_81e8 + -0x75b8))(pcVar13,0x40);\n      if (puVar9 == (undefined1 *)0x0) {\n        pcVar21 = (char *)0x0;\n      }\n      else {\n        *puVar9 = 0;\n        cVar11 = *pcVar13;\n        pcVar21 = pcVar13;\n        pcVar13 = puVar9 + 1;\n        if (cVar11 == '\0') {\n          pcVar21 = (char *)0x0;\n        }\n      }\n      if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31c8) == 0) {\n        iVar2 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iVar2 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47f4;\n      }\n      if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31cc) == 0) {\n        iVar24 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iVar24 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47f0;\n      }\n      if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d0) == 0) {\n        iVar4 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iVar4 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47ec;\n      }\n      if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4) == 0) {\n        iStack_81f0 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iStack_81f0 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47e8;\n      }\n      pcStack_81ec = pcVar27;\n      uVar6 = dupprintf(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4618,iVar2,iVar24,iVar4);\n      FUN_00028a00(pcVar13,pcVar21,uVar6);\n      safefree(uVar6);\n      iVar2 = scp_sink_setup(pcVar27,*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d0),\n                             *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31cc));\n      if (iVar2 == 0) {\n        FUN_0002d4e0(uVar7);\n        iVar2 = *(int *)(pcStack_81e8 + -0x7fd8);\n        goto LAB_0002e788;\n      }\n    }" { (expression_statement "FUN_0002861c();" (call_expression "FUN_0002861c()" identifier (argument_list "()" ( ))) ;) (expression_statement "puVar18 = puVar23 + iVar4 + 0x3fffffff;" (assignment_expression "puVar18 = puVar23 + iVar4 + 0x3fffffff" identifier = (binary_expression "puVar23 + iVar4 + 0x3fffffff" (binary_expression "puVar23 + iVar4" identifier + identifier) + number_literal)) ;) (expression_statement "iVar24 = FUN_00028968(*puVar18);" (assignment_expression "iVar24 = FUN_00028968(*puVar18)" identifier = (call_expression "FUN_00028968(*puVar18)" identifier (argument_list "(*puVar18)" ( (pointer_expression "*puVar18" * identifier) )))) ;) (expression_statement "iVar2 = *(int *)(pcStack_81e8 + -0x7fd8);" (assignment_expression "iVar2 = *(int *)(pcStack_81e8 + -0x7fd8)" identifier = (pointer_expression "*(int *)(pcStack_81e8 + -0x7fd8)" * (cast_expression "(int *)(pcStack_81e8 + -0x7fd8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_81e8 + -0x7fd8)" ( (binary_expression "pcStack_81e8 + -0x7fd8" identifier + number_literal) ))))) ;) (if_statement "if (iVar24 != 0) goto LAB_0002e90c;" if (parenthesized_expression "(iVar24 != 0)" ( (binary_expression "iVar24 != 0" identifier != number_literal) )) (goto_statement "goto LAB_0002e90c;" goto statement_identifier ;)) (expression_statement "*(undefined4 *)(iVar2 + -0x31f0) = 0;" (assignment_expression "*(undefined4 *)(iVar2 + -0x31f0) = 0" (pointer_expression "*(undefined4 *)(iVar2 + -0x31f0)" * (cast_expression "(undefined4 *)(iVar2 + -0x31f0)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + -0x31f0)" ( (binary_expression "iVar2 + -0x31f0" identifier + number_literal) )))) = number_literal) ;) (labeled_statement "LAB_0002efd8:\n      iVar2 = *(int *)(pcStack_81e8 + -0x7fc8);" statement_identifier : (expression_statement "iVar2 = *(int *)(pcStack_81e8 + -0x7fc8);" (assignment_expression "iVar2 = *(int *)(pcStack_81e8 + -0x7fc8)" identifier = (pointer_expression "*(int *)(pcStack_81e8 + -0x7fc8)" * (cast_expression "(int *)(pcStack_81e8 + -0x7fc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_81e8 + -0x7fc8)" ( (binary_expression "pcStack_81e8 + -0x7fc8" identifier + number_literal) ))))) ;)) (labeled_statement "LAB_0002efdc:\n      FUN_00028270(iVar2 + -0x4668);" statement_identifier : (expression_statement "FUN_00028270(iVar2 + -0x4668);" (call_expression "FUN_00028270(iVar2 + -0x4668)" identifier (argument_list "(iVar2 + -0x4668)" ( (binary_expression "iVar2 + -0x4668" identifier + number_literal) ))) ;)) (expression_statement "pcVar13 = (char *)*puVar23;" (assignment_expression "pcVar13 = (char *)*puVar23" identifier = (cast_expression "(char *)*puVar23" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "*puVar23" * identifier))) ;) (labeled_statement "LAB_0002eb34:\n      uVar7 = puVar23[1];" statement_identifier : (expression_statement "uVar7 = puVar23[1];" (assignment_expression "uVar7 = puVar23[1]" identifier = (subscript_expression "puVar23[1]" identifier [ number_literal ])) ;)) (expression_statement "puVar9 = (undefined1 *)FUN_00028968(pcVar13);" (assignment_expression "puVar9 = (undefined1 *)FUN_00028968(pcVar13)" identifier = (cast_expression "(undefined1 *)FUN_00028968(pcVar13)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_00028968(pcVar13)" identifier (argument_list "(pcVar13)" ( identifier ))))) ;) (if_statement "if (puVar9 == (undefined1 *)0x0) {\n        FUN_00028270(*(int *)(pcStack_81e8 + -0x7fc8) + -0x463c);\n        uRam00000000 = 0;\n      }\n      else {\n        *puVar9 = 0;\n      }" if (parenthesized_expression "(puVar9 == (undefined1 *)0x0)" ( (binary_expression "puVar9 == (undefined1 *)0x0" identifier == (cast_expression "(undefined1 *)0x0" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n        FUN_00028270(*(int *)(pcStack_81e8 + -0x7fc8) + -0x463c);\n        uRam00000000 = 0;\n      }" { (expression_statement "FUN_00028270(*(int *)(pcStack_81e8 + -0x7fc8) + -0x463c);" (call_expression "FUN_00028270(*(int *)(pcStack_81e8 + -0x7fc8) + -0x463c)" identifier (argument_list "(*(int *)(pcStack_81e8 + -0x7fc8) + -0x463c)" ( (binary_expression "*(int *)(pcStack_81e8 + -0x7fc8) + -0x463c" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fc8)" * (cast_expression "(int *)(pcStack_81e8 + -0x7fc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_81e8 + -0x7fc8)" ( (binary_expression "pcStack_81e8 + -0x7fc8" identifier + number_literal) )))) + number_literal) ))) ;) (expression_statement "uRam00000000 = 0;" (assignment_expression "uRam00000000 = 0" identifier = number_literal) ;) }) (else_clause "else {\n        *puVar9 = 0;\n      }" else (compound_statement "{\n        *puVar9 = 0;\n      }" { (expression_statement "*puVar9 = 0;" (assignment_expression "*puVar9 = 0" (pointer_expression "*puVar9" * identifier) = number_literal) ;) }))) (if_statement "if (puVar9[1] == '\0') {\n        pcVar27 = (char *)(*(int *)(pcStack_81e8 + -0x7fc8) + -0x48b0);\n      }\n      else {\n        pcVar27 = puVar9 + 1;\n      }" if (parenthesized_expression "(puVar9[1] == '\0')" ( (binary_expression "puVar9[1] == '\0'" (subscript_expression "puVar9[1]" identifier [ number_literal ]) == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n        pcVar27 = (char *)(*(int *)(pcStack_81e8 + -0x7fc8) + -0x48b0);\n      }" { (expression_statement "pcVar27 = (char *)(*(int *)(pcStack_81e8 + -0x7fc8) + -0x48b0);" (assignment_expression "pcVar27 = (char *)(*(int *)(pcStack_81e8 + -0x7fc8) + -0x48b0)" identifier = (cast_expression "(char *)(*(int *)(pcStack_81e8 + -0x7fc8) + -0x48b0)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcStack_81e8 + -0x7fc8) + -0x48b0)" ( (binary_expression "*(int *)(pcStack_81e8 + -0x7fc8) + -0x48b0" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fc8)" * (cast_expression "(int *)(pcStack_81e8 + -0x7fc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_81e8 + -0x7fc8)" ( (binary_expression "pcStack_81e8 + -0x7fc8" identifier + number_literal) )))) + number_literal) )))) ;) }) (else_clause "else {\n        pcVar27 = puVar9 + 1;\n      }" else (compound_statement "{\n        pcVar27 = puVar9 + 1;\n      }" { (expression_statement "pcVar27 = puVar9 + 1;" (assignment_expression "pcVar27 = puVar9 + 1" identifier = (binary_expression "puVar9 + 1" identifier + number_literal)) ;) }))) (expression_statement "puVar9 = (undefined1 *)(**(code **)(pcStack_81e8 + -0x75b8))(pcVar13,0x40);" (assignment_expression "puVar9 = (undefined1 *)(**(code **)(pcStack_81e8 + -0x75b8))(pcVar13,0x40)" identifier = (cast_expression "(undefined1 *)(**(code **)(pcStack_81e8 + -0x75b8))(pcVar13,0x40)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(**(code **)(pcStack_81e8 + -0x75b8))(pcVar13,0x40)" (parenthesized_expression "(**(code **)(pcStack_81e8 + -0x75b8))" ( (pointer_expression "**(code **)(pcStack_81e8 + -0x75b8)" * (pointer_expression "*(code **)(pcStack_81e8 + -0x75b8)" * (cast_expression "(code **)(pcStack_81e8 + -0x75b8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_81e8 + -0x75b8)" ( (binary_expression "pcStack_81e8 + -0x75b8" identifier + number_literal) ))))) )) (argument_list "(pcVar13,0x40)" ( identifier , number_literal ))))) ;) (if_statement "if (puVar9 == (undefined1 *)0x0) {\n        pcVar21 = (char *)0x0;\n      }\n      else {\n        *puVar9 = 0;\n        cVar11 = *pcVar13;\n        pcVar21 = pcVar13;\n        pcVar13 = puVar9 + 1;\n        if (cVar11 == '\0') {\n          pcVar21 = (char *)0x0;\n        }\n      }" if (parenthesized_expression "(puVar9 == (undefined1 *)0x0)" ( (binary_expression "puVar9 == (undefined1 *)0x0" identifier == (cast_expression "(undefined1 *)0x0" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n        pcVar21 = (char *)0x0;\n      }" { (expression_statement "pcVar21 = (char *)0x0;" (assignment_expression "pcVar21 = (char *)0x0" identifier = (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) }) (else_clause "else {\n        *puVar9 = 0;\n        cVar11 = *pcVar13;\n        pcVar21 = pcVar13;\n        pcVar13 = puVar9 + 1;\n        if (cVar11 == '\0') {\n          pcVar21 = (char *)0x0;\n        }\n      }" else (compound_statement "{\n        *puVar9 = 0;\n        cVar11 = *pcVar13;\n        pcVar21 = pcVar13;\n        pcVar13 = puVar9 + 1;\n        if (cVar11 == '\0') {\n          pcVar21 = (char *)0x0;\n        }\n      }" { (expression_statement "*puVar9 = 0;" (assignment_expression "*puVar9 = 0" (pointer_expression "*puVar9" * identifier) = number_literal) ;) (expression_statement "cVar11 = *pcVar13;" (assignment_expression "cVar11 = *pcVar13" identifier = (pointer_expression "*pcVar13" * identifier)) ;) (expression_statement "pcVar21 = pcVar13;" (assignment_expression "pcVar21 = pcVar13" identifier = identifier) ;) (expression_statement "pcVar13 = puVar9 + 1;" (assignment_expression "pcVar13 = puVar9 + 1" identifier = (binary_expression "puVar9 + 1" identifier + number_literal)) ;) (if_statement "if (cVar11 == '\0') {\n          pcVar21 = (char *)0x0;\n        }" if (parenthesized_expression "(cVar11 == '\0')" ( (binary_expression "cVar11 == '\0'" identifier == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n          pcVar21 = (char *)0x0;\n        }" { (expression_statement "pcVar21 = (char *)0x0;" (assignment_expression "pcVar21 = (char *)0x0" identifier = (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) })) }))) (if_statement "if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31c8) == 0) {\n        iVar2 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iVar2 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47f4;\n      }" if (parenthesized_expression "(*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31c8) == 0)" ( (binary_expression "*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31c8) == 0" (pointer_expression "*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31c8)" * (cast_expression "(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31c8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31c8)" ( (binary_expression "*(int *)(pcStack_81e8 + -0x7fd8) + -0x31c8" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fd8)" * (cast_expression "(int *)(pcStack_81e8 + -0x7fd8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_81e8 + -0x7fd8)" ( (binary_expression "pcStack_81e8 + -0x7fd8" identifier + number_literal) )))) + number_literal) )))) == number_literal) )) (compound_statement "{\n        iVar2 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }" { (expression_statement "iVar2 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;" (assignment_expression "iVar2 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc" identifier = (binary_expression "*(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fc8)" * (cast_expression "(int *)(pcStack_81e8 + -0x7fc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_81e8 + -0x7fc8)" ( (binary_expression "pcStack_81e8 + -0x7fc8" identifier + number_literal) )))) + number_literal)) ;) }) (else_clause "else {\n        iVar2 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47f4;\n      }" else (compound_statement "{\n        iVar2 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47f4;\n      }" { (expression_statement "iVar2 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47f4;" (assignment_expression "iVar2 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47f4" identifier = (binary_expression "*(int *)(pcStack_81e8 + -0x7fc8) + -0x47f4" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fc8)" * (cast_expression "(int *)(pcStack_81e8 + -0x7fc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_81e8 + -0x7fc8)" ( (binary_expression "pcStack_81e8 + -0x7fc8" identifier + number_literal) )))) + number_literal)) ;) }))) (if_statement "if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31cc) == 0) {\n        iVar24 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iVar24 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47f0;\n      }" if (parenthesized_expression "(*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31cc) == 0)" ( (binary_expression "*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31cc) == 0" (pointer_expression "*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31cc)" * (cast_expression "(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31cc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31cc)" ( (binary_expression "*(int *)(pcStack_81e8 + -0x7fd8) + -0x31cc" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fd8)" * (cast_expression "(int *)(pcStack_81e8 + -0x7fd8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_81e8 + -0x7fd8)" ( (binary_expression "pcStack_81e8 + -0x7fd8" identifier + number_literal) )))) + number_literal) )))) == number_literal) )) (compound_statement "{\n        iVar24 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }" { (expression_statement "iVar24 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;" (assignment_expression "iVar24 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc" identifier = (binary_expression "*(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fc8)" * (cast_expression "(int *)(pcStack_81e8 + -0x7fc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_81e8 + -0x7fc8)" ( (binary_expression "pcStack_81e8 + -0x7fc8" identifier + number_literal) )))) + number_literal)) ;) }) (else_clause "else {\n        iVar24 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47f0;\n      }" else (compound_statement "{\n        iVar24 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47f0;\n      }" { (expression_statement "iVar24 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47f0;" (assignment_expression "iVar24 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47f0" identifier = (binary_expression "*(int *)(pcStack_81e8 + -0x7fc8) + -0x47f0" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fc8)" * (cast_expression "(int *)(pcStack_81e8 + -0x7fc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_81e8 + -0x7fc8)" ( (binary_expression "pcStack_81e8 + -0x7fc8" identifier + number_literal) )))) + number_literal)) ;) }))) (if_statement "if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d0) == 0) {\n        iVar4 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iVar4 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47ec;\n      }" if (parenthesized_expression "(*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d0) == 0)" ( (binary_expression "*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d0) == 0" (pointer_expression "*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d0)" * (cast_expression "(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d0)" ( (binary_expression "*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d0" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fd8)" * (cast_expression "(int *)(pcStack_81e8 + -0x7fd8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_81e8 + -0x7fd8)" ( (binary_expression "pcStack_81e8 + -0x7fd8" identifier + number_literal) )))) + number_literal) )))) == number_literal) )) (compound_statement "{\n        iVar4 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }" { (expression_statement "iVar4 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;" (assignment_expression "iVar4 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc" identifier = (binary_expression "*(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fc8)" * (cast_expression "(int *)(pcStack_81e8 + -0x7fc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_81e8 + -0x7fc8)" ( (binary_expression "pcStack_81e8 + -0x7fc8" identifier + number_literal) )))) + number_literal)) ;) }) (else_clause "else {\n        iVar4 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47ec;\n      }" else (compound_statement "{\n        iVar4 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47ec;\n      }" { (expression_statement "iVar4 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47ec;" (assignment_expression "iVar4 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47ec" identifier = (binary_expression "*(int *)(pcStack_81e8 + -0x7fc8) + -0x47ec" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fc8)" * (cast_expression "(int *)(pcStack_81e8 + -0x7fc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_81e8 + -0x7fc8)" ( (binary_expression "pcStack_81e8 + -0x7fc8" identifier + number_literal) )))) + number_literal)) ;) }))) (if_statement "if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4) == 0) {\n        iStack_81f0 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iStack_81f0 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47e8;\n      }" if (parenthesized_expression "(*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4) == 0)" ( (binary_expression "*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4) == 0" (pointer_expression "*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4)" * (cast_expression "(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4)" ( (binary_expression "*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fd8)" * (cast_expression "(int *)(pcStack_81e8 + -0x7fd8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_81e8 + -0x7fd8)" ( (binary_expression "pcStack_81e8 + -0x7fd8" identifier + number_literal) )))) + number_literal) )))) == number_literal) )) (compound_statement "{\n        iStack_81f0 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }" { (expression_statement "iStack_81f0 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;" (assignment_expression "iStack_81f0 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc" identifier = (binary_expression "*(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fc8)" * (cast_expression "(int *)(pcStack_81e8 + -0x7fc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_81e8 + -0x7fc8)" ( (binary_expression "pcStack_81e8 + -0x7fc8" identifier + number_literal) )))) + number_literal)) ;) }) (else_clause "else {\n        iStack_81f0 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47e8;\n      }" else (compound_statement "{\n        iStack_81f0 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47e8;\n      }" { (expression_statement "iStack_81f0 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47e8;" (assignment_expression "iStack_81f0 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47e8" identifier = (binary_expression "*(int *)(pcStack_81e8 + -0x7fc8) + -0x47e8" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fc8)" * (cast_expression "(int *)(pcStack_81e8 + -0x7fc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_81e8 + -0x7fc8)" ( (binary_expression "pcStack_81e8 + -0x7fc8" identifier + number_literal) )))) + number_literal)) ;) }))) (expression_statement "pcStack_81ec = pcVar27;" (assignment_expression "pcStack_81ec = pcVar27" identifier = identifier) ;) (expression_statement "uVar6 = dupprintf(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4618,iVar2,iVar24,iVar4);" (assignment_expression "uVar6 = dupprintf(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4618,iVar2,iVar24,iVar4)" identifier = (call_expression "dupprintf(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4618,iVar2,iVar24,iVar4)" identifier (argument_list "(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4618,iVar2,iVar24,iVar4)" ( (binary_expression "*(int *)(pcStack_81e8 + -0x7fc8) + -0x4618" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fc8)" * (cast_expression "(int *)(pcStack_81e8 + -0x7fc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_81e8 + -0x7fc8)" ( (binary_expression "pcStack_81e8 + -0x7fc8" identifier + number_literal) )))) + number_literal) , identifier , identifier , identifier )))) ;) (expression_statement "FUN_00028a00(pcVar13,pcVar21,uVar6);" (call_expression "FUN_00028a00(pcVar13,pcVar21,uVar6)" identifier (argument_list "(pcVar13,pcVar21,uVar6)" ( identifier , identifier , identifier ))) ;) (expression_statement "safefree(uVar6);" (call_expression "safefree(uVar6)" identifier (argument_list "(uVar6)" ( identifier ))) ;) (expression_statement "iVar2 = scp_sink_setup(pcVar27,*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d0),\n                             *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31cc));" (assignment_expression "iVar2 = scp_sink_setup(pcVar27,*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d0),\n                             *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31cc))" identifier = (call_expression "scp_sink_setup(pcVar27,*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d0),\n                             *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31cc))" identifier (argument_list "(pcVar27,*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d0),\n                             *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31cc))" ( identifier , (pointer_expression "*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d0)" * (cast_expression "(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d0)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d0)" ( (binary_expression "*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d0" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fd8)" * (cast_expression "(int *)(pcStack_81e8 + -0x7fd8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_81e8 + -0x7fd8)" ( (binary_expression "pcStack_81e8 + -0x7fd8" identifier + number_literal) )))) + number_literal) )))) , (pointer_expression "*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31cc)" * (cast_expression "(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31cc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31cc)" ( (binary_expression "*(int *)(pcStack_81e8 + -0x7fd8) + -0x31cc" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fd8)" * (cast_expression "(int *)(pcStack_81e8 + -0x7fd8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_81e8 + -0x7fd8)" ( (binary_expression "pcStack_81e8 + -0x7fd8" identifier + number_literal) )))) + number_literal) )))) )))) ;) (if_statement "if (iVar2 == 0) {\n        FUN_0002d4e0(uVar7);\n        iVar2 = *(int *)(pcStack_81e8 + -0x7fd8);\n        goto LAB_0002e788;\n      }" if (parenthesized_expression "(iVar2 == 0)" ( (binary_expression "iVar2 == 0" identifier == number_literal) )) (compound_statement "{\n        FUN_0002d4e0(uVar7);\n        iVar2 = *(int *)(pcStack_81e8 + -0x7fd8);\n        goto LAB_0002e788;\n      }" { (expression_statement "FUN_0002d4e0(uVar7);" (call_expression "FUN_0002d4e0(uVar7)" identifier (argument_list "(uVar7)" ( identifier ))) ;) (expression_statement "iVar2 = *(int *)(pcStack_81e8 + -0x7fd8);" (assignment_expression "iVar2 = *(int *)(pcStack_81e8 + -0x7fd8)" identifier = (pointer_expression "*(int *)(pcStack_81e8 + -0x7fd8)" * (cast_expression "(int *)(pcStack_81e8 + -0x7fd8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_81e8 + -0x7fd8)" ( (binary_expression "pcStack_81e8 + -0x7fd8" identifier + number_literal) ))))) ;) (goto_statement "goto LAB_0002e788;" goto statement_identifier ;) })) }) (else_clause "else {\n      if (iVar4 < 3) {\n        puVar18 = puVar23 + iVar4 + 0x3fffffff;\n        iVar2 = FUN_00028968(*puVar18);\n        if (iVar2 == 0) {\n          *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f0) = 0;\n          iVar2 = *(int *)(pcStack_81e8 + -0x7fc8);\n          if (iVar4 != 2) goto LAB_0002efdc;\n          pcVar13 = (char *)*puVar23;\n          goto LAB_0002eb34;\n        }\n      }\n      else {\n        *(undefined4 *)(*(int *)(pcVar28 + -0x7fd8) + -0x31d4) = 1;\n        puVar18 = puVar23 + iVar4 + 0x3fffffff;\n        iVar2 = FUN_00028968(*puVar18);\n        if (iVar2 == 0) {\n          *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f0) = 0;\n          goto LAB_0002efd8;\n        }\n      }\n      iVar2 = *(int *)(pcStack_81e8 + -0x7fd8);\nLAB_0002e90c:\n      *(undefined4 *)(iVar2 + -0x31f0) = 1;\n      pcVar13 = (char *)*puVar18;\n      puVar9 = (undefined1 *)FUN_00028968(pcVar13);\n      if (puVar9 == (undefined1 *)0x0) {\n        FUN_00028270(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4720);\n        uRam00000000 = 0;\n      }\n      else {\n        *puVar9 = 0;\n      }\n      if (puVar9[1] == '\0') {\n        pcVar21 = (char *)(*(int *)(pcStack_81e8 + -0x7fc8) + -0x48b0);\n      }\n      else {\n        pcVar21 = puVar9 + 1;\n      }\n      puVar9 = (undefined1 *)(**(code **)(pcStack_81e8 + -0x75b8))(pcVar13,0x40);\n      if (puVar9 == (undefined1 *)0x0) {\n        pcVar27 = (char *)0x0;\n      }\n      else {\n        *puVar9 = 0;\n        cVar11 = *pcVar13;\n        pcVar27 = pcVar13;\n        pcVar13 = puVar9 + 1;\n        if (cVar11 == '\0') {\n          pcVar27 = (char *)0x0;\n        }\n      }\n      if (iVar4 == 2) {\n        iVar2 = FUN_00028968(*puVar23);\n        if (iVar2 != 0) {\n          FUN_00028270(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4704,*puVar23);\n        }\n        iVar2 = (**(code **)(pcStack_81e8 + -0x7c30))(*puVar23,1);\n        if (iVar2 == 0) {\n          FUN_00028270(*(int *)(pcStack_81e8 + -0x7fc8) + -0x46e0,*puVar23);\n          iVar24 = *(int *)(pcStack_81e8 + -0x7fd8);\n        }\n        else {\n          iVar24 = *(int *)(pcStack_81e8 + -0x7fd8);\n          if (iVar2 == 2) {\n            *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4) = 1;\n            goto LAB_0002e988;\n          }\n        }\n      }\n      else {\nLAB_0002e988:\n        iVar24 = *(int *)(pcStack_81e8 + -0x7fd8);\n      }\n      if (*(int *)(iVar24 + -0x31c8) == 0) {\n        iVar2 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iVar2 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47f4;\n      }\n      if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31cc) == 0) {\n        iVar24 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iVar24 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47f0;\n      }\n      if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d0) == 0) {\n        iVar15 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iVar15 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47ec;\n      }\n      if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4) == 0) {\n        iStack_81f0 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iStack_81f0 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47e8;\n      }\n      pcStack_81ec = pcVar21;\n      uVar7 = dupprintf(*(int *)(pcStack_81e8 + -0x7fc8) + -0x46c0,iVar2,iVar24,iVar15);\n      FUN_00028a00(pcVar13,pcVar27,uVar7);\n      safefree(uVar7);\n      pcVar27 = *(char **)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4);\n      iVar2 = scp_source_setup(pcVar21);\n      if ((iVar2 == 0) && (1 < iVar4)) {\n        puVar18 = puVar23 + iVar4 + -1;\n        iVar24 = *(int *)(pcStack_81e8 + -0x7db0);\n        iVar25 = *(int *)(pcStack_81e8 + -0x7fc8);\n        iVar15 = *(int *)(pcStack_81e8 + -0x7db0);\n        iVar4 = *(int *)(pcStack_81e8 + -0x7fc8);\n        do {\n          pcVar13 = (char *)*puVar23;\n          iVar2 = FUN_00028968(pcVar13);\n          if (iVar2 == 0) {\n            pcVar27 = (char *)0x1;\n            iVar2 = (**(code **)(pcStack_81e8 + -0x7c30))(pcVar13,1,pcVar13);\n            if (iVar2 == 0) {\n              (*(code *)(iVar15 + -0x59a8))(iVar25 + -0x4688);\n              pcVar27 = pcVar13;\n            }\n            else if (iVar2 == 1) {\n              (*(code *)(iVar24 + -0x4b8c))(pcVar13);\n            }\n            else {\n              iVar2 = (**(code **)(pcStack_81e8 + -0x7c2c))();\n              if (iVar2 == 0) {\n                (*(code *)(iVar15 + -0x59a8))(iVar25 + -0x4688);\n                pcVar27 = pcVar13;\n              }\n              else {\n                while (iVar26 = (**(code **)(pcStack_81e8 + -0x7c28))(iVar2), iVar26 != 0) {\n                  (*(code *)(iVar24 + -0x4b8c))(iVar26);\n                  safefree(iVar26);\n                }\n                (**(code **)(pcStack_81e8 + -0x7c24))(iVar2);\n              }\n            }\n          }\n          else {\n            pcVar27 = (char *)(iVar4 + -0x46ac);\n            FUN_00027ff8(**(undefined4 **)(pcStack_81e8 + -0x7460));\n            *(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31e0) =\n                 *(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31e0) + 1;\n          }\n          puVar23 = puVar23 + 1;\n          iVar2 = *(int *)(pcStack_81e8 + -0x7fd8);\n        } while (puVar18 != puVar23);\n        goto LAB_0002e788;\n      }\n    }" else (compound_statement "{\n      if (iVar4 < 3) {\n        puVar18 = puVar23 + iVar4 + 0x3fffffff;\n        iVar2 = FUN_00028968(*puVar18);\n        if (iVar2 == 0) {\n          *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f0) = 0;\n          iVar2 = *(int *)(pcStack_81e8 + -0x7fc8);\n          if (iVar4 != 2) goto LAB_0002efdc;\n          pcVar13 = (char *)*puVar23;\n          goto LAB_0002eb34;\n        }\n      }\n      else {\n        *(undefined4 *)(*(int *)(pcVar28 + -0x7fd8) + -0x31d4) = 1;\n        puVar18 = puVar23 + iVar4 + 0x3fffffff;\n        iVar2 = FUN_00028968(*puVar18);\n        if (iVar2 == 0) {\n          *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f0) = 0;\n          goto LAB_0002efd8;\n        }\n      }\n      iVar2 = *(int *)(pcStack_81e8 + -0x7fd8);\nLAB_0002e90c:\n      *(undefined4 *)(iVar2 + -0x31f0) = 1;\n      pcVar13 = (char *)*puVar18;\n      puVar9 = (undefined1 *)FUN_00028968(pcVar13);\n      if (puVar9 == (undefined1 *)0x0) {\n        FUN_00028270(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4720);\n        uRam00000000 = 0;\n      }\n      else {\n        *puVar9 = 0;\n      }\n      if (puVar9[1] == '\0') {\n        pcVar21 = (char *)(*(int *)(pcStack_81e8 + -0x7fc8) + -0x48b0);\n      }\n      else {\n        pcVar21 = puVar9 + 1;\n      }\n      puVar9 = (undefined1 *)(**(code **)(pcStack_81e8 + -0x75b8))(pcVar13,0x40);\n      if (puVar9 == (undefined1 *)0x0) {\n        pcVar27 = (char *)0x0;\n      }\n      else {\n        *puVar9 = 0;\n        cVar11 = *pcVar13;\n        pcVar27 = pcVar13;\n        pcVar13 = puVar9 + 1;\n        if (cVar11 == '\0') {\n          pcVar27 = (char *)0x0;\n        }\n      }\n      if (iVar4 == 2) {\n        iVar2 = FUN_00028968(*puVar23);\n        if (iVar2 != 0) {\n          FUN_00028270(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4704,*puVar23);\n        }\n        iVar2 = (**(code **)(pcStack_81e8 + -0x7c30))(*puVar23,1);\n        if (iVar2 == 0) {\n          FUN_00028270(*(int *)(pcStack_81e8 + -0x7fc8) + -0x46e0,*puVar23);\n          iVar24 = *(int *)(pcStack_81e8 + -0x7fd8);\n        }\n        else {\n          iVar24 = *(int *)(pcStack_81e8 + -0x7fd8);\n          if (iVar2 == 2) {\n            *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4) = 1;\n            goto LAB_0002e988;\n          }\n        }\n      }\n      else {\nLAB_0002e988:\n        iVar24 = *(int *)(pcStack_81e8 + -0x7fd8);\n      }\n      if (*(int *)(iVar24 + -0x31c8) == 0) {\n        iVar2 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iVar2 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47f4;\n      }\n      if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31cc) == 0) {\n        iVar24 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iVar24 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47f0;\n      }\n      if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d0) == 0) {\n        iVar15 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iVar15 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47ec;\n      }\n      if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4) == 0) {\n        iStack_81f0 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iStack_81f0 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47e8;\n      }\n      pcStack_81ec = pcVar21;\n      uVar7 = dupprintf(*(int *)(pcStack_81e8 + -0x7fc8) + -0x46c0,iVar2,iVar24,iVar15);\n      FUN_00028a00(pcVar13,pcVar27,uVar7);\n      safefree(uVar7);\n      pcVar27 = *(char **)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4);\n      iVar2 = scp_source_setup(pcVar21);\n      if ((iVar2 == 0) && (1 < iVar4)) {\n        puVar18 = puVar23 + iVar4 + -1;\n        iVar24 = *(int *)(pcStack_81e8 + -0x7db0);\n        iVar25 = *(int *)(pcStack_81e8 + -0x7fc8);\n        iVar15 = *(int *)(pcStack_81e8 + -0x7db0);\n        iVar4 = *(int *)(pcStack_81e8 + -0x7fc8);\n        do {\n          pcVar13 = (char *)*puVar23;\n          iVar2 = FUN_00028968(pcVar13);\n          if (iVar2 == 0) {\n            pcVar27 = (char *)0x1;\n            iVar2 = (**(code **)(pcStack_81e8 + -0x7c30))(pcVar13,1,pcVar13);\n            if (iVar2 == 0) {\n              (*(code *)(iVar15 + -0x59a8))(iVar25 + -0x4688);\n              pcVar27 = pcVar13;\n            }\n            else if (iVar2 == 1) {\n              (*(code *)(iVar24 + -0x4b8c))(pcVar13);\n            }\n            else {\n              iVar2 = (**(code **)(pcStack_81e8 + -0x7c2c))();\n              if (iVar2 == 0) {\n                (*(code *)(iVar15 + -0x59a8))(iVar25 + -0x4688);\n                pcVar27 = pcVar13;\n              }\n              else {\n                while (iVar26 = (**(code **)(pcStack_81e8 + -0x7c28))(iVar2), iVar26 != 0) {\n                  (*(code *)(iVar24 + -0x4b8c))(iVar26);\n                  safefree(iVar26);\n                }\n                (**(code **)(pcStack_81e8 + -0x7c24))(iVar2);\n              }\n            }\n          }\n          else {\n            pcVar27 = (char *)(iVar4 + -0x46ac);\n            FUN_00027ff8(**(undefined4 **)(pcStack_81e8 + -0x7460));\n            *(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31e0) =\n                 *(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31e0) + 1;\n          }\n          puVar23 = puVar23 + 1;\n          iVar2 = *(int *)(pcStack_81e8 + -0x7fd8);\n        } while (puVar18 != puVar23);\n        goto LAB_0002e788;\n      }\n    }" { (if_statement "if (iVar4 < 3) {\n        puVar18 = puVar23 + iVar4 + 0x3fffffff;\n        iVar2 = FUN_00028968(*puVar18);\n        if (iVar2 == 0) {\n          *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f0) = 0;\n          iVar2 = *(int *)(pcStack_81e8 + -0x7fc8);\n          if (iVar4 != 2) goto LAB_0002efdc;\n          pcVar13 = (char *)*puVar23;\n          goto LAB_0002eb34;\n        }\n      }\n      else {\n        *(undefined4 *)(*(int *)(pcVar28 + -0x7fd8) + -0x31d4) = 1;\n        puVar18 = puVar23 + iVar4 + 0x3fffffff;\n        iVar2 = FUN_00028968(*puVar18);\n        if (iVar2 == 0) {\n          *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f0) = 0;\n          goto LAB_0002efd8;\n        }\n      }" if (parenthesized_expression "(iVar4 < 3)" ( (binary_expression "iVar4 < 3" identifier < number_literal) )) (compound_statement "{\n        puVar18 = puVar23 + iVar4 + 0x3fffffff;\n        iVar2 = FUN_00028968(*puVar18);\n        if (iVar2 == 0) {\n          *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f0) = 0;\n          iVar2 = *(int *)(pcStack_81e8 + -0x7fc8);\n          if (iVar4 != 2) goto LAB_0002efdc;\n          pcVar13 = (char *)*puVar23;\n          goto LAB_0002eb34;\n        }\n      }" { (expression_statement "puVar18 = puVar23 + iVar4 + 0x3fffffff;" (assignment_expression "puVar18 = puVar23 + iVar4 + 0x3fffffff" identifier = (binary_expression "puVar23 + iVar4 + 0x3fffffff" (binary_expression "puVar23 + iVar4" identifier + identifier) + number_literal)) ;) (expression_statement "iVar2 = FUN_00028968(*puVar18);" (assignment_expression "iVar2 = FUN_00028968(*puVar18)" identifier = (call_expression "FUN_00028968(*puVar18)" identifier (argument_list "(*puVar18)" ( (pointer_expression "*puVar18" * identifier) )))) ;) (if_statement "if (iVar2 == 0) {\n          *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f0) = 0;\n          iVar2 = *(int *)(pcStack_81e8 + -0x7fc8);\n          if (iVar4 != 2) goto LAB_0002efdc;\n          pcVar13 = (char *)*puVar23;\n          goto LAB_0002eb34;\n        }" if (parenthesized_expression "(iVar2 == 0)" ( (binary_expression "iVar2 == 0" identifier == number_literal) )) (compound_statement "{\n          *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f0) = 0;\n          iVar2 = *(int *)(pcStack_81e8 + -0x7fc8);\n          if (iVar4 != 2) goto LAB_0002efdc;\n          pcVar13 = (char *)*puVar23;\n          goto LAB_0002eb34;\n        }" { (expression_statement "*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f0) = 0;" (assignment_expression "*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f0) = 0" (pointer_expression "*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f0)" * (cast_expression "(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f0)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f0)" ( (binary_expression "*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f0" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fd8)" * (cast_expression "(int *)(pcStack_81e8 + -0x7fd8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_81e8 + -0x7fd8)" ( (binary_expression "pcStack_81e8 + -0x7fd8" identifier + number_literal) )))) + number_literal) )))) = number_literal) ;) (expression_statement "iVar2 = *(int *)(pcStack_81e8 + -0x7fc8);" (assignment_expression "iVar2 = *(int *)(pcStack_81e8 + -0x7fc8)" identifier = (pointer_expression "*(int *)(pcStack_81e8 + -0x7fc8)" * (cast_expression "(int *)(pcStack_81e8 + -0x7fc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_81e8 + -0x7fc8)" ( (binary_expression "pcStack_81e8 + -0x7fc8" identifier + number_literal) ))))) ;) (if_statement "if (iVar4 != 2) goto LAB_0002efdc;" if (parenthesized_expression "(iVar4 != 2)" ( (binary_expression "iVar4 != 2" identifier != number_literal) )) (goto_statement "goto LAB_0002efdc;" goto statement_identifier ;)) (expression_statement "pcVar13 = (char *)*puVar23;" (assignment_expression "pcVar13 = (char *)*puVar23" identifier = (cast_expression "(char *)*puVar23" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "*puVar23" * identifier))) ;) (goto_statement "goto LAB_0002eb34;" goto statement_identifier ;) })) }) (else_clause "else {\n        *(undefined4 *)(*(int *)(pcVar28 + -0x7fd8) + -0x31d4) = 1;\n        puVar18 = puVar23 + iVar4 + 0x3fffffff;\n        iVar2 = FUN_00028968(*puVar18);\n        if (iVar2 == 0) {\n          *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f0) = 0;\n          goto LAB_0002efd8;\n        }\n      }" else (compound_statement "{\n        *(undefined4 *)(*(int *)(pcVar28 + -0x7fd8) + -0x31d4) = 1;\n        puVar18 = puVar23 + iVar4 + 0x3fffffff;\n        iVar2 = FUN_00028968(*puVar18);\n        if (iVar2 == 0) {\n          *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f0) = 0;\n          goto LAB_0002efd8;\n        }\n      }" { (expression_statement "*(undefined4 *)(*(int *)(pcVar28 + -0x7fd8) + -0x31d4) = 1;" (assignment_expression "*(undefined4 *)(*(int *)(pcVar28 + -0x7fd8) + -0x31d4) = 1" (pointer_expression "*(undefined4 *)(*(int *)(pcVar28 + -0x7fd8) + -0x31d4)" * (cast_expression "(undefined4 *)(*(int *)(pcVar28 + -0x7fd8) + -0x31d4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcVar28 + -0x7fd8) + -0x31d4)" ( (binary_expression "*(int *)(pcVar28 + -0x7fd8) + -0x31d4" (pointer_expression "*(int *)(pcVar28 + -0x7fd8)" * (cast_expression "(int *)(pcVar28 + -0x7fd8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar28 + -0x7fd8)" ( (binary_expression "pcVar28 + -0x7fd8" identifier + number_literal) )))) + number_literal) )))) = number_literal) ;) (expression_statement "puVar18 = puVar23 + iVar4 + 0x3fffffff;" (assignment_expression "puVar18 = puVar23 + iVar4 + 0x3fffffff" identifier = (binary_expression "puVar23 + iVar4 + 0x3fffffff" (binary_expression "puVar23 + iVar4" identifier + identifier) + number_literal)) ;) (expression_statement "iVar2 = FUN_00028968(*puVar18);" (assignment_expression "iVar2 = FUN_00028968(*puVar18)" identifier = (call_expression "FUN_00028968(*puVar18)" identifier (argument_list "(*puVar18)" ( (pointer_expression "*puVar18" * identifier) )))) ;) (if_statement "if (iVar2 == 0) {\n          *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f0) = 0;\n          goto LAB_0002efd8;\n        }" if (parenthesized_expression "(iVar2 == 0)" ( (binary_expression "iVar2 == 0" identifier == number_literal) )) (compound_statement "{\n          *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f0) = 0;\n          goto LAB_0002efd8;\n        }" { (expression_statement "*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f0) = 0;" (assignment_expression "*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f0) = 0" (pointer_expression "*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f0)" * (cast_expression "(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f0)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f0)" ( (binary_expression "*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f0" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fd8)" * (cast_expression "(int *)(pcStack_81e8 + -0x7fd8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_81e8 + -0x7fd8)" ( (binary_expression "pcStack_81e8 + -0x7fd8" identifier + number_literal) )))) + number_literal) )))) = number_literal) ;) (goto_statement "goto LAB_0002efd8;" goto statement_identifier ;) })) }))) (expression_statement "iVar2 = *(int *)(pcStack_81e8 + -0x7fd8);" (assignment_expression "iVar2 = *(int *)(pcStack_81e8 + -0x7fd8)" identifier = (pointer_expression "*(int *)(pcStack_81e8 + -0x7fd8)" * (cast_expression "(int *)(pcStack_81e8 + -0x7fd8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_81e8 + -0x7fd8)" ( (binary_expression "pcStack_81e8 + -0x7fd8" identifier + number_literal) ))))) ;) (labeled_statement "LAB_0002e90c:\n      *(undefined4 *)(iVar2 + -0x31f0) = 1;" statement_identifier : (expression_statement "*(undefined4 *)(iVar2 + -0x31f0) = 1;" (assignment_expression "*(undefined4 *)(iVar2 + -0x31f0) = 1" (pointer_expression "*(undefined4 *)(iVar2 + -0x31f0)" * (cast_expression "(undefined4 *)(iVar2 + -0x31f0)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + -0x31f0)" ( (binary_expression "iVar2 + -0x31f0" identifier + number_literal) )))) = number_literal) ;)) (expression_statement "pcVar13 = (char *)*puVar18;" (assignment_expression "pcVar13 = (char *)*puVar18" identifier = (cast_expression "(char *)*puVar18" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "*puVar18" * identifier))) ;) (expression_statement "puVar9 = (undefined1 *)FUN_00028968(pcVar13);" (assignment_expression "puVar9 = (undefined1 *)FUN_00028968(pcVar13)" identifier = (cast_expression "(undefined1 *)FUN_00028968(pcVar13)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_00028968(pcVar13)" identifier (argument_list "(pcVar13)" ( identifier ))))) ;) (if_statement "if (puVar9 == (undefined1 *)0x0) {\n        FUN_00028270(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4720);\n        uRam00000000 = 0;\n      }\n      else {\n        *puVar9 = 0;\n      }" if (parenthesized_expression "(puVar9 == (undefined1 *)0x0)" ( (binary_expression "puVar9 == (undefined1 *)0x0" identifier == (cast_expression "(undefined1 *)0x0" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n        FUN_00028270(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4720);\n        uRam00000000 = 0;\n      }" { (expression_statement "FUN_00028270(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4720);" (call_expression "FUN_00028270(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4720)" identifier (argument_list "(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4720)" ( (binary_expression "*(int *)(pcStack_81e8 + -0x7fc8) + -0x4720" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fc8)" * (cast_expression "(int *)(pcStack_81e8 + -0x7fc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_81e8 + -0x7fc8)" ( (binary_expression "pcStack_81e8 + -0x7fc8" identifier + number_literal) )))) + number_literal) ))) ;) (expression_statement "uRam00000000 = 0;" (assignment_expression "uRam00000000 = 0" identifier = number_literal) ;) }) (else_clause "else {\n        *puVar9 = 0;\n      }" else (compound_statement "{\n        *puVar9 = 0;\n      }" { (expression_statement "*puVar9 = 0;" (assignment_expression "*puVar9 = 0" (pointer_expression "*puVar9" * identifier) = number_literal) ;) }))) (if_statement "if (puVar9[1] == '\0') {\n        pcVar21 = (char *)(*(int *)(pcStack_81e8 + -0x7fc8) + -0x48b0);\n      }\n      else {\n        pcVar21 = puVar9 + 1;\n      }" if (parenthesized_expression "(puVar9[1] == '\0')" ( (binary_expression "puVar9[1] == '\0'" (subscript_expression "puVar9[1]" identifier [ number_literal ]) == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n        pcVar21 = (char *)(*(int *)(pcStack_81e8 + -0x7fc8) + -0x48b0);\n      }" { (expression_statement "pcVar21 = (char *)(*(int *)(pcStack_81e8 + -0x7fc8) + -0x48b0);" (assignment_expression "pcVar21 = (char *)(*(int *)(pcStack_81e8 + -0x7fc8) + -0x48b0)" identifier = (cast_expression "(char *)(*(int *)(pcStack_81e8 + -0x7fc8) + -0x48b0)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcStack_81e8 + -0x7fc8) + -0x48b0)" ( (binary_expression "*(int *)(pcStack_81e8 + -0x7fc8) + -0x48b0" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fc8)" * (cast_expression "(int *)(pcStack_81e8 + -0x7fc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_81e8 + -0x7fc8)" ( (binary_expression "pcStack_81e8 + -0x7fc8" identifier + number_literal) )))) + number_literal) )))) ;) }) (else_clause "else {\n        pcVar21 = puVar9 + 1;\n      }" else (compound_statement "{\n        pcVar21 = puVar9 + 1;\n      }" { (expression_statement "pcVar21 = puVar9 + 1;" (assignment_expression "pcVar21 = puVar9 + 1" identifier = (binary_expression "puVar9 + 1" identifier + number_literal)) ;) }))) (expression_statement "puVar9 = (undefined1 *)(**(code **)(pcStack_81e8 + -0x75b8))(pcVar13,0x40);" (assignment_expression "puVar9 = (undefined1 *)(**(code **)(pcStack_81e8 + -0x75b8))(pcVar13,0x40)" identifier = (cast_expression "(undefined1 *)(**(code **)(pcStack_81e8 + -0x75b8))(pcVar13,0x40)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(**(code **)(pcStack_81e8 + -0x75b8))(pcVar13,0x40)" (parenthesized_expression "(**(code **)(pcStack_81e8 + -0x75b8))" ( (pointer_expression "**(code **)(pcStack_81e8 + -0x75b8)" * (pointer_expression "*(code **)(pcStack_81e8 + -0x75b8)" * (cast_expression "(code **)(pcStack_81e8 + -0x75b8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_81e8 + -0x75b8)" ( (binary_expression "pcStack_81e8 + -0x75b8" identifier + number_literal) ))))) )) (argument_list "(pcVar13,0x40)" ( identifier , number_literal ))))) ;) (if_statement "if (puVar9 == (undefined1 *)0x0) {\n        pcVar27 = (char *)0x0;\n      }\n      else {\n        *puVar9 = 0;\n        cVar11 = *pcVar13;\n        pcVar27 = pcVar13;\n        pcVar13 = puVar9 + 1;\n        if (cVar11 == '\0') {\n          pcVar27 = (char *)0x0;\n        }\n      }" if (parenthesized_expression "(puVar9 == (undefined1 *)0x0)" ( (binary_expression "puVar9 == (undefined1 *)0x0" identifier == (cast_expression "(undefined1 *)0x0" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n        pcVar27 = (char *)0x0;\n      }" { (expression_statement "pcVar27 = (char *)0x0;" (assignment_expression "pcVar27 = (char *)0x0" identifier = (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) }) (else_clause "else {\n        *puVar9 = 0;\n        cVar11 = *pcVar13;\n        pcVar27 = pcVar13;\n        pcVar13 = puVar9 + 1;\n        if (cVar11 == '\0') {\n          pcVar27 = (char *)0x0;\n        }\n      }" else (compound_statement "{\n        *puVar9 = 0;\n        cVar11 = *pcVar13;\n        pcVar27 = pcVar13;\n        pcVar13 = puVar9 + 1;\n        if (cVar11 == '\0') {\n          pcVar27 = (char *)0x0;\n        }\n      }" { (expression_statement "*puVar9 = 0;" (assignment_expression "*puVar9 = 0" (pointer_expression "*puVar9" * identifier) = number_literal) ;) (expression_statement "cVar11 = *pcVar13;" (assignment_expression "cVar11 = *pcVar13" identifier = (pointer_expression "*pcVar13" * identifier)) ;) (expression_statement "pcVar27 = pcVar13;" (assignment_expression "pcVar27 = pcVar13" identifier = identifier) ;) (expression_statement "pcVar13 = puVar9 + 1;" (assignment_expression "pcVar13 = puVar9 + 1" identifier = (binary_expression "puVar9 + 1" identifier + number_literal)) ;) (if_statement "if (cVar11 == '\0') {\n          pcVar27 = (char *)0x0;\n        }" if (parenthesized_expression "(cVar11 == '\0')" ( (binary_expression "cVar11 == '\0'" identifier == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n          pcVar27 = (char *)0x0;\n        }" { (expression_statement "pcVar27 = (char *)0x0;" (assignment_expression "pcVar27 = (char *)0x0" identifier = (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) })) }))) (if_statement "if (iVar4 == 2) {\n        iVar2 = FUN_00028968(*puVar23);\n        if (iVar2 != 0) {\n          FUN_00028270(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4704,*puVar23);\n        }\n        iVar2 = (**(code **)(pcStack_81e8 + -0x7c30))(*puVar23,1);\n        if (iVar2 == 0) {\n          FUN_00028270(*(int *)(pcStack_81e8 + -0x7fc8) + -0x46e0,*puVar23);\n          iVar24 = *(int *)(pcStack_81e8 + -0x7fd8);\n        }\n        else {\n          iVar24 = *(int *)(pcStack_81e8 + -0x7fd8);\n          if (iVar2 == 2) {\n            *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4) = 1;\n            goto LAB_0002e988;\n          }\n        }\n      }\n      else {\nLAB_0002e988:\n        iVar24 = *(int *)(pcStack_81e8 + -0x7fd8);\n      }" if (parenthesized_expression "(iVar4 == 2)" ( (binary_expression "iVar4 == 2" identifier == number_literal) )) (compound_statement "{\n        iVar2 = FUN_00028968(*puVar23);\n        if (iVar2 != 0) {\n          FUN_00028270(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4704,*puVar23);\n        }\n        iVar2 = (**(code **)(pcStack_81e8 + -0x7c30))(*puVar23,1);\n        if (iVar2 == 0) {\n          FUN_00028270(*(int *)(pcStack_81e8 + -0x7fc8) + -0x46e0,*puVar23);\n          iVar24 = *(int *)(pcStack_81e8 + -0x7fd8);\n        }\n        else {\n          iVar24 = *(int *)(pcStack_81e8 + -0x7fd8);\n          if (iVar2 == 2) {\n            *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4) = 1;\n            goto LAB_0002e988;\n          }\n        }\n      }" { (expression_statement "iVar2 = FUN_00028968(*puVar23);" (assignment_expression "iVar2 = FUN_00028968(*puVar23)" identifier = (call_expression "FUN_00028968(*puVar23)" identifier (argument_list "(*puVar23)" ( (pointer_expression "*puVar23" * identifier) )))) ;) (if_statement "if (iVar2 != 0) {\n          FUN_00028270(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4704,*puVar23);\n        }" if (parenthesized_expression "(iVar2 != 0)" ( (binary_expression "iVar2 != 0" identifier != number_literal) )) (compound_statement "{\n          FUN_00028270(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4704,*puVar23);\n        }" { (expression_statement "FUN_00028270(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4704,*puVar23);" (call_expression "FUN_00028270(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4704,*puVar23)" identifier (argument_list "(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4704,*puVar23)" ( (binary_expression "*(int *)(pcStack_81e8 + -0x7fc8) + -0x4704" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fc8)" * (cast_expression "(int *)(pcStack_81e8 + -0x7fc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_81e8 + -0x7fc8)" ( (binary_expression "pcStack_81e8 + -0x7fc8" identifier + number_literal) )))) + number_literal) , (pointer_expression "*puVar23" * identifier) ))) ;) })) (expression_statement "iVar2 = (**(code **)(pcStack_81e8 + -0x7c30))(*puVar23,1);" (assignment_expression "iVar2 = (**(code **)(pcStack_81e8 + -0x7c30))(*puVar23,1)" identifier = (call_expression "(**(code **)(pcStack_81e8 + -0x7c30))(*puVar23,1)" (parenthesized_expression "(**(code **)(pcStack_81e8 + -0x7c30))" ( (pointer_expression "**(code **)(pcStack_81e8 + -0x7c30)" * (pointer_expression "*(code **)(pcStack_81e8 + -0x7c30)" * (cast_expression "(code **)(pcStack_81e8 + -0x7c30)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_81e8 + -0x7c30)" ( (binary_expression "pcStack_81e8 + -0x7c30" identifier + number_literal) ))))) )) (argument_list "(*puVar23,1)" ( (pointer_expression "*puVar23" * identifier) , number_literal )))) ;) (if_statement "if (iVar2 == 0) {\n          FUN_00028270(*(int *)(pcStack_81e8 + -0x7fc8) + -0x46e0,*puVar23);\n          iVar24 = *(int *)(pcStack_81e8 + -0x7fd8);\n        }\n        else {\n          iVar24 = *(int *)(pcStack_81e8 + -0x7fd8);\n          if (iVar2 == 2) {\n            *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4) = 1;\n            goto LAB_0002e988;\n          }\n        }" if (parenthesized_expression "(iVar2 == 0)" ( (binary_expression "iVar2 == 0" identifier == number_literal) )) (compound_statement "{\n          FUN_00028270(*(int *)(pcStack_81e8 + -0x7fc8) + -0x46e0,*puVar23);\n          iVar24 = *(int *)(pcStack_81e8 + -0x7fd8);\n        }" { (expression_statement "FUN_00028270(*(int *)(pcStack_81e8 + -0x7fc8) + -0x46e0,*puVar23);" (call_expression "FUN_00028270(*(int *)(pcStack_81e8 + -0x7fc8) + -0x46e0,*puVar23)" identifier (argument_list "(*(int *)(pcStack_81e8 + -0x7fc8) + -0x46e0,*puVar23)" ( (binary_expression "*(int *)(pcStack_81e8 + -0x7fc8) + -0x46e0" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fc8)" * (cast_expression "(int *)(pcStack_81e8 + -0x7fc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_81e8 + -0x7fc8)" ( (binary_expression "pcStack_81e8 + -0x7fc8" identifier + number_literal) )))) + number_literal) , (pointer_expression "*puVar23" * identifier) ))) ;) (expression_statement "iVar24 = *(int *)(pcStack_81e8 + -0x7fd8);" (assignment_expression "iVar24 = *(int *)(pcStack_81e8 + -0x7fd8)" identifier = (pointer_expression "*(int *)(pcStack_81e8 + -0x7fd8)" * (cast_expression "(int *)(pcStack_81e8 + -0x7fd8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_81e8 + -0x7fd8)" ( (binary_expression "pcStack_81e8 + -0x7fd8" identifier + number_literal) ))))) ;) }) (else_clause "else {\n          iVar24 = *(int *)(pcStack_81e8 + -0x7fd8);\n          if (iVar2 == 2) {\n            *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4) = 1;\n            goto LAB_0002e988;\n          }\n        }" else (compound_statement "{\n          iVar24 = *(int *)(pcStack_81e8 + -0x7fd8);\n          if (iVar2 == 2) {\n            *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4) = 1;\n            goto LAB_0002e988;\n          }\n        }" { (expression_statement "iVar24 = *(int *)(pcStack_81e8 + -0x7fd8);" (assignment_expression "iVar24 = *(int *)(pcStack_81e8 + -0x7fd8)" identifier = (pointer_expression "*(int *)(pcStack_81e8 + -0x7fd8)" * (cast_expression "(int *)(pcStack_81e8 + -0x7fd8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_81e8 + -0x7fd8)" ( (binary_expression "pcStack_81e8 + -0x7fd8" identifier + number_literal) ))))) ;) (if_statement "if (iVar2 == 2) {\n            *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4) = 1;\n            goto LAB_0002e988;\n          }" if (parenthesized_expression "(iVar2 == 2)" ( (binary_expression "iVar2 == 2" identifier == number_literal) )) (compound_statement "{\n            *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4) = 1;\n            goto LAB_0002e988;\n          }" { (expression_statement "*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4) = 1;" (assignment_expression "*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4) = 1" (pointer_expression "*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4)" * (cast_expression "(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4)" ( (binary_expression "*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fd8)" * (cast_expression "(int *)(pcStack_81e8 + -0x7fd8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_81e8 + -0x7fd8)" ( (binary_expression "pcStack_81e8 + -0x7fd8" identifier + number_literal) )))) + number_literal) )))) = number_literal) ;) (goto_statement "goto LAB_0002e988;" goto statement_identifier ;) })) }))) }) (else_clause "else {\nLAB_0002e988:\n        iVar24 = *(int *)(pcStack_81e8 + -0x7fd8);\n      }" else (compound_statement "{\nLAB_0002e988:\n        iVar24 = *(int *)(pcStack_81e8 + -0x7fd8);\n      }" { (labeled_statement "LAB_0002e988:\n        iVar24 = *(int *)(pcStack_81e8 + -0x7fd8);" statement_identifier : (expression_statement "iVar24 = *(int *)(pcStack_81e8 + -0x7fd8);" (assignment_expression "iVar24 = *(int *)(pcStack_81e8 + -0x7fd8)" identifier = (pointer_expression "*(int *)(pcStack_81e8 + -0x7fd8)" * (cast_expression "(int *)(pcStack_81e8 + -0x7fd8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_81e8 + -0x7fd8)" ( (binary_expression "pcStack_81e8 + -0x7fd8" identifier + number_literal) ))))) ;)) }))) (if_statement "if (*(int *)(iVar24 + -0x31c8) == 0) {\n        iVar2 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iVar2 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47f4;\n      }" if (parenthesized_expression "(*(int *)(iVar24 + -0x31c8) == 0)" ( (binary_expression "*(int *)(iVar24 + -0x31c8) == 0" (pointer_expression "*(int *)(iVar24 + -0x31c8)" * (cast_expression "(int *)(iVar24 + -0x31c8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar24 + -0x31c8)" ( (binary_expression "iVar24 + -0x31c8" identifier + number_literal) )))) == number_literal) )) (compound_statement "{\n        iVar2 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }" { (expression_statement "iVar2 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;" (assignment_expression "iVar2 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc" identifier = (binary_expression "*(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fc8)" * (cast_expression "(int *)(pcStack_81e8 + -0x7fc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_81e8 + -0x7fc8)" ( (binary_expression "pcStack_81e8 + -0x7fc8" identifier + number_literal) )))) + number_literal)) ;) }) (else_clause "else {\n        iVar2 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47f4;\n      }" else (compound_statement "{\n        iVar2 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47f4;\n      }" { (expression_statement "iVar2 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47f4;" (assignment_expression "iVar2 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47f4" identifier = (binary_expression "*(int *)(pcStack_81e8 + -0x7fc8) + -0x47f4" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fc8)" * (cast_expression "(int *)(pcStack_81e8 + -0x7fc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_81e8 + -0x7fc8)" ( (binary_expression "pcStack_81e8 + -0x7fc8" identifier + number_literal) )))) + number_literal)) ;) }))) (if_statement "if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31cc) == 0) {\n        iVar24 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iVar24 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47f0;\n      }" if (parenthesized_expression "(*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31cc) == 0)" ( (binary_expression "*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31cc) == 0" (pointer_expression "*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31cc)" * (cast_expression "(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31cc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31cc)" ( (binary_expression "*(int *)(pcStack_81e8 + -0x7fd8) + -0x31cc" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fd8)" * (cast_expression "(int *)(pcStack_81e8 + -0x7fd8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_81e8 + -0x7fd8)" ( (binary_expression "pcStack_81e8 + -0x7fd8" identifier + number_literal) )))) + number_literal) )))) == number_literal) )) (compound_statement "{\n        iVar24 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }" { (expression_statement "iVar24 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;" (assignment_expression "iVar24 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc" identifier = (binary_expression "*(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fc8)" * (cast_expression "(int *)(pcStack_81e8 + -0x7fc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_81e8 + -0x7fc8)" ( (binary_expression "pcStack_81e8 + -0x7fc8" identifier + number_literal) )))) + number_literal)) ;) }) (else_clause "else {\n        iVar24 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47f0;\n      }" else (compound_statement "{\n        iVar24 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47f0;\n      }" { (expression_statement "iVar24 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47f0;" (assignment_expression "iVar24 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47f0" identifier = (binary_expression "*(int *)(pcStack_81e8 + -0x7fc8) + -0x47f0" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fc8)" * (cast_expression "(int *)(pcStack_81e8 + -0x7fc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_81e8 + -0x7fc8)" ( (binary_expression "pcStack_81e8 + -0x7fc8" identifier + number_literal) )))) + number_literal)) ;) }))) (if_statement "if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d0) == 0) {\n        iVar15 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iVar15 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47ec;\n      }" if (parenthesized_expression "(*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d0) == 0)" ( (binary_expression "*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d0) == 0" (pointer_expression "*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d0)" * (cast_expression "(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d0)" ( (binary_expression "*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d0" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fd8)" * (cast_expression "(int *)(pcStack_81e8 + -0x7fd8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_81e8 + -0x7fd8)" ( (binary_expression "pcStack_81e8 + -0x7fd8" identifier + number_literal) )))) + number_literal) )))) == number_literal) )) (compound_statement "{\n        iVar15 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }" { (expression_statement "iVar15 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;" (assignment_expression "iVar15 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc" identifier = (binary_expression "*(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fc8)" * (cast_expression "(int *)(pcStack_81e8 + -0x7fc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_81e8 + -0x7fc8)" ( (binary_expression "pcStack_81e8 + -0x7fc8" identifier + number_literal) )))) + number_literal)) ;) }) (else_clause "else {\n        iVar15 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47ec;\n      }" else (compound_statement "{\n        iVar15 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47ec;\n      }" { (expression_statement "iVar15 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47ec;" (assignment_expression "iVar15 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47ec" identifier = (binary_expression "*(int *)(pcStack_81e8 + -0x7fc8) + -0x47ec" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fc8)" * (cast_expression "(int *)(pcStack_81e8 + -0x7fc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_81e8 + -0x7fc8)" ( (binary_expression "pcStack_81e8 + -0x7fc8" identifier + number_literal) )))) + number_literal)) ;) }))) (if_statement "if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4) == 0) {\n        iStack_81f0 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iStack_81f0 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47e8;\n      }" if (parenthesized_expression "(*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4) == 0)" ( (binary_expression "*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4) == 0" (pointer_expression "*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4)" * (cast_expression "(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4)" ( (binary_expression "*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fd8)" * (cast_expression "(int *)(pcStack_81e8 + -0x7fd8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_81e8 + -0x7fd8)" ( (binary_expression "pcStack_81e8 + -0x7fd8" identifier + number_literal) )))) + number_literal) )))) == number_literal) )) (compound_statement "{\n        iStack_81f0 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }" { (expression_statement "iStack_81f0 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;" (assignment_expression "iStack_81f0 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc" identifier = (binary_expression "*(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fc8)" * (cast_expression "(int *)(pcStack_81e8 + -0x7fc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_81e8 + -0x7fc8)" ( (binary_expression "pcStack_81e8 + -0x7fc8" identifier + number_literal) )))) + number_literal)) ;) }) (else_clause "else {\n        iStack_81f0 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47e8;\n      }" else (compound_statement "{\n        iStack_81f0 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47e8;\n      }" { (expression_statement "iStack_81f0 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47e8;" (assignment_expression "iStack_81f0 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47e8" identifier = (binary_expression "*(int *)(pcStack_81e8 + -0x7fc8) + -0x47e8" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fc8)" * (cast_expression "(int *)(pcStack_81e8 + -0x7fc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_81e8 + -0x7fc8)" ( (binary_expression "pcStack_81e8 + -0x7fc8" identifier + number_literal) )))) + number_literal)) ;) }))) (expression_statement "pcStack_81ec = pcVar21;" (assignment_expression "pcStack_81ec = pcVar21" identifier = identifier) ;) (expression_statement "uVar7 = dupprintf(*(int *)(pcStack_81e8 + -0x7fc8) + -0x46c0,iVar2,iVar24,iVar15);" (assignment_expression "uVar7 = dupprintf(*(int *)(pcStack_81e8 + -0x7fc8) + -0x46c0,iVar2,iVar24,iVar15)" identifier = (call_expression "dupprintf(*(int *)(pcStack_81e8 + -0x7fc8) + -0x46c0,iVar2,iVar24,iVar15)" identifier (argument_list "(*(int *)(pcStack_81e8 + -0x7fc8) + -0x46c0,iVar2,iVar24,iVar15)" ( (binary_expression "*(int *)(pcStack_81e8 + -0x7fc8) + -0x46c0" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fc8)" * (cast_expression "(int *)(pcStack_81e8 + -0x7fc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_81e8 + -0x7fc8)" ( (binary_expression "pcStack_81e8 + -0x7fc8" identifier + number_literal) )))) + number_literal) , identifier , identifier , identifier )))) ;) (expression_statement "FUN_00028a00(pcVar13,pcVar27,uVar7);" (call_expression "FUN_00028a00(pcVar13,pcVar27,uVar7)" identifier (argument_list "(pcVar13,pcVar27,uVar7)" ( identifier , identifier , identifier ))) ;) (expression_statement "safefree(uVar7);" (call_expression "safefree(uVar7)" identifier (argument_list "(uVar7)" ( identifier ))) ;) (expression_statement "pcVar27 = *(char **)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4);" (assignment_expression "pcVar27 = *(char **)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4)" identifier = (pointer_expression "*(char **)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4)" * (cast_expression "(char **)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4)" ( (binary_expression "*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fd8)" * (cast_expression "(int *)(pcStack_81e8 + -0x7fd8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_81e8 + -0x7fd8)" ( (binary_expression "pcStack_81e8 + -0x7fd8" identifier + number_literal) )))) + number_literal) ))))) ;) (expression_statement "iVar2 = scp_source_setup(pcVar21);" (assignment_expression "iVar2 = scp_source_setup(pcVar21)" identifier = (call_expression "scp_source_setup(pcVar21)" identifier (argument_list "(pcVar21)" ( identifier )))) ;) (if_statement "if ((iVar2 == 0) && (1 < iVar4)) {\n        puVar18 = puVar23 + iVar4 + -1;\n        iVar24 = *(int *)(pcStack_81e8 + -0x7db0);\n        iVar25 = *(int *)(pcStack_81e8 + -0x7fc8);\n        iVar15 = *(int *)(pcStack_81e8 + -0x7db0);\n        iVar4 = *(int *)(pcStack_81e8 + -0x7fc8);\n        do {\n          pcVar13 = (char *)*puVar23;\n          iVar2 = FUN_00028968(pcVar13);\n          if (iVar2 == 0) {\n            pcVar27 = (char *)0x1;\n            iVar2 = (**(code **)(pcStack_81e8 + -0x7c30))(pcVar13,1,pcVar13);\n            if (iVar2 == 0) {\n              (*(code *)(iVar15 + -0x59a8))(iVar25 + -0x4688);\n              pcVar27 = pcVar13;\n            }\n            else if (iVar2 == 1) {\n              (*(code *)(iVar24 + -0x4b8c))(pcVar13);\n            }\n            else {\n              iVar2 = (**(code **)(pcStack_81e8 + -0x7c2c))();\n              if (iVar2 == 0) {\n                (*(code *)(iVar15 + -0x59a8))(iVar25 + -0x4688);\n                pcVar27 = pcVar13;\n              }\n              else {\n                while (iVar26 = (**(code **)(pcStack_81e8 + -0x7c28))(iVar2), iVar26 != 0) {\n                  (*(code *)(iVar24 + -0x4b8c))(iVar26);\n                  safefree(iVar26);\n                }\n                (**(code **)(pcStack_81e8 + -0x7c24))(iVar2);\n              }\n            }\n          }\n          else {\n            pcVar27 = (char *)(iVar4 + -0x46ac);\n            FUN_00027ff8(**(undefined4 **)(pcStack_81e8 + -0x7460));\n            *(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31e0) =\n                 *(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31e0) + 1;\n          }\n          puVar23 = puVar23 + 1;\n          iVar2 = *(int *)(pcStack_81e8 + -0x7fd8);\n        } while (puVar18 != puVar23);\n        goto LAB_0002e788;\n      }" if (parenthesized_expression "((iVar2 == 0) && (1 < iVar4))" ( (binary_expression "(iVar2 == 0) && (1 < iVar4)" (parenthesized_expression "(iVar2 == 0)" ( (binary_expression "iVar2 == 0" identifier == number_literal) )) && (parenthesized_expression "(1 < iVar4)" ( (binary_expression "1 < iVar4" number_literal < identifier) ))) )) (compound_statement "{\n        puVar18 = puVar23 + iVar4 + -1;\n        iVar24 = *(int *)(pcStack_81e8 + -0x7db0);\n        iVar25 = *(int *)(pcStack_81e8 + -0x7fc8);\n        iVar15 = *(int *)(pcStack_81e8 + -0x7db0);\n        iVar4 = *(int *)(pcStack_81e8 + -0x7fc8);\n        do {\n          pcVar13 = (char *)*puVar23;\n          iVar2 = FUN_00028968(pcVar13);\n          if (iVar2 == 0) {\n            pcVar27 = (char *)0x1;\n            iVar2 = (**(code **)(pcStack_81e8 + -0x7c30))(pcVar13,1,pcVar13);\n            if (iVar2 == 0) {\n              (*(code *)(iVar15 + -0x59a8))(iVar25 + -0x4688);\n              pcVar27 = pcVar13;\n            }\n            else if (iVar2 == 1) {\n              (*(code *)(iVar24 + -0x4b8c))(pcVar13);\n            }\n            else {\n              iVar2 = (**(code **)(pcStack_81e8 + -0x7c2c))();\n              if (iVar2 == 0) {\n                (*(code *)(iVar15 + -0x59a8))(iVar25 + -0x4688);\n                pcVar27 = pcVar13;\n              }\n              else {\n                while (iVar26 = (**(code **)(pcStack_81e8 + -0x7c28))(iVar2), iVar26 != 0) {\n                  (*(code *)(iVar24 + -0x4b8c))(iVar26);\n                  safefree(iVar26);\n                }\n                (**(code **)(pcStack_81e8 + -0x7c24))(iVar2);\n              }\n            }\n          }\n          else {\n            pcVar27 = (char *)(iVar4 + -0x46ac);\n            FUN_00027ff8(**(undefined4 **)(pcStack_81e8 + -0x7460));\n            *(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31e0) =\n                 *(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31e0) + 1;\n          }\n          puVar23 = puVar23 + 1;\n          iVar2 = *(int *)(pcStack_81e8 + -0x7fd8);\n        } while (puVar18 != puVar23);\n        goto LAB_0002e788;\n      }" { (expression_statement "puVar18 = puVar23 + iVar4 + -1;" (assignment_expression "puVar18 = puVar23 + iVar4 + -1" identifier = (binary_expression "puVar23 + iVar4 + -1" (binary_expression "puVar23 + iVar4" identifier + identifier) + number_literal)) ;) (expression_statement "iVar24 = *(int *)(pcStack_81e8 + -0x7db0);" (assignment_expression "iVar24 = *(int *)(pcStack_81e8 + -0x7db0)" identifier = (pointer_expression "*(int *)(pcStack_81e8 + -0x7db0)" * (cast_expression "(int *)(pcStack_81e8 + -0x7db0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_81e8 + -0x7db0)" ( (binary_expression "pcStack_81e8 + -0x7db0" identifier + number_literal) ))))) ;) (expression_statement "iVar25 = *(int *)(pcStack_81e8 + -0x7fc8);" (assignment_expression "iVar25 = *(int *)(pcStack_81e8 + -0x7fc8)" identifier = (pointer_expression "*(int *)(pcStack_81e8 + -0x7fc8)" * (cast_expression "(int *)(pcStack_81e8 + -0x7fc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_81e8 + -0x7fc8)" ( (binary_expression "pcStack_81e8 + -0x7fc8" identifier + number_literal) ))))) ;) (expression_statement "iVar15 = *(int *)(pcStack_81e8 + -0x7db0);" (assignment_expression "iVar15 = *(int *)(pcStack_81e8 + -0x7db0)" identifier = (pointer_expression "*(int *)(pcStack_81e8 + -0x7db0)" * (cast_expression "(int *)(pcStack_81e8 + -0x7db0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_81e8 + -0x7db0)" ( (binary_expression "pcStack_81e8 + -0x7db0" identifier + number_literal) ))))) ;) (expression_statement "iVar4 = *(int *)(pcStack_81e8 + -0x7fc8);" (assignment_expression "iVar4 = *(int *)(pcStack_81e8 + -0x7fc8)" identifier = (pointer_expression "*(int *)(pcStack_81e8 + -0x7fc8)" * (cast_expression "(int *)(pcStack_81e8 + -0x7fc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_81e8 + -0x7fc8)" ( (binary_expression "pcStack_81e8 + -0x7fc8" identifier + number_literal) ))))) ;) (do_statement "do {\n          pcVar13 = (char *)*puVar23;\n          iVar2 = FUN_00028968(pcVar13);\n          if (iVar2 == 0) {\n            pcVar27 = (char *)0x1;\n            iVar2 = (**(code **)(pcStack_81e8 + -0x7c30))(pcVar13,1,pcVar13);\n            if (iVar2 == 0) {\n              (*(code *)(iVar15 + -0x59a8))(iVar25 + -0x4688);\n              pcVar27 = pcVar13;\n            }\n            else if (iVar2 == 1) {\n              (*(code *)(iVar24 + -0x4b8c))(pcVar13);\n            }\n            else {\n              iVar2 = (**(code **)(pcStack_81e8 + -0x7c2c))();\n              if (iVar2 == 0) {\n                (*(code *)(iVar15 + -0x59a8))(iVar25 + -0x4688);\n                pcVar27 = pcVar13;\n              }\n              else {\n                while (iVar26 = (**(code **)(pcStack_81e8 + -0x7c28))(iVar2), iVar26 != 0) {\n                  (*(code *)(iVar24 + -0x4b8c))(iVar26);\n                  safefree(iVar26);\n                }\n                (**(code **)(pcStack_81e8 + -0x7c24))(iVar2);\n              }\n            }\n          }\n          else {\n            pcVar27 = (char *)(iVar4 + -0x46ac);\n            FUN_00027ff8(**(undefined4 **)(pcStack_81e8 + -0x7460));\n            *(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31e0) =\n                 *(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31e0) + 1;\n          }\n          puVar23 = puVar23 + 1;\n          iVar2 = *(int *)(pcStack_81e8 + -0x7fd8);\n        } while (puVar18 != puVar23);" do (compound_statement "{\n          pcVar13 = (char *)*puVar23;\n          iVar2 = FUN_00028968(pcVar13);\n          if (iVar2 == 0) {\n            pcVar27 = (char *)0x1;\n            iVar2 = (**(code **)(pcStack_81e8 + -0x7c30))(pcVar13,1,pcVar13);\n            if (iVar2 == 0) {\n              (*(code *)(iVar15 + -0x59a8))(iVar25 + -0x4688);\n              pcVar27 = pcVar13;\n            }\n            else if (iVar2 == 1) {\n              (*(code *)(iVar24 + -0x4b8c))(pcVar13);\n            }\n            else {\n              iVar2 = (**(code **)(pcStack_81e8 + -0x7c2c))();\n              if (iVar2 == 0) {\n                (*(code *)(iVar15 + -0x59a8))(iVar25 + -0x4688);\n                pcVar27 = pcVar13;\n              }\n              else {\n                while (iVar26 = (**(code **)(pcStack_81e8 + -0x7c28))(iVar2), iVar26 != 0) {\n                  (*(code *)(iVar24 + -0x4b8c))(iVar26);\n                  safefree(iVar26);\n                }\n                (**(code **)(pcStack_81e8 + -0x7c24))(iVar2);\n              }\n            }\n          }\n          else {\n            pcVar27 = (char *)(iVar4 + -0x46ac);\n            FUN_00027ff8(**(undefined4 **)(pcStack_81e8 + -0x7460));\n            *(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31e0) =\n                 *(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31e0) + 1;\n          }\n          puVar23 = puVar23 + 1;\n          iVar2 = *(int *)(pcStack_81e8 + -0x7fd8);\n        }" { (expression_statement "pcVar13 = (char *)*puVar23;" (assignment_expression "pcVar13 = (char *)*puVar23" identifier = (cast_expression "(char *)*puVar23" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "*puVar23" * identifier))) ;) (expression_statement "iVar2 = FUN_00028968(pcVar13);" (assignment_expression "iVar2 = FUN_00028968(pcVar13)" identifier = (call_expression "FUN_00028968(pcVar13)" identifier (argument_list "(pcVar13)" ( identifier )))) ;) (if_statement "if (iVar2 == 0) {\n            pcVar27 = (char *)0x1;\n            iVar2 = (**(code **)(pcStack_81e8 + -0x7c30))(pcVar13,1,pcVar13);\n            if (iVar2 == 0) {\n              (*(code *)(iVar15 + -0x59a8))(iVar25 + -0x4688);\n              pcVar27 = pcVar13;\n            }\n            else if (iVar2 == 1) {\n              (*(code *)(iVar24 + -0x4b8c))(pcVar13);\n            }\n            else {\n              iVar2 = (**(code **)(pcStack_81e8 + -0x7c2c))();\n              if (iVar2 == 0) {\n                (*(code *)(iVar15 + -0x59a8))(iVar25 + -0x4688);\n                pcVar27 = pcVar13;\n              }\n              else {\n                while (iVar26 = (**(code **)(pcStack_81e8 + -0x7c28))(iVar2), iVar26 != 0) {\n                  (*(code *)(iVar24 + -0x4b8c))(iVar26);\n                  safefree(iVar26);\n                }\n                (**(code **)(pcStack_81e8 + -0x7c24))(iVar2);\n              }\n            }\n          }\n          else {\n            pcVar27 = (char *)(iVar4 + -0x46ac);\n            FUN_00027ff8(**(undefined4 **)(pcStack_81e8 + -0x7460));\n            *(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31e0) =\n                 *(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31e0) + 1;\n          }" if (parenthesized_expression "(iVar2 == 0)" ( (binary_expression "iVar2 == 0" identifier == number_literal) )) (compound_statement "{\n            pcVar27 = (char *)0x1;\n            iVar2 = (**(code **)(pcStack_81e8 + -0x7c30))(pcVar13,1,pcVar13);\n            if (iVar2 == 0) {\n              (*(code *)(iVar15 + -0x59a8))(iVar25 + -0x4688);\n              pcVar27 = pcVar13;\n            }\n            else if (iVar2 == 1) {\n              (*(code *)(iVar24 + -0x4b8c))(pcVar13);\n            }\n            else {\n              iVar2 = (**(code **)(pcStack_81e8 + -0x7c2c))();\n              if (iVar2 == 0) {\n                (*(code *)(iVar15 + -0x59a8))(iVar25 + -0x4688);\n                pcVar27 = pcVar13;\n              }\n              else {\n                while (iVar26 = (**(code **)(pcStack_81e8 + -0x7c28))(iVar2), iVar26 != 0) {\n                  (*(code *)(iVar24 + -0x4b8c))(iVar26);\n                  safefree(iVar26);\n                }\n                (**(code **)(pcStack_81e8 + -0x7c24))(iVar2);\n              }\n            }\n          }" { (expression_statement "pcVar27 = (char *)0x1;" (assignment_expression "pcVar27 = (char *)0x1" identifier = (cast_expression "(char *)0x1" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "iVar2 = (**(code **)(pcStack_81e8 + -0x7c30))(pcVar13,1,pcVar13);" (assignment_expression "iVar2 = (**(code **)(pcStack_81e8 + -0x7c30))(pcVar13,1,pcVar13)" identifier = (call_expression "(**(code **)(pcStack_81e8 + -0x7c30))(pcVar13,1,pcVar13)" (parenthesized_expression "(**(code **)(pcStack_81e8 + -0x7c30))" ( (pointer_expression "**(code **)(pcStack_81e8 + -0x7c30)" * (pointer_expression "*(code **)(pcStack_81e8 + -0x7c30)" * (cast_expression "(code **)(pcStack_81e8 + -0x7c30)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_81e8 + -0x7c30)" ( (binary_expression "pcStack_81e8 + -0x7c30" identifier + number_literal) ))))) )) (argument_list "(pcVar13,1,pcVar13)" ( identifier , number_literal , identifier )))) ;) (if_statement "if (iVar2 == 0) {\n              (*(code *)(iVar15 + -0x59a8))(iVar25 + -0x4688);\n              pcVar27 = pcVar13;\n            }\n            else if (iVar2 == 1) {\n              (*(code *)(iVar24 + -0x4b8c))(pcVar13);\n            }\n            else {\n              iVar2 = (**(code **)(pcStack_81e8 + -0x7c2c))();\n              if (iVar2 == 0) {\n                (*(code *)(iVar15 + -0x59a8))(iVar25 + -0x4688);\n                pcVar27 = pcVar13;\n              }\n              else {\n                while (iVar26 = (**(code **)(pcStack_81e8 + -0x7c28))(iVar2), iVar26 != 0) {\n                  (*(code *)(iVar24 + -0x4b8c))(iVar26);\n                  safefree(iVar26);\n                }\n                (**(code **)(pcStack_81e8 + -0x7c24))(iVar2);\n              }\n            }" if (parenthesized_expression "(iVar2 == 0)" ( (binary_expression "iVar2 == 0" identifier == number_literal) )) (compound_statement "{\n              (*(code *)(iVar15 + -0x59a8))(iVar25 + -0x4688);\n              pcVar27 = pcVar13;\n            }" { (expression_statement "(*(code *)(iVar15 + -0x59a8))(iVar25 + -0x4688);" (call_expression "(*(code *)(iVar15 + -0x59a8))(iVar25 + -0x4688)" (parenthesized_expression "(*(code *)(iVar15 + -0x59a8))" ( (pointer_expression "*(code *)(iVar15 + -0x59a8)" * (cast_expression "(code *)(iVar15 + -0x59a8)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar15 + -0x59a8)" ( (binary_expression "iVar15 + -0x59a8" identifier + number_literal) )))) )) (argument_list "(iVar25 + -0x4688)" ( (binary_expression "iVar25 + -0x4688" identifier + number_literal) ))) ;) (expression_statement "pcVar27 = pcVar13;" (assignment_expression "pcVar27 = pcVar13" identifier = identifier) ;) }) (else_clause "else if (iVar2 == 1) {\n              (*(code *)(iVar24 + -0x4b8c))(pcVar13);\n            }\n            else {\n              iVar2 = (**(code **)(pcStack_81e8 + -0x7c2c))();\n              if (iVar2 == 0) {\n                (*(code *)(iVar15 + -0x59a8))(iVar25 + -0x4688);\n                pcVar27 = pcVar13;\n              }\n              else {\n                while (iVar26 = (**(code **)(pcStack_81e8 + -0x7c28))(iVar2), iVar26 != 0) {\n                  (*(code *)(iVar24 + -0x4b8c))(iVar26);\n                  safefree(iVar26);\n                }\n                (**(code **)(pcStack_81e8 + -0x7c24))(iVar2);\n              }\n            }" else (if_statement "if (iVar2 == 1) {\n              (*(code *)(iVar24 + -0x4b8c))(pcVar13);\n            }\n            else {\n              iVar2 = (**(code **)(pcStack_81e8 + -0x7c2c))();\n              if (iVar2 == 0) {\n                (*(code *)(iVar15 + -0x59a8))(iVar25 + -0x4688);\n                pcVar27 = pcVar13;\n              }\n              else {\n                while (iVar26 = (**(code **)(pcStack_81e8 + -0x7c28))(iVar2), iVar26 != 0) {\n                  (*(code *)(iVar24 + -0x4b8c))(iVar26);\n                  safefree(iVar26);\n                }\n                (**(code **)(pcStack_81e8 + -0x7c24))(iVar2);\n              }\n            }" if (parenthesized_expression "(iVar2 == 1)" ( (binary_expression "iVar2 == 1" identifier == number_literal) )) (compound_statement "{\n              (*(code *)(iVar24 + -0x4b8c))(pcVar13);\n            }" { (expression_statement "(*(code *)(iVar24 + -0x4b8c))(pcVar13);" (call_expression "(*(code *)(iVar24 + -0x4b8c))(pcVar13)" (parenthesized_expression "(*(code *)(iVar24 + -0x4b8c))" ( (pointer_expression "*(code *)(iVar24 + -0x4b8c)" * (cast_expression "(code *)(iVar24 + -0x4b8c)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar24 + -0x4b8c)" ( (binary_expression "iVar24 + -0x4b8c" identifier + number_literal) )))) )) (argument_list "(pcVar13)" ( identifier ))) ;) }) (else_clause "else {\n              iVar2 = (**(code **)(pcStack_81e8 + -0x7c2c))();\n              if (iVar2 == 0) {\n                (*(code *)(iVar15 + -0x59a8))(iVar25 + -0x4688);\n                pcVar27 = pcVar13;\n              }\n              else {\n                while (iVar26 = (**(code **)(pcStack_81e8 + -0x7c28))(iVar2), iVar26 != 0) {\n                  (*(code *)(iVar24 + -0x4b8c))(iVar26);\n                  safefree(iVar26);\n                }\n                (**(code **)(pcStack_81e8 + -0x7c24))(iVar2);\n              }\n            }" else (compound_statement "{\n              iVar2 = (**(code **)(pcStack_81e8 + -0x7c2c))();\n              if (iVar2 == 0) {\n                (*(code *)(iVar15 + -0x59a8))(iVar25 + -0x4688);\n                pcVar27 = pcVar13;\n              }\n              else {\n                while (iVar26 = (**(code **)(pcStack_81e8 + -0x7c28))(iVar2), iVar26 != 0) {\n                  (*(code *)(iVar24 + -0x4b8c))(iVar26);\n                  safefree(iVar26);\n                }\n                (**(code **)(pcStack_81e8 + -0x7c24))(iVar2);\n              }\n            }" { (expression_statement "iVar2 = (**(code **)(pcStack_81e8 + -0x7c2c))();" (assignment_expression "iVar2 = (**(code **)(pcStack_81e8 + -0x7c2c))()" identifier = (call_expression "(**(code **)(pcStack_81e8 + -0x7c2c))()" (parenthesized_expression "(**(code **)(pcStack_81e8 + -0x7c2c))" ( (pointer_expression "**(code **)(pcStack_81e8 + -0x7c2c)" * (pointer_expression "*(code **)(pcStack_81e8 + -0x7c2c)" * (cast_expression "(code **)(pcStack_81e8 + -0x7c2c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_81e8 + -0x7c2c)" ( (binary_expression "pcStack_81e8 + -0x7c2c" identifier + number_literal) ))))) )) (argument_list "()" ( )))) ;) (if_statement "if (iVar2 == 0) {\n                (*(code *)(iVar15 + -0x59a8))(iVar25 + -0x4688);\n                pcVar27 = pcVar13;\n              }\n              else {\n                while (iVar26 = (**(code **)(pcStack_81e8 + -0x7c28))(iVar2), iVar26 != 0) {\n                  (*(code *)(iVar24 + -0x4b8c))(iVar26);\n                  safefree(iVar26);\n                }\n                (**(code **)(pcStack_81e8 + -0x7c24))(iVar2);\n              }" if (parenthesized_expression "(iVar2 == 0)" ( (binary_expression "iVar2 == 0" identifier == number_literal) )) (compound_statement "{\n                (*(code *)(iVar15 + -0x59a8))(iVar25 + -0x4688);\n                pcVar27 = pcVar13;\n              }" { (expression_statement "(*(code *)(iVar15 + -0x59a8))(iVar25 + -0x4688);" (call_expression "(*(code *)(iVar15 + -0x59a8))(iVar25 + -0x4688)" (parenthesized_expression "(*(code *)(iVar15 + -0x59a8))" ( (pointer_expression "*(code *)(iVar15 + -0x59a8)" * (cast_expression "(code *)(iVar15 + -0x59a8)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar15 + -0x59a8)" ( (binary_expression "iVar15 + -0x59a8" identifier + number_literal) )))) )) (argument_list "(iVar25 + -0x4688)" ( (binary_expression "iVar25 + -0x4688" identifier + number_literal) ))) ;) (expression_statement "pcVar27 = pcVar13;" (assignment_expression "pcVar27 = pcVar13" identifier = identifier) ;) }) (else_clause "else {\n                while (iVar26 = (**(code **)(pcStack_81e8 + -0x7c28))(iVar2), iVar26 != 0) {\n                  (*(code *)(iVar24 + -0x4b8c))(iVar26);\n                  safefree(iVar26);\n                }\n                (**(code **)(pcStack_81e8 + -0x7c24))(iVar2);\n              }" else (compound_statement "{\n                while (iVar26 = (**(code **)(pcStack_81e8 + -0x7c28))(iVar2), iVar26 != 0) {\n                  (*(code *)(iVar24 + -0x4b8c))(iVar26);\n                  safefree(iVar26);\n                }\n                (**(code **)(pcStack_81e8 + -0x7c24))(iVar2);\n              }" { (while_statement "while (iVar26 = (**(code **)(pcStack_81e8 + -0x7c28))(iVar2), iVar26 != 0) {\n                  (*(code *)(iVar24 + -0x4b8c))(iVar26);\n                  safefree(iVar26);\n                }" while (parenthesized_expression "(iVar26 = (**(code **)(pcStack_81e8 + -0x7c28))(iVar2), iVar26 != 0)" ( (comma_expression "iVar26 = (**(code **)(pcStack_81e8 + -0x7c28))(iVar2), iVar26 != 0" (assignment_expression "iVar26 = (**(code **)(pcStack_81e8 + -0x7c28))(iVar2)" identifier = (call_expression "(**(code **)(pcStack_81e8 + -0x7c28))(iVar2)" (parenthesized_expression "(**(code **)(pcStack_81e8 + -0x7c28))" ( (pointer_expression "**(code **)(pcStack_81e8 + -0x7c28)" * (pointer_expression "*(code **)(pcStack_81e8 + -0x7c28)" * (cast_expression "(code **)(pcStack_81e8 + -0x7c28)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_81e8 + -0x7c28)" ( (binary_expression "pcStack_81e8 + -0x7c28" identifier + number_literal) ))))) )) (argument_list "(iVar2)" ( identifier )))) , (binary_expression "iVar26 != 0" identifier != number_literal)) )) (compound_statement "{\n                  (*(code *)(iVar24 + -0x4b8c))(iVar26);\n                  safefree(iVar26);\n                }" { (expression_statement "(*(code *)(iVar24 + -0x4b8c))(iVar26);" (call_expression "(*(code *)(iVar24 + -0x4b8c))(iVar26)" (parenthesized_expression "(*(code *)(iVar24 + -0x4b8c))" ( (pointer_expression "*(code *)(iVar24 + -0x4b8c)" * (cast_expression "(code *)(iVar24 + -0x4b8c)" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar24 + -0x4b8c)" ( (binary_expression "iVar24 + -0x4b8c" identifier + number_literal) )))) )) (argument_list "(iVar26)" ( identifier ))) ;) (expression_statement "safefree(iVar26);" (call_expression "safefree(iVar26)" identifier (argument_list "(iVar26)" ( identifier ))) ;) })) (expression_statement "(**(code **)(pcStack_81e8 + -0x7c24))(iVar2);" (call_expression "(**(code **)(pcStack_81e8 + -0x7c24))(iVar2)" (parenthesized_expression "(**(code **)(pcStack_81e8 + -0x7c24))" ( (pointer_expression "**(code **)(pcStack_81e8 + -0x7c24)" * (pointer_expression "*(code **)(pcStack_81e8 + -0x7c24)" * (cast_expression "(code **)(pcStack_81e8 + -0x7c24)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_81e8 + -0x7c24)" ( (binary_expression "pcStack_81e8 + -0x7c24" identifier + number_literal) ))))) )) (argument_list "(iVar2)" ( identifier ))) ;) }))) }))))) }) (else_clause "else {\n            pcVar27 = (char *)(iVar4 + -0x46ac);\n            FUN_00027ff8(**(undefined4 **)(pcStack_81e8 + -0x7460));\n            *(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31e0) =\n                 *(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31e0) + 1;\n          }" else (compound_statement "{\n            pcVar27 = (char *)(iVar4 + -0x46ac);\n            FUN_00027ff8(**(undefined4 **)(pcStack_81e8 + -0x7460));\n            *(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31e0) =\n                 *(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31e0) + 1;\n          }" { (expression_statement "pcVar27 = (char *)(iVar4 + -0x46ac);" (assignment_expression "pcVar27 = (char *)(iVar4 + -0x46ac)" identifier = (cast_expression "(char *)(iVar4 + -0x46ac)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar4 + -0x46ac)" ( (binary_expression "iVar4 + -0x46ac" identifier + number_literal) )))) ;) (expression_statement "FUN_00027ff8(**(undefined4 **)(pcStack_81e8 + -0x7460));" (call_expression "FUN_00027ff8(**(undefined4 **)(pcStack_81e8 + -0x7460))" identifier (argument_list "(**(undefined4 **)(pcStack_81e8 + -0x7460))" ( (pointer_expression "**(undefined4 **)(pcStack_81e8 + -0x7460)" * (pointer_expression "*(undefined4 **)(pcStack_81e8 + -0x7460)" * (cast_expression "(undefined4 **)(pcStack_81e8 + -0x7460)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_81e8 + -0x7460)" ( (binary_expression "pcStack_81e8 + -0x7460" identifier + number_literal) ))))) ))) ;) (expression_statement "*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31e0) =\n                 *(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31e0) + 1;" (assignment_expression "*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31e0) =\n                 *(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31e0) + 1" (pointer_expression "*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31e0)" * (cast_expression "(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31e0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31e0)" ( (binary_expression "*(int *)(pcStack_81e8 + -0x7fd8) + -0x31e0" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fd8)" * (cast_expression "(int *)(pcStack_81e8 + -0x7fd8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_81e8 + -0x7fd8)" ( (binary_expression "pcStack_81e8 + -0x7fd8" identifier + number_literal) )))) + number_literal) )))) = (binary_expression "*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31e0) + 1" (pointer_expression "*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31e0)" * (cast_expression "(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31e0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31e0)" ( (binary_expression "*(int *)(pcStack_81e8 + -0x7fd8) + -0x31e0" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fd8)" * (cast_expression "(int *)(pcStack_81e8 + -0x7fd8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_81e8 + -0x7fd8)" ( (binary_expression "pcStack_81e8 + -0x7fd8" identifier + number_literal) )))) + number_literal) )))) + number_literal)) ;) }))) (expression_statement "puVar23 = puVar23 + 1;" (assignment_expression "puVar23 = puVar23 + 1" identifier = (binary_expression "puVar23 + 1" identifier + number_literal)) ;) (expression_statement "iVar2 = *(int *)(pcStack_81e8 + -0x7fd8);" (assignment_expression "iVar2 = *(int *)(pcStack_81e8 + -0x7fd8)" identifier = (pointer_expression "*(int *)(pcStack_81e8 + -0x7fd8)" * (cast_expression "(int *)(pcStack_81e8 + -0x7fd8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_81e8 + -0x7fd8)" ( (binary_expression "pcStack_81e8 + -0x7fd8" identifier + number_literal) ))))) ;) }) while (parenthesized_expression "(puVar18 != puVar23)" ( (binary_expression "puVar18 != puVar23" identifier != identifier) )) ;) (goto_statement "goto LAB_0002e788;" goto statement_identifier ;) })) }))) }) (else_clause "else {\n    if (iVar4 == 1) {\n      pcVar13 = (char *)*puVar23;\n    }\n    else {\n      FUN_0002861c();\n      pcVar13 = (char *)*puVar23;\n    }\n    puVar9 = (undefined1 *)FUN_00028968(pcVar13);\n    if (puVar9 == (undefined1 *)0x0) {\n      FUN_00028270(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4750);\n      uRam00000000 = 0;\n    }\n    else {\n      *puVar9 = 0;\n    }\n    if (puVar9[1] == '\0') {\n      puVar9 = (undefined1 *)(**(code **)(pcStack_81e8 + -0x75b8))(pcVar13,0x40);\n      if (puVar9 == (undefined1 *)0x0) {\n        puVar23 = (undefined4 *)safemalloc(0x68,1);\n        iVar2 = *(int *)(pcStack_81e8 + -0x7fc8);\n        uVar7 = *(undefined4 *)(iVar2 + -0x4728);\n        *puVar23 = *(undefined4 *)(iVar2 + -0x472c);\n        puVar23[1] = uVar7;\n        *(undefined1 *)(puVar23 + 2) = *(undefined1 *)(iVar2 + -0x4724);\n        iVar2 = (**(code **)(pcStack_81e8 + -0x752c))(puVar23);\n        pcVar10 = (char *)((int)puVar23 + iVar2);\n        pcVar21 = (char *)(*(int *)(pcStack_81e8 + -0x7fc8) + -0x48b0);\n        cVar11 = '.';\n        pcVar27 = (char *)0x0;\n        pcVar22 = pcVar21;\n        goto LAB_0002e6b4;\n      }\n      pcVar21 = (char *)(*(int *)(pcStack_81e8 + -0x7fc8) + -0x48b0);\nLAB_0002e5ac:\n      *puVar9 = 0;\n      cVar11 = *pcVar13;\n      pcVar27 = pcVar13;\n      pcVar13 = puVar9 + 1;\n      if (cVar11 == '\0') {\n        pcVar27 = (char *)0x0;\n      }\n    }\n    else {\n      pcVar21 = puVar9 + 1;\n      puVar9 = (undefined1 *)(**(code **)(pcStack_81e8 + -0x75b8))(pcVar13);\n      if (puVar9 != (undefined1 *)0x0) goto LAB_0002e5ac;\n      pcVar27 = (char *)0x0;\n    }\n    iVar2 = (**(code **)(pcStack_81e8 + -0x752c))(pcVar21);\n    puVar23 = (undefined4 *)safemalloc((iVar2 + 0x19) * 4,1);\n    iVar2 = *(int *)(pcStack_81e8 + -0x7fc8);\n    uVar7 = *(undefined4 *)(iVar2 + -0x4728);\n    *puVar23 = *(undefined4 *)(iVar2 + -0x472c);\n    puVar23[1] = uVar7;\n    *(undefined1 *)(puVar23 + 2) = *(undefined1 *)(iVar2 + -0x4724);\n    iVar2 = (**(code **)(pcStack_81e8 + -0x752c))(puVar23);\n    pcVar10 = (char *)((int)puVar23 + iVar2);\n    cVar11 = *pcVar21;\n    pcVar22 = pcVar21;\n    while (cVar11 != '\0') {\nLAB_0002e6b4:\n      if (cVar11 == '\'') {\n        builtin_strncpy(pcVar10,"\'\\\'\'",4);\n        pcVar10 = pcVar10 + 4;\n      }\n      else {\n        *pcVar10 = cVar11;\n        pcVar10 = pcVar10 + 1;\n      }\n      pcVar21 = pcVar21 + 1;\n      cVar11 = *pcVar21;\n    }\n    *pcVar10 = '\'';\n    pcVar10[1] = '\0';\n    FUN_00028a00(pcVar13,pcVar27,puVar23);\n    safefree(puVar23);\n    if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31ec) != 0) {\n      scp_sftp_listdir(pcVar22);\n      iVar2 = *(int *)(pcStack_81e8 + -0x7fd8);\n      goto LAB_0002e788;\n    }\n    puVar23 = *(undefined4 **)(pcStack_81e8 + -0x7594);\n    while( true ) {\n      pcVar27 = (char *)0x1;\n      iVar2 = FUN_000280f4(&cStack_81d5);\n      if (iVar2 < 1) break;\n      (**(code **)(pcStack_81e8 + -0x75c4))((int)cStack_81d5,*puVar23);\n    }\n  }" else (compound_statement "{\n    if (iVar4 == 1) {\n      pcVar13 = (char *)*puVar23;\n    }\n    else {\n      FUN_0002861c();\n      pcVar13 = (char *)*puVar23;\n    }\n    puVar9 = (undefined1 *)FUN_00028968(pcVar13);\n    if (puVar9 == (undefined1 *)0x0) {\n      FUN_00028270(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4750);\n      uRam00000000 = 0;\n    }\n    else {\n      *puVar9 = 0;\n    }\n    if (puVar9[1] == '\0') {\n      puVar9 = (undefined1 *)(**(code **)(pcStack_81e8 + -0x75b8))(pcVar13,0x40);\n      if (puVar9 == (undefined1 *)0x0) {\n        puVar23 = (undefined4 *)safemalloc(0x68,1);\n        iVar2 = *(int *)(pcStack_81e8 + -0x7fc8);\n        uVar7 = *(undefined4 *)(iVar2 + -0x4728);\n        *puVar23 = *(undefined4 *)(iVar2 + -0x472c);\n        puVar23[1] = uVar7;\n        *(undefined1 *)(puVar23 + 2) = *(undefined1 *)(iVar2 + -0x4724);\n        iVar2 = (**(code **)(pcStack_81e8 + -0x752c))(puVar23);\n        pcVar10 = (char *)((int)puVar23 + iVar2);\n        pcVar21 = (char *)(*(int *)(pcStack_81e8 + -0x7fc8) + -0x48b0);\n        cVar11 = '.';\n        pcVar27 = (char *)0x0;\n        pcVar22 = pcVar21;\n        goto LAB_0002e6b4;\n      }\n      pcVar21 = (char *)(*(int *)(pcStack_81e8 + -0x7fc8) + -0x48b0);\nLAB_0002e5ac:\n      *puVar9 = 0;\n      cVar11 = *pcVar13;\n      pcVar27 = pcVar13;\n      pcVar13 = puVar9 + 1;\n      if (cVar11 == '\0') {\n        pcVar27 = (char *)0x0;\n      }\n    }\n    else {\n      pcVar21 = puVar9 + 1;\n      puVar9 = (undefined1 *)(**(code **)(pcStack_81e8 + -0x75b8))(pcVar13);\n      if (puVar9 != (undefined1 *)0x0) goto LAB_0002e5ac;\n      pcVar27 = (char *)0x0;\n    }\n    iVar2 = (**(code **)(pcStack_81e8 + -0x752c))(pcVar21);\n    puVar23 = (undefined4 *)safemalloc((iVar2 + 0x19) * 4,1);\n    iVar2 = *(int *)(pcStack_81e8 + -0x7fc8);\n    uVar7 = *(undefined4 *)(iVar2 + -0x4728);\n    *puVar23 = *(undefined4 *)(iVar2 + -0x472c);\n    puVar23[1] = uVar7;\n    *(undefined1 *)(puVar23 + 2) = *(undefined1 *)(iVar2 + -0x4724);\n    iVar2 = (**(code **)(pcStack_81e8 + -0x752c))(puVar23);\n    pcVar10 = (char *)((int)puVar23 + iVar2);\n    cVar11 = *pcVar21;\n    pcVar22 = pcVar21;\n    while (cVar11 != '\0') {\nLAB_0002e6b4:\n      if (cVar11 == '\'') {\n        builtin_strncpy(pcVar10,"\'\\\'\'",4);\n        pcVar10 = pcVar10 + 4;\n      }\n      else {\n        *pcVar10 = cVar11;\n        pcVar10 = pcVar10 + 1;\n      }\n      pcVar21 = pcVar21 + 1;\n      cVar11 = *pcVar21;\n    }\n    *pcVar10 = '\'';\n    pcVar10[1] = '\0';\n    FUN_00028a00(pcVar13,pcVar27,puVar23);\n    safefree(puVar23);\n    if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31ec) != 0) {\n      scp_sftp_listdir(pcVar22);\n      iVar2 = *(int *)(pcStack_81e8 + -0x7fd8);\n      goto LAB_0002e788;\n    }\n    puVar23 = *(undefined4 **)(pcStack_81e8 + -0x7594);\n    while( true ) {\n      pcVar27 = (char *)0x1;\n      iVar2 = FUN_000280f4(&cStack_81d5);\n      if (iVar2 < 1) break;\n      (**(code **)(pcStack_81e8 + -0x75c4))((int)cStack_81d5,*puVar23);\n    }\n  }" { (if_statement "if (iVar4 == 1) {\n      pcVar13 = (char *)*puVar23;\n    }\n    else {\n      FUN_0002861c();\n      pcVar13 = (char *)*puVar23;\n    }" if (parenthesized_expression "(iVar4 == 1)" ( (binary_expression "iVar4 == 1" identifier == number_literal) )) (compound_statement "{\n      pcVar13 = (char *)*puVar23;\n    }" { (expression_statement "pcVar13 = (char *)*puVar23;" (assignment_expression "pcVar13 = (char *)*puVar23" identifier = (cast_expression "(char *)*puVar23" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "*puVar23" * identifier))) ;) }) (else_clause "else {\n      FUN_0002861c();\n      pcVar13 = (char *)*puVar23;\n    }" else (compound_statement "{\n      FUN_0002861c();\n      pcVar13 = (char *)*puVar23;\n    }" { (expression_statement "FUN_0002861c();" (call_expression "FUN_0002861c()" identifier (argument_list "()" ( ))) ;) (expression_statement "pcVar13 = (char *)*puVar23;" (assignment_expression "pcVar13 = (char *)*puVar23" identifier = (cast_expression "(char *)*puVar23" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "*puVar23" * identifier))) ;) }))) (expression_statement "puVar9 = (undefined1 *)FUN_00028968(pcVar13);" (assignment_expression "puVar9 = (undefined1 *)FUN_00028968(pcVar13)" identifier = (cast_expression "(undefined1 *)FUN_00028968(pcVar13)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_00028968(pcVar13)" identifier (argument_list "(pcVar13)" ( identifier ))))) ;) (if_statement "if (puVar9 == (undefined1 *)0x0) {\n      FUN_00028270(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4750);\n      uRam00000000 = 0;\n    }\n    else {\n      *puVar9 = 0;\n    }" if (parenthesized_expression "(puVar9 == (undefined1 *)0x0)" ( (binary_expression "puVar9 == (undefined1 *)0x0" identifier == (cast_expression "(undefined1 *)0x0" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n      FUN_00028270(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4750);\n      uRam00000000 = 0;\n    }" { (expression_statement "FUN_00028270(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4750);" (call_expression "FUN_00028270(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4750)" identifier (argument_list "(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4750)" ( (binary_expression "*(int *)(pcStack_81e8 + -0x7fc8) + -0x4750" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fc8)" * (cast_expression "(int *)(pcStack_81e8 + -0x7fc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_81e8 + -0x7fc8)" ( (binary_expression "pcStack_81e8 + -0x7fc8" identifier + number_literal) )))) + number_literal) ))) ;) (expression_statement "uRam00000000 = 0;" (assignment_expression "uRam00000000 = 0" identifier = number_literal) ;) }) (else_clause "else {\n      *puVar9 = 0;\n    }" else (compound_statement "{\n      *puVar9 = 0;\n    }" { (expression_statement "*puVar9 = 0;" (assignment_expression "*puVar9 = 0" (pointer_expression "*puVar9" * identifier) = number_literal) ;) }))) (if_statement "if (puVar9[1] == '\0') {\n      puVar9 = (undefined1 *)(**(code **)(pcStack_81e8 + -0x75b8))(pcVar13,0x40);\n      if (puVar9 == (undefined1 *)0x0) {\n        puVar23 = (undefined4 *)safemalloc(0x68,1);\n        iVar2 = *(int *)(pcStack_81e8 + -0x7fc8);\n        uVar7 = *(undefined4 *)(iVar2 + -0x4728);\n        *puVar23 = *(undefined4 *)(iVar2 + -0x472c);\n        puVar23[1] = uVar7;\n        *(undefined1 *)(puVar23 + 2) = *(undefined1 *)(iVar2 + -0x4724);\n        iVar2 = (**(code **)(pcStack_81e8 + -0x752c))(puVar23);\n        pcVar10 = (char *)((int)puVar23 + iVar2);\n        pcVar21 = (char *)(*(int *)(pcStack_81e8 + -0x7fc8) + -0x48b0);\n        cVar11 = '.';\n        pcVar27 = (char *)0x0;\n        pcVar22 = pcVar21;\n        goto LAB_0002e6b4;\n      }\n      pcVar21 = (char *)(*(int *)(pcStack_81e8 + -0x7fc8) + -0x48b0);\nLAB_0002e5ac:\n      *puVar9 = 0;\n      cVar11 = *pcVar13;\n      pcVar27 = pcVar13;\n      pcVar13 = puVar9 + 1;\n      if (cVar11 == '\0') {\n        pcVar27 = (char *)0x0;\n      }\n    }\n    else {\n      pcVar21 = puVar9 + 1;\n      puVar9 = (undefined1 *)(**(code **)(pcStack_81e8 + -0x75b8))(pcVar13);\n      if (puVar9 != (undefined1 *)0x0) goto LAB_0002e5ac;\n      pcVar27 = (char *)0x0;\n    }" if (parenthesized_expression "(puVar9[1] == '\0')" ( (binary_expression "puVar9[1] == '\0'" (subscript_expression "puVar9[1]" identifier [ number_literal ]) == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n      puVar9 = (undefined1 *)(**(code **)(pcStack_81e8 + -0x75b8))(pcVar13,0x40);\n      if (puVar9 == (undefined1 *)0x0) {\n        puVar23 = (undefined4 *)safemalloc(0x68,1);\n        iVar2 = *(int *)(pcStack_81e8 + -0x7fc8);\n        uVar7 = *(undefined4 *)(iVar2 + -0x4728);\n        *puVar23 = *(undefined4 *)(iVar2 + -0x472c);\n        puVar23[1] = uVar7;\n        *(undefined1 *)(puVar23 + 2) = *(undefined1 *)(iVar2 + -0x4724);\n        iVar2 = (**(code **)(pcStack_81e8 + -0x752c))(puVar23);\n        pcVar10 = (char *)((int)puVar23 + iVar2);\n        pcVar21 = (char *)(*(int *)(pcStack_81e8 + -0x7fc8) + -0x48b0);\n        cVar11 = '.';\n        pcVar27 = (char *)0x0;\n        pcVar22 = pcVar21;\n        goto LAB_0002e6b4;\n      }\n      pcVar21 = (char *)(*(int *)(pcStack_81e8 + -0x7fc8) + -0x48b0);\nLAB_0002e5ac:\n      *puVar9 = 0;\n      cVar11 = *pcVar13;\n      pcVar27 = pcVar13;\n      pcVar13 = puVar9 + 1;\n      if (cVar11 == '\0') {\n        pcVar27 = (char *)0x0;\n      }\n    }" { (expression_statement "puVar9 = (undefined1 *)(**(code **)(pcStack_81e8 + -0x75b8))(pcVar13,0x40);" (assignment_expression "puVar9 = (undefined1 *)(**(code **)(pcStack_81e8 + -0x75b8))(pcVar13,0x40)" identifier = (cast_expression "(undefined1 *)(**(code **)(pcStack_81e8 + -0x75b8))(pcVar13,0x40)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(**(code **)(pcStack_81e8 + -0x75b8))(pcVar13,0x40)" (parenthesized_expression "(**(code **)(pcStack_81e8 + -0x75b8))" ( (pointer_expression "**(code **)(pcStack_81e8 + -0x75b8)" * (pointer_expression "*(code **)(pcStack_81e8 + -0x75b8)" * (cast_expression "(code **)(pcStack_81e8 + -0x75b8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_81e8 + -0x75b8)" ( (binary_expression "pcStack_81e8 + -0x75b8" identifier + number_literal) ))))) )) (argument_list "(pcVar13,0x40)" ( identifier , number_literal ))))) ;) (if_statement "if (puVar9 == (undefined1 *)0x0) {\n        puVar23 = (undefined4 *)safemalloc(0x68,1);\n        iVar2 = *(int *)(pcStack_81e8 + -0x7fc8);\n        uVar7 = *(undefined4 *)(iVar2 + -0x4728);\n        *puVar23 = *(undefined4 *)(iVar2 + -0x472c);\n        puVar23[1] = uVar7;\n        *(undefined1 *)(puVar23 + 2) = *(undefined1 *)(iVar2 + -0x4724);\n        iVar2 = (**(code **)(pcStack_81e8 + -0x752c))(puVar23);\n        pcVar10 = (char *)((int)puVar23 + iVar2);\n        pcVar21 = (char *)(*(int *)(pcStack_81e8 + -0x7fc8) + -0x48b0);\n        cVar11 = '.';\n        pcVar27 = (char *)0x0;\n        pcVar22 = pcVar21;\n        goto LAB_0002e6b4;\n      }" if (parenthesized_expression "(puVar9 == (undefined1 *)0x0)" ( (binary_expression "puVar9 == (undefined1 *)0x0" identifier == (cast_expression "(undefined1 *)0x0" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n        puVar23 = (undefined4 *)safemalloc(0x68,1);\n        iVar2 = *(int *)(pcStack_81e8 + -0x7fc8);\n        uVar7 = *(undefined4 *)(iVar2 + -0x4728);\n        *puVar23 = *(undefined4 *)(iVar2 + -0x472c);\n        puVar23[1] = uVar7;\n        *(undefined1 *)(puVar23 + 2) = *(undefined1 *)(iVar2 + -0x4724);\n        iVar2 = (**(code **)(pcStack_81e8 + -0x752c))(puVar23);\n        pcVar10 = (char *)((int)puVar23 + iVar2);\n        pcVar21 = (char *)(*(int *)(pcStack_81e8 + -0x7fc8) + -0x48b0);\n        cVar11 = '.';\n        pcVar27 = (char *)0x0;\n        pcVar22 = pcVar21;\n        goto LAB_0002e6b4;\n      }" { (expression_statement "puVar23 = (undefined4 *)safemalloc(0x68,1);" (assignment_expression "puVar23 = (undefined4 *)safemalloc(0x68,1)" identifier = (cast_expression "(undefined4 *)safemalloc(0x68,1)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "safemalloc(0x68,1)" identifier (argument_list "(0x68,1)" ( number_literal , number_literal ))))) ;) (expression_statement "iVar2 = *(int *)(pcStack_81e8 + -0x7fc8);" (assignment_expression "iVar2 = *(int *)(pcStack_81e8 + -0x7fc8)" identifier = (pointer_expression "*(int *)(pcStack_81e8 + -0x7fc8)" * (cast_expression "(int *)(pcStack_81e8 + -0x7fc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_81e8 + -0x7fc8)" ( (binary_expression "pcStack_81e8 + -0x7fc8" identifier + number_literal) ))))) ;) (expression_statement "uVar7 = *(undefined4 *)(iVar2 + -0x4728);" (assignment_expression "uVar7 = *(undefined4 *)(iVar2 + -0x4728)" identifier = (pointer_expression "*(undefined4 *)(iVar2 + -0x4728)" * (cast_expression "(undefined4 *)(iVar2 + -0x4728)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + -0x4728)" ( (binary_expression "iVar2 + -0x4728" identifier + number_literal) ))))) ;) (expression_statement "*puVar23 = *(undefined4 *)(iVar2 + -0x472c);" (assignment_expression "*puVar23 = *(undefined4 *)(iVar2 + -0x472c)" (pointer_expression "*puVar23" * identifier) = (pointer_expression "*(undefined4 *)(iVar2 + -0x472c)" * (cast_expression "(undefined4 *)(iVar2 + -0x472c)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + -0x472c)" ( (binary_expression "iVar2 + -0x472c" identifier + number_literal) ))))) ;) (expression_statement "puVar23[1] = uVar7;" (assignment_expression "puVar23[1] = uVar7" (subscript_expression "puVar23[1]" identifier [ number_literal ]) = identifier) ;) (expression_statement "*(undefined1 *)(puVar23 + 2) = *(undefined1 *)(iVar2 + -0x4724);" (assignment_expression "*(undefined1 *)(puVar23 + 2) = *(undefined1 *)(iVar2 + -0x4724)" (pointer_expression "*(undefined1 *)(puVar23 + 2)" * (cast_expression "(undefined1 *)(puVar23 + 2)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar23 + 2)" ( (binary_expression "puVar23 + 2" identifier + number_literal) )))) = (pointer_expression "*(undefined1 *)(iVar2 + -0x4724)" * (cast_expression "(undefined1 *)(iVar2 + -0x4724)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + -0x4724)" ( (binary_expression "iVar2 + -0x4724" identifier + number_literal) ))))) ;) (expression_statement "iVar2 = (**(code **)(pcStack_81e8 + -0x752c))(puVar23);" (assignment_expression "iVar2 = (**(code **)(pcStack_81e8 + -0x752c))(puVar23)" identifier = (call_expression "(**(code **)(pcStack_81e8 + -0x752c))(puVar23)" (parenthesized_expression "(**(code **)(pcStack_81e8 + -0x752c))" ( (pointer_expression "**(code **)(pcStack_81e8 + -0x752c)" * (pointer_expression "*(code **)(pcStack_81e8 + -0x752c)" * (cast_expression "(code **)(pcStack_81e8 + -0x752c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_81e8 + -0x752c)" ( (binary_expression "pcStack_81e8 + -0x752c" identifier + number_literal) ))))) )) (argument_list "(puVar23)" ( identifier )))) ;) (expression_statement "pcVar10 = (char *)((int)puVar23 + iVar2);" (assignment_expression "pcVar10 = (char *)((int)puVar23 + iVar2)" identifier = (cast_expression "(char *)((int)puVar23 + iVar2)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)puVar23 + iVar2)" ( (binary_expression "(int)puVar23 + iVar2" (cast_expression "(int)puVar23" ( (type_descriptor "int" primitive_type) ) identifier) + identifier) )))) ;) (expression_statement "pcVar21 = (char *)(*(int *)(pcStack_81e8 + -0x7fc8) + -0x48b0);" (assignment_expression "pcVar21 = (char *)(*(int *)(pcStack_81e8 + -0x7fc8) + -0x48b0)" identifier = (cast_expression "(char *)(*(int *)(pcStack_81e8 + -0x7fc8) + -0x48b0)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcStack_81e8 + -0x7fc8) + -0x48b0)" ( (binary_expression "*(int *)(pcStack_81e8 + -0x7fc8) + -0x48b0" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fc8)" * (cast_expression "(int *)(pcStack_81e8 + -0x7fc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_81e8 + -0x7fc8)" ( (binary_expression "pcStack_81e8 + -0x7fc8" identifier + number_literal) )))) + number_literal) )))) ;) (expression_statement "cVar11 = '.';" (assignment_expression "cVar11 = '.'" identifier = (char_literal "'.'" ' character ')) ;) (expression_statement "pcVar27 = (char *)0x0;" (assignment_expression "pcVar27 = (char *)0x0" identifier = (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "pcVar22 = pcVar21;" (assignment_expression "pcVar22 = pcVar21" identifier = identifier) ;) (goto_statement "goto LAB_0002e6b4;" goto statement_identifier ;) })) (expression_statement "pcVar21 = (char *)(*(int *)(pcStack_81e8 + -0x7fc8) + -0x48b0);" (assignment_expression "pcVar21 = (char *)(*(int *)(pcStack_81e8 + -0x7fc8) + -0x48b0)" identifier = (cast_expression "(char *)(*(int *)(pcStack_81e8 + -0x7fc8) + -0x48b0)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcStack_81e8 + -0x7fc8) + -0x48b0)" ( (binary_expression "*(int *)(pcStack_81e8 + -0x7fc8) + -0x48b0" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fc8)" * (cast_expression "(int *)(pcStack_81e8 + -0x7fc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_81e8 + -0x7fc8)" ( (binary_expression "pcStack_81e8 + -0x7fc8" identifier + number_literal) )))) + number_literal) )))) ;) (labeled_statement "LAB_0002e5ac:\n      *puVar9 = 0;" statement_identifier : (expression_statement "*puVar9 = 0;" (assignment_expression "*puVar9 = 0" (pointer_expression "*puVar9" * identifier) = number_literal) ;)) (expression_statement "cVar11 = *pcVar13;" (assignment_expression "cVar11 = *pcVar13" identifier = (pointer_expression "*pcVar13" * identifier)) ;) (expression_statement "pcVar27 = pcVar13;" (assignment_expression "pcVar27 = pcVar13" identifier = identifier) ;) (expression_statement "pcVar13 = puVar9 + 1;" (assignment_expression "pcVar13 = puVar9 + 1" identifier = (binary_expression "puVar9 + 1" identifier + number_literal)) ;) (if_statement "if (cVar11 == '\0') {\n        pcVar27 = (char *)0x0;\n      }" if (parenthesized_expression "(cVar11 == '\0')" ( (binary_expression "cVar11 == '\0'" identifier == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n        pcVar27 = (char *)0x0;\n      }" { (expression_statement "pcVar27 = (char *)0x0;" (assignment_expression "pcVar27 = (char *)0x0" identifier = (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) })) }) (else_clause "else {\n      pcVar21 = puVar9 + 1;\n      puVar9 = (undefined1 *)(**(code **)(pcStack_81e8 + -0x75b8))(pcVar13);\n      if (puVar9 != (undefined1 *)0x0) goto LAB_0002e5ac;\n      pcVar27 = (char *)0x0;\n    }" else (compound_statement "{\n      pcVar21 = puVar9 + 1;\n      puVar9 = (undefined1 *)(**(code **)(pcStack_81e8 + -0x75b8))(pcVar13);\n      if (puVar9 != (undefined1 *)0x0) goto LAB_0002e5ac;\n      pcVar27 = (char *)0x0;\n    }" { (expression_statement "pcVar21 = puVar9 + 1;" (assignment_expression "pcVar21 = puVar9 + 1" identifier = (binary_expression "puVar9 + 1" identifier + number_literal)) ;) (expression_statement "puVar9 = (undefined1 *)(**(code **)(pcStack_81e8 + -0x75b8))(pcVar13);" (assignment_expression "puVar9 = (undefined1 *)(**(code **)(pcStack_81e8 + -0x75b8))(pcVar13)" identifier = (cast_expression "(undefined1 *)(**(code **)(pcStack_81e8 + -0x75b8))(pcVar13)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "(**(code **)(pcStack_81e8 + -0x75b8))(pcVar13)" (parenthesized_expression "(**(code **)(pcStack_81e8 + -0x75b8))" ( (pointer_expression "**(code **)(pcStack_81e8 + -0x75b8)" * (pointer_expression "*(code **)(pcStack_81e8 + -0x75b8)" * (cast_expression "(code **)(pcStack_81e8 + -0x75b8)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_81e8 + -0x75b8)" ( (binary_expression "pcStack_81e8 + -0x75b8" identifier + number_literal) ))))) )) (argument_list "(pcVar13)" ( identifier ))))) ;) (if_statement "if (puVar9 != (undefined1 *)0x0) goto LAB_0002e5ac;" if (parenthesized_expression "(puVar9 != (undefined1 *)0x0)" ( (binary_expression "puVar9 != (undefined1 *)0x0" identifier != (cast_expression "(undefined1 *)0x0" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_0002e5ac;" goto statement_identifier ;)) (expression_statement "pcVar27 = (char *)0x0;" (assignment_expression "pcVar27 = (char *)0x0" identifier = (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) }))) (expression_statement "iVar2 = (**(code **)(pcStack_81e8 + -0x752c))(pcVar21);" (assignment_expression "iVar2 = (**(code **)(pcStack_81e8 + -0x752c))(pcVar21)" identifier = (call_expression "(**(code **)(pcStack_81e8 + -0x752c))(pcVar21)" (parenthesized_expression "(**(code **)(pcStack_81e8 + -0x752c))" ( (pointer_expression "**(code **)(pcStack_81e8 + -0x752c)" * (pointer_expression "*(code **)(pcStack_81e8 + -0x752c)" * (cast_expression "(code **)(pcStack_81e8 + -0x752c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_81e8 + -0x752c)" ( (binary_expression "pcStack_81e8 + -0x752c" identifier + number_literal) ))))) )) (argument_list "(pcVar21)" ( identifier )))) ;) (expression_statement "puVar23 = (undefined4 *)safemalloc((iVar2 + 0x19) * 4,1);" (assignment_expression "puVar23 = (undefined4 *)safemalloc((iVar2 + 0x19) * 4,1)" identifier = (cast_expression "(undefined4 *)safemalloc((iVar2 + 0x19) * 4,1)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "safemalloc((iVar2 + 0x19) * 4,1)" identifier (argument_list "((iVar2 + 0x19) * 4,1)" ( (binary_expression "(iVar2 + 0x19) * 4" (parenthesized_expression "(iVar2 + 0x19)" ( (binary_expression "iVar2 + 0x19" identifier + number_literal) )) * number_literal) , number_literal ))))) ;) (expression_statement "iVar2 = *(int *)(pcStack_81e8 + -0x7fc8);" (assignment_expression "iVar2 = *(int *)(pcStack_81e8 + -0x7fc8)" identifier = (pointer_expression "*(int *)(pcStack_81e8 + -0x7fc8)" * (cast_expression "(int *)(pcStack_81e8 + -0x7fc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_81e8 + -0x7fc8)" ( (binary_expression "pcStack_81e8 + -0x7fc8" identifier + number_literal) ))))) ;) (expression_statement "uVar7 = *(undefined4 *)(iVar2 + -0x4728);" (assignment_expression "uVar7 = *(undefined4 *)(iVar2 + -0x4728)" identifier = (pointer_expression "*(undefined4 *)(iVar2 + -0x4728)" * (cast_expression "(undefined4 *)(iVar2 + -0x4728)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + -0x4728)" ( (binary_expression "iVar2 + -0x4728" identifier + number_literal) ))))) ;) (expression_statement "*puVar23 = *(undefined4 *)(iVar2 + -0x472c);" (assignment_expression "*puVar23 = *(undefined4 *)(iVar2 + -0x472c)" (pointer_expression "*puVar23" * identifier) = (pointer_expression "*(undefined4 *)(iVar2 + -0x472c)" * (cast_expression "(undefined4 *)(iVar2 + -0x472c)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + -0x472c)" ( (binary_expression "iVar2 + -0x472c" identifier + number_literal) ))))) ;) (expression_statement "puVar23[1] = uVar7;" (assignment_expression "puVar23[1] = uVar7" (subscript_expression "puVar23[1]" identifier [ number_literal ]) = identifier) ;) (expression_statement "*(undefined1 *)(puVar23 + 2) = *(undefined1 *)(iVar2 + -0x4724);" (assignment_expression "*(undefined1 *)(puVar23 + 2) = *(undefined1 *)(iVar2 + -0x4724)" (pointer_expression "*(undefined1 *)(puVar23 + 2)" * (cast_expression "(undefined1 *)(puVar23 + 2)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar23 + 2)" ( (binary_expression "puVar23 + 2" identifier + number_literal) )))) = (pointer_expression "*(undefined1 *)(iVar2 + -0x4724)" * (cast_expression "(undefined1 *)(iVar2 + -0x4724)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + -0x4724)" ( (binary_expression "iVar2 + -0x4724" identifier + number_literal) ))))) ;) (expression_statement "iVar2 = (**(code **)(pcStack_81e8 + -0x752c))(puVar23);" (assignment_expression "iVar2 = (**(code **)(pcStack_81e8 + -0x752c))(puVar23)" identifier = (call_expression "(**(code **)(pcStack_81e8 + -0x752c))(puVar23)" (parenthesized_expression "(**(code **)(pcStack_81e8 + -0x752c))" ( (pointer_expression "**(code **)(pcStack_81e8 + -0x752c)" * (pointer_expression "*(code **)(pcStack_81e8 + -0x752c)" * (cast_expression "(code **)(pcStack_81e8 + -0x752c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_81e8 + -0x752c)" ( (binary_expression "pcStack_81e8 + -0x752c" identifier + number_literal) ))))) )) (argument_list "(puVar23)" ( identifier )))) ;) (expression_statement "pcVar10 = (char *)((int)puVar23 + iVar2);" (assignment_expression "pcVar10 = (char *)((int)puVar23 + iVar2)" identifier = (cast_expression "(char *)((int)puVar23 + iVar2)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)puVar23 + iVar2)" ( (binary_expression "(int)puVar23 + iVar2" (cast_expression "(int)puVar23" ( (type_descriptor "int" primitive_type) ) identifier) + identifier) )))) ;) (expression_statement "cVar11 = *pcVar21;" (assignment_expression "cVar11 = *pcVar21" identifier = (pointer_expression "*pcVar21" * identifier)) ;) (expression_statement "pcVar22 = pcVar21;" (assignment_expression "pcVar22 = pcVar21" identifier = identifier) ;) (while_statement "while (cVar11 != '\0') {\nLAB_0002e6b4:\n      if (cVar11 == '\'') {\n        builtin_strncpy(pcVar10,"\'\\\'\'",4);\n        pcVar10 = pcVar10 + 4;\n      }\n      else {\n        *pcVar10 = cVar11;\n        pcVar10 = pcVar10 + 1;\n      }\n      pcVar21 = pcVar21 + 1;\n      cVar11 = *pcVar21;\n    }" while (parenthesized_expression "(cVar11 != '\0')" ( (binary_expression "cVar11 != '\0'" identifier != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\nLAB_0002e6b4:\n      if (cVar11 == '\'') {\n        builtin_strncpy(pcVar10,"\'\\\'\'",4);\n        pcVar10 = pcVar10 + 4;\n      }\n      else {\n        *pcVar10 = cVar11;\n        pcVar10 = pcVar10 + 1;\n      }\n      pcVar21 = pcVar21 + 1;\n      cVar11 = *pcVar21;\n    }" { (labeled_statement "LAB_0002e6b4:\n      if (cVar11 == '\'') {\n        builtin_strncpy(pcVar10,"\'\\\'\'",4);\n        pcVar10 = pcVar10 + 4;\n      }\n      else {\n        *pcVar10 = cVar11;\n        pcVar10 = pcVar10 + 1;\n      }" statement_identifier : (if_statement "if (cVar11 == '\'') {\n        builtin_strncpy(pcVar10,"\'\\\'\'",4);\n        pcVar10 = pcVar10 + 4;\n      }\n      else {\n        *pcVar10 = cVar11;\n        pcVar10 = pcVar10 + 1;\n      }" if (parenthesized_expression "(cVar11 == '\'')" ( (binary_expression "cVar11 == '\''" identifier == (char_literal "'\''" ' escape_sequence ')) )) (compound_statement "{\n        builtin_strncpy(pcVar10,"\'\\\'\'",4);\n        pcVar10 = pcVar10 + 4;\n      }" { (expression_statement "builtin_strncpy(pcVar10,"\'\\\'\'",4);" (call_expression "builtin_strncpy(pcVar10,"\'\\\'\'",4)" identifier (argument_list "(pcVar10,"\'\\\'\'",4)" ( identifier , (string_literal ""\'\\\'\'"" " escape_sequence escape_sequence escape_sequence escape_sequence ") , number_literal ))) ;) (expression_statement "pcVar10 = pcVar10 + 4;" (assignment_expression "pcVar10 = pcVar10 + 4" identifier = (binary_expression "pcVar10 + 4" identifier + number_literal)) ;) }) (else_clause "else {\n        *pcVar10 = cVar11;\n        pcVar10 = pcVar10 + 1;\n      }" else (compound_statement "{\n        *pcVar10 = cVar11;\n        pcVar10 = pcVar10 + 1;\n      }" { (expression_statement "*pcVar10 = cVar11;" (assignment_expression "*pcVar10 = cVar11" (pointer_expression "*pcVar10" * identifier) = identifier) ;) (expression_statement "pcVar10 = pcVar10 + 1;" (assignment_expression "pcVar10 = pcVar10 + 1" identifier = (binary_expression "pcVar10 + 1" identifier + number_literal)) ;) })))) (expression_statement "pcVar21 = pcVar21 + 1;" (assignment_expression "pcVar21 = pcVar21 + 1" identifier = (binary_expression "pcVar21 + 1" identifier + number_literal)) ;) (expression_statement "cVar11 = *pcVar21;" (assignment_expression "cVar11 = *pcVar21" identifier = (pointer_expression "*pcVar21" * identifier)) ;) })) (expression_statement "*pcVar10 = '\'';" (assignment_expression "*pcVar10 = '\''" (pointer_expression "*pcVar10" * identifier) = (char_literal "'\''" ' escape_sequence ')) ;) (expression_statement "pcVar10[1] = '\0';" (assignment_expression "pcVar10[1] = '\0'" (subscript_expression "pcVar10[1]" identifier [ number_literal ]) = (char_literal "'\0'" ' escape_sequence ')) ;) (expression_statement "FUN_00028a00(pcVar13,pcVar27,puVar23);" (call_expression "FUN_00028a00(pcVar13,pcVar27,puVar23)" identifier (argument_list "(pcVar13,pcVar27,puVar23)" ( identifier , identifier , identifier ))) ;) (expression_statement "safefree(puVar23);" (call_expression "safefree(puVar23)" identifier (argument_list "(puVar23)" ( identifier ))) ;) (if_statement "if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31ec) != 0) {\n      scp_sftp_listdir(pcVar22);\n      iVar2 = *(int *)(pcStack_81e8 + -0x7fd8);\n      goto LAB_0002e788;\n    }" if (parenthesized_expression "(*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31ec) != 0)" ( (binary_expression "*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31ec) != 0" (pointer_expression "*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31ec)" * (cast_expression "(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31ec)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31ec)" ( (binary_expression "*(int *)(pcStack_81e8 + -0x7fd8) + -0x31ec" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fd8)" * (cast_expression "(int *)(pcStack_81e8 + -0x7fd8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_81e8 + -0x7fd8)" ( (binary_expression "pcStack_81e8 + -0x7fd8" identifier + number_literal) )))) + number_literal) )))) != number_literal) )) (compound_statement "{\n      scp_sftp_listdir(pcVar22);\n      iVar2 = *(int *)(pcStack_81e8 + -0x7fd8);\n      goto LAB_0002e788;\n    }" { (expression_statement "scp_sftp_listdir(pcVar22);" (call_expression "scp_sftp_listdir(pcVar22)" identifier (argument_list "(pcVar22)" ( identifier ))) ;) (expression_statement "iVar2 = *(int *)(pcStack_81e8 + -0x7fd8);" (assignment_expression "iVar2 = *(int *)(pcStack_81e8 + -0x7fd8)" identifier = (pointer_expression "*(int *)(pcStack_81e8 + -0x7fd8)" * (cast_expression "(int *)(pcStack_81e8 + -0x7fd8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_81e8 + -0x7fd8)" ( (binary_expression "pcStack_81e8 + -0x7fd8" identifier + number_literal) ))))) ;) (goto_statement "goto LAB_0002e788;" goto statement_identifier ;) })) (expression_statement "puVar23 = *(undefined4 **)(pcStack_81e8 + -0x7594);" (assignment_expression "puVar23 = *(undefined4 **)(pcStack_81e8 + -0x7594)" identifier = (pointer_expression "*(undefined4 **)(pcStack_81e8 + -0x7594)" * (cast_expression "(undefined4 **)(pcStack_81e8 + -0x7594)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_81e8 + -0x7594)" ( (binary_expression "pcStack_81e8 + -0x7594" identifier + number_literal) ))))) ;) (while_statement "while( true ) {\n      pcVar27 = (char *)0x1;\n      iVar2 = FUN_000280f4(&cStack_81d5);\n      if (iVar2 < 1) break;\n      (**(code **)(pcStack_81e8 + -0x75c4))((int)cStack_81d5,*puVar23);\n    }" while (parenthesized_expression "( true )" ( true )) (compound_statement "{\n      pcVar27 = (char *)0x1;\n      iVar2 = FUN_000280f4(&cStack_81d5);\n      if (iVar2 < 1) break;\n      (**(code **)(pcStack_81e8 + -0x75c4))((int)cStack_81d5,*puVar23);\n    }" { (expression_statement "pcVar27 = (char *)0x1;" (assignment_expression "pcVar27 = (char *)0x1" identifier = (cast_expression "(char *)0x1" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "iVar2 = FUN_000280f4(&cStack_81d5);" (assignment_expression "iVar2 = FUN_000280f4(&cStack_81d5)" identifier = (call_expression "FUN_000280f4(&cStack_81d5)" identifier (argument_list "(&cStack_81d5)" ( (pointer_expression "&cStack_81d5" & identifier) )))) ;) (if_statement "if (iVar2 < 1) break;" if (parenthesized_expression "(iVar2 < 1)" ( (binary_expression "iVar2 < 1" identifier < number_literal) )) (break_statement "break;" break ;)) (expression_statement "(**(code **)(pcStack_81e8 + -0x75c4))((int)cStack_81d5,*puVar23);" (call_expression "(**(code **)(pcStack_81e8 + -0x75c4))((int)cStack_81d5,*puVar23)" (parenthesized_expression "(**(code **)(pcStack_81e8 + -0x75c4))" ( (pointer_expression "**(code **)(pcStack_81e8 + -0x75c4)" * (pointer_expression "*(code **)(pcStack_81e8 + -0x75c4)" * (cast_expression "(code **)(pcStack_81e8 + -0x75c4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_81e8 + -0x75c4)" ( (binary_expression "pcStack_81e8 + -0x75c4" identifier + number_literal) ))))) )) (argument_list "((int)cStack_81d5,*puVar23)" ( (cast_expression "(int)cStack_81d5" ( (type_descriptor "int" primitive_type) ) identifier) , (pointer_expression "*puVar23" * identifier) ))) ;) })) }))) (expression_statement "iVar2 = *(int *)(pcStack_81e8 + -0x7fd8);" (assignment_expression "iVar2 = *(int *)(pcStack_81e8 + -0x7fd8)" identifier = (pointer_expression "*(int *)(pcStack_81e8 + -0x7fd8)" * (cast_expression "(int *)(pcStack_81e8 + -0x7fd8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_81e8 + -0x7fd8)" ( (binary_expression "pcStack_81e8 + -0x7fd8" identifier + number_literal) ))))) ;) (labeled_statement "LAB_0002e788:\n  pcVar28 = *(code **)(pcStack_81e8 + -0x7c44);" statement_identifier : (expression_statement "pcVar28 = *(code **)(pcStack_81e8 + -0x7c44);" (assignment_expression "pcVar28 = *(code **)(pcStack_81e8 + -0x7c44)" identifier = (pointer_expression "*(code **)(pcStack_81e8 + -0x7c44)" * (cast_expression "(code **)(pcStack_81e8 + -0x7c44)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_81e8 + -0x7c44)" ( (binary_expression "pcStack_81e8 + -0x7c44" identifier + number_literal) ))))) ;)) (if_statement "if (*(int *)(iVar2 + -0x31f4) != 0) {\n    iVar2 = (**(code **)(*(int *)(iVar2 + -0x31f4) + 0x20))\n                      (*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f8));\n    pcVar28 = *(code **)(pcStack_81e8 + -0x7c44);\n    if (iVar2 != 0) {\n      (**(code **)(*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f4) + 0x18))\n                (*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f8),0xc);\n      **(undefined4 **)(pcStack_81e8 + -0x7db4) = 1;\n      pcVar27 = (char *)0x1;\n      FUN_000280f4(&cStack_81d5);\n      pcVar28 = *(code **)(pcStack_81e8 + -0x7c44);\n    }\n  }" if (parenthesized_expression "(*(int *)(iVar2 + -0x31f4) != 0)" ( (binary_expression "*(int *)(iVar2 + -0x31f4) != 0" (pointer_expression "*(int *)(iVar2 + -0x31f4)" * (cast_expression "(int *)(iVar2 + -0x31f4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + -0x31f4)" ( (binary_expression "iVar2 + -0x31f4" identifier + number_literal) )))) != number_literal) )) (compound_statement "{\n    iVar2 = (**(code **)(*(int *)(iVar2 + -0x31f4) + 0x20))\n                      (*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f8));\n    pcVar28 = *(code **)(pcStack_81e8 + -0x7c44);\n    if (iVar2 != 0) {\n      (**(code **)(*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f4) + 0x18))\n                (*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f8),0xc);\n      **(undefined4 **)(pcStack_81e8 + -0x7db4) = 1;\n      pcVar27 = (char *)0x1;\n      FUN_000280f4(&cStack_81d5);\n      pcVar28 = *(code **)(pcStack_81e8 + -0x7c44);\n    }\n  }" { (expression_statement "iVar2 = (**(code **)(*(int *)(iVar2 + -0x31f4) + 0x20))\n                      (*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f8));" (assignment_expression "iVar2 = (**(code **)(*(int *)(iVar2 + -0x31f4) + 0x20))\n                      (*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f8))" identifier = (call_expression "(**(code **)(*(int *)(iVar2 + -0x31f4) + 0x20))\n                      (*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f8))" (parenthesized_expression "(**(code **)(*(int *)(iVar2 + -0x31f4) + 0x20))" ( (pointer_expression "**(code **)(*(int *)(iVar2 + -0x31f4) + 0x20)" * (pointer_expression "*(code **)(*(int *)(iVar2 + -0x31f4) + 0x20)" * (cast_expression "(code **)(*(int *)(iVar2 + -0x31f4) + 0x20)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*(int *)(iVar2 + -0x31f4) + 0x20)" ( (binary_expression "*(int *)(iVar2 + -0x31f4) + 0x20" (pointer_expression "*(int *)(iVar2 + -0x31f4)" * (cast_expression "(int *)(iVar2 + -0x31f4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + -0x31f4)" ( (binary_expression "iVar2 + -0x31f4" identifier + number_literal) )))) + number_literal) ))))) )) (argument_list "(*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f8))" ( (pointer_expression "*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f8)" * (cast_expression "(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f8)" ( (binary_expression "*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f8" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fd8)" * (cast_expression "(int *)(pcStack_81e8 + -0x7fd8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_81e8 + -0x7fd8)" ( (binary_expression "pcStack_81e8 + -0x7fd8" identifier + number_literal) )))) + number_literal) )))) )))) ;) (expression_statement "pcVar28 = *(code **)(pcStack_81e8 + -0x7c44);" (assignment_expression "pcVar28 = *(code **)(pcStack_81e8 + -0x7c44)" identifier = (pointer_expression "*(code **)(pcStack_81e8 + -0x7c44)" * (cast_expression "(code **)(pcStack_81e8 + -0x7c44)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_81e8 + -0x7c44)" ( (binary_expression "pcStack_81e8 + -0x7c44" identifier + number_literal) ))))) ;) (if_statement "if (iVar2 != 0) {\n      (**(code **)(*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f4) + 0x18))\n                (*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f8),0xc);\n      **(undefined4 **)(pcStack_81e8 + -0x7db4) = 1;\n      pcVar27 = (char *)0x1;\n      FUN_000280f4(&cStack_81d5);\n      pcVar28 = *(code **)(pcStack_81e8 + -0x7c44);\n    }" if (parenthesized_expression "(iVar2 != 0)" ( (binary_expression "iVar2 != 0" identifier != number_literal) )) (compound_statement "{\n      (**(code **)(*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f4) + 0x18))\n                (*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f8),0xc);\n      **(undefined4 **)(pcStack_81e8 + -0x7db4) = 1;\n      pcVar27 = (char *)0x1;\n      FUN_000280f4(&cStack_81d5);\n      pcVar28 = *(code **)(pcStack_81e8 + -0x7c44);\n    }" { (expression_statement "(**(code **)(*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f4) + 0x18))\n                (*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f8),0xc);" (call_expression "(**(code **)(*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f4) + 0x18))\n                (*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f8),0xc)" (parenthesized_expression "(**(code **)(*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f4) + 0x18))" ( (pointer_expression "**(code **)(*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f4) + 0x18)" * (pointer_expression "*(code **)(*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f4) + 0x18)" * (cast_expression "(code **)(*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f4) + 0x18)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f4) + 0x18)" ( (binary_expression "*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f4) + 0x18" (pointer_expression "*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f4)" * (cast_expression "(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f4)" ( (binary_expression "*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f4" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fd8)" * (cast_expression "(int *)(pcStack_81e8 + -0x7fd8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_81e8 + -0x7fd8)" ( (binary_expression "pcStack_81e8 + -0x7fd8" identifier + number_literal) )))) + number_literal) )))) + number_literal) ))))) )) (argument_list "(*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f8),0xc)" ( (pointer_expression "*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f8)" * (cast_expression "(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f8)" ( (binary_expression "*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f8" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fd8)" * (cast_expression "(int *)(pcStack_81e8 + -0x7fd8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_81e8 + -0x7fd8)" ( (binary_expression "pcStack_81e8 + -0x7fd8" identifier + number_literal) )))) + number_literal) )))) , number_literal ))) ;) (expression_statement "**(undefined4 **)(pcStack_81e8 + -0x7db4) = 1;" (assignment_expression "**(undefined4 **)(pcStack_81e8 + -0x7db4) = 1" (pointer_expression "**(undefined4 **)(pcStack_81e8 + -0x7db4)" * (pointer_expression "*(undefined4 **)(pcStack_81e8 + -0x7db4)" * (cast_expression "(undefined4 **)(pcStack_81e8 + -0x7db4)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_81e8 + -0x7db4)" ( (binary_expression "pcStack_81e8 + -0x7db4" identifier + number_literal) ))))) = number_literal) ;) (expression_statement "pcVar27 = (char *)0x1;" (assignment_expression "pcVar27 = (char *)0x1" identifier = (cast_expression "(char *)0x1" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "FUN_000280f4(&cStack_81d5);" (call_expression "FUN_000280f4(&cStack_81d5)" identifier (argument_list "(&cStack_81d5)" ( (pointer_expression "&cStack_81d5" & identifier) ))) ;) (expression_statement "pcVar28 = *(code **)(pcStack_81e8 + -0x7c44);" (assignment_expression "pcVar28 = *(code **)(pcStack_81e8 + -0x7c44)" identifier = (pointer_expression "*(code **)(pcStack_81e8 + -0x7c44)" * (cast_expression "(code **)(pcStack_81e8 + -0x7c44)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_81e8 + -0x7c44)" ( (binary_expression "pcStack_81e8 + -0x7c44" identifier + number_literal) ))))) ;) })) })) (expression_statement "(*pcVar28)();" (call_expression "(*pcVar28)()" (parenthesized_expression "(*pcVar28)" ( (pointer_expression "*pcVar28" * identifier) )) (argument_list "()" ( ))) ;) (expression_statement "cmdline_cleanup();" (call_expression "cmdline_cleanup()" identifier (argument_list "()" ( ))) ;) (expression_statement "(**(code **)(pcStack_81e8 + -0x7d88))(0);" (call_expression "(**(code **)(pcStack_81e8 + -0x7d88))(0)" (parenthesized_expression "(**(code **)(pcStack_81e8 + -0x7d88))" ( (pointer_expression "**(code **)(pcStack_81e8 + -0x7d88)" * (pointer_expression "*(code **)(pcStack_81e8 + -0x7d88)" * (cast_expression "(code **)(pcStack_81e8 + -0x7d88)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_81e8 + -0x7d88)" ( (binary_expression "pcStack_81e8 + -0x7d88" identifier + number_literal) ))))) )) (argument_list "(0)" ( number_literal ))) ;) (expression_statement "iVar20 = *(int *)(pcStack_81e8 + -0x7fd8);" (assignment_expression "iVar20 = *(int *)(pcStack_81e8 + -0x7fd8)" identifier = (pointer_expression "*(int *)(pcStack_81e8 + -0x7fd8)" * (cast_expression "(int *)(pcStack_81e8 + -0x7fd8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_81e8 + -0x7fd8)" ( (binary_expression "pcStack_81e8 + -0x7fd8" identifier + number_literal) ))))) ;) (expression_statement "iVar24 = *(int *)(pcStack_81e8 + -0x7fd8);" (assignment_expression "iVar24 = *(int *)(pcStack_81e8 + -0x7fd8)" identifier = (pointer_expression "*(int *)(pcStack_81e8 + -0x7fd8)" * (cast_expression "(int *)(pcStack_81e8 + -0x7fd8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_81e8 + -0x7fd8)" ( (binary_expression "pcStack_81e8 + -0x7fd8" identifier + number_literal) ))))) ;) (expression_statement "(**(code **)(*(int *)(iVar24 + -0x31f4) + 4))(*(undefined4 *)(iVar20 + -0x31f8));" (call_expression "(**(code **)(*(int *)(iVar24 + -0x31f4) + 4))(*(undefined4 *)(iVar20 + -0x31f8))" (parenthesized_expression "(**(code **)(*(int *)(iVar24 + -0x31f4) + 4))" ( (pointer_expression "**(code **)(*(int *)(iVar24 + -0x31f4) + 4)" * (pointer_expression "*(code **)(*(int *)(iVar24 + -0x31f4) + 4)" * (cast_expression "(code **)(*(int *)(iVar24 + -0x31f4) + 4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*(int *)(iVar24 + -0x31f4) + 4)" ( (binary_expression "*(int *)(iVar24 + -0x31f4) + 4" (pointer_expression "*(int *)(iVar24 + -0x31f4)" * (cast_expression "(int *)(iVar24 + -0x31f4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar24 + -0x31f4)" ( (binary_expression "iVar24 + -0x31f4" identifier + number_literal) )))) + number_literal) ))))) )) (argument_list "(*(undefined4 *)(iVar20 + -0x31f8))" ( (pointer_expression "*(undefined4 *)(iVar20 + -0x31f8)" * (cast_expression "(undefined4 *)(iVar20 + -0x31f8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar20 + -0x31f8)" ( (binary_expression "iVar20 + -0x31f8" identifier + number_literal) )))) ))) ;) (expression_statement "*(undefined4 *)(iVar20 + -0x31f8) = 0;" (assignment_expression "*(undefined4 *)(iVar20 + -0x31f8) = 0" (pointer_expression "*(undefined4 *)(iVar20 + -0x31f8)" * (cast_expression "(undefined4 *)(iVar20 + -0x31f8)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar20 + -0x31f8)" ( (binary_expression "iVar20 + -0x31f8" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*(undefined4 *)(iVar24 + -0x31f4) = 0;" (assignment_expression "*(undefined4 *)(iVar24 + -0x31f4) = 0" (pointer_expression "*(undefined4 *)(iVar24 + -0x31f4)" * (cast_expression "(undefined4 *)(iVar24 + -0x31f4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar24 + -0x31f4)" ( (binary_expression "iVar24 + -0x31f4" identifier + number_literal) )))) = number_literal) ;) (expression_statement "(**(code **)(pcStack_81e8 + -0x7c3c))();" (call_expression "(**(code **)(pcStack_81e8 + -0x7c3c))()" (parenthesized_expression "(**(code **)(pcStack_81e8 + -0x7c3c))" ( (pointer_expression "**(code **)(pcStack_81e8 + -0x7c3c)" * (pointer_expression "*(code **)(pcStack_81e8 + -0x7c3c)" * (cast_expression "(code **)(pcStack_81e8 + -0x7c3c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_81e8 + -0x7c3c)" ( (binary_expression "pcStack_81e8 + -0x7c3c" identifier + number_literal) ))))) )) (argument_list "()" ( ))) ;) (expression_statement "uVar3 = (uint)(*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31e0) != 0);" (assignment_expression "uVar3 = (uint)(*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31e0) != 0)" identifier = (call_expression "(uint)(*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31e0) != 0)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31e0) != 0)" ( (binary_expression "*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31e0) != 0" (pointer_expression "*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31e0)" * (cast_expression "(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31e0)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31e0)" ( (binary_expression "*(int *)(pcStack_81e8 + -0x7fd8) + -0x31e0" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fd8)" * (cast_expression "(int *)(pcStack_81e8 + -0x7fd8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_81e8 + -0x7fd8)" ( (binary_expression "pcStack_81e8 + -0x7fd8" identifier + number_literal) )))) + number_literal) )))) != number_literal) )))) ;) (labeled_statement "LAB_0002e878:\n  if (puStack_81d4 == (undefined4 *)**(int **)(pcStack_81e8 + -0x7478)) {\n    return uVar3;\n  }" statement_identifier : (if_statement "if (puStack_81d4 == (undefined4 *)**(int **)(pcStack_81e8 + -0x7478)) {\n    return uVar3;\n  }" if (parenthesized_expression "(puStack_81d4 == (undefined4 *)**(int **)(pcStack_81e8 + -0x7478))" ( (binary_expression "puStack_81d4 == (undefined4 *)**(int **)(pcStack_81e8 + -0x7478)" identifier == (cast_expression "(undefined4 *)**(int **)(pcStack_81e8 + -0x7478)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "**(int **)(pcStack_81e8 + -0x7478)" * (pointer_expression "*(int **)(pcStack_81e8 + -0x7478)" * (cast_expression "(int **)(pcStack_81e8 + -0x7478)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_81e8 + -0x7478)" ( (binary_expression "pcStack_81e8 + -0x7478" identifier + number_literal) ))))))) )) (compound_statement "{\n    return uVar3;\n  }" { (return_statement "return uVar3;" return identifier ;) }))) (expression_statement "pcVar28 = *(code **)(pcStack_81e8 + -0x74a0);" (assignment_expression "pcVar28 = *(code **)(pcStack_81e8 + -0x74a0)" identifier = (pointer_expression "*(code **)(pcStack_81e8 + -0x74a0)" * (cast_expression "(code **)(pcStack_81e8 + -0x74a0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_81e8 + -0x74a0)" ( (binary_expression "pcStack_81e8 + -0x74a0" identifier + number_literal) ))))) ;) (expression_statement "uVar12 = 0x2f008;" (assignment_expression "uVar12 = 0x2f008" identifier = number_literal) ;) (expression_statement "puVar23 = puStack_81d4;" (assignment_expression "puVar23 = puStack_81d4" identifier = identifier) ;) (expression_statement "(*pcVar28)();" (call_expression "(*pcVar28)()" (parenthesized_expression "(*pcVar28)" ( (pointer_expression "*pcVar28" * identifier) )) (argument_list "()" ( ))) ;) (expression_statement "pcStack_8218 = pcVar28 + 0x95140;" (assignment_expression "pcStack_8218 = pcVar28 + 0x95140" identifier = (binary_expression "pcVar28 + 0x95140" identifier + number_literal)) ;) (expression_statement "uVar7 = *puVar23;" (assignment_expression "uVar7 = *puVar23" identifier = (pointer_expression "*puVar23" * identifier)) ;) (expression_statement "uVar6 = *(undefined4 *)pcVar27;" (assignment_expression "uVar6 = *(undefined4 *)pcVar27" identifier = (pointer_expression "*(undefined4 *)pcVar27" * (cast_expression "(undefined4 *)pcVar27" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier))) ;) (expression_statement "iStack_820c = iVar24;" (assignment_expression "iStack_820c = iVar24" identifier = identifier) ;) (expression_statement "iStack_8208 = iVar20;" (assignment_expression "iStack_8208 = iVar20" identifier = identifier) ;) (expression_statement "uStack_8204 = uVar12;" (assignment_expression "uStack_8204 = uVar12" identifier = identifier) ;) (expression_statement "iVar2 = (**(code **)(pcVar28 + 0x8dd04))(uVar7,*(int *)(pcVar28 + 0x8d178) + -0x4584);" (assignment_expression "iVar2 = (**(code **)(pcVar28 + 0x8dd04))(uVar7,*(int *)(pcVar28 + 0x8d178) + -0x4584)" identifier = (call_expression "(**(code **)(pcVar28 + 0x8dd04))(uVar7,*(int *)(pcVar28 + 0x8d178) + -0x4584)" (parenthesized_expression "(**(code **)(pcVar28 + 0x8dd04))" ( (pointer_expression "**(code **)(pcVar28 + 0x8dd04)" * (pointer_expression "*(code **)(pcVar28 + 0x8dd04)" * (cast_expression "(code **)(pcVar28 + 0x8dd04)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar28 + 0x8dd04)" ( (binary_expression "pcVar28 + 0x8dd04" identifier + number_literal) ))))) )) (argument_list "(uVar7,*(int *)(pcVar28 + 0x8d178) + -0x4584)" ( identifier , (binary_expression "*(int *)(pcVar28 + 0x8d178) + -0x4584" (pointer_expression "*(int *)(pcVar28 + 0x8d178)" * (cast_expression "(int *)(pcVar28 + 0x8d178)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcVar28 + 0x8d178)" ( (binary_expression "pcVar28 + 0x8d178" identifier + number_literal) )))) + number_literal) )))) ;) (if_statement "if (iVar2 == 0) {\n    uVar3 = 0xffffffff;\n  }\n  else {\n    iVar2 = (**(code **)(pcStack_8218 + -0x743c))(uVar6,*(int *)(pcStack_8218 + -0x7fc8) + -0x4584);\n    if (iVar2 == 0) {\n      uVar3 = 1;\n    }\n    else {\n      uVar3 = (**(code **)(pcStack_8218 + -0x743c))(uVar7,uVar6);\n    }\n  }" if (parenthesized_expression "(iVar2 == 0)" ( (binary_expression "iVar2 == 0" identifier == number_literal) )) (compound_statement "{\n    uVar3 = 0xffffffff;\n  }" { (expression_statement "uVar3 = 0xffffffff;" (assignment_expression "uVar3 = 0xffffffff" identifier = number_literal) ;) }) (else_clause "else {\n    iVar2 = (**(code **)(pcStack_8218 + -0x743c))(uVar6,*(int *)(pcStack_8218 + -0x7fc8) + -0x4584);\n    if (iVar2 == 0) {\n      uVar3 = 1;\n    }\n    else {\n      uVar3 = (**(code **)(pcStack_8218 + -0x743c))(uVar7,uVar6);\n    }\n  }" else (compound_statement "{\n    iVar2 = (**(code **)(pcStack_8218 + -0x743c))(uVar6,*(int *)(pcStack_8218 + -0x7fc8) + -0x4584);\n    if (iVar2 == 0) {\n      uVar3 = 1;\n    }\n    else {\n      uVar3 = (**(code **)(pcStack_8218 + -0x743c))(uVar7,uVar6);\n    }\n  }" { (expression_statement "iVar2 = (**(code **)(pcStack_8218 + -0x743c))(uVar6,*(int *)(pcStack_8218 + -0x7fc8) + -0x4584);" (assignment_expression "iVar2 = (**(code **)(pcStack_8218 + -0x743c))(uVar6,*(int *)(pcStack_8218 + -0x7fc8) + -0x4584)" identifier = (call_expression "(**(code **)(pcStack_8218 + -0x743c))(uVar6,*(int *)(pcStack_8218 + -0x7fc8) + -0x4584)" (parenthesized_expression "(**(code **)(pcStack_8218 + -0x743c))" ( (pointer_expression "**(code **)(pcStack_8218 + -0x743c)" * (pointer_expression "*(code **)(pcStack_8218 + -0x743c)" * (cast_expression "(code **)(pcStack_8218 + -0x743c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_8218 + -0x743c)" ( (binary_expression "pcStack_8218 + -0x743c" identifier + number_literal) ))))) )) (argument_list "(uVar6,*(int *)(pcStack_8218 + -0x7fc8) + -0x4584)" ( identifier , (binary_expression "*(int *)(pcStack_8218 + -0x7fc8) + -0x4584" (pointer_expression "*(int *)(pcStack_8218 + -0x7fc8)" * (cast_expression "(int *)(pcStack_8218 + -0x7fc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_8218 + -0x7fc8)" ( (binary_expression "pcStack_8218 + -0x7fc8" identifier + number_literal) )))) + number_literal) )))) ;) (if_statement "if (iVar2 == 0) {\n      uVar3 = 1;\n    }\n    else {\n      uVar3 = (**(code **)(pcStack_8218 + -0x743c))(uVar7,uVar6);\n    }" if (parenthesized_expression "(iVar2 == 0)" ( (binary_expression "iVar2 == 0" identifier == number_literal) )) (compound_statement "{\n      uVar3 = 1;\n    }" { (expression_statement "uVar3 = 1;" (assignment_expression "uVar3 = 1" identifier = number_literal) ;) }) (else_clause "else {\n      uVar3 = (**(code **)(pcStack_8218 + -0x743c))(uVar7,uVar6);\n    }" else (compound_statement "{\n      uVar3 = (**(code **)(pcStack_8218 + -0x743c))(uVar7,uVar6);\n    }" { (expression_statement "uVar3 = (**(code **)(pcStack_8218 + -0x743c))(uVar7,uVar6);" (assignment_expression "uVar3 = (**(code **)(pcStack_8218 + -0x743c))(uVar7,uVar6)" identifier = (call_expression "(**(code **)(pcStack_8218 + -0x743c))(uVar7,uVar6)" (parenthesized_expression "(**(code **)(pcStack_8218 + -0x743c))" ( (pointer_expression "**(code **)(pcStack_8218 + -0x743c)" * (pointer_expression "*(code **)(pcStack_8218 + -0x743c)" * (cast_expression "(code **)(pcStack_8218 + -0x743c)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_8218 + -0x743c)" ( (binary_expression "pcStack_8218 + -0x743c" identifier + number_literal) ))))) )) (argument_list "(uVar7,uVar6)" ( identifier , identifier )))) ;) }))) }))) (return_statement "return uVar3;" return identifier ;) (labeled_statement "LAB_0002de88:\n  if (iStack_80c0 != 0) {\n    (**(code **)(pcStack_8138 + -0x7c60))(unaff_s5,uStack_80b8,uStack_80bc);\n  }" statement_identifier : (if_statement "if (iStack_80c0 != 0) {\n    (**(code **)(pcStack_8138 + -0x7c60))(unaff_s5,uStack_80b8,uStack_80bc);\n  }" if (parenthesized_expression "(iStack_80c0 != 0)" ( (binary_expression "iStack_80c0 != 0" identifier != number_literal) )) (compound_statement "{\n    (**(code **)(pcStack_8138 + -0x7c60))(unaff_s5,uStack_80b8,uStack_80bc);\n  }" { (expression_statement "(**(code **)(pcStack_8138 + -0x7c60))(unaff_s5,uStack_80b8,uStack_80bc);" (call_expression "(**(code **)(pcStack_8138 + -0x7c60))(unaff_s5,uStack_80b8,uStack_80bc)" (parenthesized_expression "(**(code **)(pcStack_8138 + -0x7c60))" ( (pointer_expression "**(code **)(pcStack_8138 + -0x7c60)" * (pointer_expression "*(code **)(pcStack_8138 + -0x7c60)" * (cast_expression "(code **)(pcStack_8138 + -0x7c60)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_8138 + -0x7c60)" ( (binary_expression "pcStack_8138 + -0x7c60" identifier + number_literal) ))))) )) (argument_list "(unaff_s5,uStack_80b8,uStack_80bc)" ( identifier , identifier , identifier ))) ;) }))) (expression_statement "(**(code **)(pcStack_8138 + -0x7c70))(unaff_s5);" (call_expression "(**(code **)(pcStack_8138 + -0x7c70))(unaff_s5)" (parenthesized_expression "(**(code **)(pcStack_8138 + -0x7c70))" ( (pointer_expression "**(code **)(pcStack_8138 + -0x7c70)" * (pointer_expression "*(code **)(pcStack_8138 + -0x7c70)" * (cast_expression "(code **)(pcStack_8138 + -0x7c70)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcStack_8138 + -0x7c70)" ( (binary_expression "pcStack_8138 + -0x7c70" identifier + number_literal) ))))) )) (argument_list "(unaff_s5)" ( identifier ))) ;) (if_statement "if (iVar24 == 0) {\n    scp_finish_filerecv();\n    safefree(unaff_s3);\n    safefree(uStack_80d4);\n  }\n  else {\n    FUN_0002a658(*(int *)(pcStack_8138 + -0x7fc8) + -0x483c,unaff_s3);\n    safefree(unaff_s3);\n  }" if (parenthesized_expression "(iVar24 == 0)" ( (binary_expression "iVar24 == 0" identifier == number_literal) )) (compound_statement "{\n    scp_finish_filerecv();\n    safefree(unaff_s3);\n    safefree(uStack_80d4);\n  }" { (expression_statement "scp_finish_filerecv();" (call_expression "scp_finish_filerecv()" identifier (argument_list "()" ( ))) ;) (expression_statement "safefree(unaff_s3);" (call_expression "safefree(unaff_s3)" identifier (argument_list "(unaff_s3)" ( identifier ))) ;) (expression_statement "safefree(uStack_80d4);" (call_expression "safefree(uStack_80d4)" identifier (argument_list "(uStack_80d4)" ( identifier ))) ;) }) (else_clause "else {\n    FUN_0002a658(*(int *)(pcStack_8138 + -0x7fc8) + -0x483c,unaff_s3);\n    safefree(unaff_s3);\n  }" else (compound_statement "{\n    FUN_0002a658(*(int *)(pcStack_8138 + -0x7fc8) + -0x483c,unaff_s3);\n    safefree(unaff_s3);\n  }" { (expression_statement "FUN_0002a658(*(int *)(pcStack_8138 + -0x7fc8) + -0x483c,unaff_s3);" (call_expression "FUN_0002a658(*(int *)(pcStack_8138 + -0x7fc8) + -0x483c,unaff_s3)" identifier (argument_list "(*(int *)(pcStack_8138 + -0x7fc8) + -0x483c,unaff_s3)" ( (binary_expression "*(int *)(pcStack_8138 + -0x7fc8) + -0x483c" (pointer_expression "*(int *)(pcStack_8138 + -0x7fc8)" * (cast_expression "(int *)(pcStack_8138 + -0x7fc8)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pcStack_8138 + -0x7fc8)" ( (binary_expression "pcStack_8138 + -0x7fc8" identifier + number_literal) )))) + number_literal) , identifier ))) ;) (expression_statement "safefree(unaff_s3);" (call_expression "safefree(unaff_s3)" identifier (argument_list "(unaff_s3)" ( identifier ))) ;) }))) (goto_statement "goto LAB_0002d77c;" goto statement_identifier ;) })))
(translation_unit (function_definition TYPE (function_declarator IDENT (parameter_list ( (parameter_declaration TYPE (pointer_declarator * IDENT)) , (parameter_declaration TYPE (pointer_declarator * IDENT)) ))) (compound_statement { (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE 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 (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (array_declarator IDENT [ LIT ]) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE 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 IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE (array_declarator IDENT [ LIT ]) ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE (array_declarator IDENT [ LIT ]) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT))) ;) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) }) (else_clause else (compound_statement { (expression_statement (call_expression IDENT (argument_list ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) ))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( ))))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) , IDENT ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) < LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) IDENT))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , (binary_expression IDENT + LIT) , IDENT ))) ;) (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 ))) ;) })) (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)) ;) (expression_statement (assignment_expression IDENT = LIT) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) , (pointer_expression & IDENT) , (pointer_expression & IDENT) )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) < (cast_expression ( (type_descriptor TYPE) ) IDENT)) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) < LIT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) , (binary_expression IDENT + LIT) ))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (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 ))) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (goto_statement goto statement_identifier ;) })) (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 (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( (binary_expression IDENT + LIT) , (binary_expression IDENT + LIT) , LIT , (binary_expression IDENT + LIT) )))) ;) (return_statement return IDENT ;) })) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( IDENT , IDENT ))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT ))) ;) }))) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (call_expression IDENT (argument_list ( (pointer_expression & IDENT) , (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) )))) , 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 (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) }))) }))) (labeled_statement statement_identifier : (if_statement if (parenthesized_expression ( (binary_expression IDENT == (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT))) )) (compound_statement { (return_statement return IDENT ;) }))) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) )) (argument_list ( ))) ;) (expression_statement (assignment_expression IDENT = (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) ))))))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (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 (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 = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))) + LIT) ))))) )) (argument_list ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))) , IDENT , LIT ))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) }) (else_clause else (compound_statement { (expression_statement (call_expression IDENT (argument_list ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))) ))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (pointer_expression & IDENT)) ;) (while_statement while (parenthesized_expression ( (comma_expression (assignment_expression IDENT = (call_expression IDENT (argument_list ( (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 = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( ))))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) , IDENT ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) < LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (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) ))))))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT , IDENT ))) ;) (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 ))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) }))) (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)) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) , IDENT , IDENT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( IDENT ))) ;) })) })) (expression_statement (call_expression IDENT (argument_list ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))) ))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))) ))))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT )))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT ))) ;) (expression_statement (assignment_expression IDENT = LIT) ;) }))) (labeled_statement statement_identifier : (if_statement if (parenthesized_expression ( (binary_expression IDENT == (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) ))))))) )) (compound_statement { (return_statement return IDENT ;) }))) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( ))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( )))) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))) != LIT) )) && (parenthesized_expression ( (binary_expression IDENT != LIT) ))) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , IDENT ))) ;) })) (expression_statement (call_expression IDENT (argument_list ( ))) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT)) ;) (labeled_statement statement_identifier : (do_statement do (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (pointer_expression & IDENT) )))) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT != LIT) )) || (parenthesized_expression ( (binary_expression IDENT == LIT) ))) )) (goto_statement goto statement_identifier ;)) }) while (parenthesized_expression ( (binary_expression IDENT == LIT) )) ;)) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , LIT ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))) ;) (expression_statement (call_expression IDENT (argument_list ( (pointer_expression * 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 ( (pointer_expression * IDENT) , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , IDENT ))) ;) })) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))) ;) (if_statement if (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ IDENT ]) == (char_literal ' escape_sequence ')) )) (compound_statement { (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))) ;) })) (if_statement if (parenthesized_expression ( (binary_expression 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 * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , LIT ))))) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , IDENT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT != LIT) )) && (parenthesized_expression ( (comma_expression (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) , (binary_expression (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))) == LIT) && (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))) == LIT))) ))) )) (compound_statement { (expression_statement (call_expression IDENT (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 ))) ;) (expression_statement (call_expression IDENT (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 ))) ;) (expression_statement (call_expression IDENT (argument_list ( (pointer_expression * 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 ( (pointer_expression * IDENT) , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) })) })) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * IDENT) == (char_literal ' escape_sequence ')) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( IDENT ))))) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , IDENT ))))) ;) }))) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( IDENT ))))) ;) }))) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , IDENT ))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT ))) ;) (goto_statement goto statement_identifier ;) })) }) (else_clause else (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , IDENT ))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT ))) ;) (goto_statement goto statement_identifier ;) })))) (expression_statement (call_expression IDENT (argument_list ( IDENT , LIT ))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT ))) ;) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , IDENT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , IDENT ))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT ))) ;) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (call_expression IDENT (argument_list ( (pointer_expression & IDENT) , LIT , LIT ))) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( LIT )))) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , LIT )))) ;) (expression_statement (call_expression IDENT (argument_list ( (pointer_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) ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (labeled_statement statement_identifier : (do_statement do (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , IDENT , IDENT , IDENT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression LIT < IDENT) )) (goto_statement goto statement_identifier ;)) (expression_statement (call_expression IDENT (argument_list ( (pointer_expression & IDENT) , LIT , LIT ))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (call_expression IDENT (argument_list ( (pointer_expression & IDENT) , IDENT , IDENT , IDENT ))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , IDENT , IDENT , IDENT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression LIT < IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (call_expression IDENT (argument_list ( (pointer_expression & IDENT) , IDENT , IDENT , IDENT ))) ;) })) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( IDENT , IDENT ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) < LIT) )) (compound_statement { (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( (binary_expression IDENT + LIT) ))) ;) })) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , IDENT , IDENT ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == IDENT) )) (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) )))) != LIT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( (pointer_expression & IDENT) , IDENT , IDENT , IDENT ))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( LIT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT <= IDENT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( (pointer_expression & IDENT) , IDENT , IDENT , IDENT ))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , IDENT , IDENT , IDENT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (goto_statement goto statement_identifier ;)) })) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( LIT )))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( IDENT , IDENT , IDENT , IDENT ))) ;) })) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = IDENT) ;)) (expression_statement (call_expression IDENT (argument_list ( (pointer_expression & IDENT) , IDENT , IDENT , IDENT ))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (goto_statement goto statement_identifier ;) })) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) != LIT) )) (compound_statement { (expression_statement (call_expression (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 ( LIT , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , IDENT , IDENT ))) ;) })) (expression_statement (call_expression IDENT (argument_list ( (pointer_expression & IDENT) , IDENT , IDENT , IDENT ))) ;) }) (else_clause else (compound_statement { (expression_statement (call_expression IDENT (argument_list ( (pointer_expression & IDENT) , IDENT , IDENT , IDENT ))) ;) }))) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) }) while (parenthesized_expression ( BOOL )) ;)) })) (expression_statement (call_expression IDENT (argument_list ( IDENT ))) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT ))) ;) (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) ))))) ;)) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))))) )) (compound_statement { (return_statement return (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) })) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( ))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( LIT ))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT ))) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( ))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , LIT , LIT , (pointer_expression * IDENT) ))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression & IDENT)) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( (pointer_expression * IDENT) , LIT , IDENT ))) ;) (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 *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , LIT , LIT , (pointer_expression * IDENT) ))) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( ))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (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) ))))))) ;) (expression_statement (assignment_expression (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) = LIT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (pointer_expression & IDENT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( ))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))) = IDENT) ;) (expression_statement (call_expression IDENT (argument_list ( LIT , IDENT ))) ;) (expression_statement (assignment_expression (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) = LIT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT < LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) ;) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * IDENT) == (char_literal ' character ')) )) (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 IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;)) (expression_statement (assignment_expression IDENT = LIT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT < IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + (binary_expression (parenthesized_expression ( (binary_expression IDENT + LIT) )) * LIT)) ))))) ;) })) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , IDENT , LIT , (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) )))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , (pointer_expression * IDENT) ))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = IDENT) ;)) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) & LIT) )) != LIT) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))) = IDENT) ;) })) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression IDENT = LIT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (goto_statement goto statement_identifier ;)) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = (pointer_expression * IDENT)) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , (binary_expression IDENT + LIT) )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( ))) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( 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 *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , (binary_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 (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , (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 IDENT != LIT) )) && (parenthesized_expression ( (comma_expression (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))) , (binary_expression IDENT != LIT)) ))) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))) ;) (expression_statement (assignment_expression IDENT = (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 { (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = IDENT) ;)) (expression_statement (call_expression IDENT (argument_list ( ))) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , (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) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , (binary_expression IDENT + LIT) )))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (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 (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (goto_statement goto statement_identifier ;) })) }))) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , (binary_expression IDENT + LIT) )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) = LIT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (goto_statement goto statement_identifier ;)) (expression_statement (call_expression IDENT (argument_list ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , IDENT ))) ;) }))) }))) }))) (goto_statement goto statement_identifier ;) })) })) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( ))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) }))) }))) }))) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;)) (if_statement if (parenthesized_expression ( (binary_expression IDENT <= IDENT) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + (binary_expression IDENT * LIT)) )))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * IDENT) != (char_literal ' character ')) )) (goto_statement goto statement_identifier ;)) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression IDENT = LIT) ;) }))) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (binary_expression IDENT - IDENT)) ;)) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_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 (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))) == LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT < LIT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( ))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT + IDENT) + LIT)) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (pointer_expression * 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 IDENT != LIT) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;)) (labeled_statement statement_identifier : (expression_statement (call_expression IDENT (argument_list ( (binary_expression IDENT + LIT) ))) ;)) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (pointer_expression * IDENT))) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;)) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( IDENT ))))) ;) (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 ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))) ;) (expression_statement (assignment_expression IDENT = LIT) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression (pointer_expression * IDENT) = LIT) ;) }))) (if_statement if (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) == (char_literal ' escape_sequence ')) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) }))) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , 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 *)) ) LIT)) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression (pointer_expression * IDENT) = LIT) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * IDENT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (char_literal ' escape_sequence ')) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) })) }))) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))) == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT)) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT)) ;) }))) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))) == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT)) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT)) ;) }))) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))) == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT)) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT)) ;) }))) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))) == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT)) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT)) ;) }))) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , IDENT , IDENT , IDENT )))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT , IDENT ))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT ))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))) , (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))) )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( IDENT ))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (goto_statement goto statement_identifier ;) })) }) (else_clause else (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT < LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT + IDENT) + LIT)) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (pointer_expression * 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 *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + 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 IDENT != LIT) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (pointer_expression * IDENT))) ;) (goto_statement goto statement_identifier ;) })) }) (else_clause else (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))) = LIT) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT + IDENT) + LIT)) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (pointer_expression * 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 *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))) = LIT) ;) (goto_statement goto statement_identifier ;) })) }))) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;)) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( IDENT ))))) ;) (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 ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))) ;) (expression_statement (assignment_expression IDENT = LIT) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression (pointer_expression * IDENT) = LIT) ;) }))) (if_statement if (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) == (char_literal ' escape_sequence ')) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) }))) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , 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 *)) ) LIT)) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression (pointer_expression * IDENT) = LIT) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * IDENT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (char_literal ' escape_sequence ')) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) })) }))) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (pointer_expression * IDENT) )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , (pointer_expression * IDENT) ))) ;) })) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( (pointer_expression * IDENT) , LIT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , (pointer_expression * IDENT) ))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_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 (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))) = LIT) ;) (goto_statement goto statement_identifier ;) })) }))) }) (else_clause else (compound_statement { (labeled_statement 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 (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT)) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT)) ;) }))) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))) == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT)) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT)) ;) }))) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))) == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT)) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT)) ;) }))) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))) == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT)) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT)) ;) }))) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , IDENT , IDENT , IDENT )))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT , IDENT ))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT ))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT == LIT) )) && (parenthesized_expression ( (binary_expression LIT < IDENT) ))) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT + IDENT) + LIT)) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (do_statement do (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , 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 *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) )) (argument_list ( (binary_expression IDENT + LIT) ))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) }) (else_clause else (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 *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) )) (argument_list ( IDENT ))) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( )))) ;) (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 *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) )) (argument_list ( (binary_expression IDENT + LIT) ))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) }) (else_clause else (compound_statement { (while_statement while (parenthesized_expression ( (comma_expression (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT )))) , (binary_expression IDENT != LIT)) )) (compound_statement { (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) )) (argument_list ( IDENT ))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT ))) ;) })) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT ))) ;) }))) }))))) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) ;) (expression_statement (call_expression IDENT (argument_list ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (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 (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))) = (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))) + LIT)) ;) }))) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) }) while (parenthesized_expression ( (binary_expression IDENT != IDENT) )) ;) (goto_statement goto statement_identifier ;) })) }))) }) (else_clause else (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (pointer_expression * IDENT))) ;) }) (else_clause else (compound_statement { (expression_statement (call_expression IDENT (argument_list ( ))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (pointer_expression * IDENT))) ;) }))) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( IDENT ))))) ;) (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 ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))) ;) (expression_statement (assignment_expression IDENT = LIT) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression (pointer_expression * IDENT) = LIT) ;) }))) (if_statement if (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) == (char_literal ' escape_sequence ')) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , 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 IDENT (argument_list ( LIT , LIT ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (pointer_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) ;) (expression_statement (assignment_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 (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT )))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + IDENT) )))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))) ;) (expression_statement (assignment_expression IDENT = (char_literal ' character ')) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression (pointer_expression * IDENT) = LIT) ;)) (expression_statement (assignment_expression IDENT = (pointer_expression * IDENT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (char_literal ' escape_sequence ')) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) })) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) }))) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT )))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( (binary_expression (parenthesized_expression ( (binary_expression IDENT + LIT) )) * LIT) , LIT ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (pointer_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) ;) (expression_statement (assignment_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 (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT )))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + IDENT) )))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * IDENT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (while_statement while (parenthesized_expression ( (binary_expression IDENT != (char_literal ' escape_sequence ')) )) (compound_statement { (labeled_statement statement_identifier : (if_statement if (parenthesized_expression ( (binary_expression IDENT == (char_literal ' escape_sequence ')) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( IDENT , (string_literal " escape_sequence escape_sequence escape_sequence escape_sequence ") , LIT ))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression (pointer_expression * IDENT) = IDENT) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) })))) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * IDENT)) ;) })) (expression_statement (assignment_expression (pointer_expression * IDENT) = (char_literal ' escape_sequence ')) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (char_literal ' escape_sequence ')) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT , IDENT ))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT ))) ;) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))) != LIT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( IDENT ))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (while_statement while (parenthesized_expression ( BOOL )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (pointer_expression & IDENT) )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT < LIT) )) (break_statement break ;)) (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 ( (cast_expression ( (type_descriptor TYPE) ) IDENT) , (pointer_expression * IDENT) ))) ;) })) }))) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;)) (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 = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))))) )) (argument_list ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))) )))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != 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 (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))) + LIT) ))))) )) (argument_list ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))) , LIT ))) ;) (expression_statement (assignment_expression (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) = LIT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) (expression_statement (call_expression IDENT (argument_list ( (pointer_expression & IDENT) ))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) })) })) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( ))) ;) (expression_statement (call_expression IDENT (argument_list ( ))) ;) (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 ( LIT ))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))))) )) (argument_list ( (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 IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( ))) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))) != LIT) )))) ;) (labeled_statement statement_identifier : (if_statement if (parenthesized_expression ( (binary_expression IDENT == (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) ))))))) )) (compound_statement { (return_statement return IDENT ;) }))) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( ))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * IDENT)) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , IDENT )))) ;) }))) }))) (return_statement return IDENT ;) (labeled_statement statement_identifier : (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT , IDENT , IDENT ))) ;) }))) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (argument_list ( IDENT ))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( ))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT ))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT ))) ;) }) (else_clause else (compound_statement { (expression_statement (call_expression IDENT (argument_list ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) , IDENT ))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT ))) ;) }))) (goto_statement goto statement_identifier ;) })))
(function_definition "uint scp_recv_filedata(undefined *param_1,undefined *param_2)\n\n{\n  undefined *puVar1;\n  int iVar2;\n  uint uVar3;\n  int iVar4;\n  undefined *puVar5;\n  undefined4 uVar6;\n  undefined4 uVar7;\n  int iVar8;\n  undefined1 *puVar9;\n  char *pcVar10;\n  undefined4 extraout_v1;\n  char cVar11;\n  undefined4 uVar12;\n  char *pcVar13;\n  undefined *puVar14;\n  int iVar15;\n  int iVar16;\n  undefined4 uVar17;\n  undefined4 *puVar18;\n  int *piVar19;\n  int iVar20;\n  char *pcVar21;\n  char *pcVar22;\n  undefined4 *unaff_s3;\n  undefined4 *puVar23;\n  undefined1 *unaff_s4;\n  int iVar24;\n  int unaff_s5;\n  int iVar25;\n  int iVar26;\n  int unaff_s7;\n  char *pcVar27;\n  code *pcVar28;\n  int iVar29;\n  code *pcVar30;\n  undefined auStack_100b0 [32408];\n  code *pcStack_8218;\n  int iStack_820c;\n  int iStack_8208;\n  undefined4 uStack_8204;\n  int iStack_81f0;\n  char *pcStack_81ec;\n  code *pcStack_81e8;\n  code *pcStack_81dc;\n  char cStack_81d5;\n  undefined4 *puStack_81d4;\n  undefined4 *puStack_81d0;\n  undefined4 uStack_81cc;\n  undefined *puStack_81c8;\n  undefined4 *puStack_81c4;\n  int iStack_81c0;\n  int iStack_81bc;\n  int *piStack_81b8;\n  int iStack_81b4;\n  int iStack_81b0;\n  code *pcStack_81ac;\n  code *pcStack_8198;\n  int *piStack_8190;\n  undefined4 uStack_818c;\n  undefined4 uStack_8184;\n  undefined *puStack_8180;\n  code *pcStack_817c;\n  int iStack_8174;\n  undefined4 uStack_8170;\n  undefined4 uStack_816c;\n  code *pcStack_8168;\n  undefined4 uStack_8160;\n  code *pcStack_815c;\n  undefined4 uStack_8148;\n  undefined4 uStack_8144;\n  int iStack_8140;\n  code *pcStack_8138;\n  char *pcStack_812c;\n  code *pcStack_8128;\n  int iStack_8124;\n  int iStack_8120;\n  undefined4 uStack_811c;\n  undefined *puStack_8118;\n  undefined4 uStack_8114;\n  int iStack_8110;\n  code *pcStack_810c;\n  undefined4 uStack_8108;\n  undefined4 uStack_8104;\n  undefined4 uStack_8100;\n  undefined4 uStack_80fc;\n  undefined4 uStack_80f8;\n  undefined4 uStack_80f4;\n  undefined4 uStack_80f0;\n  undefined4 uStack_80ec;\n  undefined4 uStack_80e8;\n  undefined4 uStack_80e4;\n  undefined4 uStack_80e0;\n  undefined4 uStack_80dc;\n  int iStack_80d8;\n  undefined4 uStack_80d4;\n  undefined *puStack_80d0;\n  undefined4 uStack_80cc;\n  undefined4 uStack_80c8;\n  undefined4 uStack_80c4;\n  int iStack_80c0;\n  undefined4 uStack_80bc;\n  undefined4 uStack_80b8;\n  undefined1 auStack_80b4 [32768];\n  uint uStack_b4;\n  undefined *puStack_b0;\n  undefined *puStack_ac;\n  undefined *puStack_a8;\n  undefined4 *puStack_a4;\n  undefined1 *puStack_a0;\n  undefined4 uStack_6c;\n  undefined1 auStack_68 [4];\n  char *pcStack_64;\n  undefined *puStack_60;\n  undefined *puStack_5c;\n  undefined *puStack_58;\n  undefined4 *puStack_54;\n  undefined4 local_30;\n  undefined4 local_2c;\n  uint local_24;\n  undefined4 local_20;\n  int local_1c;\n  \n  puVar1 = PTR_DAT_000bc178;\n  local_1c = *(int *)PTR___stack_chk_guard_000bccd8;\n  if (*(int *)(PTR_DAT_000bc178 + -0x31ec) == 0) {\n    uVar3 = FUN_000280f4();\n  }\n  else {\n    xfer_download_queue(*(undefined4 *)(PTR_DAT_000bc178 + -0x3244));\n    unaff_s3 = (undefined4 *)sftp_recv();\n    puVar1 = (undefined *)xfer_download_gotpkt(*(undefined4 *)(puVar1 + -0x3244),unaff_s3);\n    if ((int)puVar1 < 1) {\n      param_2 = *(undefined **)PTR_stderr_000bccf0;\n      uVar7 = fxp_error();\n      FUN_00027ff8(param_2,PTR_s_Server_sent_command_exit_status___000bc188 + -0x4abc,uVar7);\n      if (puVar1 == (undefined *)0x80000000) {\n        safefree(unaff_s3);\n      }\n      *(int *)(PTR_DAT_000bc178 + -0x31e0) = *(int *)(PTR_DAT_000bc178 + -0x31e0) + 1;\n      uVar3 = 0xffffffff;\n    }\n    else {\n      iVar2 = xfer_download_data(*(undefined4 *)(PTR_DAT_000bc178 + -0x3244),&local_20,&local_24);\n      if (iVar2 == 0) {\n        local_24 = 0;\n      }\n      else {\n        param_2 = (undefined *)(uint)((int)param_2 < (int)local_24);\n        if ((int)local_24 < 1) {\n          FUN_00027ff8(*(undefined4 *)PTR_stderr_000bccf0,\n                       PTR_s_Server_sent_command_exit_status___000bc188 + -0x4a9c);\n          *(int *)(PTR_DAT_000bc178 + -0x31e0) = *(int *)(PTR_DAT_000bc178 + -0x31e0) + 1;\n          safefree(local_20);\n          uVar3 = 0xffffffff;\n          goto LAB_0002d148;\n        }\n        if (param_2 != (undefined *)0x0) {\n          uVar3 = (*(code *)PTR___assert_fail_000bcb00)\n                            (PTR_s_Server_sent_command_exit_status___000bc188 + -0x4a7c,\n                             PTR_s_Server_sent_command_exit_status___000bc188 + -0x4fb0,0x628,\n                             PTR_s_Server_sent_command_exit_status___000bc188 + -0x45f0);\n          return uVar3;\n        }\n        (*(code *)PTR_memcpy_000bccdc)(param_1,local_20);\n        safefree(local_20);\n      }\n      param_2 = PTR_DAT_000bc178;\n      puVar1 = PTR_DAT_000bc178 + -0x324c;\n      uint64_add32(&local_30,*(undefined4 *)(PTR_DAT_000bc178 + -0x324c),\n                   *(undefined4 *)(PTR_DAT_000bc178 + -0x3248),local_24);\n      *(undefined4 *)(param_2 + -0x324c) = local_30;\n      *(undefined4 *)(param_2 + -0x3248) = local_2c;\n      uVar3 = local_24;\n    }\n  }\nLAB_0002d148:\n  if (local_1c == *(int *)PTR___stack_chk_guard_000bccd8) {\n    return uVar3;\n  }\n  puVar5 = PTR___stack_chk_fail_000bccb0;\n  (*(code *)PTR___stack_chk_fail_000bccb0)();\n  pcStack_64 = (char *)**(undefined4 **)(puVar5 + 0x8fa44);\n  puStack_60 = param_2;\n  puStack_5c = puVar1;\n  puStack_58 = param_1;\n  puStack_54 = unaff_s3;\n  if (*(int *)(*(int *)(puVar5 + 0x8eee4) + -0x31ec) == 0) {\n    puVar14 = (undefined *)(*(int *)(puVar5 + 0x8eef4) + -0x17dc);\n    (**(code **)(*(int *)(*(int *)(puVar5 + 0x8eee4) + -0x31f4) + 0xc))\n              (*(undefined4 *)(*(int *)(puVar5 + 0x8eee4) + -0x31f8),puVar14,1);\n    uVar3 = FUN_00028400();\n  }\n  else {\n    xfer_set_error(*(undefined4 *)(*(int *)(puVar5 + 0x8eee4) + -0x3244));\n    iVar2 = *(int *)(puVar5 + 0x8eee4);\n    unaff_s4 = auStack_68;\n    unaff_s3 = &uStack_6c;\n    while (iVar24 = xfer_done(*(undefined4 *)(iVar2 + -0x3244)), iVar24 == 0) {\n      param_1 = (undefined *)sftp_recv();\n      puVar1 = (undefined *)xfer_download_gotpkt(*(undefined4 *)(iVar2 + -0x3244),param_1);\n      if ((int)puVar1 < 1) {\n        param_2 = (undefined *)**(undefined4 **)(puVar5 + 0x8fa5c);\n        uVar7 = fxp_error();\n        puVar14 = (undefined *)(*(int *)(puVar5 + 0x8eef4) + -0x4abc);\n        FUN_00027ff8(param_2,puVar14,uVar7);\n        if (puVar1 == (undefined *)0x80000000) {\n          safefree(param_1);\n          iVar2 = *(int *)(puVar5 + 0x8eee4);\n        }\n        else {\n          iVar2 = *(int *)(puVar5 + 0x8eee4);\n        }\n        *(int *)(iVar2 + -0x31e0) = *(int *)(iVar2 + -0x31e0) + 1;\n        uVar3 = 0xffffffff;\n        goto LAB_0002d318;\n      }\n      iVar24 = xfer_download_data(*(undefined4 *)(iVar2 + -0x3244),unaff_s3,unaff_s4);\n      if (iVar24 != 0) {\n        safefree(uStack_6c);\n      }\n    }\n    xfer_cleanup(*(undefined4 *)(*(int *)(puVar5 + 0x8eee4) + -0x3244));\n    param_2 = (undefined *)fxp_close_send(*(undefined4 *)(*(int *)(puVar5 + 0x8eee4) + -0x3240));\n    uVar7 = sftp_wait_for_reply(param_2);\n    puVar14 = param_2;\n    fxp_close_recv(uVar7);\n    uVar3 = 0;\n  }\nLAB_0002d318:\n  if (pcStack_64 == (char *)**(undefined4 **)(puVar5 + 0x8fa44)) {\n    return uVar3;\n  }\n  pcVar28 = *(code **)(puVar5 + 0x8fa1c);\n  pcVar13 = pcStack_64;\n  (*pcVar28)();\n  pcStack_8138 = pcVar28 + 0x96c70;\n  uStack_b4 = **(uint **)(pcVar28 + 0x8f7f8);\n  pcStack_812c = pcVar13;\n  puStack_8118 = puVar14;\n  puStack_b0 = param_2;\n  puStack_ac = puVar1;\n  puStack_a8 = param_1;\n  puStack_a4 = unaff_s3;\n  puStack_a0 = unaff_s4;\n  iVar2 = (**(code **)(pcVar28 + 0x8ef84))();\n  if ((*(int *)(*(int *)(pcStack_8138 + -0x7fd8) + -0x31d4) != 0) && (iVar2 != 2)) {\n    FUN_00028270(*(int *)(pcStack_8138 + -0x7fc8) + -0x4a68,pcStack_812c);\n  }\n  scp_sink_init();\n  iVar24 = 0;\n  pcStack_8128 = (code *)(*(int *)(pcStack_8138 + -0x7db0) + -0x7d90);\n  pcStack_810c = (code *)(*(int *)(pcStack_8138 + -0x7db0) + -0x6cb8);\n  iStack_8110 = *(int *)(pcStack_8138 + -0x7fc8) + -0x4878;\nLAB_0002d77c:\n  do {\n    iVar4 = scp_get_sink_action(&iStack_80d8);\n    if ((iVar4 != 0) || (iStack_80d8 == 3)) goto LAB_0002da64;\n  } while (iStack_80d8 == 4);\n  if (iVar2 == 2) {\n    param_1 = auStack_100b0;\n    puVar1 = (undefined *)(**(code **)(pcStack_8138 + -0x7cac))(puStack_80d0,1);\n    if (puStack_80d0 != puVar1) {\n      puVar23 = *(undefined4 **)(pcStack_8138 + -0x7460);\n      param_1 = (undefined *)(*(int *)(pcStack_8138 + -0x7fcc) + 0x7ff8);\n      FUN_00027ff8(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x4a54);\n      FUN_00027ff8(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x4a20,puVar1);\n    }\n    iVar4 = (**(code **)(pcStack_8138 + -0x7640))(puVar1,*(int *)(pcStack_8138 + -0x7fc8) + -0x48b0)\n    ;\n    if (puVar1[iVar4] == '\0') {\n      (*pcStack_8128)(*(int *)(pcStack_8138 + -0x7fc8) + -0x49f8);\n    }\n    if (puStack_8118 != (undefined *)0x0) {\n      param_1 = (undefined *)(**(code **)(pcStack_8138 + -0x7cac))(puStack_8118,1);\n      iVar4 = (**(code **)(pcStack_8138 + -0x743c))(puVar1,param_1);\n      if ((iVar4 != 0) &&\n         (puVar23 = *(undefined4 **)(pcStack_8138 + -0x7460),\n         *(int *)(*(int *)(pcStack_8138 + -0x7fd8) + -0x31ec) == 0 &&\n         *(int *)(*(int *)(pcStack_8138 + -0x7fd8) + -0x31dc) == 0)) {\n        FUN_00027ff8(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x49ac,puVar1);\n        FUN_00027ff8(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x4970,param_1);\n        FUN_00027ff8(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x4940);\n        FUN_00027ff8(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x48f8);\n        puVar1 = param_1;\n      }\n    }\n    if (*pcStack_812c == '\0') {\n      unaff_s3 = (undefined4 *)dupstr(puVar1);\n    }\n    else {\n      unaff_s3 = (undefined4 *)(**(code **)(pcStack_8138 + -0x7c78))(pcStack_812c,puVar1);\n    }\n  }\n  else {\n    unaff_s3 = (undefined4 *)dupstr(pcStack_812c);\n  }\n  iVar4 = (**(code **)(pcStack_8138 + -0x7cec))(unaff_s3);\n  if (iStack_80d8 == 2) {\n    if (iVar4 == 0) {\n      iVar4 = (**(code **)(pcStack_8138 + -0x7c80))(unaff_s3);\n      if (iVar4 == 0) {\n        FUN_0002a658(*(int *)(pcStack_8138 + -0x7fc8) + -0x48ac,unaff_s3);\n        safefree(unaff_s3);\n        goto LAB_0002d77c;\n      }\n    }\n    else if (iVar4 != 2) {\n      FUN_0002a658(*(int *)(pcStack_8138 + -0x7fc8) + -0x4a68,unaff_s3);\n      safefree(unaff_s3);\n      goto LAB_0002d77c;\n    }\n    FUN_0002d4e0(unaff_s3,0);\n    safefree(unaff_s3);\n    goto LAB_0002d77c;\n  }\n  unaff_s5 = (**(code **)(pcStack_8138 + -0x7c84))(unaff_s3,uStack_80cc);\n  if (unaff_s5 == 0) {\n    FUN_0002a658(*(int *)(pcStack_8138 + -0x7fc8) + -0x4890,unaff_s3);\n    safefree(unaff_s3);\n    goto LAB_0002d77c;\n  }\n  iStack_8120 = scp_accept_filexfer();\n  if (iStack_8120 == 0) {\n    puVar1 = auStack_100b0;\n    uint64_make(&uStack_80f8,0,0);\n    uStack_8114 = (**(code **)(pcStack_8138 + -0x7488))(0);\n    uStack_811c = (**(code **)(pcStack_8138 + -0x7cac))(unaff_s3,1);\n    uint64_make(&uStack_8100,0,0);\n    iStack_8124 = *(int *)(pcStack_8138 + -0x7fc8);\n    unaff_s7 = *(int *)(pcStack_8138 + -0x7fd8);\nLAB_0002db64:\n    do {\n      iVar4 = uint64_compare(uStack_8100,uStack_80fc,uStack_80c8,uStack_80c4);\n      if (-1 < iVar4) goto LAB_0002de88;\n      uint64_make(&uStack_80f0,0,0x8000);\n      uStack_8148 = uStack_80fc;\n      uint64_subtract(&uStack_80e8,uStack_80c8,uStack_80c4,uStack_8100);\n      iVar4 = uint64_compare(uStack_80f0,uStack_80ec,uStack_80e8,uStack_80e4);\n      if (0 < iVar4) {\n        uStack_8148 = uStack_80fc;\n        uint64_subtract(&uStack_80f0,uStack_80c8,uStack_80c4,uStack_8100);\n      }\n      puVar1 = (undefined *)scp_recv_filedata(auStack_80b4,uStack_80ec);\n      if ((int)puVar1 < 1) {\n        (*pcStack_8128)(iStack_8124 + -0x5640);\n      }\n      if (iVar24 == 0) {\n        puVar5 = (undefined *)(**(code **)(pcStack_8138 + -0x7c68))(unaff_s5,auStack_80b4,puVar1);\n        if (puVar5 == puVar1) {\n          if (*(int *)(unaff_s7 + -0x3fa8) != 0) {\n            uint64_add32(&uStack_8108,uStack_80f8,uStack_80f4,puVar1);\n            uStack_80f8 = uStack_8108;\n            uStack_80f4 = uStack_8104;\n            iVar4 = (**(code **)(pcStack_8138 + -0x7488))(0);\n            if (iVar4 <= iStack_8120) {\n              uint64_add32(&uStack_80e0,uStack_8100,uStack_80fc,puVar1);\n              iVar4 = uint64_compare(uStack_80e0,uStack_80dc,uStack_80c8,uStack_80c4);\n              if (iVar4 != 0) goto LAB_0002dc94;\n            }\n            iStack_8140 = (**(code **)(pcStack_8138 + -0x7488))(0);\n            uStack_8144 = uStack_8114;\n            uStack_8148 = uStack_80f4;\n            iStack_8120 = iStack_8140;\n            (*pcStack_810c)(uStack_811c,uStack_80c8,uStack_80c4,uStack_80f8);\n          }\nLAB_0002dc94:\n          param_1 = auStack_100b0;\n          uint64_add32(&uStack_8108,uStack_8100,uStack_80fc,puVar1);\n          uStack_8100 = uStack_8108;\n          uStack_80fc = uStack_8104;\n          goto LAB_0002db64;\n        }\n        if (*(int *)(unaff_s7 + -0x3fa8) != 0) {\n          (**(code **)(pcStack_8138 + -0x759c))\n                    (1,*(int *)(pcStack_8138 + -0x7fc8) + -0x4850,uStack_811c,iStack_8110);\n        }\n        uint64_add32(&uStack_8108,uStack_8100,uStack_80fc,puVar1);\n      }\n      else {\n        uint64_add32(&uStack_8108,uStack_8100,uStack_80fc,puVar1);\n      }\n      param_1 = auStack_100b0;\n      iVar24 = 1;\n      uStack_8100 = uStack_8108;\n      uStack_80fc = uStack_8104;\n    } while( true );\n  }\n  safefree(unaff_s3);\n  (**(code **)(pcStack_8138 + -0x7c70))(unaff_s5);\nLAB_0002da64:\n  pcVar28 = *(code **)(pcStack_8138 + -0x74a0);\n  if (uStack_b4 == **(uint **)(pcStack_8138 + -0x7478)) {\n    return **(uint **)(pcStack_8138 + -0x7478);\n  }\n  pcVar30 = version;\n  (*pcVar28)();\n  pcStack_8168 = pcVar28 + 0x961d8;\n  uStack_8160 = 0xffff0000;\n  pcStack_815c = pcVar30;\n  uVar6 = buildinfo(*(int *)(pcVar28 + 0x8e210) + 0xaa4);\n  uVar17 = *(undefined4 *)(pcStack_8168 + -0x7da8);\n  iVar4 = *(int *)(pcStack_8168 + -0x7fc8) + -0x482c;\n  uVar7 = uVar6;\n  (**(code **)(pcStack_8168 + -0x759c))(1);\n  safefree(uVar6);\n  uVar12 = 0;\n  pcVar28 = *(code **)(pcStack_8168 + -0x7504);\n  pcVar30 = cmdline_error;\n  (*pcVar28)();\n  pcStack_8198 = pcVar28 + 0x96158;\n  uStack_818c = **(undefined4 **)(pcVar28 + 0x8ece0);\n  puVar23 = *(undefined4 **)(pcVar28 + 0x8ecf8);\n  uStack_8184 = uVar6;\n  puStack_8180 = puVar1;\n  pcStack_817c = pcVar30;\n  iStack_8174 = iVar4;\n  uStack_8170 = uVar17;\n  uStack_816c = uVar7;\n  (**(code **)(pcVar28 + 0x8ec90))(*(int *)(pcVar28 + 0x8e190) + -0x4e28,1,6,*puVar23);\n  piStack_8190 = &iStack_8174;\n  (**(code **)(pcStack_8198 + -0x7444))(*puVar23,1,uVar12);\n  iVar15 = 1;\n  (**(code **)(pcStack_8198 + -0x74c8))(*(int *)(pcStack_8198 + -0x7fc8) + -0x481c,1,0x27,*puVar23);\n  iVar4 = 1;\n  pcVar28 = *(code **)(pcStack_8198 + -0x7504);\n  pcVar30 = psftp_main;\n  (*pcVar28)();\n  pcStack_81e8 = pcVar28 + 0x9609c;\n  puStack_81d4 = (undefined4 *)**(undefined4 **)(pcVar28 + 0x8ec24);\n  **(undefined4 **)(pcVar28 + 0x8e144) = 1;\n  **(undefined4 **)(pcVar28 + 0x8e158) = 2;\n  **(undefined4 **)(pcVar28 + 0x8e120) = 1;\n  puStack_81d0 = puVar23;\n  uStack_81cc = uVar12;\n  puStack_81c8 = param_1;\n  puStack_81c4 = unaff_s3;\n  iStack_81c0 = iVar24;\n  iStack_81bc = unaff_s5;\n  piStack_81b8 = &iStack_80d8;\n  iStack_81b4 = unaff_s7;\n  iStack_81b0 = iVar2;\n  pcStack_81ac = pcVar30;\n  (**(code **)(pcVar28 + 0x8e444))();\n  uVar7 = conf_new();\n  *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31fc) = uVar7;\n  do_defaults(0,uVar7);\n  **(undefined4 **)(pcStack_81e8 + -0x7f60) = 0;\n  pcVar28 = pcStack_81e8;\n  if (iVar4 < 2) {\n    iVar2 = 1;\n  }\n  else {\n    pcVar13 = *(char **)(iVar15 + 4);\n    piVar19 = (int *)(iVar15 + 4);\n    if (*pcVar13 == '-') {\n      iVar25 = *(int *)(pcStack_81e8 + -0x7fd8);\n      iVar26 = *(int *)(pcStack_81e8 + -0x7fc8);\n      pcVar27 = (char *)(*(int *)(pcStack_81e8 + -0x7fc8) + -0x47b8);\n      iVar29 = *(int *)(pcStack_81e8 + -0x7fc8);\n      pcStack_81dc = (code *)(*(int *)(pcStack_81e8 + -0x7db0) + -0x79e4);\n      iVar24 = 1;\nLAB_0002e488:\n      iVar2 = iVar24 + 1;\n      uVar7 = 0;\n      if (iVar2 < iVar4) {\n        uVar7 = *(undefined4 *)(iVar15 + (iVar24 + 1) * 4);\n      }\n      iVar8 = cmdline_process_param(pcVar13,uVar7,1,*(undefined4 *)(iVar25 + -0x31fc));\n      pcVar28 = pcStack_81e8;\n      if (iVar8 == -2) {\n        cmdline_error(*(int *)(pcStack_81e8 + -0x7fc8) + -0x47e4,*piVar19);\n        uVar7 = extraout_v1;\nLAB_0002e1d0:\n        iVar2 = iVar24;\n        if ((**(uint **)(pcVar28 + -0x7f44) & 1) != 0) {\n          *(undefined4 *)(*(int *)(pcVar28 + -0x7fd8) + -0x31c8) = uVar7;\n        }\n        goto LAB_0002e464;\n      }\n      uVar7 = 1;\n      if (iVar8 == 2) goto LAB_0002e464;\n      if (iVar8 == 1) goto LAB_0002e1d0;\n      iVar20 = *piVar19;\n      iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar26 + -0x47c0);\n      if (iVar8 == 0) {\n        (**(code **)(pcStack_81e8 + -0x7c54))();\n        uVar3 = 1;\n        goto LAB_0002e878;\n      }\n      iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20);\n      if (iVar8 == 0) {\n        *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31cc) = 1;\n        pcVar28 = pcStack_81e8;\n        iVar2 = iVar24;\n      }\n      else {\n        iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar29 + -0x47b4);\n        if (iVar8 == 0) {\n          *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d0) = 1;\n          pcVar28 = pcStack_81e8;\n          iVar2 = iVar24;\n        }\n        else {\n          iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                            (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47b0);\n          if (iVar8 == 0) {\n            *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fa8) = 0;\n            pcVar28 = pcStack_81e8;\n            iVar2 = iVar24;\n          }\n          else {\n            iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                              (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47ac);\n            if ((iVar8 != 0) &&\n               (iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                  (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47a8), iVar8 != 0))\n            {\n              iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47a4);\n              if (iVar8 != 0) {\n                iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                  (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x479c);\n                iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                if (iVar8 == 0) {\nLAB_0002e348:\n                  pcVar28 = pcStack_81e8;\n                  version();\n                }\n                else {\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar16 + -0x4798);\n                  iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                  if (iVar8 == 0) goto LAB_0002e348;\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar16 + -0x478c);\n                  iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                  pcVar28 = pcStack_81e8;\n                  if (iVar8 == 0) {\n                    *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31c4) = 1;\n                    iVar2 = iVar24;\n                    goto LAB_0002e464;\n                  }\n                }\n                iVar8 = (**(code **)(pcVar28 + -0x743c))(iVar20,iVar16 + -0x4788);\n                if (iVar8 == 0) {\n                  **(undefined4 **)(pcStack_81e8 + -0x7c4c) = 1;\n                  pcVar28 = pcStack_81e8;\n                  iVar2 = iVar24;\n                }\n                else {\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                    (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4780);\n                  if (iVar8 == 0) {\n                    *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31dc) = 1;\n                    pcVar28 = pcStack_81e8;\n                    iVar2 = iVar24;\n                  }\n                  else {\n                    iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                      (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4778);\n                    if (iVar8 == 0) {\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac) = 0;\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0) = 1;\n                      pcVar28 = pcStack_81e8;\n                      iVar2 = iVar24;\n                      goto LAB_0002e464;\n                    }\n                    iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                      (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4770);\n                    if (iVar8 == 0) {\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac) = 1;\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0) = 0;\n                      pcVar28 = pcStack_81e8;\n                      iVar2 = iVar24;\n                    }\n                    else {\n                      iVar24 = (**(code **)(pcStack_81e8 + -0x743c))\n                                         (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4768);\n                      pcVar28 = pcStack_81e8;\n                      if (iVar24 == 0) goto LAB_0002e52c;\n                      cmdline_error(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4764,iVar20);\n                    }\n                  }\n                }\n                goto LAB_0002e464;\n              }\n            }\n            (*pcStack_81dc)();\n            pcVar28 = pcStack_81e8;\n            iVar2 = iVar24;\n          }\n        }\n      }\nLAB_0002e464:\n      iVar2 = iVar2 + 1;\n      if (iVar4 <= iVar2) goto LAB_0002e52c;\n      piVar19 = (int *)(iVar15 + iVar2 * 4);\n      pcVar13 = (char *)*piVar19;\n      iVar24 = iVar2;\n      if (*pcVar13 != '-') goto LAB_0002e52c;\n      goto LAB_0002e488;\n    }\n    iVar2 = 1;\n  }\nLAB_0002e52c:\n  iVar4 = iVar4 - iVar2;\n  *(undefined4 *)(*(int *)(pcVar28 + -0x7fd8) + -0x31f4) = 0;\n  puVar23 = (undefined4 *)(iVar15 + iVar2 * 4);\n  if (*(int *)(*(int *)(pcVar28 + -0x7fd8) + -0x31c4) == 0) {\n    if (iVar4 < 2) {\n      FUN_0002861c();\n      puVar18 = puVar23 + iVar4 + 0x3fffffff;\n      iVar24 = FUN_00028968(*puVar18);\n      iVar2 = *(int *)(pcStack_81e8 + -0x7fd8);\n      if (iVar24 != 0) goto LAB_0002e90c;\n      *(undefined4 *)(iVar2 + -0x31f0) = 0;\nLAB_0002efd8:\n      iVar2 = *(int *)(pcStack_81e8 + -0x7fc8);\nLAB_0002efdc:\n      FUN_00028270(iVar2 + -0x4668);\n      pcVar13 = (char *)*puVar23;\nLAB_0002eb34:\n      uVar7 = puVar23[1];\n      puVar9 = (undefined1 *)FUN_00028968(pcVar13);\n      if (puVar9 == (undefined1 *)0x0) {\n        FUN_00028270(*(int *)(pcStack_81e8 + -0x7fc8) + -0x463c);\n        uRam00000000 = 0;\n      }\n      else {\n        *puVar9 = 0;\n      }\n      if (puVar9[1] == '\0') {\n        pcVar27 = (char *)(*(int *)(pcStack_81e8 + -0x7fc8) + -0x48b0);\n      }\n      else {\n        pcVar27 = puVar9 + 1;\n      }\n      puVar9 = (undefined1 *)(**(code **)(pcStack_81e8 + -0x75b8))(pcVar13,0x40);\n      if (puVar9 == (undefined1 *)0x0) {\n        pcVar21 = (char *)0x0;\n      }\n      else {\n        *puVar9 = 0;\n        cVar11 = *pcVar13;\n        pcVar21 = pcVar13;\n        pcVar13 = puVar9 + 1;\n        if (cVar11 == '\0') {\n          pcVar21 = (char *)0x0;\n        }\n      }\n      if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31c8) == 0) {\n        iVar2 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iVar2 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47f4;\n      }\n      if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31cc) == 0) {\n        iVar24 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iVar24 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47f0;\n      }\n      if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d0) == 0) {\n        iVar4 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iVar4 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47ec;\n      }\n      if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4) == 0) {\n        iStack_81f0 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iStack_81f0 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47e8;\n      }\n      pcStack_81ec = pcVar27;\n      uVar6 = dupprintf(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4618,iVar2,iVar24,iVar4);\n      FUN_00028a00(pcVar13,pcVar21,uVar6);\n      safefree(uVar6);\n      iVar2 = scp_sink_setup(pcVar27,*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d0),\n                             *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31cc));\n      if (iVar2 == 0) {\n        FUN_0002d4e0(uVar7);\n        iVar2 = *(int *)(pcStack_81e8 + -0x7fd8);\n        goto LAB_0002e788;\n      }\n    }\n    else {\n      if (iVar4 < 3) {\n        puVar18 = puVar23 + iVar4 + 0x3fffffff;\n        iVar2 = FUN_00028968(*puVar18);\n        if (iVar2 == 0) {\n          *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f0) = 0;\n          iVar2 = *(int *)(pcStack_81e8 + -0x7fc8);\n          if (iVar4 != 2) goto LAB_0002efdc;\n          pcVar13 = (char *)*puVar23;\n          goto LAB_0002eb34;\n        }\n      }\n      else {\n        *(undefined4 *)(*(int *)(pcVar28 + -0x7fd8) + -0x31d4) = 1;\n        puVar18 = puVar23 + iVar4 + 0x3fffffff;\n        iVar2 = FUN_00028968(*puVar18);\n        if (iVar2 == 0) {\n          *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f0) = 0;\n          goto LAB_0002efd8;\n        }\n      }\n      iVar2 = *(int *)(pcStack_81e8 + -0x7fd8);\nLAB_0002e90c:\n      *(undefined4 *)(iVar2 + -0x31f0) = 1;\n      pcVar13 = (char *)*puVar18;\n      puVar9 = (undefined1 *)FUN_00028968(pcVar13);\n      if (puVar9 == (undefined1 *)0x0) {\n        FUN_00028270(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4720);\n        uRam00000000 = 0;\n      }\n      else {\n        *puVar9 = 0;\n      }\n      if (puVar9[1] == '\0') {\n        pcVar21 = (char *)(*(int *)(pcStack_81e8 + -0x7fc8) + -0x48b0);\n      }\n      else {\n        pcVar21 = puVar9 + 1;\n      }\n      puVar9 = (undefined1 *)(**(code **)(pcStack_81e8 + -0x75b8))(pcVar13,0x40);\n      if (puVar9 == (undefined1 *)0x0) {\n        pcVar27 = (char *)0x0;\n      }\n      else {\n        *puVar9 = 0;\n        cVar11 = *pcVar13;\n        pcVar27 = pcVar13;\n        pcVar13 = puVar9 + 1;\n        if (cVar11 == '\0') {\n          pcVar27 = (char *)0x0;\n        }\n      }\n      if (iVar4 == 2) {\n        iVar2 = FUN_00028968(*puVar23);\n        if (iVar2 != 0) {\n          FUN_00028270(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4704,*puVar23);\n        }\n        iVar2 = (**(code **)(pcStack_81e8 + -0x7c30))(*puVar23,1);\n        if (iVar2 == 0) {\n          FUN_00028270(*(int *)(pcStack_81e8 + -0x7fc8) + -0x46e0,*puVar23);\n          iVar24 = *(int *)(pcStack_81e8 + -0x7fd8);\n        }\n        else {\n          iVar24 = *(int *)(pcStack_81e8 + -0x7fd8);\n          if (iVar2 == 2) {\n            *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4) = 1;\n            goto LAB_0002e988;\n          }\n        }\n      }\n      else {\nLAB_0002e988:\n        iVar24 = *(int *)(pcStack_81e8 + -0x7fd8);\n      }\n      if (*(int *)(iVar24 + -0x31c8) == 0) {\n        iVar2 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iVar2 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47f4;\n      }\n      if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31cc) == 0) {\n        iVar24 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iVar24 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47f0;\n      }\n      if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d0) == 0) {\n        iVar15 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iVar15 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47ec;\n      }\n      if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4) == 0) {\n        iStack_81f0 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iStack_81f0 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47e8;\n      }\n      pcStack_81ec = pcVar21;\n      uVar7 = dupprintf(*(int *)(pcStack_81e8 + -0x7fc8) + -0x46c0,iVar2,iVar24,iVar15);\n      FUN_00028a00(pcVar13,pcVar27,uVar7);\n      safefree(uVar7);\n      pcVar27 = *(char **)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4);\n      iVar2 = scp_source_setup(pcVar21);\n      if ((iVar2 == 0) && (1 < iVar4)) {\n        puVar18 = puVar23 + iVar4 + -1;\n        iVar24 = *(int *)(pcStack_81e8 + -0x7db0);\n        iVar25 = *(int *)(pcStack_81e8 + -0x7fc8);\n        iVar15 = *(int *)(pcStack_81e8 + -0x7db0);\n        iVar4 = *(int *)(pcStack_81e8 + -0x7fc8);\n        do {\n          pcVar13 = (char *)*puVar23;\n          iVar2 = FUN_00028968(pcVar13);\n          if (iVar2 == 0) {\n            pcVar27 = (char *)0x1;\n            iVar2 = (**(code **)(pcStack_81e8 + -0x7c30))(pcVar13,1,pcVar13);\n            if (iVar2 == 0) {\n              (*(code *)(iVar15 + -0x59a8))(iVar25 + -0x4688);\n              pcVar27 = pcVar13;\n            }\n            else if (iVar2 == 1) {\n              (*(code *)(iVar24 + -0x4b8c))(pcVar13);\n            }\n            else {\n              iVar2 = (**(code **)(pcStack_81e8 + -0x7c2c))();\n              if (iVar2 == 0) {\n                (*(code *)(iVar15 + -0x59a8))(iVar25 + -0x4688);\n                pcVar27 = pcVar13;\n              }\n              else {\n                while (iVar26 = (**(code **)(pcStack_81e8 + -0x7c28))(iVar2), iVar26 != 0) {\n                  (*(code *)(iVar24 + -0x4b8c))(iVar26);\n                  safefree(iVar26);\n                }\n                (**(code **)(pcStack_81e8 + -0x7c24))(iVar2);\n              }\n            }\n          }\n          else {\n            pcVar27 = (char *)(iVar4 + -0x46ac);\n            FUN_00027ff8(**(undefined4 **)(pcStack_81e8 + -0x7460));\n            *(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31e0) =\n                 *(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31e0) + 1;\n          }\n          puVar23 = puVar23 + 1;\n          iVar2 = *(int *)(pcStack_81e8 + -0x7fd8);\n        } while (puVar18 != puVar23);\n        goto LAB_0002e788;\n      }\n    }\n  }\n  else {\n    if (iVar4 == 1) {\n      pcVar13 = (char *)*puVar23;\n    }\n    else {\n      FUN_0002861c();\n      pcVar13 = (char *)*puVar23;\n    }\n    puVar9 = (undefined1 *)FUN_00028968(pcVar13);\n    if (puVar9 == (undefined1 *)0x0) {\n      FUN_00028270(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4750);\n      uRam00000000 = 0;\n    }\n    else {\n      *puVar9 = 0;\n    }\n    if (puVar9[1] == '\0') {\n      puVar9 = (undefined1 *)(**(code **)(pcStack_81e8 + -0x75b8))(pcVar13,0x40);\n      if (puVar9 == (undefined1 *)0x0) {\n        puVar23 = (undefined4 *)safemalloc(0x68,1);\n        iVar2 = *(int *)(pcStack_81e8 + -0x7fc8);\n        uVar7 = *(undefined4 *)(iVar2 + -0x4728);\n        *puVar23 = *(undefined4 *)(iVar2 + -0x472c);\n        puVar23[1] = uVar7;\n        *(undefined1 *)(puVar23 + 2) = *(undefined1 *)(iVar2 + -0x4724);\n        iVar2 = (**(code **)(pcStack_81e8 + -0x752c))(puVar23);\n        pcVar10 = (char *)((int)puVar23 + iVar2);\n        pcVar21 = (char *)(*(int *)(pcStack_81e8 + -0x7fc8) + -0x48b0);\n        cVar11 = '.';\n        pcVar27 = (char *)0x0;\n        pcVar22 = pcVar21;\n        goto LAB_0002e6b4;\n      }\n      pcVar21 = (char *)(*(int *)(pcStack_81e8 + -0x7fc8) + -0x48b0);\nLAB_0002e5ac:\n      *puVar9 = 0;\n      cVar11 = *pcVar13;\n      pcVar27 = pcVar13;\n      pcVar13 = puVar9 + 1;\n      if (cVar11 == '\0') {\n        pcVar27 = (char *)0x0;\n      }\n    }\n    else {\n      pcVar21 = puVar9 + 1;\n      puVar9 = (undefined1 *)(**(code **)(pcStack_81e8 + -0x75b8))(pcVar13);\n      if (puVar9 != (undefined1 *)0x0) goto LAB_0002e5ac;\n      pcVar27 = (char *)0x0;\n    }\n    iVar2 = (**(code **)(pcStack_81e8 + -0x752c))(pcVar21);\n    puVar23 = (undefined4 *)safemalloc((iVar2 + 0x19) * 4,1);\n    iVar2 = *(int *)(pcStack_81e8 + -0x7fc8);\n    uVar7 = *(undefined4 *)(iVar2 + -0x4728);\n    *puVar23 = *(undefined4 *)(iVar2 + -0x472c);\n    puVar23[1] = uVar7;\n    *(undefined1 *)(puVar23 + 2) = *(undefined1 *)(iVar2 + -0x4724);\n    iVar2 = (**(code **)(pcStack_81e8 + -0x752c))(puVar23);\n    pcVar10 = (char *)((int)puVar23 + iVar2);\n    cVar11 = *pcVar21;\n    pcVar22 = pcVar21;\n    while (cVar11 != '\0') {\nLAB_0002e6b4:\n      if (cVar11 == '\'') {\n        builtin_strncpy(pcVar10,"\'\\\'\'",4);\n        pcVar10 = pcVar10 + 4;\n      }\n      else {\n        *pcVar10 = cVar11;\n        pcVar10 = pcVar10 + 1;\n      }\n      pcVar21 = pcVar21 + 1;\n      cVar11 = *pcVar21;\n    }\n    *pcVar10 = '\'';\n    pcVar10[1] = '\0';\n    FUN_00028a00(pcVar13,pcVar27,puVar23);\n    safefree(puVar23);\n    if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31ec) != 0) {\n      scp_sftp_listdir(pcVar22);\n      iVar2 = *(int *)(pcStack_81e8 + -0x7fd8);\n      goto LAB_0002e788;\n    }\n    puVar23 = *(undefined4 **)(pcStack_81e8 + -0x7594);\n    while( true ) {\n      pcVar27 = (char *)0x1;\n      iVar2 = FUN_000280f4(&cStack_81d5);\n      if (iVar2 < 1) break;\n      (**(code **)(pcStack_81e8 + -0x75c4))((int)cStack_81d5,*puVar23);\n    }\n  }\n  iVar2 = *(int *)(pcStack_81e8 + -0x7fd8);\nLAB_0002e788:\n  pcVar28 = *(code **)(pcStack_81e8 + -0x7c44);\n  if (*(int *)(iVar2 + -0x31f4) != 0) {\n    iVar2 = (**(code **)(*(int *)(iVar2 + -0x31f4) + 0x20))\n                      (*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f8));\n    pcVar28 = *(code **)(pcStack_81e8 + -0x7c44);\n    if (iVar2 != 0) {\n      (**(code **)(*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f4) + 0x18))\n                (*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f8),0xc);\n      **(undefined4 **)(pcStack_81e8 + -0x7db4) = 1;\n      pcVar27 = (char *)0x1;\n      FUN_000280f4(&cStack_81d5);\n      pcVar28 = *(code **)(pcStack_81e8 + -0x7c44);\n    }\n  }\n  (*pcVar28)();\n  cmdline_cleanup();\n  (**(code **)(pcStack_81e8 + -0x7d88))(0);\n  iVar20 = *(int *)(pcStack_81e8 + -0x7fd8);\n  iVar24 = *(int *)(pcStack_81e8 + -0x7fd8);\n  (**(code **)(*(int *)(iVar24 + -0x31f4) + 4))(*(undefined4 *)(iVar20 + -0x31f8));\n  *(undefined4 *)(iVar20 + -0x31f8) = 0;\n  *(undefined4 *)(iVar24 + -0x31f4) = 0;\n  (**(code **)(pcStack_81e8 + -0x7c3c))();\n  uVar3 = (uint)(*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31e0) != 0);\nLAB_0002e878:\n  if (puStack_81d4 == (undefined4 *)**(int **)(pcStack_81e8 + -0x7478)) {\n    return uVar3;\n  }\n  pcVar28 = *(code **)(pcStack_81e8 + -0x74a0);\n  uVar12 = 0x2f008;\n  puVar23 = puStack_81d4;\n  (*pcVar28)();\n  pcStack_8218 = pcVar28 + 0x95140;\n  uVar7 = *puVar23;\n  uVar6 = *(undefined4 *)pcVar27;\n  iStack_820c = iVar24;\n  iStack_8208 = iVar20;\n  uStack_8204 = uVar12;\n  iVar2 = (**(code **)(pcVar28 + 0x8dd04))(uVar7,*(int *)(pcVar28 + 0x8d178) + -0x4584);\n  if (iVar2 == 0) {\n    uVar3 = 0xffffffff;\n  }\n  else {\n    iVar2 = (**(code **)(pcStack_8218 + -0x743c))(uVar6,*(int *)(pcStack_8218 + -0x7fc8) + -0x4584);\n    if (iVar2 == 0) {\n      uVar3 = 1;\n    }\n    else {\n      uVar3 = (**(code **)(pcStack_8218 + -0x743c))(uVar7,uVar6);\n    }\n  }\n  return uVar3;\nLAB_0002de88:\n  if (iStack_80c0 != 0) {\n    (**(code **)(pcStack_8138 + -0x7c60))(unaff_s5,uStack_80b8,uStack_80bc);\n  }\n  (**(code **)(pcStack_8138 + -0x7c70))(unaff_s5);\n  if (iVar24 == 0) {\n    scp_finish_filerecv();\n    safefree(unaff_s3);\n    safefree(uStack_80d4);\n  }\n  else {\n    FUN_0002a658(*(int *)(pcStack_8138 + -0x7fc8) + -0x483c,unaff_s3);\n    safefree(unaff_s3);\n  }\n  goto LAB_0002d77c;\n}" (type_identifier "uint") (function_declarator "scp_recv_filedata(undefined *param_1,undefined *param_2)" (identifier "scp_recv_filedata") (parameter_list "(undefined *param_1,undefined *param_2)" (( "(") (parameter_declaration "undefined *param_1" (type_identifier "undefined") (pointer_declarator "*param_1" (* "*") (identifier "param_1"))) (, ",") (parameter_declaration "undefined *param_2" (type_identifier "undefined") (pointer_declarator "*param_2" (* "*") (identifier "param_2"))) () ")"))) (compound_statement "{\n  undefined *puVar1;\n  int iVar2;\n  uint uVar3;\n  int iVar4;\n  undefined *puVar5;\n  undefined4 uVar6;\n  undefined4 uVar7;\n  int iVar8;\n  undefined1 *puVar9;\n  char *pcVar10;\n  undefined4 extraout_v1;\n  char cVar11;\n  undefined4 uVar12;\n  char *pcVar13;\n  undefined *puVar14;\n  int iVar15;\n  int iVar16;\n  undefined4 uVar17;\n  undefined4 *puVar18;\n  int *piVar19;\n  int iVar20;\n  char *pcVar21;\n  char *pcVar22;\n  undefined4 *unaff_s3;\n  undefined4 *puVar23;\n  undefined1 *unaff_s4;\n  int iVar24;\n  int unaff_s5;\n  int iVar25;\n  int iVar26;\n  int unaff_s7;\n  char *pcVar27;\n  code *pcVar28;\n  int iVar29;\n  code *pcVar30;\n  undefined auStack_100b0 [32408];\n  code *pcStack_8218;\n  int iStack_820c;\n  int iStack_8208;\n  undefined4 uStack_8204;\n  int iStack_81f0;\n  char *pcStack_81ec;\n  code *pcStack_81e8;\n  code *pcStack_81dc;\n  char cStack_81d5;\n  undefined4 *puStack_81d4;\n  undefined4 *puStack_81d0;\n  undefined4 uStack_81cc;\n  undefined *puStack_81c8;\n  undefined4 *puStack_81c4;\n  int iStack_81c0;\n  int iStack_81bc;\n  int *piStack_81b8;\n  int iStack_81b4;\n  int iStack_81b0;\n  code *pcStack_81ac;\n  code *pcStack_8198;\n  int *piStack_8190;\n  undefined4 uStack_818c;\n  undefined4 uStack_8184;\n  undefined *puStack_8180;\n  code *pcStack_817c;\n  int iStack_8174;\n  undefined4 uStack_8170;\n  undefined4 uStack_816c;\n  code *pcStack_8168;\n  undefined4 uStack_8160;\n  code *pcStack_815c;\n  undefined4 uStack_8148;\n  undefined4 uStack_8144;\n  int iStack_8140;\n  code *pcStack_8138;\n  char *pcStack_812c;\n  code *pcStack_8128;\n  int iStack_8124;\n  int iStack_8120;\n  undefined4 uStack_811c;\n  undefined *puStack_8118;\n  undefined4 uStack_8114;\n  int iStack_8110;\n  code *pcStack_810c;\n  undefined4 uStack_8108;\n  undefined4 uStack_8104;\n  undefined4 uStack_8100;\n  undefined4 uStack_80fc;\n  undefined4 uStack_80f8;\n  undefined4 uStack_80f4;\n  undefined4 uStack_80f0;\n  undefined4 uStack_80ec;\n  undefined4 uStack_80e8;\n  undefined4 uStack_80e4;\n  undefined4 uStack_80e0;\n  undefined4 uStack_80dc;\n  int iStack_80d8;\n  undefined4 uStack_80d4;\n  undefined *puStack_80d0;\n  undefined4 uStack_80cc;\n  undefined4 uStack_80c8;\n  undefined4 uStack_80c4;\n  int iStack_80c0;\n  undefined4 uStack_80bc;\n  undefined4 uStack_80b8;\n  undefined1 auStack_80b4 [32768];\n  uint uStack_b4;\n  undefined *puStack_b0;\n  undefined *puStack_ac;\n  undefined *puStack_a8;\n  undefined4 *puStack_a4;\n  undefined1 *puStack_a0;\n  undefined4 uStack_6c;\n  undefined1 auStack_68 [4];\n  char *pcStack_64;\n  undefined *puStack_60;\n  undefined *puStack_5c;\n  undefined *puStack_58;\n  undefined4 *puStack_54;\n  undefined4 local_30;\n  undefined4 local_2c;\n  uint local_24;\n  undefined4 local_20;\n  int local_1c;\n  \n  puVar1 = PTR_DAT_000bc178;\n  local_1c = *(int *)PTR___stack_chk_guard_000bccd8;\n  if (*(int *)(PTR_DAT_000bc178 + -0x31ec) == 0) {\n    uVar3 = FUN_000280f4();\n  }\n  else {\n    xfer_download_queue(*(undefined4 *)(PTR_DAT_000bc178 + -0x3244));\n    unaff_s3 = (undefined4 *)sftp_recv();\n    puVar1 = (undefined *)xfer_download_gotpkt(*(undefined4 *)(puVar1 + -0x3244),unaff_s3);\n    if ((int)puVar1 < 1) {\n      param_2 = *(undefined **)PTR_stderr_000bccf0;\n      uVar7 = fxp_error();\n      FUN_00027ff8(param_2,PTR_s_Server_sent_command_exit_status___000bc188 + -0x4abc,uVar7);\n      if (puVar1 == (undefined *)0x80000000) {\n        safefree(unaff_s3);\n      }\n      *(int *)(PTR_DAT_000bc178 + -0x31e0) = *(int *)(PTR_DAT_000bc178 + -0x31e0) + 1;\n      uVar3 = 0xffffffff;\n    }\n    else {\n      iVar2 = xfer_download_data(*(undefined4 *)(PTR_DAT_000bc178 + -0x3244),&local_20,&local_24);\n      if (iVar2 == 0) {\n        local_24 = 0;\n      }\n      else {\n        param_2 = (undefined *)(uint)((int)param_2 < (int)local_24);\n        if ((int)local_24 < 1) {\n          FUN_00027ff8(*(undefined4 *)PTR_stderr_000bccf0,\n                       PTR_s_Server_sent_command_exit_status___000bc188 + -0x4a9c);\n          *(int *)(PTR_DAT_000bc178 + -0x31e0) = *(int *)(PTR_DAT_000bc178 + -0x31e0) + 1;\n          safefree(local_20);\n          uVar3 = 0xffffffff;\n          goto LAB_0002d148;\n        }\n        if (param_2 != (undefined *)0x0) {\n          uVar3 = (*(code *)PTR___assert_fail_000bcb00)\n                            (PTR_s_Server_sent_command_exit_status___000bc188 + -0x4a7c,\n                             PTR_s_Server_sent_command_exit_status___000bc188 + -0x4fb0,0x628,\n                             PTR_s_Server_sent_command_exit_status___000bc188 + -0x45f0);\n          return uVar3;\n        }\n        (*(code *)PTR_memcpy_000bccdc)(param_1,local_20);\n        safefree(local_20);\n      }\n      param_2 = PTR_DAT_000bc178;\n      puVar1 = PTR_DAT_000bc178 + -0x324c;\n      uint64_add32(&local_30,*(undefined4 *)(PTR_DAT_000bc178 + -0x324c),\n                   *(undefined4 *)(PTR_DAT_000bc178 + -0x3248),local_24);\n      *(undefined4 *)(param_2 + -0x324c) = local_30;\n      *(undefined4 *)(param_2 + -0x3248) = local_2c;\n      uVar3 = local_24;\n    }\n  }\nLAB_0002d148:\n  if (local_1c == *(int *)PTR___stack_chk_guard_000bccd8) {\n    return uVar3;\n  }\n  puVar5 = PTR___stack_chk_fail_000bccb0;\n  (*(code *)PTR___stack_chk_fail_000bccb0)();\n  pcStack_64 = (char *)**(undefined4 **)(puVar5 + 0x8fa44);\n  puStack_60 = param_2;\n  puStack_5c = puVar1;\n  puStack_58 = param_1;\n  puStack_54 = unaff_s3;\n  if (*(int *)(*(int *)(puVar5 + 0x8eee4) + -0x31ec) == 0) {\n    puVar14 = (undefined *)(*(int *)(puVar5 + 0x8eef4) + -0x17dc);\n    (**(code **)(*(int *)(*(int *)(puVar5 + 0x8eee4) + -0x31f4) + 0xc))\n              (*(undefined4 *)(*(int *)(puVar5 + 0x8eee4) + -0x31f8),puVar14,1);\n    uVar3 = FUN_00028400();\n  }\n  else {\n    xfer_set_error(*(undefined4 *)(*(int *)(puVar5 + 0x8eee4) + -0x3244));\n    iVar2 = *(int *)(puVar5 + 0x8eee4);\n    unaff_s4 = auStack_68;\n    unaff_s3 = &uStack_6c;\n    while (iVar24 = xfer_done(*(undefined4 *)(iVar2 + -0x3244)), iVar24 == 0) {\n      param_1 = (undefined *)sftp_recv();\n      puVar1 = (undefined *)xfer_download_gotpkt(*(undefined4 *)(iVar2 + -0x3244),param_1);\n      if ((int)puVar1 < 1) {\n        param_2 = (undefined *)**(undefined4 **)(puVar5 + 0x8fa5c);\n        uVar7 = fxp_error();\n        puVar14 = (undefined *)(*(int *)(puVar5 + 0x8eef4) + -0x4abc);\n        FUN_00027ff8(param_2,puVar14,uVar7);\n        if (puVar1 == (undefined *)0x80000000) {\n          safefree(param_1);\n          iVar2 = *(int *)(puVar5 + 0x8eee4);\n        }\n        else {\n          iVar2 = *(int *)(puVar5 + 0x8eee4);\n        }\n        *(int *)(iVar2 + -0x31e0) = *(int *)(iVar2 + -0x31e0) + 1;\n        uVar3 = 0xffffffff;\n        goto LAB_0002d318;\n      }\n      iVar24 = xfer_download_data(*(undefined4 *)(iVar2 + -0x3244),unaff_s3,unaff_s4);\n      if (iVar24 != 0) {\n        safefree(uStack_6c);\n      }\n    }\n    xfer_cleanup(*(undefined4 *)(*(int *)(puVar5 + 0x8eee4) + -0x3244));\n    param_2 = (undefined *)fxp_close_send(*(undefined4 *)(*(int *)(puVar5 + 0x8eee4) + -0x3240));\n    uVar7 = sftp_wait_for_reply(param_2);\n    puVar14 = param_2;\n    fxp_close_recv(uVar7);\n    uVar3 = 0;\n  }\nLAB_0002d318:\n  if (pcStack_64 == (char *)**(undefined4 **)(puVar5 + 0x8fa44)) {\n    return uVar3;\n  }\n  pcVar28 = *(code **)(puVar5 + 0x8fa1c);\n  pcVar13 = pcStack_64;\n  (*pcVar28)();\n  pcStack_8138 = pcVar28 + 0x96c70;\n  uStack_b4 = **(uint **)(pcVar28 + 0x8f7f8);\n  pcStack_812c = pcVar13;\n  puStack_8118 = puVar14;\n  puStack_b0 = param_2;\n  puStack_ac = puVar1;\n  puStack_a8 = param_1;\n  puStack_a4 = unaff_s3;\n  puStack_a0 = unaff_s4;\n  iVar2 = (**(code **)(pcVar28 + 0x8ef84))();\n  if ((*(int *)(*(int *)(pcStack_8138 + -0x7fd8) + -0x31d4) != 0) && (iVar2 != 2)) {\n    FUN_00028270(*(int *)(pcStack_8138 + -0x7fc8) + -0x4a68,pcStack_812c);\n  }\n  scp_sink_init();\n  iVar24 = 0;\n  pcStack_8128 = (code *)(*(int *)(pcStack_8138 + -0x7db0) + -0x7d90);\n  pcStack_810c = (code *)(*(int *)(pcStack_8138 + -0x7db0) + -0x6cb8);\n  iStack_8110 = *(int *)(pcStack_8138 + -0x7fc8) + -0x4878;\nLAB_0002d77c:\n  do {\n    iVar4 = scp_get_sink_action(&iStack_80d8);\n    if ((iVar4 != 0) || (iStack_80d8 == 3)) goto LAB_0002da64;\n  } while (iStack_80d8 == 4);\n  if (iVar2 == 2) {\n    param_1 = auStack_100b0;\n    puVar1 = (undefined *)(**(code **)(pcStack_8138 + -0x7cac))(puStack_80d0,1);\n    if (puStack_80d0 != puVar1) {\n      puVar23 = *(undefined4 **)(pcStack_8138 + -0x7460);\n      param_1 = (undefined *)(*(int *)(pcStack_8138 + -0x7fcc) + 0x7ff8);\n      FUN_00027ff8(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x4a54);\n      FUN_00027ff8(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x4a20,puVar1);\n    }\n    iVar4 = (**(code **)(pcStack_8138 + -0x7640))(puVar1,*(int *)(pcStack_8138 + -0x7fc8) + -0x48b0)\n    ;\n    if (puVar1[iVar4] == '\0') {\n      (*pcStack_8128)(*(int *)(pcStack_8138 + -0x7fc8) + -0x49f8);\n    }\n    if (puStack_8118 != (undefined *)0x0) {\n      param_1 = (undefined *)(**(code **)(pcStack_8138 + -0x7cac))(puStack_8118,1);\n      iVar4 = (**(code **)(pcStack_8138 + -0x743c))(puVar1,param_1);\n      if ((iVar4 != 0) &&\n         (puVar23 = *(undefined4 **)(pcStack_8138 + -0x7460),\n         *(int *)(*(int *)(pcStack_8138 + -0x7fd8) + -0x31ec) == 0 &&\n         *(int *)(*(int *)(pcStack_8138 + -0x7fd8) + -0x31dc) == 0)) {\n        FUN_00027ff8(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x49ac,puVar1);\n        FUN_00027ff8(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x4970,param_1);\n        FUN_00027ff8(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x4940);\n        FUN_00027ff8(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x48f8);\n        puVar1 = param_1;\n      }\n    }\n    if (*pcStack_812c == '\0') {\n      unaff_s3 = (undefined4 *)dupstr(puVar1);\n    }\n    else {\n      unaff_s3 = (undefined4 *)(**(code **)(pcStack_8138 + -0x7c78))(pcStack_812c,puVar1);\n    }\n  }\n  else {\n    unaff_s3 = (undefined4 *)dupstr(pcStack_812c);\n  }\n  iVar4 = (**(code **)(pcStack_8138 + -0x7cec))(unaff_s3);\n  if (iStack_80d8 == 2) {\n    if (iVar4 == 0) {\n      iVar4 = (**(code **)(pcStack_8138 + -0x7c80))(unaff_s3);\n      if (iVar4 == 0) {\n        FUN_0002a658(*(int *)(pcStack_8138 + -0x7fc8) + -0x48ac,unaff_s3);\n        safefree(unaff_s3);\n        goto LAB_0002d77c;\n      }\n    }\n    else if (iVar4 != 2) {\n      FUN_0002a658(*(int *)(pcStack_8138 + -0x7fc8) + -0x4a68,unaff_s3);\n      safefree(unaff_s3);\n      goto LAB_0002d77c;\n    }\n    FUN_0002d4e0(unaff_s3,0);\n    safefree(unaff_s3);\n    goto LAB_0002d77c;\n  }\n  unaff_s5 = (**(code **)(pcStack_8138 + -0x7c84))(unaff_s3,uStack_80cc);\n  if (unaff_s5 == 0) {\n    FUN_0002a658(*(int *)(pcStack_8138 + -0x7fc8) + -0x4890,unaff_s3);\n    safefree(unaff_s3);\n    goto LAB_0002d77c;\n  }\n  iStack_8120 = scp_accept_filexfer();\n  if (iStack_8120 == 0) {\n    puVar1 = auStack_100b0;\n    uint64_make(&uStack_80f8,0,0);\n    uStack_8114 = (**(code **)(pcStack_8138 + -0x7488))(0);\n    uStack_811c = (**(code **)(pcStack_8138 + -0x7cac))(unaff_s3,1);\n    uint64_make(&uStack_8100,0,0);\n    iStack_8124 = *(int *)(pcStack_8138 + -0x7fc8);\n    unaff_s7 = *(int *)(pcStack_8138 + -0x7fd8);\nLAB_0002db64:\n    do {\n      iVar4 = uint64_compare(uStack_8100,uStack_80fc,uStack_80c8,uStack_80c4);\n      if (-1 < iVar4) goto LAB_0002de88;\n      uint64_make(&uStack_80f0,0,0x8000);\n      uStack_8148 = uStack_80fc;\n      uint64_subtract(&uStack_80e8,uStack_80c8,uStack_80c4,uStack_8100);\n      iVar4 = uint64_compare(uStack_80f0,uStack_80ec,uStack_80e8,uStack_80e4);\n      if (0 < iVar4) {\n        uStack_8148 = uStack_80fc;\n        uint64_subtract(&uStack_80f0,uStack_80c8,uStack_80c4,uStack_8100);\n      }\n      puVar1 = (undefined *)scp_recv_filedata(auStack_80b4,uStack_80ec);\n      if ((int)puVar1 < 1) {\n        (*pcStack_8128)(iStack_8124 + -0x5640);\n      }\n      if (iVar24 == 0) {\n        puVar5 = (undefined *)(**(code **)(pcStack_8138 + -0x7c68))(unaff_s5,auStack_80b4,puVar1);\n        if (puVar5 == puVar1) {\n          if (*(int *)(unaff_s7 + -0x3fa8) != 0) {\n            uint64_add32(&uStack_8108,uStack_80f8,uStack_80f4,puVar1);\n            uStack_80f8 = uStack_8108;\n            uStack_80f4 = uStack_8104;\n            iVar4 = (**(code **)(pcStack_8138 + -0x7488))(0);\n            if (iVar4 <= iStack_8120) {\n              uint64_add32(&uStack_80e0,uStack_8100,uStack_80fc,puVar1);\n              iVar4 = uint64_compare(uStack_80e0,uStack_80dc,uStack_80c8,uStack_80c4);\n              if (iVar4 != 0) goto LAB_0002dc94;\n            }\n            iStack_8140 = (**(code **)(pcStack_8138 + -0x7488))(0);\n            uStack_8144 = uStack_8114;\n            uStack_8148 = uStack_80f4;\n            iStack_8120 = iStack_8140;\n            (*pcStack_810c)(uStack_811c,uStack_80c8,uStack_80c4,uStack_80f8);\n          }\nLAB_0002dc94:\n          param_1 = auStack_100b0;\n          uint64_add32(&uStack_8108,uStack_8100,uStack_80fc,puVar1);\n          uStack_8100 = uStack_8108;\n          uStack_80fc = uStack_8104;\n          goto LAB_0002db64;\n        }\n        if (*(int *)(unaff_s7 + -0x3fa8) != 0) {\n          (**(code **)(pcStack_8138 + -0x759c))\n                    (1,*(int *)(pcStack_8138 + -0x7fc8) + -0x4850,uStack_811c,iStack_8110);\n        }\n        uint64_add32(&uStack_8108,uStack_8100,uStack_80fc,puVar1);\n      }\n      else {\n        uint64_add32(&uStack_8108,uStack_8100,uStack_80fc,puVar1);\n      }\n      param_1 = auStack_100b0;\n      iVar24 = 1;\n      uStack_8100 = uStack_8108;\n      uStack_80fc = uStack_8104;\n    } while( true );\n  }\n  safefree(unaff_s3);\n  (**(code **)(pcStack_8138 + -0x7c70))(unaff_s5);\nLAB_0002da64:\n  pcVar28 = *(code **)(pcStack_8138 + -0x74a0);\n  if (uStack_b4 == **(uint **)(pcStack_8138 + -0x7478)) {\n    return **(uint **)(pcStack_8138 + -0x7478);\n  }\n  pcVar30 = version;\n  (*pcVar28)();\n  pcStack_8168 = pcVar28 + 0x961d8;\n  uStack_8160 = 0xffff0000;\n  pcStack_815c = pcVar30;\n  uVar6 = buildinfo(*(int *)(pcVar28 + 0x8e210) + 0xaa4);\n  uVar17 = *(undefined4 *)(pcStack_8168 + -0x7da8);\n  iVar4 = *(int *)(pcStack_8168 + -0x7fc8) + -0x482c;\n  uVar7 = uVar6;\n  (**(code **)(pcStack_8168 + -0x759c))(1);\n  safefree(uVar6);\n  uVar12 = 0;\n  pcVar28 = *(code **)(pcStack_8168 + -0x7504);\n  pcVar30 = cmdline_error;\n  (*pcVar28)();\n  pcStack_8198 = pcVar28 + 0x96158;\n  uStack_818c = **(undefined4 **)(pcVar28 + 0x8ece0);\n  puVar23 = *(undefined4 **)(pcVar28 + 0x8ecf8);\n  uStack_8184 = uVar6;\n  puStack_8180 = puVar1;\n  pcStack_817c = pcVar30;\n  iStack_8174 = iVar4;\n  uStack_8170 = uVar17;\n  uStack_816c = uVar7;\n  (**(code **)(pcVar28 + 0x8ec90))(*(int *)(pcVar28 + 0x8e190) + -0x4e28,1,6,*puVar23);\n  piStack_8190 = &iStack_8174;\n  (**(code **)(pcStack_8198 + -0x7444))(*puVar23,1,uVar12);\n  iVar15 = 1;\n  (**(code **)(pcStack_8198 + -0x74c8))(*(int *)(pcStack_8198 + -0x7fc8) + -0x481c,1,0x27,*puVar23);\n  iVar4 = 1;\n  pcVar28 = *(code **)(pcStack_8198 + -0x7504);\n  pcVar30 = psftp_main;\n  (*pcVar28)();\n  pcStack_81e8 = pcVar28 + 0x9609c;\n  puStack_81d4 = (undefined4 *)**(undefined4 **)(pcVar28 + 0x8ec24);\n  **(undefined4 **)(pcVar28 + 0x8e144) = 1;\n  **(undefined4 **)(pcVar28 + 0x8e158) = 2;\n  **(undefined4 **)(pcVar28 + 0x8e120) = 1;\n  puStack_81d0 = puVar23;\n  uStack_81cc = uVar12;\n  puStack_81c8 = param_1;\n  puStack_81c4 = unaff_s3;\n  iStack_81c0 = iVar24;\n  iStack_81bc = unaff_s5;\n  piStack_81b8 = &iStack_80d8;\n  iStack_81b4 = unaff_s7;\n  iStack_81b0 = iVar2;\n  pcStack_81ac = pcVar30;\n  (**(code **)(pcVar28 + 0x8e444))();\n  uVar7 = conf_new();\n  *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31fc) = uVar7;\n  do_defaults(0,uVar7);\n  **(undefined4 **)(pcStack_81e8 + -0x7f60) = 0;\n  pcVar28 = pcStack_81e8;\n  if (iVar4 < 2) {\n    iVar2 = 1;\n  }\n  else {\n    pcVar13 = *(char **)(iVar15 + 4);\n    piVar19 = (int *)(iVar15 + 4);\n    if (*pcVar13 == '-') {\n      iVar25 = *(int *)(pcStack_81e8 + -0x7fd8);\n      iVar26 = *(int *)(pcStack_81e8 + -0x7fc8);\n      pcVar27 = (char *)(*(int *)(pcStack_81e8 + -0x7fc8) + -0x47b8);\n      iVar29 = *(int *)(pcStack_81e8 + -0x7fc8);\n      pcStack_81dc = (code *)(*(int *)(pcStack_81e8 + -0x7db0) + -0x79e4);\n      iVar24 = 1;\nLAB_0002e488:\n      iVar2 = iVar24 + 1;\n      uVar7 = 0;\n      if (iVar2 < iVar4) {\n        uVar7 = *(undefined4 *)(iVar15 + (iVar24 + 1) * 4);\n      }\n      iVar8 = cmdline_process_param(pcVar13,uVar7,1,*(undefined4 *)(iVar25 + -0x31fc));\n      pcVar28 = pcStack_81e8;\n      if (iVar8 == -2) {\n        cmdline_error(*(int *)(pcStack_81e8 + -0x7fc8) + -0x47e4,*piVar19);\n        uVar7 = extraout_v1;\nLAB_0002e1d0:\n        iVar2 = iVar24;\n        if ((**(uint **)(pcVar28 + -0x7f44) & 1) != 0) {\n          *(undefined4 *)(*(int *)(pcVar28 + -0x7fd8) + -0x31c8) = uVar7;\n        }\n        goto LAB_0002e464;\n      }\n      uVar7 = 1;\n      if (iVar8 == 2) goto LAB_0002e464;\n      if (iVar8 == 1) goto LAB_0002e1d0;\n      iVar20 = *piVar19;\n      iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar26 + -0x47c0);\n      if (iVar8 == 0) {\n        (**(code **)(pcStack_81e8 + -0x7c54))();\n        uVar3 = 1;\n        goto LAB_0002e878;\n      }\n      iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20);\n      if (iVar8 == 0) {\n        *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31cc) = 1;\n        pcVar28 = pcStack_81e8;\n        iVar2 = iVar24;\n      }\n      else {\n        iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar29 + -0x47b4);\n        if (iVar8 == 0) {\n          *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d0) = 1;\n          pcVar28 = pcStack_81e8;\n          iVar2 = iVar24;\n        }\n        else {\n          iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                            (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47b0);\n          if (iVar8 == 0) {\n            *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fa8) = 0;\n            pcVar28 = pcStack_81e8;\n            iVar2 = iVar24;\n          }\n          else {\n            iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                              (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47ac);\n            if ((iVar8 != 0) &&\n               (iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                  (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47a8), iVar8 != 0))\n            {\n              iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47a4);\n              if (iVar8 != 0) {\n                iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                  (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x479c);\n                iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                if (iVar8 == 0) {\nLAB_0002e348:\n                  pcVar28 = pcStack_81e8;\n                  version();\n                }\n                else {\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar16 + -0x4798);\n                  iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                  if (iVar8 == 0) goto LAB_0002e348;\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar16 + -0x478c);\n                  iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                  pcVar28 = pcStack_81e8;\n                  if (iVar8 == 0) {\n                    *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31c4) = 1;\n                    iVar2 = iVar24;\n                    goto LAB_0002e464;\n                  }\n                }\n                iVar8 = (**(code **)(pcVar28 + -0x743c))(iVar20,iVar16 + -0x4788);\n                if (iVar8 == 0) {\n                  **(undefined4 **)(pcStack_81e8 + -0x7c4c) = 1;\n                  pcVar28 = pcStack_81e8;\n                  iVar2 = iVar24;\n                }\n                else {\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                    (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4780);\n                  if (iVar8 == 0) {\n                    *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31dc) = 1;\n                    pcVar28 = pcStack_81e8;\n                    iVar2 = iVar24;\n                  }\n                  else {\n                    iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                      (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4778);\n                    if (iVar8 == 0) {\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac) = 0;\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0) = 1;\n                      pcVar28 = pcStack_81e8;\n                      iVar2 = iVar24;\n                      goto LAB_0002e464;\n                    }\n                    iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                      (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4770);\n                    if (iVar8 == 0) {\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac) = 1;\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0) = 0;\n                      pcVar28 = pcStack_81e8;\n                      iVar2 = iVar24;\n                    }\n                    else {\n                      iVar24 = (**(code **)(pcStack_81e8 + -0x743c))\n                                         (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4768);\n                      pcVar28 = pcStack_81e8;\n                      if (iVar24 == 0) goto LAB_0002e52c;\n                      cmdline_error(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4764,iVar20);\n                    }\n                  }\n                }\n                goto LAB_0002e464;\n              }\n            }\n            (*pcStack_81dc)();\n            pcVar28 = pcStack_81e8;\n            iVar2 = iVar24;\n          }\n        }\n      }\nLAB_0002e464:\n      iVar2 = iVar2 + 1;\n      if (iVar4 <= iVar2) goto LAB_0002e52c;\n      piVar19 = (int *)(iVar15 + iVar2 * 4);\n      pcVar13 = (char *)*piVar19;\n      iVar24 = iVar2;\n      if (*pcVar13 != '-') goto LAB_0002e52c;\n      goto LAB_0002e488;\n    }\n    iVar2 = 1;\n  }\nLAB_0002e52c:\n  iVar4 = iVar4 - iVar2;\n  *(undefined4 *)(*(int *)(pcVar28 + -0x7fd8) + -0x31f4) = 0;\n  puVar23 = (undefined4 *)(iVar15 + iVar2 * 4);\n  if (*(int *)(*(int *)(pcVar28 + -0x7fd8) + -0x31c4) == 0) {\n    if (iVar4 < 2) {\n      FUN_0002861c();\n      puVar18 = puVar23 + iVar4 + 0x3fffffff;\n      iVar24 = FUN_00028968(*puVar18);\n      iVar2 = *(int *)(pcStack_81e8 + -0x7fd8);\n      if (iVar24 != 0) goto LAB_0002e90c;\n      *(undefined4 *)(iVar2 + -0x31f0) = 0;\nLAB_0002efd8:\n      iVar2 = *(int *)(pcStack_81e8 + -0x7fc8);\nLAB_0002efdc:\n      FUN_00028270(iVar2 + -0x4668);\n      pcVar13 = (char *)*puVar23;\nLAB_0002eb34:\n      uVar7 = puVar23[1];\n      puVar9 = (undefined1 *)FUN_00028968(pcVar13);\n      if (puVar9 == (undefined1 *)0x0) {\n        FUN_00028270(*(int *)(pcStack_81e8 + -0x7fc8) + -0x463c);\n        uRam00000000 = 0;\n      }\n      else {\n        *puVar9 = 0;\n      }\n      if (puVar9[1] == '\0') {\n        pcVar27 = (char *)(*(int *)(pcStack_81e8 + -0x7fc8) + -0x48b0);\n      }\n      else {\n        pcVar27 = puVar9 + 1;\n      }\n      puVar9 = (undefined1 *)(**(code **)(pcStack_81e8 + -0x75b8))(pcVar13,0x40);\n      if (puVar9 == (undefined1 *)0x0) {\n        pcVar21 = (char *)0x0;\n      }\n      else {\n        *puVar9 = 0;\n        cVar11 = *pcVar13;\n        pcVar21 = pcVar13;\n        pcVar13 = puVar9 + 1;\n        if (cVar11 == '\0') {\n          pcVar21 = (char *)0x0;\n        }\n      }\n      if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31c8) == 0) {\n        iVar2 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iVar2 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47f4;\n      }\n      if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31cc) == 0) {\n        iVar24 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iVar24 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47f0;\n      }\n      if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d0) == 0) {\n        iVar4 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iVar4 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47ec;\n      }\n      if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4) == 0) {\n        iStack_81f0 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iStack_81f0 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47e8;\n      }\n      pcStack_81ec = pcVar27;\n      uVar6 = dupprintf(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4618,iVar2,iVar24,iVar4);\n      FUN_00028a00(pcVar13,pcVar21,uVar6);\n      safefree(uVar6);\n      iVar2 = scp_sink_setup(pcVar27,*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d0),\n                             *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31cc));\n      if (iVar2 == 0) {\n        FUN_0002d4e0(uVar7);\n        iVar2 = *(int *)(pcStack_81e8 + -0x7fd8);\n        goto LAB_0002e788;\n      }\n    }\n    else {\n      if (iVar4 < 3) {\n        puVar18 = puVar23 + iVar4 + 0x3fffffff;\n        iVar2 = FUN_00028968(*puVar18);\n        if (iVar2 == 0) {\n          *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f0) = 0;\n          iVar2 = *(int *)(pcStack_81e8 + -0x7fc8);\n          if (iVar4 != 2) goto LAB_0002efdc;\n          pcVar13 = (char *)*puVar23;\n          goto LAB_0002eb34;\n        }\n      }\n      else {\n        *(undefined4 *)(*(int *)(pcVar28 + -0x7fd8) + -0x31d4) = 1;\n        puVar18 = puVar23 + iVar4 + 0x3fffffff;\n        iVar2 = FUN_00028968(*puVar18);\n        if (iVar2 == 0) {\n          *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f0) = 0;\n          goto LAB_0002efd8;\n        }\n      }\n      iVar2 = *(int *)(pcStack_81e8 + -0x7fd8);\nLAB_0002e90c:\n      *(undefined4 *)(iVar2 + -0x31f0) = 1;\n      pcVar13 = (char *)*puVar18;\n      puVar9 = (undefined1 *)FUN_00028968(pcVar13);\n      if (puVar9 == (undefined1 *)0x0) {\n        FUN_00028270(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4720);\n        uRam00000000 = 0;\n      }\n      else {\n        *puVar9 = 0;\n      }\n      if (puVar9[1] == '\0') {\n        pcVar21 = (char *)(*(int *)(pcStack_81e8 + -0x7fc8) + -0x48b0);\n      }\n      else {\n        pcVar21 = puVar9 + 1;\n      }\n      puVar9 = (undefined1 *)(**(code **)(pcStack_81e8 + -0x75b8))(pcVar13,0x40);\n      if (puVar9 == (undefined1 *)0x0) {\n        pcVar27 = (char *)0x0;\n      }\n      else {\n        *puVar9 = 0;\n        cVar11 = *pcVar13;\n        pcVar27 = pcVar13;\n        pcVar13 = puVar9 + 1;\n        if (cVar11 == '\0') {\n          pcVar27 = (char *)0x0;\n        }\n      }\n      if (iVar4 == 2) {\n        iVar2 = FUN_00028968(*puVar23);\n        if (iVar2 != 0) {\n          FUN_00028270(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4704,*puVar23);\n        }\n        iVar2 = (**(code **)(pcStack_81e8 + -0x7c30))(*puVar23,1);\n        if (iVar2 == 0) {\n          FUN_00028270(*(int *)(pcStack_81e8 + -0x7fc8) + -0x46e0,*puVar23);\n          iVar24 = *(int *)(pcStack_81e8 + -0x7fd8);\n        }\n        else {\n          iVar24 = *(int *)(pcStack_81e8 + -0x7fd8);\n          if (iVar2 == 2) {\n            *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4) = 1;\n            goto LAB_0002e988;\n          }\n        }\n      }\n      else {\nLAB_0002e988:\n        iVar24 = *(int *)(pcStack_81e8 + -0x7fd8);\n      }\n      if (*(int *)(iVar24 + -0x31c8) == 0) {\n        iVar2 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iVar2 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47f4;\n      }\n      if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31cc) == 0) {\n        iVar24 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iVar24 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47f0;\n      }\n      if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d0) == 0) {\n        iVar15 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iVar15 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47ec;\n      }\n      if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4) == 0) {\n        iStack_81f0 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iStack_81f0 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47e8;\n      }\n      pcStack_81ec = pcVar21;\n      uVar7 = dupprintf(*(int *)(pcStack_81e8 + -0x7fc8) + -0x46c0,iVar2,iVar24,iVar15);\n      FUN_00028a00(pcVar13,pcVar27,uVar7);\n      safefree(uVar7);\n      pcVar27 = *(char **)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4);\n      iVar2 = scp_source_setup(pcVar21);\n      if ((iVar2 == 0) && (1 < iVar4)) {\n        puVar18 = puVar23 + iVar4 + -1;\n        iVar24 = *(int *)(pcStack_81e8 + -0x7db0);\n        iVar25 = *(int *)(pcStack_81e8 + -0x7fc8);\n        iVar15 = *(int *)(pcStack_81e8 + -0x7db0);\n        iVar4 = *(int *)(pcStack_81e8 + -0x7fc8);\n        do {\n          pcVar13 = (char *)*puVar23;\n          iVar2 = FUN_00028968(pcVar13);\n          if (iVar2 == 0) {\n            pcVar27 = (char *)0x1;\n            iVar2 = (**(code **)(pcStack_81e8 + -0x7c30))(pcVar13,1,pcVar13);\n            if (iVar2 == 0) {\n              (*(code *)(iVar15 + -0x59a8))(iVar25 + -0x4688);\n              pcVar27 = pcVar13;\n            }\n            else if (iVar2 == 1) {\n              (*(code *)(iVar24 + -0x4b8c))(pcVar13);\n            }\n            else {\n              iVar2 = (**(code **)(pcStack_81e8 + -0x7c2c))();\n              if (iVar2 == 0) {\n                (*(code *)(iVar15 + -0x59a8))(iVar25 + -0x4688);\n                pcVar27 = pcVar13;\n              }\n              else {\n                while (iVar26 = (**(code **)(pcStack_81e8 + -0x7c28))(iVar2), iVar26 != 0) {\n                  (*(code *)(iVar24 + -0x4b8c))(iVar26);\n                  safefree(iVar26);\n                }\n                (**(code **)(pcStack_81e8 + -0x7c24))(iVar2);\n              }\n            }\n          }\n          else {\n            pcVar27 = (char *)(iVar4 + -0x46ac);\n            FUN_00027ff8(**(undefined4 **)(pcStack_81e8 + -0x7460));\n            *(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31e0) =\n                 *(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31e0) + 1;\n          }\n          puVar23 = puVar23 + 1;\n          iVar2 = *(int *)(pcStack_81e8 + -0x7fd8);\n        } while (puVar18 != puVar23);\n        goto LAB_0002e788;\n      }\n    }\n  }\n  else {\n    if (iVar4 == 1) {\n      pcVar13 = (char *)*puVar23;\n    }\n    else {\n      FUN_0002861c();\n      pcVar13 = (char *)*puVar23;\n    }\n    puVar9 = (undefined1 *)FUN_00028968(pcVar13);\n    if (puVar9 == (undefined1 *)0x0) {\n      FUN_00028270(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4750);\n      uRam00000000 = 0;\n    }\n    else {\n      *puVar9 = 0;\n    }\n    if (puVar9[1] == '\0') {\n      puVar9 = (undefined1 *)(**(code **)(pcStack_81e8 + -0x75b8))(pcVar13,0x40);\n      if (puVar9 == (undefined1 *)0x0) {\n        puVar23 = (undefined4 *)safemalloc(0x68,1);\n        iVar2 = *(int *)(pcStack_81e8 + -0x7fc8);\n        uVar7 = *(undefined4 *)(iVar2 + -0x4728);\n        *puVar23 = *(undefined4 *)(iVar2 + -0x472c);\n        puVar23[1] = uVar7;\n        *(undefined1 *)(puVar23 + 2) = *(undefined1 *)(iVar2 + -0x4724);\n        iVar2 = (**(code **)(pcStack_81e8 + -0x752c))(puVar23);\n        pcVar10 = (char *)((int)puVar23 + iVar2);\n        pcVar21 = (char *)(*(int *)(pcStack_81e8 + -0x7fc8) + -0x48b0);\n        cVar11 = '.';\n        pcVar27 = (char *)0x0;\n        pcVar22 = pcVar21;\n        goto LAB_0002e6b4;\n      }\n      pcVar21 = (char *)(*(int *)(pcStack_81e8 + -0x7fc8) + -0x48b0);\nLAB_0002e5ac:\n      *puVar9 = 0;\n      cVar11 = *pcVar13;\n      pcVar27 = pcVar13;\n      pcVar13 = puVar9 + 1;\n      if (cVar11 == '\0') {\n        pcVar27 = (char *)0x0;\n      }\n    }\n    else {\n      pcVar21 = puVar9 + 1;\n      puVar9 = (undefined1 *)(**(code **)(pcStack_81e8 + -0x75b8))(pcVar13);\n      if (puVar9 != (undefined1 *)0x0) goto LAB_0002e5ac;\n      pcVar27 = (char *)0x0;\n    }\n    iVar2 = (**(code **)(pcStack_81e8 + -0x752c))(pcVar21);\n    puVar23 = (undefined4 *)safemalloc((iVar2 + 0x19) * 4,1);\n    iVar2 = *(int *)(pcStack_81e8 + -0x7fc8);\n    uVar7 = *(undefined4 *)(iVar2 + -0x4728);\n    *puVar23 = *(undefined4 *)(iVar2 + -0x472c);\n    puVar23[1] = uVar7;\n    *(undefined1 *)(puVar23 + 2) = *(undefined1 *)(iVar2 + -0x4724);\n    iVar2 = (**(code **)(pcStack_81e8 + -0x752c))(puVar23);\n    pcVar10 = (char *)((int)puVar23 + iVar2);\n    cVar11 = *pcVar21;\n    pcVar22 = pcVar21;\n    while (cVar11 != '\0') {\nLAB_0002e6b4:\n      if (cVar11 == '\'') {\n        builtin_strncpy(pcVar10,"\'\\\'\'",4);\n        pcVar10 = pcVar10 + 4;\n      }\n      else {\n        *pcVar10 = cVar11;\n        pcVar10 = pcVar10 + 1;\n      }\n      pcVar21 = pcVar21 + 1;\n      cVar11 = *pcVar21;\n    }\n    *pcVar10 = '\'';\n    pcVar10[1] = '\0';\n    FUN_00028a00(pcVar13,pcVar27,puVar23);\n    safefree(puVar23);\n    if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31ec) != 0) {\n      scp_sftp_listdir(pcVar22);\n      iVar2 = *(int *)(pcStack_81e8 + -0x7fd8);\n      goto LAB_0002e788;\n    }\n    puVar23 = *(undefined4 **)(pcStack_81e8 + -0x7594);\n    while( true ) {\n      pcVar27 = (char *)0x1;\n      iVar2 = FUN_000280f4(&cStack_81d5);\n      if (iVar2 < 1) break;\n      (**(code **)(pcStack_81e8 + -0x75c4))((int)cStack_81d5,*puVar23);\n    }\n  }\n  iVar2 = *(int *)(pcStack_81e8 + -0x7fd8);\nLAB_0002e788:\n  pcVar28 = *(code **)(pcStack_81e8 + -0x7c44);\n  if (*(int *)(iVar2 + -0x31f4) != 0) {\n    iVar2 = (**(code **)(*(int *)(iVar2 + -0x31f4) + 0x20))\n                      (*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f8));\n    pcVar28 = *(code **)(pcStack_81e8 + -0x7c44);\n    if (iVar2 != 0) {\n      (**(code **)(*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f4) + 0x18))\n                (*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f8),0xc);\n      **(undefined4 **)(pcStack_81e8 + -0x7db4) = 1;\n      pcVar27 = (char *)0x1;\n      FUN_000280f4(&cStack_81d5);\n      pcVar28 = *(code **)(pcStack_81e8 + -0x7c44);\n    }\n  }\n  (*pcVar28)();\n  cmdline_cleanup();\n  (**(code **)(pcStack_81e8 + -0x7d88))(0);\n  iVar20 = *(int *)(pcStack_81e8 + -0x7fd8);\n  iVar24 = *(int *)(pcStack_81e8 + -0x7fd8);\n  (**(code **)(*(int *)(iVar24 + -0x31f4) + 4))(*(undefined4 *)(iVar20 + -0x31f8));\n  *(undefined4 *)(iVar20 + -0x31f8) = 0;\n  *(undefined4 *)(iVar24 + -0x31f4) = 0;\n  (**(code **)(pcStack_81e8 + -0x7c3c))();\n  uVar3 = (uint)(*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31e0) != 0);\nLAB_0002e878:\n  if (puStack_81d4 == (undefined4 *)**(int **)(pcStack_81e8 + -0x7478)) {\n    return uVar3;\n  }\n  pcVar28 = *(code **)(pcStack_81e8 + -0x74a0);\n  uVar12 = 0x2f008;\n  puVar23 = puStack_81d4;\n  (*pcVar28)();\n  pcStack_8218 = pcVar28 + 0x95140;\n  uVar7 = *puVar23;\n  uVar6 = *(undefined4 *)pcVar27;\n  iStack_820c = iVar24;\n  iStack_8208 = iVar20;\n  uStack_8204 = uVar12;\n  iVar2 = (**(code **)(pcVar28 + 0x8dd04))(uVar7,*(int *)(pcVar28 + 0x8d178) + -0x4584);\n  if (iVar2 == 0) {\n    uVar3 = 0xffffffff;\n  }\n  else {\n    iVar2 = (**(code **)(pcStack_8218 + -0x743c))(uVar6,*(int *)(pcStack_8218 + -0x7fc8) + -0x4584);\n    if (iVar2 == 0) {\n      uVar3 = 1;\n    }\n    else {\n      uVar3 = (**(code **)(pcStack_8218 + -0x743c))(uVar7,uVar6);\n    }\n  }\n  return uVar3;\nLAB_0002de88:\n  if (iStack_80c0 != 0) {\n    (**(code **)(pcStack_8138 + -0x7c60))(unaff_s5,uStack_80b8,uStack_80bc);\n  }\n  (**(code **)(pcStack_8138 + -0x7c70))(unaff_s5);\n  if (iVar24 == 0) {\n    scp_finish_filerecv();\n    safefree(unaff_s3);\n    safefree(uStack_80d4);\n  }\n  else {\n    FUN_0002a658(*(int *)(pcStack_8138 + -0x7fc8) + -0x483c,unaff_s3);\n    safefree(unaff_s3);\n  }\n  goto LAB_0002d77c;\n}" ({ "{") (declaration "undefined *puVar1;" (type_identifier "undefined") (pointer_declarator "*puVar1" (* "*") (identifier "puVar1")) (; ";")) (declaration "int iVar2;" (primitive_type "int") (identifier "iVar2") (; ";")) (declaration "uint uVar3;" (type_identifier "uint") (identifier "uVar3") (; ";")) (declaration "int iVar4;" (primitive_type "int") (identifier "iVar4") (; ";")) (declaration "undefined *puVar5;" (type_identifier "undefined") (pointer_declarator "*puVar5" (* "*") (identifier "puVar5")) (; ";")) (declaration "undefined4 uVar6;" (type_identifier "undefined4") (identifier "uVar6") (; ";")) (declaration "undefined4 uVar7;" (type_identifier "undefined4") (identifier "uVar7") (; ";")) (declaration "int iVar8;" (primitive_type "int") (identifier "iVar8") (; ";")) (declaration "undefined1 *puVar9;" (type_identifier "undefined1") (pointer_declarator "*puVar9" (* "*") (identifier "puVar9")) (; ";")) (declaration "char *pcVar10;" (primitive_type "char") (pointer_declarator "*pcVar10" (* "*") (identifier "pcVar10")) (; ";")) (declaration "undefined4 extraout_v1;" (type_identifier "undefined4") (identifier "extraout_v1") (; ";")) (declaration "char cVar11;" (primitive_type "char") (identifier "cVar11") (; ";")) (declaration "undefined4 uVar12;" (type_identifier "undefined4") (identifier "uVar12") (; ";")) (declaration "char *pcVar13;" (primitive_type "char") (pointer_declarator "*pcVar13" (* "*") (identifier "pcVar13")) (; ";")) (declaration "undefined *puVar14;" (type_identifier "undefined") (pointer_declarator "*puVar14" (* "*") (identifier "puVar14")) (; ";")) (declaration "int iVar15;" (primitive_type "int") (identifier "iVar15") (; ";")) (declaration "int iVar16;" (primitive_type "int") (identifier "iVar16") (; ";")) (declaration "undefined4 uVar17;" (type_identifier "undefined4") (identifier "uVar17") (; ";")) (declaration "undefined4 *puVar18;" (type_identifier "undefined4") (pointer_declarator "*puVar18" (* "*") (identifier "puVar18")) (; ";")) (declaration "int *piVar19;" (primitive_type "int") (pointer_declarator "*piVar19" (* "*") (identifier "piVar19")) (; ";")) (declaration "int iVar20;" (primitive_type "int") (identifier "iVar20") (; ";")) (declaration "char *pcVar21;" (primitive_type "char") (pointer_declarator "*pcVar21" (* "*") (identifier "pcVar21")) (; ";")) (declaration "char *pcVar22;" (primitive_type "char") (pointer_declarator "*pcVar22" (* "*") (identifier "pcVar22")) (; ";")) (declaration "undefined4 *unaff_s3;" (type_identifier "undefined4") (pointer_declarator "*unaff_s3" (* "*") (identifier "unaff_s3")) (; ";")) (declaration "undefined4 *puVar23;" (type_identifier "undefined4") (pointer_declarator "*puVar23" (* "*") (identifier "puVar23")) (; ";")) (declaration "undefined1 *unaff_s4;" (type_identifier "undefined1") (pointer_declarator "*unaff_s4" (* "*") (identifier "unaff_s4")) (; ";")) (declaration "int iVar24;" (primitive_type "int") (identifier "iVar24") (; ";")) (declaration "int unaff_s5;" (primitive_type "int") (identifier "unaff_s5") (; ";")) (declaration "int iVar25;" (primitive_type "int") (identifier "iVar25") (; ";")) (declaration "int iVar26;" (primitive_type "int") (identifier "iVar26") (; ";")) (declaration "int unaff_s7;" (primitive_type "int") (identifier "unaff_s7") (; ";")) (declaration "char *pcVar27;" (primitive_type "char") (pointer_declarator "*pcVar27" (* "*") (identifier "pcVar27")) (; ";")) (declaration "code *pcVar28;" (type_identifier "code") (pointer_declarator "*pcVar28" (* "*") (identifier "pcVar28")) (; ";")) (declaration "int iVar29;" (primitive_type "int") (identifier "iVar29") (; ";")) (declaration "code *pcVar30;" (type_identifier "code") (pointer_declarator "*pcVar30" (* "*") (identifier "pcVar30")) (; ";")) (declaration "undefined auStack_100b0 [32408];" (type_identifier "undefined") (array_declarator "auStack_100b0 [32408]" (identifier "auStack_100b0") ([ "[") (number_literal "32408") (] "]")) (; ";")) (declaration "code *pcStack_8218;" (type_identifier "code") (pointer_declarator "*pcStack_8218" (* "*") (identifier "pcStack_8218")) (; ";")) (declaration "int iStack_820c;" (primitive_type "int") (identifier "iStack_820c") (; ";")) (declaration "int iStack_8208;" (primitive_type "int") (identifier "iStack_8208") (; ";")) (declaration "undefined4 uStack_8204;" (type_identifier "undefined4") (identifier "uStack_8204") (; ";")) (declaration "int iStack_81f0;" (primitive_type "int") (identifier "iStack_81f0") (; ";")) (declaration "char *pcStack_81ec;" (primitive_type "char") (pointer_declarator "*pcStack_81ec" (* "*") (identifier "pcStack_81ec")) (; ";")) (declaration "code *pcStack_81e8;" (type_identifier "code") (pointer_declarator "*pcStack_81e8" (* "*") (identifier "pcStack_81e8")) (; ";")) (declaration "code *pcStack_81dc;" (type_identifier "code") (pointer_declarator "*pcStack_81dc" (* "*") (identifier "pcStack_81dc")) (; ";")) (declaration "char cStack_81d5;" (primitive_type "char") (identifier "cStack_81d5") (; ";")) (declaration "undefined4 *puStack_81d4;" (type_identifier "undefined4") (pointer_declarator "*puStack_81d4" (* "*") (identifier "puStack_81d4")) (; ";")) (declaration "undefined4 *puStack_81d0;" (type_identifier "undefined4") (pointer_declarator "*puStack_81d0" (* "*") (identifier "puStack_81d0")) (; ";")) (declaration "undefined4 uStack_81cc;" (type_identifier "undefined4") (identifier "uStack_81cc") (; ";")) (declaration "undefined *puStack_81c8;" (type_identifier "undefined") (pointer_declarator "*puStack_81c8" (* "*") (identifier "puStack_81c8")) (; ";")) (declaration "undefined4 *puStack_81c4;" (type_identifier "undefined4") (pointer_declarator "*puStack_81c4" (* "*") (identifier "puStack_81c4")) (; ";")) (declaration "int iStack_81c0;" (primitive_type "int") (identifier "iStack_81c0") (; ";")) (declaration "int iStack_81bc;" (primitive_type "int") (identifier "iStack_81bc") (; ";")) (declaration "int *piStack_81b8;" (primitive_type "int") (pointer_declarator "*piStack_81b8" (* "*") (identifier "piStack_81b8")) (; ";")) (declaration "int iStack_81b4;" (primitive_type "int") (identifier "iStack_81b4") (; ";")) (declaration "int iStack_81b0;" (primitive_type "int") (identifier "iStack_81b0") (; ";")) (declaration "code *pcStack_81ac;" (type_identifier "code") (pointer_declarator "*pcStack_81ac" (* "*") (identifier "pcStack_81ac")) (; ";")) (declaration "code *pcStack_8198;" (type_identifier "code") (pointer_declarator "*pcStack_8198" (* "*") (identifier "pcStack_8198")) (; ";")) (declaration "int *piStack_8190;" (primitive_type "int") (pointer_declarator "*piStack_8190" (* "*") (identifier "piStack_8190")) (; ";")) (declaration "undefined4 uStack_818c;" (type_identifier "undefined4") (identifier "uStack_818c") (; ";")) (declaration "undefined4 uStack_8184;" (type_identifier "undefined4") (identifier "uStack_8184") (; ";")) (declaration "undefined *puStack_8180;" (type_identifier "undefined") (pointer_declarator "*puStack_8180" (* "*") (identifier "puStack_8180")) (; ";")) (declaration "code *pcStack_817c;" (type_identifier "code") (pointer_declarator "*pcStack_817c" (* "*") (identifier "pcStack_817c")) (; ";")) (declaration "int iStack_8174;" (primitive_type "int") (identifier "iStack_8174") (; ";")) (declaration "undefined4 uStack_8170;" (type_identifier "undefined4") (identifier "uStack_8170") (; ";")) (declaration "undefined4 uStack_816c;" (type_identifier "undefined4") (identifier "uStack_816c") (; ";")) (declaration "code *pcStack_8168;" (type_identifier "code") (pointer_declarator "*pcStack_8168" (* "*") (identifier "pcStack_8168")) (; ";")) (declaration "undefined4 uStack_8160;" (type_identifier "undefined4") (identifier "uStack_8160") (; ";")) (declaration "code *pcStack_815c;" (type_identifier "code") (pointer_declarator "*pcStack_815c" (* "*") (identifier "pcStack_815c")) (; ";")) (declaration "undefined4 uStack_8148;" (type_identifier "undefined4") (identifier "uStack_8148") (; ";")) (declaration "undefined4 uStack_8144;" (type_identifier "undefined4") (identifier "uStack_8144") (; ";")) (declaration "int iStack_8140;" (primitive_type "int") (identifier "iStack_8140") (; ";")) (declaration "code *pcStack_8138;" (type_identifier "code") (pointer_declarator "*pcStack_8138" (* "*") (identifier "pcStack_8138")) (; ";")) (declaration "char *pcStack_812c;" (primitive_type "char") (pointer_declarator "*pcStack_812c" (* "*") (identifier "pcStack_812c")) (; ";")) (declaration "code *pcStack_8128;" (type_identifier "code") (pointer_declarator "*pcStack_8128" (* "*") (identifier "pcStack_8128")) (; ";")) (declaration "int iStack_8124;" (primitive_type "int") (identifier "iStack_8124") (; ";")) (declaration "int iStack_8120;" (primitive_type "int") (identifier "iStack_8120") (; ";")) (declaration "undefined4 uStack_811c;" (type_identifier "undefined4") (identifier "uStack_811c") (; ";")) (declaration "undefined *puStack_8118;" (type_identifier "undefined") (pointer_declarator "*puStack_8118" (* "*") (identifier "puStack_8118")) (; ";")) (declaration "undefined4 uStack_8114;" (type_identifier "undefined4") (identifier "uStack_8114") (; ";")) (declaration "int iStack_8110;" (primitive_type "int") (identifier "iStack_8110") (; ";")) (declaration "code *pcStack_810c;" (type_identifier "code") (pointer_declarator "*pcStack_810c" (* "*") (identifier "pcStack_810c")) (; ";")) (declaration "undefined4 uStack_8108;" (type_identifier "undefined4") (identifier "uStack_8108") (; ";")) (declaration "undefined4 uStack_8104;" (type_identifier "undefined4") (identifier "uStack_8104") (; ";")) (declaration "undefined4 uStack_8100;" (type_identifier "undefined4") (identifier "uStack_8100") (; ";")) (declaration "undefined4 uStack_80fc;" (type_identifier "undefined4") (identifier "uStack_80fc") (; ";")) (declaration "undefined4 uStack_80f8;" (type_identifier "undefined4") (identifier "uStack_80f8") (; ";")) (declaration "undefined4 uStack_80f4;" (type_identifier "undefined4") (identifier "uStack_80f4") (; ";")) (declaration "undefined4 uStack_80f0;" (type_identifier "undefined4") (identifier "uStack_80f0") (; ";")) (declaration "undefined4 uStack_80ec;" (type_identifier "undefined4") (identifier "uStack_80ec") (; ";")) (declaration "undefined4 uStack_80e8;" (type_identifier "undefined4") (identifier "uStack_80e8") (; ";")) (declaration "undefined4 uStack_80e4;" (type_identifier "undefined4") (identifier "uStack_80e4") (; ";")) (declaration "undefined4 uStack_80e0;" (type_identifier "undefined4") (identifier "uStack_80e0") (; ";")) (declaration "undefined4 uStack_80dc;" (type_identifier "undefined4") (identifier "uStack_80dc") (; ";")) (declaration "int iStack_80d8;" (primitive_type "int") (identifier "iStack_80d8") (; ";")) (declaration "undefined4 uStack_80d4;" (type_identifier "undefined4") (identifier "uStack_80d4") (; ";")) (declaration "undefined *puStack_80d0;" (type_identifier "undefined") (pointer_declarator "*puStack_80d0" (* "*") (identifier "puStack_80d0")) (; ";")) (declaration "undefined4 uStack_80cc;" (type_identifier "undefined4") (identifier "uStack_80cc") (; ";")) (declaration "undefined4 uStack_80c8;" (type_identifier "undefined4") (identifier "uStack_80c8") (; ";")) (declaration "undefined4 uStack_80c4;" (type_identifier "undefined4") (identifier "uStack_80c4") (; ";")) (declaration "int iStack_80c0;" (primitive_type "int") (identifier "iStack_80c0") (; ";")) (declaration "undefined4 uStack_80bc;" (type_identifier "undefined4") (identifier "uStack_80bc") (; ";")) (declaration "undefined4 uStack_80b8;" (type_identifier "undefined4") (identifier "uStack_80b8") (; ";")) (declaration "undefined1 auStack_80b4 [32768];" (type_identifier "undefined1") (array_declarator "auStack_80b4 [32768]" (identifier "auStack_80b4") ([ "[") (number_literal "32768") (] "]")) (; ";")) (declaration "uint uStack_b4;" (type_identifier "uint") (identifier "uStack_b4") (; ";")) (declaration "undefined *puStack_b0;" (type_identifier "undefined") (pointer_declarator "*puStack_b0" (* "*") (identifier "puStack_b0")) (; ";")) (declaration "undefined *puStack_ac;" (type_identifier "undefined") (pointer_declarator "*puStack_ac" (* "*") (identifier "puStack_ac")) (; ";")) (declaration "undefined *puStack_a8;" (type_identifier "undefined") (pointer_declarator "*puStack_a8" (* "*") (identifier "puStack_a8")) (; ";")) (declaration "undefined4 *puStack_a4;" (type_identifier "undefined4") (pointer_declarator "*puStack_a4" (* "*") (identifier "puStack_a4")) (; ";")) (declaration "undefined1 *puStack_a0;" (type_identifier "undefined1") (pointer_declarator "*puStack_a0" (* "*") (identifier "puStack_a0")) (; ";")) (declaration "undefined4 uStack_6c;" (type_identifier "undefined4") (identifier "uStack_6c") (; ";")) (declaration "undefined1 auStack_68 [4];" (type_identifier "undefined1") (array_declarator "auStack_68 [4]" (identifier "auStack_68") ([ "[") (number_literal "4") (] "]")) (; ";")) (declaration "char *pcStack_64;" (primitive_type "char") (pointer_declarator "*pcStack_64" (* "*") (identifier "pcStack_64")) (; ";")) (declaration "undefined *puStack_60;" (type_identifier "undefined") (pointer_declarator "*puStack_60" (* "*") (identifier "puStack_60")) (; ";")) (declaration "undefined *puStack_5c;" (type_identifier "undefined") (pointer_declarator "*puStack_5c" (* "*") (identifier "puStack_5c")) (; ";")) (declaration "undefined *puStack_58;" (type_identifier "undefined") (pointer_declarator "*puStack_58" (* "*") (identifier "puStack_58")) (; ";")) (declaration "undefined4 *puStack_54;" (type_identifier "undefined4") (pointer_declarator "*puStack_54" (* "*") (identifier "puStack_54")) (; ";")) (declaration "undefined4 local_30;" (type_identifier "undefined4") (identifier "local_30") (; ";")) (declaration "undefined4 local_2c;" (type_identifier "undefined4") (identifier "local_2c") (; ";")) (declaration "uint local_24;" (type_identifier "uint") (identifier "local_24") (; ";")) (declaration "undefined4 local_20;" (type_identifier "undefined4") (identifier "local_20") (; ";")) (declaration "int local_1c;" (primitive_type "int") (identifier "local_1c") (; ";")) (expression_statement "puVar1 = PTR_DAT_000bc178;" (assignment_expression "puVar1 = PTR_DAT_000bc178" (identifier "puVar1") (= "=") (identifier "PTR_DAT_000bc178")) (; ";")) (expression_statement "local_1c = *(int *)PTR___stack_chk_guard_000bccd8;" (assignment_expression "local_1c = *(int *)PTR___stack_chk_guard_000bccd8" (identifier "local_1c") (= "=") (pointer_expression "*(int *)PTR___stack_chk_guard_000bccd8" (* "*") (cast_expression "(int *)PTR___stack_chk_guard_000bccd8" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR___stack_chk_guard_000bccd8")))) (; ";")) (if_statement "if (*(int *)(PTR_DAT_000bc178 + -0x31ec) == 0) {\n    uVar3 = FUN_000280f4();\n  }\n  else {\n    xfer_download_queue(*(undefined4 *)(PTR_DAT_000bc178 + -0x3244));\n    unaff_s3 = (undefined4 *)sftp_recv();\n    puVar1 = (undefined *)xfer_download_gotpkt(*(undefined4 *)(puVar1 + -0x3244),unaff_s3);\n    if ((int)puVar1 < 1) {\n      param_2 = *(undefined **)PTR_stderr_000bccf0;\n      uVar7 = fxp_error();\n      FUN_00027ff8(param_2,PTR_s_Server_sent_command_exit_status___000bc188 + -0x4abc,uVar7);\n      if (puVar1 == (undefined *)0x80000000) {\n        safefree(unaff_s3);\n      }\n      *(int *)(PTR_DAT_000bc178 + -0x31e0) = *(int *)(PTR_DAT_000bc178 + -0x31e0) + 1;\n      uVar3 = 0xffffffff;\n    }\n    else {\n      iVar2 = xfer_download_data(*(undefined4 *)(PTR_DAT_000bc178 + -0x3244),&local_20,&local_24);\n      if (iVar2 == 0) {\n        local_24 = 0;\n      }\n      else {\n        param_2 = (undefined *)(uint)((int)param_2 < (int)local_24);\n        if ((int)local_24 < 1) {\n          FUN_00027ff8(*(undefined4 *)PTR_stderr_000bccf0,\n                       PTR_s_Server_sent_command_exit_status___000bc188 + -0x4a9c);\n          *(int *)(PTR_DAT_000bc178 + -0x31e0) = *(int *)(PTR_DAT_000bc178 + -0x31e0) + 1;\n          safefree(local_20);\n          uVar3 = 0xffffffff;\n          goto LAB_0002d148;\n        }\n        if (param_2 != (undefined *)0x0) {\n          uVar3 = (*(code *)PTR___assert_fail_000bcb00)\n                            (PTR_s_Server_sent_command_exit_status___000bc188 + -0x4a7c,\n                             PTR_s_Server_sent_command_exit_status___000bc188 + -0x4fb0,0x628,\n                             PTR_s_Server_sent_command_exit_status___000bc188 + -0x45f0);\n          return uVar3;\n        }\n        (*(code *)PTR_memcpy_000bccdc)(param_1,local_20);\n        safefree(local_20);\n      }\n      param_2 = PTR_DAT_000bc178;\n      puVar1 = PTR_DAT_000bc178 + -0x324c;\n      uint64_add32(&local_30,*(undefined4 *)(PTR_DAT_000bc178 + -0x324c),\n                   *(undefined4 *)(PTR_DAT_000bc178 + -0x3248),local_24);\n      *(undefined4 *)(param_2 + -0x324c) = local_30;\n      *(undefined4 *)(param_2 + -0x3248) = local_2c;\n      uVar3 = local_24;\n    }\n  }" (if "if") (parenthesized_expression "(*(int *)(PTR_DAT_000bc178 + -0x31ec) == 0)" (( "(") (binary_expression "*(int *)(PTR_DAT_000bc178 + -0x31ec) == 0" (pointer_expression "*(int *)(PTR_DAT_000bc178 + -0x31ec)" (* "*") (cast_expression "(int *)(PTR_DAT_000bc178 + -0x31ec)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(PTR_DAT_000bc178 + -0x31ec)" (( "(") (binary_expression "PTR_DAT_000bc178 + -0x31ec" (identifier "PTR_DAT_000bc178") (+ "+") (number_literal "-0x31ec")) () ")")))) (== "==") (number_literal "0")) () ")")) (compound_statement "{\n    uVar3 = FUN_000280f4();\n  }" ({ "{") (expression_statement "uVar3 = FUN_000280f4();" (assignment_expression "uVar3 = FUN_000280f4()" (identifier "uVar3") (= "=") (call_expression "FUN_000280f4()" (identifier "FUN_000280f4") (argument_list "()" (( "(") () ")")))) (; ";")) (} "}")) (else_clause "else {\n    xfer_download_queue(*(undefined4 *)(PTR_DAT_000bc178 + -0x3244));\n    unaff_s3 = (undefined4 *)sftp_recv();\n    puVar1 = (undefined *)xfer_download_gotpkt(*(undefined4 *)(puVar1 + -0x3244),unaff_s3);\n    if ((int)puVar1 < 1) {\n      param_2 = *(undefined **)PTR_stderr_000bccf0;\n      uVar7 = fxp_error();\n      FUN_00027ff8(param_2,PTR_s_Server_sent_command_exit_status___000bc188 + -0x4abc,uVar7);\n      if (puVar1 == (undefined *)0x80000000) {\n        safefree(unaff_s3);\n      }\n      *(int *)(PTR_DAT_000bc178 + -0x31e0) = *(int *)(PTR_DAT_000bc178 + -0x31e0) + 1;\n      uVar3 = 0xffffffff;\n    }\n    else {\n      iVar2 = xfer_download_data(*(undefined4 *)(PTR_DAT_000bc178 + -0x3244),&local_20,&local_24);\n      if (iVar2 == 0) {\n        local_24 = 0;\n      }\n      else {\n        param_2 = (undefined *)(uint)((int)param_2 < (int)local_24);\n        if ((int)local_24 < 1) {\n          FUN_00027ff8(*(undefined4 *)PTR_stderr_000bccf0,\n                       PTR_s_Server_sent_command_exit_status___000bc188 + -0x4a9c);\n          *(int *)(PTR_DAT_000bc178 + -0x31e0) = *(int *)(PTR_DAT_000bc178 + -0x31e0) + 1;\n          safefree(local_20);\n          uVar3 = 0xffffffff;\n          goto LAB_0002d148;\n        }\n        if (param_2 != (undefined *)0x0) {\n          uVar3 = (*(code *)PTR___assert_fail_000bcb00)\n                            (PTR_s_Server_sent_command_exit_status___000bc188 + -0x4a7c,\n                             PTR_s_Server_sent_command_exit_status___000bc188 + -0x4fb0,0x628,\n                             PTR_s_Server_sent_command_exit_status___000bc188 + -0x45f0);\n          return uVar3;\n        }\n        (*(code *)PTR_memcpy_000bccdc)(param_1,local_20);\n        safefree(local_20);\n      }\n      param_2 = PTR_DAT_000bc178;\n      puVar1 = PTR_DAT_000bc178 + -0x324c;\n      uint64_add32(&local_30,*(undefined4 *)(PTR_DAT_000bc178 + -0x324c),\n                   *(undefined4 *)(PTR_DAT_000bc178 + -0x3248),local_24);\n      *(undefined4 *)(param_2 + -0x324c) = local_30;\n      *(undefined4 *)(param_2 + -0x3248) = local_2c;\n      uVar3 = local_24;\n    }\n  }" (else "else") (compound_statement "{\n    xfer_download_queue(*(undefined4 *)(PTR_DAT_000bc178 + -0x3244));\n    unaff_s3 = (undefined4 *)sftp_recv();\n    puVar1 = (undefined *)xfer_download_gotpkt(*(undefined4 *)(puVar1 + -0x3244),unaff_s3);\n    if ((int)puVar1 < 1) {\n      param_2 = *(undefined **)PTR_stderr_000bccf0;\n      uVar7 = fxp_error();\n      FUN_00027ff8(param_2,PTR_s_Server_sent_command_exit_status___000bc188 + -0x4abc,uVar7);\n      if (puVar1 == (undefined *)0x80000000) {\n        safefree(unaff_s3);\n      }\n      *(int *)(PTR_DAT_000bc178 + -0x31e0) = *(int *)(PTR_DAT_000bc178 + -0x31e0) + 1;\n      uVar3 = 0xffffffff;\n    }\n    else {\n      iVar2 = xfer_download_data(*(undefined4 *)(PTR_DAT_000bc178 + -0x3244),&local_20,&local_24);\n      if (iVar2 == 0) {\n        local_24 = 0;\n      }\n      else {\n        param_2 = (undefined *)(uint)((int)param_2 < (int)local_24);\n        if ((int)local_24 < 1) {\n          FUN_00027ff8(*(undefined4 *)PTR_stderr_000bccf0,\n                       PTR_s_Server_sent_command_exit_status___000bc188 + -0x4a9c);\n          *(int *)(PTR_DAT_000bc178 + -0x31e0) = *(int *)(PTR_DAT_000bc178 + -0x31e0) + 1;\n          safefree(local_20);\n          uVar3 = 0xffffffff;\n          goto LAB_0002d148;\n        }\n        if (param_2 != (undefined *)0x0) {\n          uVar3 = (*(code *)PTR___assert_fail_000bcb00)\n                            (PTR_s_Server_sent_command_exit_status___000bc188 + -0x4a7c,\n                             PTR_s_Server_sent_command_exit_status___000bc188 + -0x4fb0,0x628,\n                             PTR_s_Server_sent_command_exit_status___000bc188 + -0x45f0);\n          return uVar3;\n        }\n        (*(code *)PTR_memcpy_000bccdc)(param_1,local_20);\n        safefree(local_20);\n      }\n      param_2 = PTR_DAT_000bc178;\n      puVar1 = PTR_DAT_000bc178 + -0x324c;\n      uint64_add32(&local_30,*(undefined4 *)(PTR_DAT_000bc178 + -0x324c),\n                   *(undefined4 *)(PTR_DAT_000bc178 + -0x3248),local_24);\n      *(undefined4 *)(param_2 + -0x324c) = local_30;\n      *(undefined4 *)(param_2 + -0x3248) = local_2c;\n      uVar3 = local_24;\n    }\n  }" ({ "{") (expression_statement "xfer_download_queue(*(undefined4 *)(PTR_DAT_000bc178 + -0x3244));" (call_expression "xfer_download_queue(*(undefined4 *)(PTR_DAT_000bc178 + -0x3244))" (identifier "xfer_download_queue") (argument_list "(*(undefined4 *)(PTR_DAT_000bc178 + -0x3244))" (( "(") (pointer_expression "*(undefined4 *)(PTR_DAT_000bc178 + -0x3244)" (* "*") (cast_expression "(undefined4 *)(PTR_DAT_000bc178 + -0x3244)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(PTR_DAT_000bc178 + -0x3244)" (( "(") (binary_expression "PTR_DAT_000bc178 + -0x3244" (identifier "PTR_DAT_000bc178") (+ "+") (number_literal "-0x3244")) () ")")))) () ")"))) (; ";")) (expression_statement "unaff_s3 = (undefined4 *)sftp_recv();" (assignment_expression "unaff_s3 = (undefined4 *)sftp_recv()" (identifier "unaff_s3") (= "=") (cast_expression "(undefined4 *)sftp_recv()" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "sftp_recv()" (identifier "sftp_recv") (argument_list "()" (( "(") () ")"))))) (; ";")) (expression_statement "puVar1 = (undefined *)xfer_download_gotpkt(*(undefined4 *)(puVar1 + -0x3244),unaff_s3);" (assignment_expression "puVar1 = (undefined *)xfer_download_gotpkt(*(undefined4 *)(puVar1 + -0x3244),unaff_s3)" (identifier "puVar1") (= "=") (cast_expression "(undefined *)xfer_download_gotpkt(*(undefined4 *)(puVar1 + -0x3244),unaff_s3)" (( "(") (type_descriptor "undefined *" (type_identifier "undefined") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "xfer_download_gotpkt(*(undefined4 *)(puVar1 + -0x3244),unaff_s3)" (identifier "xfer_download_gotpkt") (argument_list "(*(undefined4 *)(puVar1 + -0x3244),unaff_s3)" (( "(") (pointer_expression "*(undefined4 *)(puVar1 + -0x3244)" (* "*") (cast_expression "(undefined4 *)(puVar1 + -0x3244)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar1 + -0x3244)" (( "(") (binary_expression "puVar1 + -0x3244" (identifier "puVar1") (+ "+") (number_literal "-0x3244")) () ")")))) (, ",") (identifier "unaff_s3") () ")"))))) (; ";")) (if_statement "if ((int)puVar1 < 1) {\n      param_2 = *(undefined **)PTR_stderr_000bccf0;\n      uVar7 = fxp_error();\n      FUN_00027ff8(param_2,PTR_s_Server_sent_command_exit_status___000bc188 + -0x4abc,uVar7);\n      if (puVar1 == (undefined *)0x80000000) {\n        safefree(unaff_s3);\n      }\n      *(int *)(PTR_DAT_000bc178 + -0x31e0) = *(int *)(PTR_DAT_000bc178 + -0x31e0) + 1;\n      uVar3 = 0xffffffff;\n    }\n    else {\n      iVar2 = xfer_download_data(*(undefined4 *)(PTR_DAT_000bc178 + -0x3244),&local_20,&local_24);\n      if (iVar2 == 0) {\n        local_24 = 0;\n      }\n      else {\n        param_2 = (undefined *)(uint)((int)param_2 < (int)local_24);\n        if ((int)local_24 < 1) {\n          FUN_00027ff8(*(undefined4 *)PTR_stderr_000bccf0,\n                       PTR_s_Server_sent_command_exit_status___000bc188 + -0x4a9c);\n          *(int *)(PTR_DAT_000bc178 + -0x31e0) = *(int *)(PTR_DAT_000bc178 + -0x31e0) + 1;\n          safefree(local_20);\n          uVar3 = 0xffffffff;\n          goto LAB_0002d148;\n        }\n        if (param_2 != (undefined *)0x0) {\n          uVar3 = (*(code *)PTR___assert_fail_000bcb00)\n                            (PTR_s_Server_sent_command_exit_status___000bc188 + -0x4a7c,\n                             PTR_s_Server_sent_command_exit_status___000bc188 + -0x4fb0,0x628,\n                             PTR_s_Server_sent_command_exit_status___000bc188 + -0x45f0);\n          return uVar3;\n        }\n        (*(code *)PTR_memcpy_000bccdc)(param_1,local_20);\n        safefree(local_20);\n      }\n      param_2 = PTR_DAT_000bc178;\n      puVar1 = PTR_DAT_000bc178 + -0x324c;\n      uint64_add32(&local_30,*(undefined4 *)(PTR_DAT_000bc178 + -0x324c),\n                   *(undefined4 *)(PTR_DAT_000bc178 + -0x3248),local_24);\n      *(undefined4 *)(param_2 + -0x324c) = local_30;\n      *(undefined4 *)(param_2 + -0x3248) = local_2c;\n      uVar3 = local_24;\n    }" (if "if") (parenthesized_expression "((int)puVar1 < 1)" (( "(") (binary_expression "(int)puVar1 < 1" (cast_expression "(int)puVar1" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "puVar1")) (< "<") (number_literal "1")) () ")")) (compound_statement "{\n      param_2 = *(undefined **)PTR_stderr_000bccf0;\n      uVar7 = fxp_error();\n      FUN_00027ff8(param_2,PTR_s_Server_sent_command_exit_status___000bc188 + -0x4abc,uVar7);\n      if (puVar1 == (undefined *)0x80000000) {\n        safefree(unaff_s3);\n      }\n      *(int *)(PTR_DAT_000bc178 + -0x31e0) = *(int *)(PTR_DAT_000bc178 + -0x31e0) + 1;\n      uVar3 = 0xffffffff;\n    }" ({ "{") (expression_statement "param_2 = *(undefined **)PTR_stderr_000bccf0;" (assignment_expression "param_2 = *(undefined **)PTR_stderr_000bccf0" (identifier "param_2") (= "=") (pointer_expression "*(undefined **)PTR_stderr_000bccf0" (* "*") (cast_expression "(undefined **)PTR_stderr_000bccf0" (( "(") (type_descriptor "undefined **" (type_identifier "undefined") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (identifier "PTR_stderr_000bccf0")))) (; ";")) (expression_statement "uVar7 = fxp_error();" (assignment_expression "uVar7 = fxp_error()" (identifier "uVar7") (= "=") (call_expression "fxp_error()" (identifier "fxp_error") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "FUN_00027ff8(param_2,PTR_s_Server_sent_command_exit_status___000bc188 + -0x4abc,uVar7);" (call_expression "FUN_00027ff8(param_2,PTR_s_Server_sent_command_exit_status___000bc188 + -0x4abc,uVar7)" (identifier "FUN_00027ff8") (argument_list "(param_2,PTR_s_Server_sent_command_exit_status___000bc188 + -0x4abc,uVar7)" (( "(") (identifier "param_2") (, ",") (binary_expression "PTR_s_Server_sent_command_exit_status___000bc188 + -0x4abc" (identifier "PTR_s_Server_sent_command_exit_status___000bc188") (+ "+") (number_literal "-0x4abc")) (, ",") (identifier "uVar7") () ")"))) (; ";")) (if_statement "if (puVar1 == (undefined *)0x80000000) {\n        safefree(unaff_s3);\n      }" (if "if") (parenthesized_expression "(puVar1 == (undefined *)0x80000000)" (( "(") (binary_expression "puVar1 == (undefined *)0x80000000" (identifier "puVar1") (== "==") (cast_expression "(undefined *)0x80000000" (( "(") (type_descriptor "undefined *" (type_identifier "undefined") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x80000000"))) () ")")) (compound_statement "{\n        safefree(unaff_s3);\n      }" ({ "{") (expression_statement "safefree(unaff_s3);" (call_expression "safefree(unaff_s3)" (identifier "safefree") (argument_list "(unaff_s3)" (( "(") (identifier "unaff_s3") () ")"))) (; ";")) (} "}"))) (expression_statement "*(int *)(PTR_DAT_000bc178 + -0x31e0) = *(int *)(PTR_DAT_000bc178 + -0x31e0) + 1;" (assignment_expression "*(int *)(PTR_DAT_000bc178 + -0x31e0) = *(int *)(PTR_DAT_000bc178 + -0x31e0) + 1" (pointer_expression "*(int *)(PTR_DAT_000bc178 + -0x31e0)" (* "*") (cast_expression "(int *)(PTR_DAT_000bc178 + -0x31e0)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(PTR_DAT_000bc178 + -0x31e0)" (( "(") (binary_expression "PTR_DAT_000bc178 + -0x31e0" (identifier "PTR_DAT_000bc178") (+ "+") (number_literal "-0x31e0")) () ")")))) (= "=") (binary_expression "*(int *)(PTR_DAT_000bc178 + -0x31e0) + 1" (pointer_expression "*(int *)(PTR_DAT_000bc178 + -0x31e0)" (* "*") (cast_expression "(int *)(PTR_DAT_000bc178 + -0x31e0)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(PTR_DAT_000bc178 + -0x31e0)" (( "(") (binary_expression "PTR_DAT_000bc178 + -0x31e0" (identifier "PTR_DAT_000bc178") (+ "+") (number_literal "-0x31e0")) () ")")))) (+ "+") (number_literal "1"))) (; ";")) (expression_statement "uVar3 = 0xffffffff;" (assignment_expression "uVar3 = 0xffffffff" (identifier "uVar3") (= "=") (number_literal "0xffffffff")) (; ";")) (} "}")) (else_clause "else {\n      iVar2 = xfer_download_data(*(undefined4 *)(PTR_DAT_000bc178 + -0x3244),&local_20,&local_24);\n      if (iVar2 == 0) {\n        local_24 = 0;\n      }\n      else {\n        param_2 = (undefined *)(uint)((int)param_2 < (int)local_24);\n        if ((int)local_24 < 1) {\n          FUN_00027ff8(*(undefined4 *)PTR_stderr_000bccf0,\n                       PTR_s_Server_sent_command_exit_status___000bc188 + -0x4a9c);\n          *(int *)(PTR_DAT_000bc178 + -0x31e0) = *(int *)(PTR_DAT_000bc178 + -0x31e0) + 1;\n          safefree(local_20);\n          uVar3 = 0xffffffff;\n          goto LAB_0002d148;\n        }\n        if (param_2 != (undefined *)0x0) {\n          uVar3 = (*(code *)PTR___assert_fail_000bcb00)\n                            (PTR_s_Server_sent_command_exit_status___000bc188 + -0x4a7c,\n                             PTR_s_Server_sent_command_exit_status___000bc188 + -0x4fb0,0x628,\n                             PTR_s_Server_sent_command_exit_status___000bc188 + -0x45f0);\n          return uVar3;\n        }\n        (*(code *)PTR_memcpy_000bccdc)(param_1,local_20);\n        safefree(local_20);\n      }\n      param_2 = PTR_DAT_000bc178;\n      puVar1 = PTR_DAT_000bc178 + -0x324c;\n      uint64_add32(&local_30,*(undefined4 *)(PTR_DAT_000bc178 + -0x324c),\n                   *(undefined4 *)(PTR_DAT_000bc178 + -0x3248),local_24);\n      *(undefined4 *)(param_2 + -0x324c) = local_30;\n      *(undefined4 *)(param_2 + -0x3248) = local_2c;\n      uVar3 = local_24;\n    }" (else "else") (compound_statement "{\n      iVar2 = xfer_download_data(*(undefined4 *)(PTR_DAT_000bc178 + -0x3244),&local_20,&local_24);\n      if (iVar2 == 0) {\n        local_24 = 0;\n      }\n      else {\n        param_2 = (undefined *)(uint)((int)param_2 < (int)local_24);\n        if ((int)local_24 < 1) {\n          FUN_00027ff8(*(undefined4 *)PTR_stderr_000bccf0,\n                       PTR_s_Server_sent_command_exit_status___000bc188 + -0x4a9c);\n          *(int *)(PTR_DAT_000bc178 + -0x31e0) = *(int *)(PTR_DAT_000bc178 + -0x31e0) + 1;\n          safefree(local_20);\n          uVar3 = 0xffffffff;\n          goto LAB_0002d148;\n        }\n        if (param_2 != (undefined *)0x0) {\n          uVar3 = (*(code *)PTR___assert_fail_000bcb00)\n                            (PTR_s_Server_sent_command_exit_status___000bc188 + -0x4a7c,\n                             PTR_s_Server_sent_command_exit_status___000bc188 + -0x4fb0,0x628,\n                             PTR_s_Server_sent_command_exit_status___000bc188 + -0x45f0);\n          return uVar3;\n        }\n        (*(code *)PTR_memcpy_000bccdc)(param_1,local_20);\n        safefree(local_20);\n      }\n      param_2 = PTR_DAT_000bc178;\n      puVar1 = PTR_DAT_000bc178 + -0x324c;\n      uint64_add32(&local_30,*(undefined4 *)(PTR_DAT_000bc178 + -0x324c),\n                   *(undefined4 *)(PTR_DAT_000bc178 + -0x3248),local_24);\n      *(undefined4 *)(param_2 + -0x324c) = local_30;\n      *(undefined4 *)(param_2 + -0x3248) = local_2c;\n      uVar3 = local_24;\n    }" ({ "{") (expression_statement "iVar2 = xfer_download_data(*(undefined4 *)(PTR_DAT_000bc178 + -0x3244),&local_20,&local_24);" (assignment_expression "iVar2 = xfer_download_data(*(undefined4 *)(PTR_DAT_000bc178 + -0x3244),&local_20,&local_24)" (identifier "iVar2") (= "=") (call_expression "xfer_download_data(*(undefined4 *)(PTR_DAT_000bc178 + -0x3244),&local_20,&local_24)" (identifier "xfer_download_data") (argument_list "(*(undefined4 *)(PTR_DAT_000bc178 + -0x3244),&local_20,&local_24)" (( "(") (pointer_expression "*(undefined4 *)(PTR_DAT_000bc178 + -0x3244)" (* "*") (cast_expression "(undefined4 *)(PTR_DAT_000bc178 + -0x3244)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(PTR_DAT_000bc178 + -0x3244)" (( "(") (binary_expression "PTR_DAT_000bc178 + -0x3244" (identifier "PTR_DAT_000bc178") (+ "+") (number_literal "-0x3244")) () ")")))) (, ",") (pointer_expression "&local_20" (& "&") (identifier "local_20")) (, ",") (pointer_expression "&local_24" (& "&") (identifier "local_24")) () ")")))) (; ";")) (if_statement "if (iVar2 == 0) {\n        local_24 = 0;\n      }\n      else {\n        param_2 = (undefined *)(uint)((int)param_2 < (int)local_24);\n        if ((int)local_24 < 1) {\n          FUN_00027ff8(*(undefined4 *)PTR_stderr_000bccf0,\n                       PTR_s_Server_sent_command_exit_status___000bc188 + -0x4a9c);\n          *(int *)(PTR_DAT_000bc178 + -0x31e0) = *(int *)(PTR_DAT_000bc178 + -0x31e0) + 1;\n          safefree(local_20);\n          uVar3 = 0xffffffff;\n          goto LAB_0002d148;\n        }\n        if (param_2 != (undefined *)0x0) {\n          uVar3 = (*(code *)PTR___assert_fail_000bcb00)\n                            (PTR_s_Server_sent_command_exit_status___000bc188 + -0x4a7c,\n                             PTR_s_Server_sent_command_exit_status___000bc188 + -0x4fb0,0x628,\n                             PTR_s_Server_sent_command_exit_status___000bc188 + -0x45f0);\n          return uVar3;\n        }\n        (*(code *)PTR_memcpy_000bccdc)(param_1,local_20);\n        safefree(local_20);\n      }" (if "if") (parenthesized_expression "(iVar2 == 0)" (( "(") (binary_expression "iVar2 == 0" (identifier "iVar2") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n        local_24 = 0;\n      }" ({ "{") (expression_statement "local_24 = 0;" (assignment_expression "local_24 = 0" (identifier "local_24") (= "=") (number_literal "0")) (; ";")) (} "}")) (else_clause "else {\n        param_2 = (undefined *)(uint)((int)param_2 < (int)local_24);\n        if ((int)local_24 < 1) {\n          FUN_00027ff8(*(undefined4 *)PTR_stderr_000bccf0,\n                       PTR_s_Server_sent_command_exit_status___000bc188 + -0x4a9c);\n          *(int *)(PTR_DAT_000bc178 + -0x31e0) = *(int *)(PTR_DAT_000bc178 + -0x31e0) + 1;\n          safefree(local_20);\n          uVar3 = 0xffffffff;\n          goto LAB_0002d148;\n        }\n        if (param_2 != (undefined *)0x0) {\n          uVar3 = (*(code *)PTR___assert_fail_000bcb00)\n                            (PTR_s_Server_sent_command_exit_status___000bc188 + -0x4a7c,\n                             PTR_s_Server_sent_command_exit_status___000bc188 + -0x4fb0,0x628,\n                             PTR_s_Server_sent_command_exit_status___000bc188 + -0x45f0);\n          return uVar3;\n        }\n        (*(code *)PTR_memcpy_000bccdc)(param_1,local_20);\n        safefree(local_20);\n      }" (else "else") (compound_statement "{\n        param_2 = (undefined *)(uint)((int)param_2 < (int)local_24);\n        if ((int)local_24 < 1) {\n          FUN_00027ff8(*(undefined4 *)PTR_stderr_000bccf0,\n                       PTR_s_Server_sent_command_exit_status___000bc188 + -0x4a9c);\n          *(int *)(PTR_DAT_000bc178 + -0x31e0) = *(int *)(PTR_DAT_000bc178 + -0x31e0) + 1;\n          safefree(local_20);\n          uVar3 = 0xffffffff;\n          goto LAB_0002d148;\n        }\n        if (param_2 != (undefined *)0x0) {\n          uVar3 = (*(code *)PTR___assert_fail_000bcb00)\n                            (PTR_s_Server_sent_command_exit_status___000bc188 + -0x4a7c,\n                             PTR_s_Server_sent_command_exit_status___000bc188 + -0x4fb0,0x628,\n                             PTR_s_Server_sent_command_exit_status___000bc188 + -0x45f0);\n          return uVar3;\n        }\n        (*(code *)PTR_memcpy_000bccdc)(param_1,local_20);\n        safefree(local_20);\n      }" ({ "{") (expression_statement "param_2 = (undefined *)(uint)((int)param_2 < (int)local_24);" (assignment_expression "param_2 = (undefined *)(uint)((int)param_2 < (int)local_24)" (identifier "param_2") (= "=") (cast_expression "(undefined *)(uint)((int)param_2 < (int)local_24)" (( "(") (type_descriptor "undefined *" (type_identifier "undefined") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "(uint)((int)param_2 < (int)local_24)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "((int)param_2 < (int)local_24)" (( "(") (binary_expression "(int)param_2 < (int)local_24" (cast_expression "(int)param_2" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "param_2")) (< "<") (cast_expression "(int)local_24" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_24"))) () ")"))))) (; ";")) (if_statement "if ((int)local_24 < 1) {\n          FUN_00027ff8(*(undefined4 *)PTR_stderr_000bccf0,\n                       PTR_s_Server_sent_command_exit_status___000bc188 + -0x4a9c);\n          *(int *)(PTR_DAT_000bc178 + -0x31e0) = *(int *)(PTR_DAT_000bc178 + -0x31e0) + 1;\n          safefree(local_20);\n          uVar3 = 0xffffffff;\n          goto LAB_0002d148;\n        }" (if "if") (parenthesized_expression "((int)local_24 < 1)" (( "(") (binary_expression "(int)local_24 < 1" (cast_expression "(int)local_24" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_24")) (< "<") (number_literal "1")) () ")")) (compound_statement "{\n          FUN_00027ff8(*(undefined4 *)PTR_stderr_000bccf0,\n                       PTR_s_Server_sent_command_exit_status___000bc188 + -0x4a9c);\n          *(int *)(PTR_DAT_000bc178 + -0x31e0) = *(int *)(PTR_DAT_000bc178 + -0x31e0) + 1;\n          safefree(local_20);\n          uVar3 = 0xffffffff;\n          goto LAB_0002d148;\n        }" ({ "{") (expression_statement "FUN_00027ff8(*(undefined4 *)PTR_stderr_000bccf0,\n                       PTR_s_Server_sent_command_exit_status___000bc188 + -0x4a9c);" (call_expression "FUN_00027ff8(*(undefined4 *)PTR_stderr_000bccf0,\n                       PTR_s_Server_sent_command_exit_status___000bc188 + -0x4a9c)" (identifier "FUN_00027ff8") (argument_list "(*(undefined4 *)PTR_stderr_000bccf0,\n                       PTR_s_Server_sent_command_exit_status___000bc188 + -0x4a9c)" (( "(") (pointer_expression "*(undefined4 *)PTR_stderr_000bccf0" (* "*") (cast_expression "(undefined4 *)PTR_stderr_000bccf0" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_stderr_000bccf0"))) (, ",") (binary_expression "PTR_s_Server_sent_command_exit_status___000bc188 + -0x4a9c" (identifier "PTR_s_Server_sent_command_exit_status___000bc188") (+ "+") (number_literal "-0x4a9c")) () ")"))) (; ";")) (expression_statement "*(int *)(PTR_DAT_000bc178 + -0x31e0) = *(int *)(PTR_DAT_000bc178 + -0x31e0) + 1;" (assignment_expression "*(int *)(PTR_DAT_000bc178 + -0x31e0) = *(int *)(PTR_DAT_000bc178 + -0x31e0) + 1" (pointer_expression "*(int *)(PTR_DAT_000bc178 + -0x31e0)" (* "*") (cast_expression "(int *)(PTR_DAT_000bc178 + -0x31e0)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(PTR_DAT_000bc178 + -0x31e0)" (( "(") (binary_expression "PTR_DAT_000bc178 + -0x31e0" (identifier "PTR_DAT_000bc178") (+ "+") (number_literal "-0x31e0")) () ")")))) (= "=") (binary_expression "*(int *)(PTR_DAT_000bc178 + -0x31e0) + 1" (pointer_expression "*(int *)(PTR_DAT_000bc178 + -0x31e0)" (* "*") (cast_expression "(int *)(PTR_DAT_000bc178 + -0x31e0)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(PTR_DAT_000bc178 + -0x31e0)" (( "(") (binary_expression "PTR_DAT_000bc178 + -0x31e0" (identifier "PTR_DAT_000bc178") (+ "+") (number_literal "-0x31e0")) () ")")))) (+ "+") (number_literal "1"))) (; ";")) (expression_statement "safefree(local_20);" (call_expression "safefree(local_20)" (identifier "safefree") (argument_list "(local_20)" (( "(") (identifier "local_20") () ")"))) (; ";")) (expression_statement "uVar3 = 0xffffffff;" (assignment_expression "uVar3 = 0xffffffff" (identifier "uVar3") (= "=") (number_literal "0xffffffff")) (; ";")) (goto_statement "goto LAB_0002d148;" (goto "goto") (statement_identifier "LAB_0002d148") (; ";")) (} "}"))) (if_statement "if (param_2 != (undefined *)0x0) {\n          uVar3 = (*(code *)PTR___assert_fail_000bcb00)\n                            (PTR_s_Server_sent_command_exit_status___000bc188 + -0x4a7c,\n                             PTR_s_Server_sent_command_exit_status___000bc188 + -0x4fb0,0x628,\n                             PTR_s_Server_sent_command_exit_status___000bc188 + -0x45f0);\n          return uVar3;\n        }" (if "if") (parenthesized_expression "(param_2 != (undefined *)0x0)" (( "(") (binary_expression "param_2 != (undefined *)0x0" (identifier "param_2") (!= "!=") (cast_expression "(undefined *)0x0" (( "(") (type_descriptor "undefined *" (type_identifier "undefined") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n          uVar3 = (*(code *)PTR___assert_fail_000bcb00)\n                            (PTR_s_Server_sent_command_exit_status___000bc188 + -0x4a7c,\n                             PTR_s_Server_sent_command_exit_status___000bc188 + -0x4fb0,0x628,\n                             PTR_s_Server_sent_command_exit_status___000bc188 + -0x45f0);\n          return uVar3;\n        }" ({ "{") (expression_statement "uVar3 = (*(code *)PTR___assert_fail_000bcb00)\n                            (PTR_s_Server_sent_command_exit_status___000bc188 + -0x4a7c,\n                             PTR_s_Server_sent_command_exit_status___000bc188 + -0x4fb0,0x628,\n                             PTR_s_Server_sent_command_exit_status___000bc188 + -0x45f0);" (assignment_expression "uVar3 = (*(code *)PTR___assert_fail_000bcb00)\n                            (PTR_s_Server_sent_command_exit_status___000bc188 + -0x4a7c,\n                             PTR_s_Server_sent_command_exit_status___000bc188 + -0x4fb0,0x628,\n                             PTR_s_Server_sent_command_exit_status___000bc188 + -0x45f0)" (identifier "uVar3") (= "=") (call_expression "(*(code *)PTR___assert_fail_000bcb00)\n                            (PTR_s_Server_sent_command_exit_status___000bc188 + -0x4a7c,\n                             PTR_s_Server_sent_command_exit_status___000bc188 + -0x4fb0,0x628,\n                             PTR_s_Server_sent_command_exit_status___000bc188 + -0x45f0)" (parenthesized_expression "(*(code *)PTR___assert_fail_000bcb00)" (( "(") (pointer_expression "*(code *)PTR___assert_fail_000bcb00" (* "*") (cast_expression "(code *)PTR___assert_fail_000bcb00" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR___assert_fail_000bcb00"))) () ")")) (argument_list "(PTR_s_Server_sent_command_exit_status___000bc188 + -0x4a7c,\n                             PTR_s_Server_sent_command_exit_status___000bc188 + -0x4fb0,0x628,\n                             PTR_s_Server_sent_command_exit_status___000bc188 + -0x45f0)" (( "(") (binary_expression "PTR_s_Server_sent_command_exit_status___000bc188 + -0x4a7c" (identifier "PTR_s_Server_sent_command_exit_status___000bc188") (+ "+") (number_literal "-0x4a7c")) (, ",") (binary_expression "PTR_s_Server_sent_command_exit_status___000bc188 + -0x4fb0" (identifier "PTR_s_Server_sent_command_exit_status___000bc188") (+ "+") (number_literal "-0x4fb0")) (, ",") (number_literal "0x628") (, ",") (binary_expression "PTR_s_Server_sent_command_exit_status___000bc188 + -0x45f0" (identifier "PTR_s_Server_sent_command_exit_status___000bc188") (+ "+") (number_literal "-0x45f0")) () ")")))) (; ";")) (return_statement "return uVar3;" (return "return") (identifier "uVar3") (; ";")) (} "}"))) (expression_statement "(*(code *)PTR_memcpy_000bccdc)(param_1,local_20);" (call_expression "(*(code *)PTR_memcpy_000bccdc)(param_1,local_20)" (parenthesized_expression "(*(code *)PTR_memcpy_000bccdc)" (( "(") (pointer_expression "*(code *)PTR_memcpy_000bccdc" (* "*") (cast_expression "(code *)PTR_memcpy_000bccdc" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_memcpy_000bccdc"))) () ")")) (argument_list "(param_1,local_20)" (( "(") (identifier "param_1") (, ",") (identifier "local_20") () ")"))) (; ";")) (expression_statement "safefree(local_20);" (call_expression "safefree(local_20)" (identifier "safefree") (argument_list "(local_20)" (( "(") (identifier "local_20") () ")"))) (; ";")) (} "}")))) (expression_statement "param_2 = PTR_DAT_000bc178;" (assignment_expression "param_2 = PTR_DAT_000bc178" (identifier "param_2") (= "=") (identifier "PTR_DAT_000bc178")) (; ";")) (expression_statement "puVar1 = PTR_DAT_000bc178 + -0x324c;" (assignment_expression "puVar1 = PTR_DAT_000bc178 + -0x324c" (identifier "puVar1") (= "=") (binary_expression "PTR_DAT_000bc178 + -0x324c" (identifier "PTR_DAT_000bc178") (+ "+") (number_literal "-0x324c"))) (; ";")) (expression_statement "uint64_add32(&local_30,*(undefined4 *)(PTR_DAT_000bc178 + -0x324c),\n                   *(undefined4 *)(PTR_DAT_000bc178 + -0x3248),local_24);" (call_expression "uint64_add32(&local_30,*(undefined4 *)(PTR_DAT_000bc178 + -0x324c),\n                   *(undefined4 *)(PTR_DAT_000bc178 + -0x3248),local_24)" (identifier "uint64_add32") (argument_list "(&local_30,*(undefined4 *)(PTR_DAT_000bc178 + -0x324c),\n                   *(undefined4 *)(PTR_DAT_000bc178 + -0x3248),local_24)" (( "(") (pointer_expression "&local_30" (& "&") (identifier "local_30")) (, ",") (pointer_expression "*(undefined4 *)(PTR_DAT_000bc178 + -0x324c)" (* "*") (cast_expression "(undefined4 *)(PTR_DAT_000bc178 + -0x324c)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(PTR_DAT_000bc178 + -0x324c)" (( "(") (binary_expression "PTR_DAT_000bc178 + -0x324c" (identifier "PTR_DAT_000bc178") (+ "+") (number_literal "-0x324c")) () ")")))) (, ",") (pointer_expression "*(undefined4 *)(PTR_DAT_000bc178 + -0x3248)" (* "*") (cast_expression "(undefined4 *)(PTR_DAT_000bc178 + -0x3248)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(PTR_DAT_000bc178 + -0x3248)" (( "(") (binary_expression "PTR_DAT_000bc178 + -0x3248" (identifier "PTR_DAT_000bc178") (+ "+") (number_literal "-0x3248")) () ")")))) (, ",") (identifier "local_24") () ")"))) (; ";")) (expression_statement "*(undefined4 *)(param_2 + -0x324c) = local_30;" (assignment_expression "*(undefined4 *)(param_2 + -0x324c) = local_30" (pointer_expression "*(undefined4 *)(param_2 + -0x324c)" (* "*") (cast_expression "(undefined4 *)(param_2 + -0x324c)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_2 + -0x324c)" (( "(") (binary_expression "param_2 + -0x324c" (identifier "param_2") (+ "+") (number_literal "-0x324c")) () ")")))) (= "=") (identifier "local_30")) (; ";")) (expression_statement "*(undefined4 *)(param_2 + -0x3248) = local_2c;" (assignment_expression "*(undefined4 *)(param_2 + -0x3248) = local_2c" (pointer_expression "*(undefined4 *)(param_2 + -0x3248)" (* "*") (cast_expression "(undefined4 *)(param_2 + -0x3248)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_2 + -0x3248)" (( "(") (binary_expression "param_2 + -0x3248" (identifier "param_2") (+ "+") (number_literal "-0x3248")) () ")")))) (= "=") (identifier "local_2c")) (; ";")) (expression_statement "uVar3 = local_24;" (assignment_expression "uVar3 = local_24" (identifier "uVar3") (= "=") (identifier "local_24")) (; ";")) (} "}")))) (} "}")))) (labeled_statement "LAB_0002d148:\n  if (local_1c == *(int *)PTR___stack_chk_guard_000bccd8) {\n    return uVar3;\n  }" (statement_identifier "LAB_0002d148") (: ":") (if_statement "if (local_1c == *(int *)PTR___stack_chk_guard_000bccd8) {\n    return uVar3;\n  }" (if "if") (parenthesized_expression "(local_1c == *(int *)PTR___stack_chk_guard_000bccd8)" (( "(") (binary_expression "local_1c == *(int *)PTR___stack_chk_guard_000bccd8" (identifier "local_1c") (== "==") (pointer_expression "*(int *)PTR___stack_chk_guard_000bccd8" (* "*") (cast_expression "(int *)PTR___stack_chk_guard_000bccd8" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR___stack_chk_guard_000bccd8")))) () ")")) (compound_statement "{\n    return uVar3;\n  }" ({ "{") (return_statement "return uVar3;" (return "return") (identifier "uVar3") (; ";")) (} "}")))) (expression_statement "puVar5 = PTR___stack_chk_fail_000bccb0;" (assignment_expression "puVar5 = PTR___stack_chk_fail_000bccb0" (identifier "puVar5") (= "=") (identifier "PTR___stack_chk_fail_000bccb0")) (; ";")) (expression_statement "(*(code *)PTR___stack_chk_fail_000bccb0)();" (call_expression "(*(code *)PTR___stack_chk_fail_000bccb0)()" (parenthesized_expression "(*(code *)PTR___stack_chk_fail_000bccb0)" (( "(") (pointer_expression "*(code *)PTR___stack_chk_fail_000bccb0" (* "*") (cast_expression "(code *)PTR___stack_chk_fail_000bccb0" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR___stack_chk_fail_000bccb0"))) () ")")) (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "pcStack_64 = (char *)**(undefined4 **)(puVar5 + 0x8fa44);" (assignment_expression "pcStack_64 = (char *)**(undefined4 **)(puVar5 + 0x8fa44)" (identifier "pcStack_64") (= "=") (cast_expression "(char *)**(undefined4 **)(puVar5 + 0x8fa44)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (pointer_expression "**(undefined4 **)(puVar5 + 0x8fa44)" (* "*") (pointer_expression "*(undefined4 **)(puVar5 + 0x8fa44)" (* "*") (cast_expression "(undefined4 **)(puVar5 + 0x8fa44)" (( "(") (type_descriptor "undefined4 **" (type_identifier "undefined4") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar5 + 0x8fa44)" (( "(") (binary_expression "puVar5 + 0x8fa44" (identifier "puVar5") (+ "+") (number_literal "0x8fa44")) () ")"))))))) (; ";")) (expression_statement "puStack_60 = param_2;" (assignment_expression "puStack_60 = param_2" (identifier "puStack_60") (= "=") (identifier "param_2")) (; ";")) (expression_statement "puStack_5c = puVar1;" (assignment_expression "puStack_5c = puVar1" (identifier "puStack_5c") (= "=") (identifier "puVar1")) (; ";")) (expression_statement "puStack_58 = param_1;" (assignment_expression "puStack_58 = param_1" (identifier "puStack_58") (= "=") (identifier "param_1")) (; ";")) (expression_statement "puStack_54 = unaff_s3;" (assignment_expression "puStack_54 = unaff_s3" (identifier "puStack_54") (= "=") (identifier "unaff_s3")) (; ";")) (if_statement "if (*(int *)(*(int *)(puVar5 + 0x8eee4) + -0x31ec) == 0) {\n    puVar14 = (undefined *)(*(int *)(puVar5 + 0x8eef4) + -0x17dc);\n    (**(code **)(*(int *)(*(int *)(puVar5 + 0x8eee4) + -0x31f4) + 0xc))\n              (*(undefined4 *)(*(int *)(puVar5 + 0x8eee4) + -0x31f8),puVar14,1);\n    uVar3 = FUN_00028400();\n  }\n  else {\n    xfer_set_error(*(undefined4 *)(*(int *)(puVar5 + 0x8eee4) + -0x3244));\n    iVar2 = *(int *)(puVar5 + 0x8eee4);\n    unaff_s4 = auStack_68;\n    unaff_s3 = &uStack_6c;\n    while (iVar24 = xfer_done(*(undefined4 *)(iVar2 + -0x3244)), iVar24 == 0) {\n      param_1 = (undefined *)sftp_recv();\n      puVar1 = (undefined *)xfer_download_gotpkt(*(undefined4 *)(iVar2 + -0x3244),param_1);\n      if ((int)puVar1 < 1) {\n        param_2 = (undefined *)**(undefined4 **)(puVar5 + 0x8fa5c);\n        uVar7 = fxp_error();\n        puVar14 = (undefined *)(*(int *)(puVar5 + 0x8eef4) + -0x4abc);\n        FUN_00027ff8(param_2,puVar14,uVar7);\n        if (puVar1 == (undefined *)0x80000000) {\n          safefree(param_1);\n          iVar2 = *(int *)(puVar5 + 0x8eee4);\n        }\n        else {\n          iVar2 = *(int *)(puVar5 + 0x8eee4);\n        }\n        *(int *)(iVar2 + -0x31e0) = *(int *)(iVar2 + -0x31e0) + 1;\n        uVar3 = 0xffffffff;\n        goto LAB_0002d318;\n      }\n      iVar24 = xfer_download_data(*(undefined4 *)(iVar2 + -0x3244),unaff_s3,unaff_s4);\n      if (iVar24 != 0) {\n        safefree(uStack_6c);\n      }\n    }\n    xfer_cleanup(*(undefined4 *)(*(int *)(puVar5 + 0x8eee4) + -0x3244));\n    param_2 = (undefined *)fxp_close_send(*(undefined4 *)(*(int *)(puVar5 + 0x8eee4) + -0x3240));\n    uVar7 = sftp_wait_for_reply(param_2);\n    puVar14 = param_2;\n    fxp_close_recv(uVar7);\n    uVar3 = 0;\n  }" (if "if") (parenthesized_expression "(*(int *)(*(int *)(puVar5 + 0x8eee4) + -0x31ec) == 0)" (( "(") (binary_expression "*(int *)(*(int *)(puVar5 + 0x8eee4) + -0x31ec) == 0" (pointer_expression "*(int *)(*(int *)(puVar5 + 0x8eee4) + -0x31ec)" (* "*") (cast_expression "(int *)(*(int *)(puVar5 + 0x8eee4) + -0x31ec)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(puVar5 + 0x8eee4) + -0x31ec)" (( "(") (binary_expression "*(int *)(puVar5 + 0x8eee4) + -0x31ec" (pointer_expression "*(int *)(puVar5 + 0x8eee4)" (* "*") (cast_expression "(int *)(puVar5 + 0x8eee4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar5 + 0x8eee4)" (( "(") (binary_expression "puVar5 + 0x8eee4" (identifier "puVar5") (+ "+") (number_literal "0x8eee4")) () ")")))) (+ "+") (number_literal "-0x31ec")) () ")")))) (== "==") (number_literal "0")) () ")")) (compound_statement "{\n    puVar14 = (undefined *)(*(int *)(puVar5 + 0x8eef4) + -0x17dc);\n    (**(code **)(*(int *)(*(int *)(puVar5 + 0x8eee4) + -0x31f4) + 0xc))\n              (*(undefined4 *)(*(int *)(puVar5 + 0x8eee4) + -0x31f8),puVar14,1);\n    uVar3 = FUN_00028400();\n  }" ({ "{") (expression_statement "puVar14 = (undefined *)(*(int *)(puVar5 + 0x8eef4) + -0x17dc);" (assignment_expression "puVar14 = (undefined *)(*(int *)(puVar5 + 0x8eef4) + -0x17dc)" (identifier "puVar14") (= "=") (cast_expression "(undefined *)(*(int *)(puVar5 + 0x8eef4) + -0x17dc)" (( "(") (type_descriptor "undefined *" (type_identifier "undefined") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(puVar5 + 0x8eef4) + -0x17dc)" (( "(") (binary_expression "*(int *)(puVar5 + 0x8eef4) + -0x17dc" (pointer_expression "*(int *)(puVar5 + 0x8eef4)" (* "*") (cast_expression "(int *)(puVar5 + 0x8eef4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar5 + 0x8eef4)" (( "(") (binary_expression "puVar5 + 0x8eef4" (identifier "puVar5") (+ "+") (number_literal "0x8eef4")) () ")")))) (+ "+") (number_literal "-0x17dc")) () ")")))) (; ";")) (expression_statement "(**(code **)(*(int *)(*(int *)(puVar5 + 0x8eee4) + -0x31f4) + 0xc))\n              (*(undefined4 *)(*(int *)(puVar5 + 0x8eee4) + -0x31f8),puVar14,1);" (call_expression "(**(code **)(*(int *)(*(int *)(puVar5 + 0x8eee4) + -0x31f4) + 0xc))\n              (*(undefined4 *)(*(int *)(puVar5 + 0x8eee4) + -0x31f8),puVar14,1)" (parenthesized_expression "(**(code **)(*(int *)(*(int *)(puVar5 + 0x8eee4) + -0x31f4) + 0xc))" (( "(") (pointer_expression "**(code **)(*(int *)(*(int *)(puVar5 + 0x8eee4) + -0x31f4) + 0xc)" (* "*") (pointer_expression "*(code **)(*(int *)(*(int *)(puVar5 + 0x8eee4) + -0x31f4) + 0xc)" (* "*") (cast_expression "(code **)(*(int *)(*(int *)(puVar5 + 0x8eee4) + -0x31f4) + 0xc)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(*(int *)(*(int *)(puVar5 + 0x8eee4) + -0x31f4) + 0xc)" (( "(") (binary_expression "*(int *)(*(int *)(puVar5 + 0x8eee4) + -0x31f4) + 0xc" (pointer_expression "*(int *)(*(int *)(puVar5 + 0x8eee4) + -0x31f4)" (* "*") (cast_expression "(int *)(*(int *)(puVar5 + 0x8eee4) + -0x31f4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(puVar5 + 0x8eee4) + -0x31f4)" (( "(") (binary_expression "*(int *)(puVar5 + 0x8eee4) + -0x31f4" (pointer_expression "*(int *)(puVar5 + 0x8eee4)" (* "*") (cast_expression "(int *)(puVar5 + 0x8eee4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar5 + 0x8eee4)" (( "(") (binary_expression "puVar5 + 0x8eee4" (identifier "puVar5") (+ "+") (number_literal "0x8eee4")) () ")")))) (+ "+") (number_literal "-0x31f4")) () ")")))) (+ "+") (number_literal "0xc")) () ")"))))) () ")")) (argument_list "(*(undefined4 *)(*(int *)(puVar5 + 0x8eee4) + -0x31f8),puVar14,1)" (( "(") (pointer_expression "*(undefined4 *)(*(int *)(puVar5 + 0x8eee4) + -0x31f8)" (* "*") (cast_expression "(undefined4 *)(*(int *)(puVar5 + 0x8eee4) + -0x31f8)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(puVar5 + 0x8eee4) + -0x31f8)" (( "(") (binary_expression "*(int *)(puVar5 + 0x8eee4) + -0x31f8" (pointer_expression "*(int *)(puVar5 + 0x8eee4)" (* "*") (cast_expression "(int *)(puVar5 + 0x8eee4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar5 + 0x8eee4)" (( "(") (binary_expression "puVar5 + 0x8eee4" (identifier "puVar5") (+ "+") (number_literal "0x8eee4")) () ")")))) (+ "+") (number_literal "-0x31f8")) () ")")))) (, ",") (identifier "puVar14") (, ",") (number_literal "1") () ")"))) (; ";")) (expression_statement "uVar3 = FUN_00028400();" (assignment_expression "uVar3 = FUN_00028400()" (identifier "uVar3") (= "=") (call_expression "FUN_00028400()" (identifier "FUN_00028400") (argument_list "()" (( "(") () ")")))) (; ";")) (} "}")) (else_clause "else {\n    xfer_set_error(*(undefined4 *)(*(int *)(puVar5 + 0x8eee4) + -0x3244));\n    iVar2 = *(int *)(puVar5 + 0x8eee4);\n    unaff_s4 = auStack_68;\n    unaff_s3 = &uStack_6c;\n    while (iVar24 = xfer_done(*(undefined4 *)(iVar2 + -0x3244)), iVar24 == 0) {\n      param_1 = (undefined *)sftp_recv();\n      puVar1 = (undefined *)xfer_download_gotpkt(*(undefined4 *)(iVar2 + -0x3244),param_1);\n      if ((int)puVar1 < 1) {\n        param_2 = (undefined *)**(undefined4 **)(puVar5 + 0x8fa5c);\n        uVar7 = fxp_error();\n        puVar14 = (undefined *)(*(int *)(puVar5 + 0x8eef4) + -0x4abc);\n        FUN_00027ff8(param_2,puVar14,uVar7);\n        if (puVar1 == (undefined *)0x80000000) {\n          safefree(param_1);\n          iVar2 = *(int *)(puVar5 + 0x8eee4);\n        }\n        else {\n          iVar2 = *(int *)(puVar5 + 0x8eee4);\n        }\n        *(int *)(iVar2 + -0x31e0) = *(int *)(iVar2 + -0x31e0) + 1;\n        uVar3 = 0xffffffff;\n        goto LAB_0002d318;\n      }\n      iVar24 = xfer_download_data(*(undefined4 *)(iVar2 + -0x3244),unaff_s3,unaff_s4);\n      if (iVar24 != 0) {\n        safefree(uStack_6c);\n      }\n    }\n    xfer_cleanup(*(undefined4 *)(*(int *)(puVar5 + 0x8eee4) + -0x3244));\n    param_2 = (undefined *)fxp_close_send(*(undefined4 *)(*(int *)(puVar5 + 0x8eee4) + -0x3240));\n    uVar7 = sftp_wait_for_reply(param_2);\n    puVar14 = param_2;\n    fxp_close_recv(uVar7);\n    uVar3 = 0;\n  }" (else "else") (compound_statement "{\n    xfer_set_error(*(undefined4 *)(*(int *)(puVar5 + 0x8eee4) + -0x3244));\n    iVar2 = *(int *)(puVar5 + 0x8eee4);\n    unaff_s4 = auStack_68;\n    unaff_s3 = &uStack_6c;\n    while (iVar24 = xfer_done(*(undefined4 *)(iVar2 + -0x3244)), iVar24 == 0) {\n      param_1 = (undefined *)sftp_recv();\n      puVar1 = (undefined *)xfer_download_gotpkt(*(undefined4 *)(iVar2 + -0x3244),param_1);\n      if ((int)puVar1 < 1) {\n        param_2 = (undefined *)**(undefined4 **)(puVar5 + 0x8fa5c);\n        uVar7 = fxp_error();\n        puVar14 = (undefined *)(*(int *)(puVar5 + 0x8eef4) + -0x4abc);\n        FUN_00027ff8(param_2,puVar14,uVar7);\n        if (puVar1 == (undefined *)0x80000000) {\n          safefree(param_1);\n          iVar2 = *(int *)(puVar5 + 0x8eee4);\n        }\n        else {\n          iVar2 = *(int *)(puVar5 + 0x8eee4);\n        }\n        *(int *)(iVar2 + -0x31e0) = *(int *)(iVar2 + -0x31e0) + 1;\n        uVar3 = 0xffffffff;\n        goto LAB_0002d318;\n      }\n      iVar24 = xfer_download_data(*(undefined4 *)(iVar2 + -0x3244),unaff_s3,unaff_s4);\n      if (iVar24 != 0) {\n        safefree(uStack_6c);\n      }\n    }\n    xfer_cleanup(*(undefined4 *)(*(int *)(puVar5 + 0x8eee4) + -0x3244));\n    param_2 = (undefined *)fxp_close_send(*(undefined4 *)(*(int *)(puVar5 + 0x8eee4) + -0x3240));\n    uVar7 = sftp_wait_for_reply(param_2);\n    puVar14 = param_2;\n    fxp_close_recv(uVar7);\n    uVar3 = 0;\n  }" ({ "{") (expression_statement "xfer_set_error(*(undefined4 *)(*(int *)(puVar5 + 0x8eee4) + -0x3244));" (call_expression "xfer_set_error(*(undefined4 *)(*(int *)(puVar5 + 0x8eee4) + -0x3244))" (identifier "xfer_set_error") (argument_list "(*(undefined4 *)(*(int *)(puVar5 + 0x8eee4) + -0x3244))" (( "(") (pointer_expression "*(undefined4 *)(*(int *)(puVar5 + 0x8eee4) + -0x3244)" (* "*") (cast_expression "(undefined4 *)(*(int *)(puVar5 + 0x8eee4) + -0x3244)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(puVar5 + 0x8eee4) + -0x3244)" (( "(") (binary_expression "*(int *)(puVar5 + 0x8eee4) + -0x3244" (pointer_expression "*(int *)(puVar5 + 0x8eee4)" (* "*") (cast_expression "(int *)(puVar5 + 0x8eee4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar5 + 0x8eee4)" (( "(") (binary_expression "puVar5 + 0x8eee4" (identifier "puVar5") (+ "+") (number_literal "0x8eee4")) () ")")))) (+ "+") (number_literal "-0x3244")) () ")")))) () ")"))) (; ";")) (expression_statement "iVar2 = *(int *)(puVar5 + 0x8eee4);" (assignment_expression "iVar2 = *(int *)(puVar5 + 0x8eee4)" (identifier "iVar2") (= "=") (pointer_expression "*(int *)(puVar5 + 0x8eee4)" (* "*") (cast_expression "(int *)(puVar5 + 0x8eee4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar5 + 0x8eee4)" (( "(") (binary_expression "puVar5 + 0x8eee4" (identifier "puVar5") (+ "+") (number_literal "0x8eee4")) () ")"))))) (; ";")) (expression_statement "unaff_s4 = auStack_68;" (assignment_expression "unaff_s4 = auStack_68" (identifier "unaff_s4") (= "=") (identifier "auStack_68")) (; ";")) (expression_statement "unaff_s3 = &uStack_6c;" (assignment_expression "unaff_s3 = &uStack_6c" (identifier "unaff_s3") (= "=") (pointer_expression "&uStack_6c" (& "&") (identifier "uStack_6c"))) (; ";")) (while_statement "while (iVar24 = xfer_done(*(undefined4 *)(iVar2 + -0x3244)), iVar24 == 0) {\n      param_1 = (undefined *)sftp_recv();\n      puVar1 = (undefined *)xfer_download_gotpkt(*(undefined4 *)(iVar2 + -0x3244),param_1);\n      if ((int)puVar1 < 1) {\n        param_2 = (undefined *)**(undefined4 **)(puVar5 + 0x8fa5c);\n        uVar7 = fxp_error();\n        puVar14 = (undefined *)(*(int *)(puVar5 + 0x8eef4) + -0x4abc);\n        FUN_00027ff8(param_2,puVar14,uVar7);\n        if (puVar1 == (undefined *)0x80000000) {\n          safefree(param_1);\n          iVar2 = *(int *)(puVar5 + 0x8eee4);\n        }\n        else {\n          iVar2 = *(int *)(puVar5 + 0x8eee4);\n        }\n        *(int *)(iVar2 + -0x31e0) = *(int *)(iVar2 + -0x31e0) + 1;\n        uVar3 = 0xffffffff;\n        goto LAB_0002d318;\n      }\n      iVar24 = xfer_download_data(*(undefined4 *)(iVar2 + -0x3244),unaff_s3,unaff_s4);\n      if (iVar24 != 0) {\n        safefree(uStack_6c);\n      }\n    }" (while "while") (parenthesized_expression "(iVar24 = xfer_done(*(undefined4 *)(iVar2 + -0x3244)), iVar24 == 0)" (( "(") (comma_expression "iVar24 = xfer_done(*(undefined4 *)(iVar2 + -0x3244)), iVar24 == 0" (assignment_expression "iVar24 = xfer_done(*(undefined4 *)(iVar2 + -0x3244))" (identifier "iVar24") (= "=") (call_expression "xfer_done(*(undefined4 *)(iVar2 + -0x3244))" (identifier "xfer_done") (argument_list "(*(undefined4 *)(iVar2 + -0x3244))" (( "(") (pointer_expression "*(undefined4 *)(iVar2 + -0x3244)" (* "*") (cast_expression "(undefined4 *)(iVar2 + -0x3244)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar2 + -0x3244)" (( "(") (binary_expression "iVar2 + -0x3244" (identifier "iVar2") (+ "+") (number_literal "-0x3244")) () ")")))) () ")")))) (, ",") (binary_expression "iVar24 == 0" (identifier "iVar24") (== "==") (number_literal "0"))) () ")")) (compound_statement "{\n      param_1 = (undefined *)sftp_recv();\n      puVar1 = (undefined *)xfer_download_gotpkt(*(undefined4 *)(iVar2 + -0x3244),param_1);\n      if ((int)puVar1 < 1) {\n        param_2 = (undefined *)**(undefined4 **)(puVar5 + 0x8fa5c);\n        uVar7 = fxp_error();\n        puVar14 = (undefined *)(*(int *)(puVar5 + 0x8eef4) + -0x4abc);\n        FUN_00027ff8(param_2,puVar14,uVar7);\n        if (puVar1 == (undefined *)0x80000000) {\n          safefree(param_1);\n          iVar2 = *(int *)(puVar5 + 0x8eee4);\n        }\n        else {\n          iVar2 = *(int *)(puVar5 + 0x8eee4);\n        }\n        *(int *)(iVar2 + -0x31e0) = *(int *)(iVar2 + -0x31e0) + 1;\n        uVar3 = 0xffffffff;\n        goto LAB_0002d318;\n      }\n      iVar24 = xfer_download_data(*(undefined4 *)(iVar2 + -0x3244),unaff_s3,unaff_s4);\n      if (iVar24 != 0) {\n        safefree(uStack_6c);\n      }\n    }" ({ "{") (expression_statement "param_1 = (undefined *)sftp_recv();" (assignment_expression "param_1 = (undefined *)sftp_recv()" (identifier "param_1") (= "=") (cast_expression "(undefined *)sftp_recv()" (( "(") (type_descriptor "undefined *" (type_identifier "undefined") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "sftp_recv()" (identifier "sftp_recv") (argument_list "()" (( "(") () ")"))))) (; ";")) (expression_statement "puVar1 = (undefined *)xfer_download_gotpkt(*(undefined4 *)(iVar2 + -0x3244),param_1);" (assignment_expression "puVar1 = (undefined *)xfer_download_gotpkt(*(undefined4 *)(iVar2 + -0x3244),param_1)" (identifier "puVar1") (= "=") (cast_expression "(undefined *)xfer_download_gotpkt(*(undefined4 *)(iVar2 + -0x3244),param_1)" (( "(") (type_descriptor "undefined *" (type_identifier "undefined") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "xfer_download_gotpkt(*(undefined4 *)(iVar2 + -0x3244),param_1)" (identifier "xfer_download_gotpkt") (argument_list "(*(undefined4 *)(iVar2 + -0x3244),param_1)" (( "(") (pointer_expression "*(undefined4 *)(iVar2 + -0x3244)" (* "*") (cast_expression "(undefined4 *)(iVar2 + -0x3244)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar2 + -0x3244)" (( "(") (binary_expression "iVar2 + -0x3244" (identifier "iVar2") (+ "+") (number_literal "-0x3244")) () ")")))) (, ",") (identifier "param_1") () ")"))))) (; ";")) (if_statement "if ((int)puVar1 < 1) {\n        param_2 = (undefined *)**(undefined4 **)(puVar5 + 0x8fa5c);\n        uVar7 = fxp_error();\n        puVar14 = (undefined *)(*(int *)(puVar5 + 0x8eef4) + -0x4abc);\n        FUN_00027ff8(param_2,puVar14,uVar7);\n        if (puVar1 == (undefined *)0x80000000) {\n          safefree(param_1);\n          iVar2 = *(int *)(puVar5 + 0x8eee4);\n        }\n        else {\n          iVar2 = *(int *)(puVar5 + 0x8eee4);\n        }\n        *(int *)(iVar2 + -0x31e0) = *(int *)(iVar2 + -0x31e0) + 1;\n        uVar3 = 0xffffffff;\n        goto LAB_0002d318;\n      }" (if "if") (parenthesized_expression "((int)puVar1 < 1)" (( "(") (binary_expression "(int)puVar1 < 1" (cast_expression "(int)puVar1" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "puVar1")) (< "<") (number_literal "1")) () ")")) (compound_statement "{\n        param_2 = (undefined *)**(undefined4 **)(puVar5 + 0x8fa5c);\n        uVar7 = fxp_error();\n        puVar14 = (undefined *)(*(int *)(puVar5 + 0x8eef4) + -0x4abc);\n        FUN_00027ff8(param_2,puVar14,uVar7);\n        if (puVar1 == (undefined *)0x80000000) {\n          safefree(param_1);\n          iVar2 = *(int *)(puVar5 + 0x8eee4);\n        }\n        else {\n          iVar2 = *(int *)(puVar5 + 0x8eee4);\n        }\n        *(int *)(iVar2 + -0x31e0) = *(int *)(iVar2 + -0x31e0) + 1;\n        uVar3 = 0xffffffff;\n        goto LAB_0002d318;\n      }" ({ "{") (expression_statement "param_2 = (undefined *)**(undefined4 **)(puVar5 + 0x8fa5c);" (assignment_expression "param_2 = (undefined *)**(undefined4 **)(puVar5 + 0x8fa5c)" (identifier "param_2") (= "=") (cast_expression "(undefined *)**(undefined4 **)(puVar5 + 0x8fa5c)" (( "(") (type_descriptor "undefined *" (type_identifier "undefined") (abstract_pointer_declarator "*" (* "*"))) () ")") (pointer_expression "**(undefined4 **)(puVar5 + 0x8fa5c)" (* "*") (pointer_expression "*(undefined4 **)(puVar5 + 0x8fa5c)" (* "*") (cast_expression "(undefined4 **)(puVar5 + 0x8fa5c)" (( "(") (type_descriptor "undefined4 **" (type_identifier "undefined4") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar5 + 0x8fa5c)" (( "(") (binary_expression "puVar5 + 0x8fa5c" (identifier "puVar5") (+ "+") (number_literal "0x8fa5c")) () ")"))))))) (; ";")) (expression_statement "uVar7 = fxp_error();" (assignment_expression "uVar7 = fxp_error()" (identifier "uVar7") (= "=") (call_expression "fxp_error()" (identifier "fxp_error") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "puVar14 = (undefined *)(*(int *)(puVar5 + 0x8eef4) + -0x4abc);" (assignment_expression "puVar14 = (undefined *)(*(int *)(puVar5 + 0x8eef4) + -0x4abc)" (identifier "puVar14") (= "=") (cast_expression "(undefined *)(*(int *)(puVar5 + 0x8eef4) + -0x4abc)" (( "(") (type_descriptor "undefined *" (type_identifier "undefined") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(puVar5 + 0x8eef4) + -0x4abc)" (( "(") (binary_expression "*(int *)(puVar5 + 0x8eef4) + -0x4abc" (pointer_expression "*(int *)(puVar5 + 0x8eef4)" (* "*") (cast_expression "(int *)(puVar5 + 0x8eef4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar5 + 0x8eef4)" (( "(") (binary_expression "puVar5 + 0x8eef4" (identifier "puVar5") (+ "+") (number_literal "0x8eef4")) () ")")))) (+ "+") (number_literal "-0x4abc")) () ")")))) (; ";")) (expression_statement "FUN_00027ff8(param_2,puVar14,uVar7);" (call_expression "FUN_00027ff8(param_2,puVar14,uVar7)" (identifier "FUN_00027ff8") (argument_list "(param_2,puVar14,uVar7)" (( "(") (identifier "param_2") (, ",") (identifier "puVar14") (, ",") (identifier "uVar7") () ")"))) (; ";")) (if_statement "if (puVar1 == (undefined *)0x80000000) {\n          safefree(param_1);\n          iVar2 = *(int *)(puVar5 + 0x8eee4);\n        }\n        else {\n          iVar2 = *(int *)(puVar5 + 0x8eee4);\n        }" (if "if") (parenthesized_expression "(puVar1 == (undefined *)0x80000000)" (( "(") (binary_expression "puVar1 == (undefined *)0x80000000" (identifier "puVar1") (== "==") (cast_expression "(undefined *)0x80000000" (( "(") (type_descriptor "undefined *" (type_identifier "undefined") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x80000000"))) () ")")) (compound_statement "{\n          safefree(param_1);\n          iVar2 = *(int *)(puVar5 + 0x8eee4);\n        }" ({ "{") (expression_statement "safefree(param_1);" (call_expression "safefree(param_1)" (identifier "safefree") (argument_list "(param_1)" (( "(") (identifier "param_1") () ")"))) (; ";")) (expression_statement "iVar2 = *(int *)(puVar5 + 0x8eee4);" (assignment_expression "iVar2 = *(int *)(puVar5 + 0x8eee4)" (identifier "iVar2") (= "=") (pointer_expression "*(int *)(puVar5 + 0x8eee4)" (* "*") (cast_expression "(int *)(puVar5 + 0x8eee4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar5 + 0x8eee4)" (( "(") (binary_expression "puVar5 + 0x8eee4" (identifier "puVar5") (+ "+") (number_literal "0x8eee4")) () ")"))))) (; ";")) (} "}")) (else_clause "else {\n          iVar2 = *(int *)(puVar5 + 0x8eee4);\n        }" (else "else") (compound_statement "{\n          iVar2 = *(int *)(puVar5 + 0x8eee4);\n        }" ({ "{") (expression_statement "iVar2 = *(int *)(puVar5 + 0x8eee4);" (assignment_expression "iVar2 = *(int *)(puVar5 + 0x8eee4)" (identifier "iVar2") (= "=") (pointer_expression "*(int *)(puVar5 + 0x8eee4)" (* "*") (cast_expression "(int *)(puVar5 + 0x8eee4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar5 + 0x8eee4)" (( "(") (binary_expression "puVar5 + 0x8eee4" (identifier "puVar5") (+ "+") (number_literal "0x8eee4")) () ")"))))) (; ";")) (} "}")))) (expression_statement "*(int *)(iVar2 + -0x31e0) = *(int *)(iVar2 + -0x31e0) + 1;" (assignment_expression "*(int *)(iVar2 + -0x31e0) = *(int *)(iVar2 + -0x31e0) + 1" (pointer_expression "*(int *)(iVar2 + -0x31e0)" (* "*") (cast_expression "(int *)(iVar2 + -0x31e0)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar2 + -0x31e0)" (( "(") (binary_expression "iVar2 + -0x31e0" (identifier "iVar2") (+ "+") (number_literal "-0x31e0")) () ")")))) (= "=") (binary_expression "*(int *)(iVar2 + -0x31e0) + 1" (pointer_expression "*(int *)(iVar2 + -0x31e0)" (* "*") (cast_expression "(int *)(iVar2 + -0x31e0)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar2 + -0x31e0)" (( "(") (binary_expression "iVar2 + -0x31e0" (identifier "iVar2") (+ "+") (number_literal "-0x31e0")) () ")")))) (+ "+") (number_literal "1"))) (; ";")) (expression_statement "uVar3 = 0xffffffff;" (assignment_expression "uVar3 = 0xffffffff" (identifier "uVar3") (= "=") (number_literal "0xffffffff")) (; ";")) (goto_statement "goto LAB_0002d318;" (goto "goto") (statement_identifier "LAB_0002d318") (; ";")) (} "}"))) (expression_statement "iVar24 = xfer_download_data(*(undefined4 *)(iVar2 + -0x3244),unaff_s3,unaff_s4);" (assignment_expression "iVar24 = xfer_download_data(*(undefined4 *)(iVar2 + -0x3244),unaff_s3,unaff_s4)" (identifier "iVar24") (= "=") (call_expression "xfer_download_data(*(undefined4 *)(iVar2 + -0x3244),unaff_s3,unaff_s4)" (identifier "xfer_download_data") (argument_list "(*(undefined4 *)(iVar2 + -0x3244),unaff_s3,unaff_s4)" (( "(") (pointer_expression "*(undefined4 *)(iVar2 + -0x3244)" (* "*") (cast_expression "(undefined4 *)(iVar2 + -0x3244)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar2 + -0x3244)" (( "(") (binary_expression "iVar2 + -0x3244" (identifier "iVar2") (+ "+") (number_literal "-0x3244")) () ")")))) (, ",") (identifier "unaff_s3") (, ",") (identifier "unaff_s4") () ")")))) (; ";")) (if_statement "if (iVar24 != 0) {\n        safefree(uStack_6c);\n      }" (if "if") (parenthesized_expression "(iVar24 != 0)" (( "(") (binary_expression "iVar24 != 0" (identifier "iVar24") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n        safefree(uStack_6c);\n      }" ({ "{") (expression_statement "safefree(uStack_6c);" (call_expression "safefree(uStack_6c)" (identifier "safefree") (argument_list "(uStack_6c)" (( "(") (identifier "uStack_6c") () ")"))) (; ";")) (} "}"))) (} "}"))) (expression_statement "xfer_cleanup(*(undefined4 *)(*(int *)(puVar5 + 0x8eee4) + -0x3244));" (call_expression "xfer_cleanup(*(undefined4 *)(*(int *)(puVar5 + 0x8eee4) + -0x3244))" (identifier "xfer_cleanup") (argument_list "(*(undefined4 *)(*(int *)(puVar5 + 0x8eee4) + -0x3244))" (( "(") (pointer_expression "*(undefined4 *)(*(int *)(puVar5 + 0x8eee4) + -0x3244)" (* "*") (cast_expression "(undefined4 *)(*(int *)(puVar5 + 0x8eee4) + -0x3244)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(puVar5 + 0x8eee4) + -0x3244)" (( "(") (binary_expression "*(int *)(puVar5 + 0x8eee4) + -0x3244" (pointer_expression "*(int *)(puVar5 + 0x8eee4)" (* "*") (cast_expression "(int *)(puVar5 + 0x8eee4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar5 + 0x8eee4)" (( "(") (binary_expression "puVar5 + 0x8eee4" (identifier "puVar5") (+ "+") (number_literal "0x8eee4")) () ")")))) (+ "+") (number_literal "-0x3244")) () ")")))) () ")"))) (; ";")) (expression_statement "param_2 = (undefined *)fxp_close_send(*(undefined4 *)(*(int *)(puVar5 + 0x8eee4) + -0x3240));" (assignment_expression "param_2 = (undefined *)fxp_close_send(*(undefined4 *)(*(int *)(puVar5 + 0x8eee4) + -0x3240))" (identifier "param_2") (= "=") (cast_expression "(undefined *)fxp_close_send(*(undefined4 *)(*(int *)(puVar5 + 0x8eee4) + -0x3240))" (( "(") (type_descriptor "undefined *" (type_identifier "undefined") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "fxp_close_send(*(undefined4 *)(*(int *)(puVar5 + 0x8eee4) + -0x3240))" (identifier "fxp_close_send") (argument_list "(*(undefined4 *)(*(int *)(puVar5 + 0x8eee4) + -0x3240))" (( "(") (pointer_expression "*(undefined4 *)(*(int *)(puVar5 + 0x8eee4) + -0x3240)" (* "*") (cast_expression "(undefined4 *)(*(int *)(puVar5 + 0x8eee4) + -0x3240)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(puVar5 + 0x8eee4) + -0x3240)" (( "(") (binary_expression "*(int *)(puVar5 + 0x8eee4) + -0x3240" (pointer_expression "*(int *)(puVar5 + 0x8eee4)" (* "*") (cast_expression "(int *)(puVar5 + 0x8eee4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar5 + 0x8eee4)" (( "(") (binary_expression "puVar5 + 0x8eee4" (identifier "puVar5") (+ "+") (number_literal "0x8eee4")) () ")")))) (+ "+") (number_literal "-0x3240")) () ")")))) () ")"))))) (; ";")) (expression_statement "uVar7 = sftp_wait_for_reply(param_2);" (assignment_expression "uVar7 = sftp_wait_for_reply(param_2)" (identifier "uVar7") (= "=") (call_expression "sftp_wait_for_reply(param_2)" (identifier "sftp_wait_for_reply") (argument_list "(param_2)" (( "(") (identifier "param_2") () ")")))) (; ";")) (expression_statement "puVar14 = param_2;" (assignment_expression "puVar14 = param_2" (identifier "puVar14") (= "=") (identifier "param_2")) (; ";")) (expression_statement "fxp_close_recv(uVar7);" (call_expression "fxp_close_recv(uVar7)" (identifier "fxp_close_recv") (argument_list "(uVar7)" (( "(") (identifier "uVar7") () ")"))) (; ";")) (expression_statement "uVar3 = 0;" (assignment_expression "uVar3 = 0" (identifier "uVar3") (= "=") (number_literal "0")) (; ";")) (} "}")))) (labeled_statement "LAB_0002d318:\n  if (pcStack_64 == (char *)**(undefined4 **)(puVar5 + 0x8fa44)) {\n    return uVar3;\n  }" (statement_identifier "LAB_0002d318") (: ":") (if_statement "if (pcStack_64 == (char *)**(undefined4 **)(puVar5 + 0x8fa44)) {\n    return uVar3;\n  }" (if "if") (parenthesized_expression "(pcStack_64 == (char *)**(undefined4 **)(puVar5 + 0x8fa44))" (( "(") (binary_expression "pcStack_64 == (char *)**(undefined4 **)(puVar5 + 0x8fa44)" (identifier "pcStack_64") (== "==") (cast_expression "(char *)**(undefined4 **)(puVar5 + 0x8fa44)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (pointer_expression "**(undefined4 **)(puVar5 + 0x8fa44)" (* "*") (pointer_expression "*(undefined4 **)(puVar5 + 0x8fa44)" (* "*") (cast_expression "(undefined4 **)(puVar5 + 0x8fa44)" (( "(") (type_descriptor "undefined4 **" (type_identifier "undefined4") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar5 + 0x8fa44)" (( "(") (binary_expression "puVar5 + 0x8fa44" (identifier "puVar5") (+ "+") (number_literal "0x8fa44")) () ")"))))))) () ")")) (compound_statement "{\n    return uVar3;\n  }" ({ "{") (return_statement "return uVar3;" (return "return") (identifier "uVar3") (; ";")) (} "}")))) (expression_statement "pcVar28 = *(code **)(puVar5 + 0x8fa1c);" (assignment_expression "pcVar28 = *(code **)(puVar5 + 0x8fa1c)" (identifier "pcVar28") (= "=") (pointer_expression "*(code **)(puVar5 + 0x8fa1c)" (* "*") (cast_expression "(code **)(puVar5 + 0x8fa1c)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar5 + 0x8fa1c)" (( "(") (binary_expression "puVar5 + 0x8fa1c" (identifier "puVar5") (+ "+") (number_literal "0x8fa1c")) () ")"))))) (; ";")) (expression_statement "pcVar13 = pcStack_64;" (assignment_expression "pcVar13 = pcStack_64" (identifier "pcVar13") (= "=") (identifier "pcStack_64")) (; ";")) (expression_statement "(*pcVar28)();" (call_expression "(*pcVar28)()" (parenthesized_expression "(*pcVar28)" (( "(") (pointer_expression "*pcVar28" (* "*") (identifier "pcVar28")) () ")")) (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "pcStack_8138 = pcVar28 + 0x96c70;" (assignment_expression "pcStack_8138 = pcVar28 + 0x96c70" (identifier "pcStack_8138") (= "=") (binary_expression "pcVar28 + 0x96c70" (identifier "pcVar28") (+ "+") (number_literal "0x96c70"))) (; ";")) (expression_statement "uStack_b4 = **(uint **)(pcVar28 + 0x8f7f8);" (assignment_expression "uStack_b4 = **(uint **)(pcVar28 + 0x8f7f8)" (identifier "uStack_b4") (= "=") (pointer_expression "**(uint **)(pcVar28 + 0x8f7f8)" (* "*") (pointer_expression "*(uint **)(pcVar28 + 0x8f7f8)" (* "*") (cast_expression "(uint **)(pcVar28 + 0x8f7f8)" (( "(") (type_descriptor "uint **" (type_identifier "uint") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar28 + 0x8f7f8)" (( "(") (binary_expression "pcVar28 + 0x8f7f8" (identifier "pcVar28") (+ "+") (number_literal "0x8f7f8")) () ")")))))) (; ";")) (expression_statement "pcStack_812c = pcVar13;" (assignment_expression "pcStack_812c = pcVar13" (identifier "pcStack_812c") (= "=") (identifier "pcVar13")) (; ";")) (expression_statement "puStack_8118 = puVar14;" (assignment_expression "puStack_8118 = puVar14" (identifier "puStack_8118") (= "=") (identifier "puVar14")) (; ";")) (expression_statement "puStack_b0 = param_2;" (assignment_expression "puStack_b0 = param_2" (identifier "puStack_b0") (= "=") (identifier "param_2")) (; ";")) (expression_statement "puStack_ac = puVar1;" (assignment_expression "puStack_ac = puVar1" (identifier "puStack_ac") (= "=") (identifier "puVar1")) (; ";")) (expression_statement "puStack_a8 = param_1;" (assignment_expression "puStack_a8 = param_1" (identifier "puStack_a8") (= "=") (identifier "param_1")) (; ";")) (expression_statement "puStack_a4 = unaff_s3;" (assignment_expression "puStack_a4 = unaff_s3" (identifier "puStack_a4") (= "=") (identifier "unaff_s3")) (; ";")) (expression_statement "puStack_a0 = unaff_s4;" (assignment_expression "puStack_a0 = unaff_s4" (identifier "puStack_a0") (= "=") (identifier "unaff_s4")) (; ";")) (expression_statement "iVar2 = (**(code **)(pcVar28 + 0x8ef84))();" (assignment_expression "iVar2 = (**(code **)(pcVar28 + 0x8ef84))()" (identifier "iVar2") (= "=") (call_expression "(**(code **)(pcVar28 + 0x8ef84))()" (parenthesized_expression "(**(code **)(pcVar28 + 0x8ef84))" (( "(") (pointer_expression "**(code **)(pcVar28 + 0x8ef84)" (* "*") (pointer_expression "*(code **)(pcVar28 + 0x8ef84)" (* "*") (cast_expression "(code **)(pcVar28 + 0x8ef84)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar28 + 0x8ef84)" (( "(") (binary_expression "pcVar28 + 0x8ef84" (identifier "pcVar28") (+ "+") (number_literal "0x8ef84")) () ")"))))) () ")")) (argument_list "()" (( "(") () ")")))) (; ";")) (if_statement "if ((*(int *)(*(int *)(pcStack_8138 + -0x7fd8) + -0x31d4) != 0) && (iVar2 != 2)) {\n    FUN_00028270(*(int *)(pcStack_8138 + -0x7fc8) + -0x4a68,pcStack_812c);\n  }" (if "if") (parenthesized_expression "((*(int *)(*(int *)(pcStack_8138 + -0x7fd8) + -0x31d4) != 0) && (iVar2 != 2))" (( "(") (binary_expression "(*(int *)(*(int *)(pcStack_8138 + -0x7fd8) + -0x31d4) != 0) && (iVar2 != 2)" (parenthesized_expression "(*(int *)(*(int *)(pcStack_8138 + -0x7fd8) + -0x31d4) != 0)" (( "(") (binary_expression "*(int *)(*(int *)(pcStack_8138 + -0x7fd8) + -0x31d4) != 0" (pointer_expression "*(int *)(*(int *)(pcStack_8138 + -0x7fd8) + -0x31d4)" (* "*") (cast_expression "(int *)(*(int *)(pcStack_8138 + -0x7fd8) + -0x31d4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcStack_8138 + -0x7fd8) + -0x31d4)" (( "(") (binary_expression "*(int *)(pcStack_8138 + -0x7fd8) + -0x31d4" (pointer_expression "*(int *)(pcStack_8138 + -0x7fd8)" (* "*") (cast_expression "(int *)(pcStack_8138 + -0x7fd8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcStack_8138 + -0x7fd8)" (( "(") (binary_expression "pcStack_8138 + -0x7fd8" (identifier "pcStack_8138") (+ "+") (number_literal "-0x7fd8")) () ")")))) (+ "+") (number_literal "-0x31d4")) () ")")))) (!= "!=") (number_literal "0")) () ")")) (&& "&&") (parenthesized_expression "(iVar2 != 2)" (( "(") (binary_expression "iVar2 != 2" (identifier "iVar2") (!= "!=") (number_literal "2")) () ")"))) () ")")) (compound_statement "{\n    FUN_00028270(*(int *)(pcStack_8138 + -0x7fc8) + -0x4a68,pcStack_812c);\n  }" ({ "{") (expression_statement "FUN_00028270(*(int *)(pcStack_8138 + -0x7fc8) + -0x4a68,pcStack_812c);" (call_expression "FUN_00028270(*(int *)(pcStack_8138 + -0x7fc8) + -0x4a68,pcStack_812c)" (identifier "FUN_00028270") (argument_list "(*(int *)(pcStack_8138 + -0x7fc8) + -0x4a68,pcStack_812c)" (( "(") (binary_expression "*(int *)(pcStack_8138 + -0x7fc8) + -0x4a68" (pointer_expression "*(int *)(pcStack_8138 + -0x7fc8)" (* "*") (cast_expression "(int *)(pcStack_8138 + -0x7fc8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcStack_8138 + -0x7fc8)" (( "(") (binary_expression "pcStack_8138 + -0x7fc8" (identifier "pcStack_8138") (+ "+") (number_literal "-0x7fc8")) () ")")))) (+ "+") (number_literal "-0x4a68")) (, ",") (identifier "pcStack_812c") () ")"))) (; ";")) (} "}"))) (expression_statement "scp_sink_init();" (call_expression "scp_sink_init()" (identifier "scp_sink_init") (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "iVar24 = 0;" (assignment_expression "iVar24 = 0" (identifier "iVar24") (= "=") (number_literal "0")) (; ";")) (expression_statement "pcStack_8128 = (code *)(*(int *)(pcStack_8138 + -0x7db0) + -0x7d90);" (assignment_expression "pcStack_8128 = (code *)(*(int *)(pcStack_8138 + -0x7db0) + -0x7d90)" (identifier "pcStack_8128") (= "=") (cast_expression "(code *)(*(int *)(pcStack_8138 + -0x7db0) + -0x7d90)" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcStack_8138 + -0x7db0) + -0x7d90)" (( "(") (binary_expression "*(int *)(pcStack_8138 + -0x7db0) + -0x7d90" (pointer_expression "*(int *)(pcStack_8138 + -0x7db0)" (* "*") (cast_expression "(int *)(pcStack_8138 + -0x7db0)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcStack_8138 + -0x7db0)" (( "(") (binary_expression "pcStack_8138 + -0x7db0" (identifier "pcStack_8138") (+ "+") (number_literal "-0x7db0")) () ")")))) (+ "+") (number_literal "-0x7d90")) () ")")))) (; ";")) (expression_statement "pcStack_810c = (code *)(*(int *)(pcStack_8138 + -0x7db0) + -0x6cb8);" (assignment_expression "pcStack_810c = (code *)(*(int *)(pcStack_8138 + -0x7db0) + -0x6cb8)" (identifier "pcStack_810c") (= "=") (cast_expression "(code *)(*(int *)(pcStack_8138 + -0x7db0) + -0x6cb8)" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcStack_8138 + -0x7db0) + -0x6cb8)" (( "(") (binary_expression "*(int *)(pcStack_8138 + -0x7db0) + -0x6cb8" (pointer_expression "*(int *)(pcStack_8138 + -0x7db0)" (* "*") (cast_expression "(int *)(pcStack_8138 + -0x7db0)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcStack_8138 + -0x7db0)" (( "(") (binary_expression "pcStack_8138 + -0x7db0" (identifier "pcStack_8138") (+ "+") (number_literal "-0x7db0")) () ")")))) (+ "+") (number_literal "-0x6cb8")) () ")")))) (; ";")) (expression_statement "iStack_8110 = *(int *)(pcStack_8138 + -0x7fc8) + -0x4878;" (assignment_expression "iStack_8110 = *(int *)(pcStack_8138 + -0x7fc8) + -0x4878" (identifier "iStack_8110") (= "=") (binary_expression "*(int *)(pcStack_8138 + -0x7fc8) + -0x4878" (pointer_expression "*(int *)(pcStack_8138 + -0x7fc8)" (* "*") (cast_expression "(int *)(pcStack_8138 + -0x7fc8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcStack_8138 + -0x7fc8)" (( "(") (binary_expression "pcStack_8138 + -0x7fc8" (identifier "pcStack_8138") (+ "+") (number_literal "-0x7fc8")) () ")")))) (+ "+") (number_literal "-0x4878"))) (; ";")) (labeled_statement "LAB_0002d77c:\n  do {\n    iVar4 = scp_get_sink_action(&iStack_80d8);\n    if ((iVar4 != 0) || (iStack_80d8 == 3)) goto LAB_0002da64;\n  } while (iStack_80d8 == 4);" (statement_identifier "LAB_0002d77c") (: ":") (do_statement "do {\n    iVar4 = scp_get_sink_action(&iStack_80d8);\n    if ((iVar4 != 0) || (iStack_80d8 == 3)) goto LAB_0002da64;\n  } while (iStack_80d8 == 4);" (do "do") (compound_statement "{\n    iVar4 = scp_get_sink_action(&iStack_80d8);\n    if ((iVar4 != 0) || (iStack_80d8 == 3)) goto LAB_0002da64;\n  }" ({ "{") (expression_statement "iVar4 = scp_get_sink_action(&iStack_80d8);" (assignment_expression "iVar4 = scp_get_sink_action(&iStack_80d8)" (identifier "iVar4") (= "=") (call_expression "scp_get_sink_action(&iStack_80d8)" (identifier "scp_get_sink_action") (argument_list "(&iStack_80d8)" (( "(") (pointer_expression "&iStack_80d8" (& "&") (identifier "iStack_80d8")) () ")")))) (; ";")) (if_statement "if ((iVar4 != 0) || (iStack_80d8 == 3)) goto LAB_0002da64;" (if "if") (parenthesized_expression "((iVar4 != 0) || (iStack_80d8 == 3))" (( "(") (binary_expression "(iVar4 != 0) || (iStack_80d8 == 3)" (parenthesized_expression "(iVar4 != 0)" (( "(") (binary_expression "iVar4 != 0" (identifier "iVar4") (!= "!=") (number_literal "0")) () ")")) (|| "||") (parenthesized_expression "(iStack_80d8 == 3)" (( "(") (binary_expression "iStack_80d8 == 3" (identifier "iStack_80d8") (== "==") (number_literal "3")) () ")"))) () ")")) (goto_statement "goto LAB_0002da64;" (goto "goto") (statement_identifier "LAB_0002da64") (; ";"))) (} "}")) (while "while") (parenthesized_expression "(iStack_80d8 == 4)" (( "(") (binary_expression "iStack_80d8 == 4" (identifier "iStack_80d8") (== "==") (number_literal "4")) () ")")) (; ";"))) (if_statement "if (iVar2 == 2) {\n    param_1 = auStack_100b0;\n    puVar1 = (undefined *)(**(code **)(pcStack_8138 + -0x7cac))(puStack_80d0,1);\n    if (puStack_80d0 != puVar1) {\n      puVar23 = *(undefined4 **)(pcStack_8138 + -0x7460);\n      param_1 = (undefined *)(*(int *)(pcStack_8138 + -0x7fcc) + 0x7ff8);\n      FUN_00027ff8(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x4a54);\n      FUN_00027ff8(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x4a20,puVar1);\n    }\n    iVar4 = (**(code **)(pcStack_8138 + -0x7640))(puVar1,*(int *)(pcStack_8138 + -0x7fc8) + -0x48b0)\n    ;\n    if (puVar1[iVar4] == '\0') {\n      (*pcStack_8128)(*(int *)(pcStack_8138 + -0x7fc8) + -0x49f8);\n    }\n    if (puStack_8118 != (undefined *)0x0) {\n      param_1 = (undefined *)(**(code **)(pcStack_8138 + -0x7cac))(puStack_8118,1);\n      iVar4 = (**(code **)(pcStack_8138 + -0x743c))(puVar1,param_1);\n      if ((iVar4 != 0) &&\n         (puVar23 = *(undefined4 **)(pcStack_8138 + -0x7460),\n         *(int *)(*(int *)(pcStack_8138 + -0x7fd8) + -0x31ec) == 0 &&\n         *(int *)(*(int *)(pcStack_8138 + -0x7fd8) + -0x31dc) == 0)) {\n        FUN_00027ff8(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x49ac,puVar1);\n        FUN_00027ff8(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x4970,param_1);\n        FUN_00027ff8(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x4940);\n        FUN_00027ff8(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x48f8);\n        puVar1 = param_1;\n      }\n    }\n    if (*pcStack_812c == '\0') {\n      unaff_s3 = (undefined4 *)dupstr(puVar1);\n    }\n    else {\n      unaff_s3 = (undefined4 *)(**(code **)(pcStack_8138 + -0x7c78))(pcStack_812c,puVar1);\n    }\n  }\n  else {\n    unaff_s3 = (undefined4 *)dupstr(pcStack_812c);\n  }" (if "if") (parenthesized_expression "(iVar2 == 2)" (( "(") (binary_expression "iVar2 == 2" (identifier "iVar2") (== "==") (number_literal "2")) () ")")) (compound_statement "{\n    param_1 = auStack_100b0;\n    puVar1 = (undefined *)(**(code **)(pcStack_8138 + -0x7cac))(puStack_80d0,1);\n    if (puStack_80d0 != puVar1) {\n      puVar23 = *(undefined4 **)(pcStack_8138 + -0x7460);\n      param_1 = (undefined *)(*(int *)(pcStack_8138 + -0x7fcc) + 0x7ff8);\n      FUN_00027ff8(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x4a54);\n      FUN_00027ff8(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x4a20,puVar1);\n    }\n    iVar4 = (**(code **)(pcStack_8138 + -0x7640))(puVar1,*(int *)(pcStack_8138 + -0x7fc8) + -0x48b0)\n    ;\n    if (puVar1[iVar4] == '\0') {\n      (*pcStack_8128)(*(int *)(pcStack_8138 + -0x7fc8) + -0x49f8);\n    }\n    if (puStack_8118 != (undefined *)0x0) {\n      param_1 = (undefined *)(**(code **)(pcStack_8138 + -0x7cac))(puStack_8118,1);\n      iVar4 = (**(code **)(pcStack_8138 + -0x743c))(puVar1,param_1);\n      if ((iVar4 != 0) &&\n         (puVar23 = *(undefined4 **)(pcStack_8138 + -0x7460),\n         *(int *)(*(int *)(pcStack_8138 + -0x7fd8) + -0x31ec) == 0 &&\n         *(int *)(*(int *)(pcStack_8138 + -0x7fd8) + -0x31dc) == 0)) {\n        FUN_00027ff8(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x49ac,puVar1);\n        FUN_00027ff8(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x4970,param_1);\n        FUN_00027ff8(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x4940);\n        FUN_00027ff8(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x48f8);\n        puVar1 = param_1;\n      }\n    }\n    if (*pcStack_812c == '\0') {\n      unaff_s3 = (undefined4 *)dupstr(puVar1);\n    }\n    else {\n      unaff_s3 = (undefined4 *)(**(code **)(pcStack_8138 + -0x7c78))(pcStack_812c,puVar1);\n    }\n  }" ({ "{") (expression_statement "param_1 = auStack_100b0;" (assignment_expression "param_1 = auStack_100b0" (identifier "param_1") (= "=") (identifier "auStack_100b0")) (; ";")) (expression_statement "puVar1 = (undefined *)(**(code **)(pcStack_8138 + -0x7cac))(puStack_80d0,1);" (assignment_expression "puVar1 = (undefined *)(**(code **)(pcStack_8138 + -0x7cac))(puStack_80d0,1)" (identifier "puVar1") (= "=") (cast_expression "(undefined *)(**(code **)(pcStack_8138 + -0x7cac))(puStack_80d0,1)" (( "(") (type_descriptor "undefined *" (type_identifier "undefined") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "(**(code **)(pcStack_8138 + -0x7cac))(puStack_80d0,1)" (parenthesized_expression "(**(code **)(pcStack_8138 + -0x7cac))" (( "(") (pointer_expression "**(code **)(pcStack_8138 + -0x7cac)" (* "*") (pointer_expression "*(code **)(pcStack_8138 + -0x7cac)" (* "*") (cast_expression "(code **)(pcStack_8138 + -0x7cac)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_8138 + -0x7cac)" (( "(") (binary_expression "pcStack_8138 + -0x7cac" (identifier "pcStack_8138") (+ "+") (number_literal "-0x7cac")) () ")"))))) () ")")) (argument_list "(puStack_80d0,1)" (( "(") (identifier "puStack_80d0") (, ",") (number_literal "1") () ")"))))) (; ";")) (if_statement "if (puStack_80d0 != puVar1) {\n      puVar23 = *(undefined4 **)(pcStack_8138 + -0x7460);\n      param_1 = (undefined *)(*(int *)(pcStack_8138 + -0x7fcc) + 0x7ff8);\n      FUN_00027ff8(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x4a54);\n      FUN_00027ff8(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x4a20,puVar1);\n    }" (if "if") (parenthesized_expression "(puStack_80d0 != puVar1)" (( "(") (binary_expression "puStack_80d0 != puVar1" (identifier "puStack_80d0") (!= "!=") (identifier "puVar1")) () ")")) (compound_statement "{\n      puVar23 = *(undefined4 **)(pcStack_8138 + -0x7460);\n      param_1 = (undefined *)(*(int *)(pcStack_8138 + -0x7fcc) + 0x7ff8);\n      FUN_00027ff8(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x4a54);\n      FUN_00027ff8(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x4a20,puVar1);\n    }" ({ "{") (expression_statement "puVar23 = *(undefined4 **)(pcStack_8138 + -0x7460);" (assignment_expression "puVar23 = *(undefined4 **)(pcStack_8138 + -0x7460)" (identifier "puVar23") (= "=") (pointer_expression "*(undefined4 **)(pcStack_8138 + -0x7460)" (* "*") (cast_expression "(undefined4 **)(pcStack_8138 + -0x7460)" (( "(") (type_descriptor "undefined4 **" (type_identifier "undefined4") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_8138 + -0x7460)" (( "(") (binary_expression "pcStack_8138 + -0x7460" (identifier "pcStack_8138") (+ "+") (number_literal "-0x7460")) () ")"))))) (; ";")) (expression_statement "param_1 = (undefined *)(*(int *)(pcStack_8138 + -0x7fcc) + 0x7ff8);" (assignment_expression "param_1 = (undefined *)(*(int *)(pcStack_8138 + -0x7fcc) + 0x7ff8)" (identifier "param_1") (= "=") (cast_expression "(undefined *)(*(int *)(pcStack_8138 + -0x7fcc) + 0x7ff8)" (( "(") (type_descriptor "undefined *" (type_identifier "undefined") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcStack_8138 + -0x7fcc) + 0x7ff8)" (( "(") (binary_expression "*(int *)(pcStack_8138 + -0x7fcc) + 0x7ff8" (pointer_expression "*(int *)(pcStack_8138 + -0x7fcc)" (* "*") (cast_expression "(int *)(pcStack_8138 + -0x7fcc)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcStack_8138 + -0x7fcc)" (( "(") (binary_expression "pcStack_8138 + -0x7fcc" (identifier "pcStack_8138") (+ "+") (number_literal "-0x7fcc")) () ")")))) (+ "+") (number_literal "0x7ff8")) () ")")))) (; ";")) (expression_statement "FUN_00027ff8(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x4a54);" (call_expression "FUN_00027ff8(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x4a54)" (identifier "FUN_00027ff8") (argument_list "(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x4a54)" (( "(") (pointer_expression "*puVar23" (* "*") (identifier "puVar23")) (, ",") (binary_expression "*(int *)(pcStack_8138 + -0x7fc8) + -0x4a54" (pointer_expression "*(int *)(pcStack_8138 + -0x7fc8)" (* "*") (cast_expression "(int *)(pcStack_8138 + -0x7fc8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcStack_8138 + -0x7fc8)" (( "(") (binary_expression "pcStack_8138 + -0x7fc8" (identifier "pcStack_8138") (+ "+") (number_literal "-0x7fc8")) () ")")))) (+ "+") (number_literal "-0x4a54")) () ")"))) (; ";")) (expression_statement "FUN_00027ff8(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x4a20,puVar1);" (call_expression "FUN_00027ff8(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x4a20,puVar1)" (identifier "FUN_00027ff8") (argument_list "(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x4a20,puVar1)" (( "(") (pointer_expression "*puVar23" (* "*") (identifier "puVar23")) (, ",") (binary_expression "*(int *)(pcStack_8138 + -0x7fc8) + -0x4a20" (pointer_expression "*(int *)(pcStack_8138 + -0x7fc8)" (* "*") (cast_expression "(int *)(pcStack_8138 + -0x7fc8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcStack_8138 + -0x7fc8)" (( "(") (binary_expression "pcStack_8138 + -0x7fc8" (identifier "pcStack_8138") (+ "+") (number_literal "-0x7fc8")) () ")")))) (+ "+") (number_literal "-0x4a20")) (, ",") (identifier "puVar1") () ")"))) (; ";")) (} "}"))) (expression_statement "iVar4 = (**(code **)(pcStack_8138 + -0x7640))(puVar1,*(int *)(pcStack_8138 + -0x7fc8) + -0x48b0)\n    ;" (assignment_expression "iVar4 = (**(code **)(pcStack_8138 + -0x7640))(puVar1,*(int *)(pcStack_8138 + -0x7fc8) + -0x48b0)" (identifier "iVar4") (= "=") (call_expression "(**(code **)(pcStack_8138 + -0x7640))(puVar1,*(int *)(pcStack_8138 + -0x7fc8) + -0x48b0)" (parenthesized_expression "(**(code **)(pcStack_8138 + -0x7640))" (( "(") (pointer_expression "**(code **)(pcStack_8138 + -0x7640)" (* "*") (pointer_expression "*(code **)(pcStack_8138 + -0x7640)" (* "*") (cast_expression "(code **)(pcStack_8138 + -0x7640)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_8138 + -0x7640)" (( "(") (binary_expression "pcStack_8138 + -0x7640" (identifier "pcStack_8138") (+ "+") (number_literal "-0x7640")) () ")"))))) () ")")) (argument_list "(puVar1,*(int *)(pcStack_8138 + -0x7fc8) + -0x48b0)" (( "(") (identifier "puVar1") (, ",") (binary_expression "*(int *)(pcStack_8138 + -0x7fc8) + -0x48b0" (pointer_expression "*(int *)(pcStack_8138 + -0x7fc8)" (* "*") (cast_expression "(int *)(pcStack_8138 + -0x7fc8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcStack_8138 + -0x7fc8)" (( "(") (binary_expression "pcStack_8138 + -0x7fc8" (identifier "pcStack_8138") (+ "+") (number_literal "-0x7fc8")) () ")")))) (+ "+") (number_literal "-0x48b0")) () ")")))) (; ";")) (if_statement "if (puVar1[iVar4] == '\0') {\n      (*pcStack_8128)(*(int *)(pcStack_8138 + -0x7fc8) + -0x49f8);\n    }" (if "if") (parenthesized_expression "(puVar1[iVar4] == '\0')" (( "(") (binary_expression "puVar1[iVar4] == '\0'" (subscript_expression "puVar1[iVar4]" (identifier "puVar1") ([ "[") (identifier "iVar4") (] "]")) (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n      (*pcStack_8128)(*(int *)(pcStack_8138 + -0x7fc8) + -0x49f8);\n    }" ({ "{") (expression_statement "(*pcStack_8128)(*(int *)(pcStack_8138 + -0x7fc8) + -0x49f8);" (call_expression "(*pcStack_8128)(*(int *)(pcStack_8138 + -0x7fc8) + -0x49f8)" (parenthesized_expression "(*pcStack_8128)" (( "(") (pointer_expression "*pcStack_8128" (* "*") (identifier "pcStack_8128")) () ")")) (argument_list "(*(int *)(pcStack_8138 + -0x7fc8) + -0x49f8)" (( "(") (binary_expression "*(int *)(pcStack_8138 + -0x7fc8) + -0x49f8" (pointer_expression "*(int *)(pcStack_8138 + -0x7fc8)" (* "*") (cast_expression "(int *)(pcStack_8138 + -0x7fc8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcStack_8138 + -0x7fc8)" (( "(") (binary_expression "pcStack_8138 + -0x7fc8" (identifier "pcStack_8138") (+ "+") (number_literal "-0x7fc8")) () ")")))) (+ "+") (number_literal "-0x49f8")) () ")"))) (; ";")) (} "}"))) (if_statement "if (puStack_8118 != (undefined *)0x0) {\n      param_1 = (undefined *)(**(code **)(pcStack_8138 + -0x7cac))(puStack_8118,1);\n      iVar4 = (**(code **)(pcStack_8138 + -0x743c))(puVar1,param_1);\n      if ((iVar4 != 0) &&\n         (puVar23 = *(undefined4 **)(pcStack_8138 + -0x7460),\n         *(int *)(*(int *)(pcStack_8138 + -0x7fd8) + -0x31ec) == 0 &&\n         *(int *)(*(int *)(pcStack_8138 + -0x7fd8) + -0x31dc) == 0)) {\n        FUN_00027ff8(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x49ac,puVar1);\n        FUN_00027ff8(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x4970,param_1);\n        FUN_00027ff8(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x4940);\n        FUN_00027ff8(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x48f8);\n        puVar1 = param_1;\n      }\n    }" (if "if") (parenthesized_expression "(puStack_8118 != (undefined *)0x0)" (( "(") (binary_expression "puStack_8118 != (undefined *)0x0" (identifier "puStack_8118") (!= "!=") (cast_expression "(undefined *)0x0" (( "(") (type_descriptor "undefined *" (type_identifier "undefined") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n      param_1 = (undefined *)(**(code **)(pcStack_8138 + -0x7cac))(puStack_8118,1);\n      iVar4 = (**(code **)(pcStack_8138 + -0x743c))(puVar1,param_1);\n      if ((iVar4 != 0) &&\n         (puVar23 = *(undefined4 **)(pcStack_8138 + -0x7460),\n         *(int *)(*(int *)(pcStack_8138 + -0x7fd8) + -0x31ec) == 0 &&\n         *(int *)(*(int *)(pcStack_8138 + -0x7fd8) + -0x31dc) == 0)) {\n        FUN_00027ff8(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x49ac,puVar1);\n        FUN_00027ff8(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x4970,param_1);\n        FUN_00027ff8(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x4940);\n        FUN_00027ff8(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x48f8);\n        puVar1 = param_1;\n      }\n    }" ({ "{") (expression_statement "param_1 = (undefined *)(**(code **)(pcStack_8138 + -0x7cac))(puStack_8118,1);" (assignment_expression "param_1 = (undefined *)(**(code **)(pcStack_8138 + -0x7cac))(puStack_8118,1)" (identifier "param_1") (= "=") (cast_expression "(undefined *)(**(code **)(pcStack_8138 + -0x7cac))(puStack_8118,1)" (( "(") (type_descriptor "undefined *" (type_identifier "undefined") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "(**(code **)(pcStack_8138 + -0x7cac))(puStack_8118,1)" (parenthesized_expression "(**(code **)(pcStack_8138 + -0x7cac))" (( "(") (pointer_expression "**(code **)(pcStack_8138 + -0x7cac)" (* "*") (pointer_expression "*(code **)(pcStack_8138 + -0x7cac)" (* "*") (cast_expression "(code **)(pcStack_8138 + -0x7cac)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_8138 + -0x7cac)" (( "(") (binary_expression "pcStack_8138 + -0x7cac" (identifier "pcStack_8138") (+ "+") (number_literal "-0x7cac")) () ")"))))) () ")")) (argument_list "(puStack_8118,1)" (( "(") (identifier "puStack_8118") (, ",") (number_literal "1") () ")"))))) (; ";")) (expression_statement "iVar4 = (**(code **)(pcStack_8138 + -0x743c))(puVar1,param_1);" (assignment_expression "iVar4 = (**(code **)(pcStack_8138 + -0x743c))(puVar1,param_1)" (identifier "iVar4") (= "=") (call_expression "(**(code **)(pcStack_8138 + -0x743c))(puVar1,param_1)" (parenthesized_expression "(**(code **)(pcStack_8138 + -0x743c))" (( "(") (pointer_expression "**(code **)(pcStack_8138 + -0x743c)" (* "*") (pointer_expression "*(code **)(pcStack_8138 + -0x743c)" (* "*") (cast_expression "(code **)(pcStack_8138 + -0x743c)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_8138 + -0x743c)" (( "(") (binary_expression "pcStack_8138 + -0x743c" (identifier "pcStack_8138") (+ "+") (number_literal "-0x743c")) () ")"))))) () ")")) (argument_list "(puVar1,param_1)" (( "(") (identifier "puVar1") (, ",") (identifier "param_1") () ")")))) (; ";")) (if_statement "if ((iVar4 != 0) &&\n         (puVar23 = *(undefined4 **)(pcStack_8138 + -0x7460),\n         *(int *)(*(int *)(pcStack_8138 + -0x7fd8) + -0x31ec) == 0 &&\n         *(int *)(*(int *)(pcStack_8138 + -0x7fd8) + -0x31dc) == 0)) {\n        FUN_00027ff8(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x49ac,puVar1);\n        FUN_00027ff8(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x4970,param_1);\n        FUN_00027ff8(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x4940);\n        FUN_00027ff8(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x48f8);\n        puVar1 = param_1;\n      }" (if "if") (parenthesized_expression "((iVar4 != 0) &&\n         (puVar23 = *(undefined4 **)(pcStack_8138 + -0x7460),\n         *(int *)(*(int *)(pcStack_8138 + -0x7fd8) + -0x31ec) == 0 &&\n         *(int *)(*(int *)(pcStack_8138 + -0x7fd8) + -0x31dc) == 0))" (( "(") (binary_expression "(iVar4 != 0) &&\n         (puVar23 = *(undefined4 **)(pcStack_8138 + -0x7460),\n         *(int *)(*(int *)(pcStack_8138 + -0x7fd8) + -0x31ec) == 0 &&\n         *(int *)(*(int *)(pcStack_8138 + -0x7fd8) + -0x31dc) == 0)" (parenthesized_expression "(iVar4 != 0)" (( "(") (binary_expression "iVar4 != 0" (identifier "iVar4") (!= "!=") (number_literal "0")) () ")")) (&& "&&") (parenthesized_expression "(puVar23 = *(undefined4 **)(pcStack_8138 + -0x7460),\n         *(int *)(*(int *)(pcStack_8138 + -0x7fd8) + -0x31ec) == 0 &&\n         *(int *)(*(int *)(pcStack_8138 + -0x7fd8) + -0x31dc) == 0)" (( "(") (comma_expression "puVar23 = *(undefined4 **)(pcStack_8138 + -0x7460),\n         *(int *)(*(int *)(pcStack_8138 + -0x7fd8) + -0x31ec) == 0 &&\n         *(int *)(*(int *)(pcStack_8138 + -0x7fd8) + -0x31dc) == 0" (assignment_expression "puVar23 = *(undefined4 **)(pcStack_8138 + -0x7460)" (identifier "puVar23") (= "=") (pointer_expression "*(undefined4 **)(pcStack_8138 + -0x7460)" (* "*") (cast_expression "(undefined4 **)(pcStack_8138 + -0x7460)" (( "(") (type_descriptor "undefined4 **" (type_identifier "undefined4") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_8138 + -0x7460)" (( "(") (binary_expression "pcStack_8138 + -0x7460" (identifier "pcStack_8138") (+ "+") (number_literal "-0x7460")) () ")"))))) (, ",") (binary_expression "*(int *)(*(int *)(pcStack_8138 + -0x7fd8) + -0x31ec) == 0 &&\n         *(int *)(*(int *)(pcStack_8138 + -0x7fd8) + -0x31dc) == 0" (binary_expression "*(int *)(*(int *)(pcStack_8138 + -0x7fd8) + -0x31ec) == 0" (pointer_expression "*(int *)(*(int *)(pcStack_8138 + -0x7fd8) + -0x31ec)" (* "*") (cast_expression "(int *)(*(int *)(pcStack_8138 + -0x7fd8) + -0x31ec)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcStack_8138 + -0x7fd8) + -0x31ec)" (( "(") (binary_expression "*(int *)(pcStack_8138 + -0x7fd8) + -0x31ec" (pointer_expression "*(int *)(pcStack_8138 + -0x7fd8)" (* "*") (cast_expression "(int *)(pcStack_8138 + -0x7fd8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcStack_8138 + -0x7fd8)" (( "(") (binary_expression "pcStack_8138 + -0x7fd8" (identifier "pcStack_8138") (+ "+") (number_literal "-0x7fd8")) () ")")))) (+ "+") (number_literal "-0x31ec")) () ")")))) (== "==") (number_literal "0")) (&& "&&") (binary_expression "*(int *)(*(int *)(pcStack_8138 + -0x7fd8) + -0x31dc) == 0" (pointer_expression "*(int *)(*(int *)(pcStack_8138 + -0x7fd8) + -0x31dc)" (* "*") (cast_expression "(int *)(*(int *)(pcStack_8138 + -0x7fd8) + -0x31dc)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcStack_8138 + -0x7fd8) + -0x31dc)" (( "(") (binary_expression "*(int *)(pcStack_8138 + -0x7fd8) + -0x31dc" (pointer_expression "*(int *)(pcStack_8138 + -0x7fd8)" (* "*") (cast_expression "(int *)(pcStack_8138 + -0x7fd8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcStack_8138 + -0x7fd8)" (( "(") (binary_expression "pcStack_8138 + -0x7fd8" (identifier "pcStack_8138") (+ "+") (number_literal "-0x7fd8")) () ")")))) (+ "+") (number_literal "-0x31dc")) () ")")))) (== "==") (number_literal "0")))) () ")"))) () ")")) (compound_statement "{\n        FUN_00027ff8(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x49ac,puVar1);\n        FUN_00027ff8(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x4970,param_1);\n        FUN_00027ff8(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x4940);\n        FUN_00027ff8(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x48f8);\n        puVar1 = param_1;\n      }" ({ "{") (expression_statement "FUN_00027ff8(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x49ac,puVar1);" (call_expression "FUN_00027ff8(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x49ac,puVar1)" (identifier "FUN_00027ff8") (argument_list "(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x49ac,puVar1)" (( "(") (pointer_expression "*puVar23" (* "*") (identifier "puVar23")) (, ",") (binary_expression "*(int *)(pcStack_8138 + -0x7fc8) + -0x49ac" (pointer_expression "*(int *)(pcStack_8138 + -0x7fc8)" (* "*") (cast_expression "(int *)(pcStack_8138 + -0x7fc8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcStack_8138 + -0x7fc8)" (( "(") (binary_expression "pcStack_8138 + -0x7fc8" (identifier "pcStack_8138") (+ "+") (number_literal "-0x7fc8")) () ")")))) (+ "+") (number_literal "-0x49ac")) (, ",") (identifier "puVar1") () ")"))) (; ";")) (expression_statement "FUN_00027ff8(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x4970,param_1);" (call_expression "FUN_00027ff8(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x4970,param_1)" (identifier "FUN_00027ff8") (argument_list "(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x4970,param_1)" (( "(") (pointer_expression "*puVar23" (* "*") (identifier "puVar23")) (, ",") (binary_expression "*(int *)(pcStack_8138 + -0x7fc8) + -0x4970" (pointer_expression "*(int *)(pcStack_8138 + -0x7fc8)" (* "*") (cast_expression "(int *)(pcStack_8138 + -0x7fc8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcStack_8138 + -0x7fc8)" (( "(") (binary_expression "pcStack_8138 + -0x7fc8" (identifier "pcStack_8138") (+ "+") (number_literal "-0x7fc8")) () ")")))) (+ "+") (number_literal "-0x4970")) (, ",") (identifier "param_1") () ")"))) (; ";")) (expression_statement "FUN_00027ff8(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x4940);" (call_expression "FUN_00027ff8(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x4940)" (identifier "FUN_00027ff8") (argument_list "(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x4940)" (( "(") (pointer_expression "*puVar23" (* "*") (identifier "puVar23")) (, ",") (binary_expression "*(int *)(pcStack_8138 + -0x7fc8) + -0x4940" (pointer_expression "*(int *)(pcStack_8138 + -0x7fc8)" (* "*") (cast_expression "(int *)(pcStack_8138 + -0x7fc8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcStack_8138 + -0x7fc8)" (( "(") (binary_expression "pcStack_8138 + -0x7fc8" (identifier "pcStack_8138") (+ "+") (number_literal "-0x7fc8")) () ")")))) (+ "+") (number_literal "-0x4940")) () ")"))) (; ";")) (expression_statement "FUN_00027ff8(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x48f8);" (call_expression "FUN_00027ff8(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x48f8)" (identifier "FUN_00027ff8") (argument_list "(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x48f8)" (( "(") (pointer_expression "*puVar23" (* "*") (identifier "puVar23")) (, ",") (binary_expression "*(int *)(pcStack_8138 + -0x7fc8) + -0x48f8" (pointer_expression "*(int *)(pcStack_8138 + -0x7fc8)" (* "*") (cast_expression "(int *)(pcStack_8138 + -0x7fc8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcStack_8138 + -0x7fc8)" (( "(") (binary_expression "pcStack_8138 + -0x7fc8" (identifier "pcStack_8138") (+ "+") (number_literal "-0x7fc8")) () ")")))) (+ "+") (number_literal "-0x48f8")) () ")"))) (; ";")) (expression_statement "puVar1 = param_1;" (assignment_expression "puVar1 = param_1" (identifier "puVar1") (= "=") (identifier "param_1")) (; ";")) (} "}"))) (} "}"))) (if_statement "if (*pcStack_812c == '\0') {\n      unaff_s3 = (undefined4 *)dupstr(puVar1);\n    }\n    else {\n      unaff_s3 = (undefined4 *)(**(code **)(pcStack_8138 + -0x7c78))(pcStack_812c,puVar1);\n    }" (if "if") (parenthesized_expression "(*pcStack_812c == '\0')" (( "(") (binary_expression "*pcStack_812c == '\0'" (pointer_expression "*pcStack_812c" (* "*") (identifier "pcStack_812c")) (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n      unaff_s3 = (undefined4 *)dupstr(puVar1);\n    }" ({ "{") (expression_statement "unaff_s3 = (undefined4 *)dupstr(puVar1);" (assignment_expression "unaff_s3 = (undefined4 *)dupstr(puVar1)" (identifier "unaff_s3") (= "=") (cast_expression "(undefined4 *)dupstr(puVar1)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "dupstr(puVar1)" (identifier "dupstr") (argument_list "(puVar1)" (( "(") (identifier "puVar1") () ")"))))) (; ";")) (} "}")) (else_clause "else {\n      unaff_s3 = (undefined4 *)(**(code **)(pcStack_8138 + -0x7c78))(pcStack_812c,puVar1);\n    }" (else "else") (compound_statement "{\n      unaff_s3 = (undefined4 *)(**(code **)(pcStack_8138 + -0x7c78))(pcStack_812c,puVar1);\n    }" ({ "{") (expression_statement "unaff_s3 = (undefined4 *)(**(code **)(pcStack_8138 + -0x7c78))(pcStack_812c,puVar1);" (assignment_expression "unaff_s3 = (undefined4 *)(**(code **)(pcStack_8138 + -0x7c78))(pcStack_812c,puVar1)" (identifier "unaff_s3") (= "=") (cast_expression "(undefined4 *)(**(code **)(pcStack_8138 + -0x7c78))(pcStack_812c,puVar1)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "(**(code **)(pcStack_8138 + -0x7c78))(pcStack_812c,puVar1)" (parenthesized_expression "(**(code **)(pcStack_8138 + -0x7c78))" (( "(") (pointer_expression "**(code **)(pcStack_8138 + -0x7c78)" (* "*") (pointer_expression "*(code **)(pcStack_8138 + -0x7c78)" (* "*") (cast_expression "(code **)(pcStack_8138 + -0x7c78)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_8138 + -0x7c78)" (( "(") (binary_expression "pcStack_8138 + -0x7c78" (identifier "pcStack_8138") (+ "+") (number_literal "-0x7c78")) () ")"))))) () ")")) (argument_list "(pcStack_812c,puVar1)" (( "(") (identifier "pcStack_812c") (, ",") (identifier "puVar1") () ")"))))) (; ";")) (} "}")))) (} "}")) (else_clause "else {\n    unaff_s3 = (undefined4 *)dupstr(pcStack_812c);\n  }" (else "else") (compound_statement "{\n    unaff_s3 = (undefined4 *)dupstr(pcStack_812c);\n  }" ({ "{") (expression_statement "unaff_s3 = (undefined4 *)dupstr(pcStack_812c);" (assignment_expression "unaff_s3 = (undefined4 *)dupstr(pcStack_812c)" (identifier "unaff_s3") (= "=") (cast_expression "(undefined4 *)dupstr(pcStack_812c)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "dupstr(pcStack_812c)" (identifier "dupstr") (argument_list "(pcStack_812c)" (( "(") (identifier "pcStack_812c") () ")"))))) (; ";")) (} "}")))) (expression_statement "iVar4 = (**(code **)(pcStack_8138 + -0x7cec))(unaff_s3);" (assignment_expression "iVar4 = (**(code **)(pcStack_8138 + -0x7cec))(unaff_s3)" (identifier "iVar4") (= "=") (call_expression "(**(code **)(pcStack_8138 + -0x7cec))(unaff_s3)" (parenthesized_expression "(**(code **)(pcStack_8138 + -0x7cec))" (( "(") (pointer_expression "**(code **)(pcStack_8138 + -0x7cec)" (* "*") (pointer_expression "*(code **)(pcStack_8138 + -0x7cec)" (* "*") (cast_expression "(code **)(pcStack_8138 + -0x7cec)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_8138 + -0x7cec)" (( "(") (binary_expression "pcStack_8138 + -0x7cec" (identifier "pcStack_8138") (+ "+") (number_literal "-0x7cec")) () ")"))))) () ")")) (argument_list "(unaff_s3)" (( "(") (identifier "unaff_s3") () ")")))) (; ";")) (if_statement "if (iStack_80d8 == 2) {\n    if (iVar4 == 0) {\n      iVar4 = (**(code **)(pcStack_8138 + -0x7c80))(unaff_s3);\n      if (iVar4 == 0) {\n        FUN_0002a658(*(int *)(pcStack_8138 + -0x7fc8) + -0x48ac,unaff_s3);\n        safefree(unaff_s3);\n        goto LAB_0002d77c;\n      }\n    }\n    else if (iVar4 != 2) {\n      FUN_0002a658(*(int *)(pcStack_8138 + -0x7fc8) + -0x4a68,unaff_s3);\n      safefree(unaff_s3);\n      goto LAB_0002d77c;\n    }\n    FUN_0002d4e0(unaff_s3,0);\n    safefree(unaff_s3);\n    goto LAB_0002d77c;\n  }" (if "if") (parenthesized_expression "(iStack_80d8 == 2)" (( "(") (binary_expression "iStack_80d8 == 2" (identifier "iStack_80d8") (== "==") (number_literal "2")) () ")")) (compound_statement "{\n    if (iVar4 == 0) {\n      iVar4 = (**(code **)(pcStack_8138 + -0x7c80))(unaff_s3);\n      if (iVar4 == 0) {\n        FUN_0002a658(*(int *)(pcStack_8138 + -0x7fc8) + -0x48ac,unaff_s3);\n        safefree(unaff_s3);\n        goto LAB_0002d77c;\n      }\n    }\n    else if (iVar4 != 2) {\n      FUN_0002a658(*(int *)(pcStack_8138 + -0x7fc8) + -0x4a68,unaff_s3);\n      safefree(unaff_s3);\n      goto LAB_0002d77c;\n    }\n    FUN_0002d4e0(unaff_s3,0);\n    safefree(unaff_s3);\n    goto LAB_0002d77c;\n  }" ({ "{") (if_statement "if (iVar4 == 0) {\n      iVar4 = (**(code **)(pcStack_8138 + -0x7c80))(unaff_s3);\n      if (iVar4 == 0) {\n        FUN_0002a658(*(int *)(pcStack_8138 + -0x7fc8) + -0x48ac,unaff_s3);\n        safefree(unaff_s3);\n        goto LAB_0002d77c;\n      }\n    }\n    else if (iVar4 != 2) {\n      FUN_0002a658(*(int *)(pcStack_8138 + -0x7fc8) + -0x4a68,unaff_s3);\n      safefree(unaff_s3);\n      goto LAB_0002d77c;\n    }" (if "if") (parenthesized_expression "(iVar4 == 0)" (( "(") (binary_expression "iVar4 == 0" (identifier "iVar4") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n      iVar4 = (**(code **)(pcStack_8138 + -0x7c80))(unaff_s3);\n      if (iVar4 == 0) {\n        FUN_0002a658(*(int *)(pcStack_8138 + -0x7fc8) + -0x48ac,unaff_s3);\n        safefree(unaff_s3);\n        goto LAB_0002d77c;\n      }\n    }" ({ "{") (expression_statement "iVar4 = (**(code **)(pcStack_8138 + -0x7c80))(unaff_s3);" (assignment_expression "iVar4 = (**(code **)(pcStack_8138 + -0x7c80))(unaff_s3)" (identifier "iVar4") (= "=") (call_expression "(**(code **)(pcStack_8138 + -0x7c80))(unaff_s3)" (parenthesized_expression "(**(code **)(pcStack_8138 + -0x7c80))" (( "(") (pointer_expression "**(code **)(pcStack_8138 + -0x7c80)" (* "*") (pointer_expression "*(code **)(pcStack_8138 + -0x7c80)" (* "*") (cast_expression "(code **)(pcStack_8138 + -0x7c80)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_8138 + -0x7c80)" (( "(") (binary_expression "pcStack_8138 + -0x7c80" (identifier "pcStack_8138") (+ "+") (number_literal "-0x7c80")) () ")"))))) () ")")) (argument_list "(unaff_s3)" (( "(") (identifier "unaff_s3") () ")")))) (; ";")) (if_statement "if (iVar4 == 0) {\n        FUN_0002a658(*(int *)(pcStack_8138 + -0x7fc8) + -0x48ac,unaff_s3);\n        safefree(unaff_s3);\n        goto LAB_0002d77c;\n      }" (if "if") (parenthesized_expression "(iVar4 == 0)" (( "(") (binary_expression "iVar4 == 0" (identifier "iVar4") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n        FUN_0002a658(*(int *)(pcStack_8138 + -0x7fc8) + -0x48ac,unaff_s3);\n        safefree(unaff_s3);\n        goto LAB_0002d77c;\n      }" ({ "{") (expression_statement "FUN_0002a658(*(int *)(pcStack_8138 + -0x7fc8) + -0x48ac,unaff_s3);" (call_expression "FUN_0002a658(*(int *)(pcStack_8138 + -0x7fc8) + -0x48ac,unaff_s3)" (identifier "FUN_0002a658") (argument_list "(*(int *)(pcStack_8138 + -0x7fc8) + -0x48ac,unaff_s3)" (( "(") (binary_expression "*(int *)(pcStack_8138 + -0x7fc8) + -0x48ac" (pointer_expression "*(int *)(pcStack_8138 + -0x7fc8)" (* "*") (cast_expression "(int *)(pcStack_8138 + -0x7fc8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcStack_8138 + -0x7fc8)" (( "(") (binary_expression "pcStack_8138 + -0x7fc8" (identifier "pcStack_8138") (+ "+") (number_literal "-0x7fc8")) () ")")))) (+ "+") (number_literal "-0x48ac")) (, ",") (identifier "unaff_s3") () ")"))) (; ";")) (expression_statement "safefree(unaff_s3);" (call_expression "safefree(unaff_s3)" (identifier "safefree") (argument_list "(unaff_s3)" (( "(") (identifier "unaff_s3") () ")"))) (; ";")) (goto_statement "goto LAB_0002d77c;" (goto "goto") (statement_identifier "LAB_0002d77c") (; ";")) (} "}"))) (} "}")) (else_clause "else if (iVar4 != 2) {\n      FUN_0002a658(*(int *)(pcStack_8138 + -0x7fc8) + -0x4a68,unaff_s3);\n      safefree(unaff_s3);\n      goto LAB_0002d77c;\n    }" (else "else") (if_statement "if (iVar4 != 2) {\n      FUN_0002a658(*(int *)(pcStack_8138 + -0x7fc8) + -0x4a68,unaff_s3);\n      safefree(unaff_s3);\n      goto LAB_0002d77c;\n    }" (if "if") (parenthesized_expression "(iVar4 != 2)" (( "(") (binary_expression "iVar4 != 2" (identifier "iVar4") (!= "!=") (number_literal "2")) () ")")) (compound_statement "{\n      FUN_0002a658(*(int *)(pcStack_8138 + -0x7fc8) + -0x4a68,unaff_s3);\n      safefree(unaff_s3);\n      goto LAB_0002d77c;\n    }" ({ "{") (expression_statement "FUN_0002a658(*(int *)(pcStack_8138 + -0x7fc8) + -0x4a68,unaff_s3);" (call_expression "FUN_0002a658(*(int *)(pcStack_8138 + -0x7fc8) + -0x4a68,unaff_s3)" (identifier "FUN_0002a658") (argument_list "(*(int *)(pcStack_8138 + -0x7fc8) + -0x4a68,unaff_s3)" (( "(") (binary_expression "*(int *)(pcStack_8138 + -0x7fc8) + -0x4a68" (pointer_expression "*(int *)(pcStack_8138 + -0x7fc8)" (* "*") (cast_expression "(int *)(pcStack_8138 + -0x7fc8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcStack_8138 + -0x7fc8)" (( "(") (binary_expression "pcStack_8138 + -0x7fc8" (identifier "pcStack_8138") (+ "+") (number_literal "-0x7fc8")) () ")")))) (+ "+") (number_literal "-0x4a68")) (, ",") (identifier "unaff_s3") () ")"))) (; ";")) (expression_statement "safefree(unaff_s3);" (call_expression "safefree(unaff_s3)" (identifier "safefree") (argument_list "(unaff_s3)" (( "(") (identifier "unaff_s3") () ")"))) (; ";")) (goto_statement "goto LAB_0002d77c;" (goto "goto") (statement_identifier "LAB_0002d77c") (; ";")) (} "}"))))) (expression_statement "FUN_0002d4e0(unaff_s3,0);" (call_expression "FUN_0002d4e0(unaff_s3,0)" (identifier "FUN_0002d4e0") (argument_list "(unaff_s3,0)" (( "(") (identifier "unaff_s3") (, ",") (number_literal "0") () ")"))) (; ";")) (expression_statement "safefree(unaff_s3);" (call_expression "safefree(unaff_s3)" (identifier "safefree") (argument_list "(unaff_s3)" (( "(") (identifier "unaff_s3") () ")"))) (; ";")) (goto_statement "goto LAB_0002d77c;" (goto "goto") (statement_identifier "LAB_0002d77c") (; ";")) (} "}"))) (expression_statement "unaff_s5 = (**(code **)(pcStack_8138 + -0x7c84))(unaff_s3,uStack_80cc);" (assignment_expression "unaff_s5 = (**(code **)(pcStack_8138 + -0x7c84))(unaff_s3,uStack_80cc)" (identifier "unaff_s5") (= "=") (call_expression "(**(code **)(pcStack_8138 + -0x7c84))(unaff_s3,uStack_80cc)" (parenthesized_expression "(**(code **)(pcStack_8138 + -0x7c84))" (( "(") (pointer_expression "**(code **)(pcStack_8138 + -0x7c84)" (* "*") (pointer_expression "*(code **)(pcStack_8138 + -0x7c84)" (* "*") (cast_expression "(code **)(pcStack_8138 + -0x7c84)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_8138 + -0x7c84)" (( "(") (binary_expression "pcStack_8138 + -0x7c84" (identifier "pcStack_8138") (+ "+") (number_literal "-0x7c84")) () ")"))))) () ")")) (argument_list "(unaff_s3,uStack_80cc)" (( "(") (identifier "unaff_s3") (, ",") (identifier "uStack_80cc") () ")")))) (; ";")) (if_statement "if (unaff_s5 == 0) {\n    FUN_0002a658(*(int *)(pcStack_8138 + -0x7fc8) + -0x4890,unaff_s3);\n    safefree(unaff_s3);\n    goto LAB_0002d77c;\n  }" (if "if") (parenthesized_expression "(unaff_s5 == 0)" (( "(") (binary_expression "unaff_s5 == 0" (identifier "unaff_s5") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n    FUN_0002a658(*(int *)(pcStack_8138 + -0x7fc8) + -0x4890,unaff_s3);\n    safefree(unaff_s3);\n    goto LAB_0002d77c;\n  }" ({ "{") (expression_statement "FUN_0002a658(*(int *)(pcStack_8138 + -0x7fc8) + -0x4890,unaff_s3);" (call_expression "FUN_0002a658(*(int *)(pcStack_8138 + -0x7fc8) + -0x4890,unaff_s3)" (identifier "FUN_0002a658") (argument_list "(*(int *)(pcStack_8138 + -0x7fc8) + -0x4890,unaff_s3)" (( "(") (binary_expression "*(int *)(pcStack_8138 + -0x7fc8) + -0x4890" (pointer_expression "*(int *)(pcStack_8138 + -0x7fc8)" (* "*") (cast_expression "(int *)(pcStack_8138 + -0x7fc8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcStack_8138 + -0x7fc8)" (( "(") (binary_expression "pcStack_8138 + -0x7fc8" (identifier "pcStack_8138") (+ "+") (number_literal "-0x7fc8")) () ")")))) (+ "+") (number_literal "-0x4890")) (, ",") (identifier "unaff_s3") () ")"))) (; ";")) (expression_statement "safefree(unaff_s3);" (call_expression "safefree(unaff_s3)" (identifier "safefree") (argument_list "(unaff_s3)" (( "(") (identifier "unaff_s3") () ")"))) (; ";")) (goto_statement "goto LAB_0002d77c;" (goto "goto") (statement_identifier "LAB_0002d77c") (; ";")) (} "}"))) (expression_statement "iStack_8120 = scp_accept_filexfer();" (assignment_expression "iStack_8120 = scp_accept_filexfer()" (identifier "iStack_8120") (= "=") (call_expression "scp_accept_filexfer()" (identifier "scp_accept_filexfer") (argument_list "()" (( "(") () ")")))) (; ";")) (if_statement "if (iStack_8120 == 0) {\n    puVar1 = auStack_100b0;\n    uint64_make(&uStack_80f8,0,0);\n    uStack_8114 = (**(code **)(pcStack_8138 + -0x7488))(0);\n    uStack_811c = (**(code **)(pcStack_8138 + -0x7cac))(unaff_s3,1);\n    uint64_make(&uStack_8100,0,0);\n    iStack_8124 = *(int *)(pcStack_8138 + -0x7fc8);\n    unaff_s7 = *(int *)(pcStack_8138 + -0x7fd8);\nLAB_0002db64:\n    do {\n      iVar4 = uint64_compare(uStack_8100,uStack_80fc,uStack_80c8,uStack_80c4);\n      if (-1 < iVar4) goto LAB_0002de88;\n      uint64_make(&uStack_80f0,0,0x8000);\n      uStack_8148 = uStack_80fc;\n      uint64_subtract(&uStack_80e8,uStack_80c8,uStack_80c4,uStack_8100);\n      iVar4 = uint64_compare(uStack_80f0,uStack_80ec,uStack_80e8,uStack_80e4);\n      if (0 < iVar4) {\n        uStack_8148 = uStack_80fc;\n        uint64_subtract(&uStack_80f0,uStack_80c8,uStack_80c4,uStack_8100);\n      }\n      puVar1 = (undefined *)scp_recv_filedata(auStack_80b4,uStack_80ec);\n      if ((int)puVar1 < 1) {\n        (*pcStack_8128)(iStack_8124 + -0x5640);\n      }\n      if (iVar24 == 0) {\n        puVar5 = (undefined *)(**(code **)(pcStack_8138 + -0x7c68))(unaff_s5,auStack_80b4,puVar1);\n        if (puVar5 == puVar1) {\n          if (*(int *)(unaff_s7 + -0x3fa8) != 0) {\n            uint64_add32(&uStack_8108,uStack_80f8,uStack_80f4,puVar1);\n            uStack_80f8 = uStack_8108;\n            uStack_80f4 = uStack_8104;\n            iVar4 = (**(code **)(pcStack_8138 + -0x7488))(0);\n            if (iVar4 <= iStack_8120) {\n              uint64_add32(&uStack_80e0,uStack_8100,uStack_80fc,puVar1);\n              iVar4 = uint64_compare(uStack_80e0,uStack_80dc,uStack_80c8,uStack_80c4);\n              if (iVar4 != 0) goto LAB_0002dc94;\n            }\n            iStack_8140 = (**(code **)(pcStack_8138 + -0x7488))(0);\n            uStack_8144 = uStack_8114;\n            uStack_8148 = uStack_80f4;\n            iStack_8120 = iStack_8140;\n            (*pcStack_810c)(uStack_811c,uStack_80c8,uStack_80c4,uStack_80f8);\n          }\nLAB_0002dc94:\n          param_1 = auStack_100b0;\n          uint64_add32(&uStack_8108,uStack_8100,uStack_80fc,puVar1);\n          uStack_8100 = uStack_8108;\n          uStack_80fc = uStack_8104;\n          goto LAB_0002db64;\n        }\n        if (*(int *)(unaff_s7 + -0x3fa8) != 0) {\n          (**(code **)(pcStack_8138 + -0x759c))\n                    (1,*(int *)(pcStack_8138 + -0x7fc8) + -0x4850,uStack_811c,iStack_8110);\n        }\n        uint64_add32(&uStack_8108,uStack_8100,uStack_80fc,puVar1);\n      }\n      else {\n        uint64_add32(&uStack_8108,uStack_8100,uStack_80fc,puVar1);\n      }\n      param_1 = auStack_100b0;\n      iVar24 = 1;\n      uStack_8100 = uStack_8108;\n      uStack_80fc = uStack_8104;\n    } while( true );\n  }" (if "if") (parenthesized_expression "(iStack_8120 == 0)" (( "(") (binary_expression "iStack_8120 == 0" (identifier "iStack_8120") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n    puVar1 = auStack_100b0;\n    uint64_make(&uStack_80f8,0,0);\n    uStack_8114 = (**(code **)(pcStack_8138 + -0x7488))(0);\n    uStack_811c = (**(code **)(pcStack_8138 + -0x7cac))(unaff_s3,1);\n    uint64_make(&uStack_8100,0,0);\n    iStack_8124 = *(int *)(pcStack_8138 + -0x7fc8);\n    unaff_s7 = *(int *)(pcStack_8138 + -0x7fd8);\nLAB_0002db64:\n    do {\n      iVar4 = uint64_compare(uStack_8100,uStack_80fc,uStack_80c8,uStack_80c4);\n      if (-1 < iVar4) goto LAB_0002de88;\n      uint64_make(&uStack_80f0,0,0x8000);\n      uStack_8148 = uStack_80fc;\n      uint64_subtract(&uStack_80e8,uStack_80c8,uStack_80c4,uStack_8100);\n      iVar4 = uint64_compare(uStack_80f0,uStack_80ec,uStack_80e8,uStack_80e4);\n      if (0 < iVar4) {\n        uStack_8148 = uStack_80fc;\n        uint64_subtract(&uStack_80f0,uStack_80c8,uStack_80c4,uStack_8100);\n      }\n      puVar1 = (undefined *)scp_recv_filedata(auStack_80b4,uStack_80ec);\n      if ((int)puVar1 < 1) {\n        (*pcStack_8128)(iStack_8124 + -0x5640);\n      }\n      if (iVar24 == 0) {\n        puVar5 = (undefined *)(**(code **)(pcStack_8138 + -0x7c68))(unaff_s5,auStack_80b4,puVar1);\n        if (puVar5 == puVar1) {\n          if (*(int *)(unaff_s7 + -0x3fa8) != 0) {\n            uint64_add32(&uStack_8108,uStack_80f8,uStack_80f4,puVar1);\n            uStack_80f8 = uStack_8108;\n            uStack_80f4 = uStack_8104;\n            iVar4 = (**(code **)(pcStack_8138 + -0x7488))(0);\n            if (iVar4 <= iStack_8120) {\n              uint64_add32(&uStack_80e0,uStack_8100,uStack_80fc,puVar1);\n              iVar4 = uint64_compare(uStack_80e0,uStack_80dc,uStack_80c8,uStack_80c4);\n              if (iVar4 != 0) goto LAB_0002dc94;\n            }\n            iStack_8140 = (**(code **)(pcStack_8138 + -0x7488))(0);\n            uStack_8144 = uStack_8114;\n            uStack_8148 = uStack_80f4;\n            iStack_8120 = iStack_8140;\n            (*pcStack_810c)(uStack_811c,uStack_80c8,uStack_80c4,uStack_80f8);\n          }\nLAB_0002dc94:\n          param_1 = auStack_100b0;\n          uint64_add32(&uStack_8108,uStack_8100,uStack_80fc,puVar1);\n          uStack_8100 = uStack_8108;\n          uStack_80fc = uStack_8104;\n          goto LAB_0002db64;\n        }\n        if (*(int *)(unaff_s7 + -0x3fa8) != 0) {\n          (**(code **)(pcStack_8138 + -0x759c))\n                    (1,*(int *)(pcStack_8138 + -0x7fc8) + -0x4850,uStack_811c,iStack_8110);\n        }\n        uint64_add32(&uStack_8108,uStack_8100,uStack_80fc,puVar1);\n      }\n      else {\n        uint64_add32(&uStack_8108,uStack_8100,uStack_80fc,puVar1);\n      }\n      param_1 = auStack_100b0;\n      iVar24 = 1;\n      uStack_8100 = uStack_8108;\n      uStack_80fc = uStack_8104;\n    } while( true );\n  }" ({ "{") (expression_statement "puVar1 = auStack_100b0;" (assignment_expression "puVar1 = auStack_100b0" (identifier "puVar1") (= "=") (identifier "auStack_100b0")) (; ";")) (expression_statement "uint64_make(&uStack_80f8,0,0);" (call_expression "uint64_make(&uStack_80f8,0,0)" (identifier "uint64_make") (argument_list "(&uStack_80f8,0,0)" (( "(") (pointer_expression "&uStack_80f8" (& "&") (identifier "uStack_80f8")) (, ",") (number_literal "0") (, ",") (number_literal "0") () ")"))) (; ";")) (expression_statement "uStack_8114 = (**(code **)(pcStack_8138 + -0x7488))(0);" (assignment_expression "uStack_8114 = (**(code **)(pcStack_8138 + -0x7488))(0)" (identifier "uStack_8114") (= "=") (call_expression "(**(code **)(pcStack_8138 + -0x7488))(0)" (parenthesized_expression "(**(code **)(pcStack_8138 + -0x7488))" (( "(") (pointer_expression "**(code **)(pcStack_8138 + -0x7488)" (* "*") (pointer_expression "*(code **)(pcStack_8138 + -0x7488)" (* "*") (cast_expression "(code **)(pcStack_8138 + -0x7488)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_8138 + -0x7488)" (( "(") (binary_expression "pcStack_8138 + -0x7488" (identifier "pcStack_8138") (+ "+") (number_literal "-0x7488")) () ")"))))) () ")")) (argument_list "(0)" (( "(") (number_literal "0") () ")")))) (; ";")) (expression_statement "uStack_811c = (**(code **)(pcStack_8138 + -0x7cac))(unaff_s3,1);" (assignment_expression "uStack_811c = (**(code **)(pcStack_8138 + -0x7cac))(unaff_s3,1)" (identifier "uStack_811c") (= "=") (call_expression "(**(code **)(pcStack_8138 + -0x7cac))(unaff_s3,1)" (parenthesized_expression "(**(code **)(pcStack_8138 + -0x7cac))" (( "(") (pointer_expression "**(code **)(pcStack_8138 + -0x7cac)" (* "*") (pointer_expression "*(code **)(pcStack_8138 + -0x7cac)" (* "*") (cast_expression "(code **)(pcStack_8138 + -0x7cac)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_8138 + -0x7cac)" (( "(") (binary_expression "pcStack_8138 + -0x7cac" (identifier "pcStack_8138") (+ "+") (number_literal "-0x7cac")) () ")"))))) () ")")) (argument_list "(unaff_s3,1)" (( "(") (identifier "unaff_s3") (, ",") (number_literal "1") () ")")))) (; ";")) (expression_statement "uint64_make(&uStack_8100,0,0);" (call_expression "uint64_make(&uStack_8100,0,0)" (identifier "uint64_make") (argument_list "(&uStack_8100,0,0)" (( "(") (pointer_expression "&uStack_8100" (& "&") (identifier "uStack_8100")) (, ",") (number_literal "0") (, ",") (number_literal "0") () ")"))) (; ";")) (expression_statement "iStack_8124 = *(int *)(pcStack_8138 + -0x7fc8);" (assignment_expression "iStack_8124 = *(int *)(pcStack_8138 + -0x7fc8)" (identifier "iStack_8124") (= "=") (pointer_expression "*(int *)(pcStack_8138 + -0x7fc8)" (* "*") (cast_expression "(int *)(pcStack_8138 + -0x7fc8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcStack_8138 + -0x7fc8)" (( "(") (binary_expression "pcStack_8138 + -0x7fc8" (identifier "pcStack_8138") (+ "+") (number_literal "-0x7fc8")) () ")"))))) (; ";")) (expression_statement "unaff_s7 = *(int *)(pcStack_8138 + -0x7fd8);" (assignment_expression "unaff_s7 = *(int *)(pcStack_8138 + -0x7fd8)" (identifier "unaff_s7") (= "=") (pointer_expression "*(int *)(pcStack_8138 + -0x7fd8)" (* "*") (cast_expression "(int *)(pcStack_8138 + -0x7fd8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcStack_8138 + -0x7fd8)" (( "(") (binary_expression "pcStack_8138 + -0x7fd8" (identifier "pcStack_8138") (+ "+") (number_literal "-0x7fd8")) () ")"))))) (; ";")) (labeled_statement "LAB_0002db64:\n    do {\n      iVar4 = uint64_compare(uStack_8100,uStack_80fc,uStack_80c8,uStack_80c4);\n      if (-1 < iVar4) goto LAB_0002de88;\n      uint64_make(&uStack_80f0,0,0x8000);\n      uStack_8148 = uStack_80fc;\n      uint64_subtract(&uStack_80e8,uStack_80c8,uStack_80c4,uStack_8100);\n      iVar4 = uint64_compare(uStack_80f0,uStack_80ec,uStack_80e8,uStack_80e4);\n      if (0 < iVar4) {\n        uStack_8148 = uStack_80fc;\n        uint64_subtract(&uStack_80f0,uStack_80c8,uStack_80c4,uStack_8100);\n      }\n      puVar1 = (undefined *)scp_recv_filedata(auStack_80b4,uStack_80ec);\n      if ((int)puVar1 < 1) {\n        (*pcStack_8128)(iStack_8124 + -0x5640);\n      }\n      if (iVar24 == 0) {\n        puVar5 = (undefined *)(**(code **)(pcStack_8138 + -0x7c68))(unaff_s5,auStack_80b4,puVar1);\n        if (puVar5 == puVar1) {\n          if (*(int *)(unaff_s7 + -0x3fa8) != 0) {\n            uint64_add32(&uStack_8108,uStack_80f8,uStack_80f4,puVar1);\n            uStack_80f8 = uStack_8108;\n            uStack_80f4 = uStack_8104;\n            iVar4 = (**(code **)(pcStack_8138 + -0x7488))(0);\n            if (iVar4 <= iStack_8120) {\n              uint64_add32(&uStack_80e0,uStack_8100,uStack_80fc,puVar1);\n              iVar4 = uint64_compare(uStack_80e0,uStack_80dc,uStack_80c8,uStack_80c4);\n              if (iVar4 != 0) goto LAB_0002dc94;\n            }\n            iStack_8140 = (**(code **)(pcStack_8138 + -0x7488))(0);\n            uStack_8144 = uStack_8114;\n            uStack_8148 = uStack_80f4;\n            iStack_8120 = iStack_8140;\n            (*pcStack_810c)(uStack_811c,uStack_80c8,uStack_80c4,uStack_80f8);\n          }\nLAB_0002dc94:\n          param_1 = auStack_100b0;\n          uint64_add32(&uStack_8108,uStack_8100,uStack_80fc,puVar1);\n          uStack_8100 = uStack_8108;\n          uStack_80fc = uStack_8104;\n          goto LAB_0002db64;\n        }\n        if (*(int *)(unaff_s7 + -0x3fa8) != 0) {\n          (**(code **)(pcStack_8138 + -0x759c))\n                    (1,*(int *)(pcStack_8138 + -0x7fc8) + -0x4850,uStack_811c,iStack_8110);\n        }\n        uint64_add32(&uStack_8108,uStack_8100,uStack_80fc,puVar1);\n      }\n      else {\n        uint64_add32(&uStack_8108,uStack_8100,uStack_80fc,puVar1);\n      }\n      param_1 = auStack_100b0;\n      iVar24 = 1;\n      uStack_8100 = uStack_8108;\n      uStack_80fc = uStack_8104;\n    } while( true );" (statement_identifier "LAB_0002db64") (: ":") (do_statement "do {\n      iVar4 = uint64_compare(uStack_8100,uStack_80fc,uStack_80c8,uStack_80c4);\n      if (-1 < iVar4) goto LAB_0002de88;\n      uint64_make(&uStack_80f0,0,0x8000);\n      uStack_8148 = uStack_80fc;\n      uint64_subtract(&uStack_80e8,uStack_80c8,uStack_80c4,uStack_8100);\n      iVar4 = uint64_compare(uStack_80f0,uStack_80ec,uStack_80e8,uStack_80e4);\n      if (0 < iVar4) {\n        uStack_8148 = uStack_80fc;\n        uint64_subtract(&uStack_80f0,uStack_80c8,uStack_80c4,uStack_8100);\n      }\n      puVar1 = (undefined *)scp_recv_filedata(auStack_80b4,uStack_80ec);\n      if ((int)puVar1 < 1) {\n        (*pcStack_8128)(iStack_8124 + -0x5640);\n      }\n      if (iVar24 == 0) {\n        puVar5 = (undefined *)(**(code **)(pcStack_8138 + -0x7c68))(unaff_s5,auStack_80b4,puVar1);\n        if (puVar5 == puVar1) {\n          if (*(int *)(unaff_s7 + -0x3fa8) != 0) {\n            uint64_add32(&uStack_8108,uStack_80f8,uStack_80f4,puVar1);\n            uStack_80f8 = uStack_8108;\n            uStack_80f4 = uStack_8104;\n            iVar4 = (**(code **)(pcStack_8138 + -0x7488))(0);\n            if (iVar4 <= iStack_8120) {\n              uint64_add32(&uStack_80e0,uStack_8100,uStack_80fc,puVar1);\n              iVar4 = uint64_compare(uStack_80e0,uStack_80dc,uStack_80c8,uStack_80c4);\n              if (iVar4 != 0) goto LAB_0002dc94;\n            }\n            iStack_8140 = (**(code **)(pcStack_8138 + -0x7488))(0);\n            uStack_8144 = uStack_8114;\n            uStack_8148 = uStack_80f4;\n            iStack_8120 = iStack_8140;\n            (*pcStack_810c)(uStack_811c,uStack_80c8,uStack_80c4,uStack_80f8);\n          }\nLAB_0002dc94:\n          param_1 = auStack_100b0;\n          uint64_add32(&uStack_8108,uStack_8100,uStack_80fc,puVar1);\n          uStack_8100 = uStack_8108;\n          uStack_80fc = uStack_8104;\n          goto LAB_0002db64;\n        }\n        if (*(int *)(unaff_s7 + -0x3fa8) != 0) {\n          (**(code **)(pcStack_8138 + -0x759c))\n                    (1,*(int *)(pcStack_8138 + -0x7fc8) + -0x4850,uStack_811c,iStack_8110);\n        }\n        uint64_add32(&uStack_8108,uStack_8100,uStack_80fc,puVar1);\n      }\n      else {\n        uint64_add32(&uStack_8108,uStack_8100,uStack_80fc,puVar1);\n      }\n      param_1 = auStack_100b0;\n      iVar24 = 1;\n      uStack_8100 = uStack_8108;\n      uStack_80fc = uStack_8104;\n    } while( true );" (do "do") (compound_statement "{\n      iVar4 = uint64_compare(uStack_8100,uStack_80fc,uStack_80c8,uStack_80c4);\n      if (-1 < iVar4) goto LAB_0002de88;\n      uint64_make(&uStack_80f0,0,0x8000);\n      uStack_8148 = uStack_80fc;\n      uint64_subtract(&uStack_80e8,uStack_80c8,uStack_80c4,uStack_8100);\n      iVar4 = uint64_compare(uStack_80f0,uStack_80ec,uStack_80e8,uStack_80e4);\n      if (0 < iVar4) {\n        uStack_8148 = uStack_80fc;\n        uint64_subtract(&uStack_80f0,uStack_80c8,uStack_80c4,uStack_8100);\n      }\n      puVar1 = (undefined *)scp_recv_filedata(auStack_80b4,uStack_80ec);\n      if ((int)puVar1 < 1) {\n        (*pcStack_8128)(iStack_8124 + -0x5640);\n      }\n      if (iVar24 == 0) {\n        puVar5 = (undefined *)(**(code **)(pcStack_8138 + -0x7c68))(unaff_s5,auStack_80b4,puVar1);\n        if (puVar5 == puVar1) {\n          if (*(int *)(unaff_s7 + -0x3fa8) != 0) {\n            uint64_add32(&uStack_8108,uStack_80f8,uStack_80f4,puVar1);\n            uStack_80f8 = uStack_8108;\n            uStack_80f4 = uStack_8104;\n            iVar4 = (**(code **)(pcStack_8138 + -0x7488))(0);\n            if (iVar4 <= iStack_8120) {\n              uint64_add32(&uStack_80e0,uStack_8100,uStack_80fc,puVar1);\n              iVar4 = uint64_compare(uStack_80e0,uStack_80dc,uStack_80c8,uStack_80c4);\n              if (iVar4 != 0) goto LAB_0002dc94;\n            }\n            iStack_8140 = (**(code **)(pcStack_8138 + -0x7488))(0);\n            uStack_8144 = uStack_8114;\n            uStack_8148 = uStack_80f4;\n            iStack_8120 = iStack_8140;\n            (*pcStack_810c)(uStack_811c,uStack_80c8,uStack_80c4,uStack_80f8);\n          }\nLAB_0002dc94:\n          param_1 = auStack_100b0;\n          uint64_add32(&uStack_8108,uStack_8100,uStack_80fc,puVar1);\n          uStack_8100 = uStack_8108;\n          uStack_80fc = uStack_8104;\n          goto LAB_0002db64;\n        }\n        if (*(int *)(unaff_s7 + -0x3fa8) != 0) {\n          (**(code **)(pcStack_8138 + -0x759c))\n                    (1,*(int *)(pcStack_8138 + -0x7fc8) + -0x4850,uStack_811c,iStack_8110);\n        }\n        uint64_add32(&uStack_8108,uStack_8100,uStack_80fc,puVar1);\n      }\n      else {\n        uint64_add32(&uStack_8108,uStack_8100,uStack_80fc,puVar1);\n      }\n      param_1 = auStack_100b0;\n      iVar24 = 1;\n      uStack_8100 = uStack_8108;\n      uStack_80fc = uStack_8104;\n    }" ({ "{") (expression_statement "iVar4 = uint64_compare(uStack_8100,uStack_80fc,uStack_80c8,uStack_80c4);" (assignment_expression "iVar4 = uint64_compare(uStack_8100,uStack_80fc,uStack_80c8,uStack_80c4)" (identifier "iVar4") (= "=") (call_expression "uint64_compare(uStack_8100,uStack_80fc,uStack_80c8,uStack_80c4)" (identifier "uint64_compare") (argument_list "(uStack_8100,uStack_80fc,uStack_80c8,uStack_80c4)" (( "(") (identifier "uStack_8100") (, ",") (identifier "uStack_80fc") (, ",") (identifier "uStack_80c8") (, ",") (identifier "uStack_80c4") () ")")))) (; ";")) (if_statement "if (-1 < iVar4) goto LAB_0002de88;" (if "if") (parenthesized_expression "(-1 < iVar4)" (( "(") (binary_expression "-1 < iVar4" (number_literal "-1") (< "<") (identifier "iVar4")) () ")")) (goto_statement "goto LAB_0002de88;" (goto "goto") (statement_identifier "LAB_0002de88") (; ";"))) (expression_statement "uint64_make(&uStack_80f0,0,0x8000);" (call_expression "uint64_make(&uStack_80f0,0,0x8000)" (identifier "uint64_make") (argument_list "(&uStack_80f0,0,0x8000)" (( "(") (pointer_expression "&uStack_80f0" (& "&") (identifier "uStack_80f0")) (, ",") (number_literal "0") (, ",") (number_literal "0x8000") () ")"))) (; ";")) (expression_statement "uStack_8148 = uStack_80fc;" (assignment_expression "uStack_8148 = uStack_80fc" (identifier "uStack_8148") (= "=") (identifier "uStack_80fc")) (; ";")) (expression_statement "uint64_subtract(&uStack_80e8,uStack_80c8,uStack_80c4,uStack_8100);" (call_expression "uint64_subtract(&uStack_80e8,uStack_80c8,uStack_80c4,uStack_8100)" (identifier "uint64_subtract") (argument_list "(&uStack_80e8,uStack_80c8,uStack_80c4,uStack_8100)" (( "(") (pointer_expression "&uStack_80e8" (& "&") (identifier "uStack_80e8")) (, ",") (identifier "uStack_80c8") (, ",") (identifier "uStack_80c4") (, ",") (identifier "uStack_8100") () ")"))) (; ";")) (expression_statement "iVar4 = uint64_compare(uStack_80f0,uStack_80ec,uStack_80e8,uStack_80e4);" (assignment_expression "iVar4 = uint64_compare(uStack_80f0,uStack_80ec,uStack_80e8,uStack_80e4)" (identifier "iVar4") (= "=") (call_expression "uint64_compare(uStack_80f0,uStack_80ec,uStack_80e8,uStack_80e4)" (identifier "uint64_compare") (argument_list "(uStack_80f0,uStack_80ec,uStack_80e8,uStack_80e4)" (( "(") (identifier "uStack_80f0") (, ",") (identifier "uStack_80ec") (, ",") (identifier "uStack_80e8") (, ",") (identifier "uStack_80e4") () ")")))) (; ";")) (if_statement "if (0 < iVar4) {\n        uStack_8148 = uStack_80fc;\n        uint64_subtract(&uStack_80f0,uStack_80c8,uStack_80c4,uStack_8100);\n      }" (if "if") (parenthesized_expression "(0 < iVar4)" (( "(") (binary_expression "0 < iVar4" (number_literal "0") (< "<") (identifier "iVar4")) () ")")) (compound_statement "{\n        uStack_8148 = uStack_80fc;\n        uint64_subtract(&uStack_80f0,uStack_80c8,uStack_80c4,uStack_8100);\n      }" ({ "{") (expression_statement "uStack_8148 = uStack_80fc;" (assignment_expression "uStack_8148 = uStack_80fc" (identifier "uStack_8148") (= "=") (identifier "uStack_80fc")) (; ";")) (expression_statement "uint64_subtract(&uStack_80f0,uStack_80c8,uStack_80c4,uStack_8100);" (call_expression "uint64_subtract(&uStack_80f0,uStack_80c8,uStack_80c4,uStack_8100)" (identifier "uint64_subtract") (argument_list "(&uStack_80f0,uStack_80c8,uStack_80c4,uStack_8100)" (( "(") (pointer_expression "&uStack_80f0" (& "&") (identifier "uStack_80f0")) (, ",") (identifier "uStack_80c8") (, ",") (identifier "uStack_80c4") (, ",") (identifier "uStack_8100") () ")"))) (; ";")) (} "}"))) (expression_statement "puVar1 = (undefined *)scp_recv_filedata(auStack_80b4,uStack_80ec);" (assignment_expression "puVar1 = (undefined *)scp_recv_filedata(auStack_80b4,uStack_80ec)" (identifier "puVar1") (= "=") (cast_expression "(undefined *)scp_recv_filedata(auStack_80b4,uStack_80ec)" (( "(") (type_descriptor "undefined *" (type_identifier "undefined") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "scp_recv_filedata(auStack_80b4,uStack_80ec)" (identifier "scp_recv_filedata") (argument_list "(auStack_80b4,uStack_80ec)" (( "(") (identifier "auStack_80b4") (, ",") (identifier "uStack_80ec") () ")"))))) (; ";")) (if_statement "if ((int)puVar1 < 1) {\n        (*pcStack_8128)(iStack_8124 + -0x5640);\n      }" (if "if") (parenthesized_expression "((int)puVar1 < 1)" (( "(") (binary_expression "(int)puVar1 < 1" (cast_expression "(int)puVar1" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "puVar1")) (< "<") (number_literal "1")) () ")")) (compound_statement "{\n        (*pcStack_8128)(iStack_8124 + -0x5640);\n      }" ({ "{") (expression_statement "(*pcStack_8128)(iStack_8124 + -0x5640);" (call_expression "(*pcStack_8128)(iStack_8124 + -0x5640)" (parenthesized_expression "(*pcStack_8128)" (( "(") (pointer_expression "*pcStack_8128" (* "*") (identifier "pcStack_8128")) () ")")) (argument_list "(iStack_8124 + -0x5640)" (( "(") (binary_expression "iStack_8124 + -0x5640" (identifier "iStack_8124") (+ "+") (number_literal "-0x5640")) () ")"))) (; ";")) (} "}"))) (if_statement "if (iVar24 == 0) {\n        puVar5 = (undefined *)(**(code **)(pcStack_8138 + -0x7c68))(unaff_s5,auStack_80b4,puVar1);\n        if (puVar5 == puVar1) {\n          if (*(int *)(unaff_s7 + -0x3fa8) != 0) {\n            uint64_add32(&uStack_8108,uStack_80f8,uStack_80f4,puVar1);\n            uStack_80f8 = uStack_8108;\n            uStack_80f4 = uStack_8104;\n            iVar4 = (**(code **)(pcStack_8138 + -0x7488))(0);\n            if (iVar4 <= iStack_8120) {\n              uint64_add32(&uStack_80e0,uStack_8100,uStack_80fc,puVar1);\n              iVar4 = uint64_compare(uStack_80e0,uStack_80dc,uStack_80c8,uStack_80c4);\n              if (iVar4 != 0) goto LAB_0002dc94;\n            }\n            iStack_8140 = (**(code **)(pcStack_8138 + -0x7488))(0);\n            uStack_8144 = uStack_8114;\n            uStack_8148 = uStack_80f4;\n            iStack_8120 = iStack_8140;\n            (*pcStack_810c)(uStack_811c,uStack_80c8,uStack_80c4,uStack_80f8);\n          }\nLAB_0002dc94:\n          param_1 = auStack_100b0;\n          uint64_add32(&uStack_8108,uStack_8100,uStack_80fc,puVar1);\n          uStack_8100 = uStack_8108;\n          uStack_80fc = uStack_8104;\n          goto LAB_0002db64;\n        }\n        if (*(int *)(unaff_s7 + -0x3fa8) != 0) {\n          (**(code **)(pcStack_8138 + -0x759c))\n                    (1,*(int *)(pcStack_8138 + -0x7fc8) + -0x4850,uStack_811c,iStack_8110);\n        }\n        uint64_add32(&uStack_8108,uStack_8100,uStack_80fc,puVar1);\n      }\n      else {\n        uint64_add32(&uStack_8108,uStack_8100,uStack_80fc,puVar1);\n      }" (if "if") (parenthesized_expression "(iVar24 == 0)" (( "(") (binary_expression "iVar24 == 0" (identifier "iVar24") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n        puVar5 = (undefined *)(**(code **)(pcStack_8138 + -0x7c68))(unaff_s5,auStack_80b4,puVar1);\n        if (puVar5 == puVar1) {\n          if (*(int *)(unaff_s7 + -0x3fa8) != 0) {\n            uint64_add32(&uStack_8108,uStack_80f8,uStack_80f4,puVar1);\n            uStack_80f8 = uStack_8108;\n            uStack_80f4 = uStack_8104;\n            iVar4 = (**(code **)(pcStack_8138 + -0x7488))(0);\n            if (iVar4 <= iStack_8120) {\n              uint64_add32(&uStack_80e0,uStack_8100,uStack_80fc,puVar1);\n              iVar4 = uint64_compare(uStack_80e0,uStack_80dc,uStack_80c8,uStack_80c4);\n              if (iVar4 != 0) goto LAB_0002dc94;\n            }\n            iStack_8140 = (**(code **)(pcStack_8138 + -0x7488))(0);\n            uStack_8144 = uStack_8114;\n            uStack_8148 = uStack_80f4;\n            iStack_8120 = iStack_8140;\n            (*pcStack_810c)(uStack_811c,uStack_80c8,uStack_80c4,uStack_80f8);\n          }\nLAB_0002dc94:\n          param_1 = auStack_100b0;\n          uint64_add32(&uStack_8108,uStack_8100,uStack_80fc,puVar1);\n          uStack_8100 = uStack_8108;\n          uStack_80fc = uStack_8104;\n          goto LAB_0002db64;\n        }\n        if (*(int *)(unaff_s7 + -0x3fa8) != 0) {\n          (**(code **)(pcStack_8138 + -0x759c))\n                    (1,*(int *)(pcStack_8138 + -0x7fc8) + -0x4850,uStack_811c,iStack_8110);\n        }\n        uint64_add32(&uStack_8108,uStack_8100,uStack_80fc,puVar1);\n      }" ({ "{") (expression_statement "puVar5 = (undefined *)(**(code **)(pcStack_8138 + -0x7c68))(unaff_s5,auStack_80b4,puVar1);" (assignment_expression "puVar5 = (undefined *)(**(code **)(pcStack_8138 + -0x7c68))(unaff_s5,auStack_80b4,puVar1)" (identifier "puVar5") (= "=") (cast_expression "(undefined *)(**(code **)(pcStack_8138 + -0x7c68))(unaff_s5,auStack_80b4,puVar1)" (( "(") (type_descriptor "undefined *" (type_identifier "undefined") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "(**(code **)(pcStack_8138 + -0x7c68))(unaff_s5,auStack_80b4,puVar1)" (parenthesized_expression "(**(code **)(pcStack_8138 + -0x7c68))" (( "(") (pointer_expression "**(code **)(pcStack_8138 + -0x7c68)" (* "*") (pointer_expression "*(code **)(pcStack_8138 + -0x7c68)" (* "*") (cast_expression "(code **)(pcStack_8138 + -0x7c68)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_8138 + -0x7c68)" (( "(") (binary_expression "pcStack_8138 + -0x7c68" (identifier "pcStack_8138") (+ "+") (number_literal "-0x7c68")) () ")"))))) () ")")) (argument_list "(unaff_s5,auStack_80b4,puVar1)" (( "(") (identifier "unaff_s5") (, ",") (identifier "auStack_80b4") (, ",") (identifier "puVar1") () ")"))))) (; ";")) (if_statement "if (puVar5 == puVar1) {\n          if (*(int *)(unaff_s7 + -0x3fa8) != 0) {\n            uint64_add32(&uStack_8108,uStack_80f8,uStack_80f4,puVar1);\n            uStack_80f8 = uStack_8108;\n            uStack_80f4 = uStack_8104;\n            iVar4 = (**(code **)(pcStack_8138 + -0x7488))(0);\n            if (iVar4 <= iStack_8120) {\n              uint64_add32(&uStack_80e0,uStack_8100,uStack_80fc,puVar1);\n              iVar4 = uint64_compare(uStack_80e0,uStack_80dc,uStack_80c8,uStack_80c4);\n              if (iVar4 != 0) goto LAB_0002dc94;\n            }\n            iStack_8140 = (**(code **)(pcStack_8138 + -0x7488))(0);\n            uStack_8144 = uStack_8114;\n            uStack_8148 = uStack_80f4;\n            iStack_8120 = iStack_8140;\n            (*pcStack_810c)(uStack_811c,uStack_80c8,uStack_80c4,uStack_80f8);\n          }\nLAB_0002dc94:\n          param_1 = auStack_100b0;\n          uint64_add32(&uStack_8108,uStack_8100,uStack_80fc,puVar1);\n          uStack_8100 = uStack_8108;\n          uStack_80fc = uStack_8104;\n          goto LAB_0002db64;\n        }" (if "if") (parenthesized_expression "(puVar5 == puVar1)" (( "(") (binary_expression "puVar5 == puVar1" (identifier "puVar5") (== "==") (identifier "puVar1")) () ")")) (compound_statement "{\n          if (*(int *)(unaff_s7 + -0x3fa8) != 0) {\n            uint64_add32(&uStack_8108,uStack_80f8,uStack_80f4,puVar1);\n            uStack_80f8 = uStack_8108;\n            uStack_80f4 = uStack_8104;\n            iVar4 = (**(code **)(pcStack_8138 + -0x7488))(0);\n            if (iVar4 <= iStack_8120) {\n              uint64_add32(&uStack_80e0,uStack_8100,uStack_80fc,puVar1);\n              iVar4 = uint64_compare(uStack_80e0,uStack_80dc,uStack_80c8,uStack_80c4);\n              if (iVar4 != 0) goto LAB_0002dc94;\n            }\n            iStack_8140 = (**(code **)(pcStack_8138 + -0x7488))(0);\n            uStack_8144 = uStack_8114;\n            uStack_8148 = uStack_80f4;\n            iStack_8120 = iStack_8140;\n            (*pcStack_810c)(uStack_811c,uStack_80c8,uStack_80c4,uStack_80f8);\n          }\nLAB_0002dc94:\n          param_1 = auStack_100b0;\n          uint64_add32(&uStack_8108,uStack_8100,uStack_80fc,puVar1);\n          uStack_8100 = uStack_8108;\n          uStack_80fc = uStack_8104;\n          goto LAB_0002db64;\n        }" ({ "{") (if_statement "if (*(int *)(unaff_s7 + -0x3fa8) != 0) {\n            uint64_add32(&uStack_8108,uStack_80f8,uStack_80f4,puVar1);\n            uStack_80f8 = uStack_8108;\n            uStack_80f4 = uStack_8104;\n            iVar4 = (**(code **)(pcStack_8138 + -0x7488))(0);\n            if (iVar4 <= iStack_8120) {\n              uint64_add32(&uStack_80e0,uStack_8100,uStack_80fc,puVar1);\n              iVar4 = uint64_compare(uStack_80e0,uStack_80dc,uStack_80c8,uStack_80c4);\n              if (iVar4 != 0) goto LAB_0002dc94;\n            }\n            iStack_8140 = (**(code **)(pcStack_8138 + -0x7488))(0);\n            uStack_8144 = uStack_8114;\n            uStack_8148 = uStack_80f4;\n            iStack_8120 = iStack_8140;\n            (*pcStack_810c)(uStack_811c,uStack_80c8,uStack_80c4,uStack_80f8);\n          }" (if "if") (parenthesized_expression "(*(int *)(unaff_s7 + -0x3fa8) != 0)" (( "(") (binary_expression "*(int *)(unaff_s7 + -0x3fa8) != 0" (pointer_expression "*(int *)(unaff_s7 + -0x3fa8)" (* "*") (cast_expression "(int *)(unaff_s7 + -0x3fa8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(unaff_s7 + -0x3fa8)" (( "(") (binary_expression "unaff_s7 + -0x3fa8" (identifier "unaff_s7") (+ "+") (number_literal "-0x3fa8")) () ")")))) (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n            uint64_add32(&uStack_8108,uStack_80f8,uStack_80f4,puVar1);\n            uStack_80f8 = uStack_8108;\n            uStack_80f4 = uStack_8104;\n            iVar4 = (**(code **)(pcStack_8138 + -0x7488))(0);\n            if (iVar4 <= iStack_8120) {\n              uint64_add32(&uStack_80e0,uStack_8100,uStack_80fc,puVar1);\n              iVar4 = uint64_compare(uStack_80e0,uStack_80dc,uStack_80c8,uStack_80c4);\n              if (iVar4 != 0) goto LAB_0002dc94;\n            }\n            iStack_8140 = (**(code **)(pcStack_8138 + -0x7488))(0);\n            uStack_8144 = uStack_8114;\n            uStack_8148 = uStack_80f4;\n            iStack_8120 = iStack_8140;\n            (*pcStack_810c)(uStack_811c,uStack_80c8,uStack_80c4,uStack_80f8);\n          }" ({ "{") (expression_statement "uint64_add32(&uStack_8108,uStack_80f8,uStack_80f4,puVar1);" (call_expression "uint64_add32(&uStack_8108,uStack_80f8,uStack_80f4,puVar1)" (identifier "uint64_add32") (argument_list "(&uStack_8108,uStack_80f8,uStack_80f4,puVar1)" (( "(") (pointer_expression "&uStack_8108" (& "&") (identifier "uStack_8108")) (, ",") (identifier "uStack_80f8") (, ",") (identifier "uStack_80f4") (, ",") (identifier "puVar1") () ")"))) (; ";")) (expression_statement "uStack_80f8 = uStack_8108;" (assignment_expression "uStack_80f8 = uStack_8108" (identifier "uStack_80f8") (= "=") (identifier "uStack_8108")) (; ";")) (expression_statement "uStack_80f4 = uStack_8104;" (assignment_expression "uStack_80f4 = uStack_8104" (identifier "uStack_80f4") (= "=") (identifier "uStack_8104")) (; ";")) (expression_statement "iVar4 = (**(code **)(pcStack_8138 + -0x7488))(0);" (assignment_expression "iVar4 = (**(code **)(pcStack_8138 + -0x7488))(0)" (identifier "iVar4") (= "=") (call_expression "(**(code **)(pcStack_8138 + -0x7488))(0)" (parenthesized_expression "(**(code **)(pcStack_8138 + -0x7488))" (( "(") (pointer_expression "**(code **)(pcStack_8138 + -0x7488)" (* "*") (pointer_expression "*(code **)(pcStack_8138 + -0x7488)" (* "*") (cast_expression "(code **)(pcStack_8138 + -0x7488)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_8138 + -0x7488)" (( "(") (binary_expression "pcStack_8138 + -0x7488" (identifier "pcStack_8138") (+ "+") (number_literal "-0x7488")) () ")"))))) () ")")) (argument_list "(0)" (( "(") (number_literal "0") () ")")))) (; ";")) (if_statement "if (iVar4 <= iStack_8120) {\n              uint64_add32(&uStack_80e0,uStack_8100,uStack_80fc,puVar1);\n              iVar4 = uint64_compare(uStack_80e0,uStack_80dc,uStack_80c8,uStack_80c4);\n              if (iVar4 != 0) goto LAB_0002dc94;\n            }" (if "if") (parenthesized_expression "(iVar4 <= iStack_8120)" (( "(") (binary_expression "iVar4 <= iStack_8120" (identifier "iVar4") (<= "<=") (identifier "iStack_8120")) () ")")) (compound_statement "{\n              uint64_add32(&uStack_80e0,uStack_8100,uStack_80fc,puVar1);\n              iVar4 = uint64_compare(uStack_80e0,uStack_80dc,uStack_80c8,uStack_80c4);\n              if (iVar4 != 0) goto LAB_0002dc94;\n            }" ({ "{") (expression_statement "uint64_add32(&uStack_80e0,uStack_8100,uStack_80fc,puVar1);" (call_expression "uint64_add32(&uStack_80e0,uStack_8100,uStack_80fc,puVar1)" (identifier "uint64_add32") (argument_list "(&uStack_80e0,uStack_8100,uStack_80fc,puVar1)" (( "(") (pointer_expression "&uStack_80e0" (& "&") (identifier "uStack_80e0")) (, ",") (identifier "uStack_8100") (, ",") (identifier "uStack_80fc") (, ",") (identifier "puVar1") () ")"))) (; ";")) (expression_statement "iVar4 = uint64_compare(uStack_80e0,uStack_80dc,uStack_80c8,uStack_80c4);" (assignment_expression "iVar4 = uint64_compare(uStack_80e0,uStack_80dc,uStack_80c8,uStack_80c4)" (identifier "iVar4") (= "=") (call_expression "uint64_compare(uStack_80e0,uStack_80dc,uStack_80c8,uStack_80c4)" (identifier "uint64_compare") (argument_list "(uStack_80e0,uStack_80dc,uStack_80c8,uStack_80c4)" (( "(") (identifier "uStack_80e0") (, ",") (identifier "uStack_80dc") (, ",") (identifier "uStack_80c8") (, ",") (identifier "uStack_80c4") () ")")))) (; ";")) (if_statement "if (iVar4 != 0) goto LAB_0002dc94;" (if "if") (parenthesized_expression "(iVar4 != 0)" (( "(") (binary_expression "iVar4 != 0" (identifier "iVar4") (!= "!=") (number_literal "0")) () ")")) (goto_statement "goto LAB_0002dc94;" (goto "goto") (statement_identifier "LAB_0002dc94") (; ";"))) (} "}"))) (expression_statement "iStack_8140 = (**(code **)(pcStack_8138 + -0x7488))(0);" (assignment_expression "iStack_8140 = (**(code **)(pcStack_8138 + -0x7488))(0)" (identifier "iStack_8140") (= "=") (call_expression "(**(code **)(pcStack_8138 + -0x7488))(0)" (parenthesized_expression "(**(code **)(pcStack_8138 + -0x7488))" (( "(") (pointer_expression "**(code **)(pcStack_8138 + -0x7488)" (* "*") (pointer_expression "*(code **)(pcStack_8138 + -0x7488)" (* "*") (cast_expression "(code **)(pcStack_8138 + -0x7488)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_8138 + -0x7488)" (( "(") (binary_expression "pcStack_8138 + -0x7488" (identifier "pcStack_8138") (+ "+") (number_literal "-0x7488")) () ")"))))) () ")")) (argument_list "(0)" (( "(") (number_literal "0") () ")")))) (; ";")) (expression_statement "uStack_8144 = uStack_8114;" (assignment_expression "uStack_8144 = uStack_8114" (identifier "uStack_8144") (= "=") (identifier "uStack_8114")) (; ";")) (expression_statement "uStack_8148 = uStack_80f4;" (assignment_expression "uStack_8148 = uStack_80f4" (identifier "uStack_8148") (= "=") (identifier "uStack_80f4")) (; ";")) (expression_statement "iStack_8120 = iStack_8140;" (assignment_expression "iStack_8120 = iStack_8140" (identifier "iStack_8120") (= "=") (identifier "iStack_8140")) (; ";")) (expression_statement "(*pcStack_810c)(uStack_811c,uStack_80c8,uStack_80c4,uStack_80f8);" (call_expression "(*pcStack_810c)(uStack_811c,uStack_80c8,uStack_80c4,uStack_80f8)" (parenthesized_expression "(*pcStack_810c)" (( "(") (pointer_expression "*pcStack_810c" (* "*") (identifier "pcStack_810c")) () ")")) (argument_list "(uStack_811c,uStack_80c8,uStack_80c4,uStack_80f8)" (( "(") (identifier "uStack_811c") (, ",") (identifier "uStack_80c8") (, ",") (identifier "uStack_80c4") (, ",") (identifier "uStack_80f8") () ")"))) (; ";")) (} "}"))) (labeled_statement "LAB_0002dc94:\n          param_1 = auStack_100b0;" (statement_identifier "LAB_0002dc94") (: ":") (expression_statement "param_1 = auStack_100b0;" (assignment_expression "param_1 = auStack_100b0" (identifier "param_1") (= "=") (identifier "auStack_100b0")) (; ";"))) (expression_statement "uint64_add32(&uStack_8108,uStack_8100,uStack_80fc,puVar1);" (call_expression "uint64_add32(&uStack_8108,uStack_8100,uStack_80fc,puVar1)" (identifier "uint64_add32") (argument_list "(&uStack_8108,uStack_8100,uStack_80fc,puVar1)" (( "(") (pointer_expression "&uStack_8108" (& "&") (identifier "uStack_8108")) (, ",") (identifier "uStack_8100") (, ",") (identifier "uStack_80fc") (, ",") (identifier "puVar1") () ")"))) (; ";")) (expression_statement "uStack_8100 = uStack_8108;" (assignment_expression "uStack_8100 = uStack_8108" (identifier "uStack_8100") (= "=") (identifier "uStack_8108")) (; ";")) (expression_statement "uStack_80fc = uStack_8104;" (assignment_expression "uStack_80fc = uStack_8104" (identifier "uStack_80fc") (= "=") (identifier "uStack_8104")) (; ";")) (goto_statement "goto LAB_0002db64;" (goto "goto") (statement_identifier "LAB_0002db64") (; ";")) (} "}"))) (if_statement "if (*(int *)(unaff_s7 + -0x3fa8) != 0) {\n          (**(code **)(pcStack_8138 + -0x759c))\n                    (1,*(int *)(pcStack_8138 + -0x7fc8) + -0x4850,uStack_811c,iStack_8110);\n        }" (if "if") (parenthesized_expression "(*(int *)(unaff_s7 + -0x3fa8) != 0)" (( "(") (binary_expression "*(int *)(unaff_s7 + -0x3fa8) != 0" (pointer_expression "*(int *)(unaff_s7 + -0x3fa8)" (* "*") (cast_expression "(int *)(unaff_s7 + -0x3fa8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(unaff_s7 + -0x3fa8)" (( "(") (binary_expression "unaff_s7 + -0x3fa8" (identifier "unaff_s7") (+ "+") (number_literal "-0x3fa8")) () ")")))) (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n          (**(code **)(pcStack_8138 + -0x759c))\n                    (1,*(int *)(pcStack_8138 + -0x7fc8) + -0x4850,uStack_811c,iStack_8110);\n        }" ({ "{") (expression_statement "(**(code **)(pcStack_8138 + -0x759c))\n                    (1,*(int *)(pcStack_8138 + -0x7fc8) + -0x4850,uStack_811c,iStack_8110);" (call_expression "(**(code **)(pcStack_8138 + -0x759c))\n                    (1,*(int *)(pcStack_8138 + -0x7fc8) + -0x4850,uStack_811c,iStack_8110)" (parenthesized_expression "(**(code **)(pcStack_8138 + -0x759c))" (( "(") (pointer_expression "**(code **)(pcStack_8138 + -0x759c)" (* "*") (pointer_expression "*(code **)(pcStack_8138 + -0x759c)" (* "*") (cast_expression "(code **)(pcStack_8138 + -0x759c)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_8138 + -0x759c)" (( "(") (binary_expression "pcStack_8138 + -0x759c" (identifier "pcStack_8138") (+ "+") (number_literal "-0x759c")) () ")"))))) () ")")) (argument_list "(1,*(int *)(pcStack_8138 + -0x7fc8) + -0x4850,uStack_811c,iStack_8110)" (( "(") (number_literal "1") (, ",") (binary_expression "*(int *)(pcStack_8138 + -0x7fc8) + -0x4850" (pointer_expression "*(int *)(pcStack_8138 + -0x7fc8)" (* "*") (cast_expression "(int *)(pcStack_8138 + -0x7fc8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcStack_8138 + -0x7fc8)" (( "(") (binary_expression "pcStack_8138 + -0x7fc8" (identifier "pcStack_8138") (+ "+") (number_literal "-0x7fc8")) () ")")))) (+ "+") (number_literal "-0x4850")) (, ",") (identifier "uStack_811c") (, ",") (identifier "iStack_8110") () ")"))) (; ";")) (} "}"))) (expression_statement "uint64_add32(&uStack_8108,uStack_8100,uStack_80fc,puVar1);" (call_expression "uint64_add32(&uStack_8108,uStack_8100,uStack_80fc,puVar1)" (identifier "uint64_add32") (argument_list "(&uStack_8108,uStack_8100,uStack_80fc,puVar1)" (( "(") (pointer_expression "&uStack_8108" (& "&") (identifier "uStack_8108")) (, ",") (identifier "uStack_8100") (, ",") (identifier "uStack_80fc") (, ",") (identifier "puVar1") () ")"))) (; ";")) (} "}")) (else_clause "else {\n        uint64_add32(&uStack_8108,uStack_8100,uStack_80fc,puVar1);\n      }" (else "else") (compound_statement "{\n        uint64_add32(&uStack_8108,uStack_8100,uStack_80fc,puVar1);\n      }" ({ "{") (expression_statement "uint64_add32(&uStack_8108,uStack_8100,uStack_80fc,puVar1);" (call_expression "uint64_add32(&uStack_8108,uStack_8100,uStack_80fc,puVar1)" (identifier "uint64_add32") (argument_list "(&uStack_8108,uStack_8100,uStack_80fc,puVar1)" (( "(") (pointer_expression "&uStack_8108" (& "&") (identifier "uStack_8108")) (, ",") (identifier "uStack_8100") (, ",") (identifier "uStack_80fc") (, ",") (identifier "puVar1") () ")"))) (; ";")) (} "}")))) (expression_statement "param_1 = auStack_100b0;" (assignment_expression "param_1 = auStack_100b0" (identifier "param_1") (= "=") (identifier "auStack_100b0")) (; ";")) (expression_statement "iVar24 = 1;" (assignment_expression "iVar24 = 1" (identifier "iVar24") (= "=") (number_literal "1")) (; ";")) (expression_statement "uStack_8100 = uStack_8108;" (assignment_expression "uStack_8100 = uStack_8108" (identifier "uStack_8100") (= "=") (identifier "uStack_8108")) (; ";")) (expression_statement "uStack_80fc = uStack_8104;" (assignment_expression "uStack_80fc = uStack_8104" (identifier "uStack_80fc") (= "=") (identifier "uStack_8104")) (; ";")) (} "}")) (while "while") (parenthesized_expression "( true )" (( "(") (true "true") () ")")) (; ";"))) (} "}"))) (expression_statement "safefree(unaff_s3);" (call_expression "safefree(unaff_s3)" (identifier "safefree") (argument_list "(unaff_s3)" (( "(") (identifier "unaff_s3") () ")"))) (; ";")) (expression_statement "(**(code **)(pcStack_8138 + -0x7c70))(unaff_s5);" (call_expression "(**(code **)(pcStack_8138 + -0x7c70))(unaff_s5)" (parenthesized_expression "(**(code **)(pcStack_8138 + -0x7c70))" (( "(") (pointer_expression "**(code **)(pcStack_8138 + -0x7c70)" (* "*") (pointer_expression "*(code **)(pcStack_8138 + -0x7c70)" (* "*") (cast_expression "(code **)(pcStack_8138 + -0x7c70)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_8138 + -0x7c70)" (( "(") (binary_expression "pcStack_8138 + -0x7c70" (identifier "pcStack_8138") (+ "+") (number_literal "-0x7c70")) () ")"))))) () ")")) (argument_list "(unaff_s5)" (( "(") (identifier "unaff_s5") () ")"))) (; ";")) (labeled_statement "LAB_0002da64:\n  pcVar28 = *(code **)(pcStack_8138 + -0x74a0);" (statement_identifier "LAB_0002da64") (: ":") (expression_statement "pcVar28 = *(code **)(pcStack_8138 + -0x74a0);" (assignment_expression "pcVar28 = *(code **)(pcStack_8138 + -0x74a0)" (identifier "pcVar28") (= "=") (pointer_expression "*(code **)(pcStack_8138 + -0x74a0)" (* "*") (cast_expression "(code **)(pcStack_8138 + -0x74a0)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_8138 + -0x74a0)" (( "(") (binary_expression "pcStack_8138 + -0x74a0" (identifier "pcStack_8138") (+ "+") (number_literal "-0x74a0")) () ")"))))) (; ";"))) (if_statement "if (uStack_b4 == **(uint **)(pcStack_8138 + -0x7478)) {\n    return **(uint **)(pcStack_8138 + -0x7478);\n  }" (if "if") (parenthesized_expression "(uStack_b4 == **(uint **)(pcStack_8138 + -0x7478))" (( "(") (binary_expression "uStack_b4 == **(uint **)(pcStack_8138 + -0x7478)" (identifier "uStack_b4") (== "==") (pointer_expression "**(uint **)(pcStack_8138 + -0x7478)" (* "*") (pointer_expression "*(uint **)(pcStack_8138 + -0x7478)" (* "*") (cast_expression "(uint **)(pcStack_8138 + -0x7478)" (( "(") (type_descriptor "uint **" (type_identifier "uint") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_8138 + -0x7478)" (( "(") (binary_expression "pcStack_8138 + -0x7478" (identifier "pcStack_8138") (+ "+") (number_literal "-0x7478")) () ")")))))) () ")")) (compound_statement "{\n    return **(uint **)(pcStack_8138 + -0x7478);\n  }" ({ "{") (return_statement "return **(uint **)(pcStack_8138 + -0x7478);" (return "return") (pointer_expression "**(uint **)(pcStack_8138 + -0x7478)" (* "*") (pointer_expression "*(uint **)(pcStack_8138 + -0x7478)" (* "*") (cast_expression "(uint **)(pcStack_8138 + -0x7478)" (( "(") (type_descriptor "uint **" (type_identifier "uint") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_8138 + -0x7478)" (( "(") (binary_expression "pcStack_8138 + -0x7478" (identifier "pcStack_8138") (+ "+") (number_literal "-0x7478")) () ")"))))) (; ";")) (} "}"))) (expression_statement "pcVar30 = version;" (assignment_expression "pcVar30 = version" (identifier "pcVar30") (= "=") (identifier "version")) (; ";")) (expression_statement "(*pcVar28)();" (call_expression "(*pcVar28)()" (parenthesized_expression "(*pcVar28)" (( "(") (pointer_expression "*pcVar28" (* "*") (identifier "pcVar28")) () ")")) (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "pcStack_8168 = pcVar28 + 0x961d8;" (assignment_expression "pcStack_8168 = pcVar28 + 0x961d8" (identifier "pcStack_8168") (= "=") (binary_expression "pcVar28 + 0x961d8" (identifier "pcVar28") (+ "+") (number_literal "0x961d8"))) (; ";")) (expression_statement "uStack_8160 = 0xffff0000;" (assignment_expression "uStack_8160 = 0xffff0000" (identifier "uStack_8160") (= "=") (number_literal "0xffff0000")) (; ";")) (expression_statement "pcStack_815c = pcVar30;" (assignment_expression "pcStack_815c = pcVar30" (identifier "pcStack_815c") (= "=") (identifier "pcVar30")) (; ";")) (expression_statement "uVar6 = buildinfo(*(int *)(pcVar28 + 0x8e210) + 0xaa4);" (assignment_expression "uVar6 = buildinfo(*(int *)(pcVar28 + 0x8e210) + 0xaa4)" (identifier "uVar6") (= "=") (call_expression "buildinfo(*(int *)(pcVar28 + 0x8e210) + 0xaa4)" (identifier "buildinfo") (argument_list "(*(int *)(pcVar28 + 0x8e210) + 0xaa4)" (( "(") (binary_expression "*(int *)(pcVar28 + 0x8e210) + 0xaa4" (pointer_expression "*(int *)(pcVar28 + 0x8e210)" (* "*") (cast_expression "(int *)(pcVar28 + 0x8e210)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar28 + 0x8e210)" (( "(") (binary_expression "pcVar28 + 0x8e210" (identifier "pcVar28") (+ "+") (number_literal "0x8e210")) () ")")))) (+ "+") (number_literal "0xaa4")) () ")")))) (; ";")) (expression_statement "uVar17 = *(undefined4 *)(pcStack_8168 + -0x7da8);" (assignment_expression "uVar17 = *(undefined4 *)(pcStack_8168 + -0x7da8)" (identifier "uVar17") (= "=") (pointer_expression "*(undefined4 *)(pcStack_8168 + -0x7da8)" (* "*") (cast_expression "(undefined4 *)(pcStack_8168 + -0x7da8)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcStack_8168 + -0x7da8)" (( "(") (binary_expression "pcStack_8168 + -0x7da8" (identifier "pcStack_8168") (+ "+") (number_literal "-0x7da8")) () ")"))))) (; ";")) (expression_statement "iVar4 = *(int *)(pcStack_8168 + -0x7fc8) + -0x482c;" (assignment_expression "iVar4 = *(int *)(pcStack_8168 + -0x7fc8) + -0x482c" (identifier "iVar4") (= "=") (binary_expression "*(int *)(pcStack_8168 + -0x7fc8) + -0x482c" (pointer_expression "*(int *)(pcStack_8168 + -0x7fc8)" (* "*") (cast_expression "(int *)(pcStack_8168 + -0x7fc8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcStack_8168 + -0x7fc8)" (( "(") (binary_expression "pcStack_8168 + -0x7fc8" (identifier "pcStack_8168") (+ "+") (number_literal "-0x7fc8")) () ")")))) (+ "+") (number_literal "-0x482c"))) (; ";")) (expression_statement "uVar7 = uVar6;" (assignment_expression "uVar7 = uVar6" (identifier "uVar7") (= "=") (identifier "uVar6")) (; ";")) (expression_statement "(**(code **)(pcStack_8168 + -0x759c))(1);" (call_expression "(**(code **)(pcStack_8168 + -0x759c))(1)" (parenthesized_expression "(**(code **)(pcStack_8168 + -0x759c))" (( "(") (pointer_expression "**(code **)(pcStack_8168 + -0x759c)" (* "*") (pointer_expression "*(code **)(pcStack_8168 + -0x759c)" (* "*") (cast_expression "(code **)(pcStack_8168 + -0x759c)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_8168 + -0x759c)" (( "(") (binary_expression "pcStack_8168 + -0x759c" (identifier "pcStack_8168") (+ "+") (number_literal "-0x759c")) () ")"))))) () ")")) (argument_list "(1)" (( "(") (number_literal "1") () ")"))) (; ";")) (expression_statement "safefree(uVar6);" (call_expression "safefree(uVar6)" (identifier "safefree") (argument_list "(uVar6)" (( "(") (identifier "uVar6") () ")"))) (; ";")) (expression_statement "uVar12 = 0;" (assignment_expression "uVar12 = 0" (identifier "uVar12") (= "=") (number_literal "0")) (; ";")) (expression_statement "pcVar28 = *(code **)(pcStack_8168 + -0x7504);" (assignment_expression "pcVar28 = *(code **)(pcStack_8168 + -0x7504)" (identifier "pcVar28") (= "=") (pointer_expression "*(code **)(pcStack_8168 + -0x7504)" (* "*") (cast_expression "(code **)(pcStack_8168 + -0x7504)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_8168 + -0x7504)" (( "(") (binary_expression "pcStack_8168 + -0x7504" (identifier "pcStack_8168") (+ "+") (number_literal "-0x7504")) () ")"))))) (; ";")) (expression_statement "pcVar30 = cmdline_error;" (assignment_expression "pcVar30 = cmdline_error" (identifier "pcVar30") (= "=") (identifier "cmdline_error")) (; ";")) (expression_statement "(*pcVar28)();" (call_expression "(*pcVar28)()" (parenthesized_expression "(*pcVar28)" (( "(") (pointer_expression "*pcVar28" (* "*") (identifier "pcVar28")) () ")")) (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "pcStack_8198 = pcVar28 + 0x96158;" (assignment_expression "pcStack_8198 = pcVar28 + 0x96158" (identifier "pcStack_8198") (= "=") (binary_expression "pcVar28 + 0x96158" (identifier "pcVar28") (+ "+") (number_literal "0x96158"))) (; ";")) (expression_statement "uStack_818c = **(undefined4 **)(pcVar28 + 0x8ece0);" (assignment_expression "uStack_818c = **(undefined4 **)(pcVar28 + 0x8ece0)" (identifier "uStack_818c") (= "=") (pointer_expression "**(undefined4 **)(pcVar28 + 0x8ece0)" (* "*") (pointer_expression "*(undefined4 **)(pcVar28 + 0x8ece0)" (* "*") (cast_expression "(undefined4 **)(pcVar28 + 0x8ece0)" (( "(") (type_descriptor "undefined4 **" (type_identifier "undefined4") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar28 + 0x8ece0)" (( "(") (binary_expression "pcVar28 + 0x8ece0" (identifier "pcVar28") (+ "+") (number_literal "0x8ece0")) () ")")))))) (; ";")) (expression_statement "puVar23 = *(undefined4 **)(pcVar28 + 0x8ecf8);" (assignment_expression "puVar23 = *(undefined4 **)(pcVar28 + 0x8ecf8)" (identifier "puVar23") (= "=") (pointer_expression "*(undefined4 **)(pcVar28 + 0x8ecf8)" (* "*") (cast_expression "(undefined4 **)(pcVar28 + 0x8ecf8)" (( "(") (type_descriptor "undefined4 **" (type_identifier "undefined4") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar28 + 0x8ecf8)" (( "(") (binary_expression "pcVar28 + 0x8ecf8" (identifier "pcVar28") (+ "+") (number_literal "0x8ecf8")) () ")"))))) (; ";")) (expression_statement "uStack_8184 = uVar6;" (assignment_expression "uStack_8184 = uVar6" (identifier "uStack_8184") (= "=") (identifier "uVar6")) (; ";")) (expression_statement "puStack_8180 = puVar1;" (assignment_expression "puStack_8180 = puVar1" (identifier "puStack_8180") (= "=") (identifier "puVar1")) (; ";")) (expression_statement "pcStack_817c = pcVar30;" (assignment_expression "pcStack_817c = pcVar30" (identifier "pcStack_817c") (= "=") (identifier "pcVar30")) (; ";")) (expression_statement "iStack_8174 = iVar4;" (assignment_expression "iStack_8174 = iVar4" (identifier "iStack_8174") (= "=") (identifier "iVar4")) (; ";")) (expression_statement "uStack_8170 = uVar17;" (assignment_expression "uStack_8170 = uVar17" (identifier "uStack_8170") (= "=") (identifier "uVar17")) (; ";")) (expression_statement "uStack_816c = uVar7;" (assignment_expression "uStack_816c = uVar7" (identifier "uStack_816c") (= "=") (identifier "uVar7")) (; ";")) (expression_statement "(**(code **)(pcVar28 + 0x8ec90))(*(int *)(pcVar28 + 0x8e190) + -0x4e28,1,6,*puVar23);" (call_expression "(**(code **)(pcVar28 + 0x8ec90))(*(int *)(pcVar28 + 0x8e190) + -0x4e28,1,6,*puVar23)" (parenthesized_expression "(**(code **)(pcVar28 + 0x8ec90))" (( "(") (pointer_expression "**(code **)(pcVar28 + 0x8ec90)" (* "*") (pointer_expression "*(code **)(pcVar28 + 0x8ec90)" (* "*") (cast_expression "(code **)(pcVar28 + 0x8ec90)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar28 + 0x8ec90)" (( "(") (binary_expression "pcVar28 + 0x8ec90" (identifier "pcVar28") (+ "+") (number_literal "0x8ec90")) () ")"))))) () ")")) (argument_list "(*(int *)(pcVar28 + 0x8e190) + -0x4e28,1,6,*puVar23)" (( "(") (binary_expression "*(int *)(pcVar28 + 0x8e190) + -0x4e28" (pointer_expression "*(int *)(pcVar28 + 0x8e190)" (* "*") (cast_expression "(int *)(pcVar28 + 0x8e190)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar28 + 0x8e190)" (( "(") (binary_expression "pcVar28 + 0x8e190" (identifier "pcVar28") (+ "+") (number_literal "0x8e190")) () ")")))) (+ "+") (number_literal "-0x4e28")) (, ",") (number_literal "1") (, ",") (number_literal "6") (, ",") (pointer_expression "*puVar23" (* "*") (identifier "puVar23")) () ")"))) (; ";")) (expression_statement "piStack_8190 = &iStack_8174;" (assignment_expression "piStack_8190 = &iStack_8174" (identifier "piStack_8190") (= "=") (pointer_expression "&iStack_8174" (& "&") (identifier "iStack_8174"))) (; ";")) (expression_statement "(**(code **)(pcStack_8198 + -0x7444))(*puVar23,1,uVar12);" (call_expression "(**(code **)(pcStack_8198 + -0x7444))(*puVar23,1,uVar12)" (parenthesized_expression "(**(code **)(pcStack_8198 + -0x7444))" (( "(") (pointer_expression "**(code **)(pcStack_8198 + -0x7444)" (* "*") (pointer_expression "*(code **)(pcStack_8198 + -0x7444)" (* "*") (cast_expression "(code **)(pcStack_8198 + -0x7444)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_8198 + -0x7444)" (( "(") (binary_expression "pcStack_8198 + -0x7444" (identifier "pcStack_8198") (+ "+") (number_literal "-0x7444")) () ")"))))) () ")")) (argument_list "(*puVar23,1,uVar12)" (( "(") (pointer_expression "*puVar23" (* "*") (identifier "puVar23")) (, ",") (number_literal "1") (, ",") (identifier "uVar12") () ")"))) (; ";")) (expression_statement "iVar15 = 1;" (assignment_expression "iVar15 = 1" (identifier "iVar15") (= "=") (number_literal "1")) (; ";")) (expression_statement "(**(code **)(pcStack_8198 + -0x74c8))(*(int *)(pcStack_8198 + -0x7fc8) + -0x481c,1,0x27,*puVar23);" (call_expression "(**(code **)(pcStack_8198 + -0x74c8))(*(int *)(pcStack_8198 + -0x7fc8) + -0x481c,1,0x27,*puVar23)" (parenthesized_expression "(**(code **)(pcStack_8198 + -0x74c8))" (( "(") (pointer_expression "**(code **)(pcStack_8198 + -0x74c8)" (* "*") (pointer_expression "*(code **)(pcStack_8198 + -0x74c8)" (* "*") (cast_expression "(code **)(pcStack_8198 + -0x74c8)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_8198 + -0x74c8)" (( "(") (binary_expression "pcStack_8198 + -0x74c8" (identifier "pcStack_8198") (+ "+") (number_literal "-0x74c8")) () ")"))))) () ")")) (argument_list "(*(int *)(pcStack_8198 + -0x7fc8) + -0x481c,1,0x27,*puVar23)" (( "(") (binary_expression "*(int *)(pcStack_8198 + -0x7fc8) + -0x481c" (pointer_expression "*(int *)(pcStack_8198 + -0x7fc8)" (* "*") (cast_expression "(int *)(pcStack_8198 + -0x7fc8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcStack_8198 + -0x7fc8)" (( "(") (binary_expression "pcStack_8198 + -0x7fc8" (identifier "pcStack_8198") (+ "+") (number_literal "-0x7fc8")) () ")")))) (+ "+") (number_literal "-0x481c")) (, ",") (number_literal "1") (, ",") (number_literal "0x27") (, ",") (pointer_expression "*puVar23" (* "*") (identifier "puVar23")) () ")"))) (; ";")) (expression_statement "iVar4 = 1;" (assignment_expression "iVar4 = 1" (identifier "iVar4") (= "=") (number_literal "1")) (; ";")) (expression_statement "pcVar28 = *(code **)(pcStack_8198 + -0x7504);" (assignment_expression "pcVar28 = *(code **)(pcStack_8198 + -0x7504)" (identifier "pcVar28") (= "=") (pointer_expression "*(code **)(pcStack_8198 + -0x7504)" (* "*") (cast_expression "(code **)(pcStack_8198 + -0x7504)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_8198 + -0x7504)" (( "(") (binary_expression "pcStack_8198 + -0x7504" (identifier "pcStack_8198") (+ "+") (number_literal "-0x7504")) () ")"))))) (; ";")) (expression_statement "pcVar30 = psftp_main;" (assignment_expression "pcVar30 = psftp_main" (identifier "pcVar30") (= "=") (identifier "psftp_main")) (; ";")) (expression_statement "(*pcVar28)();" (call_expression "(*pcVar28)()" (parenthesized_expression "(*pcVar28)" (( "(") (pointer_expression "*pcVar28" (* "*") (identifier "pcVar28")) () ")")) (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "pcStack_81e8 = pcVar28 + 0x9609c;" (assignment_expression "pcStack_81e8 = pcVar28 + 0x9609c" (identifier "pcStack_81e8") (= "=") (binary_expression "pcVar28 + 0x9609c" (identifier "pcVar28") (+ "+") (number_literal "0x9609c"))) (; ";")) (expression_statement "puStack_81d4 = (undefined4 *)**(undefined4 **)(pcVar28 + 0x8ec24);" (assignment_expression "puStack_81d4 = (undefined4 *)**(undefined4 **)(pcVar28 + 0x8ec24)" (identifier "puStack_81d4") (= "=") (cast_expression "(undefined4 *)**(undefined4 **)(pcVar28 + 0x8ec24)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (pointer_expression "**(undefined4 **)(pcVar28 + 0x8ec24)" (* "*") (pointer_expression "*(undefined4 **)(pcVar28 + 0x8ec24)" (* "*") (cast_expression "(undefined4 **)(pcVar28 + 0x8ec24)" (( "(") (type_descriptor "undefined4 **" (type_identifier "undefined4") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar28 + 0x8ec24)" (( "(") (binary_expression "pcVar28 + 0x8ec24" (identifier "pcVar28") (+ "+") (number_literal "0x8ec24")) () ")"))))))) (; ";")) (expression_statement "**(undefined4 **)(pcVar28 + 0x8e144) = 1;" (assignment_expression "**(undefined4 **)(pcVar28 + 0x8e144) = 1" (pointer_expression "**(undefined4 **)(pcVar28 + 0x8e144)" (* "*") (pointer_expression "*(undefined4 **)(pcVar28 + 0x8e144)" (* "*") (cast_expression "(undefined4 **)(pcVar28 + 0x8e144)" (( "(") (type_descriptor "undefined4 **" (type_identifier "undefined4") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar28 + 0x8e144)" (( "(") (binary_expression "pcVar28 + 0x8e144" (identifier "pcVar28") (+ "+") (number_literal "0x8e144")) () ")"))))) (= "=") (number_literal "1")) (; ";")) (expression_statement "**(undefined4 **)(pcVar28 + 0x8e158) = 2;" (assignment_expression "**(undefined4 **)(pcVar28 + 0x8e158) = 2" (pointer_expression "**(undefined4 **)(pcVar28 + 0x8e158)" (* "*") (pointer_expression "*(undefined4 **)(pcVar28 + 0x8e158)" (* "*") (cast_expression "(undefined4 **)(pcVar28 + 0x8e158)" (( "(") (type_descriptor "undefined4 **" (type_identifier "undefined4") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar28 + 0x8e158)" (( "(") (binary_expression "pcVar28 + 0x8e158" (identifier "pcVar28") (+ "+") (number_literal "0x8e158")) () ")"))))) (= "=") (number_literal "2")) (; ";")) (expression_statement "**(undefined4 **)(pcVar28 + 0x8e120) = 1;" (assignment_expression "**(undefined4 **)(pcVar28 + 0x8e120) = 1" (pointer_expression "**(undefined4 **)(pcVar28 + 0x8e120)" (* "*") (pointer_expression "*(undefined4 **)(pcVar28 + 0x8e120)" (* "*") (cast_expression "(undefined4 **)(pcVar28 + 0x8e120)" (( "(") (type_descriptor "undefined4 **" (type_identifier "undefined4") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar28 + 0x8e120)" (( "(") (binary_expression "pcVar28 + 0x8e120" (identifier "pcVar28") (+ "+") (number_literal "0x8e120")) () ")"))))) (= "=") (number_literal "1")) (; ";")) (expression_statement "puStack_81d0 = puVar23;" (assignment_expression "puStack_81d0 = puVar23" (identifier "puStack_81d0") (= "=") (identifier "puVar23")) (; ";")) (expression_statement "uStack_81cc = uVar12;" (assignment_expression "uStack_81cc = uVar12" (identifier "uStack_81cc") (= "=") (identifier "uVar12")) (; ";")) (expression_statement "puStack_81c8 = param_1;" (assignment_expression "puStack_81c8 = param_1" (identifier "puStack_81c8") (= "=") (identifier "param_1")) (; ";")) (expression_statement "puStack_81c4 = unaff_s3;" (assignment_expression "puStack_81c4 = unaff_s3" (identifier "puStack_81c4") (= "=") (identifier "unaff_s3")) (; ";")) (expression_statement "iStack_81c0 = iVar24;" (assignment_expression "iStack_81c0 = iVar24" (identifier "iStack_81c0") (= "=") (identifier "iVar24")) (; ";")) (expression_statement "iStack_81bc = unaff_s5;" (assignment_expression "iStack_81bc = unaff_s5" (identifier "iStack_81bc") (= "=") (identifier "unaff_s5")) (; ";")) (expression_statement "piStack_81b8 = &iStack_80d8;" (assignment_expression "piStack_81b8 = &iStack_80d8" (identifier "piStack_81b8") (= "=") (pointer_expression "&iStack_80d8" (& "&") (identifier "iStack_80d8"))) (; ";")) (expression_statement "iStack_81b4 = unaff_s7;" (assignment_expression "iStack_81b4 = unaff_s7" (identifier "iStack_81b4") (= "=") (identifier "unaff_s7")) (; ";")) (expression_statement "iStack_81b0 = iVar2;" (assignment_expression "iStack_81b0 = iVar2" (identifier "iStack_81b0") (= "=") (identifier "iVar2")) (; ";")) (expression_statement "pcStack_81ac = pcVar30;" (assignment_expression "pcStack_81ac = pcVar30" (identifier "pcStack_81ac") (= "=") (identifier "pcVar30")) (; ";")) (expression_statement "(**(code **)(pcVar28 + 0x8e444))();" (call_expression "(**(code **)(pcVar28 + 0x8e444))()" (parenthesized_expression "(**(code **)(pcVar28 + 0x8e444))" (( "(") (pointer_expression "**(code **)(pcVar28 + 0x8e444)" (* "*") (pointer_expression "*(code **)(pcVar28 + 0x8e444)" (* "*") (cast_expression "(code **)(pcVar28 + 0x8e444)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar28 + 0x8e444)" (( "(") (binary_expression "pcVar28 + 0x8e444" (identifier "pcVar28") (+ "+") (number_literal "0x8e444")) () ")"))))) () ")")) (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "uVar7 = conf_new();" (assignment_expression "uVar7 = conf_new()" (identifier "uVar7") (= "=") (call_expression "conf_new()" (identifier "conf_new") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31fc) = uVar7;" (assignment_expression "*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31fc) = uVar7" (pointer_expression "*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31fc)" (* "*") (cast_expression "(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31fc)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31fc)" (( "(") (binary_expression "*(int *)(pcStack_81e8 + -0x7fd8) + -0x31fc" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fd8)" (* "*") (cast_expression "(int *)(pcStack_81e8 + -0x7fd8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcStack_81e8 + -0x7fd8)" (( "(") (binary_expression "pcStack_81e8 + -0x7fd8" (identifier "pcStack_81e8") (+ "+") (number_literal "-0x7fd8")) () ")")))) (+ "+") (number_literal "-0x31fc")) () ")")))) (= "=") (identifier "uVar7")) (; ";")) (expression_statement "do_defaults(0,uVar7);" (call_expression "do_defaults(0,uVar7)" (identifier "do_defaults") (argument_list "(0,uVar7)" (( "(") (number_literal "0") (, ",") (identifier "uVar7") () ")"))) (; ";")) (expression_statement "**(undefined4 **)(pcStack_81e8 + -0x7f60) = 0;" (assignment_expression "**(undefined4 **)(pcStack_81e8 + -0x7f60) = 0" (pointer_expression "**(undefined4 **)(pcStack_81e8 + -0x7f60)" (* "*") (pointer_expression "*(undefined4 **)(pcStack_81e8 + -0x7f60)" (* "*") (cast_expression "(undefined4 **)(pcStack_81e8 + -0x7f60)" (( "(") (type_descriptor "undefined4 **" (type_identifier "undefined4") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_81e8 + -0x7f60)" (( "(") (binary_expression "pcStack_81e8 + -0x7f60" (identifier "pcStack_81e8") (+ "+") (number_literal "-0x7f60")) () ")"))))) (= "=") (number_literal "0")) (; ";")) (expression_statement "pcVar28 = pcStack_81e8;" (assignment_expression "pcVar28 = pcStack_81e8" (identifier "pcVar28") (= "=") (identifier "pcStack_81e8")) (; ";")) (if_statement "if (iVar4 < 2) {\n    iVar2 = 1;\n  }\n  else {\n    pcVar13 = *(char **)(iVar15 + 4);\n    piVar19 = (int *)(iVar15 + 4);\n    if (*pcVar13 == '-') {\n      iVar25 = *(int *)(pcStack_81e8 + -0x7fd8);\n      iVar26 = *(int *)(pcStack_81e8 + -0x7fc8);\n      pcVar27 = (char *)(*(int *)(pcStack_81e8 + -0x7fc8) + -0x47b8);\n      iVar29 = *(int *)(pcStack_81e8 + -0x7fc8);\n      pcStack_81dc = (code *)(*(int *)(pcStack_81e8 + -0x7db0) + -0x79e4);\n      iVar24 = 1;\nLAB_0002e488:\n      iVar2 = iVar24 + 1;\n      uVar7 = 0;\n      if (iVar2 < iVar4) {\n        uVar7 = *(undefined4 *)(iVar15 + (iVar24 + 1) * 4);\n      }\n      iVar8 = cmdline_process_param(pcVar13,uVar7,1,*(undefined4 *)(iVar25 + -0x31fc));\n      pcVar28 = pcStack_81e8;\n      if (iVar8 == -2) {\n        cmdline_error(*(int *)(pcStack_81e8 + -0x7fc8) + -0x47e4,*piVar19);\n        uVar7 = extraout_v1;\nLAB_0002e1d0:\n        iVar2 = iVar24;\n        if ((**(uint **)(pcVar28 + -0x7f44) & 1) != 0) {\n          *(undefined4 *)(*(int *)(pcVar28 + -0x7fd8) + -0x31c8) = uVar7;\n        }\n        goto LAB_0002e464;\n      }\n      uVar7 = 1;\n      if (iVar8 == 2) goto LAB_0002e464;\n      if (iVar8 == 1) goto LAB_0002e1d0;\n      iVar20 = *piVar19;\n      iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar26 + -0x47c0);\n      if (iVar8 == 0) {\n        (**(code **)(pcStack_81e8 + -0x7c54))();\n        uVar3 = 1;\n        goto LAB_0002e878;\n      }\n      iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20);\n      if (iVar8 == 0) {\n        *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31cc) = 1;\n        pcVar28 = pcStack_81e8;\n        iVar2 = iVar24;\n      }\n      else {\n        iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar29 + -0x47b4);\n        if (iVar8 == 0) {\n          *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d0) = 1;\n          pcVar28 = pcStack_81e8;\n          iVar2 = iVar24;\n        }\n        else {\n          iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                            (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47b0);\n          if (iVar8 == 0) {\n            *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fa8) = 0;\n            pcVar28 = pcStack_81e8;\n            iVar2 = iVar24;\n          }\n          else {\n            iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                              (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47ac);\n            if ((iVar8 != 0) &&\n               (iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                  (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47a8), iVar8 != 0))\n            {\n              iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47a4);\n              if (iVar8 != 0) {\n                iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                  (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x479c);\n                iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                if (iVar8 == 0) {\nLAB_0002e348:\n                  pcVar28 = pcStack_81e8;\n                  version();\n                }\n                else {\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar16 + -0x4798);\n                  iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                  if (iVar8 == 0) goto LAB_0002e348;\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar16 + -0x478c);\n                  iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                  pcVar28 = pcStack_81e8;\n                  if (iVar8 == 0) {\n                    *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31c4) = 1;\n                    iVar2 = iVar24;\n                    goto LAB_0002e464;\n                  }\n                }\n                iVar8 = (**(code **)(pcVar28 + -0x743c))(iVar20,iVar16 + -0x4788);\n                if (iVar8 == 0) {\n                  **(undefined4 **)(pcStack_81e8 + -0x7c4c) = 1;\n                  pcVar28 = pcStack_81e8;\n                  iVar2 = iVar24;\n                }\n                else {\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                    (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4780);\n                  if (iVar8 == 0) {\n                    *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31dc) = 1;\n                    pcVar28 = pcStack_81e8;\n                    iVar2 = iVar24;\n                  }\n                  else {\n                    iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                      (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4778);\n                    if (iVar8 == 0) {\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac) = 0;\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0) = 1;\n                      pcVar28 = pcStack_81e8;\n                      iVar2 = iVar24;\n                      goto LAB_0002e464;\n                    }\n                    iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                      (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4770);\n                    if (iVar8 == 0) {\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac) = 1;\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0) = 0;\n                      pcVar28 = pcStack_81e8;\n                      iVar2 = iVar24;\n                    }\n                    else {\n                      iVar24 = (**(code **)(pcStack_81e8 + -0x743c))\n                                         (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4768);\n                      pcVar28 = pcStack_81e8;\n                      if (iVar24 == 0) goto LAB_0002e52c;\n                      cmdline_error(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4764,iVar20);\n                    }\n                  }\n                }\n                goto LAB_0002e464;\n              }\n            }\n            (*pcStack_81dc)();\n            pcVar28 = pcStack_81e8;\n            iVar2 = iVar24;\n          }\n        }\n      }\nLAB_0002e464:\n      iVar2 = iVar2 + 1;\n      if (iVar4 <= iVar2) goto LAB_0002e52c;\n      piVar19 = (int *)(iVar15 + iVar2 * 4);\n      pcVar13 = (char *)*piVar19;\n      iVar24 = iVar2;\n      if (*pcVar13 != '-') goto LAB_0002e52c;\n      goto LAB_0002e488;\n    }\n    iVar2 = 1;\n  }" (if "if") (parenthesized_expression "(iVar4 < 2)" (( "(") (binary_expression "iVar4 < 2" (identifier "iVar4") (< "<") (number_literal "2")) () ")")) (compound_statement "{\n    iVar2 = 1;\n  }" ({ "{") (expression_statement "iVar2 = 1;" (assignment_expression "iVar2 = 1" (identifier "iVar2") (= "=") (number_literal "1")) (; ";")) (} "}")) (else_clause "else {\n    pcVar13 = *(char **)(iVar15 + 4);\n    piVar19 = (int *)(iVar15 + 4);\n    if (*pcVar13 == '-') {\n      iVar25 = *(int *)(pcStack_81e8 + -0x7fd8);\n      iVar26 = *(int *)(pcStack_81e8 + -0x7fc8);\n      pcVar27 = (char *)(*(int *)(pcStack_81e8 + -0x7fc8) + -0x47b8);\n      iVar29 = *(int *)(pcStack_81e8 + -0x7fc8);\n      pcStack_81dc = (code *)(*(int *)(pcStack_81e8 + -0x7db0) + -0x79e4);\n      iVar24 = 1;\nLAB_0002e488:\n      iVar2 = iVar24 + 1;\n      uVar7 = 0;\n      if (iVar2 < iVar4) {\n        uVar7 = *(undefined4 *)(iVar15 + (iVar24 + 1) * 4);\n      }\n      iVar8 = cmdline_process_param(pcVar13,uVar7,1,*(undefined4 *)(iVar25 + -0x31fc));\n      pcVar28 = pcStack_81e8;\n      if (iVar8 == -2) {\n        cmdline_error(*(int *)(pcStack_81e8 + -0x7fc8) + -0x47e4,*piVar19);\n        uVar7 = extraout_v1;\nLAB_0002e1d0:\n        iVar2 = iVar24;\n        if ((**(uint **)(pcVar28 + -0x7f44) & 1) != 0) {\n          *(undefined4 *)(*(int *)(pcVar28 + -0x7fd8) + -0x31c8) = uVar7;\n        }\n        goto LAB_0002e464;\n      }\n      uVar7 = 1;\n      if (iVar8 == 2) goto LAB_0002e464;\n      if (iVar8 == 1) goto LAB_0002e1d0;\n      iVar20 = *piVar19;\n      iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar26 + -0x47c0);\n      if (iVar8 == 0) {\n        (**(code **)(pcStack_81e8 + -0x7c54))();\n        uVar3 = 1;\n        goto LAB_0002e878;\n      }\n      iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20);\n      if (iVar8 == 0) {\n        *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31cc) = 1;\n        pcVar28 = pcStack_81e8;\n        iVar2 = iVar24;\n      }\n      else {\n        iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar29 + -0x47b4);\n        if (iVar8 == 0) {\n          *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d0) = 1;\n          pcVar28 = pcStack_81e8;\n          iVar2 = iVar24;\n        }\n        else {\n          iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                            (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47b0);\n          if (iVar8 == 0) {\n            *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fa8) = 0;\n            pcVar28 = pcStack_81e8;\n            iVar2 = iVar24;\n          }\n          else {\n            iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                              (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47ac);\n            if ((iVar8 != 0) &&\n               (iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                  (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47a8), iVar8 != 0))\n            {\n              iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47a4);\n              if (iVar8 != 0) {\n                iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                  (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x479c);\n                iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                if (iVar8 == 0) {\nLAB_0002e348:\n                  pcVar28 = pcStack_81e8;\n                  version();\n                }\n                else {\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar16 + -0x4798);\n                  iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                  if (iVar8 == 0) goto LAB_0002e348;\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar16 + -0x478c);\n                  iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                  pcVar28 = pcStack_81e8;\n                  if (iVar8 == 0) {\n                    *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31c4) = 1;\n                    iVar2 = iVar24;\n                    goto LAB_0002e464;\n                  }\n                }\n                iVar8 = (**(code **)(pcVar28 + -0x743c))(iVar20,iVar16 + -0x4788);\n                if (iVar8 == 0) {\n                  **(undefined4 **)(pcStack_81e8 + -0x7c4c) = 1;\n                  pcVar28 = pcStack_81e8;\n                  iVar2 = iVar24;\n                }\n                else {\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                    (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4780);\n                  if (iVar8 == 0) {\n                    *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31dc) = 1;\n                    pcVar28 = pcStack_81e8;\n                    iVar2 = iVar24;\n                  }\n                  else {\n                    iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                      (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4778);\n                    if (iVar8 == 0) {\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac) = 0;\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0) = 1;\n                      pcVar28 = pcStack_81e8;\n                      iVar2 = iVar24;\n                      goto LAB_0002e464;\n                    }\n                    iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                      (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4770);\n                    if (iVar8 == 0) {\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac) = 1;\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0) = 0;\n                      pcVar28 = pcStack_81e8;\n                      iVar2 = iVar24;\n                    }\n                    else {\n                      iVar24 = (**(code **)(pcStack_81e8 + -0x743c))\n                                         (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4768);\n                      pcVar28 = pcStack_81e8;\n                      if (iVar24 == 0) goto LAB_0002e52c;\n                      cmdline_error(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4764,iVar20);\n                    }\n                  }\n                }\n                goto LAB_0002e464;\n              }\n            }\n            (*pcStack_81dc)();\n            pcVar28 = pcStack_81e8;\n            iVar2 = iVar24;\n          }\n        }\n      }\nLAB_0002e464:\n      iVar2 = iVar2 + 1;\n      if (iVar4 <= iVar2) goto LAB_0002e52c;\n      piVar19 = (int *)(iVar15 + iVar2 * 4);\n      pcVar13 = (char *)*piVar19;\n      iVar24 = iVar2;\n      if (*pcVar13 != '-') goto LAB_0002e52c;\n      goto LAB_0002e488;\n    }\n    iVar2 = 1;\n  }" (else "else") (compound_statement "{\n    pcVar13 = *(char **)(iVar15 + 4);\n    piVar19 = (int *)(iVar15 + 4);\n    if (*pcVar13 == '-') {\n      iVar25 = *(int *)(pcStack_81e8 + -0x7fd8);\n      iVar26 = *(int *)(pcStack_81e8 + -0x7fc8);\n      pcVar27 = (char *)(*(int *)(pcStack_81e8 + -0x7fc8) + -0x47b8);\n      iVar29 = *(int *)(pcStack_81e8 + -0x7fc8);\n      pcStack_81dc = (code *)(*(int *)(pcStack_81e8 + -0x7db0) + -0x79e4);\n      iVar24 = 1;\nLAB_0002e488:\n      iVar2 = iVar24 + 1;\n      uVar7 = 0;\n      if (iVar2 < iVar4) {\n        uVar7 = *(undefined4 *)(iVar15 + (iVar24 + 1) * 4);\n      }\n      iVar8 = cmdline_process_param(pcVar13,uVar7,1,*(undefined4 *)(iVar25 + -0x31fc));\n      pcVar28 = pcStack_81e8;\n      if (iVar8 == -2) {\n        cmdline_error(*(int *)(pcStack_81e8 + -0x7fc8) + -0x47e4,*piVar19);\n        uVar7 = extraout_v1;\nLAB_0002e1d0:\n        iVar2 = iVar24;\n        if ((**(uint **)(pcVar28 + -0x7f44) & 1) != 0) {\n          *(undefined4 *)(*(int *)(pcVar28 + -0x7fd8) + -0x31c8) = uVar7;\n        }\n        goto LAB_0002e464;\n      }\n      uVar7 = 1;\n      if (iVar8 == 2) goto LAB_0002e464;\n      if (iVar8 == 1) goto LAB_0002e1d0;\n      iVar20 = *piVar19;\n      iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar26 + -0x47c0);\n      if (iVar8 == 0) {\n        (**(code **)(pcStack_81e8 + -0x7c54))();\n        uVar3 = 1;\n        goto LAB_0002e878;\n      }\n      iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20);\n      if (iVar8 == 0) {\n        *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31cc) = 1;\n        pcVar28 = pcStack_81e8;\n        iVar2 = iVar24;\n      }\n      else {\n        iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar29 + -0x47b4);\n        if (iVar8 == 0) {\n          *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d0) = 1;\n          pcVar28 = pcStack_81e8;\n          iVar2 = iVar24;\n        }\n        else {\n          iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                            (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47b0);\n          if (iVar8 == 0) {\n            *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fa8) = 0;\n            pcVar28 = pcStack_81e8;\n            iVar2 = iVar24;\n          }\n          else {\n            iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                              (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47ac);\n            if ((iVar8 != 0) &&\n               (iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                  (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47a8), iVar8 != 0))\n            {\n              iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47a4);\n              if (iVar8 != 0) {\n                iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                  (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x479c);\n                iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                if (iVar8 == 0) {\nLAB_0002e348:\n                  pcVar28 = pcStack_81e8;\n                  version();\n                }\n                else {\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar16 + -0x4798);\n                  iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                  if (iVar8 == 0) goto LAB_0002e348;\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar16 + -0x478c);\n                  iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                  pcVar28 = pcStack_81e8;\n                  if (iVar8 == 0) {\n                    *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31c4) = 1;\n                    iVar2 = iVar24;\n                    goto LAB_0002e464;\n                  }\n                }\n                iVar8 = (**(code **)(pcVar28 + -0x743c))(iVar20,iVar16 + -0x4788);\n                if (iVar8 == 0) {\n                  **(undefined4 **)(pcStack_81e8 + -0x7c4c) = 1;\n                  pcVar28 = pcStack_81e8;\n                  iVar2 = iVar24;\n                }\n                else {\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                    (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4780);\n                  if (iVar8 == 0) {\n                    *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31dc) = 1;\n                    pcVar28 = pcStack_81e8;\n                    iVar2 = iVar24;\n                  }\n                  else {\n                    iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                      (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4778);\n                    if (iVar8 == 0) {\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac) = 0;\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0) = 1;\n                      pcVar28 = pcStack_81e8;\n                      iVar2 = iVar24;\n                      goto LAB_0002e464;\n                    }\n                    iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                      (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4770);\n                    if (iVar8 == 0) {\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac) = 1;\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0) = 0;\n                      pcVar28 = pcStack_81e8;\n                      iVar2 = iVar24;\n                    }\n                    else {\n                      iVar24 = (**(code **)(pcStack_81e8 + -0x743c))\n                                         (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4768);\n                      pcVar28 = pcStack_81e8;\n                      if (iVar24 == 0) goto LAB_0002e52c;\n                      cmdline_error(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4764,iVar20);\n                    }\n                  }\n                }\n                goto LAB_0002e464;\n              }\n            }\n            (*pcStack_81dc)();\n            pcVar28 = pcStack_81e8;\n            iVar2 = iVar24;\n          }\n        }\n      }\nLAB_0002e464:\n      iVar2 = iVar2 + 1;\n      if (iVar4 <= iVar2) goto LAB_0002e52c;\n      piVar19 = (int *)(iVar15 + iVar2 * 4);\n      pcVar13 = (char *)*piVar19;\n      iVar24 = iVar2;\n      if (*pcVar13 != '-') goto LAB_0002e52c;\n      goto LAB_0002e488;\n    }\n    iVar2 = 1;\n  }" ({ "{") (expression_statement "pcVar13 = *(char **)(iVar15 + 4);" (assignment_expression "pcVar13 = *(char **)(iVar15 + 4)" (identifier "pcVar13") (= "=") (pointer_expression "*(char **)(iVar15 + 4)" (* "*") (cast_expression "(char **)(iVar15 + 4)" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(iVar15 + 4)" (( "(") (binary_expression "iVar15 + 4" (identifier "iVar15") (+ "+") (number_literal "4")) () ")"))))) (; ";")) (expression_statement "piVar19 = (int *)(iVar15 + 4);" (assignment_expression "piVar19 = (int *)(iVar15 + 4)" (identifier "piVar19") (= "=") (cast_expression "(int *)(iVar15 + 4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar15 + 4)" (( "(") (binary_expression "iVar15 + 4" (identifier "iVar15") (+ "+") (number_literal "4")) () ")")))) (; ";")) (if_statement "if (*pcVar13 == '-') {\n      iVar25 = *(int *)(pcStack_81e8 + -0x7fd8);\n      iVar26 = *(int *)(pcStack_81e8 + -0x7fc8);\n      pcVar27 = (char *)(*(int *)(pcStack_81e8 + -0x7fc8) + -0x47b8);\n      iVar29 = *(int *)(pcStack_81e8 + -0x7fc8);\n      pcStack_81dc = (code *)(*(int *)(pcStack_81e8 + -0x7db0) + -0x79e4);\n      iVar24 = 1;\nLAB_0002e488:\n      iVar2 = iVar24 + 1;\n      uVar7 = 0;\n      if (iVar2 < iVar4) {\n        uVar7 = *(undefined4 *)(iVar15 + (iVar24 + 1) * 4);\n      }\n      iVar8 = cmdline_process_param(pcVar13,uVar7,1,*(undefined4 *)(iVar25 + -0x31fc));\n      pcVar28 = pcStack_81e8;\n      if (iVar8 == -2) {\n        cmdline_error(*(int *)(pcStack_81e8 + -0x7fc8) + -0x47e4,*piVar19);\n        uVar7 = extraout_v1;\nLAB_0002e1d0:\n        iVar2 = iVar24;\n        if ((**(uint **)(pcVar28 + -0x7f44) & 1) != 0) {\n          *(undefined4 *)(*(int *)(pcVar28 + -0x7fd8) + -0x31c8) = uVar7;\n        }\n        goto LAB_0002e464;\n      }\n      uVar7 = 1;\n      if (iVar8 == 2) goto LAB_0002e464;\n      if (iVar8 == 1) goto LAB_0002e1d0;\n      iVar20 = *piVar19;\n      iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar26 + -0x47c0);\n      if (iVar8 == 0) {\n        (**(code **)(pcStack_81e8 + -0x7c54))();\n        uVar3 = 1;\n        goto LAB_0002e878;\n      }\n      iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20);\n      if (iVar8 == 0) {\n        *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31cc) = 1;\n        pcVar28 = pcStack_81e8;\n        iVar2 = iVar24;\n      }\n      else {\n        iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar29 + -0x47b4);\n        if (iVar8 == 0) {\n          *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d0) = 1;\n          pcVar28 = pcStack_81e8;\n          iVar2 = iVar24;\n        }\n        else {\n          iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                            (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47b0);\n          if (iVar8 == 0) {\n            *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fa8) = 0;\n            pcVar28 = pcStack_81e8;\n            iVar2 = iVar24;\n          }\n          else {\n            iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                              (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47ac);\n            if ((iVar8 != 0) &&\n               (iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                  (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47a8), iVar8 != 0))\n            {\n              iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47a4);\n              if (iVar8 != 0) {\n                iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                  (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x479c);\n                iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                if (iVar8 == 0) {\nLAB_0002e348:\n                  pcVar28 = pcStack_81e8;\n                  version();\n                }\n                else {\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar16 + -0x4798);\n                  iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                  if (iVar8 == 0) goto LAB_0002e348;\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar16 + -0x478c);\n                  iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                  pcVar28 = pcStack_81e8;\n                  if (iVar8 == 0) {\n                    *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31c4) = 1;\n                    iVar2 = iVar24;\n                    goto LAB_0002e464;\n                  }\n                }\n                iVar8 = (**(code **)(pcVar28 + -0x743c))(iVar20,iVar16 + -0x4788);\n                if (iVar8 == 0) {\n                  **(undefined4 **)(pcStack_81e8 + -0x7c4c) = 1;\n                  pcVar28 = pcStack_81e8;\n                  iVar2 = iVar24;\n                }\n                else {\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                    (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4780);\n                  if (iVar8 == 0) {\n                    *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31dc) = 1;\n                    pcVar28 = pcStack_81e8;\n                    iVar2 = iVar24;\n                  }\n                  else {\n                    iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                      (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4778);\n                    if (iVar8 == 0) {\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac) = 0;\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0) = 1;\n                      pcVar28 = pcStack_81e8;\n                      iVar2 = iVar24;\n                      goto LAB_0002e464;\n                    }\n                    iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                      (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4770);\n                    if (iVar8 == 0) {\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac) = 1;\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0) = 0;\n                      pcVar28 = pcStack_81e8;\n                      iVar2 = iVar24;\n                    }\n                    else {\n                      iVar24 = (**(code **)(pcStack_81e8 + -0x743c))\n                                         (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4768);\n                      pcVar28 = pcStack_81e8;\n                      if (iVar24 == 0) goto LAB_0002e52c;\n                      cmdline_error(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4764,iVar20);\n                    }\n                  }\n                }\n                goto LAB_0002e464;\n              }\n            }\n            (*pcStack_81dc)();\n            pcVar28 = pcStack_81e8;\n            iVar2 = iVar24;\n          }\n        }\n      }\nLAB_0002e464:\n      iVar2 = iVar2 + 1;\n      if (iVar4 <= iVar2) goto LAB_0002e52c;\n      piVar19 = (int *)(iVar15 + iVar2 * 4);\n      pcVar13 = (char *)*piVar19;\n      iVar24 = iVar2;\n      if (*pcVar13 != '-') goto LAB_0002e52c;\n      goto LAB_0002e488;\n    }" (if "if") (parenthesized_expression "(*pcVar13 == '-')" (( "(") (binary_expression "*pcVar13 == '-'" (pointer_expression "*pcVar13" (* "*") (identifier "pcVar13")) (== "==") (char_literal "'-'" (' "'") (character "-") (' "'"))) () ")")) (compound_statement "{\n      iVar25 = *(int *)(pcStack_81e8 + -0x7fd8);\n      iVar26 = *(int *)(pcStack_81e8 + -0x7fc8);\n      pcVar27 = (char *)(*(int *)(pcStack_81e8 + -0x7fc8) + -0x47b8);\n      iVar29 = *(int *)(pcStack_81e8 + -0x7fc8);\n      pcStack_81dc = (code *)(*(int *)(pcStack_81e8 + -0x7db0) + -0x79e4);\n      iVar24 = 1;\nLAB_0002e488:\n      iVar2 = iVar24 + 1;\n      uVar7 = 0;\n      if (iVar2 < iVar4) {\n        uVar7 = *(undefined4 *)(iVar15 + (iVar24 + 1) * 4);\n      }\n      iVar8 = cmdline_process_param(pcVar13,uVar7,1,*(undefined4 *)(iVar25 + -0x31fc));\n      pcVar28 = pcStack_81e8;\n      if (iVar8 == -2) {\n        cmdline_error(*(int *)(pcStack_81e8 + -0x7fc8) + -0x47e4,*piVar19);\n        uVar7 = extraout_v1;\nLAB_0002e1d0:\n        iVar2 = iVar24;\n        if ((**(uint **)(pcVar28 + -0x7f44) & 1) != 0) {\n          *(undefined4 *)(*(int *)(pcVar28 + -0x7fd8) + -0x31c8) = uVar7;\n        }\n        goto LAB_0002e464;\n      }\n      uVar7 = 1;\n      if (iVar8 == 2) goto LAB_0002e464;\n      if (iVar8 == 1) goto LAB_0002e1d0;\n      iVar20 = *piVar19;\n      iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar26 + -0x47c0);\n      if (iVar8 == 0) {\n        (**(code **)(pcStack_81e8 + -0x7c54))();\n        uVar3 = 1;\n        goto LAB_0002e878;\n      }\n      iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20);\n      if (iVar8 == 0) {\n        *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31cc) = 1;\n        pcVar28 = pcStack_81e8;\n        iVar2 = iVar24;\n      }\n      else {\n        iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar29 + -0x47b4);\n        if (iVar8 == 0) {\n          *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d0) = 1;\n          pcVar28 = pcStack_81e8;\n          iVar2 = iVar24;\n        }\n        else {\n          iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                            (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47b0);\n          if (iVar8 == 0) {\n            *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fa8) = 0;\n            pcVar28 = pcStack_81e8;\n            iVar2 = iVar24;\n          }\n          else {\n            iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                              (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47ac);\n            if ((iVar8 != 0) &&\n               (iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                  (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47a8), iVar8 != 0))\n            {\n              iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47a4);\n              if (iVar8 != 0) {\n                iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                  (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x479c);\n                iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                if (iVar8 == 0) {\nLAB_0002e348:\n                  pcVar28 = pcStack_81e8;\n                  version();\n                }\n                else {\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar16 + -0x4798);\n                  iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                  if (iVar8 == 0) goto LAB_0002e348;\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar16 + -0x478c);\n                  iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                  pcVar28 = pcStack_81e8;\n                  if (iVar8 == 0) {\n                    *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31c4) = 1;\n                    iVar2 = iVar24;\n                    goto LAB_0002e464;\n                  }\n                }\n                iVar8 = (**(code **)(pcVar28 + -0x743c))(iVar20,iVar16 + -0x4788);\n                if (iVar8 == 0) {\n                  **(undefined4 **)(pcStack_81e8 + -0x7c4c) = 1;\n                  pcVar28 = pcStack_81e8;\n                  iVar2 = iVar24;\n                }\n                else {\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                    (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4780);\n                  if (iVar8 == 0) {\n                    *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31dc) = 1;\n                    pcVar28 = pcStack_81e8;\n                    iVar2 = iVar24;\n                  }\n                  else {\n                    iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                      (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4778);\n                    if (iVar8 == 0) {\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac) = 0;\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0) = 1;\n                      pcVar28 = pcStack_81e8;\n                      iVar2 = iVar24;\n                      goto LAB_0002e464;\n                    }\n                    iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                      (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4770);\n                    if (iVar8 == 0) {\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac) = 1;\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0) = 0;\n                      pcVar28 = pcStack_81e8;\n                      iVar2 = iVar24;\n                    }\n                    else {\n                      iVar24 = (**(code **)(pcStack_81e8 + -0x743c))\n                                         (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4768);\n                      pcVar28 = pcStack_81e8;\n                      if (iVar24 == 0) goto LAB_0002e52c;\n                      cmdline_error(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4764,iVar20);\n                    }\n                  }\n                }\n                goto LAB_0002e464;\n              }\n            }\n            (*pcStack_81dc)();\n            pcVar28 = pcStack_81e8;\n            iVar2 = iVar24;\n          }\n        }\n      }\nLAB_0002e464:\n      iVar2 = iVar2 + 1;\n      if (iVar4 <= iVar2) goto LAB_0002e52c;\n      piVar19 = (int *)(iVar15 + iVar2 * 4);\n      pcVar13 = (char *)*piVar19;\n      iVar24 = iVar2;\n      if (*pcVar13 != '-') goto LAB_0002e52c;\n      goto LAB_0002e488;\n    }" ({ "{") (expression_statement "iVar25 = *(int *)(pcStack_81e8 + -0x7fd8);" (assignment_expression "iVar25 = *(int *)(pcStack_81e8 + -0x7fd8)" (identifier "iVar25") (= "=") (pointer_expression "*(int *)(pcStack_81e8 + -0x7fd8)" (* "*") (cast_expression "(int *)(pcStack_81e8 + -0x7fd8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcStack_81e8 + -0x7fd8)" (( "(") (binary_expression "pcStack_81e8 + -0x7fd8" (identifier "pcStack_81e8") (+ "+") (number_literal "-0x7fd8")) () ")"))))) (; ";")) (expression_statement "iVar26 = *(int *)(pcStack_81e8 + -0x7fc8);" (assignment_expression "iVar26 = *(int *)(pcStack_81e8 + -0x7fc8)" (identifier "iVar26") (= "=") (pointer_expression "*(int *)(pcStack_81e8 + -0x7fc8)" (* "*") (cast_expression "(int *)(pcStack_81e8 + -0x7fc8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcStack_81e8 + -0x7fc8)" (( "(") (binary_expression "pcStack_81e8 + -0x7fc8" (identifier "pcStack_81e8") (+ "+") (number_literal "-0x7fc8")) () ")"))))) (; ";")) (expression_statement "pcVar27 = (char *)(*(int *)(pcStack_81e8 + -0x7fc8) + -0x47b8);" (assignment_expression "pcVar27 = (char *)(*(int *)(pcStack_81e8 + -0x7fc8) + -0x47b8)" (identifier "pcVar27") (= "=") (cast_expression "(char *)(*(int *)(pcStack_81e8 + -0x7fc8) + -0x47b8)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcStack_81e8 + -0x7fc8) + -0x47b8)" (( "(") (binary_expression "*(int *)(pcStack_81e8 + -0x7fc8) + -0x47b8" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fc8)" (* "*") (cast_expression "(int *)(pcStack_81e8 + -0x7fc8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcStack_81e8 + -0x7fc8)" (( "(") (binary_expression "pcStack_81e8 + -0x7fc8" (identifier "pcStack_81e8") (+ "+") (number_literal "-0x7fc8")) () ")")))) (+ "+") (number_literal "-0x47b8")) () ")")))) (; ";")) (expression_statement "iVar29 = *(int *)(pcStack_81e8 + -0x7fc8);" (assignment_expression "iVar29 = *(int *)(pcStack_81e8 + -0x7fc8)" (identifier "iVar29") (= "=") (pointer_expression "*(int *)(pcStack_81e8 + -0x7fc8)" (* "*") (cast_expression "(int *)(pcStack_81e8 + -0x7fc8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcStack_81e8 + -0x7fc8)" (( "(") (binary_expression "pcStack_81e8 + -0x7fc8" (identifier "pcStack_81e8") (+ "+") (number_literal "-0x7fc8")) () ")"))))) (; ";")) (expression_statement "pcStack_81dc = (code *)(*(int *)(pcStack_81e8 + -0x7db0) + -0x79e4);" (assignment_expression "pcStack_81dc = (code *)(*(int *)(pcStack_81e8 + -0x7db0) + -0x79e4)" (identifier "pcStack_81dc") (= "=") (cast_expression "(code *)(*(int *)(pcStack_81e8 + -0x7db0) + -0x79e4)" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcStack_81e8 + -0x7db0) + -0x79e4)" (( "(") (binary_expression "*(int *)(pcStack_81e8 + -0x7db0) + -0x79e4" (pointer_expression "*(int *)(pcStack_81e8 + -0x7db0)" (* "*") (cast_expression "(int *)(pcStack_81e8 + -0x7db0)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcStack_81e8 + -0x7db0)" (( "(") (binary_expression "pcStack_81e8 + -0x7db0" (identifier "pcStack_81e8") (+ "+") (number_literal "-0x7db0")) () ")")))) (+ "+") (number_literal "-0x79e4")) () ")")))) (; ";")) (expression_statement "iVar24 = 1;" (assignment_expression "iVar24 = 1" (identifier "iVar24") (= "=") (number_literal "1")) (; ";")) (labeled_statement "LAB_0002e488:\n      iVar2 = iVar24 + 1;" (statement_identifier "LAB_0002e488") (: ":") (expression_statement "iVar2 = iVar24 + 1;" (assignment_expression "iVar2 = iVar24 + 1" (identifier "iVar2") (= "=") (binary_expression "iVar24 + 1" (identifier "iVar24") (+ "+") (number_literal "1"))) (; ";"))) (expression_statement "uVar7 = 0;" (assignment_expression "uVar7 = 0" (identifier "uVar7") (= "=") (number_literal "0")) (; ";")) (if_statement "if (iVar2 < iVar4) {\n        uVar7 = *(undefined4 *)(iVar15 + (iVar24 + 1) * 4);\n      }" (if "if") (parenthesized_expression "(iVar2 < iVar4)" (( "(") (binary_expression "iVar2 < iVar4" (identifier "iVar2") (< "<") (identifier "iVar4")) () ")")) (compound_statement "{\n        uVar7 = *(undefined4 *)(iVar15 + (iVar24 + 1) * 4);\n      }" ({ "{") (expression_statement "uVar7 = *(undefined4 *)(iVar15 + (iVar24 + 1) * 4);" (assignment_expression "uVar7 = *(undefined4 *)(iVar15 + (iVar24 + 1) * 4)" (identifier "uVar7") (= "=") (pointer_expression "*(undefined4 *)(iVar15 + (iVar24 + 1) * 4)" (* "*") (cast_expression "(undefined4 *)(iVar15 + (iVar24 + 1) * 4)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar15 + (iVar24 + 1) * 4)" (( "(") (binary_expression "iVar15 + (iVar24 + 1) * 4" (identifier "iVar15") (+ "+") (binary_expression "(iVar24 + 1) * 4" (parenthesized_expression "(iVar24 + 1)" (( "(") (binary_expression "iVar24 + 1" (identifier "iVar24") (+ "+") (number_literal "1")) () ")")) (* "*") (number_literal "4"))) () ")"))))) (; ";")) (} "}"))) (expression_statement "iVar8 = cmdline_process_param(pcVar13,uVar7,1,*(undefined4 *)(iVar25 + -0x31fc));" (assignment_expression "iVar8 = cmdline_process_param(pcVar13,uVar7,1,*(undefined4 *)(iVar25 + -0x31fc))" (identifier "iVar8") (= "=") (call_expression "cmdline_process_param(pcVar13,uVar7,1,*(undefined4 *)(iVar25 + -0x31fc))" (identifier "cmdline_process_param") (argument_list "(pcVar13,uVar7,1,*(undefined4 *)(iVar25 + -0x31fc))" (( "(") (identifier "pcVar13") (, ",") (identifier "uVar7") (, ",") (number_literal "1") (, ",") (pointer_expression "*(undefined4 *)(iVar25 + -0x31fc)" (* "*") (cast_expression "(undefined4 *)(iVar25 + -0x31fc)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar25 + -0x31fc)" (( "(") (binary_expression "iVar25 + -0x31fc" (identifier "iVar25") (+ "+") (number_literal "-0x31fc")) () ")")))) () ")")))) (; ";")) (expression_statement "pcVar28 = pcStack_81e8;" (assignment_expression "pcVar28 = pcStack_81e8" (identifier "pcVar28") (= "=") (identifier "pcStack_81e8")) (; ";")) (if_statement "if (iVar8 == -2) {\n        cmdline_error(*(int *)(pcStack_81e8 + -0x7fc8) + -0x47e4,*piVar19);\n        uVar7 = extraout_v1;\nLAB_0002e1d0:\n        iVar2 = iVar24;\n        if ((**(uint **)(pcVar28 + -0x7f44) & 1) != 0) {\n          *(undefined4 *)(*(int *)(pcVar28 + -0x7fd8) + -0x31c8) = uVar7;\n        }\n        goto LAB_0002e464;\n      }" (if "if") (parenthesized_expression "(iVar8 == -2)" (( "(") (binary_expression "iVar8 == -2" (identifier "iVar8") (== "==") (number_literal "-2")) () ")")) (compound_statement "{\n        cmdline_error(*(int *)(pcStack_81e8 + -0x7fc8) + -0x47e4,*piVar19);\n        uVar7 = extraout_v1;\nLAB_0002e1d0:\n        iVar2 = iVar24;\n        if ((**(uint **)(pcVar28 + -0x7f44) & 1) != 0) {\n          *(undefined4 *)(*(int *)(pcVar28 + -0x7fd8) + -0x31c8) = uVar7;\n        }\n        goto LAB_0002e464;\n      }" ({ "{") (expression_statement "cmdline_error(*(int *)(pcStack_81e8 + -0x7fc8) + -0x47e4,*piVar19);" (call_expression "cmdline_error(*(int *)(pcStack_81e8 + -0x7fc8) + -0x47e4,*piVar19)" (identifier "cmdline_error") (argument_list "(*(int *)(pcStack_81e8 + -0x7fc8) + -0x47e4,*piVar19)" (( "(") (binary_expression "*(int *)(pcStack_81e8 + -0x7fc8) + -0x47e4" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fc8)" (* "*") (cast_expression "(int *)(pcStack_81e8 + -0x7fc8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcStack_81e8 + -0x7fc8)" (( "(") (binary_expression "pcStack_81e8 + -0x7fc8" (identifier "pcStack_81e8") (+ "+") (number_literal "-0x7fc8")) () ")")))) (+ "+") (number_literal "-0x47e4")) (, ",") (pointer_expression "*piVar19" (* "*") (identifier "piVar19")) () ")"))) (; ";")) (expression_statement "uVar7 = extraout_v1;" (assignment_expression "uVar7 = extraout_v1" (identifier "uVar7") (= "=") (identifier "extraout_v1")) (; ";")) (labeled_statement "LAB_0002e1d0:\n        iVar2 = iVar24;" (statement_identifier "LAB_0002e1d0") (: ":") (expression_statement "iVar2 = iVar24;" (assignment_expression "iVar2 = iVar24" (identifier "iVar2") (= "=") (identifier "iVar24")) (; ";"))) (if_statement "if ((**(uint **)(pcVar28 + -0x7f44) & 1) != 0) {\n          *(undefined4 *)(*(int *)(pcVar28 + -0x7fd8) + -0x31c8) = uVar7;\n        }" (if "if") (parenthesized_expression "((**(uint **)(pcVar28 + -0x7f44) & 1) != 0)" (( "(") (binary_expression "(**(uint **)(pcVar28 + -0x7f44) & 1) != 0" (parenthesized_expression "(**(uint **)(pcVar28 + -0x7f44) & 1)" (( "(") (binary_expression "**(uint **)(pcVar28 + -0x7f44) & 1" (pointer_expression "**(uint **)(pcVar28 + -0x7f44)" (* "*") (pointer_expression "*(uint **)(pcVar28 + -0x7f44)" (* "*") (cast_expression "(uint **)(pcVar28 + -0x7f44)" (( "(") (type_descriptor "uint **" (type_identifier "uint") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar28 + -0x7f44)" (( "(") (binary_expression "pcVar28 + -0x7f44" (identifier "pcVar28") (+ "+") (number_literal "-0x7f44")) () ")"))))) (& "&") (number_literal "1")) () ")")) (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n          *(undefined4 *)(*(int *)(pcVar28 + -0x7fd8) + -0x31c8) = uVar7;\n        }" ({ "{") (expression_statement "*(undefined4 *)(*(int *)(pcVar28 + -0x7fd8) + -0x31c8) = uVar7;" (assignment_expression "*(undefined4 *)(*(int *)(pcVar28 + -0x7fd8) + -0x31c8) = uVar7" (pointer_expression "*(undefined4 *)(*(int *)(pcVar28 + -0x7fd8) + -0x31c8)" (* "*") (cast_expression "(undefined4 *)(*(int *)(pcVar28 + -0x7fd8) + -0x31c8)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcVar28 + -0x7fd8) + -0x31c8)" (( "(") (binary_expression "*(int *)(pcVar28 + -0x7fd8) + -0x31c8" (pointer_expression "*(int *)(pcVar28 + -0x7fd8)" (* "*") (cast_expression "(int *)(pcVar28 + -0x7fd8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar28 + -0x7fd8)" (( "(") (binary_expression "pcVar28 + -0x7fd8" (identifier "pcVar28") (+ "+") (number_literal "-0x7fd8")) () ")")))) (+ "+") (number_literal "-0x31c8")) () ")")))) (= "=") (identifier "uVar7")) (; ";")) (} "}"))) (goto_statement "goto LAB_0002e464;" (goto "goto") (statement_identifier "LAB_0002e464") (; ";")) (} "}"))) (expression_statement "uVar7 = 1;" (assignment_expression "uVar7 = 1" (identifier "uVar7") (= "=") (number_literal "1")) (; ";")) (if_statement "if (iVar8 == 2) goto LAB_0002e464;" (if "if") (parenthesized_expression "(iVar8 == 2)" (( "(") (binary_expression "iVar8 == 2" (identifier "iVar8") (== "==") (number_literal "2")) () ")")) (goto_statement "goto LAB_0002e464;" (goto "goto") (statement_identifier "LAB_0002e464") (; ";"))) (if_statement "if (iVar8 == 1) goto LAB_0002e1d0;" (if "if") (parenthesized_expression "(iVar8 == 1)" (( "(") (binary_expression "iVar8 == 1" (identifier "iVar8") (== "==") (number_literal "1")) () ")")) (goto_statement "goto LAB_0002e1d0;" (goto "goto") (statement_identifier "LAB_0002e1d0") (; ";"))) (expression_statement "iVar20 = *piVar19;" (assignment_expression "iVar20 = *piVar19" (identifier "iVar20") (= "=") (pointer_expression "*piVar19" (* "*") (identifier "piVar19"))) (; ";")) (expression_statement "iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar26 + -0x47c0);" (assignment_expression "iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar26 + -0x47c0)" (identifier "iVar8") (= "=") (call_expression "(**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar26 + -0x47c0)" (parenthesized_expression "(**(code **)(pcStack_81e8 + -0x743c))" (( "(") (pointer_expression "**(code **)(pcStack_81e8 + -0x743c)" (* "*") (pointer_expression "*(code **)(pcStack_81e8 + -0x743c)" (* "*") (cast_expression "(code **)(pcStack_81e8 + -0x743c)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_81e8 + -0x743c)" (( "(") (binary_expression "pcStack_81e8 + -0x743c" (identifier "pcStack_81e8") (+ "+") (number_literal "-0x743c")) () ")"))))) () ")")) (argument_list "(iVar20,iVar26 + -0x47c0)" (( "(") (identifier "iVar20") (, ",") (binary_expression "iVar26 + -0x47c0" (identifier "iVar26") (+ "+") (number_literal "-0x47c0")) () ")")))) (; ";")) (if_statement "if (iVar8 == 0) {\n        (**(code **)(pcStack_81e8 + -0x7c54))();\n        uVar3 = 1;\n        goto LAB_0002e878;\n      }" (if "if") (parenthesized_expression "(iVar8 == 0)" (( "(") (binary_expression "iVar8 == 0" (identifier "iVar8") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n        (**(code **)(pcStack_81e8 + -0x7c54))();\n        uVar3 = 1;\n        goto LAB_0002e878;\n      }" ({ "{") (expression_statement "(**(code **)(pcStack_81e8 + -0x7c54))();" (call_expression "(**(code **)(pcStack_81e8 + -0x7c54))()" (parenthesized_expression "(**(code **)(pcStack_81e8 + -0x7c54))" (( "(") (pointer_expression "**(code **)(pcStack_81e8 + -0x7c54)" (* "*") (pointer_expression "*(code **)(pcStack_81e8 + -0x7c54)" (* "*") (cast_expression "(code **)(pcStack_81e8 + -0x7c54)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_81e8 + -0x7c54)" (( "(") (binary_expression "pcStack_81e8 + -0x7c54" (identifier "pcStack_81e8") (+ "+") (number_literal "-0x7c54")) () ")"))))) () ")")) (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "uVar3 = 1;" (assignment_expression "uVar3 = 1" (identifier "uVar3") (= "=") (number_literal "1")) (; ";")) (goto_statement "goto LAB_0002e878;" (goto "goto") (statement_identifier "LAB_0002e878") (; ";")) (} "}"))) (expression_statement "iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20);" (assignment_expression "iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20)" (identifier "iVar8") (= "=") (call_expression "(**(code **)(pcStack_81e8 + -0x743c))(iVar20)" (parenthesized_expression "(**(code **)(pcStack_81e8 + -0x743c))" (( "(") (pointer_expression "**(code **)(pcStack_81e8 + -0x743c)" (* "*") (pointer_expression "*(code **)(pcStack_81e8 + -0x743c)" (* "*") (cast_expression "(code **)(pcStack_81e8 + -0x743c)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_81e8 + -0x743c)" (( "(") (binary_expression "pcStack_81e8 + -0x743c" (identifier "pcStack_81e8") (+ "+") (number_literal "-0x743c")) () ")"))))) () ")")) (argument_list "(iVar20)" (( "(") (identifier "iVar20") () ")")))) (; ";")) (if_statement "if (iVar8 == 0) {\n        *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31cc) = 1;\n        pcVar28 = pcStack_81e8;\n        iVar2 = iVar24;\n      }\n      else {\n        iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar29 + -0x47b4);\n        if (iVar8 == 0) {\n          *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d0) = 1;\n          pcVar28 = pcStack_81e8;\n          iVar2 = iVar24;\n        }\n        else {\n          iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                            (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47b0);\n          if (iVar8 == 0) {\n            *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fa8) = 0;\n            pcVar28 = pcStack_81e8;\n            iVar2 = iVar24;\n          }\n          else {\n            iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                              (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47ac);\n            if ((iVar8 != 0) &&\n               (iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                  (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47a8), iVar8 != 0))\n            {\n              iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47a4);\n              if (iVar8 != 0) {\n                iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                  (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x479c);\n                iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                if (iVar8 == 0) {\nLAB_0002e348:\n                  pcVar28 = pcStack_81e8;\n                  version();\n                }\n                else {\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar16 + -0x4798);\n                  iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                  if (iVar8 == 0) goto LAB_0002e348;\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar16 + -0x478c);\n                  iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                  pcVar28 = pcStack_81e8;\n                  if (iVar8 == 0) {\n                    *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31c4) = 1;\n                    iVar2 = iVar24;\n                    goto LAB_0002e464;\n                  }\n                }\n                iVar8 = (**(code **)(pcVar28 + -0x743c))(iVar20,iVar16 + -0x4788);\n                if (iVar8 == 0) {\n                  **(undefined4 **)(pcStack_81e8 + -0x7c4c) = 1;\n                  pcVar28 = pcStack_81e8;\n                  iVar2 = iVar24;\n                }\n                else {\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                    (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4780);\n                  if (iVar8 == 0) {\n                    *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31dc) = 1;\n                    pcVar28 = pcStack_81e8;\n                    iVar2 = iVar24;\n                  }\n                  else {\n                    iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                      (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4778);\n                    if (iVar8 == 0) {\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac) = 0;\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0) = 1;\n                      pcVar28 = pcStack_81e8;\n                      iVar2 = iVar24;\n                      goto LAB_0002e464;\n                    }\n                    iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                      (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4770);\n                    if (iVar8 == 0) {\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac) = 1;\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0) = 0;\n                      pcVar28 = pcStack_81e8;\n                      iVar2 = iVar24;\n                    }\n                    else {\n                      iVar24 = (**(code **)(pcStack_81e8 + -0x743c))\n                                         (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4768);\n                      pcVar28 = pcStack_81e8;\n                      if (iVar24 == 0) goto LAB_0002e52c;\n                      cmdline_error(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4764,iVar20);\n                    }\n                  }\n                }\n                goto LAB_0002e464;\n              }\n            }\n            (*pcStack_81dc)();\n            pcVar28 = pcStack_81e8;\n            iVar2 = iVar24;\n          }\n        }\n      }" (if "if") (parenthesized_expression "(iVar8 == 0)" (( "(") (binary_expression "iVar8 == 0" (identifier "iVar8") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n        *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31cc) = 1;\n        pcVar28 = pcStack_81e8;\n        iVar2 = iVar24;\n      }" ({ "{") (expression_statement "*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31cc) = 1;" (assignment_expression "*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31cc) = 1" (pointer_expression "*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31cc)" (* "*") (cast_expression "(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31cc)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31cc)" (( "(") (binary_expression "*(int *)(pcStack_81e8 + -0x7fd8) + -0x31cc" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fd8)" (* "*") (cast_expression "(int *)(pcStack_81e8 + -0x7fd8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcStack_81e8 + -0x7fd8)" (( "(") (binary_expression "pcStack_81e8 + -0x7fd8" (identifier "pcStack_81e8") (+ "+") (number_literal "-0x7fd8")) () ")")))) (+ "+") (number_literal "-0x31cc")) () ")")))) (= "=") (number_literal "1")) (; ";")) (expression_statement "pcVar28 = pcStack_81e8;" (assignment_expression "pcVar28 = pcStack_81e8" (identifier "pcVar28") (= "=") (identifier "pcStack_81e8")) (; ";")) (expression_statement "iVar2 = iVar24;" (assignment_expression "iVar2 = iVar24" (identifier "iVar2") (= "=") (identifier "iVar24")) (; ";")) (} "}")) (else_clause "else {\n        iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar29 + -0x47b4);\n        if (iVar8 == 0) {\n          *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d0) = 1;\n          pcVar28 = pcStack_81e8;\n          iVar2 = iVar24;\n        }\n        else {\n          iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                            (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47b0);\n          if (iVar8 == 0) {\n            *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fa8) = 0;\n            pcVar28 = pcStack_81e8;\n            iVar2 = iVar24;\n          }\n          else {\n            iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                              (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47ac);\n            if ((iVar8 != 0) &&\n               (iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                  (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47a8), iVar8 != 0))\n            {\n              iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47a4);\n              if (iVar8 != 0) {\n                iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                  (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x479c);\n                iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                if (iVar8 == 0) {\nLAB_0002e348:\n                  pcVar28 = pcStack_81e8;\n                  version();\n                }\n                else {\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar16 + -0x4798);\n                  iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                  if (iVar8 == 0) goto LAB_0002e348;\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar16 + -0x478c);\n                  iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                  pcVar28 = pcStack_81e8;\n                  if (iVar8 == 0) {\n                    *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31c4) = 1;\n                    iVar2 = iVar24;\n                    goto LAB_0002e464;\n                  }\n                }\n                iVar8 = (**(code **)(pcVar28 + -0x743c))(iVar20,iVar16 + -0x4788);\n                if (iVar8 == 0) {\n                  **(undefined4 **)(pcStack_81e8 + -0x7c4c) = 1;\n                  pcVar28 = pcStack_81e8;\n                  iVar2 = iVar24;\n                }\n                else {\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                    (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4780);\n                  if (iVar8 == 0) {\n                    *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31dc) = 1;\n                    pcVar28 = pcStack_81e8;\n                    iVar2 = iVar24;\n                  }\n                  else {\n                    iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                      (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4778);\n                    if (iVar8 == 0) {\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac) = 0;\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0) = 1;\n                      pcVar28 = pcStack_81e8;\n                      iVar2 = iVar24;\n                      goto LAB_0002e464;\n                    }\n                    iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                      (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4770);\n                    if (iVar8 == 0) {\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac) = 1;\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0) = 0;\n                      pcVar28 = pcStack_81e8;\n                      iVar2 = iVar24;\n                    }\n                    else {\n                      iVar24 = (**(code **)(pcStack_81e8 + -0x743c))\n                                         (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4768);\n                      pcVar28 = pcStack_81e8;\n                      if (iVar24 == 0) goto LAB_0002e52c;\n                      cmdline_error(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4764,iVar20);\n                    }\n                  }\n                }\n                goto LAB_0002e464;\n              }\n            }\n            (*pcStack_81dc)();\n            pcVar28 = pcStack_81e8;\n            iVar2 = iVar24;\n          }\n        }\n      }" (else "else") (compound_statement "{\n        iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar29 + -0x47b4);\n        if (iVar8 == 0) {\n          *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d0) = 1;\n          pcVar28 = pcStack_81e8;\n          iVar2 = iVar24;\n        }\n        else {\n          iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                            (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47b0);\n          if (iVar8 == 0) {\n            *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fa8) = 0;\n            pcVar28 = pcStack_81e8;\n            iVar2 = iVar24;\n          }\n          else {\n            iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                              (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47ac);\n            if ((iVar8 != 0) &&\n               (iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                  (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47a8), iVar8 != 0))\n            {\n              iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47a4);\n              if (iVar8 != 0) {\n                iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                  (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x479c);\n                iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                if (iVar8 == 0) {\nLAB_0002e348:\n                  pcVar28 = pcStack_81e8;\n                  version();\n                }\n                else {\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar16 + -0x4798);\n                  iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                  if (iVar8 == 0) goto LAB_0002e348;\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar16 + -0x478c);\n                  iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                  pcVar28 = pcStack_81e8;\n                  if (iVar8 == 0) {\n                    *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31c4) = 1;\n                    iVar2 = iVar24;\n                    goto LAB_0002e464;\n                  }\n                }\n                iVar8 = (**(code **)(pcVar28 + -0x743c))(iVar20,iVar16 + -0x4788);\n                if (iVar8 == 0) {\n                  **(undefined4 **)(pcStack_81e8 + -0x7c4c) = 1;\n                  pcVar28 = pcStack_81e8;\n                  iVar2 = iVar24;\n                }\n                else {\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                    (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4780);\n                  if (iVar8 == 0) {\n                    *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31dc) = 1;\n                    pcVar28 = pcStack_81e8;\n                    iVar2 = iVar24;\n                  }\n                  else {\n                    iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                      (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4778);\n                    if (iVar8 == 0) {\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac) = 0;\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0) = 1;\n                      pcVar28 = pcStack_81e8;\n                      iVar2 = iVar24;\n                      goto LAB_0002e464;\n                    }\n                    iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                      (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4770);\n                    if (iVar8 == 0) {\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac) = 1;\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0) = 0;\n                      pcVar28 = pcStack_81e8;\n                      iVar2 = iVar24;\n                    }\n                    else {\n                      iVar24 = (**(code **)(pcStack_81e8 + -0x743c))\n                                         (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4768);\n                      pcVar28 = pcStack_81e8;\n                      if (iVar24 == 0) goto LAB_0002e52c;\n                      cmdline_error(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4764,iVar20);\n                    }\n                  }\n                }\n                goto LAB_0002e464;\n              }\n            }\n            (*pcStack_81dc)();\n            pcVar28 = pcStack_81e8;\n            iVar2 = iVar24;\n          }\n        }\n      }" ({ "{") (expression_statement "iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar29 + -0x47b4);" (assignment_expression "iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar29 + -0x47b4)" (identifier "iVar8") (= "=") (call_expression "(**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar29 + -0x47b4)" (parenthesized_expression "(**(code **)(pcStack_81e8 + -0x743c))" (( "(") (pointer_expression "**(code **)(pcStack_81e8 + -0x743c)" (* "*") (pointer_expression "*(code **)(pcStack_81e8 + -0x743c)" (* "*") (cast_expression "(code **)(pcStack_81e8 + -0x743c)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_81e8 + -0x743c)" (( "(") (binary_expression "pcStack_81e8 + -0x743c" (identifier "pcStack_81e8") (+ "+") (number_literal "-0x743c")) () ")"))))) () ")")) (argument_list "(iVar20,iVar29 + -0x47b4)" (( "(") (identifier "iVar20") (, ",") (binary_expression "iVar29 + -0x47b4" (identifier "iVar29") (+ "+") (number_literal "-0x47b4")) () ")")))) (; ";")) (if_statement "if (iVar8 == 0) {\n          *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d0) = 1;\n          pcVar28 = pcStack_81e8;\n          iVar2 = iVar24;\n        }\n        else {\n          iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                            (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47b0);\n          if (iVar8 == 0) {\n            *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fa8) = 0;\n            pcVar28 = pcStack_81e8;\n            iVar2 = iVar24;\n          }\n          else {\n            iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                              (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47ac);\n            if ((iVar8 != 0) &&\n               (iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                  (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47a8), iVar8 != 0))\n            {\n              iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47a4);\n              if (iVar8 != 0) {\n                iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                  (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x479c);\n                iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                if (iVar8 == 0) {\nLAB_0002e348:\n                  pcVar28 = pcStack_81e8;\n                  version();\n                }\n                else {\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar16 + -0x4798);\n                  iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                  if (iVar8 == 0) goto LAB_0002e348;\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar16 + -0x478c);\n                  iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                  pcVar28 = pcStack_81e8;\n                  if (iVar8 == 0) {\n                    *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31c4) = 1;\n                    iVar2 = iVar24;\n                    goto LAB_0002e464;\n                  }\n                }\n                iVar8 = (**(code **)(pcVar28 + -0x743c))(iVar20,iVar16 + -0x4788);\n                if (iVar8 == 0) {\n                  **(undefined4 **)(pcStack_81e8 + -0x7c4c) = 1;\n                  pcVar28 = pcStack_81e8;\n                  iVar2 = iVar24;\n                }\n                else {\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                    (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4780);\n                  if (iVar8 == 0) {\n                    *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31dc) = 1;\n                    pcVar28 = pcStack_81e8;\n                    iVar2 = iVar24;\n                  }\n                  else {\n                    iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                      (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4778);\n                    if (iVar8 == 0) {\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac) = 0;\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0) = 1;\n                      pcVar28 = pcStack_81e8;\n                      iVar2 = iVar24;\n                      goto LAB_0002e464;\n                    }\n                    iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                      (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4770);\n                    if (iVar8 == 0) {\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac) = 1;\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0) = 0;\n                      pcVar28 = pcStack_81e8;\n                      iVar2 = iVar24;\n                    }\n                    else {\n                      iVar24 = (**(code **)(pcStack_81e8 + -0x743c))\n                                         (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4768);\n                      pcVar28 = pcStack_81e8;\n                      if (iVar24 == 0) goto LAB_0002e52c;\n                      cmdline_error(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4764,iVar20);\n                    }\n                  }\n                }\n                goto LAB_0002e464;\n              }\n            }\n            (*pcStack_81dc)();\n            pcVar28 = pcStack_81e8;\n            iVar2 = iVar24;\n          }\n        }" (if "if") (parenthesized_expression "(iVar8 == 0)" (( "(") (binary_expression "iVar8 == 0" (identifier "iVar8") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n          *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d0) = 1;\n          pcVar28 = pcStack_81e8;\n          iVar2 = iVar24;\n        }" ({ "{") (expression_statement "*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d0) = 1;" (assignment_expression "*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d0) = 1" (pointer_expression "*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d0)" (* "*") (cast_expression "(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d0)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d0)" (( "(") (binary_expression "*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d0" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fd8)" (* "*") (cast_expression "(int *)(pcStack_81e8 + -0x7fd8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcStack_81e8 + -0x7fd8)" (( "(") (binary_expression "pcStack_81e8 + -0x7fd8" (identifier "pcStack_81e8") (+ "+") (number_literal "-0x7fd8")) () ")")))) (+ "+") (number_literal "-0x31d0")) () ")")))) (= "=") (number_literal "1")) (; ";")) (expression_statement "pcVar28 = pcStack_81e8;" (assignment_expression "pcVar28 = pcStack_81e8" (identifier "pcVar28") (= "=") (identifier "pcStack_81e8")) (; ";")) (expression_statement "iVar2 = iVar24;" (assignment_expression "iVar2 = iVar24" (identifier "iVar2") (= "=") (identifier "iVar24")) (; ";")) (} "}")) (else_clause "else {\n          iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                            (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47b0);\n          if (iVar8 == 0) {\n            *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fa8) = 0;\n            pcVar28 = pcStack_81e8;\n            iVar2 = iVar24;\n          }\n          else {\n            iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                              (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47ac);\n            if ((iVar8 != 0) &&\n               (iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                  (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47a8), iVar8 != 0))\n            {\n              iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47a4);\n              if (iVar8 != 0) {\n                iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                  (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x479c);\n                iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                if (iVar8 == 0) {\nLAB_0002e348:\n                  pcVar28 = pcStack_81e8;\n                  version();\n                }\n                else {\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar16 + -0x4798);\n                  iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                  if (iVar8 == 0) goto LAB_0002e348;\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar16 + -0x478c);\n                  iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                  pcVar28 = pcStack_81e8;\n                  if (iVar8 == 0) {\n                    *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31c4) = 1;\n                    iVar2 = iVar24;\n                    goto LAB_0002e464;\n                  }\n                }\n                iVar8 = (**(code **)(pcVar28 + -0x743c))(iVar20,iVar16 + -0x4788);\n                if (iVar8 == 0) {\n                  **(undefined4 **)(pcStack_81e8 + -0x7c4c) = 1;\n                  pcVar28 = pcStack_81e8;\n                  iVar2 = iVar24;\n                }\n                else {\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                    (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4780);\n                  if (iVar8 == 0) {\n                    *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31dc) = 1;\n                    pcVar28 = pcStack_81e8;\n                    iVar2 = iVar24;\n                  }\n                  else {\n                    iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                      (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4778);\n                    if (iVar8 == 0) {\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac) = 0;\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0) = 1;\n                      pcVar28 = pcStack_81e8;\n                      iVar2 = iVar24;\n                      goto LAB_0002e464;\n                    }\n                    iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                      (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4770);\n                    if (iVar8 == 0) {\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac) = 1;\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0) = 0;\n                      pcVar28 = pcStack_81e8;\n                      iVar2 = iVar24;\n                    }\n                    else {\n                      iVar24 = (**(code **)(pcStack_81e8 + -0x743c))\n                                         (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4768);\n                      pcVar28 = pcStack_81e8;\n                      if (iVar24 == 0) goto LAB_0002e52c;\n                      cmdline_error(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4764,iVar20);\n                    }\n                  }\n                }\n                goto LAB_0002e464;\n              }\n            }\n            (*pcStack_81dc)();\n            pcVar28 = pcStack_81e8;\n            iVar2 = iVar24;\n          }\n        }" (else "else") (compound_statement "{\n          iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                            (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47b0);\n          if (iVar8 == 0) {\n            *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fa8) = 0;\n            pcVar28 = pcStack_81e8;\n            iVar2 = iVar24;\n          }\n          else {\n            iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                              (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47ac);\n            if ((iVar8 != 0) &&\n               (iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                  (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47a8), iVar8 != 0))\n            {\n              iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47a4);\n              if (iVar8 != 0) {\n                iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                  (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x479c);\n                iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                if (iVar8 == 0) {\nLAB_0002e348:\n                  pcVar28 = pcStack_81e8;\n                  version();\n                }\n                else {\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar16 + -0x4798);\n                  iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                  if (iVar8 == 0) goto LAB_0002e348;\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar16 + -0x478c);\n                  iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                  pcVar28 = pcStack_81e8;\n                  if (iVar8 == 0) {\n                    *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31c4) = 1;\n                    iVar2 = iVar24;\n                    goto LAB_0002e464;\n                  }\n                }\n                iVar8 = (**(code **)(pcVar28 + -0x743c))(iVar20,iVar16 + -0x4788);\n                if (iVar8 == 0) {\n                  **(undefined4 **)(pcStack_81e8 + -0x7c4c) = 1;\n                  pcVar28 = pcStack_81e8;\n                  iVar2 = iVar24;\n                }\n                else {\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                    (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4780);\n                  if (iVar8 == 0) {\n                    *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31dc) = 1;\n                    pcVar28 = pcStack_81e8;\n                    iVar2 = iVar24;\n                  }\n                  else {\n                    iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                      (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4778);\n                    if (iVar8 == 0) {\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac) = 0;\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0) = 1;\n                      pcVar28 = pcStack_81e8;\n                      iVar2 = iVar24;\n                      goto LAB_0002e464;\n                    }\n                    iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                      (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4770);\n                    if (iVar8 == 0) {\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac) = 1;\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0) = 0;\n                      pcVar28 = pcStack_81e8;\n                      iVar2 = iVar24;\n                    }\n                    else {\n                      iVar24 = (**(code **)(pcStack_81e8 + -0x743c))\n                                         (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4768);\n                      pcVar28 = pcStack_81e8;\n                      if (iVar24 == 0) goto LAB_0002e52c;\n                      cmdline_error(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4764,iVar20);\n                    }\n                  }\n                }\n                goto LAB_0002e464;\n              }\n            }\n            (*pcStack_81dc)();\n            pcVar28 = pcStack_81e8;\n            iVar2 = iVar24;\n          }\n        }" ({ "{") (expression_statement "iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                            (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47b0);" (assignment_expression "iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                            (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47b0)" (identifier "iVar8") (= "=") (call_expression "(**(code **)(pcStack_81e8 + -0x743c))\n                            (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47b0)" (parenthesized_expression "(**(code **)(pcStack_81e8 + -0x743c))" (( "(") (pointer_expression "**(code **)(pcStack_81e8 + -0x743c)" (* "*") (pointer_expression "*(code **)(pcStack_81e8 + -0x743c)" (* "*") (cast_expression "(code **)(pcStack_81e8 + -0x743c)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_81e8 + -0x743c)" (( "(") (binary_expression "pcStack_81e8 + -0x743c" (identifier "pcStack_81e8") (+ "+") (number_literal "-0x743c")) () ")"))))) () ")")) (argument_list "(iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47b0)" (( "(") (identifier "iVar20") (, ",") (binary_expression "*(int *)(pcStack_81e8 + -0x7fc8) + -0x47b0" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fc8)" (* "*") (cast_expression "(int *)(pcStack_81e8 + -0x7fc8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcStack_81e8 + -0x7fc8)" (( "(") (binary_expression "pcStack_81e8 + -0x7fc8" (identifier "pcStack_81e8") (+ "+") (number_literal "-0x7fc8")) () ")")))) (+ "+") (number_literal "-0x47b0")) () ")")))) (; ";")) (if_statement "if (iVar8 == 0) {\n            *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fa8) = 0;\n            pcVar28 = pcStack_81e8;\n            iVar2 = iVar24;\n          }\n          else {\n            iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                              (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47ac);\n            if ((iVar8 != 0) &&\n               (iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                  (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47a8), iVar8 != 0))\n            {\n              iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47a4);\n              if (iVar8 != 0) {\n                iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                  (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x479c);\n                iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                if (iVar8 == 0) {\nLAB_0002e348:\n                  pcVar28 = pcStack_81e8;\n                  version();\n                }\n                else {\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar16 + -0x4798);\n                  iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                  if (iVar8 == 0) goto LAB_0002e348;\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar16 + -0x478c);\n                  iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                  pcVar28 = pcStack_81e8;\n                  if (iVar8 == 0) {\n                    *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31c4) = 1;\n                    iVar2 = iVar24;\n                    goto LAB_0002e464;\n                  }\n                }\n                iVar8 = (**(code **)(pcVar28 + -0x743c))(iVar20,iVar16 + -0x4788);\n                if (iVar8 == 0) {\n                  **(undefined4 **)(pcStack_81e8 + -0x7c4c) = 1;\n                  pcVar28 = pcStack_81e8;\n                  iVar2 = iVar24;\n                }\n                else {\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                    (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4780);\n                  if (iVar8 == 0) {\n                    *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31dc) = 1;\n                    pcVar28 = pcStack_81e8;\n                    iVar2 = iVar24;\n                  }\n                  else {\n                    iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                      (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4778);\n                    if (iVar8 == 0) {\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac) = 0;\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0) = 1;\n                      pcVar28 = pcStack_81e8;\n                      iVar2 = iVar24;\n                      goto LAB_0002e464;\n                    }\n                    iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                      (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4770);\n                    if (iVar8 == 0) {\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac) = 1;\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0) = 0;\n                      pcVar28 = pcStack_81e8;\n                      iVar2 = iVar24;\n                    }\n                    else {\n                      iVar24 = (**(code **)(pcStack_81e8 + -0x743c))\n                                         (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4768);\n                      pcVar28 = pcStack_81e8;\n                      if (iVar24 == 0) goto LAB_0002e52c;\n                      cmdline_error(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4764,iVar20);\n                    }\n                  }\n                }\n                goto LAB_0002e464;\n              }\n            }\n            (*pcStack_81dc)();\n            pcVar28 = pcStack_81e8;\n            iVar2 = iVar24;\n          }" (if "if") (parenthesized_expression "(iVar8 == 0)" (( "(") (binary_expression "iVar8 == 0" (identifier "iVar8") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n            *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fa8) = 0;\n            pcVar28 = pcStack_81e8;\n            iVar2 = iVar24;\n          }" ({ "{") (expression_statement "*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fa8) = 0;" (assignment_expression "*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fa8) = 0" (pointer_expression "*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fa8)" (* "*") (cast_expression "(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fa8)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fa8)" (( "(") (binary_expression "*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fa8" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fd8)" (* "*") (cast_expression "(int *)(pcStack_81e8 + -0x7fd8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcStack_81e8 + -0x7fd8)" (( "(") (binary_expression "pcStack_81e8 + -0x7fd8" (identifier "pcStack_81e8") (+ "+") (number_literal "-0x7fd8")) () ")")))) (+ "+") (number_literal "-0x3fa8")) () ")")))) (= "=") (number_literal "0")) (; ";")) (expression_statement "pcVar28 = pcStack_81e8;" (assignment_expression "pcVar28 = pcStack_81e8" (identifier "pcVar28") (= "=") (identifier "pcStack_81e8")) (; ";")) (expression_statement "iVar2 = iVar24;" (assignment_expression "iVar2 = iVar24" (identifier "iVar2") (= "=") (identifier "iVar24")) (; ";")) (} "}")) (else_clause "else {\n            iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                              (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47ac);\n            if ((iVar8 != 0) &&\n               (iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                  (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47a8), iVar8 != 0))\n            {\n              iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47a4);\n              if (iVar8 != 0) {\n                iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                  (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x479c);\n                iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                if (iVar8 == 0) {\nLAB_0002e348:\n                  pcVar28 = pcStack_81e8;\n                  version();\n                }\n                else {\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar16 + -0x4798);\n                  iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                  if (iVar8 == 0) goto LAB_0002e348;\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar16 + -0x478c);\n                  iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                  pcVar28 = pcStack_81e8;\n                  if (iVar8 == 0) {\n                    *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31c4) = 1;\n                    iVar2 = iVar24;\n                    goto LAB_0002e464;\n                  }\n                }\n                iVar8 = (**(code **)(pcVar28 + -0x743c))(iVar20,iVar16 + -0x4788);\n                if (iVar8 == 0) {\n                  **(undefined4 **)(pcStack_81e8 + -0x7c4c) = 1;\n                  pcVar28 = pcStack_81e8;\n                  iVar2 = iVar24;\n                }\n                else {\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                    (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4780);\n                  if (iVar8 == 0) {\n                    *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31dc) = 1;\n                    pcVar28 = pcStack_81e8;\n                    iVar2 = iVar24;\n                  }\n                  else {\n                    iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                      (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4778);\n                    if (iVar8 == 0) {\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac) = 0;\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0) = 1;\n                      pcVar28 = pcStack_81e8;\n                      iVar2 = iVar24;\n                      goto LAB_0002e464;\n                    }\n                    iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                      (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4770);\n                    if (iVar8 == 0) {\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac) = 1;\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0) = 0;\n                      pcVar28 = pcStack_81e8;\n                      iVar2 = iVar24;\n                    }\n                    else {\n                      iVar24 = (**(code **)(pcStack_81e8 + -0x743c))\n                                         (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4768);\n                      pcVar28 = pcStack_81e8;\n                      if (iVar24 == 0) goto LAB_0002e52c;\n                      cmdline_error(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4764,iVar20);\n                    }\n                  }\n                }\n                goto LAB_0002e464;\n              }\n            }\n            (*pcStack_81dc)();\n            pcVar28 = pcStack_81e8;\n            iVar2 = iVar24;\n          }" (else "else") (compound_statement "{\n            iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                              (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47ac);\n            if ((iVar8 != 0) &&\n               (iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                  (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47a8), iVar8 != 0))\n            {\n              iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47a4);\n              if (iVar8 != 0) {\n                iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                  (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x479c);\n                iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                if (iVar8 == 0) {\nLAB_0002e348:\n                  pcVar28 = pcStack_81e8;\n                  version();\n                }\n                else {\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar16 + -0x4798);\n                  iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                  if (iVar8 == 0) goto LAB_0002e348;\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar16 + -0x478c);\n                  iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                  pcVar28 = pcStack_81e8;\n                  if (iVar8 == 0) {\n                    *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31c4) = 1;\n                    iVar2 = iVar24;\n                    goto LAB_0002e464;\n                  }\n                }\n                iVar8 = (**(code **)(pcVar28 + -0x743c))(iVar20,iVar16 + -0x4788);\n                if (iVar8 == 0) {\n                  **(undefined4 **)(pcStack_81e8 + -0x7c4c) = 1;\n                  pcVar28 = pcStack_81e8;\n                  iVar2 = iVar24;\n                }\n                else {\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                    (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4780);\n                  if (iVar8 == 0) {\n                    *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31dc) = 1;\n                    pcVar28 = pcStack_81e8;\n                    iVar2 = iVar24;\n                  }\n                  else {\n                    iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                      (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4778);\n                    if (iVar8 == 0) {\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac) = 0;\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0) = 1;\n                      pcVar28 = pcStack_81e8;\n                      iVar2 = iVar24;\n                      goto LAB_0002e464;\n                    }\n                    iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                      (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4770);\n                    if (iVar8 == 0) {\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac) = 1;\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0) = 0;\n                      pcVar28 = pcStack_81e8;\n                      iVar2 = iVar24;\n                    }\n                    else {\n                      iVar24 = (**(code **)(pcStack_81e8 + -0x743c))\n                                         (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4768);\n                      pcVar28 = pcStack_81e8;\n                      if (iVar24 == 0) goto LAB_0002e52c;\n                      cmdline_error(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4764,iVar20);\n                    }\n                  }\n                }\n                goto LAB_0002e464;\n              }\n            }\n            (*pcStack_81dc)();\n            pcVar28 = pcStack_81e8;\n            iVar2 = iVar24;\n          }" ({ "{") (expression_statement "iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                              (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47ac);" (assignment_expression "iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                              (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47ac)" (identifier "iVar8") (= "=") (call_expression "(**(code **)(pcStack_81e8 + -0x743c))\n                              (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47ac)" (parenthesized_expression "(**(code **)(pcStack_81e8 + -0x743c))" (( "(") (pointer_expression "**(code **)(pcStack_81e8 + -0x743c)" (* "*") (pointer_expression "*(code **)(pcStack_81e8 + -0x743c)" (* "*") (cast_expression "(code **)(pcStack_81e8 + -0x743c)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_81e8 + -0x743c)" (( "(") (binary_expression "pcStack_81e8 + -0x743c" (identifier "pcStack_81e8") (+ "+") (number_literal "-0x743c")) () ")"))))) () ")")) (argument_list "(iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47ac)" (( "(") (identifier "iVar20") (, ",") (binary_expression "*(int *)(pcStack_81e8 + -0x7fc8) + -0x47ac" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fc8)" (* "*") (cast_expression "(int *)(pcStack_81e8 + -0x7fc8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcStack_81e8 + -0x7fc8)" (( "(") (binary_expression "pcStack_81e8 + -0x7fc8" (identifier "pcStack_81e8") (+ "+") (number_literal "-0x7fc8")) () ")")))) (+ "+") (number_literal "-0x47ac")) () ")")))) (; ";")) (if_statement "if ((iVar8 != 0) &&\n               (iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                  (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47a8), iVar8 != 0))\n            {\n              iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47a4);\n              if (iVar8 != 0) {\n                iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                  (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x479c);\n                iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                if (iVar8 == 0) {\nLAB_0002e348:\n                  pcVar28 = pcStack_81e8;\n                  version();\n                }\n                else {\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar16 + -0x4798);\n                  iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                  if (iVar8 == 0) goto LAB_0002e348;\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar16 + -0x478c);\n                  iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                  pcVar28 = pcStack_81e8;\n                  if (iVar8 == 0) {\n                    *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31c4) = 1;\n                    iVar2 = iVar24;\n                    goto LAB_0002e464;\n                  }\n                }\n                iVar8 = (**(code **)(pcVar28 + -0x743c))(iVar20,iVar16 + -0x4788);\n                if (iVar8 == 0) {\n                  **(undefined4 **)(pcStack_81e8 + -0x7c4c) = 1;\n                  pcVar28 = pcStack_81e8;\n                  iVar2 = iVar24;\n                }\n                else {\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                    (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4780);\n                  if (iVar8 == 0) {\n                    *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31dc) = 1;\n                    pcVar28 = pcStack_81e8;\n                    iVar2 = iVar24;\n                  }\n                  else {\n                    iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                      (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4778);\n                    if (iVar8 == 0) {\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac) = 0;\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0) = 1;\n                      pcVar28 = pcStack_81e8;\n                      iVar2 = iVar24;\n                      goto LAB_0002e464;\n                    }\n                    iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                      (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4770);\n                    if (iVar8 == 0) {\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac) = 1;\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0) = 0;\n                      pcVar28 = pcStack_81e8;\n                      iVar2 = iVar24;\n                    }\n                    else {\n                      iVar24 = (**(code **)(pcStack_81e8 + -0x743c))\n                                         (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4768);\n                      pcVar28 = pcStack_81e8;\n                      if (iVar24 == 0) goto LAB_0002e52c;\n                      cmdline_error(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4764,iVar20);\n                    }\n                  }\n                }\n                goto LAB_0002e464;\n              }\n            }" (if "if") (parenthesized_expression "((iVar8 != 0) &&\n               (iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                  (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47a8), iVar8 != 0))" (( "(") (binary_expression "(iVar8 != 0) &&\n               (iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                  (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47a8), iVar8 != 0)" (parenthesized_expression "(iVar8 != 0)" (( "(") (binary_expression "iVar8 != 0" (identifier "iVar8") (!= "!=") (number_literal "0")) () ")")) (&& "&&") (parenthesized_expression "(iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                  (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47a8), iVar8 != 0)" (( "(") (comma_expression "iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                  (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47a8), iVar8 != 0" (assignment_expression "iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                  (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47a8)" (identifier "iVar8") (= "=") (call_expression "(**(code **)(pcStack_81e8 + -0x743c))\n                                  (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47a8)" (parenthesized_expression "(**(code **)(pcStack_81e8 + -0x743c))" (( "(") (pointer_expression "**(code **)(pcStack_81e8 + -0x743c)" (* "*") (pointer_expression "*(code **)(pcStack_81e8 + -0x743c)" (* "*") (cast_expression "(code **)(pcStack_81e8 + -0x743c)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_81e8 + -0x743c)" (( "(") (binary_expression "pcStack_81e8 + -0x743c" (identifier "pcStack_81e8") (+ "+") (number_literal "-0x743c")) () ")"))))) () ")")) (argument_list "(iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47a8)" (( "(") (identifier "iVar20") (, ",") (binary_expression "*(int *)(pcStack_81e8 + -0x7fc8) + -0x47a8" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fc8)" (* "*") (cast_expression "(int *)(pcStack_81e8 + -0x7fc8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcStack_81e8 + -0x7fc8)" (( "(") (binary_expression "pcStack_81e8 + -0x7fc8" (identifier "pcStack_81e8") (+ "+") (number_literal "-0x7fc8")) () ")")))) (+ "+") (number_literal "-0x47a8")) () ")")))) (, ",") (binary_expression "iVar8 != 0" (identifier "iVar8") (!= "!=") (number_literal "0"))) () ")"))) () ")")) (compound_statement "{\n              iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47a4);\n              if (iVar8 != 0) {\n                iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                  (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x479c);\n                iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                if (iVar8 == 0) {\nLAB_0002e348:\n                  pcVar28 = pcStack_81e8;\n                  version();\n                }\n                else {\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar16 + -0x4798);\n                  iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                  if (iVar8 == 0) goto LAB_0002e348;\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar16 + -0x478c);\n                  iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                  pcVar28 = pcStack_81e8;\n                  if (iVar8 == 0) {\n                    *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31c4) = 1;\n                    iVar2 = iVar24;\n                    goto LAB_0002e464;\n                  }\n                }\n                iVar8 = (**(code **)(pcVar28 + -0x743c))(iVar20,iVar16 + -0x4788);\n                if (iVar8 == 0) {\n                  **(undefined4 **)(pcStack_81e8 + -0x7c4c) = 1;\n                  pcVar28 = pcStack_81e8;\n                  iVar2 = iVar24;\n                }\n                else {\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                    (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4780);\n                  if (iVar8 == 0) {\n                    *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31dc) = 1;\n                    pcVar28 = pcStack_81e8;\n                    iVar2 = iVar24;\n                  }\n                  else {\n                    iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                      (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4778);\n                    if (iVar8 == 0) {\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac) = 0;\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0) = 1;\n                      pcVar28 = pcStack_81e8;\n                      iVar2 = iVar24;\n                      goto LAB_0002e464;\n                    }\n                    iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                      (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4770);\n                    if (iVar8 == 0) {\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac) = 1;\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0) = 0;\n                      pcVar28 = pcStack_81e8;\n                      iVar2 = iVar24;\n                    }\n                    else {\n                      iVar24 = (**(code **)(pcStack_81e8 + -0x743c))\n                                         (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4768);\n                      pcVar28 = pcStack_81e8;\n                      if (iVar24 == 0) goto LAB_0002e52c;\n                      cmdline_error(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4764,iVar20);\n                    }\n                  }\n                }\n                goto LAB_0002e464;\n              }\n            }" ({ "{") (expression_statement "iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47a4);" (assignment_expression "iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47a4)" (identifier "iVar8") (= "=") (call_expression "(**(code **)(pcStack_81e8 + -0x743c))\n                                (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47a4)" (parenthesized_expression "(**(code **)(pcStack_81e8 + -0x743c))" (( "(") (pointer_expression "**(code **)(pcStack_81e8 + -0x743c)" (* "*") (pointer_expression "*(code **)(pcStack_81e8 + -0x743c)" (* "*") (cast_expression "(code **)(pcStack_81e8 + -0x743c)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_81e8 + -0x743c)" (( "(") (binary_expression "pcStack_81e8 + -0x743c" (identifier "pcStack_81e8") (+ "+") (number_literal "-0x743c")) () ")"))))) () ")")) (argument_list "(iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47a4)" (( "(") (identifier "iVar20") (, ",") (binary_expression "*(int *)(pcStack_81e8 + -0x7fc8) + -0x47a4" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fc8)" (* "*") (cast_expression "(int *)(pcStack_81e8 + -0x7fc8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcStack_81e8 + -0x7fc8)" (( "(") (binary_expression "pcStack_81e8 + -0x7fc8" (identifier "pcStack_81e8") (+ "+") (number_literal "-0x7fc8")) () ")")))) (+ "+") (number_literal "-0x47a4")) () ")")))) (; ";")) (if_statement "if (iVar8 != 0) {\n                iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                  (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x479c);\n                iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                if (iVar8 == 0) {\nLAB_0002e348:\n                  pcVar28 = pcStack_81e8;\n                  version();\n                }\n                else {\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar16 + -0x4798);\n                  iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                  if (iVar8 == 0) goto LAB_0002e348;\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar16 + -0x478c);\n                  iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                  pcVar28 = pcStack_81e8;\n                  if (iVar8 == 0) {\n                    *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31c4) = 1;\n                    iVar2 = iVar24;\n                    goto LAB_0002e464;\n                  }\n                }\n                iVar8 = (**(code **)(pcVar28 + -0x743c))(iVar20,iVar16 + -0x4788);\n                if (iVar8 == 0) {\n                  **(undefined4 **)(pcStack_81e8 + -0x7c4c) = 1;\n                  pcVar28 = pcStack_81e8;\n                  iVar2 = iVar24;\n                }\n                else {\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                    (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4780);\n                  if (iVar8 == 0) {\n                    *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31dc) = 1;\n                    pcVar28 = pcStack_81e8;\n                    iVar2 = iVar24;\n                  }\n                  else {\n                    iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                      (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4778);\n                    if (iVar8 == 0) {\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac) = 0;\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0) = 1;\n                      pcVar28 = pcStack_81e8;\n                      iVar2 = iVar24;\n                      goto LAB_0002e464;\n                    }\n                    iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                      (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4770);\n                    if (iVar8 == 0) {\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac) = 1;\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0) = 0;\n                      pcVar28 = pcStack_81e8;\n                      iVar2 = iVar24;\n                    }\n                    else {\n                      iVar24 = (**(code **)(pcStack_81e8 + -0x743c))\n                                         (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4768);\n                      pcVar28 = pcStack_81e8;\n                      if (iVar24 == 0) goto LAB_0002e52c;\n                      cmdline_error(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4764,iVar20);\n                    }\n                  }\n                }\n                goto LAB_0002e464;\n              }" (if "if") (parenthesized_expression "(iVar8 != 0)" (( "(") (binary_expression "iVar8 != 0" (identifier "iVar8") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n                iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                  (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x479c);\n                iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                if (iVar8 == 0) {\nLAB_0002e348:\n                  pcVar28 = pcStack_81e8;\n                  version();\n                }\n                else {\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar16 + -0x4798);\n                  iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                  if (iVar8 == 0) goto LAB_0002e348;\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar16 + -0x478c);\n                  iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                  pcVar28 = pcStack_81e8;\n                  if (iVar8 == 0) {\n                    *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31c4) = 1;\n                    iVar2 = iVar24;\n                    goto LAB_0002e464;\n                  }\n                }\n                iVar8 = (**(code **)(pcVar28 + -0x743c))(iVar20,iVar16 + -0x4788);\n                if (iVar8 == 0) {\n                  **(undefined4 **)(pcStack_81e8 + -0x7c4c) = 1;\n                  pcVar28 = pcStack_81e8;\n                  iVar2 = iVar24;\n                }\n                else {\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                    (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4780);\n                  if (iVar8 == 0) {\n                    *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31dc) = 1;\n                    pcVar28 = pcStack_81e8;\n                    iVar2 = iVar24;\n                  }\n                  else {\n                    iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                      (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4778);\n                    if (iVar8 == 0) {\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac) = 0;\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0) = 1;\n                      pcVar28 = pcStack_81e8;\n                      iVar2 = iVar24;\n                      goto LAB_0002e464;\n                    }\n                    iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                      (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4770);\n                    if (iVar8 == 0) {\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac) = 1;\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0) = 0;\n                      pcVar28 = pcStack_81e8;\n                      iVar2 = iVar24;\n                    }\n                    else {\n                      iVar24 = (**(code **)(pcStack_81e8 + -0x743c))\n                                         (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4768);\n                      pcVar28 = pcStack_81e8;\n                      if (iVar24 == 0) goto LAB_0002e52c;\n                      cmdline_error(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4764,iVar20);\n                    }\n                  }\n                }\n                goto LAB_0002e464;\n              }" ({ "{") (expression_statement "iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                  (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x479c);" (assignment_expression "iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                  (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x479c)" (identifier "iVar8") (= "=") (call_expression "(**(code **)(pcStack_81e8 + -0x743c))\n                                  (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x479c)" (parenthesized_expression "(**(code **)(pcStack_81e8 + -0x743c))" (( "(") (pointer_expression "**(code **)(pcStack_81e8 + -0x743c)" (* "*") (pointer_expression "*(code **)(pcStack_81e8 + -0x743c)" (* "*") (cast_expression "(code **)(pcStack_81e8 + -0x743c)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_81e8 + -0x743c)" (( "(") (binary_expression "pcStack_81e8 + -0x743c" (identifier "pcStack_81e8") (+ "+") (number_literal "-0x743c")) () ")"))))) () ")")) (argument_list "(iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x479c)" (( "(") (identifier "iVar20") (, ",") (binary_expression "*(int *)(pcStack_81e8 + -0x7fc8) + -0x479c" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fc8)" (* "*") (cast_expression "(int *)(pcStack_81e8 + -0x7fc8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcStack_81e8 + -0x7fc8)" (( "(") (binary_expression "pcStack_81e8 + -0x7fc8" (identifier "pcStack_81e8") (+ "+") (number_literal "-0x7fc8")) () ")")))) (+ "+") (number_literal "-0x479c")) () ")")))) (; ";")) (expression_statement "iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);" (assignment_expression "iVar16 = *(int *)(pcStack_81e8 + -0x7fc8)" (identifier "iVar16") (= "=") (pointer_expression "*(int *)(pcStack_81e8 + -0x7fc8)" (* "*") (cast_expression "(int *)(pcStack_81e8 + -0x7fc8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcStack_81e8 + -0x7fc8)" (( "(") (binary_expression "pcStack_81e8 + -0x7fc8" (identifier "pcStack_81e8") (+ "+") (number_literal "-0x7fc8")) () ")"))))) (; ";")) (if_statement "if (iVar8 == 0) {\nLAB_0002e348:\n                  pcVar28 = pcStack_81e8;\n                  version();\n                }\n                else {\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar16 + -0x4798);\n                  iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                  if (iVar8 == 0) goto LAB_0002e348;\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar16 + -0x478c);\n                  iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                  pcVar28 = pcStack_81e8;\n                  if (iVar8 == 0) {\n                    *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31c4) = 1;\n                    iVar2 = iVar24;\n                    goto LAB_0002e464;\n                  }\n                }" (if "if") (parenthesized_expression "(iVar8 == 0)" (( "(") (binary_expression "iVar8 == 0" (identifier "iVar8") (== "==") (number_literal "0")) () ")")) (compound_statement "{\nLAB_0002e348:\n                  pcVar28 = pcStack_81e8;\n                  version();\n                }" ({ "{") (labeled_statement "LAB_0002e348:\n                  pcVar28 = pcStack_81e8;" (statement_identifier "LAB_0002e348") (: ":") (expression_statement "pcVar28 = pcStack_81e8;" (assignment_expression "pcVar28 = pcStack_81e8" (identifier "pcVar28") (= "=") (identifier "pcStack_81e8")) (; ";"))) (expression_statement "version();" (call_expression "version()" (identifier "version") (argument_list "()" (( "(") () ")"))) (; ";")) (} "}")) (else_clause "else {\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar16 + -0x4798);\n                  iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                  if (iVar8 == 0) goto LAB_0002e348;\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar16 + -0x478c);\n                  iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                  pcVar28 = pcStack_81e8;\n                  if (iVar8 == 0) {\n                    *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31c4) = 1;\n                    iVar2 = iVar24;\n                    goto LAB_0002e464;\n                  }\n                }" (else "else") (compound_statement "{\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar16 + -0x4798);\n                  iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                  if (iVar8 == 0) goto LAB_0002e348;\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar16 + -0x478c);\n                  iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);\n                  pcVar28 = pcStack_81e8;\n                  if (iVar8 == 0) {\n                    *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31c4) = 1;\n                    iVar2 = iVar24;\n                    goto LAB_0002e464;\n                  }\n                }" ({ "{") (expression_statement "iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar16 + -0x4798);" (assignment_expression "iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar16 + -0x4798)" (identifier "iVar8") (= "=") (call_expression "(**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar16 + -0x4798)" (parenthesized_expression "(**(code **)(pcStack_81e8 + -0x743c))" (( "(") (pointer_expression "**(code **)(pcStack_81e8 + -0x743c)" (* "*") (pointer_expression "*(code **)(pcStack_81e8 + -0x743c)" (* "*") (cast_expression "(code **)(pcStack_81e8 + -0x743c)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_81e8 + -0x743c)" (( "(") (binary_expression "pcStack_81e8 + -0x743c" (identifier "pcStack_81e8") (+ "+") (number_literal "-0x743c")) () ")"))))) () ")")) (argument_list "(iVar20,iVar16 + -0x4798)" (( "(") (identifier "iVar20") (, ",") (binary_expression "iVar16 + -0x4798" (identifier "iVar16") (+ "+") (number_literal "-0x4798")) () ")")))) (; ";")) (expression_statement "iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);" (assignment_expression "iVar16 = *(int *)(pcStack_81e8 + -0x7fc8)" (identifier "iVar16") (= "=") (pointer_expression "*(int *)(pcStack_81e8 + -0x7fc8)" (* "*") (cast_expression "(int *)(pcStack_81e8 + -0x7fc8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcStack_81e8 + -0x7fc8)" (( "(") (binary_expression "pcStack_81e8 + -0x7fc8" (identifier "pcStack_81e8") (+ "+") (number_literal "-0x7fc8")) () ")"))))) (; ";")) (if_statement "if (iVar8 == 0) goto LAB_0002e348;" (if "if") (parenthesized_expression "(iVar8 == 0)" (( "(") (binary_expression "iVar8 == 0" (identifier "iVar8") (== "==") (number_literal "0")) () ")")) (goto_statement "goto LAB_0002e348;" (goto "goto") (statement_identifier "LAB_0002e348") (; ";"))) (expression_statement "iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar16 + -0x478c);" (assignment_expression "iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar16 + -0x478c)" (identifier "iVar8") (= "=") (call_expression "(**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar16 + -0x478c)" (parenthesized_expression "(**(code **)(pcStack_81e8 + -0x743c))" (( "(") (pointer_expression "**(code **)(pcStack_81e8 + -0x743c)" (* "*") (pointer_expression "*(code **)(pcStack_81e8 + -0x743c)" (* "*") (cast_expression "(code **)(pcStack_81e8 + -0x743c)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_81e8 + -0x743c)" (( "(") (binary_expression "pcStack_81e8 + -0x743c" (identifier "pcStack_81e8") (+ "+") (number_literal "-0x743c")) () ")"))))) () ")")) (argument_list "(iVar20,iVar16 + -0x478c)" (( "(") (identifier "iVar20") (, ",") (binary_expression "iVar16 + -0x478c" (identifier "iVar16") (+ "+") (number_literal "-0x478c")) () ")")))) (; ";")) (expression_statement "iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);" (assignment_expression "iVar16 = *(int *)(pcStack_81e8 + -0x7fc8)" (identifier "iVar16") (= "=") (pointer_expression "*(int *)(pcStack_81e8 + -0x7fc8)" (* "*") (cast_expression "(int *)(pcStack_81e8 + -0x7fc8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcStack_81e8 + -0x7fc8)" (( "(") (binary_expression "pcStack_81e8 + -0x7fc8" (identifier "pcStack_81e8") (+ "+") (number_literal "-0x7fc8")) () ")"))))) (; ";")) (expression_statement "pcVar28 = pcStack_81e8;" (assignment_expression "pcVar28 = pcStack_81e8" (identifier "pcVar28") (= "=") (identifier "pcStack_81e8")) (; ";")) (if_statement "if (iVar8 == 0) {\n                    *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31c4) = 1;\n                    iVar2 = iVar24;\n                    goto LAB_0002e464;\n                  }" (if "if") (parenthesized_expression "(iVar8 == 0)" (( "(") (binary_expression "iVar8 == 0" (identifier "iVar8") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n                    *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31c4) = 1;\n                    iVar2 = iVar24;\n                    goto LAB_0002e464;\n                  }" ({ "{") (expression_statement "*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31c4) = 1;" (assignment_expression "*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31c4) = 1" (pointer_expression "*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31c4)" (* "*") (cast_expression "(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31c4)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31c4)" (( "(") (binary_expression "*(int *)(pcStack_81e8 + -0x7fd8) + -0x31c4" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fd8)" (* "*") (cast_expression "(int *)(pcStack_81e8 + -0x7fd8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcStack_81e8 + -0x7fd8)" (( "(") (binary_expression "pcStack_81e8 + -0x7fd8" (identifier "pcStack_81e8") (+ "+") (number_literal "-0x7fd8")) () ")")))) (+ "+") (number_literal "-0x31c4")) () ")")))) (= "=") (number_literal "1")) (; ";")) (expression_statement "iVar2 = iVar24;" (assignment_expression "iVar2 = iVar24" (identifier "iVar2") (= "=") (identifier "iVar24")) (; ";")) (goto_statement "goto LAB_0002e464;" (goto "goto") (statement_identifier "LAB_0002e464") (; ";")) (} "}"))) (} "}")))) (expression_statement "iVar8 = (**(code **)(pcVar28 + -0x743c))(iVar20,iVar16 + -0x4788);" (assignment_expression "iVar8 = (**(code **)(pcVar28 + -0x743c))(iVar20,iVar16 + -0x4788)" (identifier "iVar8") (= "=") (call_expression "(**(code **)(pcVar28 + -0x743c))(iVar20,iVar16 + -0x4788)" (parenthesized_expression "(**(code **)(pcVar28 + -0x743c))" (( "(") (pointer_expression "**(code **)(pcVar28 + -0x743c)" (* "*") (pointer_expression "*(code **)(pcVar28 + -0x743c)" (* "*") (cast_expression "(code **)(pcVar28 + -0x743c)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar28 + -0x743c)" (( "(") (binary_expression "pcVar28 + -0x743c" (identifier "pcVar28") (+ "+") (number_literal "-0x743c")) () ")"))))) () ")")) (argument_list "(iVar20,iVar16 + -0x4788)" (( "(") (identifier "iVar20") (, ",") (binary_expression "iVar16 + -0x4788" (identifier "iVar16") (+ "+") (number_literal "-0x4788")) () ")")))) (; ";")) (if_statement "if (iVar8 == 0) {\n                  **(undefined4 **)(pcStack_81e8 + -0x7c4c) = 1;\n                  pcVar28 = pcStack_81e8;\n                  iVar2 = iVar24;\n                }\n                else {\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                    (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4780);\n                  if (iVar8 == 0) {\n                    *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31dc) = 1;\n                    pcVar28 = pcStack_81e8;\n                    iVar2 = iVar24;\n                  }\n                  else {\n                    iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                      (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4778);\n                    if (iVar8 == 0) {\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac) = 0;\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0) = 1;\n                      pcVar28 = pcStack_81e8;\n                      iVar2 = iVar24;\n                      goto LAB_0002e464;\n                    }\n                    iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                      (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4770);\n                    if (iVar8 == 0) {\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac) = 1;\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0) = 0;\n                      pcVar28 = pcStack_81e8;\n                      iVar2 = iVar24;\n                    }\n                    else {\n                      iVar24 = (**(code **)(pcStack_81e8 + -0x743c))\n                                         (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4768);\n                      pcVar28 = pcStack_81e8;\n                      if (iVar24 == 0) goto LAB_0002e52c;\n                      cmdline_error(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4764,iVar20);\n                    }\n                  }\n                }" (if "if") (parenthesized_expression "(iVar8 == 0)" (( "(") (binary_expression "iVar8 == 0" (identifier "iVar8") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n                  **(undefined4 **)(pcStack_81e8 + -0x7c4c) = 1;\n                  pcVar28 = pcStack_81e8;\n                  iVar2 = iVar24;\n                }" ({ "{") (expression_statement "**(undefined4 **)(pcStack_81e8 + -0x7c4c) = 1;" (assignment_expression "**(undefined4 **)(pcStack_81e8 + -0x7c4c) = 1" (pointer_expression "**(undefined4 **)(pcStack_81e8 + -0x7c4c)" (* "*") (pointer_expression "*(undefined4 **)(pcStack_81e8 + -0x7c4c)" (* "*") (cast_expression "(undefined4 **)(pcStack_81e8 + -0x7c4c)" (( "(") (type_descriptor "undefined4 **" (type_identifier "undefined4") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_81e8 + -0x7c4c)" (( "(") (binary_expression "pcStack_81e8 + -0x7c4c" (identifier "pcStack_81e8") (+ "+") (number_literal "-0x7c4c")) () ")"))))) (= "=") (number_literal "1")) (; ";")) (expression_statement "pcVar28 = pcStack_81e8;" (assignment_expression "pcVar28 = pcStack_81e8" (identifier "pcVar28") (= "=") (identifier "pcStack_81e8")) (; ";")) (expression_statement "iVar2 = iVar24;" (assignment_expression "iVar2 = iVar24" (identifier "iVar2") (= "=") (identifier "iVar24")) (; ";")) (} "}")) (else_clause "else {\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                    (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4780);\n                  if (iVar8 == 0) {\n                    *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31dc) = 1;\n                    pcVar28 = pcStack_81e8;\n                    iVar2 = iVar24;\n                  }\n                  else {\n                    iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                      (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4778);\n                    if (iVar8 == 0) {\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac) = 0;\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0) = 1;\n                      pcVar28 = pcStack_81e8;\n                      iVar2 = iVar24;\n                      goto LAB_0002e464;\n                    }\n                    iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                      (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4770);\n                    if (iVar8 == 0) {\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac) = 1;\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0) = 0;\n                      pcVar28 = pcStack_81e8;\n                      iVar2 = iVar24;\n                    }\n                    else {\n                      iVar24 = (**(code **)(pcStack_81e8 + -0x743c))\n                                         (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4768);\n                      pcVar28 = pcStack_81e8;\n                      if (iVar24 == 0) goto LAB_0002e52c;\n                      cmdline_error(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4764,iVar20);\n                    }\n                  }\n                }" (else "else") (compound_statement "{\n                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                    (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4780);\n                  if (iVar8 == 0) {\n                    *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31dc) = 1;\n                    pcVar28 = pcStack_81e8;\n                    iVar2 = iVar24;\n                  }\n                  else {\n                    iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                      (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4778);\n                    if (iVar8 == 0) {\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac) = 0;\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0) = 1;\n                      pcVar28 = pcStack_81e8;\n                      iVar2 = iVar24;\n                      goto LAB_0002e464;\n                    }\n                    iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                      (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4770);\n                    if (iVar8 == 0) {\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac) = 1;\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0) = 0;\n                      pcVar28 = pcStack_81e8;\n                      iVar2 = iVar24;\n                    }\n                    else {\n                      iVar24 = (**(code **)(pcStack_81e8 + -0x743c))\n                                         (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4768);\n                      pcVar28 = pcStack_81e8;\n                      if (iVar24 == 0) goto LAB_0002e52c;\n                      cmdline_error(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4764,iVar20);\n                    }\n                  }\n                }" ({ "{") (expression_statement "iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                    (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4780);" (assignment_expression "iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                    (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4780)" (identifier "iVar8") (= "=") (call_expression "(**(code **)(pcStack_81e8 + -0x743c))\n                                    (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4780)" (parenthesized_expression "(**(code **)(pcStack_81e8 + -0x743c))" (( "(") (pointer_expression "**(code **)(pcStack_81e8 + -0x743c)" (* "*") (pointer_expression "*(code **)(pcStack_81e8 + -0x743c)" (* "*") (cast_expression "(code **)(pcStack_81e8 + -0x743c)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_81e8 + -0x743c)" (( "(") (binary_expression "pcStack_81e8 + -0x743c" (identifier "pcStack_81e8") (+ "+") (number_literal "-0x743c")) () ")"))))) () ")")) (argument_list "(iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4780)" (( "(") (identifier "iVar20") (, ",") (binary_expression "*(int *)(pcStack_81e8 + -0x7fc8) + -0x4780" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fc8)" (* "*") (cast_expression "(int *)(pcStack_81e8 + -0x7fc8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcStack_81e8 + -0x7fc8)" (( "(") (binary_expression "pcStack_81e8 + -0x7fc8" (identifier "pcStack_81e8") (+ "+") (number_literal "-0x7fc8")) () ")")))) (+ "+") (number_literal "-0x4780")) () ")")))) (; ";")) (if_statement "if (iVar8 == 0) {\n                    *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31dc) = 1;\n                    pcVar28 = pcStack_81e8;\n                    iVar2 = iVar24;\n                  }\n                  else {\n                    iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                      (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4778);\n                    if (iVar8 == 0) {\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac) = 0;\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0) = 1;\n                      pcVar28 = pcStack_81e8;\n                      iVar2 = iVar24;\n                      goto LAB_0002e464;\n                    }\n                    iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                      (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4770);\n                    if (iVar8 == 0) {\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac) = 1;\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0) = 0;\n                      pcVar28 = pcStack_81e8;\n                      iVar2 = iVar24;\n                    }\n                    else {\n                      iVar24 = (**(code **)(pcStack_81e8 + -0x743c))\n                                         (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4768);\n                      pcVar28 = pcStack_81e8;\n                      if (iVar24 == 0) goto LAB_0002e52c;\n                      cmdline_error(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4764,iVar20);\n                    }\n                  }" (if "if") (parenthesized_expression "(iVar8 == 0)" (( "(") (binary_expression "iVar8 == 0" (identifier "iVar8") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n                    *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31dc) = 1;\n                    pcVar28 = pcStack_81e8;\n                    iVar2 = iVar24;\n                  }" ({ "{") (expression_statement "*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31dc) = 1;" (assignment_expression "*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31dc) = 1" (pointer_expression "*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31dc)" (* "*") (cast_expression "(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31dc)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31dc)" (( "(") (binary_expression "*(int *)(pcStack_81e8 + -0x7fd8) + -0x31dc" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fd8)" (* "*") (cast_expression "(int *)(pcStack_81e8 + -0x7fd8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcStack_81e8 + -0x7fd8)" (( "(") (binary_expression "pcStack_81e8 + -0x7fd8" (identifier "pcStack_81e8") (+ "+") (number_literal "-0x7fd8")) () ")")))) (+ "+") (number_literal "-0x31dc")) () ")")))) (= "=") (number_literal "1")) (; ";")) (expression_statement "pcVar28 = pcStack_81e8;" (assignment_expression "pcVar28 = pcStack_81e8" (identifier "pcVar28") (= "=") (identifier "pcStack_81e8")) (; ";")) (expression_statement "iVar2 = iVar24;" (assignment_expression "iVar2 = iVar24" (identifier "iVar2") (= "=") (identifier "iVar24")) (; ";")) (} "}")) (else_clause "else {\n                    iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                      (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4778);\n                    if (iVar8 == 0) {\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac) = 0;\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0) = 1;\n                      pcVar28 = pcStack_81e8;\n                      iVar2 = iVar24;\n                      goto LAB_0002e464;\n                    }\n                    iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                      (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4770);\n                    if (iVar8 == 0) {\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac) = 1;\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0) = 0;\n                      pcVar28 = pcStack_81e8;\n                      iVar2 = iVar24;\n                    }\n                    else {\n                      iVar24 = (**(code **)(pcStack_81e8 + -0x743c))\n                                         (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4768);\n                      pcVar28 = pcStack_81e8;\n                      if (iVar24 == 0) goto LAB_0002e52c;\n                      cmdline_error(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4764,iVar20);\n                    }\n                  }" (else "else") (compound_statement "{\n                    iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                      (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4778);\n                    if (iVar8 == 0) {\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac) = 0;\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0) = 1;\n                      pcVar28 = pcStack_81e8;\n                      iVar2 = iVar24;\n                      goto LAB_0002e464;\n                    }\n                    iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                      (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4770);\n                    if (iVar8 == 0) {\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac) = 1;\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0) = 0;\n                      pcVar28 = pcStack_81e8;\n                      iVar2 = iVar24;\n                    }\n                    else {\n                      iVar24 = (**(code **)(pcStack_81e8 + -0x743c))\n                                         (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4768);\n                      pcVar28 = pcStack_81e8;\n                      if (iVar24 == 0) goto LAB_0002e52c;\n                      cmdline_error(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4764,iVar20);\n                    }\n                  }" ({ "{") (expression_statement "iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                      (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4778);" (assignment_expression "iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                      (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4778)" (identifier "iVar8") (= "=") (call_expression "(**(code **)(pcStack_81e8 + -0x743c))\n                                      (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4778)" (parenthesized_expression "(**(code **)(pcStack_81e8 + -0x743c))" (( "(") (pointer_expression "**(code **)(pcStack_81e8 + -0x743c)" (* "*") (pointer_expression "*(code **)(pcStack_81e8 + -0x743c)" (* "*") (cast_expression "(code **)(pcStack_81e8 + -0x743c)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_81e8 + -0x743c)" (( "(") (binary_expression "pcStack_81e8 + -0x743c" (identifier "pcStack_81e8") (+ "+") (number_literal "-0x743c")) () ")"))))) () ")")) (argument_list "(iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4778)" (( "(") (identifier "iVar20") (, ",") (binary_expression "*(int *)(pcStack_81e8 + -0x7fc8) + -0x4778" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fc8)" (* "*") (cast_expression "(int *)(pcStack_81e8 + -0x7fc8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcStack_81e8 + -0x7fc8)" (( "(") (binary_expression "pcStack_81e8 + -0x7fc8" (identifier "pcStack_81e8") (+ "+") (number_literal "-0x7fc8")) () ")")))) (+ "+") (number_literal "-0x4778")) () ")")))) (; ";")) (if_statement "if (iVar8 == 0) {\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac) = 0;\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0) = 1;\n                      pcVar28 = pcStack_81e8;\n                      iVar2 = iVar24;\n                      goto LAB_0002e464;\n                    }" (if "if") (parenthesized_expression "(iVar8 == 0)" (( "(") (binary_expression "iVar8 == 0" (identifier "iVar8") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac) = 0;\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0) = 1;\n                      pcVar28 = pcStack_81e8;\n                      iVar2 = iVar24;\n                      goto LAB_0002e464;\n                    }" ({ "{") (expression_statement "*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac) = 0;" (assignment_expression "*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac) = 0" (pointer_expression "*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac)" (* "*") (cast_expression "(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac)" (( "(") (binary_expression "*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fd8)" (* "*") (cast_expression "(int *)(pcStack_81e8 + -0x7fd8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcStack_81e8 + -0x7fd8)" (( "(") (binary_expression "pcStack_81e8 + -0x7fd8" (identifier "pcStack_81e8") (+ "+") (number_literal "-0x7fd8")) () ")")))) (+ "+") (number_literal "-0x3fac")) () ")")))) (= "=") (number_literal "0")) (; ";")) (expression_statement "*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0) = 1;" (assignment_expression "*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0) = 1" (pointer_expression "*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0)" (* "*") (cast_expression "(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0)" (( "(") (binary_expression "*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fd8)" (* "*") (cast_expression "(int *)(pcStack_81e8 + -0x7fd8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcStack_81e8 + -0x7fd8)" (( "(") (binary_expression "pcStack_81e8 + -0x7fd8" (identifier "pcStack_81e8") (+ "+") (number_literal "-0x7fd8")) () ")")))) (+ "+") (number_literal "-0x3fb0")) () ")")))) (= "=") (number_literal "1")) (; ";")) (expression_statement "pcVar28 = pcStack_81e8;" (assignment_expression "pcVar28 = pcStack_81e8" (identifier "pcVar28") (= "=") (identifier "pcStack_81e8")) (; ";")) (expression_statement "iVar2 = iVar24;" (assignment_expression "iVar2 = iVar24" (identifier "iVar2") (= "=") (identifier "iVar24")) (; ";")) (goto_statement "goto LAB_0002e464;" (goto "goto") (statement_identifier "LAB_0002e464") (; ";")) (} "}"))) (expression_statement "iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                      (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4770);" (assignment_expression "iVar8 = (**(code **)(pcStack_81e8 + -0x743c))\n                                      (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4770)" (identifier "iVar8") (= "=") (call_expression "(**(code **)(pcStack_81e8 + -0x743c))\n                                      (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4770)" (parenthesized_expression "(**(code **)(pcStack_81e8 + -0x743c))" (( "(") (pointer_expression "**(code **)(pcStack_81e8 + -0x743c)" (* "*") (pointer_expression "*(code **)(pcStack_81e8 + -0x743c)" (* "*") (cast_expression "(code **)(pcStack_81e8 + -0x743c)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_81e8 + -0x743c)" (( "(") (binary_expression "pcStack_81e8 + -0x743c" (identifier "pcStack_81e8") (+ "+") (number_literal "-0x743c")) () ")"))))) () ")")) (argument_list "(iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4770)" (( "(") (identifier "iVar20") (, ",") (binary_expression "*(int *)(pcStack_81e8 + -0x7fc8) + -0x4770" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fc8)" (* "*") (cast_expression "(int *)(pcStack_81e8 + -0x7fc8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcStack_81e8 + -0x7fc8)" (( "(") (binary_expression "pcStack_81e8 + -0x7fc8" (identifier "pcStack_81e8") (+ "+") (number_literal "-0x7fc8")) () ")")))) (+ "+") (number_literal "-0x4770")) () ")")))) (; ";")) (if_statement "if (iVar8 == 0) {\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac) = 1;\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0) = 0;\n                      pcVar28 = pcStack_81e8;\n                      iVar2 = iVar24;\n                    }\n                    else {\n                      iVar24 = (**(code **)(pcStack_81e8 + -0x743c))\n                                         (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4768);\n                      pcVar28 = pcStack_81e8;\n                      if (iVar24 == 0) goto LAB_0002e52c;\n                      cmdline_error(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4764,iVar20);\n                    }" (if "if") (parenthesized_expression "(iVar8 == 0)" (( "(") (binary_expression "iVar8 == 0" (identifier "iVar8") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac) = 1;\n                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0) = 0;\n                      pcVar28 = pcStack_81e8;\n                      iVar2 = iVar24;\n                    }" ({ "{") (expression_statement "*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac) = 1;" (assignment_expression "*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac) = 1" (pointer_expression "*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac)" (* "*") (cast_expression "(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac)" (( "(") (binary_expression "*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fd8)" (* "*") (cast_expression "(int *)(pcStack_81e8 + -0x7fd8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcStack_81e8 + -0x7fd8)" (( "(") (binary_expression "pcStack_81e8 + -0x7fd8" (identifier "pcStack_81e8") (+ "+") (number_literal "-0x7fd8")) () ")")))) (+ "+") (number_literal "-0x3fac")) () ")")))) (= "=") (number_literal "1")) (; ";")) (expression_statement "*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0) = 0;" (assignment_expression "*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0) = 0" (pointer_expression "*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0)" (* "*") (cast_expression "(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0)" (( "(") (binary_expression "*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fd8)" (* "*") (cast_expression "(int *)(pcStack_81e8 + -0x7fd8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcStack_81e8 + -0x7fd8)" (( "(") (binary_expression "pcStack_81e8 + -0x7fd8" (identifier "pcStack_81e8") (+ "+") (number_literal "-0x7fd8")) () ")")))) (+ "+") (number_literal "-0x3fb0")) () ")")))) (= "=") (number_literal "0")) (; ";")) (expression_statement "pcVar28 = pcStack_81e8;" (assignment_expression "pcVar28 = pcStack_81e8" (identifier "pcVar28") (= "=") (identifier "pcStack_81e8")) (; ";")) (expression_statement "iVar2 = iVar24;" (assignment_expression "iVar2 = iVar24" (identifier "iVar2") (= "=") (identifier "iVar24")) (; ";")) (} "}")) (else_clause "else {\n                      iVar24 = (**(code **)(pcStack_81e8 + -0x743c))\n                                         (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4768);\n                      pcVar28 = pcStack_81e8;\n                      if (iVar24 == 0) goto LAB_0002e52c;\n                      cmdline_error(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4764,iVar20);\n                    }" (else "else") (compound_statement "{\n                      iVar24 = (**(code **)(pcStack_81e8 + -0x743c))\n                                         (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4768);\n                      pcVar28 = pcStack_81e8;\n                      if (iVar24 == 0) goto LAB_0002e52c;\n                      cmdline_error(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4764,iVar20);\n                    }" ({ "{") (expression_statement "iVar24 = (**(code **)(pcStack_81e8 + -0x743c))\n                                         (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4768);" (assignment_expression "iVar24 = (**(code **)(pcStack_81e8 + -0x743c))\n                                         (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4768)" (identifier "iVar24") (= "=") (call_expression "(**(code **)(pcStack_81e8 + -0x743c))\n                                         (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4768)" (parenthesized_expression "(**(code **)(pcStack_81e8 + -0x743c))" (( "(") (pointer_expression "**(code **)(pcStack_81e8 + -0x743c)" (* "*") (pointer_expression "*(code **)(pcStack_81e8 + -0x743c)" (* "*") (cast_expression "(code **)(pcStack_81e8 + -0x743c)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_81e8 + -0x743c)" (( "(") (binary_expression "pcStack_81e8 + -0x743c" (identifier "pcStack_81e8") (+ "+") (number_literal "-0x743c")) () ")"))))) () ")")) (argument_list "(iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4768)" (( "(") (identifier "iVar20") (, ",") (binary_expression "*(int *)(pcStack_81e8 + -0x7fc8) + -0x4768" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fc8)" (* "*") (cast_expression "(int *)(pcStack_81e8 + -0x7fc8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcStack_81e8 + -0x7fc8)" (( "(") (binary_expression "pcStack_81e8 + -0x7fc8" (identifier "pcStack_81e8") (+ "+") (number_literal "-0x7fc8")) () ")")))) (+ "+") (number_literal "-0x4768")) () ")")))) (; ";")) (expression_statement "pcVar28 = pcStack_81e8;" (assignment_expression "pcVar28 = pcStack_81e8" (identifier "pcVar28") (= "=") (identifier "pcStack_81e8")) (; ";")) (if_statement "if (iVar24 == 0) goto LAB_0002e52c;" (if "if") (parenthesized_expression "(iVar24 == 0)" (( "(") (binary_expression "iVar24 == 0" (identifier "iVar24") (== "==") (number_literal "0")) () ")")) (goto_statement "goto LAB_0002e52c;" (goto "goto") (statement_identifier "LAB_0002e52c") (; ";"))) (expression_statement "cmdline_error(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4764,iVar20);" (call_expression "cmdline_error(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4764,iVar20)" (identifier "cmdline_error") (argument_list "(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4764,iVar20)" (( "(") (binary_expression "*(int *)(pcStack_81e8 + -0x7fc8) + -0x4764" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fc8)" (* "*") (cast_expression "(int *)(pcStack_81e8 + -0x7fc8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcStack_81e8 + -0x7fc8)" (( "(") (binary_expression "pcStack_81e8 + -0x7fc8" (identifier "pcStack_81e8") (+ "+") (number_literal "-0x7fc8")) () ")")))) (+ "+") (number_literal "-0x4764")) (, ",") (identifier "iVar20") () ")"))) (; ";")) (} "}")))) (} "}")))) (} "}")))) (goto_statement "goto LAB_0002e464;" (goto "goto") (statement_identifier "LAB_0002e464") (; ";")) (} "}"))) (} "}"))) (expression_statement "(*pcStack_81dc)();" (call_expression "(*pcStack_81dc)()" (parenthesized_expression "(*pcStack_81dc)" (( "(") (pointer_expression "*pcStack_81dc" (* "*") (identifier "pcStack_81dc")) () ")")) (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "pcVar28 = pcStack_81e8;" (assignment_expression "pcVar28 = pcStack_81e8" (identifier "pcVar28") (= "=") (identifier "pcStack_81e8")) (; ";")) (expression_statement "iVar2 = iVar24;" (assignment_expression "iVar2 = iVar24" (identifier "iVar2") (= "=") (identifier "iVar24")) (; ";")) (} "}")))) (} "}")))) (} "}")))) (labeled_statement "LAB_0002e464:\n      iVar2 = iVar2 + 1;" (statement_identifier "LAB_0002e464") (: ":") (expression_statement "iVar2 = iVar2 + 1;" (assignment_expression "iVar2 = iVar2 + 1" (identifier "iVar2") (= "=") (binary_expression "iVar2 + 1" (identifier "iVar2") (+ "+") (number_literal "1"))) (; ";"))) (if_statement "if (iVar4 <= iVar2) goto LAB_0002e52c;" (if "if") (parenthesized_expression "(iVar4 <= iVar2)" (( "(") (binary_expression "iVar4 <= iVar2" (identifier "iVar4") (<= "<=") (identifier "iVar2")) () ")")) (goto_statement "goto LAB_0002e52c;" (goto "goto") (statement_identifier "LAB_0002e52c") (; ";"))) (expression_statement "piVar19 = (int *)(iVar15 + iVar2 * 4);" (assignment_expression "piVar19 = (int *)(iVar15 + iVar2 * 4)" (identifier "piVar19") (= "=") (cast_expression "(int *)(iVar15 + iVar2 * 4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar15 + iVar2 * 4)" (( "(") (binary_expression "iVar15 + iVar2 * 4" (identifier "iVar15") (+ "+") (binary_expression "iVar2 * 4" (identifier "iVar2") (* "*") (number_literal "4"))) () ")")))) (; ";")) (expression_statement "pcVar13 = (char *)*piVar19;" (assignment_expression "pcVar13 = (char *)*piVar19" (identifier "pcVar13") (= "=") (cast_expression "(char *)*piVar19" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (pointer_expression "*piVar19" (* "*") (identifier "piVar19")))) (; ";")) (expression_statement "iVar24 = iVar2;" (assignment_expression "iVar24 = iVar2" (identifier "iVar24") (= "=") (identifier "iVar2")) (; ";")) (if_statement "if (*pcVar13 != '-') goto LAB_0002e52c;" (if "if") (parenthesized_expression "(*pcVar13 != '-')" (( "(") (binary_expression "*pcVar13 != '-'" (pointer_expression "*pcVar13" (* "*") (identifier "pcVar13")) (!= "!=") (char_literal "'-'" (' "'") (character "-") (' "'"))) () ")")) (goto_statement "goto LAB_0002e52c;" (goto "goto") (statement_identifier "LAB_0002e52c") (; ";"))) (goto_statement "goto LAB_0002e488;" (goto "goto") (statement_identifier "LAB_0002e488") (; ";")) (} "}"))) (expression_statement "iVar2 = 1;" (assignment_expression "iVar2 = 1" (identifier "iVar2") (= "=") (number_literal "1")) (; ";")) (} "}")))) (labeled_statement "LAB_0002e52c:\n  iVar4 = iVar4 - iVar2;" (statement_identifier "LAB_0002e52c") (: ":") (expression_statement "iVar4 = iVar4 - iVar2;" (assignment_expression "iVar4 = iVar4 - iVar2" (identifier "iVar4") (= "=") (binary_expression "iVar4 - iVar2" (identifier "iVar4") (- "-") (identifier "iVar2"))) (; ";"))) (expression_statement "*(undefined4 *)(*(int *)(pcVar28 + -0x7fd8) + -0x31f4) = 0;" (assignment_expression "*(undefined4 *)(*(int *)(pcVar28 + -0x7fd8) + -0x31f4) = 0" (pointer_expression "*(undefined4 *)(*(int *)(pcVar28 + -0x7fd8) + -0x31f4)" (* "*") (cast_expression "(undefined4 *)(*(int *)(pcVar28 + -0x7fd8) + -0x31f4)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcVar28 + -0x7fd8) + -0x31f4)" (( "(") (binary_expression "*(int *)(pcVar28 + -0x7fd8) + -0x31f4" (pointer_expression "*(int *)(pcVar28 + -0x7fd8)" (* "*") (cast_expression "(int *)(pcVar28 + -0x7fd8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar28 + -0x7fd8)" (( "(") (binary_expression "pcVar28 + -0x7fd8" (identifier "pcVar28") (+ "+") (number_literal "-0x7fd8")) () ")")))) (+ "+") (number_literal "-0x31f4")) () ")")))) (= "=") (number_literal "0")) (; ";")) (expression_statement "puVar23 = (undefined4 *)(iVar15 + iVar2 * 4);" (assignment_expression "puVar23 = (undefined4 *)(iVar15 + iVar2 * 4)" (identifier "puVar23") (= "=") (cast_expression "(undefined4 *)(iVar15 + iVar2 * 4)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar15 + iVar2 * 4)" (( "(") (binary_expression "iVar15 + iVar2 * 4" (identifier "iVar15") (+ "+") (binary_expression "iVar2 * 4" (identifier "iVar2") (* "*") (number_literal "4"))) () ")")))) (; ";")) (if_statement "if (*(int *)(*(int *)(pcVar28 + -0x7fd8) + -0x31c4) == 0) {\n    if (iVar4 < 2) {\n      FUN_0002861c();\n      puVar18 = puVar23 + iVar4 + 0x3fffffff;\n      iVar24 = FUN_00028968(*puVar18);\n      iVar2 = *(int *)(pcStack_81e8 + -0x7fd8);\n      if (iVar24 != 0) goto LAB_0002e90c;\n      *(undefined4 *)(iVar2 + -0x31f0) = 0;\nLAB_0002efd8:\n      iVar2 = *(int *)(pcStack_81e8 + -0x7fc8);\nLAB_0002efdc:\n      FUN_00028270(iVar2 + -0x4668);\n      pcVar13 = (char *)*puVar23;\nLAB_0002eb34:\n      uVar7 = puVar23[1];\n      puVar9 = (undefined1 *)FUN_00028968(pcVar13);\n      if (puVar9 == (undefined1 *)0x0) {\n        FUN_00028270(*(int *)(pcStack_81e8 + -0x7fc8) + -0x463c);\n        uRam00000000 = 0;\n      }\n      else {\n        *puVar9 = 0;\n      }\n      if (puVar9[1] == '\0') {\n        pcVar27 = (char *)(*(int *)(pcStack_81e8 + -0x7fc8) + -0x48b0);\n      }\n      else {\n        pcVar27 = puVar9 + 1;\n      }\n      puVar9 = (undefined1 *)(**(code **)(pcStack_81e8 + -0x75b8))(pcVar13,0x40);\n      if (puVar9 == (undefined1 *)0x0) {\n        pcVar21 = (char *)0x0;\n      }\n      else {\n        *puVar9 = 0;\n        cVar11 = *pcVar13;\n        pcVar21 = pcVar13;\n        pcVar13 = puVar9 + 1;\n        if (cVar11 == '\0') {\n          pcVar21 = (char *)0x0;\n        }\n      }\n      if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31c8) == 0) {\n        iVar2 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iVar2 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47f4;\n      }\n      if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31cc) == 0) {\n        iVar24 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iVar24 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47f0;\n      }\n      if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d0) == 0) {\n        iVar4 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iVar4 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47ec;\n      }\n      if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4) == 0) {\n        iStack_81f0 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iStack_81f0 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47e8;\n      }\n      pcStack_81ec = pcVar27;\n      uVar6 = dupprintf(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4618,iVar2,iVar24,iVar4);\n      FUN_00028a00(pcVar13,pcVar21,uVar6);\n      safefree(uVar6);\n      iVar2 = scp_sink_setup(pcVar27,*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d0),\n                             *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31cc));\n      if (iVar2 == 0) {\n        FUN_0002d4e0(uVar7);\n        iVar2 = *(int *)(pcStack_81e8 + -0x7fd8);\n        goto LAB_0002e788;\n      }\n    }\n    else {\n      if (iVar4 < 3) {\n        puVar18 = puVar23 + iVar4 + 0x3fffffff;\n        iVar2 = FUN_00028968(*puVar18);\n        if (iVar2 == 0) {\n          *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f0) = 0;\n          iVar2 = *(int *)(pcStack_81e8 + -0x7fc8);\n          if (iVar4 != 2) goto LAB_0002efdc;\n          pcVar13 = (char *)*puVar23;\n          goto LAB_0002eb34;\n        }\n      }\n      else {\n        *(undefined4 *)(*(int *)(pcVar28 + -0x7fd8) + -0x31d4) = 1;\n        puVar18 = puVar23 + iVar4 + 0x3fffffff;\n        iVar2 = FUN_00028968(*puVar18);\n        if (iVar2 == 0) {\n          *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f0) = 0;\n          goto LAB_0002efd8;\n        }\n      }\n      iVar2 = *(int *)(pcStack_81e8 + -0x7fd8);\nLAB_0002e90c:\n      *(undefined4 *)(iVar2 + -0x31f0) = 1;\n      pcVar13 = (char *)*puVar18;\n      puVar9 = (undefined1 *)FUN_00028968(pcVar13);\n      if (puVar9 == (undefined1 *)0x0) {\n        FUN_00028270(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4720);\n        uRam00000000 = 0;\n      }\n      else {\n        *puVar9 = 0;\n      }\n      if (puVar9[1] == '\0') {\n        pcVar21 = (char *)(*(int *)(pcStack_81e8 + -0x7fc8) + -0x48b0);\n      }\n      else {\n        pcVar21 = puVar9 + 1;\n      }\n      puVar9 = (undefined1 *)(**(code **)(pcStack_81e8 + -0x75b8))(pcVar13,0x40);\n      if (puVar9 == (undefined1 *)0x0) {\n        pcVar27 = (char *)0x0;\n      }\n      else {\n        *puVar9 = 0;\n        cVar11 = *pcVar13;\n        pcVar27 = pcVar13;\n        pcVar13 = puVar9 + 1;\n        if (cVar11 == '\0') {\n          pcVar27 = (char *)0x0;\n        }\n      }\n      if (iVar4 == 2) {\n        iVar2 = FUN_00028968(*puVar23);\n        if (iVar2 != 0) {\n          FUN_00028270(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4704,*puVar23);\n        }\n        iVar2 = (**(code **)(pcStack_81e8 + -0x7c30))(*puVar23,1);\n        if (iVar2 == 0) {\n          FUN_00028270(*(int *)(pcStack_81e8 + -0x7fc8) + -0x46e0,*puVar23);\n          iVar24 = *(int *)(pcStack_81e8 + -0x7fd8);\n        }\n        else {\n          iVar24 = *(int *)(pcStack_81e8 + -0x7fd8);\n          if (iVar2 == 2) {\n            *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4) = 1;\n            goto LAB_0002e988;\n          }\n        }\n      }\n      else {\nLAB_0002e988:\n        iVar24 = *(int *)(pcStack_81e8 + -0x7fd8);\n      }\n      if (*(int *)(iVar24 + -0x31c8) == 0) {\n        iVar2 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iVar2 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47f4;\n      }\n      if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31cc) == 0) {\n        iVar24 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iVar24 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47f0;\n      }\n      if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d0) == 0) {\n        iVar15 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iVar15 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47ec;\n      }\n      if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4) == 0) {\n        iStack_81f0 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iStack_81f0 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47e8;\n      }\n      pcStack_81ec = pcVar21;\n      uVar7 = dupprintf(*(int *)(pcStack_81e8 + -0x7fc8) + -0x46c0,iVar2,iVar24,iVar15);\n      FUN_00028a00(pcVar13,pcVar27,uVar7);\n      safefree(uVar7);\n      pcVar27 = *(char **)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4);\n      iVar2 = scp_source_setup(pcVar21);\n      if ((iVar2 == 0) && (1 < iVar4)) {\n        puVar18 = puVar23 + iVar4 + -1;\n        iVar24 = *(int *)(pcStack_81e8 + -0x7db0);\n        iVar25 = *(int *)(pcStack_81e8 + -0x7fc8);\n        iVar15 = *(int *)(pcStack_81e8 + -0x7db0);\n        iVar4 = *(int *)(pcStack_81e8 + -0x7fc8);\n        do {\n          pcVar13 = (char *)*puVar23;\n          iVar2 = FUN_00028968(pcVar13);\n          if (iVar2 == 0) {\n            pcVar27 = (char *)0x1;\n            iVar2 = (**(code **)(pcStack_81e8 + -0x7c30))(pcVar13,1,pcVar13);\n            if (iVar2 == 0) {\n              (*(code *)(iVar15 + -0x59a8))(iVar25 + -0x4688);\n              pcVar27 = pcVar13;\n            }\n            else if (iVar2 == 1) {\n              (*(code *)(iVar24 + -0x4b8c))(pcVar13);\n            }\n            else {\n              iVar2 = (**(code **)(pcStack_81e8 + -0x7c2c))();\n              if (iVar2 == 0) {\n                (*(code *)(iVar15 + -0x59a8))(iVar25 + -0x4688);\n                pcVar27 = pcVar13;\n              }\n              else {\n                while (iVar26 = (**(code **)(pcStack_81e8 + -0x7c28))(iVar2), iVar26 != 0) {\n                  (*(code *)(iVar24 + -0x4b8c))(iVar26);\n                  safefree(iVar26);\n                }\n                (**(code **)(pcStack_81e8 + -0x7c24))(iVar2);\n              }\n            }\n          }\n          else {\n            pcVar27 = (char *)(iVar4 + -0x46ac);\n            FUN_00027ff8(**(undefined4 **)(pcStack_81e8 + -0x7460));\n            *(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31e0) =\n                 *(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31e0) + 1;\n          }\n          puVar23 = puVar23 + 1;\n          iVar2 = *(int *)(pcStack_81e8 + -0x7fd8);\n        } while (puVar18 != puVar23);\n        goto LAB_0002e788;\n      }\n    }\n  }\n  else {\n    if (iVar4 == 1) {\n      pcVar13 = (char *)*puVar23;\n    }\n    else {\n      FUN_0002861c();\n      pcVar13 = (char *)*puVar23;\n    }\n    puVar9 = (undefined1 *)FUN_00028968(pcVar13);\n    if (puVar9 == (undefined1 *)0x0) {\n      FUN_00028270(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4750);\n      uRam00000000 = 0;\n    }\n    else {\n      *puVar9 = 0;\n    }\n    if (puVar9[1] == '\0') {\n      puVar9 = (undefined1 *)(**(code **)(pcStack_81e8 + -0x75b8))(pcVar13,0x40);\n      if (puVar9 == (undefined1 *)0x0) {\n        puVar23 = (undefined4 *)safemalloc(0x68,1);\n        iVar2 = *(int *)(pcStack_81e8 + -0x7fc8);\n        uVar7 = *(undefined4 *)(iVar2 + -0x4728);\n        *puVar23 = *(undefined4 *)(iVar2 + -0x472c);\n        puVar23[1] = uVar7;\n        *(undefined1 *)(puVar23 + 2) = *(undefined1 *)(iVar2 + -0x4724);\n        iVar2 = (**(code **)(pcStack_81e8 + -0x752c))(puVar23);\n        pcVar10 = (char *)((int)puVar23 + iVar2);\n        pcVar21 = (char *)(*(int *)(pcStack_81e8 + -0x7fc8) + -0x48b0);\n        cVar11 = '.';\n        pcVar27 = (char *)0x0;\n        pcVar22 = pcVar21;\n        goto LAB_0002e6b4;\n      }\n      pcVar21 = (char *)(*(int *)(pcStack_81e8 + -0x7fc8) + -0x48b0);\nLAB_0002e5ac:\n      *puVar9 = 0;\n      cVar11 = *pcVar13;\n      pcVar27 = pcVar13;\n      pcVar13 = puVar9 + 1;\n      if (cVar11 == '\0') {\n        pcVar27 = (char *)0x0;\n      }\n    }\n    else {\n      pcVar21 = puVar9 + 1;\n      puVar9 = (undefined1 *)(**(code **)(pcStack_81e8 + -0x75b8))(pcVar13);\n      if (puVar9 != (undefined1 *)0x0) goto LAB_0002e5ac;\n      pcVar27 = (char *)0x0;\n    }\n    iVar2 = (**(code **)(pcStack_81e8 + -0x752c))(pcVar21);\n    puVar23 = (undefined4 *)safemalloc((iVar2 + 0x19) * 4,1);\n    iVar2 = *(int *)(pcStack_81e8 + -0x7fc8);\n    uVar7 = *(undefined4 *)(iVar2 + -0x4728);\n    *puVar23 = *(undefined4 *)(iVar2 + -0x472c);\n    puVar23[1] = uVar7;\n    *(undefined1 *)(puVar23 + 2) = *(undefined1 *)(iVar2 + -0x4724);\n    iVar2 = (**(code **)(pcStack_81e8 + -0x752c))(puVar23);\n    pcVar10 = (char *)((int)puVar23 + iVar2);\n    cVar11 = *pcVar21;\n    pcVar22 = pcVar21;\n    while (cVar11 != '\0') {\nLAB_0002e6b4:\n      if (cVar11 == '\'') {\n        builtin_strncpy(pcVar10,"\'\\\'\'",4);\n        pcVar10 = pcVar10 + 4;\n      }\n      else {\n        *pcVar10 = cVar11;\n        pcVar10 = pcVar10 + 1;\n      }\n      pcVar21 = pcVar21 + 1;\n      cVar11 = *pcVar21;\n    }\n    *pcVar10 = '\'';\n    pcVar10[1] = '\0';\n    FUN_00028a00(pcVar13,pcVar27,puVar23);\n    safefree(puVar23);\n    if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31ec) != 0) {\n      scp_sftp_listdir(pcVar22);\n      iVar2 = *(int *)(pcStack_81e8 + -0x7fd8);\n      goto LAB_0002e788;\n    }\n    puVar23 = *(undefined4 **)(pcStack_81e8 + -0x7594);\n    while( true ) {\n      pcVar27 = (char *)0x1;\n      iVar2 = FUN_000280f4(&cStack_81d5);\n      if (iVar2 < 1) break;\n      (**(code **)(pcStack_81e8 + -0x75c4))((int)cStack_81d5,*puVar23);\n    }\n  }" (if "if") (parenthesized_expression "(*(int *)(*(int *)(pcVar28 + -0x7fd8) + -0x31c4) == 0)" (( "(") (binary_expression "*(int *)(*(int *)(pcVar28 + -0x7fd8) + -0x31c4) == 0" (pointer_expression "*(int *)(*(int *)(pcVar28 + -0x7fd8) + -0x31c4)" (* "*") (cast_expression "(int *)(*(int *)(pcVar28 + -0x7fd8) + -0x31c4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcVar28 + -0x7fd8) + -0x31c4)" (( "(") (binary_expression "*(int *)(pcVar28 + -0x7fd8) + -0x31c4" (pointer_expression "*(int *)(pcVar28 + -0x7fd8)" (* "*") (cast_expression "(int *)(pcVar28 + -0x7fd8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar28 + -0x7fd8)" (( "(") (binary_expression "pcVar28 + -0x7fd8" (identifier "pcVar28") (+ "+") (number_literal "-0x7fd8")) () ")")))) (+ "+") (number_literal "-0x31c4")) () ")")))) (== "==") (number_literal "0")) () ")")) (compound_statement "{\n    if (iVar4 < 2) {\n      FUN_0002861c();\n      puVar18 = puVar23 + iVar4 + 0x3fffffff;\n      iVar24 = FUN_00028968(*puVar18);\n      iVar2 = *(int *)(pcStack_81e8 + -0x7fd8);\n      if (iVar24 != 0) goto LAB_0002e90c;\n      *(undefined4 *)(iVar2 + -0x31f0) = 0;\nLAB_0002efd8:\n      iVar2 = *(int *)(pcStack_81e8 + -0x7fc8);\nLAB_0002efdc:\n      FUN_00028270(iVar2 + -0x4668);\n      pcVar13 = (char *)*puVar23;\nLAB_0002eb34:\n      uVar7 = puVar23[1];\n      puVar9 = (undefined1 *)FUN_00028968(pcVar13);\n      if (puVar9 == (undefined1 *)0x0) {\n        FUN_00028270(*(int *)(pcStack_81e8 + -0x7fc8) + -0x463c);\n        uRam00000000 = 0;\n      }\n      else {\n        *puVar9 = 0;\n      }\n      if (puVar9[1] == '\0') {\n        pcVar27 = (char *)(*(int *)(pcStack_81e8 + -0x7fc8) + -0x48b0);\n      }\n      else {\n        pcVar27 = puVar9 + 1;\n      }\n      puVar9 = (undefined1 *)(**(code **)(pcStack_81e8 + -0x75b8))(pcVar13,0x40);\n      if (puVar9 == (undefined1 *)0x0) {\n        pcVar21 = (char *)0x0;\n      }\n      else {\n        *puVar9 = 0;\n        cVar11 = *pcVar13;\n        pcVar21 = pcVar13;\n        pcVar13 = puVar9 + 1;\n        if (cVar11 == '\0') {\n          pcVar21 = (char *)0x0;\n        }\n      }\n      if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31c8) == 0) {\n        iVar2 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iVar2 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47f4;\n      }\n      if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31cc) == 0) {\n        iVar24 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iVar24 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47f0;\n      }\n      if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d0) == 0) {\n        iVar4 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iVar4 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47ec;\n      }\n      if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4) == 0) {\n        iStack_81f0 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iStack_81f0 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47e8;\n      }\n      pcStack_81ec = pcVar27;\n      uVar6 = dupprintf(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4618,iVar2,iVar24,iVar4);\n      FUN_00028a00(pcVar13,pcVar21,uVar6);\n      safefree(uVar6);\n      iVar2 = scp_sink_setup(pcVar27,*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d0),\n                             *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31cc));\n      if (iVar2 == 0) {\n        FUN_0002d4e0(uVar7);\n        iVar2 = *(int *)(pcStack_81e8 + -0x7fd8);\n        goto LAB_0002e788;\n      }\n    }\n    else {\n      if (iVar4 < 3) {\n        puVar18 = puVar23 + iVar4 + 0x3fffffff;\n        iVar2 = FUN_00028968(*puVar18);\n        if (iVar2 == 0) {\n          *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f0) = 0;\n          iVar2 = *(int *)(pcStack_81e8 + -0x7fc8);\n          if (iVar4 != 2) goto LAB_0002efdc;\n          pcVar13 = (char *)*puVar23;\n          goto LAB_0002eb34;\n        }\n      }\n      else {\n        *(undefined4 *)(*(int *)(pcVar28 + -0x7fd8) + -0x31d4) = 1;\n        puVar18 = puVar23 + iVar4 + 0x3fffffff;\n        iVar2 = FUN_00028968(*puVar18);\n        if (iVar2 == 0) {\n          *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f0) = 0;\n          goto LAB_0002efd8;\n        }\n      }\n      iVar2 = *(int *)(pcStack_81e8 + -0x7fd8);\nLAB_0002e90c:\n      *(undefined4 *)(iVar2 + -0x31f0) = 1;\n      pcVar13 = (char *)*puVar18;\n      puVar9 = (undefined1 *)FUN_00028968(pcVar13);\n      if (puVar9 == (undefined1 *)0x0) {\n        FUN_00028270(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4720);\n        uRam00000000 = 0;\n      }\n      else {\n        *puVar9 = 0;\n      }\n      if (puVar9[1] == '\0') {\n        pcVar21 = (char *)(*(int *)(pcStack_81e8 + -0x7fc8) + -0x48b0);\n      }\n      else {\n        pcVar21 = puVar9 + 1;\n      }\n      puVar9 = (undefined1 *)(**(code **)(pcStack_81e8 + -0x75b8))(pcVar13,0x40);\n      if (puVar9 == (undefined1 *)0x0) {\n        pcVar27 = (char *)0x0;\n      }\n      else {\n        *puVar9 = 0;\n        cVar11 = *pcVar13;\n        pcVar27 = pcVar13;\n        pcVar13 = puVar9 + 1;\n        if (cVar11 == '\0') {\n          pcVar27 = (char *)0x0;\n        }\n      }\n      if (iVar4 == 2) {\n        iVar2 = FUN_00028968(*puVar23);\n        if (iVar2 != 0) {\n          FUN_00028270(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4704,*puVar23);\n        }\n        iVar2 = (**(code **)(pcStack_81e8 + -0x7c30))(*puVar23,1);\n        if (iVar2 == 0) {\n          FUN_00028270(*(int *)(pcStack_81e8 + -0x7fc8) + -0x46e0,*puVar23);\n          iVar24 = *(int *)(pcStack_81e8 + -0x7fd8);\n        }\n        else {\n          iVar24 = *(int *)(pcStack_81e8 + -0x7fd8);\n          if (iVar2 == 2) {\n            *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4) = 1;\n            goto LAB_0002e988;\n          }\n        }\n      }\n      else {\nLAB_0002e988:\n        iVar24 = *(int *)(pcStack_81e8 + -0x7fd8);\n      }\n      if (*(int *)(iVar24 + -0x31c8) == 0) {\n        iVar2 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iVar2 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47f4;\n      }\n      if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31cc) == 0) {\n        iVar24 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iVar24 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47f0;\n      }\n      if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d0) == 0) {\n        iVar15 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iVar15 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47ec;\n      }\n      if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4) == 0) {\n        iStack_81f0 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iStack_81f0 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47e8;\n      }\n      pcStack_81ec = pcVar21;\n      uVar7 = dupprintf(*(int *)(pcStack_81e8 + -0x7fc8) + -0x46c0,iVar2,iVar24,iVar15);\n      FUN_00028a00(pcVar13,pcVar27,uVar7);\n      safefree(uVar7);\n      pcVar27 = *(char **)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4);\n      iVar2 = scp_source_setup(pcVar21);\n      if ((iVar2 == 0) && (1 < iVar4)) {\n        puVar18 = puVar23 + iVar4 + -1;\n        iVar24 = *(int *)(pcStack_81e8 + -0x7db0);\n        iVar25 = *(int *)(pcStack_81e8 + -0x7fc8);\n        iVar15 = *(int *)(pcStack_81e8 + -0x7db0);\n        iVar4 = *(int *)(pcStack_81e8 + -0x7fc8);\n        do {\n          pcVar13 = (char *)*puVar23;\n          iVar2 = FUN_00028968(pcVar13);\n          if (iVar2 == 0) {\n            pcVar27 = (char *)0x1;\n            iVar2 = (**(code **)(pcStack_81e8 + -0x7c30))(pcVar13,1,pcVar13);\n            if (iVar2 == 0) {\n              (*(code *)(iVar15 + -0x59a8))(iVar25 + -0x4688);\n              pcVar27 = pcVar13;\n            }\n            else if (iVar2 == 1) {\n              (*(code *)(iVar24 + -0x4b8c))(pcVar13);\n            }\n            else {\n              iVar2 = (**(code **)(pcStack_81e8 + -0x7c2c))();\n              if (iVar2 == 0) {\n                (*(code *)(iVar15 + -0x59a8))(iVar25 + -0x4688);\n                pcVar27 = pcVar13;\n              }\n              else {\n                while (iVar26 = (**(code **)(pcStack_81e8 + -0x7c28))(iVar2), iVar26 != 0) {\n                  (*(code *)(iVar24 + -0x4b8c))(iVar26);\n                  safefree(iVar26);\n                }\n                (**(code **)(pcStack_81e8 + -0x7c24))(iVar2);\n              }\n            }\n          }\n          else {\n            pcVar27 = (char *)(iVar4 + -0x46ac);\n            FUN_00027ff8(**(undefined4 **)(pcStack_81e8 + -0x7460));\n            *(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31e0) =\n                 *(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31e0) + 1;\n          }\n          puVar23 = puVar23 + 1;\n          iVar2 = *(int *)(pcStack_81e8 + -0x7fd8);\n        } while (puVar18 != puVar23);\n        goto LAB_0002e788;\n      }\n    }\n  }" ({ "{") (if_statement "if (iVar4 < 2) {\n      FUN_0002861c();\n      puVar18 = puVar23 + iVar4 + 0x3fffffff;\n      iVar24 = FUN_00028968(*puVar18);\n      iVar2 = *(int *)(pcStack_81e8 + -0x7fd8);\n      if (iVar24 != 0) goto LAB_0002e90c;\n      *(undefined4 *)(iVar2 + -0x31f0) = 0;\nLAB_0002efd8:\n      iVar2 = *(int *)(pcStack_81e8 + -0x7fc8);\nLAB_0002efdc:\n      FUN_00028270(iVar2 + -0x4668);\n      pcVar13 = (char *)*puVar23;\nLAB_0002eb34:\n      uVar7 = puVar23[1];\n      puVar9 = (undefined1 *)FUN_00028968(pcVar13);\n      if (puVar9 == (undefined1 *)0x0) {\n        FUN_00028270(*(int *)(pcStack_81e8 + -0x7fc8) + -0x463c);\n        uRam00000000 = 0;\n      }\n      else {\n        *puVar9 = 0;\n      }\n      if (puVar9[1] == '\0') {\n        pcVar27 = (char *)(*(int *)(pcStack_81e8 + -0x7fc8) + -0x48b0);\n      }\n      else {\n        pcVar27 = puVar9 + 1;\n      }\n      puVar9 = (undefined1 *)(**(code **)(pcStack_81e8 + -0x75b8))(pcVar13,0x40);\n      if (puVar9 == (undefined1 *)0x0) {\n        pcVar21 = (char *)0x0;\n      }\n      else {\n        *puVar9 = 0;\n        cVar11 = *pcVar13;\n        pcVar21 = pcVar13;\n        pcVar13 = puVar9 + 1;\n        if (cVar11 == '\0') {\n          pcVar21 = (char *)0x0;\n        }\n      }\n      if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31c8) == 0) {\n        iVar2 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iVar2 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47f4;\n      }\n      if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31cc) == 0) {\n        iVar24 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iVar24 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47f0;\n      }\n      if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d0) == 0) {\n        iVar4 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iVar4 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47ec;\n      }\n      if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4) == 0) {\n        iStack_81f0 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iStack_81f0 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47e8;\n      }\n      pcStack_81ec = pcVar27;\n      uVar6 = dupprintf(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4618,iVar2,iVar24,iVar4);\n      FUN_00028a00(pcVar13,pcVar21,uVar6);\n      safefree(uVar6);\n      iVar2 = scp_sink_setup(pcVar27,*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d0),\n                             *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31cc));\n      if (iVar2 == 0) {\n        FUN_0002d4e0(uVar7);\n        iVar2 = *(int *)(pcStack_81e8 + -0x7fd8);\n        goto LAB_0002e788;\n      }\n    }\n    else {\n      if (iVar4 < 3) {\n        puVar18 = puVar23 + iVar4 + 0x3fffffff;\n        iVar2 = FUN_00028968(*puVar18);\n        if (iVar2 == 0) {\n          *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f0) = 0;\n          iVar2 = *(int *)(pcStack_81e8 + -0x7fc8);\n          if (iVar4 != 2) goto LAB_0002efdc;\n          pcVar13 = (char *)*puVar23;\n          goto LAB_0002eb34;\n        }\n      }\n      else {\n        *(undefined4 *)(*(int *)(pcVar28 + -0x7fd8) + -0x31d4) = 1;\n        puVar18 = puVar23 + iVar4 + 0x3fffffff;\n        iVar2 = FUN_00028968(*puVar18);\n        if (iVar2 == 0) {\n          *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f0) = 0;\n          goto LAB_0002efd8;\n        }\n      }\n      iVar2 = *(int *)(pcStack_81e8 + -0x7fd8);\nLAB_0002e90c:\n      *(undefined4 *)(iVar2 + -0x31f0) = 1;\n      pcVar13 = (char *)*puVar18;\n      puVar9 = (undefined1 *)FUN_00028968(pcVar13);\n      if (puVar9 == (undefined1 *)0x0) {\n        FUN_00028270(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4720);\n        uRam00000000 = 0;\n      }\n      else {\n        *puVar9 = 0;\n      }\n      if (puVar9[1] == '\0') {\n        pcVar21 = (char *)(*(int *)(pcStack_81e8 + -0x7fc8) + -0x48b0);\n      }\n      else {\n        pcVar21 = puVar9 + 1;\n      }\n      puVar9 = (undefined1 *)(**(code **)(pcStack_81e8 + -0x75b8))(pcVar13,0x40);\n      if (puVar9 == (undefined1 *)0x0) {\n        pcVar27 = (char *)0x0;\n      }\n      else {\n        *puVar9 = 0;\n        cVar11 = *pcVar13;\n        pcVar27 = pcVar13;\n        pcVar13 = puVar9 + 1;\n        if (cVar11 == '\0') {\n          pcVar27 = (char *)0x0;\n        }\n      }\n      if (iVar4 == 2) {\n        iVar2 = FUN_00028968(*puVar23);\n        if (iVar2 != 0) {\n          FUN_00028270(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4704,*puVar23);\n        }\n        iVar2 = (**(code **)(pcStack_81e8 + -0x7c30))(*puVar23,1);\n        if (iVar2 == 0) {\n          FUN_00028270(*(int *)(pcStack_81e8 + -0x7fc8) + -0x46e0,*puVar23);\n          iVar24 = *(int *)(pcStack_81e8 + -0x7fd8);\n        }\n        else {\n          iVar24 = *(int *)(pcStack_81e8 + -0x7fd8);\n          if (iVar2 == 2) {\n            *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4) = 1;\n            goto LAB_0002e988;\n          }\n        }\n      }\n      else {\nLAB_0002e988:\n        iVar24 = *(int *)(pcStack_81e8 + -0x7fd8);\n      }\n      if (*(int *)(iVar24 + -0x31c8) == 0) {\n        iVar2 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iVar2 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47f4;\n      }\n      if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31cc) == 0) {\n        iVar24 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iVar24 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47f0;\n      }\n      if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d0) == 0) {\n        iVar15 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iVar15 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47ec;\n      }\n      if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4) == 0) {\n        iStack_81f0 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iStack_81f0 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47e8;\n      }\n      pcStack_81ec = pcVar21;\n      uVar7 = dupprintf(*(int *)(pcStack_81e8 + -0x7fc8) + -0x46c0,iVar2,iVar24,iVar15);\n      FUN_00028a00(pcVar13,pcVar27,uVar7);\n      safefree(uVar7);\n      pcVar27 = *(char **)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4);\n      iVar2 = scp_source_setup(pcVar21);\n      if ((iVar2 == 0) && (1 < iVar4)) {\n        puVar18 = puVar23 + iVar4 + -1;\n        iVar24 = *(int *)(pcStack_81e8 + -0x7db0);\n        iVar25 = *(int *)(pcStack_81e8 + -0x7fc8);\n        iVar15 = *(int *)(pcStack_81e8 + -0x7db0);\n        iVar4 = *(int *)(pcStack_81e8 + -0x7fc8);\n        do {\n          pcVar13 = (char *)*puVar23;\n          iVar2 = FUN_00028968(pcVar13);\n          if (iVar2 == 0) {\n            pcVar27 = (char *)0x1;\n            iVar2 = (**(code **)(pcStack_81e8 + -0x7c30))(pcVar13,1,pcVar13);\n            if (iVar2 == 0) {\n              (*(code *)(iVar15 + -0x59a8))(iVar25 + -0x4688);\n              pcVar27 = pcVar13;\n            }\n            else if (iVar2 == 1) {\n              (*(code *)(iVar24 + -0x4b8c))(pcVar13);\n            }\n            else {\n              iVar2 = (**(code **)(pcStack_81e8 + -0x7c2c))();\n              if (iVar2 == 0) {\n                (*(code *)(iVar15 + -0x59a8))(iVar25 + -0x4688);\n                pcVar27 = pcVar13;\n              }\n              else {\n                while (iVar26 = (**(code **)(pcStack_81e8 + -0x7c28))(iVar2), iVar26 != 0) {\n                  (*(code *)(iVar24 + -0x4b8c))(iVar26);\n                  safefree(iVar26);\n                }\n                (**(code **)(pcStack_81e8 + -0x7c24))(iVar2);\n              }\n            }\n          }\n          else {\n            pcVar27 = (char *)(iVar4 + -0x46ac);\n            FUN_00027ff8(**(undefined4 **)(pcStack_81e8 + -0x7460));\n            *(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31e0) =\n                 *(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31e0) + 1;\n          }\n          puVar23 = puVar23 + 1;\n          iVar2 = *(int *)(pcStack_81e8 + -0x7fd8);\n        } while (puVar18 != puVar23);\n        goto LAB_0002e788;\n      }\n    }" (if "if") (parenthesized_expression "(iVar4 < 2)" (( "(") (binary_expression "iVar4 < 2" (identifier "iVar4") (< "<") (number_literal "2")) () ")")) (compound_statement "{\n      FUN_0002861c();\n      puVar18 = puVar23 + iVar4 + 0x3fffffff;\n      iVar24 = FUN_00028968(*puVar18);\n      iVar2 = *(int *)(pcStack_81e8 + -0x7fd8);\n      if (iVar24 != 0) goto LAB_0002e90c;\n      *(undefined4 *)(iVar2 + -0x31f0) = 0;\nLAB_0002efd8:\n      iVar2 = *(int *)(pcStack_81e8 + -0x7fc8);\nLAB_0002efdc:\n      FUN_00028270(iVar2 + -0x4668);\n      pcVar13 = (char *)*puVar23;\nLAB_0002eb34:\n      uVar7 = puVar23[1];\n      puVar9 = (undefined1 *)FUN_00028968(pcVar13);\n      if (puVar9 == (undefined1 *)0x0) {\n        FUN_00028270(*(int *)(pcStack_81e8 + -0x7fc8) + -0x463c);\n        uRam00000000 = 0;\n      }\n      else {\n        *puVar9 = 0;\n      }\n      if (puVar9[1] == '\0') {\n        pcVar27 = (char *)(*(int *)(pcStack_81e8 + -0x7fc8) + -0x48b0);\n      }\n      else {\n        pcVar27 = puVar9 + 1;\n      }\n      puVar9 = (undefined1 *)(**(code **)(pcStack_81e8 + -0x75b8))(pcVar13,0x40);\n      if (puVar9 == (undefined1 *)0x0) {\n        pcVar21 = (char *)0x0;\n      }\n      else {\n        *puVar9 = 0;\n        cVar11 = *pcVar13;\n        pcVar21 = pcVar13;\n        pcVar13 = puVar9 + 1;\n        if (cVar11 == '\0') {\n          pcVar21 = (char *)0x0;\n        }\n      }\n      if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31c8) == 0) {\n        iVar2 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iVar2 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47f4;\n      }\n      if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31cc) == 0) {\n        iVar24 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iVar24 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47f0;\n      }\n      if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d0) == 0) {\n        iVar4 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iVar4 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47ec;\n      }\n      if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4) == 0) {\n        iStack_81f0 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iStack_81f0 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47e8;\n      }\n      pcStack_81ec = pcVar27;\n      uVar6 = dupprintf(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4618,iVar2,iVar24,iVar4);\n      FUN_00028a00(pcVar13,pcVar21,uVar6);\n      safefree(uVar6);\n      iVar2 = scp_sink_setup(pcVar27,*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d0),\n                             *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31cc));\n      if (iVar2 == 0) {\n        FUN_0002d4e0(uVar7);\n        iVar2 = *(int *)(pcStack_81e8 + -0x7fd8);\n        goto LAB_0002e788;\n      }\n    }" ({ "{") (expression_statement "FUN_0002861c();" (call_expression "FUN_0002861c()" (identifier "FUN_0002861c") (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "puVar18 = puVar23 + iVar4 + 0x3fffffff;" (assignment_expression "puVar18 = puVar23 + iVar4 + 0x3fffffff" (identifier "puVar18") (= "=") (binary_expression "puVar23 + iVar4 + 0x3fffffff" (binary_expression "puVar23 + iVar4" (identifier "puVar23") (+ "+") (identifier "iVar4")) (+ "+") (number_literal "0x3fffffff"))) (; ";")) (expression_statement "iVar24 = FUN_00028968(*puVar18);" (assignment_expression "iVar24 = FUN_00028968(*puVar18)" (identifier "iVar24") (= "=") (call_expression "FUN_00028968(*puVar18)" (identifier "FUN_00028968") (argument_list "(*puVar18)" (( "(") (pointer_expression "*puVar18" (* "*") (identifier "puVar18")) () ")")))) (; ";")) (expression_statement "iVar2 = *(int *)(pcStack_81e8 + -0x7fd8);" (assignment_expression "iVar2 = *(int *)(pcStack_81e8 + -0x7fd8)" (identifier "iVar2") (= "=") (pointer_expression "*(int *)(pcStack_81e8 + -0x7fd8)" (* "*") (cast_expression "(int *)(pcStack_81e8 + -0x7fd8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcStack_81e8 + -0x7fd8)" (( "(") (binary_expression "pcStack_81e8 + -0x7fd8" (identifier "pcStack_81e8") (+ "+") (number_literal "-0x7fd8")) () ")"))))) (; ";")) (if_statement "if (iVar24 != 0) goto LAB_0002e90c;" (if "if") (parenthesized_expression "(iVar24 != 0)" (( "(") (binary_expression "iVar24 != 0" (identifier "iVar24") (!= "!=") (number_literal "0")) () ")")) (goto_statement "goto LAB_0002e90c;" (goto "goto") (statement_identifier "LAB_0002e90c") (; ";"))) (expression_statement "*(undefined4 *)(iVar2 + -0x31f0) = 0;" (assignment_expression "*(undefined4 *)(iVar2 + -0x31f0) = 0" (pointer_expression "*(undefined4 *)(iVar2 + -0x31f0)" (* "*") (cast_expression "(undefined4 *)(iVar2 + -0x31f0)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar2 + -0x31f0)" (( "(") (binary_expression "iVar2 + -0x31f0" (identifier "iVar2") (+ "+") (number_literal "-0x31f0")) () ")")))) (= "=") (number_literal "0")) (; ";")) (labeled_statement "LAB_0002efd8:\n      iVar2 = *(int *)(pcStack_81e8 + -0x7fc8);" (statement_identifier "LAB_0002efd8") (: ":") (expression_statement "iVar2 = *(int *)(pcStack_81e8 + -0x7fc8);" (assignment_expression "iVar2 = *(int *)(pcStack_81e8 + -0x7fc8)" (identifier "iVar2") (= "=") (pointer_expression "*(int *)(pcStack_81e8 + -0x7fc8)" (* "*") (cast_expression "(int *)(pcStack_81e8 + -0x7fc8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcStack_81e8 + -0x7fc8)" (( "(") (binary_expression "pcStack_81e8 + -0x7fc8" (identifier "pcStack_81e8") (+ "+") (number_literal "-0x7fc8")) () ")"))))) (; ";"))) (labeled_statement "LAB_0002efdc:\n      FUN_00028270(iVar2 + -0x4668);" (statement_identifier "LAB_0002efdc") (: ":") (expression_statement "FUN_00028270(iVar2 + -0x4668);" (call_expression "FUN_00028270(iVar2 + -0x4668)" (identifier "FUN_00028270") (argument_list "(iVar2 + -0x4668)" (( "(") (binary_expression "iVar2 + -0x4668" (identifier "iVar2") (+ "+") (number_literal "-0x4668")) () ")"))) (; ";"))) (expression_statement "pcVar13 = (char *)*puVar23;" (assignment_expression "pcVar13 = (char *)*puVar23" (identifier "pcVar13") (= "=") (cast_expression "(char *)*puVar23" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (pointer_expression "*puVar23" (* "*") (identifier "puVar23")))) (; ";")) (labeled_statement "LAB_0002eb34:\n      uVar7 = puVar23[1];" (statement_identifier "LAB_0002eb34") (: ":") (expression_statement "uVar7 = puVar23[1];" (assignment_expression "uVar7 = puVar23[1]" (identifier "uVar7") (= "=") (subscript_expression "puVar23[1]" (identifier "puVar23") ([ "[") (number_literal "1") (] "]"))) (; ";"))) (expression_statement "puVar9 = (undefined1 *)FUN_00028968(pcVar13);" (assignment_expression "puVar9 = (undefined1 *)FUN_00028968(pcVar13)" (identifier "puVar9") (= "=") (cast_expression "(undefined1 *)FUN_00028968(pcVar13)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "FUN_00028968(pcVar13)" (identifier "FUN_00028968") (argument_list "(pcVar13)" (( "(") (identifier "pcVar13") () ")"))))) (; ";")) (if_statement "if (puVar9 == (undefined1 *)0x0) {\n        FUN_00028270(*(int *)(pcStack_81e8 + -0x7fc8) + -0x463c);\n        uRam00000000 = 0;\n      }\n      else {\n        *puVar9 = 0;\n      }" (if "if") (parenthesized_expression "(puVar9 == (undefined1 *)0x0)" (( "(") (binary_expression "puVar9 == (undefined1 *)0x0" (identifier "puVar9") (== "==") (cast_expression "(undefined1 *)0x0" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n        FUN_00028270(*(int *)(pcStack_81e8 + -0x7fc8) + -0x463c);\n        uRam00000000 = 0;\n      }" ({ "{") (expression_statement "FUN_00028270(*(int *)(pcStack_81e8 + -0x7fc8) + -0x463c);" (call_expression "FUN_00028270(*(int *)(pcStack_81e8 + -0x7fc8) + -0x463c)" (identifier "FUN_00028270") (argument_list "(*(int *)(pcStack_81e8 + -0x7fc8) + -0x463c)" (( "(") (binary_expression "*(int *)(pcStack_81e8 + -0x7fc8) + -0x463c" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fc8)" (* "*") (cast_expression "(int *)(pcStack_81e8 + -0x7fc8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcStack_81e8 + -0x7fc8)" (( "(") (binary_expression "pcStack_81e8 + -0x7fc8" (identifier "pcStack_81e8") (+ "+") (number_literal "-0x7fc8")) () ")")))) (+ "+") (number_literal "-0x463c")) () ")"))) (; ";")) (expression_statement "uRam00000000 = 0;" (assignment_expression "uRam00000000 = 0" (identifier "uRam00000000") (= "=") (number_literal "0")) (; ";")) (} "}")) (else_clause "else {\n        *puVar9 = 0;\n      }" (else "else") (compound_statement "{\n        *puVar9 = 0;\n      }" ({ "{") (expression_statement "*puVar9 = 0;" (assignment_expression "*puVar9 = 0" (pointer_expression "*puVar9" (* "*") (identifier "puVar9")) (= "=") (number_literal "0")) (; ";")) (} "}")))) (if_statement "if (puVar9[1] == '\0') {\n        pcVar27 = (char *)(*(int *)(pcStack_81e8 + -0x7fc8) + -0x48b0);\n      }\n      else {\n        pcVar27 = puVar9 + 1;\n      }" (if "if") (parenthesized_expression "(puVar9[1] == '\0')" (( "(") (binary_expression "puVar9[1] == '\0'" (subscript_expression "puVar9[1]" (identifier "puVar9") ([ "[") (number_literal "1") (] "]")) (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n        pcVar27 = (char *)(*(int *)(pcStack_81e8 + -0x7fc8) + -0x48b0);\n      }" ({ "{") (expression_statement "pcVar27 = (char *)(*(int *)(pcStack_81e8 + -0x7fc8) + -0x48b0);" (assignment_expression "pcVar27 = (char *)(*(int *)(pcStack_81e8 + -0x7fc8) + -0x48b0)" (identifier "pcVar27") (= "=") (cast_expression "(char *)(*(int *)(pcStack_81e8 + -0x7fc8) + -0x48b0)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcStack_81e8 + -0x7fc8) + -0x48b0)" (( "(") (binary_expression "*(int *)(pcStack_81e8 + -0x7fc8) + -0x48b0" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fc8)" (* "*") (cast_expression "(int *)(pcStack_81e8 + -0x7fc8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcStack_81e8 + -0x7fc8)" (( "(") (binary_expression "pcStack_81e8 + -0x7fc8" (identifier "pcStack_81e8") (+ "+") (number_literal "-0x7fc8")) () ")")))) (+ "+") (number_literal "-0x48b0")) () ")")))) (; ";")) (} "}")) (else_clause "else {\n        pcVar27 = puVar9 + 1;\n      }" (else "else") (compound_statement "{\n        pcVar27 = puVar9 + 1;\n      }" ({ "{") (expression_statement "pcVar27 = puVar9 + 1;" (assignment_expression "pcVar27 = puVar9 + 1" (identifier "pcVar27") (= "=") (binary_expression "puVar9 + 1" (identifier "puVar9") (+ "+") (number_literal "1"))) (; ";")) (} "}")))) (expression_statement "puVar9 = (undefined1 *)(**(code **)(pcStack_81e8 + -0x75b8))(pcVar13,0x40);" (assignment_expression "puVar9 = (undefined1 *)(**(code **)(pcStack_81e8 + -0x75b8))(pcVar13,0x40)" (identifier "puVar9") (= "=") (cast_expression "(undefined1 *)(**(code **)(pcStack_81e8 + -0x75b8))(pcVar13,0x40)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "(**(code **)(pcStack_81e8 + -0x75b8))(pcVar13,0x40)" (parenthesized_expression "(**(code **)(pcStack_81e8 + -0x75b8))" (( "(") (pointer_expression "**(code **)(pcStack_81e8 + -0x75b8)" (* "*") (pointer_expression "*(code **)(pcStack_81e8 + -0x75b8)" (* "*") (cast_expression "(code **)(pcStack_81e8 + -0x75b8)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_81e8 + -0x75b8)" (( "(") (binary_expression "pcStack_81e8 + -0x75b8" (identifier "pcStack_81e8") (+ "+") (number_literal "-0x75b8")) () ")"))))) () ")")) (argument_list "(pcVar13,0x40)" (( "(") (identifier "pcVar13") (, ",") (number_literal "0x40") () ")"))))) (; ";")) (if_statement "if (puVar9 == (undefined1 *)0x0) {\n        pcVar21 = (char *)0x0;\n      }\n      else {\n        *puVar9 = 0;\n        cVar11 = *pcVar13;\n        pcVar21 = pcVar13;\n        pcVar13 = puVar9 + 1;\n        if (cVar11 == '\0') {\n          pcVar21 = (char *)0x0;\n        }\n      }" (if "if") (parenthesized_expression "(puVar9 == (undefined1 *)0x0)" (( "(") (binary_expression "puVar9 == (undefined1 *)0x0" (identifier "puVar9") (== "==") (cast_expression "(undefined1 *)0x0" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n        pcVar21 = (char *)0x0;\n      }" ({ "{") (expression_statement "pcVar21 = (char *)0x0;" (assignment_expression "pcVar21 = (char *)0x0" (identifier "pcVar21") (= "=") (cast_expression "(char *)0x0" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";")) (} "}")) (else_clause "else {\n        *puVar9 = 0;\n        cVar11 = *pcVar13;\n        pcVar21 = pcVar13;\n        pcVar13 = puVar9 + 1;\n        if (cVar11 == '\0') {\n          pcVar21 = (char *)0x0;\n        }\n      }" (else "else") (compound_statement "{\n        *puVar9 = 0;\n        cVar11 = *pcVar13;\n        pcVar21 = pcVar13;\n        pcVar13 = puVar9 + 1;\n        if (cVar11 == '\0') {\n          pcVar21 = (char *)0x0;\n        }\n      }" ({ "{") (expression_statement "*puVar9 = 0;" (assignment_expression "*puVar9 = 0" (pointer_expression "*puVar9" (* "*") (identifier "puVar9")) (= "=") (number_literal "0")) (; ";")) (expression_statement "cVar11 = *pcVar13;" (assignment_expression "cVar11 = *pcVar13" (identifier "cVar11") (= "=") (pointer_expression "*pcVar13" (* "*") (identifier "pcVar13"))) (; ";")) (expression_statement "pcVar21 = pcVar13;" (assignment_expression "pcVar21 = pcVar13" (identifier "pcVar21") (= "=") (identifier "pcVar13")) (; ";")) (expression_statement "pcVar13 = puVar9 + 1;" (assignment_expression "pcVar13 = puVar9 + 1" (identifier "pcVar13") (= "=") (binary_expression "puVar9 + 1" (identifier "puVar9") (+ "+") (number_literal "1"))) (; ";")) (if_statement "if (cVar11 == '\0') {\n          pcVar21 = (char *)0x0;\n        }" (if "if") (parenthesized_expression "(cVar11 == '\0')" (( "(") (binary_expression "cVar11 == '\0'" (identifier "cVar11") (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n          pcVar21 = (char *)0x0;\n        }" ({ "{") (expression_statement "pcVar21 = (char *)0x0;" (assignment_expression "pcVar21 = (char *)0x0" (identifier "pcVar21") (= "=") (cast_expression "(char *)0x0" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";")) (} "}"))) (} "}")))) (if_statement "if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31c8) == 0) {\n        iVar2 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iVar2 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47f4;\n      }" (if "if") (parenthesized_expression "(*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31c8) == 0)" (( "(") (binary_expression "*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31c8) == 0" (pointer_expression "*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31c8)" (* "*") (cast_expression "(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31c8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31c8)" (( "(") (binary_expression "*(int *)(pcStack_81e8 + -0x7fd8) + -0x31c8" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fd8)" (* "*") (cast_expression "(int *)(pcStack_81e8 + -0x7fd8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcStack_81e8 + -0x7fd8)" (( "(") (binary_expression "pcStack_81e8 + -0x7fd8" (identifier "pcStack_81e8") (+ "+") (number_literal "-0x7fd8")) () ")")))) (+ "+") (number_literal "-0x31c8")) () ")")))) (== "==") (number_literal "0")) () ")")) (compound_statement "{\n        iVar2 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }" ({ "{") (expression_statement "iVar2 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;" (assignment_expression "iVar2 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc" (identifier "iVar2") (= "=") (binary_expression "*(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fc8)" (* "*") (cast_expression "(int *)(pcStack_81e8 + -0x7fc8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcStack_81e8 + -0x7fc8)" (( "(") (binary_expression "pcStack_81e8 + -0x7fc8" (identifier "pcStack_81e8") (+ "+") (number_literal "-0x7fc8")) () ")")))) (+ "+") (number_literal "-0x17dc"))) (; ";")) (} "}")) (else_clause "else {\n        iVar2 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47f4;\n      }" (else "else") (compound_statement "{\n        iVar2 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47f4;\n      }" ({ "{") (expression_statement "iVar2 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47f4;" (assignment_expression "iVar2 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47f4" (identifier "iVar2") (= "=") (binary_expression "*(int *)(pcStack_81e8 + -0x7fc8) + -0x47f4" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fc8)" (* "*") (cast_expression "(int *)(pcStack_81e8 + -0x7fc8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcStack_81e8 + -0x7fc8)" (( "(") (binary_expression "pcStack_81e8 + -0x7fc8" (identifier "pcStack_81e8") (+ "+") (number_literal "-0x7fc8")) () ")")))) (+ "+") (number_literal "-0x47f4"))) (; ";")) (} "}")))) (if_statement "if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31cc) == 0) {\n        iVar24 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iVar24 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47f0;\n      }" (if "if") (parenthesized_expression "(*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31cc) == 0)" (( "(") (binary_expression "*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31cc) == 0" (pointer_expression "*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31cc)" (* "*") (cast_expression "(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31cc)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31cc)" (( "(") (binary_expression "*(int *)(pcStack_81e8 + -0x7fd8) + -0x31cc" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fd8)" (* "*") (cast_expression "(int *)(pcStack_81e8 + -0x7fd8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcStack_81e8 + -0x7fd8)" (( "(") (binary_expression "pcStack_81e8 + -0x7fd8" (identifier "pcStack_81e8") (+ "+") (number_literal "-0x7fd8")) () ")")))) (+ "+") (number_literal "-0x31cc")) () ")")))) (== "==") (number_literal "0")) () ")")) (compound_statement "{\n        iVar24 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }" ({ "{") (expression_statement "iVar24 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;" (assignment_expression "iVar24 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc" (identifier "iVar24") (= "=") (binary_expression "*(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fc8)" (* "*") (cast_expression "(int *)(pcStack_81e8 + -0x7fc8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcStack_81e8 + -0x7fc8)" (( "(") (binary_expression "pcStack_81e8 + -0x7fc8" (identifier "pcStack_81e8") (+ "+") (number_literal "-0x7fc8")) () ")")))) (+ "+") (number_literal "-0x17dc"))) (; ";")) (} "}")) (else_clause "else {\n        iVar24 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47f0;\n      }" (else "else") (compound_statement "{\n        iVar24 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47f0;\n      }" ({ "{") (expression_statement "iVar24 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47f0;" (assignment_expression "iVar24 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47f0" (identifier "iVar24") (= "=") (binary_expression "*(int *)(pcStack_81e8 + -0x7fc8) + -0x47f0" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fc8)" (* "*") (cast_expression "(int *)(pcStack_81e8 + -0x7fc8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcStack_81e8 + -0x7fc8)" (( "(") (binary_expression "pcStack_81e8 + -0x7fc8" (identifier "pcStack_81e8") (+ "+") (number_literal "-0x7fc8")) () ")")))) (+ "+") (number_literal "-0x47f0"))) (; ";")) (} "}")))) (if_statement "if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d0) == 0) {\n        iVar4 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iVar4 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47ec;\n      }" (if "if") (parenthesized_expression "(*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d0) == 0)" (( "(") (binary_expression "*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d0) == 0" (pointer_expression "*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d0)" (* "*") (cast_expression "(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d0)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d0)" (( "(") (binary_expression "*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d0" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fd8)" (* "*") (cast_expression "(int *)(pcStack_81e8 + -0x7fd8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcStack_81e8 + -0x7fd8)" (( "(") (binary_expression "pcStack_81e8 + -0x7fd8" (identifier "pcStack_81e8") (+ "+") (number_literal "-0x7fd8")) () ")")))) (+ "+") (number_literal "-0x31d0")) () ")")))) (== "==") (number_literal "0")) () ")")) (compound_statement "{\n        iVar4 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }" ({ "{") (expression_statement "iVar4 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;" (assignment_expression "iVar4 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc" (identifier "iVar4") (= "=") (binary_expression "*(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fc8)" (* "*") (cast_expression "(int *)(pcStack_81e8 + -0x7fc8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcStack_81e8 + -0x7fc8)" (( "(") (binary_expression "pcStack_81e8 + -0x7fc8" (identifier "pcStack_81e8") (+ "+") (number_literal "-0x7fc8")) () ")")))) (+ "+") (number_literal "-0x17dc"))) (; ";")) (} "}")) (else_clause "else {\n        iVar4 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47ec;\n      }" (else "else") (compound_statement "{\n        iVar4 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47ec;\n      }" ({ "{") (expression_statement "iVar4 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47ec;" (assignment_expression "iVar4 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47ec" (identifier "iVar4") (= "=") (binary_expression "*(int *)(pcStack_81e8 + -0x7fc8) + -0x47ec" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fc8)" (* "*") (cast_expression "(int *)(pcStack_81e8 + -0x7fc8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcStack_81e8 + -0x7fc8)" (( "(") (binary_expression "pcStack_81e8 + -0x7fc8" (identifier "pcStack_81e8") (+ "+") (number_literal "-0x7fc8")) () ")")))) (+ "+") (number_literal "-0x47ec"))) (; ";")) (} "}")))) (if_statement "if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4) == 0) {\n        iStack_81f0 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iStack_81f0 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47e8;\n      }" (if "if") (parenthesized_expression "(*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4) == 0)" (( "(") (binary_expression "*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4) == 0" (pointer_expression "*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4)" (* "*") (cast_expression "(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4)" (( "(") (binary_expression "*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fd8)" (* "*") (cast_expression "(int *)(pcStack_81e8 + -0x7fd8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcStack_81e8 + -0x7fd8)" (( "(") (binary_expression "pcStack_81e8 + -0x7fd8" (identifier "pcStack_81e8") (+ "+") (number_literal "-0x7fd8")) () ")")))) (+ "+") (number_literal "-0x31d4")) () ")")))) (== "==") (number_literal "0")) () ")")) (compound_statement "{\n        iStack_81f0 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }" ({ "{") (expression_statement "iStack_81f0 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;" (assignment_expression "iStack_81f0 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc" (identifier "iStack_81f0") (= "=") (binary_expression "*(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fc8)" (* "*") (cast_expression "(int *)(pcStack_81e8 + -0x7fc8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcStack_81e8 + -0x7fc8)" (( "(") (binary_expression "pcStack_81e8 + -0x7fc8" (identifier "pcStack_81e8") (+ "+") (number_literal "-0x7fc8")) () ")")))) (+ "+") (number_literal "-0x17dc"))) (; ";")) (} "}")) (else_clause "else {\n        iStack_81f0 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47e8;\n      }" (else "else") (compound_statement "{\n        iStack_81f0 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47e8;\n      }" ({ "{") (expression_statement "iStack_81f0 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47e8;" (assignment_expression "iStack_81f0 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47e8" (identifier "iStack_81f0") (= "=") (binary_expression "*(int *)(pcStack_81e8 + -0x7fc8) + -0x47e8" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fc8)" (* "*") (cast_expression "(int *)(pcStack_81e8 + -0x7fc8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcStack_81e8 + -0x7fc8)" (( "(") (binary_expression "pcStack_81e8 + -0x7fc8" (identifier "pcStack_81e8") (+ "+") (number_literal "-0x7fc8")) () ")")))) (+ "+") (number_literal "-0x47e8"))) (; ";")) (} "}")))) (expression_statement "pcStack_81ec = pcVar27;" (assignment_expression "pcStack_81ec = pcVar27" (identifier "pcStack_81ec") (= "=") (identifier "pcVar27")) (; ";")) (expression_statement "uVar6 = dupprintf(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4618,iVar2,iVar24,iVar4);" (assignment_expression "uVar6 = dupprintf(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4618,iVar2,iVar24,iVar4)" (identifier "uVar6") (= "=") (call_expression "dupprintf(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4618,iVar2,iVar24,iVar4)" (identifier "dupprintf") (argument_list "(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4618,iVar2,iVar24,iVar4)" (( "(") (binary_expression "*(int *)(pcStack_81e8 + -0x7fc8) + -0x4618" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fc8)" (* "*") (cast_expression "(int *)(pcStack_81e8 + -0x7fc8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcStack_81e8 + -0x7fc8)" (( "(") (binary_expression "pcStack_81e8 + -0x7fc8" (identifier "pcStack_81e8") (+ "+") (number_literal "-0x7fc8")) () ")")))) (+ "+") (number_literal "-0x4618")) (, ",") (identifier "iVar2") (, ",") (identifier "iVar24") (, ",") (identifier "iVar4") () ")")))) (; ";")) (expression_statement "FUN_00028a00(pcVar13,pcVar21,uVar6);" (call_expression "FUN_00028a00(pcVar13,pcVar21,uVar6)" (identifier "FUN_00028a00") (argument_list "(pcVar13,pcVar21,uVar6)" (( "(") (identifier "pcVar13") (, ",") (identifier "pcVar21") (, ",") (identifier "uVar6") () ")"))) (; ";")) (expression_statement "safefree(uVar6);" (call_expression "safefree(uVar6)" (identifier "safefree") (argument_list "(uVar6)" (( "(") (identifier "uVar6") () ")"))) (; ";")) (expression_statement "iVar2 = scp_sink_setup(pcVar27,*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d0),\n                             *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31cc));" (assignment_expression "iVar2 = scp_sink_setup(pcVar27,*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d0),\n                             *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31cc))" (identifier "iVar2") (= "=") (call_expression "scp_sink_setup(pcVar27,*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d0),\n                             *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31cc))" (identifier "scp_sink_setup") (argument_list "(pcVar27,*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d0),\n                             *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31cc))" (( "(") (identifier "pcVar27") (, ",") (pointer_expression "*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d0)" (* "*") (cast_expression "(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d0)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d0)" (( "(") (binary_expression "*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d0" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fd8)" (* "*") (cast_expression "(int *)(pcStack_81e8 + -0x7fd8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcStack_81e8 + -0x7fd8)" (( "(") (binary_expression "pcStack_81e8 + -0x7fd8" (identifier "pcStack_81e8") (+ "+") (number_literal "-0x7fd8")) () ")")))) (+ "+") (number_literal "-0x31d0")) () ")")))) (, ",") (pointer_expression "*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31cc)" (* "*") (cast_expression "(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31cc)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31cc)" (( "(") (binary_expression "*(int *)(pcStack_81e8 + -0x7fd8) + -0x31cc" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fd8)" (* "*") (cast_expression "(int *)(pcStack_81e8 + -0x7fd8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcStack_81e8 + -0x7fd8)" (( "(") (binary_expression "pcStack_81e8 + -0x7fd8" (identifier "pcStack_81e8") (+ "+") (number_literal "-0x7fd8")) () ")")))) (+ "+") (number_literal "-0x31cc")) () ")")))) () ")")))) (; ";")) (if_statement "if (iVar2 == 0) {\n        FUN_0002d4e0(uVar7);\n        iVar2 = *(int *)(pcStack_81e8 + -0x7fd8);\n        goto LAB_0002e788;\n      }" (if "if") (parenthesized_expression "(iVar2 == 0)" (( "(") (binary_expression "iVar2 == 0" (identifier "iVar2") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n        FUN_0002d4e0(uVar7);\n        iVar2 = *(int *)(pcStack_81e8 + -0x7fd8);\n        goto LAB_0002e788;\n      }" ({ "{") (expression_statement "FUN_0002d4e0(uVar7);" (call_expression "FUN_0002d4e0(uVar7)" (identifier "FUN_0002d4e0") (argument_list "(uVar7)" (( "(") (identifier "uVar7") () ")"))) (; ";")) (expression_statement "iVar2 = *(int *)(pcStack_81e8 + -0x7fd8);" (assignment_expression "iVar2 = *(int *)(pcStack_81e8 + -0x7fd8)" (identifier "iVar2") (= "=") (pointer_expression "*(int *)(pcStack_81e8 + -0x7fd8)" (* "*") (cast_expression "(int *)(pcStack_81e8 + -0x7fd8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcStack_81e8 + -0x7fd8)" (( "(") (binary_expression "pcStack_81e8 + -0x7fd8" (identifier "pcStack_81e8") (+ "+") (number_literal "-0x7fd8")) () ")"))))) (; ";")) (goto_statement "goto LAB_0002e788;" (goto "goto") (statement_identifier "LAB_0002e788") (; ";")) (} "}"))) (} "}")) (else_clause "else {\n      if (iVar4 < 3) {\n        puVar18 = puVar23 + iVar4 + 0x3fffffff;\n        iVar2 = FUN_00028968(*puVar18);\n        if (iVar2 == 0) {\n          *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f0) = 0;\n          iVar2 = *(int *)(pcStack_81e8 + -0x7fc8);\n          if (iVar4 != 2) goto LAB_0002efdc;\n          pcVar13 = (char *)*puVar23;\n          goto LAB_0002eb34;\n        }\n      }\n      else {\n        *(undefined4 *)(*(int *)(pcVar28 + -0x7fd8) + -0x31d4) = 1;\n        puVar18 = puVar23 + iVar4 + 0x3fffffff;\n        iVar2 = FUN_00028968(*puVar18);\n        if (iVar2 == 0) {\n          *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f0) = 0;\n          goto LAB_0002efd8;\n        }\n      }\n      iVar2 = *(int *)(pcStack_81e8 + -0x7fd8);\nLAB_0002e90c:\n      *(undefined4 *)(iVar2 + -0x31f0) = 1;\n      pcVar13 = (char *)*puVar18;\n      puVar9 = (undefined1 *)FUN_00028968(pcVar13);\n      if (puVar9 == (undefined1 *)0x0) {\n        FUN_00028270(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4720);\n        uRam00000000 = 0;\n      }\n      else {\n        *puVar9 = 0;\n      }\n      if (puVar9[1] == '\0') {\n        pcVar21 = (char *)(*(int *)(pcStack_81e8 + -0x7fc8) + -0x48b0);\n      }\n      else {\n        pcVar21 = puVar9 + 1;\n      }\n      puVar9 = (undefined1 *)(**(code **)(pcStack_81e8 + -0x75b8))(pcVar13,0x40);\n      if (puVar9 == (undefined1 *)0x0) {\n        pcVar27 = (char *)0x0;\n      }\n      else {\n        *puVar9 = 0;\n        cVar11 = *pcVar13;\n        pcVar27 = pcVar13;\n        pcVar13 = puVar9 + 1;\n        if (cVar11 == '\0') {\n          pcVar27 = (char *)0x0;\n        }\n      }\n      if (iVar4 == 2) {\n        iVar2 = FUN_00028968(*puVar23);\n        if (iVar2 != 0) {\n          FUN_00028270(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4704,*puVar23);\n        }\n        iVar2 = (**(code **)(pcStack_81e8 + -0x7c30))(*puVar23,1);\n        if (iVar2 == 0) {\n          FUN_00028270(*(int *)(pcStack_81e8 + -0x7fc8) + -0x46e0,*puVar23);\n          iVar24 = *(int *)(pcStack_81e8 + -0x7fd8);\n        }\n        else {\n          iVar24 = *(int *)(pcStack_81e8 + -0x7fd8);\n          if (iVar2 == 2) {\n            *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4) = 1;\n            goto LAB_0002e988;\n          }\n        }\n      }\n      else {\nLAB_0002e988:\n        iVar24 = *(int *)(pcStack_81e8 + -0x7fd8);\n      }\n      if (*(int *)(iVar24 + -0x31c8) == 0) {\n        iVar2 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iVar2 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47f4;\n      }\n      if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31cc) == 0) {\n        iVar24 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iVar24 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47f0;\n      }\n      if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d0) == 0) {\n        iVar15 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iVar15 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47ec;\n      }\n      if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4) == 0) {\n        iStack_81f0 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iStack_81f0 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47e8;\n      }\n      pcStack_81ec = pcVar21;\n      uVar7 = dupprintf(*(int *)(pcStack_81e8 + -0x7fc8) + -0x46c0,iVar2,iVar24,iVar15);\n      FUN_00028a00(pcVar13,pcVar27,uVar7);\n      safefree(uVar7);\n      pcVar27 = *(char **)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4);\n      iVar2 = scp_source_setup(pcVar21);\n      if ((iVar2 == 0) && (1 < iVar4)) {\n        puVar18 = puVar23 + iVar4 + -1;\n        iVar24 = *(int *)(pcStack_81e8 + -0x7db0);\n        iVar25 = *(int *)(pcStack_81e8 + -0x7fc8);\n        iVar15 = *(int *)(pcStack_81e8 + -0x7db0);\n        iVar4 = *(int *)(pcStack_81e8 + -0x7fc8);\n        do {\n          pcVar13 = (char *)*puVar23;\n          iVar2 = FUN_00028968(pcVar13);\n          if (iVar2 == 0) {\n            pcVar27 = (char *)0x1;\n            iVar2 = (**(code **)(pcStack_81e8 + -0x7c30))(pcVar13,1,pcVar13);\n            if (iVar2 == 0) {\n              (*(code *)(iVar15 + -0x59a8))(iVar25 + -0x4688);\n              pcVar27 = pcVar13;\n            }\n            else if (iVar2 == 1) {\n              (*(code *)(iVar24 + -0x4b8c))(pcVar13);\n            }\n            else {\n              iVar2 = (**(code **)(pcStack_81e8 + -0x7c2c))();\n              if (iVar2 == 0) {\n                (*(code *)(iVar15 + -0x59a8))(iVar25 + -0x4688);\n                pcVar27 = pcVar13;\n              }\n              else {\n                while (iVar26 = (**(code **)(pcStack_81e8 + -0x7c28))(iVar2), iVar26 != 0) {\n                  (*(code *)(iVar24 + -0x4b8c))(iVar26);\n                  safefree(iVar26);\n                }\n                (**(code **)(pcStack_81e8 + -0x7c24))(iVar2);\n              }\n            }\n          }\n          else {\n            pcVar27 = (char *)(iVar4 + -0x46ac);\n            FUN_00027ff8(**(undefined4 **)(pcStack_81e8 + -0x7460));\n            *(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31e0) =\n                 *(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31e0) + 1;\n          }\n          puVar23 = puVar23 + 1;\n          iVar2 = *(int *)(pcStack_81e8 + -0x7fd8);\n        } while (puVar18 != puVar23);\n        goto LAB_0002e788;\n      }\n    }" (else "else") (compound_statement "{\n      if (iVar4 < 3) {\n        puVar18 = puVar23 + iVar4 + 0x3fffffff;\n        iVar2 = FUN_00028968(*puVar18);\n        if (iVar2 == 0) {\n          *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f0) = 0;\n          iVar2 = *(int *)(pcStack_81e8 + -0x7fc8);\n          if (iVar4 != 2) goto LAB_0002efdc;\n          pcVar13 = (char *)*puVar23;\n          goto LAB_0002eb34;\n        }\n      }\n      else {\n        *(undefined4 *)(*(int *)(pcVar28 + -0x7fd8) + -0x31d4) = 1;\n        puVar18 = puVar23 + iVar4 + 0x3fffffff;\n        iVar2 = FUN_00028968(*puVar18);\n        if (iVar2 == 0) {\n          *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f0) = 0;\n          goto LAB_0002efd8;\n        }\n      }\n      iVar2 = *(int *)(pcStack_81e8 + -0x7fd8);\nLAB_0002e90c:\n      *(undefined4 *)(iVar2 + -0x31f0) = 1;\n      pcVar13 = (char *)*puVar18;\n      puVar9 = (undefined1 *)FUN_00028968(pcVar13);\n      if (puVar9 == (undefined1 *)0x0) {\n        FUN_00028270(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4720);\n        uRam00000000 = 0;\n      }\n      else {\n        *puVar9 = 0;\n      }\n      if (puVar9[1] == '\0') {\n        pcVar21 = (char *)(*(int *)(pcStack_81e8 + -0x7fc8) + -0x48b0);\n      }\n      else {\n        pcVar21 = puVar9 + 1;\n      }\n      puVar9 = (undefined1 *)(**(code **)(pcStack_81e8 + -0x75b8))(pcVar13,0x40);\n      if (puVar9 == (undefined1 *)0x0) {\n        pcVar27 = (char *)0x0;\n      }\n      else {\n        *puVar9 = 0;\n        cVar11 = *pcVar13;\n        pcVar27 = pcVar13;\n        pcVar13 = puVar9 + 1;\n        if (cVar11 == '\0') {\n          pcVar27 = (char *)0x0;\n        }\n      }\n      if (iVar4 == 2) {\n        iVar2 = FUN_00028968(*puVar23);\n        if (iVar2 != 0) {\n          FUN_00028270(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4704,*puVar23);\n        }\n        iVar2 = (**(code **)(pcStack_81e8 + -0x7c30))(*puVar23,1);\n        if (iVar2 == 0) {\n          FUN_00028270(*(int *)(pcStack_81e8 + -0x7fc8) + -0x46e0,*puVar23);\n          iVar24 = *(int *)(pcStack_81e8 + -0x7fd8);\n        }\n        else {\n          iVar24 = *(int *)(pcStack_81e8 + -0x7fd8);\n          if (iVar2 == 2) {\n            *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4) = 1;\n            goto LAB_0002e988;\n          }\n        }\n      }\n      else {\nLAB_0002e988:\n        iVar24 = *(int *)(pcStack_81e8 + -0x7fd8);\n      }\n      if (*(int *)(iVar24 + -0x31c8) == 0) {\n        iVar2 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iVar2 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47f4;\n      }\n      if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31cc) == 0) {\n        iVar24 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iVar24 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47f0;\n      }\n      if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d0) == 0) {\n        iVar15 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iVar15 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47ec;\n      }\n      if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4) == 0) {\n        iStack_81f0 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iStack_81f0 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47e8;\n      }\n      pcStack_81ec = pcVar21;\n      uVar7 = dupprintf(*(int *)(pcStack_81e8 + -0x7fc8) + -0x46c0,iVar2,iVar24,iVar15);\n      FUN_00028a00(pcVar13,pcVar27,uVar7);\n      safefree(uVar7);\n      pcVar27 = *(char **)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4);\n      iVar2 = scp_source_setup(pcVar21);\n      if ((iVar2 == 0) && (1 < iVar4)) {\n        puVar18 = puVar23 + iVar4 + -1;\n        iVar24 = *(int *)(pcStack_81e8 + -0x7db0);\n        iVar25 = *(int *)(pcStack_81e8 + -0x7fc8);\n        iVar15 = *(int *)(pcStack_81e8 + -0x7db0);\n        iVar4 = *(int *)(pcStack_81e8 + -0x7fc8);\n        do {\n          pcVar13 = (char *)*puVar23;\n          iVar2 = FUN_00028968(pcVar13);\n          if (iVar2 == 0) {\n            pcVar27 = (char *)0x1;\n            iVar2 = (**(code **)(pcStack_81e8 + -0x7c30))(pcVar13,1,pcVar13);\n            if (iVar2 == 0) {\n              (*(code *)(iVar15 + -0x59a8))(iVar25 + -0x4688);\n              pcVar27 = pcVar13;\n            }\n            else if (iVar2 == 1) {\n              (*(code *)(iVar24 + -0x4b8c))(pcVar13);\n            }\n            else {\n              iVar2 = (**(code **)(pcStack_81e8 + -0x7c2c))();\n              if (iVar2 == 0) {\n                (*(code *)(iVar15 + -0x59a8))(iVar25 + -0x4688);\n                pcVar27 = pcVar13;\n              }\n              else {\n                while (iVar26 = (**(code **)(pcStack_81e8 + -0x7c28))(iVar2), iVar26 != 0) {\n                  (*(code *)(iVar24 + -0x4b8c))(iVar26);\n                  safefree(iVar26);\n                }\n                (**(code **)(pcStack_81e8 + -0x7c24))(iVar2);\n              }\n            }\n          }\n          else {\n            pcVar27 = (char *)(iVar4 + -0x46ac);\n            FUN_00027ff8(**(undefined4 **)(pcStack_81e8 + -0x7460));\n            *(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31e0) =\n                 *(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31e0) + 1;\n          }\n          puVar23 = puVar23 + 1;\n          iVar2 = *(int *)(pcStack_81e8 + -0x7fd8);\n        } while (puVar18 != puVar23);\n        goto LAB_0002e788;\n      }\n    }" ({ "{") (if_statement "if (iVar4 < 3) {\n        puVar18 = puVar23 + iVar4 + 0x3fffffff;\n        iVar2 = FUN_00028968(*puVar18);\n        if (iVar2 == 0) {\n          *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f0) = 0;\n          iVar2 = *(int *)(pcStack_81e8 + -0x7fc8);\n          if (iVar4 != 2) goto LAB_0002efdc;\n          pcVar13 = (char *)*puVar23;\n          goto LAB_0002eb34;\n        }\n      }\n      else {\n        *(undefined4 *)(*(int *)(pcVar28 + -0x7fd8) + -0x31d4) = 1;\n        puVar18 = puVar23 + iVar4 + 0x3fffffff;\n        iVar2 = FUN_00028968(*puVar18);\n        if (iVar2 == 0) {\n          *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f0) = 0;\n          goto LAB_0002efd8;\n        }\n      }" (if "if") (parenthesized_expression "(iVar4 < 3)" (( "(") (binary_expression "iVar4 < 3" (identifier "iVar4") (< "<") (number_literal "3")) () ")")) (compound_statement "{\n        puVar18 = puVar23 + iVar4 + 0x3fffffff;\n        iVar2 = FUN_00028968(*puVar18);\n        if (iVar2 == 0) {\n          *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f0) = 0;\n          iVar2 = *(int *)(pcStack_81e8 + -0x7fc8);\n          if (iVar4 != 2) goto LAB_0002efdc;\n          pcVar13 = (char *)*puVar23;\n          goto LAB_0002eb34;\n        }\n      }" ({ "{") (expression_statement "puVar18 = puVar23 + iVar4 + 0x3fffffff;" (assignment_expression "puVar18 = puVar23 + iVar4 + 0x3fffffff" (identifier "puVar18") (= "=") (binary_expression "puVar23 + iVar4 + 0x3fffffff" (binary_expression "puVar23 + iVar4" (identifier "puVar23") (+ "+") (identifier "iVar4")) (+ "+") (number_literal "0x3fffffff"))) (; ";")) (expression_statement "iVar2 = FUN_00028968(*puVar18);" (assignment_expression "iVar2 = FUN_00028968(*puVar18)" (identifier "iVar2") (= "=") (call_expression "FUN_00028968(*puVar18)" (identifier "FUN_00028968") (argument_list "(*puVar18)" (( "(") (pointer_expression "*puVar18" (* "*") (identifier "puVar18")) () ")")))) (; ";")) (if_statement "if (iVar2 == 0) {\n          *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f0) = 0;\n          iVar2 = *(int *)(pcStack_81e8 + -0x7fc8);\n          if (iVar4 != 2) goto LAB_0002efdc;\n          pcVar13 = (char *)*puVar23;\n          goto LAB_0002eb34;\n        }" (if "if") (parenthesized_expression "(iVar2 == 0)" (( "(") (binary_expression "iVar2 == 0" (identifier "iVar2") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n          *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f0) = 0;\n          iVar2 = *(int *)(pcStack_81e8 + -0x7fc8);\n          if (iVar4 != 2) goto LAB_0002efdc;\n          pcVar13 = (char *)*puVar23;\n          goto LAB_0002eb34;\n        }" ({ "{") (expression_statement "*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f0) = 0;" (assignment_expression "*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f0) = 0" (pointer_expression "*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f0)" (* "*") (cast_expression "(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f0)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f0)" (( "(") (binary_expression "*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f0" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fd8)" (* "*") (cast_expression "(int *)(pcStack_81e8 + -0x7fd8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcStack_81e8 + -0x7fd8)" (( "(") (binary_expression "pcStack_81e8 + -0x7fd8" (identifier "pcStack_81e8") (+ "+") (number_literal "-0x7fd8")) () ")")))) (+ "+") (number_literal "-0x31f0")) () ")")))) (= "=") (number_literal "0")) (; ";")) (expression_statement "iVar2 = *(int *)(pcStack_81e8 + -0x7fc8);" (assignment_expression "iVar2 = *(int *)(pcStack_81e8 + -0x7fc8)" (identifier "iVar2") (= "=") (pointer_expression "*(int *)(pcStack_81e8 + -0x7fc8)" (* "*") (cast_expression "(int *)(pcStack_81e8 + -0x7fc8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcStack_81e8 + -0x7fc8)" (( "(") (binary_expression "pcStack_81e8 + -0x7fc8" (identifier "pcStack_81e8") (+ "+") (number_literal "-0x7fc8")) () ")"))))) (; ";")) (if_statement "if (iVar4 != 2) goto LAB_0002efdc;" (if "if") (parenthesized_expression "(iVar4 != 2)" (( "(") (binary_expression "iVar4 != 2" (identifier "iVar4") (!= "!=") (number_literal "2")) () ")")) (goto_statement "goto LAB_0002efdc;" (goto "goto") (statement_identifier "LAB_0002efdc") (; ";"))) (expression_statement "pcVar13 = (char *)*puVar23;" (assignment_expression "pcVar13 = (char *)*puVar23" (identifier "pcVar13") (= "=") (cast_expression "(char *)*puVar23" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (pointer_expression "*puVar23" (* "*") (identifier "puVar23")))) (; ";")) (goto_statement "goto LAB_0002eb34;" (goto "goto") (statement_identifier "LAB_0002eb34") (; ";")) (} "}"))) (} "}")) (else_clause "else {\n        *(undefined4 *)(*(int *)(pcVar28 + -0x7fd8) + -0x31d4) = 1;\n        puVar18 = puVar23 + iVar4 + 0x3fffffff;\n        iVar2 = FUN_00028968(*puVar18);\n        if (iVar2 == 0) {\n          *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f0) = 0;\n          goto LAB_0002efd8;\n        }\n      }" (else "else") (compound_statement "{\n        *(undefined4 *)(*(int *)(pcVar28 + -0x7fd8) + -0x31d4) = 1;\n        puVar18 = puVar23 + iVar4 + 0x3fffffff;\n        iVar2 = FUN_00028968(*puVar18);\n        if (iVar2 == 0) {\n          *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f0) = 0;\n          goto LAB_0002efd8;\n        }\n      }" ({ "{") (expression_statement "*(undefined4 *)(*(int *)(pcVar28 + -0x7fd8) + -0x31d4) = 1;" (assignment_expression "*(undefined4 *)(*(int *)(pcVar28 + -0x7fd8) + -0x31d4) = 1" (pointer_expression "*(undefined4 *)(*(int *)(pcVar28 + -0x7fd8) + -0x31d4)" (* "*") (cast_expression "(undefined4 *)(*(int *)(pcVar28 + -0x7fd8) + -0x31d4)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcVar28 + -0x7fd8) + -0x31d4)" (( "(") (binary_expression "*(int *)(pcVar28 + -0x7fd8) + -0x31d4" (pointer_expression "*(int *)(pcVar28 + -0x7fd8)" (* "*") (cast_expression "(int *)(pcVar28 + -0x7fd8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar28 + -0x7fd8)" (( "(") (binary_expression "pcVar28 + -0x7fd8" (identifier "pcVar28") (+ "+") (number_literal "-0x7fd8")) () ")")))) (+ "+") (number_literal "-0x31d4")) () ")")))) (= "=") (number_literal "1")) (; ";")) (expression_statement "puVar18 = puVar23 + iVar4 + 0x3fffffff;" (assignment_expression "puVar18 = puVar23 + iVar4 + 0x3fffffff" (identifier "puVar18") (= "=") (binary_expression "puVar23 + iVar4 + 0x3fffffff" (binary_expression "puVar23 + iVar4" (identifier "puVar23") (+ "+") (identifier "iVar4")) (+ "+") (number_literal "0x3fffffff"))) (; ";")) (expression_statement "iVar2 = FUN_00028968(*puVar18);" (assignment_expression "iVar2 = FUN_00028968(*puVar18)" (identifier "iVar2") (= "=") (call_expression "FUN_00028968(*puVar18)" (identifier "FUN_00028968") (argument_list "(*puVar18)" (( "(") (pointer_expression "*puVar18" (* "*") (identifier "puVar18")) () ")")))) (; ";")) (if_statement "if (iVar2 == 0) {\n          *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f0) = 0;\n          goto LAB_0002efd8;\n        }" (if "if") (parenthesized_expression "(iVar2 == 0)" (( "(") (binary_expression "iVar2 == 0" (identifier "iVar2") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n          *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f0) = 0;\n          goto LAB_0002efd8;\n        }" ({ "{") (expression_statement "*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f0) = 0;" (assignment_expression "*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f0) = 0" (pointer_expression "*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f0)" (* "*") (cast_expression "(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f0)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f0)" (( "(") (binary_expression "*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f0" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fd8)" (* "*") (cast_expression "(int *)(pcStack_81e8 + -0x7fd8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcStack_81e8 + -0x7fd8)" (( "(") (binary_expression "pcStack_81e8 + -0x7fd8" (identifier "pcStack_81e8") (+ "+") (number_literal "-0x7fd8")) () ")")))) (+ "+") (number_literal "-0x31f0")) () ")")))) (= "=") (number_literal "0")) (; ";")) (goto_statement "goto LAB_0002efd8;" (goto "goto") (statement_identifier "LAB_0002efd8") (; ";")) (} "}"))) (} "}")))) (expression_statement "iVar2 = *(int *)(pcStack_81e8 + -0x7fd8);" (assignment_expression "iVar2 = *(int *)(pcStack_81e8 + -0x7fd8)" (identifier "iVar2") (= "=") (pointer_expression "*(int *)(pcStack_81e8 + -0x7fd8)" (* "*") (cast_expression "(int *)(pcStack_81e8 + -0x7fd8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcStack_81e8 + -0x7fd8)" (( "(") (binary_expression "pcStack_81e8 + -0x7fd8" (identifier "pcStack_81e8") (+ "+") (number_literal "-0x7fd8")) () ")"))))) (; ";")) (labeled_statement "LAB_0002e90c:\n      *(undefined4 *)(iVar2 + -0x31f0) = 1;" (statement_identifier "LAB_0002e90c") (: ":") (expression_statement "*(undefined4 *)(iVar2 + -0x31f0) = 1;" (assignment_expression "*(undefined4 *)(iVar2 + -0x31f0) = 1" (pointer_expression "*(undefined4 *)(iVar2 + -0x31f0)" (* "*") (cast_expression "(undefined4 *)(iVar2 + -0x31f0)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar2 + -0x31f0)" (( "(") (binary_expression "iVar2 + -0x31f0" (identifier "iVar2") (+ "+") (number_literal "-0x31f0")) () ")")))) (= "=") (number_literal "1")) (; ";"))) (expression_statement "pcVar13 = (char *)*puVar18;" (assignment_expression "pcVar13 = (char *)*puVar18" (identifier "pcVar13") (= "=") (cast_expression "(char *)*puVar18" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (pointer_expression "*puVar18" (* "*") (identifier "puVar18")))) (; ";")) (expression_statement "puVar9 = (undefined1 *)FUN_00028968(pcVar13);" (assignment_expression "puVar9 = (undefined1 *)FUN_00028968(pcVar13)" (identifier "puVar9") (= "=") (cast_expression "(undefined1 *)FUN_00028968(pcVar13)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "FUN_00028968(pcVar13)" (identifier "FUN_00028968") (argument_list "(pcVar13)" (( "(") (identifier "pcVar13") () ")"))))) (; ";")) (if_statement "if (puVar9 == (undefined1 *)0x0) {\n        FUN_00028270(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4720);\n        uRam00000000 = 0;\n      }\n      else {\n        *puVar9 = 0;\n      }" (if "if") (parenthesized_expression "(puVar9 == (undefined1 *)0x0)" (( "(") (binary_expression "puVar9 == (undefined1 *)0x0" (identifier "puVar9") (== "==") (cast_expression "(undefined1 *)0x0" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n        FUN_00028270(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4720);\n        uRam00000000 = 0;\n      }" ({ "{") (expression_statement "FUN_00028270(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4720);" (call_expression "FUN_00028270(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4720)" (identifier "FUN_00028270") (argument_list "(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4720)" (( "(") (binary_expression "*(int *)(pcStack_81e8 + -0x7fc8) + -0x4720" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fc8)" (* "*") (cast_expression "(int *)(pcStack_81e8 + -0x7fc8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcStack_81e8 + -0x7fc8)" (( "(") (binary_expression "pcStack_81e8 + -0x7fc8" (identifier "pcStack_81e8") (+ "+") (number_literal "-0x7fc8")) () ")")))) (+ "+") (number_literal "-0x4720")) () ")"))) (; ";")) (expression_statement "uRam00000000 = 0;" (assignment_expression "uRam00000000 = 0" (identifier "uRam00000000") (= "=") (number_literal "0")) (; ";")) (} "}")) (else_clause "else {\n        *puVar9 = 0;\n      }" (else "else") (compound_statement "{\n        *puVar9 = 0;\n      }" ({ "{") (expression_statement "*puVar9 = 0;" (assignment_expression "*puVar9 = 0" (pointer_expression "*puVar9" (* "*") (identifier "puVar9")) (= "=") (number_literal "0")) (; ";")) (} "}")))) (if_statement "if (puVar9[1] == '\0') {\n        pcVar21 = (char *)(*(int *)(pcStack_81e8 + -0x7fc8) + -0x48b0);\n      }\n      else {\n        pcVar21 = puVar9 + 1;\n      }" (if "if") (parenthesized_expression "(puVar9[1] == '\0')" (( "(") (binary_expression "puVar9[1] == '\0'" (subscript_expression "puVar9[1]" (identifier "puVar9") ([ "[") (number_literal "1") (] "]")) (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n        pcVar21 = (char *)(*(int *)(pcStack_81e8 + -0x7fc8) + -0x48b0);\n      }" ({ "{") (expression_statement "pcVar21 = (char *)(*(int *)(pcStack_81e8 + -0x7fc8) + -0x48b0);" (assignment_expression "pcVar21 = (char *)(*(int *)(pcStack_81e8 + -0x7fc8) + -0x48b0)" (identifier "pcVar21") (= "=") (cast_expression "(char *)(*(int *)(pcStack_81e8 + -0x7fc8) + -0x48b0)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcStack_81e8 + -0x7fc8) + -0x48b0)" (( "(") (binary_expression "*(int *)(pcStack_81e8 + -0x7fc8) + -0x48b0" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fc8)" (* "*") (cast_expression "(int *)(pcStack_81e8 + -0x7fc8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcStack_81e8 + -0x7fc8)" (( "(") (binary_expression "pcStack_81e8 + -0x7fc8" (identifier "pcStack_81e8") (+ "+") (number_literal "-0x7fc8")) () ")")))) (+ "+") (number_literal "-0x48b0")) () ")")))) (; ";")) (} "}")) (else_clause "else {\n        pcVar21 = puVar9 + 1;\n      }" (else "else") (compound_statement "{\n        pcVar21 = puVar9 + 1;\n      }" ({ "{") (expression_statement "pcVar21 = puVar9 + 1;" (assignment_expression "pcVar21 = puVar9 + 1" (identifier "pcVar21") (= "=") (binary_expression "puVar9 + 1" (identifier "puVar9") (+ "+") (number_literal "1"))) (; ";")) (} "}")))) (expression_statement "puVar9 = (undefined1 *)(**(code **)(pcStack_81e8 + -0x75b8))(pcVar13,0x40);" (assignment_expression "puVar9 = (undefined1 *)(**(code **)(pcStack_81e8 + -0x75b8))(pcVar13,0x40)" (identifier "puVar9") (= "=") (cast_expression "(undefined1 *)(**(code **)(pcStack_81e8 + -0x75b8))(pcVar13,0x40)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "(**(code **)(pcStack_81e8 + -0x75b8))(pcVar13,0x40)" (parenthesized_expression "(**(code **)(pcStack_81e8 + -0x75b8))" (( "(") (pointer_expression "**(code **)(pcStack_81e8 + -0x75b8)" (* "*") (pointer_expression "*(code **)(pcStack_81e8 + -0x75b8)" (* "*") (cast_expression "(code **)(pcStack_81e8 + -0x75b8)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_81e8 + -0x75b8)" (( "(") (binary_expression "pcStack_81e8 + -0x75b8" (identifier "pcStack_81e8") (+ "+") (number_literal "-0x75b8")) () ")"))))) () ")")) (argument_list "(pcVar13,0x40)" (( "(") (identifier "pcVar13") (, ",") (number_literal "0x40") () ")"))))) (; ";")) (if_statement "if (puVar9 == (undefined1 *)0x0) {\n        pcVar27 = (char *)0x0;\n      }\n      else {\n        *puVar9 = 0;\n        cVar11 = *pcVar13;\n        pcVar27 = pcVar13;\n        pcVar13 = puVar9 + 1;\n        if (cVar11 == '\0') {\n          pcVar27 = (char *)0x0;\n        }\n      }" (if "if") (parenthesized_expression "(puVar9 == (undefined1 *)0x0)" (( "(") (binary_expression "puVar9 == (undefined1 *)0x0" (identifier "puVar9") (== "==") (cast_expression "(undefined1 *)0x0" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n        pcVar27 = (char *)0x0;\n      }" ({ "{") (expression_statement "pcVar27 = (char *)0x0;" (assignment_expression "pcVar27 = (char *)0x0" (identifier "pcVar27") (= "=") (cast_expression "(char *)0x0" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";")) (} "}")) (else_clause "else {\n        *puVar9 = 0;\n        cVar11 = *pcVar13;\n        pcVar27 = pcVar13;\n        pcVar13 = puVar9 + 1;\n        if (cVar11 == '\0') {\n          pcVar27 = (char *)0x0;\n        }\n      }" (else "else") (compound_statement "{\n        *puVar9 = 0;\n        cVar11 = *pcVar13;\n        pcVar27 = pcVar13;\n        pcVar13 = puVar9 + 1;\n        if (cVar11 == '\0') {\n          pcVar27 = (char *)0x0;\n        }\n      }" ({ "{") (expression_statement "*puVar9 = 0;" (assignment_expression "*puVar9 = 0" (pointer_expression "*puVar9" (* "*") (identifier "puVar9")) (= "=") (number_literal "0")) (; ";")) (expression_statement "cVar11 = *pcVar13;" (assignment_expression "cVar11 = *pcVar13" (identifier "cVar11") (= "=") (pointer_expression "*pcVar13" (* "*") (identifier "pcVar13"))) (; ";")) (expression_statement "pcVar27 = pcVar13;" (assignment_expression "pcVar27 = pcVar13" (identifier "pcVar27") (= "=") (identifier "pcVar13")) (; ";")) (expression_statement "pcVar13 = puVar9 + 1;" (assignment_expression "pcVar13 = puVar9 + 1" (identifier "pcVar13") (= "=") (binary_expression "puVar9 + 1" (identifier "puVar9") (+ "+") (number_literal "1"))) (; ";")) (if_statement "if (cVar11 == '\0') {\n          pcVar27 = (char *)0x0;\n        }" (if "if") (parenthesized_expression "(cVar11 == '\0')" (( "(") (binary_expression "cVar11 == '\0'" (identifier "cVar11") (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n          pcVar27 = (char *)0x0;\n        }" ({ "{") (expression_statement "pcVar27 = (char *)0x0;" (assignment_expression "pcVar27 = (char *)0x0" (identifier "pcVar27") (= "=") (cast_expression "(char *)0x0" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";")) (} "}"))) (} "}")))) (if_statement "if (iVar4 == 2) {\n        iVar2 = FUN_00028968(*puVar23);\n        if (iVar2 != 0) {\n          FUN_00028270(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4704,*puVar23);\n        }\n        iVar2 = (**(code **)(pcStack_81e8 + -0x7c30))(*puVar23,1);\n        if (iVar2 == 0) {\n          FUN_00028270(*(int *)(pcStack_81e8 + -0x7fc8) + -0x46e0,*puVar23);\n          iVar24 = *(int *)(pcStack_81e8 + -0x7fd8);\n        }\n        else {\n          iVar24 = *(int *)(pcStack_81e8 + -0x7fd8);\n          if (iVar2 == 2) {\n            *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4) = 1;\n            goto LAB_0002e988;\n          }\n        }\n      }\n      else {\nLAB_0002e988:\n        iVar24 = *(int *)(pcStack_81e8 + -0x7fd8);\n      }" (if "if") (parenthesized_expression "(iVar4 == 2)" (( "(") (binary_expression "iVar4 == 2" (identifier "iVar4") (== "==") (number_literal "2")) () ")")) (compound_statement "{\n        iVar2 = FUN_00028968(*puVar23);\n        if (iVar2 != 0) {\n          FUN_00028270(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4704,*puVar23);\n        }\n        iVar2 = (**(code **)(pcStack_81e8 + -0x7c30))(*puVar23,1);\n        if (iVar2 == 0) {\n          FUN_00028270(*(int *)(pcStack_81e8 + -0x7fc8) + -0x46e0,*puVar23);\n          iVar24 = *(int *)(pcStack_81e8 + -0x7fd8);\n        }\n        else {\n          iVar24 = *(int *)(pcStack_81e8 + -0x7fd8);\n          if (iVar2 == 2) {\n            *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4) = 1;\n            goto LAB_0002e988;\n          }\n        }\n      }" ({ "{") (expression_statement "iVar2 = FUN_00028968(*puVar23);" (assignment_expression "iVar2 = FUN_00028968(*puVar23)" (identifier "iVar2") (= "=") (call_expression "FUN_00028968(*puVar23)" (identifier "FUN_00028968") (argument_list "(*puVar23)" (( "(") (pointer_expression "*puVar23" (* "*") (identifier "puVar23")) () ")")))) (; ";")) (if_statement "if (iVar2 != 0) {\n          FUN_00028270(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4704,*puVar23);\n        }" (if "if") (parenthesized_expression "(iVar2 != 0)" (( "(") (binary_expression "iVar2 != 0" (identifier "iVar2") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n          FUN_00028270(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4704,*puVar23);\n        }" ({ "{") (expression_statement "FUN_00028270(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4704,*puVar23);" (call_expression "FUN_00028270(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4704,*puVar23)" (identifier "FUN_00028270") (argument_list "(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4704,*puVar23)" (( "(") (binary_expression "*(int *)(pcStack_81e8 + -0x7fc8) + -0x4704" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fc8)" (* "*") (cast_expression "(int *)(pcStack_81e8 + -0x7fc8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcStack_81e8 + -0x7fc8)" (( "(") (binary_expression "pcStack_81e8 + -0x7fc8" (identifier "pcStack_81e8") (+ "+") (number_literal "-0x7fc8")) () ")")))) (+ "+") (number_literal "-0x4704")) (, ",") (pointer_expression "*puVar23" (* "*") (identifier "puVar23")) () ")"))) (; ";")) (} "}"))) (expression_statement "iVar2 = (**(code **)(pcStack_81e8 + -0x7c30))(*puVar23,1);" (assignment_expression "iVar2 = (**(code **)(pcStack_81e8 + -0x7c30))(*puVar23,1)" (identifier "iVar2") (= "=") (call_expression "(**(code **)(pcStack_81e8 + -0x7c30))(*puVar23,1)" (parenthesized_expression "(**(code **)(pcStack_81e8 + -0x7c30))" (( "(") (pointer_expression "**(code **)(pcStack_81e8 + -0x7c30)" (* "*") (pointer_expression "*(code **)(pcStack_81e8 + -0x7c30)" (* "*") (cast_expression "(code **)(pcStack_81e8 + -0x7c30)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_81e8 + -0x7c30)" (( "(") (binary_expression "pcStack_81e8 + -0x7c30" (identifier "pcStack_81e8") (+ "+") (number_literal "-0x7c30")) () ")"))))) () ")")) (argument_list "(*puVar23,1)" (( "(") (pointer_expression "*puVar23" (* "*") (identifier "puVar23")) (, ",") (number_literal "1") () ")")))) (; ";")) (if_statement "if (iVar2 == 0) {\n          FUN_00028270(*(int *)(pcStack_81e8 + -0x7fc8) + -0x46e0,*puVar23);\n          iVar24 = *(int *)(pcStack_81e8 + -0x7fd8);\n        }\n        else {\n          iVar24 = *(int *)(pcStack_81e8 + -0x7fd8);\n          if (iVar2 == 2) {\n            *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4) = 1;\n            goto LAB_0002e988;\n          }\n        }" (if "if") (parenthesized_expression "(iVar2 == 0)" (( "(") (binary_expression "iVar2 == 0" (identifier "iVar2") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n          FUN_00028270(*(int *)(pcStack_81e8 + -0x7fc8) + -0x46e0,*puVar23);\n          iVar24 = *(int *)(pcStack_81e8 + -0x7fd8);\n        }" ({ "{") (expression_statement "FUN_00028270(*(int *)(pcStack_81e8 + -0x7fc8) + -0x46e0,*puVar23);" (call_expression "FUN_00028270(*(int *)(pcStack_81e8 + -0x7fc8) + -0x46e0,*puVar23)" (identifier "FUN_00028270") (argument_list "(*(int *)(pcStack_81e8 + -0x7fc8) + -0x46e0,*puVar23)" (( "(") (binary_expression "*(int *)(pcStack_81e8 + -0x7fc8) + -0x46e0" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fc8)" (* "*") (cast_expression "(int *)(pcStack_81e8 + -0x7fc8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcStack_81e8 + -0x7fc8)" (( "(") (binary_expression "pcStack_81e8 + -0x7fc8" (identifier "pcStack_81e8") (+ "+") (number_literal "-0x7fc8")) () ")")))) (+ "+") (number_literal "-0x46e0")) (, ",") (pointer_expression "*puVar23" (* "*") (identifier "puVar23")) () ")"))) (; ";")) (expression_statement "iVar24 = *(int *)(pcStack_81e8 + -0x7fd8);" (assignment_expression "iVar24 = *(int *)(pcStack_81e8 + -0x7fd8)" (identifier "iVar24") (= "=") (pointer_expression "*(int *)(pcStack_81e8 + -0x7fd8)" (* "*") (cast_expression "(int *)(pcStack_81e8 + -0x7fd8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcStack_81e8 + -0x7fd8)" (( "(") (binary_expression "pcStack_81e8 + -0x7fd8" (identifier "pcStack_81e8") (+ "+") (number_literal "-0x7fd8")) () ")"))))) (; ";")) (} "}")) (else_clause "else {\n          iVar24 = *(int *)(pcStack_81e8 + -0x7fd8);\n          if (iVar2 == 2) {\n            *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4) = 1;\n            goto LAB_0002e988;\n          }\n        }" (else "else") (compound_statement "{\n          iVar24 = *(int *)(pcStack_81e8 + -0x7fd8);\n          if (iVar2 == 2) {\n            *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4) = 1;\n            goto LAB_0002e988;\n          }\n        }" ({ "{") (expression_statement "iVar24 = *(int *)(pcStack_81e8 + -0x7fd8);" (assignment_expression "iVar24 = *(int *)(pcStack_81e8 + -0x7fd8)" (identifier "iVar24") (= "=") (pointer_expression "*(int *)(pcStack_81e8 + -0x7fd8)" (* "*") (cast_expression "(int *)(pcStack_81e8 + -0x7fd8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcStack_81e8 + -0x7fd8)" (( "(") (binary_expression "pcStack_81e8 + -0x7fd8" (identifier "pcStack_81e8") (+ "+") (number_literal "-0x7fd8")) () ")"))))) (; ";")) (if_statement "if (iVar2 == 2) {\n            *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4) = 1;\n            goto LAB_0002e988;\n          }" (if "if") (parenthesized_expression "(iVar2 == 2)" (( "(") (binary_expression "iVar2 == 2" (identifier "iVar2") (== "==") (number_literal "2")) () ")")) (compound_statement "{\n            *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4) = 1;\n            goto LAB_0002e988;\n          }" ({ "{") (expression_statement "*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4) = 1;" (assignment_expression "*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4) = 1" (pointer_expression "*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4)" (* "*") (cast_expression "(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4)" (( "(") (binary_expression "*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fd8)" (* "*") (cast_expression "(int *)(pcStack_81e8 + -0x7fd8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcStack_81e8 + -0x7fd8)" (( "(") (binary_expression "pcStack_81e8 + -0x7fd8" (identifier "pcStack_81e8") (+ "+") (number_literal "-0x7fd8")) () ")")))) (+ "+") (number_literal "-0x31d4")) () ")")))) (= "=") (number_literal "1")) (; ";")) (goto_statement "goto LAB_0002e988;" (goto "goto") (statement_identifier "LAB_0002e988") (; ";")) (} "}"))) (} "}")))) (} "}")) (else_clause "else {\nLAB_0002e988:\n        iVar24 = *(int *)(pcStack_81e8 + -0x7fd8);\n      }" (else "else") (compound_statement "{\nLAB_0002e988:\n        iVar24 = *(int *)(pcStack_81e8 + -0x7fd8);\n      }" ({ "{") (labeled_statement "LAB_0002e988:\n        iVar24 = *(int *)(pcStack_81e8 + -0x7fd8);" (statement_identifier "LAB_0002e988") (: ":") (expression_statement "iVar24 = *(int *)(pcStack_81e8 + -0x7fd8);" (assignment_expression "iVar24 = *(int *)(pcStack_81e8 + -0x7fd8)" (identifier "iVar24") (= "=") (pointer_expression "*(int *)(pcStack_81e8 + -0x7fd8)" (* "*") (cast_expression "(int *)(pcStack_81e8 + -0x7fd8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcStack_81e8 + -0x7fd8)" (( "(") (binary_expression "pcStack_81e8 + -0x7fd8" (identifier "pcStack_81e8") (+ "+") (number_literal "-0x7fd8")) () ")"))))) (; ";"))) (} "}")))) (if_statement "if (*(int *)(iVar24 + -0x31c8) == 0) {\n        iVar2 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iVar2 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47f4;\n      }" (if "if") (parenthesized_expression "(*(int *)(iVar24 + -0x31c8) == 0)" (( "(") (binary_expression "*(int *)(iVar24 + -0x31c8) == 0" (pointer_expression "*(int *)(iVar24 + -0x31c8)" (* "*") (cast_expression "(int *)(iVar24 + -0x31c8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar24 + -0x31c8)" (( "(") (binary_expression "iVar24 + -0x31c8" (identifier "iVar24") (+ "+") (number_literal "-0x31c8")) () ")")))) (== "==") (number_literal "0")) () ")")) (compound_statement "{\n        iVar2 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }" ({ "{") (expression_statement "iVar2 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;" (assignment_expression "iVar2 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc" (identifier "iVar2") (= "=") (binary_expression "*(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fc8)" (* "*") (cast_expression "(int *)(pcStack_81e8 + -0x7fc8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcStack_81e8 + -0x7fc8)" (( "(") (binary_expression "pcStack_81e8 + -0x7fc8" (identifier "pcStack_81e8") (+ "+") (number_literal "-0x7fc8")) () ")")))) (+ "+") (number_literal "-0x17dc"))) (; ";")) (} "}")) (else_clause "else {\n        iVar2 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47f4;\n      }" (else "else") (compound_statement "{\n        iVar2 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47f4;\n      }" ({ "{") (expression_statement "iVar2 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47f4;" (assignment_expression "iVar2 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47f4" (identifier "iVar2") (= "=") (binary_expression "*(int *)(pcStack_81e8 + -0x7fc8) + -0x47f4" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fc8)" (* "*") (cast_expression "(int *)(pcStack_81e8 + -0x7fc8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcStack_81e8 + -0x7fc8)" (( "(") (binary_expression "pcStack_81e8 + -0x7fc8" (identifier "pcStack_81e8") (+ "+") (number_literal "-0x7fc8")) () ")")))) (+ "+") (number_literal "-0x47f4"))) (; ";")) (} "}")))) (if_statement "if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31cc) == 0) {\n        iVar24 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iVar24 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47f0;\n      }" (if "if") (parenthesized_expression "(*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31cc) == 0)" (( "(") (binary_expression "*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31cc) == 0" (pointer_expression "*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31cc)" (* "*") (cast_expression "(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31cc)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31cc)" (( "(") (binary_expression "*(int *)(pcStack_81e8 + -0x7fd8) + -0x31cc" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fd8)" (* "*") (cast_expression "(int *)(pcStack_81e8 + -0x7fd8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcStack_81e8 + -0x7fd8)" (( "(") (binary_expression "pcStack_81e8 + -0x7fd8" (identifier "pcStack_81e8") (+ "+") (number_literal "-0x7fd8")) () ")")))) (+ "+") (number_literal "-0x31cc")) () ")")))) (== "==") (number_literal "0")) () ")")) (compound_statement "{\n        iVar24 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }" ({ "{") (expression_statement "iVar24 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;" (assignment_expression "iVar24 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc" (identifier "iVar24") (= "=") (binary_expression "*(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fc8)" (* "*") (cast_expression "(int *)(pcStack_81e8 + -0x7fc8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcStack_81e8 + -0x7fc8)" (( "(") (binary_expression "pcStack_81e8 + -0x7fc8" (identifier "pcStack_81e8") (+ "+") (number_literal "-0x7fc8")) () ")")))) (+ "+") (number_literal "-0x17dc"))) (; ";")) (} "}")) (else_clause "else {\n        iVar24 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47f0;\n      }" (else "else") (compound_statement "{\n        iVar24 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47f0;\n      }" ({ "{") (expression_statement "iVar24 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47f0;" (assignment_expression "iVar24 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47f0" (identifier "iVar24") (= "=") (binary_expression "*(int *)(pcStack_81e8 + -0x7fc8) + -0x47f0" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fc8)" (* "*") (cast_expression "(int *)(pcStack_81e8 + -0x7fc8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcStack_81e8 + -0x7fc8)" (( "(") (binary_expression "pcStack_81e8 + -0x7fc8" (identifier "pcStack_81e8") (+ "+") (number_literal "-0x7fc8")) () ")")))) (+ "+") (number_literal "-0x47f0"))) (; ";")) (} "}")))) (if_statement "if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d0) == 0) {\n        iVar15 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iVar15 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47ec;\n      }" (if "if") (parenthesized_expression "(*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d0) == 0)" (( "(") (binary_expression "*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d0) == 0" (pointer_expression "*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d0)" (* "*") (cast_expression "(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d0)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d0)" (( "(") (binary_expression "*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d0" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fd8)" (* "*") (cast_expression "(int *)(pcStack_81e8 + -0x7fd8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcStack_81e8 + -0x7fd8)" (( "(") (binary_expression "pcStack_81e8 + -0x7fd8" (identifier "pcStack_81e8") (+ "+") (number_literal "-0x7fd8")) () ")")))) (+ "+") (number_literal "-0x31d0")) () ")")))) (== "==") (number_literal "0")) () ")")) (compound_statement "{\n        iVar15 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }" ({ "{") (expression_statement "iVar15 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;" (assignment_expression "iVar15 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc" (identifier "iVar15") (= "=") (binary_expression "*(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fc8)" (* "*") (cast_expression "(int *)(pcStack_81e8 + -0x7fc8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcStack_81e8 + -0x7fc8)" (( "(") (binary_expression "pcStack_81e8 + -0x7fc8" (identifier "pcStack_81e8") (+ "+") (number_literal "-0x7fc8")) () ")")))) (+ "+") (number_literal "-0x17dc"))) (; ";")) (} "}")) (else_clause "else {\n        iVar15 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47ec;\n      }" (else "else") (compound_statement "{\n        iVar15 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47ec;\n      }" ({ "{") (expression_statement "iVar15 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47ec;" (assignment_expression "iVar15 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47ec" (identifier "iVar15") (= "=") (binary_expression "*(int *)(pcStack_81e8 + -0x7fc8) + -0x47ec" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fc8)" (* "*") (cast_expression "(int *)(pcStack_81e8 + -0x7fc8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcStack_81e8 + -0x7fc8)" (( "(") (binary_expression "pcStack_81e8 + -0x7fc8" (identifier "pcStack_81e8") (+ "+") (number_literal "-0x7fc8")) () ")")))) (+ "+") (number_literal "-0x47ec"))) (; ";")) (} "}")))) (if_statement "if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4) == 0) {\n        iStack_81f0 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }\n      else {\n        iStack_81f0 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47e8;\n      }" (if "if") (parenthesized_expression "(*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4) == 0)" (( "(") (binary_expression "*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4) == 0" (pointer_expression "*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4)" (* "*") (cast_expression "(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4)" (( "(") (binary_expression "*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fd8)" (* "*") (cast_expression "(int *)(pcStack_81e8 + -0x7fd8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcStack_81e8 + -0x7fd8)" (( "(") (binary_expression "pcStack_81e8 + -0x7fd8" (identifier "pcStack_81e8") (+ "+") (number_literal "-0x7fd8")) () ")")))) (+ "+") (number_literal "-0x31d4")) () ")")))) (== "==") (number_literal "0")) () ")")) (compound_statement "{\n        iStack_81f0 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;\n      }" ({ "{") (expression_statement "iStack_81f0 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;" (assignment_expression "iStack_81f0 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc" (identifier "iStack_81f0") (= "=") (binary_expression "*(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fc8)" (* "*") (cast_expression "(int *)(pcStack_81e8 + -0x7fc8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcStack_81e8 + -0x7fc8)" (( "(") (binary_expression "pcStack_81e8 + -0x7fc8" (identifier "pcStack_81e8") (+ "+") (number_literal "-0x7fc8")) () ")")))) (+ "+") (number_literal "-0x17dc"))) (; ";")) (} "}")) (else_clause "else {\n        iStack_81f0 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47e8;\n      }" (else "else") (compound_statement "{\n        iStack_81f0 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47e8;\n      }" ({ "{") (expression_statement "iStack_81f0 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47e8;" (assignment_expression "iStack_81f0 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47e8" (identifier "iStack_81f0") (= "=") (binary_expression "*(int *)(pcStack_81e8 + -0x7fc8) + -0x47e8" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fc8)" (* "*") (cast_expression "(int *)(pcStack_81e8 + -0x7fc8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcStack_81e8 + -0x7fc8)" (( "(") (binary_expression "pcStack_81e8 + -0x7fc8" (identifier "pcStack_81e8") (+ "+") (number_literal "-0x7fc8")) () ")")))) (+ "+") (number_literal "-0x47e8"))) (; ";")) (} "}")))) (expression_statement "pcStack_81ec = pcVar21;" (assignment_expression "pcStack_81ec = pcVar21" (identifier "pcStack_81ec") (= "=") (identifier "pcVar21")) (; ";")) (expression_statement "uVar7 = dupprintf(*(int *)(pcStack_81e8 + -0x7fc8) + -0x46c0,iVar2,iVar24,iVar15);" (assignment_expression "uVar7 = dupprintf(*(int *)(pcStack_81e8 + -0x7fc8) + -0x46c0,iVar2,iVar24,iVar15)" (identifier "uVar7") (= "=") (call_expression "dupprintf(*(int *)(pcStack_81e8 + -0x7fc8) + -0x46c0,iVar2,iVar24,iVar15)" (identifier "dupprintf") (argument_list "(*(int *)(pcStack_81e8 + -0x7fc8) + -0x46c0,iVar2,iVar24,iVar15)" (( "(") (binary_expression "*(int *)(pcStack_81e8 + -0x7fc8) + -0x46c0" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fc8)" (* "*") (cast_expression "(int *)(pcStack_81e8 + -0x7fc8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcStack_81e8 + -0x7fc8)" (( "(") (binary_expression "pcStack_81e8 + -0x7fc8" (identifier "pcStack_81e8") (+ "+") (number_literal "-0x7fc8")) () ")")))) (+ "+") (number_literal "-0x46c0")) (, ",") (identifier "iVar2") (, ",") (identifier "iVar24") (, ",") (identifier "iVar15") () ")")))) (; ";")) (expression_statement "FUN_00028a00(pcVar13,pcVar27,uVar7);" (call_expression "FUN_00028a00(pcVar13,pcVar27,uVar7)" (identifier "FUN_00028a00") (argument_list "(pcVar13,pcVar27,uVar7)" (( "(") (identifier "pcVar13") (, ",") (identifier "pcVar27") (, ",") (identifier "uVar7") () ")"))) (; ";")) (expression_statement "safefree(uVar7);" (call_expression "safefree(uVar7)" (identifier "safefree") (argument_list "(uVar7)" (( "(") (identifier "uVar7") () ")"))) (; ";")) (expression_statement "pcVar27 = *(char **)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4);" (assignment_expression "pcVar27 = *(char **)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4)" (identifier "pcVar27") (= "=") (pointer_expression "*(char **)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4)" (* "*") (cast_expression "(char **)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4)" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4)" (( "(") (binary_expression "*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fd8)" (* "*") (cast_expression "(int *)(pcStack_81e8 + -0x7fd8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcStack_81e8 + -0x7fd8)" (( "(") (binary_expression "pcStack_81e8 + -0x7fd8" (identifier "pcStack_81e8") (+ "+") (number_literal "-0x7fd8")) () ")")))) (+ "+") (number_literal "-0x31d4")) () ")"))))) (; ";")) (expression_statement "iVar2 = scp_source_setup(pcVar21);" (assignment_expression "iVar2 = scp_source_setup(pcVar21)" (identifier "iVar2") (= "=") (call_expression "scp_source_setup(pcVar21)" (identifier "scp_source_setup") (argument_list "(pcVar21)" (( "(") (identifier "pcVar21") () ")")))) (; ";")) (if_statement "if ((iVar2 == 0) && (1 < iVar4)) {\n        puVar18 = puVar23 + iVar4 + -1;\n        iVar24 = *(int *)(pcStack_81e8 + -0x7db0);\n        iVar25 = *(int *)(pcStack_81e8 + -0x7fc8);\n        iVar15 = *(int *)(pcStack_81e8 + -0x7db0);\n        iVar4 = *(int *)(pcStack_81e8 + -0x7fc8);\n        do {\n          pcVar13 = (char *)*puVar23;\n          iVar2 = FUN_00028968(pcVar13);\n          if (iVar2 == 0) {\n            pcVar27 = (char *)0x1;\n            iVar2 = (**(code **)(pcStack_81e8 + -0x7c30))(pcVar13,1,pcVar13);\n            if (iVar2 == 0) {\n              (*(code *)(iVar15 + -0x59a8))(iVar25 + -0x4688);\n              pcVar27 = pcVar13;\n            }\n            else if (iVar2 == 1) {\n              (*(code *)(iVar24 + -0x4b8c))(pcVar13);\n            }\n            else {\n              iVar2 = (**(code **)(pcStack_81e8 + -0x7c2c))();\n              if (iVar2 == 0) {\n                (*(code *)(iVar15 + -0x59a8))(iVar25 + -0x4688);\n                pcVar27 = pcVar13;\n              }\n              else {\n                while (iVar26 = (**(code **)(pcStack_81e8 + -0x7c28))(iVar2), iVar26 != 0) {\n                  (*(code *)(iVar24 + -0x4b8c))(iVar26);\n                  safefree(iVar26);\n                }\n                (**(code **)(pcStack_81e8 + -0x7c24))(iVar2);\n              }\n            }\n          }\n          else {\n            pcVar27 = (char *)(iVar4 + -0x46ac);\n            FUN_00027ff8(**(undefined4 **)(pcStack_81e8 + -0x7460));\n            *(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31e0) =\n                 *(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31e0) + 1;\n          }\n          puVar23 = puVar23 + 1;\n          iVar2 = *(int *)(pcStack_81e8 + -0x7fd8);\n        } while (puVar18 != puVar23);\n        goto LAB_0002e788;\n      }" (if "if") (parenthesized_expression "((iVar2 == 0) && (1 < iVar4))" (( "(") (binary_expression "(iVar2 == 0) && (1 < iVar4)" (parenthesized_expression "(iVar2 == 0)" (( "(") (binary_expression "iVar2 == 0" (identifier "iVar2") (== "==") (number_literal "0")) () ")")) (&& "&&") (parenthesized_expression "(1 < iVar4)" (( "(") (binary_expression "1 < iVar4" (number_literal "1") (< "<") (identifier "iVar4")) () ")"))) () ")")) (compound_statement "{\n        puVar18 = puVar23 + iVar4 + -1;\n        iVar24 = *(int *)(pcStack_81e8 + -0x7db0);\n        iVar25 = *(int *)(pcStack_81e8 + -0x7fc8);\n        iVar15 = *(int *)(pcStack_81e8 + -0x7db0);\n        iVar4 = *(int *)(pcStack_81e8 + -0x7fc8);\n        do {\n          pcVar13 = (char *)*puVar23;\n          iVar2 = FUN_00028968(pcVar13);\n          if (iVar2 == 0) {\n            pcVar27 = (char *)0x1;\n            iVar2 = (**(code **)(pcStack_81e8 + -0x7c30))(pcVar13,1,pcVar13);\n            if (iVar2 == 0) {\n              (*(code *)(iVar15 + -0x59a8))(iVar25 + -0x4688);\n              pcVar27 = pcVar13;\n            }\n            else if (iVar2 == 1) {\n              (*(code *)(iVar24 + -0x4b8c))(pcVar13);\n            }\n            else {\n              iVar2 = (**(code **)(pcStack_81e8 + -0x7c2c))();\n              if (iVar2 == 0) {\n                (*(code *)(iVar15 + -0x59a8))(iVar25 + -0x4688);\n                pcVar27 = pcVar13;\n              }\n              else {\n                while (iVar26 = (**(code **)(pcStack_81e8 + -0x7c28))(iVar2), iVar26 != 0) {\n                  (*(code *)(iVar24 + -0x4b8c))(iVar26);\n                  safefree(iVar26);\n                }\n                (**(code **)(pcStack_81e8 + -0x7c24))(iVar2);\n              }\n            }\n          }\n          else {\n            pcVar27 = (char *)(iVar4 + -0x46ac);\n            FUN_00027ff8(**(undefined4 **)(pcStack_81e8 + -0x7460));\n            *(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31e0) =\n                 *(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31e0) + 1;\n          }\n          puVar23 = puVar23 + 1;\n          iVar2 = *(int *)(pcStack_81e8 + -0x7fd8);\n        } while (puVar18 != puVar23);\n        goto LAB_0002e788;\n      }" ({ "{") (expression_statement "puVar18 = puVar23 + iVar4 + -1;" (assignment_expression "puVar18 = puVar23 + iVar4 + -1" (identifier "puVar18") (= "=") (binary_expression "puVar23 + iVar4 + -1" (binary_expression "puVar23 + iVar4" (identifier "puVar23") (+ "+") (identifier "iVar4")) (+ "+") (number_literal "-1"))) (; ";")) (expression_statement "iVar24 = *(int *)(pcStack_81e8 + -0x7db0);" (assignment_expression "iVar24 = *(int *)(pcStack_81e8 + -0x7db0)" (identifier "iVar24") (= "=") (pointer_expression "*(int *)(pcStack_81e8 + -0x7db0)" (* "*") (cast_expression "(int *)(pcStack_81e8 + -0x7db0)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcStack_81e8 + -0x7db0)" (( "(") (binary_expression "pcStack_81e8 + -0x7db0" (identifier "pcStack_81e8") (+ "+") (number_literal "-0x7db0")) () ")"))))) (; ";")) (expression_statement "iVar25 = *(int *)(pcStack_81e8 + -0x7fc8);" (assignment_expression "iVar25 = *(int *)(pcStack_81e8 + -0x7fc8)" (identifier "iVar25") (= "=") (pointer_expression "*(int *)(pcStack_81e8 + -0x7fc8)" (* "*") (cast_expression "(int *)(pcStack_81e8 + -0x7fc8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcStack_81e8 + -0x7fc8)" (( "(") (binary_expression "pcStack_81e8 + -0x7fc8" (identifier "pcStack_81e8") (+ "+") (number_literal "-0x7fc8")) () ")"))))) (; ";")) (expression_statement "iVar15 = *(int *)(pcStack_81e8 + -0x7db0);" (assignment_expression "iVar15 = *(int *)(pcStack_81e8 + -0x7db0)" (identifier "iVar15") (= "=") (pointer_expression "*(int *)(pcStack_81e8 + -0x7db0)" (* "*") (cast_expression "(int *)(pcStack_81e8 + -0x7db0)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcStack_81e8 + -0x7db0)" (( "(") (binary_expression "pcStack_81e8 + -0x7db0" (identifier "pcStack_81e8") (+ "+") (number_literal "-0x7db0")) () ")"))))) (; ";")) (expression_statement "iVar4 = *(int *)(pcStack_81e8 + -0x7fc8);" (assignment_expression "iVar4 = *(int *)(pcStack_81e8 + -0x7fc8)" (identifier "iVar4") (= "=") (pointer_expression "*(int *)(pcStack_81e8 + -0x7fc8)" (* "*") (cast_expression "(int *)(pcStack_81e8 + -0x7fc8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcStack_81e8 + -0x7fc8)" (( "(") (binary_expression "pcStack_81e8 + -0x7fc8" (identifier "pcStack_81e8") (+ "+") (number_literal "-0x7fc8")) () ")"))))) (; ";")) (do_statement "do {\n          pcVar13 = (char *)*puVar23;\n          iVar2 = FUN_00028968(pcVar13);\n          if (iVar2 == 0) {\n            pcVar27 = (char *)0x1;\n            iVar2 = (**(code **)(pcStack_81e8 + -0x7c30))(pcVar13,1,pcVar13);\n            if (iVar2 == 0) {\n              (*(code *)(iVar15 + -0x59a8))(iVar25 + -0x4688);\n              pcVar27 = pcVar13;\n            }\n            else if (iVar2 == 1) {\n              (*(code *)(iVar24 + -0x4b8c))(pcVar13);\n            }\n            else {\n              iVar2 = (**(code **)(pcStack_81e8 + -0x7c2c))();\n              if (iVar2 == 0) {\n                (*(code *)(iVar15 + -0x59a8))(iVar25 + -0x4688);\n                pcVar27 = pcVar13;\n              }\n              else {\n                while (iVar26 = (**(code **)(pcStack_81e8 + -0x7c28))(iVar2), iVar26 != 0) {\n                  (*(code *)(iVar24 + -0x4b8c))(iVar26);\n                  safefree(iVar26);\n                }\n                (**(code **)(pcStack_81e8 + -0x7c24))(iVar2);\n              }\n            }\n          }\n          else {\n            pcVar27 = (char *)(iVar4 + -0x46ac);\n            FUN_00027ff8(**(undefined4 **)(pcStack_81e8 + -0x7460));\n            *(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31e0) =\n                 *(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31e0) + 1;\n          }\n          puVar23 = puVar23 + 1;\n          iVar2 = *(int *)(pcStack_81e8 + -0x7fd8);\n        } while (puVar18 != puVar23);" (do "do") (compound_statement "{\n          pcVar13 = (char *)*puVar23;\n          iVar2 = FUN_00028968(pcVar13);\n          if (iVar2 == 0) {\n            pcVar27 = (char *)0x1;\n            iVar2 = (**(code **)(pcStack_81e8 + -0x7c30))(pcVar13,1,pcVar13);\n            if (iVar2 == 0) {\n              (*(code *)(iVar15 + -0x59a8))(iVar25 + -0x4688);\n              pcVar27 = pcVar13;\n            }\n            else if (iVar2 == 1) {\n              (*(code *)(iVar24 + -0x4b8c))(pcVar13);\n            }\n            else {\n              iVar2 = (**(code **)(pcStack_81e8 + -0x7c2c))();\n              if (iVar2 == 0) {\n                (*(code *)(iVar15 + -0x59a8))(iVar25 + -0x4688);\n                pcVar27 = pcVar13;\n              }\n              else {\n                while (iVar26 = (**(code **)(pcStack_81e8 + -0x7c28))(iVar2), iVar26 != 0) {\n                  (*(code *)(iVar24 + -0x4b8c))(iVar26);\n                  safefree(iVar26);\n                }\n                (**(code **)(pcStack_81e8 + -0x7c24))(iVar2);\n              }\n            }\n          }\n          else {\n            pcVar27 = (char *)(iVar4 + -0x46ac);\n            FUN_00027ff8(**(undefined4 **)(pcStack_81e8 + -0x7460));\n            *(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31e0) =\n                 *(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31e0) + 1;\n          }\n          puVar23 = puVar23 + 1;\n          iVar2 = *(int *)(pcStack_81e8 + -0x7fd8);\n        }" ({ "{") (expression_statement "pcVar13 = (char *)*puVar23;" (assignment_expression "pcVar13 = (char *)*puVar23" (identifier "pcVar13") (= "=") (cast_expression "(char *)*puVar23" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (pointer_expression "*puVar23" (* "*") (identifier "puVar23")))) (; ";")) (expression_statement "iVar2 = FUN_00028968(pcVar13);" (assignment_expression "iVar2 = FUN_00028968(pcVar13)" (identifier "iVar2") (= "=") (call_expression "FUN_00028968(pcVar13)" (identifier "FUN_00028968") (argument_list "(pcVar13)" (( "(") (identifier "pcVar13") () ")")))) (; ";")) (if_statement "if (iVar2 == 0) {\n            pcVar27 = (char *)0x1;\n            iVar2 = (**(code **)(pcStack_81e8 + -0x7c30))(pcVar13,1,pcVar13);\n            if (iVar2 == 0) {\n              (*(code *)(iVar15 + -0x59a8))(iVar25 + -0x4688);\n              pcVar27 = pcVar13;\n            }\n            else if (iVar2 == 1) {\n              (*(code *)(iVar24 + -0x4b8c))(pcVar13);\n            }\n            else {\n              iVar2 = (**(code **)(pcStack_81e8 + -0x7c2c))();\n              if (iVar2 == 0) {\n                (*(code *)(iVar15 + -0x59a8))(iVar25 + -0x4688);\n                pcVar27 = pcVar13;\n              }\n              else {\n                while (iVar26 = (**(code **)(pcStack_81e8 + -0x7c28))(iVar2), iVar26 != 0) {\n                  (*(code *)(iVar24 + -0x4b8c))(iVar26);\n                  safefree(iVar26);\n                }\n                (**(code **)(pcStack_81e8 + -0x7c24))(iVar2);\n              }\n            }\n          }\n          else {\n            pcVar27 = (char *)(iVar4 + -0x46ac);\n            FUN_00027ff8(**(undefined4 **)(pcStack_81e8 + -0x7460));\n            *(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31e0) =\n                 *(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31e0) + 1;\n          }" (if "if") (parenthesized_expression "(iVar2 == 0)" (( "(") (binary_expression "iVar2 == 0" (identifier "iVar2") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n            pcVar27 = (char *)0x1;\n            iVar2 = (**(code **)(pcStack_81e8 + -0x7c30))(pcVar13,1,pcVar13);\n            if (iVar2 == 0) {\n              (*(code *)(iVar15 + -0x59a8))(iVar25 + -0x4688);\n              pcVar27 = pcVar13;\n            }\n            else if (iVar2 == 1) {\n              (*(code *)(iVar24 + -0x4b8c))(pcVar13);\n            }\n            else {\n              iVar2 = (**(code **)(pcStack_81e8 + -0x7c2c))();\n              if (iVar2 == 0) {\n                (*(code *)(iVar15 + -0x59a8))(iVar25 + -0x4688);\n                pcVar27 = pcVar13;\n              }\n              else {\n                while (iVar26 = (**(code **)(pcStack_81e8 + -0x7c28))(iVar2), iVar26 != 0) {\n                  (*(code *)(iVar24 + -0x4b8c))(iVar26);\n                  safefree(iVar26);\n                }\n                (**(code **)(pcStack_81e8 + -0x7c24))(iVar2);\n              }\n            }\n          }" ({ "{") (expression_statement "pcVar27 = (char *)0x1;" (assignment_expression "pcVar27 = (char *)0x1" (identifier "pcVar27") (= "=") (cast_expression "(char *)0x1" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x1"))) (; ";")) (expression_statement "iVar2 = (**(code **)(pcStack_81e8 + -0x7c30))(pcVar13,1,pcVar13);" (assignment_expression "iVar2 = (**(code **)(pcStack_81e8 + -0x7c30))(pcVar13,1,pcVar13)" (identifier "iVar2") (= "=") (call_expression "(**(code **)(pcStack_81e8 + -0x7c30))(pcVar13,1,pcVar13)" (parenthesized_expression "(**(code **)(pcStack_81e8 + -0x7c30))" (( "(") (pointer_expression "**(code **)(pcStack_81e8 + -0x7c30)" (* "*") (pointer_expression "*(code **)(pcStack_81e8 + -0x7c30)" (* "*") (cast_expression "(code **)(pcStack_81e8 + -0x7c30)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_81e8 + -0x7c30)" (( "(") (binary_expression "pcStack_81e8 + -0x7c30" (identifier "pcStack_81e8") (+ "+") (number_literal "-0x7c30")) () ")"))))) () ")")) (argument_list "(pcVar13,1,pcVar13)" (( "(") (identifier "pcVar13") (, ",") (number_literal "1") (, ",") (identifier "pcVar13") () ")")))) (; ";")) (if_statement "if (iVar2 == 0) {\n              (*(code *)(iVar15 + -0x59a8))(iVar25 + -0x4688);\n              pcVar27 = pcVar13;\n            }\n            else if (iVar2 == 1) {\n              (*(code *)(iVar24 + -0x4b8c))(pcVar13);\n            }\n            else {\n              iVar2 = (**(code **)(pcStack_81e8 + -0x7c2c))();\n              if (iVar2 == 0) {\n                (*(code *)(iVar15 + -0x59a8))(iVar25 + -0x4688);\n                pcVar27 = pcVar13;\n              }\n              else {\n                while (iVar26 = (**(code **)(pcStack_81e8 + -0x7c28))(iVar2), iVar26 != 0) {\n                  (*(code *)(iVar24 + -0x4b8c))(iVar26);\n                  safefree(iVar26);\n                }\n                (**(code **)(pcStack_81e8 + -0x7c24))(iVar2);\n              }\n            }" (if "if") (parenthesized_expression "(iVar2 == 0)" (( "(") (binary_expression "iVar2 == 0" (identifier "iVar2") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n              (*(code *)(iVar15 + -0x59a8))(iVar25 + -0x4688);\n              pcVar27 = pcVar13;\n            }" ({ "{") (expression_statement "(*(code *)(iVar15 + -0x59a8))(iVar25 + -0x4688);" (call_expression "(*(code *)(iVar15 + -0x59a8))(iVar25 + -0x4688)" (parenthesized_expression "(*(code *)(iVar15 + -0x59a8))" (( "(") (pointer_expression "*(code *)(iVar15 + -0x59a8)" (* "*") (cast_expression "(code *)(iVar15 + -0x59a8)" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar15 + -0x59a8)" (( "(") (binary_expression "iVar15 + -0x59a8" (identifier "iVar15") (+ "+") (number_literal "-0x59a8")) () ")")))) () ")")) (argument_list "(iVar25 + -0x4688)" (( "(") (binary_expression "iVar25 + -0x4688" (identifier "iVar25") (+ "+") (number_literal "-0x4688")) () ")"))) (; ";")) (expression_statement "pcVar27 = pcVar13;" (assignment_expression "pcVar27 = pcVar13" (identifier "pcVar27") (= "=") (identifier "pcVar13")) (; ";")) (} "}")) (else_clause "else if (iVar2 == 1) {\n              (*(code *)(iVar24 + -0x4b8c))(pcVar13);\n            }\n            else {\n              iVar2 = (**(code **)(pcStack_81e8 + -0x7c2c))();\n              if (iVar2 == 0) {\n                (*(code *)(iVar15 + -0x59a8))(iVar25 + -0x4688);\n                pcVar27 = pcVar13;\n              }\n              else {\n                while (iVar26 = (**(code **)(pcStack_81e8 + -0x7c28))(iVar2), iVar26 != 0) {\n                  (*(code *)(iVar24 + -0x4b8c))(iVar26);\n                  safefree(iVar26);\n                }\n                (**(code **)(pcStack_81e8 + -0x7c24))(iVar2);\n              }\n            }" (else "else") (if_statement "if (iVar2 == 1) {\n              (*(code *)(iVar24 + -0x4b8c))(pcVar13);\n            }\n            else {\n              iVar2 = (**(code **)(pcStack_81e8 + -0x7c2c))();\n              if (iVar2 == 0) {\n                (*(code *)(iVar15 + -0x59a8))(iVar25 + -0x4688);\n                pcVar27 = pcVar13;\n              }\n              else {\n                while (iVar26 = (**(code **)(pcStack_81e8 + -0x7c28))(iVar2), iVar26 != 0) {\n                  (*(code *)(iVar24 + -0x4b8c))(iVar26);\n                  safefree(iVar26);\n                }\n                (**(code **)(pcStack_81e8 + -0x7c24))(iVar2);\n              }\n            }" (if "if") (parenthesized_expression "(iVar2 == 1)" (( "(") (binary_expression "iVar2 == 1" (identifier "iVar2") (== "==") (number_literal "1")) () ")")) (compound_statement "{\n              (*(code *)(iVar24 + -0x4b8c))(pcVar13);\n            }" ({ "{") (expression_statement "(*(code *)(iVar24 + -0x4b8c))(pcVar13);" (call_expression "(*(code *)(iVar24 + -0x4b8c))(pcVar13)" (parenthesized_expression "(*(code *)(iVar24 + -0x4b8c))" (( "(") (pointer_expression "*(code *)(iVar24 + -0x4b8c)" (* "*") (cast_expression "(code *)(iVar24 + -0x4b8c)" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar24 + -0x4b8c)" (( "(") (binary_expression "iVar24 + -0x4b8c" (identifier "iVar24") (+ "+") (number_literal "-0x4b8c")) () ")")))) () ")")) (argument_list "(pcVar13)" (( "(") (identifier "pcVar13") () ")"))) (; ";")) (} "}")) (else_clause "else {\n              iVar2 = (**(code **)(pcStack_81e8 + -0x7c2c))();\n              if (iVar2 == 0) {\n                (*(code *)(iVar15 + -0x59a8))(iVar25 + -0x4688);\n                pcVar27 = pcVar13;\n              }\n              else {\n                while (iVar26 = (**(code **)(pcStack_81e8 + -0x7c28))(iVar2), iVar26 != 0) {\n                  (*(code *)(iVar24 + -0x4b8c))(iVar26);\n                  safefree(iVar26);\n                }\n                (**(code **)(pcStack_81e8 + -0x7c24))(iVar2);\n              }\n            }" (else "else") (compound_statement "{\n              iVar2 = (**(code **)(pcStack_81e8 + -0x7c2c))();\n              if (iVar2 == 0) {\n                (*(code *)(iVar15 + -0x59a8))(iVar25 + -0x4688);\n                pcVar27 = pcVar13;\n              }\n              else {\n                while (iVar26 = (**(code **)(pcStack_81e8 + -0x7c28))(iVar2), iVar26 != 0) {\n                  (*(code *)(iVar24 + -0x4b8c))(iVar26);\n                  safefree(iVar26);\n                }\n                (**(code **)(pcStack_81e8 + -0x7c24))(iVar2);\n              }\n            }" ({ "{") (expression_statement "iVar2 = (**(code **)(pcStack_81e8 + -0x7c2c))();" (assignment_expression "iVar2 = (**(code **)(pcStack_81e8 + -0x7c2c))()" (identifier "iVar2") (= "=") (call_expression "(**(code **)(pcStack_81e8 + -0x7c2c))()" (parenthesized_expression "(**(code **)(pcStack_81e8 + -0x7c2c))" (( "(") (pointer_expression "**(code **)(pcStack_81e8 + -0x7c2c)" (* "*") (pointer_expression "*(code **)(pcStack_81e8 + -0x7c2c)" (* "*") (cast_expression "(code **)(pcStack_81e8 + -0x7c2c)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_81e8 + -0x7c2c)" (( "(") (binary_expression "pcStack_81e8 + -0x7c2c" (identifier "pcStack_81e8") (+ "+") (number_literal "-0x7c2c")) () ")"))))) () ")")) (argument_list "()" (( "(") () ")")))) (; ";")) (if_statement "if (iVar2 == 0) {\n                (*(code *)(iVar15 + -0x59a8))(iVar25 + -0x4688);\n                pcVar27 = pcVar13;\n              }\n              else {\n                while (iVar26 = (**(code **)(pcStack_81e8 + -0x7c28))(iVar2), iVar26 != 0) {\n                  (*(code *)(iVar24 + -0x4b8c))(iVar26);\n                  safefree(iVar26);\n                }\n                (**(code **)(pcStack_81e8 + -0x7c24))(iVar2);\n              }" (if "if") (parenthesized_expression "(iVar2 == 0)" (( "(") (binary_expression "iVar2 == 0" (identifier "iVar2") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n                (*(code *)(iVar15 + -0x59a8))(iVar25 + -0x4688);\n                pcVar27 = pcVar13;\n              }" ({ "{") (expression_statement "(*(code *)(iVar15 + -0x59a8))(iVar25 + -0x4688);" (call_expression "(*(code *)(iVar15 + -0x59a8))(iVar25 + -0x4688)" (parenthesized_expression "(*(code *)(iVar15 + -0x59a8))" (( "(") (pointer_expression "*(code *)(iVar15 + -0x59a8)" (* "*") (cast_expression "(code *)(iVar15 + -0x59a8)" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar15 + -0x59a8)" (( "(") (binary_expression "iVar15 + -0x59a8" (identifier "iVar15") (+ "+") (number_literal "-0x59a8")) () ")")))) () ")")) (argument_list "(iVar25 + -0x4688)" (( "(") (binary_expression "iVar25 + -0x4688" (identifier "iVar25") (+ "+") (number_literal "-0x4688")) () ")"))) (; ";")) (expression_statement "pcVar27 = pcVar13;" (assignment_expression "pcVar27 = pcVar13" (identifier "pcVar27") (= "=") (identifier "pcVar13")) (; ";")) (} "}")) (else_clause "else {\n                while (iVar26 = (**(code **)(pcStack_81e8 + -0x7c28))(iVar2), iVar26 != 0) {\n                  (*(code *)(iVar24 + -0x4b8c))(iVar26);\n                  safefree(iVar26);\n                }\n                (**(code **)(pcStack_81e8 + -0x7c24))(iVar2);\n              }" (else "else") (compound_statement "{\n                while (iVar26 = (**(code **)(pcStack_81e8 + -0x7c28))(iVar2), iVar26 != 0) {\n                  (*(code *)(iVar24 + -0x4b8c))(iVar26);\n                  safefree(iVar26);\n                }\n                (**(code **)(pcStack_81e8 + -0x7c24))(iVar2);\n              }" ({ "{") (while_statement "while (iVar26 = (**(code **)(pcStack_81e8 + -0x7c28))(iVar2), iVar26 != 0) {\n                  (*(code *)(iVar24 + -0x4b8c))(iVar26);\n                  safefree(iVar26);\n                }" (while "while") (parenthesized_expression "(iVar26 = (**(code **)(pcStack_81e8 + -0x7c28))(iVar2), iVar26 != 0)" (( "(") (comma_expression "iVar26 = (**(code **)(pcStack_81e8 + -0x7c28))(iVar2), iVar26 != 0" (assignment_expression "iVar26 = (**(code **)(pcStack_81e8 + -0x7c28))(iVar2)" (identifier "iVar26") (= "=") (call_expression "(**(code **)(pcStack_81e8 + -0x7c28))(iVar2)" (parenthesized_expression "(**(code **)(pcStack_81e8 + -0x7c28))" (( "(") (pointer_expression "**(code **)(pcStack_81e8 + -0x7c28)" (* "*") (pointer_expression "*(code **)(pcStack_81e8 + -0x7c28)" (* "*") (cast_expression "(code **)(pcStack_81e8 + -0x7c28)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_81e8 + -0x7c28)" (( "(") (binary_expression "pcStack_81e8 + -0x7c28" (identifier "pcStack_81e8") (+ "+") (number_literal "-0x7c28")) () ")"))))) () ")")) (argument_list "(iVar2)" (( "(") (identifier "iVar2") () ")")))) (, ",") (binary_expression "iVar26 != 0" (identifier "iVar26") (!= "!=") (number_literal "0"))) () ")")) (compound_statement "{\n                  (*(code *)(iVar24 + -0x4b8c))(iVar26);\n                  safefree(iVar26);\n                }" ({ "{") (expression_statement "(*(code *)(iVar24 + -0x4b8c))(iVar26);" (call_expression "(*(code *)(iVar24 + -0x4b8c))(iVar26)" (parenthesized_expression "(*(code *)(iVar24 + -0x4b8c))" (( "(") (pointer_expression "*(code *)(iVar24 + -0x4b8c)" (* "*") (cast_expression "(code *)(iVar24 + -0x4b8c)" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar24 + -0x4b8c)" (( "(") (binary_expression "iVar24 + -0x4b8c" (identifier "iVar24") (+ "+") (number_literal "-0x4b8c")) () ")")))) () ")")) (argument_list "(iVar26)" (( "(") (identifier "iVar26") () ")"))) (; ";")) (expression_statement "safefree(iVar26);" (call_expression "safefree(iVar26)" (identifier "safefree") (argument_list "(iVar26)" (( "(") (identifier "iVar26") () ")"))) (; ";")) (} "}"))) (expression_statement "(**(code **)(pcStack_81e8 + -0x7c24))(iVar2);" (call_expression "(**(code **)(pcStack_81e8 + -0x7c24))(iVar2)" (parenthesized_expression "(**(code **)(pcStack_81e8 + -0x7c24))" (( "(") (pointer_expression "**(code **)(pcStack_81e8 + -0x7c24)" (* "*") (pointer_expression "*(code **)(pcStack_81e8 + -0x7c24)" (* "*") (cast_expression "(code **)(pcStack_81e8 + -0x7c24)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_81e8 + -0x7c24)" (( "(") (binary_expression "pcStack_81e8 + -0x7c24" (identifier "pcStack_81e8") (+ "+") (number_literal "-0x7c24")) () ")"))))) () ")")) (argument_list "(iVar2)" (( "(") (identifier "iVar2") () ")"))) (; ";")) (} "}")))) (} "}")))))) (} "}")) (else_clause "else {\n            pcVar27 = (char *)(iVar4 + -0x46ac);\n            FUN_00027ff8(**(undefined4 **)(pcStack_81e8 + -0x7460));\n            *(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31e0) =\n                 *(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31e0) + 1;\n          }" (else "else") (compound_statement "{\n            pcVar27 = (char *)(iVar4 + -0x46ac);\n            FUN_00027ff8(**(undefined4 **)(pcStack_81e8 + -0x7460));\n            *(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31e0) =\n                 *(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31e0) + 1;\n          }" ({ "{") (expression_statement "pcVar27 = (char *)(iVar4 + -0x46ac);" (assignment_expression "pcVar27 = (char *)(iVar4 + -0x46ac)" (identifier "pcVar27") (= "=") (cast_expression "(char *)(iVar4 + -0x46ac)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar4 + -0x46ac)" (( "(") (binary_expression "iVar4 + -0x46ac" (identifier "iVar4") (+ "+") (number_literal "-0x46ac")) () ")")))) (; ";")) (expression_statement "FUN_00027ff8(**(undefined4 **)(pcStack_81e8 + -0x7460));" (call_expression "FUN_00027ff8(**(undefined4 **)(pcStack_81e8 + -0x7460))" (identifier "FUN_00027ff8") (argument_list "(**(undefined4 **)(pcStack_81e8 + -0x7460))" (( "(") (pointer_expression "**(undefined4 **)(pcStack_81e8 + -0x7460)" (* "*") (pointer_expression "*(undefined4 **)(pcStack_81e8 + -0x7460)" (* "*") (cast_expression "(undefined4 **)(pcStack_81e8 + -0x7460)" (( "(") (type_descriptor "undefined4 **" (type_identifier "undefined4") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_81e8 + -0x7460)" (( "(") (binary_expression "pcStack_81e8 + -0x7460" (identifier "pcStack_81e8") (+ "+") (number_literal "-0x7460")) () ")"))))) () ")"))) (; ";")) (expression_statement "*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31e0) =\n                 *(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31e0) + 1;" (assignment_expression "*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31e0) =\n                 *(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31e0) + 1" (pointer_expression "*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31e0)" (* "*") (cast_expression "(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31e0)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31e0)" (( "(") (binary_expression "*(int *)(pcStack_81e8 + -0x7fd8) + -0x31e0" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fd8)" (* "*") (cast_expression "(int *)(pcStack_81e8 + -0x7fd8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcStack_81e8 + -0x7fd8)" (( "(") (binary_expression "pcStack_81e8 + -0x7fd8" (identifier "pcStack_81e8") (+ "+") (number_literal "-0x7fd8")) () ")")))) (+ "+") (number_literal "-0x31e0")) () ")")))) (= "=") (binary_expression "*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31e0) + 1" (pointer_expression "*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31e0)" (* "*") (cast_expression "(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31e0)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31e0)" (( "(") (binary_expression "*(int *)(pcStack_81e8 + -0x7fd8) + -0x31e0" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fd8)" (* "*") (cast_expression "(int *)(pcStack_81e8 + -0x7fd8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcStack_81e8 + -0x7fd8)" (( "(") (binary_expression "pcStack_81e8 + -0x7fd8" (identifier "pcStack_81e8") (+ "+") (number_literal "-0x7fd8")) () ")")))) (+ "+") (number_literal "-0x31e0")) () ")")))) (+ "+") (number_literal "1"))) (; ";")) (} "}")))) (expression_statement "puVar23 = puVar23 + 1;" (assignment_expression "puVar23 = puVar23 + 1" (identifier "puVar23") (= "=") (binary_expression "puVar23 + 1" (identifier "puVar23") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "iVar2 = *(int *)(pcStack_81e8 + -0x7fd8);" (assignment_expression "iVar2 = *(int *)(pcStack_81e8 + -0x7fd8)" (identifier "iVar2") (= "=") (pointer_expression "*(int *)(pcStack_81e8 + -0x7fd8)" (* "*") (cast_expression "(int *)(pcStack_81e8 + -0x7fd8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcStack_81e8 + -0x7fd8)" (( "(") (binary_expression "pcStack_81e8 + -0x7fd8" (identifier "pcStack_81e8") (+ "+") (number_literal "-0x7fd8")) () ")"))))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(puVar18 != puVar23)" (( "(") (binary_expression "puVar18 != puVar23" (identifier "puVar18") (!= "!=") (identifier "puVar23")) () ")")) (; ";")) (goto_statement "goto LAB_0002e788;" (goto "goto") (statement_identifier "LAB_0002e788") (; ";")) (} "}"))) (} "}")))) (} "}")) (else_clause "else {\n    if (iVar4 == 1) {\n      pcVar13 = (char *)*puVar23;\n    }\n    else {\n      FUN_0002861c();\n      pcVar13 = (char *)*puVar23;\n    }\n    puVar9 = (undefined1 *)FUN_00028968(pcVar13);\n    if (puVar9 == (undefined1 *)0x0) {\n      FUN_00028270(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4750);\n      uRam00000000 = 0;\n    }\n    else {\n      *puVar9 = 0;\n    }\n    if (puVar9[1] == '\0') {\n      puVar9 = (undefined1 *)(**(code **)(pcStack_81e8 + -0x75b8))(pcVar13,0x40);\n      if (puVar9 == (undefined1 *)0x0) {\n        puVar23 = (undefined4 *)safemalloc(0x68,1);\n        iVar2 = *(int *)(pcStack_81e8 + -0x7fc8);\n        uVar7 = *(undefined4 *)(iVar2 + -0x4728);\n        *puVar23 = *(undefined4 *)(iVar2 + -0x472c);\n        puVar23[1] = uVar7;\n        *(undefined1 *)(puVar23 + 2) = *(undefined1 *)(iVar2 + -0x4724);\n        iVar2 = (**(code **)(pcStack_81e8 + -0x752c))(puVar23);\n        pcVar10 = (char *)((int)puVar23 + iVar2);\n        pcVar21 = (char *)(*(int *)(pcStack_81e8 + -0x7fc8) + -0x48b0);\n        cVar11 = '.';\n        pcVar27 = (char *)0x0;\n        pcVar22 = pcVar21;\n        goto LAB_0002e6b4;\n      }\n      pcVar21 = (char *)(*(int *)(pcStack_81e8 + -0x7fc8) + -0x48b0);\nLAB_0002e5ac:\n      *puVar9 = 0;\n      cVar11 = *pcVar13;\n      pcVar27 = pcVar13;\n      pcVar13 = puVar9 + 1;\n      if (cVar11 == '\0') {\n        pcVar27 = (char *)0x0;\n      }\n    }\n    else {\n      pcVar21 = puVar9 + 1;\n      puVar9 = (undefined1 *)(**(code **)(pcStack_81e8 + -0x75b8))(pcVar13);\n      if (puVar9 != (undefined1 *)0x0) goto LAB_0002e5ac;\n      pcVar27 = (char *)0x0;\n    }\n    iVar2 = (**(code **)(pcStack_81e8 + -0x752c))(pcVar21);\n    puVar23 = (undefined4 *)safemalloc((iVar2 + 0x19) * 4,1);\n    iVar2 = *(int *)(pcStack_81e8 + -0x7fc8);\n    uVar7 = *(undefined4 *)(iVar2 + -0x4728);\n    *puVar23 = *(undefined4 *)(iVar2 + -0x472c);\n    puVar23[1] = uVar7;\n    *(undefined1 *)(puVar23 + 2) = *(undefined1 *)(iVar2 + -0x4724);\n    iVar2 = (**(code **)(pcStack_81e8 + -0x752c))(puVar23);\n    pcVar10 = (char *)((int)puVar23 + iVar2);\n    cVar11 = *pcVar21;\n    pcVar22 = pcVar21;\n    while (cVar11 != '\0') {\nLAB_0002e6b4:\n      if (cVar11 == '\'') {\n        builtin_strncpy(pcVar10,"\'\\\'\'",4);\n        pcVar10 = pcVar10 + 4;\n      }\n      else {\n        *pcVar10 = cVar11;\n        pcVar10 = pcVar10 + 1;\n      }\n      pcVar21 = pcVar21 + 1;\n      cVar11 = *pcVar21;\n    }\n    *pcVar10 = '\'';\n    pcVar10[1] = '\0';\n    FUN_00028a00(pcVar13,pcVar27,puVar23);\n    safefree(puVar23);\n    if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31ec) != 0) {\n      scp_sftp_listdir(pcVar22);\n      iVar2 = *(int *)(pcStack_81e8 + -0x7fd8);\n      goto LAB_0002e788;\n    }\n    puVar23 = *(undefined4 **)(pcStack_81e8 + -0x7594);\n    while( true ) {\n      pcVar27 = (char *)0x1;\n      iVar2 = FUN_000280f4(&cStack_81d5);\n      if (iVar2 < 1) break;\n      (**(code **)(pcStack_81e8 + -0x75c4))((int)cStack_81d5,*puVar23);\n    }\n  }" (else "else") (compound_statement "{\n    if (iVar4 == 1) {\n      pcVar13 = (char *)*puVar23;\n    }\n    else {\n      FUN_0002861c();\n      pcVar13 = (char *)*puVar23;\n    }\n    puVar9 = (undefined1 *)FUN_00028968(pcVar13);\n    if (puVar9 == (undefined1 *)0x0) {\n      FUN_00028270(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4750);\n      uRam00000000 = 0;\n    }\n    else {\n      *puVar9 = 0;\n    }\n    if (puVar9[1] == '\0') {\n      puVar9 = (undefined1 *)(**(code **)(pcStack_81e8 + -0x75b8))(pcVar13,0x40);\n      if (puVar9 == (undefined1 *)0x0) {\n        puVar23 = (undefined4 *)safemalloc(0x68,1);\n        iVar2 = *(int *)(pcStack_81e8 + -0x7fc8);\n        uVar7 = *(undefined4 *)(iVar2 + -0x4728);\n        *puVar23 = *(undefined4 *)(iVar2 + -0x472c);\n        puVar23[1] = uVar7;\n        *(undefined1 *)(puVar23 + 2) = *(undefined1 *)(iVar2 + -0x4724);\n        iVar2 = (**(code **)(pcStack_81e8 + -0x752c))(puVar23);\n        pcVar10 = (char *)((int)puVar23 + iVar2);\n        pcVar21 = (char *)(*(int *)(pcStack_81e8 + -0x7fc8) + -0x48b0);\n        cVar11 = '.';\n        pcVar27 = (char *)0x0;\n        pcVar22 = pcVar21;\n        goto LAB_0002e6b4;\n      }\n      pcVar21 = (char *)(*(int *)(pcStack_81e8 + -0x7fc8) + -0x48b0);\nLAB_0002e5ac:\n      *puVar9 = 0;\n      cVar11 = *pcVar13;\n      pcVar27 = pcVar13;\n      pcVar13 = puVar9 + 1;\n      if (cVar11 == '\0') {\n        pcVar27 = (char *)0x0;\n      }\n    }\n    else {\n      pcVar21 = puVar9 + 1;\n      puVar9 = (undefined1 *)(**(code **)(pcStack_81e8 + -0x75b8))(pcVar13);\n      if (puVar9 != (undefined1 *)0x0) goto LAB_0002e5ac;\n      pcVar27 = (char *)0x0;\n    }\n    iVar2 = (**(code **)(pcStack_81e8 + -0x752c))(pcVar21);\n    puVar23 = (undefined4 *)safemalloc((iVar2 + 0x19) * 4,1);\n    iVar2 = *(int *)(pcStack_81e8 + -0x7fc8);\n    uVar7 = *(undefined4 *)(iVar2 + -0x4728);\n    *puVar23 = *(undefined4 *)(iVar2 + -0x472c);\n    puVar23[1] = uVar7;\n    *(undefined1 *)(puVar23 + 2) = *(undefined1 *)(iVar2 + -0x4724);\n    iVar2 = (**(code **)(pcStack_81e8 + -0x752c))(puVar23);\n    pcVar10 = (char *)((int)puVar23 + iVar2);\n    cVar11 = *pcVar21;\n    pcVar22 = pcVar21;\n    while (cVar11 != '\0') {\nLAB_0002e6b4:\n      if (cVar11 == '\'') {\n        builtin_strncpy(pcVar10,"\'\\\'\'",4);\n        pcVar10 = pcVar10 + 4;\n      }\n      else {\n        *pcVar10 = cVar11;\n        pcVar10 = pcVar10 + 1;\n      }\n      pcVar21 = pcVar21 + 1;\n      cVar11 = *pcVar21;\n    }\n    *pcVar10 = '\'';\n    pcVar10[1] = '\0';\n    FUN_00028a00(pcVar13,pcVar27,puVar23);\n    safefree(puVar23);\n    if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31ec) != 0) {\n      scp_sftp_listdir(pcVar22);\n      iVar2 = *(int *)(pcStack_81e8 + -0x7fd8);\n      goto LAB_0002e788;\n    }\n    puVar23 = *(undefined4 **)(pcStack_81e8 + -0x7594);\n    while( true ) {\n      pcVar27 = (char *)0x1;\n      iVar2 = FUN_000280f4(&cStack_81d5);\n      if (iVar2 < 1) break;\n      (**(code **)(pcStack_81e8 + -0x75c4))((int)cStack_81d5,*puVar23);\n    }\n  }" ({ "{") (if_statement "if (iVar4 == 1) {\n      pcVar13 = (char *)*puVar23;\n    }\n    else {\n      FUN_0002861c();\n      pcVar13 = (char *)*puVar23;\n    }" (if "if") (parenthesized_expression "(iVar4 == 1)" (( "(") (binary_expression "iVar4 == 1" (identifier "iVar4") (== "==") (number_literal "1")) () ")")) (compound_statement "{\n      pcVar13 = (char *)*puVar23;\n    }" ({ "{") (expression_statement "pcVar13 = (char *)*puVar23;" (assignment_expression "pcVar13 = (char *)*puVar23" (identifier "pcVar13") (= "=") (cast_expression "(char *)*puVar23" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (pointer_expression "*puVar23" (* "*") (identifier "puVar23")))) (; ";")) (} "}")) (else_clause "else {\n      FUN_0002861c();\n      pcVar13 = (char *)*puVar23;\n    }" (else "else") (compound_statement "{\n      FUN_0002861c();\n      pcVar13 = (char *)*puVar23;\n    }" ({ "{") (expression_statement "FUN_0002861c();" (call_expression "FUN_0002861c()" (identifier "FUN_0002861c") (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "pcVar13 = (char *)*puVar23;" (assignment_expression "pcVar13 = (char *)*puVar23" (identifier "pcVar13") (= "=") (cast_expression "(char *)*puVar23" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (pointer_expression "*puVar23" (* "*") (identifier "puVar23")))) (; ";")) (} "}")))) (expression_statement "puVar9 = (undefined1 *)FUN_00028968(pcVar13);" (assignment_expression "puVar9 = (undefined1 *)FUN_00028968(pcVar13)" (identifier "puVar9") (= "=") (cast_expression "(undefined1 *)FUN_00028968(pcVar13)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "FUN_00028968(pcVar13)" (identifier "FUN_00028968") (argument_list "(pcVar13)" (( "(") (identifier "pcVar13") () ")"))))) (; ";")) (if_statement "if (puVar9 == (undefined1 *)0x0) {\n      FUN_00028270(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4750);\n      uRam00000000 = 0;\n    }\n    else {\n      *puVar9 = 0;\n    }" (if "if") (parenthesized_expression "(puVar9 == (undefined1 *)0x0)" (( "(") (binary_expression "puVar9 == (undefined1 *)0x0" (identifier "puVar9") (== "==") (cast_expression "(undefined1 *)0x0" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n      FUN_00028270(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4750);\n      uRam00000000 = 0;\n    }" ({ "{") (expression_statement "FUN_00028270(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4750);" (call_expression "FUN_00028270(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4750)" (identifier "FUN_00028270") (argument_list "(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4750)" (( "(") (binary_expression "*(int *)(pcStack_81e8 + -0x7fc8) + -0x4750" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fc8)" (* "*") (cast_expression "(int *)(pcStack_81e8 + -0x7fc8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcStack_81e8 + -0x7fc8)" (( "(") (binary_expression "pcStack_81e8 + -0x7fc8" (identifier "pcStack_81e8") (+ "+") (number_literal "-0x7fc8")) () ")")))) (+ "+") (number_literal "-0x4750")) () ")"))) (; ";")) (expression_statement "uRam00000000 = 0;" (assignment_expression "uRam00000000 = 0" (identifier "uRam00000000") (= "=") (number_literal "0")) (; ";")) (} "}")) (else_clause "else {\n      *puVar9 = 0;\n    }" (else "else") (compound_statement "{\n      *puVar9 = 0;\n    }" ({ "{") (expression_statement "*puVar9 = 0;" (assignment_expression "*puVar9 = 0" (pointer_expression "*puVar9" (* "*") (identifier "puVar9")) (= "=") (number_literal "0")) (; ";")) (} "}")))) (if_statement "if (puVar9[1] == '\0') {\n      puVar9 = (undefined1 *)(**(code **)(pcStack_81e8 + -0x75b8))(pcVar13,0x40);\n      if (puVar9 == (undefined1 *)0x0) {\n        puVar23 = (undefined4 *)safemalloc(0x68,1);\n        iVar2 = *(int *)(pcStack_81e8 + -0x7fc8);\n        uVar7 = *(undefined4 *)(iVar2 + -0x4728);\n        *puVar23 = *(undefined4 *)(iVar2 + -0x472c);\n        puVar23[1] = uVar7;\n        *(undefined1 *)(puVar23 + 2) = *(undefined1 *)(iVar2 + -0x4724);\n        iVar2 = (**(code **)(pcStack_81e8 + -0x752c))(puVar23);\n        pcVar10 = (char *)((int)puVar23 + iVar2);\n        pcVar21 = (char *)(*(int *)(pcStack_81e8 + -0x7fc8) + -0x48b0);\n        cVar11 = '.';\n        pcVar27 = (char *)0x0;\n        pcVar22 = pcVar21;\n        goto LAB_0002e6b4;\n      }\n      pcVar21 = (char *)(*(int *)(pcStack_81e8 + -0x7fc8) + -0x48b0);\nLAB_0002e5ac:\n      *puVar9 = 0;\n      cVar11 = *pcVar13;\n      pcVar27 = pcVar13;\n      pcVar13 = puVar9 + 1;\n      if (cVar11 == '\0') {\n        pcVar27 = (char *)0x0;\n      }\n    }\n    else {\n      pcVar21 = puVar9 + 1;\n      puVar9 = (undefined1 *)(**(code **)(pcStack_81e8 + -0x75b8))(pcVar13);\n      if (puVar9 != (undefined1 *)0x0) goto LAB_0002e5ac;\n      pcVar27 = (char *)0x0;\n    }" (if "if") (parenthesized_expression "(puVar9[1] == '\0')" (( "(") (binary_expression "puVar9[1] == '\0'" (subscript_expression "puVar9[1]" (identifier "puVar9") ([ "[") (number_literal "1") (] "]")) (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n      puVar9 = (undefined1 *)(**(code **)(pcStack_81e8 + -0x75b8))(pcVar13,0x40);\n      if (puVar9 == (undefined1 *)0x0) {\n        puVar23 = (undefined4 *)safemalloc(0x68,1);\n        iVar2 = *(int *)(pcStack_81e8 + -0x7fc8);\n        uVar7 = *(undefined4 *)(iVar2 + -0x4728);\n        *puVar23 = *(undefined4 *)(iVar2 + -0x472c);\n        puVar23[1] = uVar7;\n        *(undefined1 *)(puVar23 + 2) = *(undefined1 *)(iVar2 + -0x4724);\n        iVar2 = (**(code **)(pcStack_81e8 + -0x752c))(puVar23);\n        pcVar10 = (char *)((int)puVar23 + iVar2);\n        pcVar21 = (char *)(*(int *)(pcStack_81e8 + -0x7fc8) + -0x48b0);\n        cVar11 = '.';\n        pcVar27 = (char *)0x0;\n        pcVar22 = pcVar21;\n        goto LAB_0002e6b4;\n      }\n      pcVar21 = (char *)(*(int *)(pcStack_81e8 + -0x7fc8) + -0x48b0);\nLAB_0002e5ac:\n      *puVar9 = 0;\n      cVar11 = *pcVar13;\n      pcVar27 = pcVar13;\n      pcVar13 = puVar9 + 1;\n      if (cVar11 == '\0') {\n        pcVar27 = (char *)0x0;\n      }\n    }" ({ "{") (expression_statement "puVar9 = (undefined1 *)(**(code **)(pcStack_81e8 + -0x75b8))(pcVar13,0x40);" (assignment_expression "puVar9 = (undefined1 *)(**(code **)(pcStack_81e8 + -0x75b8))(pcVar13,0x40)" (identifier "puVar9") (= "=") (cast_expression "(undefined1 *)(**(code **)(pcStack_81e8 + -0x75b8))(pcVar13,0x40)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "(**(code **)(pcStack_81e8 + -0x75b8))(pcVar13,0x40)" (parenthesized_expression "(**(code **)(pcStack_81e8 + -0x75b8))" (( "(") (pointer_expression "**(code **)(pcStack_81e8 + -0x75b8)" (* "*") (pointer_expression "*(code **)(pcStack_81e8 + -0x75b8)" (* "*") (cast_expression "(code **)(pcStack_81e8 + -0x75b8)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_81e8 + -0x75b8)" (( "(") (binary_expression "pcStack_81e8 + -0x75b8" (identifier "pcStack_81e8") (+ "+") (number_literal "-0x75b8")) () ")"))))) () ")")) (argument_list "(pcVar13,0x40)" (( "(") (identifier "pcVar13") (, ",") (number_literal "0x40") () ")"))))) (; ";")) (if_statement "if (puVar9 == (undefined1 *)0x0) {\n        puVar23 = (undefined4 *)safemalloc(0x68,1);\n        iVar2 = *(int *)(pcStack_81e8 + -0x7fc8);\n        uVar7 = *(undefined4 *)(iVar2 + -0x4728);\n        *puVar23 = *(undefined4 *)(iVar2 + -0x472c);\n        puVar23[1] = uVar7;\n        *(undefined1 *)(puVar23 + 2) = *(undefined1 *)(iVar2 + -0x4724);\n        iVar2 = (**(code **)(pcStack_81e8 + -0x752c))(puVar23);\n        pcVar10 = (char *)((int)puVar23 + iVar2);\n        pcVar21 = (char *)(*(int *)(pcStack_81e8 + -0x7fc8) + -0x48b0);\n        cVar11 = '.';\n        pcVar27 = (char *)0x0;\n        pcVar22 = pcVar21;\n        goto LAB_0002e6b4;\n      }" (if "if") (parenthesized_expression "(puVar9 == (undefined1 *)0x0)" (( "(") (binary_expression "puVar9 == (undefined1 *)0x0" (identifier "puVar9") (== "==") (cast_expression "(undefined1 *)0x0" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n        puVar23 = (undefined4 *)safemalloc(0x68,1);\n        iVar2 = *(int *)(pcStack_81e8 + -0x7fc8);\n        uVar7 = *(undefined4 *)(iVar2 + -0x4728);\n        *puVar23 = *(undefined4 *)(iVar2 + -0x472c);\n        puVar23[1] = uVar7;\n        *(undefined1 *)(puVar23 + 2) = *(undefined1 *)(iVar2 + -0x4724);\n        iVar2 = (**(code **)(pcStack_81e8 + -0x752c))(puVar23);\n        pcVar10 = (char *)((int)puVar23 + iVar2);\n        pcVar21 = (char *)(*(int *)(pcStack_81e8 + -0x7fc8) + -0x48b0);\n        cVar11 = '.';\n        pcVar27 = (char *)0x0;\n        pcVar22 = pcVar21;\n        goto LAB_0002e6b4;\n      }" ({ "{") (expression_statement "puVar23 = (undefined4 *)safemalloc(0x68,1);" (assignment_expression "puVar23 = (undefined4 *)safemalloc(0x68,1)" (identifier "puVar23") (= "=") (cast_expression "(undefined4 *)safemalloc(0x68,1)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "safemalloc(0x68,1)" (identifier "safemalloc") (argument_list "(0x68,1)" (( "(") (number_literal "0x68") (, ",") (number_literal "1") () ")"))))) (; ";")) (expression_statement "iVar2 = *(int *)(pcStack_81e8 + -0x7fc8);" (assignment_expression "iVar2 = *(int *)(pcStack_81e8 + -0x7fc8)" (identifier "iVar2") (= "=") (pointer_expression "*(int *)(pcStack_81e8 + -0x7fc8)" (* "*") (cast_expression "(int *)(pcStack_81e8 + -0x7fc8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcStack_81e8 + -0x7fc8)" (( "(") (binary_expression "pcStack_81e8 + -0x7fc8" (identifier "pcStack_81e8") (+ "+") (number_literal "-0x7fc8")) () ")"))))) (; ";")) (expression_statement "uVar7 = *(undefined4 *)(iVar2 + -0x4728);" (assignment_expression "uVar7 = *(undefined4 *)(iVar2 + -0x4728)" (identifier "uVar7") (= "=") (pointer_expression "*(undefined4 *)(iVar2 + -0x4728)" (* "*") (cast_expression "(undefined4 *)(iVar2 + -0x4728)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar2 + -0x4728)" (( "(") (binary_expression "iVar2 + -0x4728" (identifier "iVar2") (+ "+") (number_literal "-0x4728")) () ")"))))) (; ";")) (expression_statement "*puVar23 = *(undefined4 *)(iVar2 + -0x472c);" (assignment_expression "*puVar23 = *(undefined4 *)(iVar2 + -0x472c)" (pointer_expression "*puVar23" (* "*") (identifier "puVar23")) (= "=") (pointer_expression "*(undefined4 *)(iVar2 + -0x472c)" (* "*") (cast_expression "(undefined4 *)(iVar2 + -0x472c)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar2 + -0x472c)" (( "(") (binary_expression "iVar2 + -0x472c" (identifier "iVar2") (+ "+") (number_literal "-0x472c")) () ")"))))) (; ";")) (expression_statement "puVar23[1] = uVar7;" (assignment_expression "puVar23[1] = uVar7" (subscript_expression "puVar23[1]" (identifier "puVar23") ([ "[") (number_literal "1") (] "]")) (= "=") (identifier "uVar7")) (; ";")) (expression_statement "*(undefined1 *)(puVar23 + 2) = *(undefined1 *)(iVar2 + -0x4724);" (assignment_expression "*(undefined1 *)(puVar23 + 2) = *(undefined1 *)(iVar2 + -0x4724)" (pointer_expression "*(undefined1 *)(puVar23 + 2)" (* "*") (cast_expression "(undefined1 *)(puVar23 + 2)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar23 + 2)" (( "(") (binary_expression "puVar23 + 2" (identifier "puVar23") (+ "+") (number_literal "2")) () ")")))) (= "=") (pointer_expression "*(undefined1 *)(iVar2 + -0x4724)" (* "*") (cast_expression "(undefined1 *)(iVar2 + -0x4724)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar2 + -0x4724)" (( "(") (binary_expression "iVar2 + -0x4724" (identifier "iVar2") (+ "+") (number_literal "-0x4724")) () ")"))))) (; ";")) (expression_statement "iVar2 = (**(code **)(pcStack_81e8 + -0x752c))(puVar23);" (assignment_expression "iVar2 = (**(code **)(pcStack_81e8 + -0x752c))(puVar23)" (identifier "iVar2") (= "=") (call_expression "(**(code **)(pcStack_81e8 + -0x752c))(puVar23)" (parenthesized_expression "(**(code **)(pcStack_81e8 + -0x752c))" (( "(") (pointer_expression "**(code **)(pcStack_81e8 + -0x752c)" (* "*") (pointer_expression "*(code **)(pcStack_81e8 + -0x752c)" (* "*") (cast_expression "(code **)(pcStack_81e8 + -0x752c)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_81e8 + -0x752c)" (( "(") (binary_expression "pcStack_81e8 + -0x752c" (identifier "pcStack_81e8") (+ "+") (number_literal "-0x752c")) () ")"))))) () ")")) (argument_list "(puVar23)" (( "(") (identifier "puVar23") () ")")))) (; ";")) (expression_statement "pcVar10 = (char *)((int)puVar23 + iVar2);" (assignment_expression "pcVar10 = (char *)((int)puVar23 + iVar2)" (identifier "pcVar10") (= "=") (cast_expression "(char *)((int)puVar23 + iVar2)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)puVar23 + iVar2)" (( "(") (binary_expression "(int)puVar23 + iVar2" (cast_expression "(int)puVar23" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "puVar23")) (+ "+") (identifier "iVar2")) () ")")))) (; ";")) (expression_statement "pcVar21 = (char *)(*(int *)(pcStack_81e8 + -0x7fc8) + -0x48b0);" (assignment_expression "pcVar21 = (char *)(*(int *)(pcStack_81e8 + -0x7fc8) + -0x48b0)" (identifier "pcVar21") (= "=") (cast_expression "(char *)(*(int *)(pcStack_81e8 + -0x7fc8) + -0x48b0)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcStack_81e8 + -0x7fc8) + -0x48b0)" (( "(") (binary_expression "*(int *)(pcStack_81e8 + -0x7fc8) + -0x48b0" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fc8)" (* "*") (cast_expression "(int *)(pcStack_81e8 + -0x7fc8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcStack_81e8 + -0x7fc8)" (( "(") (binary_expression "pcStack_81e8 + -0x7fc8" (identifier "pcStack_81e8") (+ "+") (number_literal "-0x7fc8")) () ")")))) (+ "+") (number_literal "-0x48b0")) () ")")))) (; ";")) (expression_statement "cVar11 = '.';" (assignment_expression "cVar11 = '.'" (identifier "cVar11") (= "=") (char_literal "'.'" (' "'") (character ".") (' "'"))) (; ";")) (expression_statement "pcVar27 = (char *)0x0;" (assignment_expression "pcVar27 = (char *)0x0" (identifier "pcVar27") (= "=") (cast_expression "(char *)0x0" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";")) (expression_statement "pcVar22 = pcVar21;" (assignment_expression "pcVar22 = pcVar21" (identifier "pcVar22") (= "=") (identifier "pcVar21")) (; ";")) (goto_statement "goto LAB_0002e6b4;" (goto "goto") (statement_identifier "LAB_0002e6b4") (; ";")) (} "}"))) (expression_statement "pcVar21 = (char *)(*(int *)(pcStack_81e8 + -0x7fc8) + -0x48b0);" (assignment_expression "pcVar21 = (char *)(*(int *)(pcStack_81e8 + -0x7fc8) + -0x48b0)" (identifier "pcVar21") (= "=") (cast_expression "(char *)(*(int *)(pcStack_81e8 + -0x7fc8) + -0x48b0)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcStack_81e8 + -0x7fc8) + -0x48b0)" (( "(") (binary_expression "*(int *)(pcStack_81e8 + -0x7fc8) + -0x48b0" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fc8)" (* "*") (cast_expression "(int *)(pcStack_81e8 + -0x7fc8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcStack_81e8 + -0x7fc8)" (( "(") (binary_expression "pcStack_81e8 + -0x7fc8" (identifier "pcStack_81e8") (+ "+") (number_literal "-0x7fc8")) () ")")))) (+ "+") (number_literal "-0x48b0")) () ")")))) (; ";")) (labeled_statement "LAB_0002e5ac:\n      *puVar9 = 0;" (statement_identifier "LAB_0002e5ac") (: ":") (expression_statement "*puVar9 = 0;" (assignment_expression "*puVar9 = 0" (pointer_expression "*puVar9" (* "*") (identifier "puVar9")) (= "=") (number_literal "0")) (; ";"))) (expression_statement "cVar11 = *pcVar13;" (assignment_expression "cVar11 = *pcVar13" (identifier "cVar11") (= "=") (pointer_expression "*pcVar13" (* "*") (identifier "pcVar13"))) (; ";")) (expression_statement "pcVar27 = pcVar13;" (assignment_expression "pcVar27 = pcVar13" (identifier "pcVar27") (= "=") (identifier "pcVar13")) (; ";")) (expression_statement "pcVar13 = puVar9 + 1;" (assignment_expression "pcVar13 = puVar9 + 1" (identifier "pcVar13") (= "=") (binary_expression "puVar9 + 1" (identifier "puVar9") (+ "+") (number_literal "1"))) (; ";")) (if_statement "if (cVar11 == '\0') {\n        pcVar27 = (char *)0x0;\n      }" (if "if") (parenthesized_expression "(cVar11 == '\0')" (( "(") (binary_expression "cVar11 == '\0'" (identifier "cVar11") (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n        pcVar27 = (char *)0x0;\n      }" ({ "{") (expression_statement "pcVar27 = (char *)0x0;" (assignment_expression "pcVar27 = (char *)0x0" (identifier "pcVar27") (= "=") (cast_expression "(char *)0x0" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";")) (} "}"))) (} "}")) (else_clause "else {\n      pcVar21 = puVar9 + 1;\n      puVar9 = (undefined1 *)(**(code **)(pcStack_81e8 + -0x75b8))(pcVar13);\n      if (puVar9 != (undefined1 *)0x0) goto LAB_0002e5ac;\n      pcVar27 = (char *)0x0;\n    }" (else "else") (compound_statement "{\n      pcVar21 = puVar9 + 1;\n      puVar9 = (undefined1 *)(**(code **)(pcStack_81e8 + -0x75b8))(pcVar13);\n      if (puVar9 != (undefined1 *)0x0) goto LAB_0002e5ac;\n      pcVar27 = (char *)0x0;\n    }" ({ "{") (expression_statement "pcVar21 = puVar9 + 1;" (assignment_expression "pcVar21 = puVar9 + 1" (identifier "pcVar21") (= "=") (binary_expression "puVar9 + 1" (identifier "puVar9") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "puVar9 = (undefined1 *)(**(code **)(pcStack_81e8 + -0x75b8))(pcVar13);" (assignment_expression "puVar9 = (undefined1 *)(**(code **)(pcStack_81e8 + -0x75b8))(pcVar13)" (identifier "puVar9") (= "=") (cast_expression "(undefined1 *)(**(code **)(pcStack_81e8 + -0x75b8))(pcVar13)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "(**(code **)(pcStack_81e8 + -0x75b8))(pcVar13)" (parenthesized_expression "(**(code **)(pcStack_81e8 + -0x75b8))" (( "(") (pointer_expression "**(code **)(pcStack_81e8 + -0x75b8)" (* "*") (pointer_expression "*(code **)(pcStack_81e8 + -0x75b8)" (* "*") (cast_expression "(code **)(pcStack_81e8 + -0x75b8)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_81e8 + -0x75b8)" (( "(") (binary_expression "pcStack_81e8 + -0x75b8" (identifier "pcStack_81e8") (+ "+") (number_literal "-0x75b8")) () ")"))))) () ")")) (argument_list "(pcVar13)" (( "(") (identifier "pcVar13") () ")"))))) (; ";")) (if_statement "if (puVar9 != (undefined1 *)0x0) goto LAB_0002e5ac;" (if "if") (parenthesized_expression "(puVar9 != (undefined1 *)0x0)" (( "(") (binary_expression "puVar9 != (undefined1 *)0x0" (identifier "puVar9") (!= "!=") (cast_expression "(undefined1 *)0x0" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (goto_statement "goto LAB_0002e5ac;" (goto "goto") (statement_identifier "LAB_0002e5ac") (; ";"))) (expression_statement "pcVar27 = (char *)0x0;" (assignment_expression "pcVar27 = (char *)0x0" (identifier "pcVar27") (= "=") (cast_expression "(char *)0x0" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";")) (} "}")))) (expression_statement "iVar2 = (**(code **)(pcStack_81e8 + -0x752c))(pcVar21);" (assignment_expression "iVar2 = (**(code **)(pcStack_81e8 + -0x752c))(pcVar21)" (identifier "iVar2") (= "=") (call_expression "(**(code **)(pcStack_81e8 + -0x752c))(pcVar21)" (parenthesized_expression "(**(code **)(pcStack_81e8 + -0x752c))" (( "(") (pointer_expression "**(code **)(pcStack_81e8 + -0x752c)" (* "*") (pointer_expression "*(code **)(pcStack_81e8 + -0x752c)" (* "*") (cast_expression "(code **)(pcStack_81e8 + -0x752c)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_81e8 + -0x752c)" (( "(") (binary_expression "pcStack_81e8 + -0x752c" (identifier "pcStack_81e8") (+ "+") (number_literal "-0x752c")) () ")"))))) () ")")) (argument_list "(pcVar21)" (( "(") (identifier "pcVar21") () ")")))) (; ";")) (expression_statement "puVar23 = (undefined4 *)safemalloc((iVar2 + 0x19) * 4,1);" (assignment_expression "puVar23 = (undefined4 *)safemalloc((iVar2 + 0x19) * 4,1)" (identifier "puVar23") (= "=") (cast_expression "(undefined4 *)safemalloc((iVar2 + 0x19) * 4,1)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "safemalloc((iVar2 + 0x19) * 4,1)" (identifier "safemalloc") (argument_list "((iVar2 + 0x19) * 4,1)" (( "(") (binary_expression "(iVar2 + 0x19) * 4" (parenthesized_expression "(iVar2 + 0x19)" (( "(") (binary_expression "iVar2 + 0x19" (identifier "iVar2") (+ "+") (number_literal "0x19")) () ")")) (* "*") (number_literal "4")) (, ",") (number_literal "1") () ")"))))) (; ";")) (expression_statement "iVar2 = *(int *)(pcStack_81e8 + -0x7fc8);" (assignment_expression "iVar2 = *(int *)(pcStack_81e8 + -0x7fc8)" (identifier "iVar2") (= "=") (pointer_expression "*(int *)(pcStack_81e8 + -0x7fc8)" (* "*") (cast_expression "(int *)(pcStack_81e8 + -0x7fc8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcStack_81e8 + -0x7fc8)" (( "(") (binary_expression "pcStack_81e8 + -0x7fc8" (identifier "pcStack_81e8") (+ "+") (number_literal "-0x7fc8")) () ")"))))) (; ";")) (expression_statement "uVar7 = *(undefined4 *)(iVar2 + -0x4728);" (assignment_expression "uVar7 = *(undefined4 *)(iVar2 + -0x4728)" (identifier "uVar7") (= "=") (pointer_expression "*(undefined4 *)(iVar2 + -0x4728)" (* "*") (cast_expression "(undefined4 *)(iVar2 + -0x4728)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar2 + -0x4728)" (( "(") (binary_expression "iVar2 + -0x4728" (identifier "iVar2") (+ "+") (number_literal "-0x4728")) () ")"))))) (; ";")) (expression_statement "*puVar23 = *(undefined4 *)(iVar2 + -0x472c);" (assignment_expression "*puVar23 = *(undefined4 *)(iVar2 + -0x472c)" (pointer_expression "*puVar23" (* "*") (identifier "puVar23")) (= "=") (pointer_expression "*(undefined4 *)(iVar2 + -0x472c)" (* "*") (cast_expression "(undefined4 *)(iVar2 + -0x472c)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar2 + -0x472c)" (( "(") (binary_expression "iVar2 + -0x472c" (identifier "iVar2") (+ "+") (number_literal "-0x472c")) () ")"))))) (; ";")) (expression_statement "puVar23[1] = uVar7;" (assignment_expression "puVar23[1] = uVar7" (subscript_expression "puVar23[1]" (identifier "puVar23") ([ "[") (number_literal "1") (] "]")) (= "=") (identifier "uVar7")) (; ";")) (expression_statement "*(undefined1 *)(puVar23 + 2) = *(undefined1 *)(iVar2 + -0x4724);" (assignment_expression "*(undefined1 *)(puVar23 + 2) = *(undefined1 *)(iVar2 + -0x4724)" (pointer_expression "*(undefined1 *)(puVar23 + 2)" (* "*") (cast_expression "(undefined1 *)(puVar23 + 2)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar23 + 2)" (( "(") (binary_expression "puVar23 + 2" (identifier "puVar23") (+ "+") (number_literal "2")) () ")")))) (= "=") (pointer_expression "*(undefined1 *)(iVar2 + -0x4724)" (* "*") (cast_expression "(undefined1 *)(iVar2 + -0x4724)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar2 + -0x4724)" (( "(") (binary_expression "iVar2 + -0x4724" (identifier "iVar2") (+ "+") (number_literal "-0x4724")) () ")"))))) (; ";")) (expression_statement "iVar2 = (**(code **)(pcStack_81e8 + -0x752c))(puVar23);" (assignment_expression "iVar2 = (**(code **)(pcStack_81e8 + -0x752c))(puVar23)" (identifier "iVar2") (= "=") (call_expression "(**(code **)(pcStack_81e8 + -0x752c))(puVar23)" (parenthesized_expression "(**(code **)(pcStack_81e8 + -0x752c))" (( "(") (pointer_expression "**(code **)(pcStack_81e8 + -0x752c)" (* "*") (pointer_expression "*(code **)(pcStack_81e8 + -0x752c)" (* "*") (cast_expression "(code **)(pcStack_81e8 + -0x752c)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_81e8 + -0x752c)" (( "(") (binary_expression "pcStack_81e8 + -0x752c" (identifier "pcStack_81e8") (+ "+") (number_literal "-0x752c")) () ")"))))) () ")")) (argument_list "(puVar23)" (( "(") (identifier "puVar23") () ")")))) (; ";")) (expression_statement "pcVar10 = (char *)((int)puVar23 + iVar2);" (assignment_expression "pcVar10 = (char *)((int)puVar23 + iVar2)" (identifier "pcVar10") (= "=") (cast_expression "(char *)((int)puVar23 + iVar2)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((int)puVar23 + iVar2)" (( "(") (binary_expression "(int)puVar23 + iVar2" (cast_expression "(int)puVar23" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "puVar23")) (+ "+") (identifier "iVar2")) () ")")))) (; ";")) (expression_statement "cVar11 = *pcVar21;" (assignment_expression "cVar11 = *pcVar21" (identifier "cVar11") (= "=") (pointer_expression "*pcVar21" (* "*") (identifier "pcVar21"))) (; ";")) (expression_statement "pcVar22 = pcVar21;" (assignment_expression "pcVar22 = pcVar21" (identifier "pcVar22") (= "=") (identifier "pcVar21")) (; ";")) (while_statement "while (cVar11 != '\0') {\nLAB_0002e6b4:\n      if (cVar11 == '\'') {\n        builtin_strncpy(pcVar10,"\'\\\'\'",4);\n        pcVar10 = pcVar10 + 4;\n      }\n      else {\n        *pcVar10 = cVar11;\n        pcVar10 = pcVar10 + 1;\n      }\n      pcVar21 = pcVar21 + 1;\n      cVar11 = *pcVar21;\n    }" (while "while") (parenthesized_expression "(cVar11 != '\0')" (( "(") (binary_expression "cVar11 != '\0'" (identifier "cVar11") (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\nLAB_0002e6b4:\n      if (cVar11 == '\'') {\n        builtin_strncpy(pcVar10,"\'\\\'\'",4);\n        pcVar10 = pcVar10 + 4;\n      }\n      else {\n        *pcVar10 = cVar11;\n        pcVar10 = pcVar10 + 1;\n      }\n      pcVar21 = pcVar21 + 1;\n      cVar11 = *pcVar21;\n    }" ({ "{") (labeled_statement "LAB_0002e6b4:\n      if (cVar11 == '\'') {\n        builtin_strncpy(pcVar10,"\'\\\'\'",4);\n        pcVar10 = pcVar10 + 4;\n      }\n      else {\n        *pcVar10 = cVar11;\n        pcVar10 = pcVar10 + 1;\n      }" (statement_identifier "LAB_0002e6b4") (: ":") (if_statement "if (cVar11 == '\'') {\n        builtin_strncpy(pcVar10,"\'\\\'\'",4);\n        pcVar10 = pcVar10 + 4;\n      }\n      else {\n        *pcVar10 = cVar11;\n        pcVar10 = pcVar10 + 1;\n      }" (if "if") (parenthesized_expression "(cVar11 == '\'')" (( "(") (binary_expression "cVar11 == '\''" (identifier "cVar11") (== "==") (char_literal "'\''" (' "'") (escape_sequence "\'") (' "'"))) () ")")) (compound_statement "{\n        builtin_strncpy(pcVar10,"\'\\\'\'",4);\n        pcVar10 = pcVar10 + 4;\n      }" ({ "{") (expression_statement "builtin_strncpy(pcVar10,"\'\\\'\'",4);" (call_expression "builtin_strncpy(pcVar10,"\'\\\'\'",4)" (identifier "builtin_strncpy") (argument_list "(pcVar10,"\'\\\'\'",4)" (( "(") (identifier "pcVar10") (, ",") (string_literal ""\'\\\'\'"" (" """) (escape_sequence "\'") (escape_sequence "\\") (escape_sequence "\'") (escape_sequence "\'") (" """)) (, ",") (number_literal "4") () ")"))) (; ";")) (expression_statement "pcVar10 = pcVar10 + 4;" (assignment_expression "pcVar10 = pcVar10 + 4" (identifier "pcVar10") (= "=") (binary_expression "pcVar10 + 4" (identifier "pcVar10") (+ "+") (number_literal "4"))) (; ";")) (} "}")) (else_clause "else {\n        *pcVar10 = cVar11;\n        pcVar10 = pcVar10 + 1;\n      }" (else "else") (compound_statement "{\n        *pcVar10 = cVar11;\n        pcVar10 = pcVar10 + 1;\n      }" ({ "{") (expression_statement "*pcVar10 = cVar11;" (assignment_expression "*pcVar10 = cVar11" (pointer_expression "*pcVar10" (* "*") (identifier "pcVar10")) (= "=") (identifier "cVar11")) (; ";")) (expression_statement "pcVar10 = pcVar10 + 1;" (assignment_expression "pcVar10 = pcVar10 + 1" (identifier "pcVar10") (= "=") (binary_expression "pcVar10 + 1" (identifier "pcVar10") (+ "+") (number_literal "1"))) (; ";")) (} "}"))))) (expression_statement "pcVar21 = pcVar21 + 1;" (assignment_expression "pcVar21 = pcVar21 + 1" (identifier "pcVar21") (= "=") (binary_expression "pcVar21 + 1" (identifier "pcVar21") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "cVar11 = *pcVar21;" (assignment_expression "cVar11 = *pcVar21" (identifier "cVar11") (= "=") (pointer_expression "*pcVar21" (* "*") (identifier "pcVar21"))) (; ";")) (} "}"))) (expression_statement "*pcVar10 = '\'';" (assignment_expression "*pcVar10 = '\''" (pointer_expression "*pcVar10" (* "*") (identifier "pcVar10")) (= "=") (char_literal "'\''" (' "'") (escape_sequence "\'") (' "'"))) (; ";")) (expression_statement "pcVar10[1] = '\0';" (assignment_expression "pcVar10[1] = '\0'" (subscript_expression "pcVar10[1]" (identifier "pcVar10") ([ "[") (number_literal "1") (] "]")) (= "=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) (; ";")) (expression_statement "FUN_00028a00(pcVar13,pcVar27,puVar23);" (call_expression "FUN_00028a00(pcVar13,pcVar27,puVar23)" (identifier "FUN_00028a00") (argument_list "(pcVar13,pcVar27,puVar23)" (( "(") (identifier "pcVar13") (, ",") (identifier "pcVar27") (, ",") (identifier "puVar23") () ")"))) (; ";")) (expression_statement "safefree(puVar23);" (call_expression "safefree(puVar23)" (identifier "safefree") (argument_list "(puVar23)" (( "(") (identifier "puVar23") () ")"))) (; ";")) (if_statement "if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31ec) != 0) {\n      scp_sftp_listdir(pcVar22);\n      iVar2 = *(int *)(pcStack_81e8 + -0x7fd8);\n      goto LAB_0002e788;\n    }" (if "if") (parenthesized_expression "(*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31ec) != 0)" (( "(") (binary_expression "*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31ec) != 0" (pointer_expression "*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31ec)" (* "*") (cast_expression "(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31ec)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31ec)" (( "(") (binary_expression "*(int *)(pcStack_81e8 + -0x7fd8) + -0x31ec" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fd8)" (* "*") (cast_expression "(int *)(pcStack_81e8 + -0x7fd8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcStack_81e8 + -0x7fd8)" (( "(") (binary_expression "pcStack_81e8 + -0x7fd8" (identifier "pcStack_81e8") (+ "+") (number_literal "-0x7fd8")) () ")")))) (+ "+") (number_literal "-0x31ec")) () ")")))) (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n      scp_sftp_listdir(pcVar22);\n      iVar2 = *(int *)(pcStack_81e8 + -0x7fd8);\n      goto LAB_0002e788;\n    }" ({ "{") (expression_statement "scp_sftp_listdir(pcVar22);" (call_expression "scp_sftp_listdir(pcVar22)" (identifier "scp_sftp_listdir") (argument_list "(pcVar22)" (( "(") (identifier "pcVar22") () ")"))) (; ";")) (expression_statement "iVar2 = *(int *)(pcStack_81e8 + -0x7fd8);" (assignment_expression "iVar2 = *(int *)(pcStack_81e8 + -0x7fd8)" (identifier "iVar2") (= "=") (pointer_expression "*(int *)(pcStack_81e8 + -0x7fd8)" (* "*") (cast_expression "(int *)(pcStack_81e8 + -0x7fd8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcStack_81e8 + -0x7fd8)" (( "(") (binary_expression "pcStack_81e8 + -0x7fd8" (identifier "pcStack_81e8") (+ "+") (number_literal "-0x7fd8")) () ")"))))) (; ";")) (goto_statement "goto LAB_0002e788;" (goto "goto") (statement_identifier "LAB_0002e788") (; ";")) (} "}"))) (expression_statement "puVar23 = *(undefined4 **)(pcStack_81e8 + -0x7594);" (assignment_expression "puVar23 = *(undefined4 **)(pcStack_81e8 + -0x7594)" (identifier "puVar23") (= "=") (pointer_expression "*(undefined4 **)(pcStack_81e8 + -0x7594)" (* "*") (cast_expression "(undefined4 **)(pcStack_81e8 + -0x7594)" (( "(") (type_descriptor "undefined4 **" (type_identifier "undefined4") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_81e8 + -0x7594)" (( "(") (binary_expression "pcStack_81e8 + -0x7594" (identifier "pcStack_81e8") (+ "+") (number_literal "-0x7594")) () ")"))))) (; ";")) (while_statement "while( true ) {\n      pcVar27 = (char *)0x1;\n      iVar2 = FUN_000280f4(&cStack_81d5);\n      if (iVar2 < 1) break;\n      (**(code **)(pcStack_81e8 + -0x75c4))((int)cStack_81d5,*puVar23);\n    }" (while "while") (parenthesized_expression "( true )" (( "(") (true "true") () ")")) (compound_statement "{\n      pcVar27 = (char *)0x1;\n      iVar2 = FUN_000280f4(&cStack_81d5);\n      if (iVar2 < 1) break;\n      (**(code **)(pcStack_81e8 + -0x75c4))((int)cStack_81d5,*puVar23);\n    }" ({ "{") (expression_statement "pcVar27 = (char *)0x1;" (assignment_expression "pcVar27 = (char *)0x1" (identifier "pcVar27") (= "=") (cast_expression "(char *)0x1" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x1"))) (; ";")) (expression_statement "iVar2 = FUN_000280f4(&cStack_81d5);" (assignment_expression "iVar2 = FUN_000280f4(&cStack_81d5)" (identifier "iVar2") (= "=") (call_expression "FUN_000280f4(&cStack_81d5)" (identifier "FUN_000280f4") (argument_list "(&cStack_81d5)" (( "(") (pointer_expression "&cStack_81d5" (& "&") (identifier "cStack_81d5")) () ")")))) (; ";")) (if_statement "if (iVar2 < 1) break;" (if "if") (parenthesized_expression "(iVar2 < 1)" (( "(") (binary_expression "iVar2 < 1" (identifier "iVar2") (< "<") (number_literal "1")) () ")")) (break_statement "break;" (break "break") (; ";"))) (expression_statement "(**(code **)(pcStack_81e8 + -0x75c4))((int)cStack_81d5,*puVar23);" (call_expression "(**(code **)(pcStack_81e8 + -0x75c4))((int)cStack_81d5,*puVar23)" (parenthesized_expression "(**(code **)(pcStack_81e8 + -0x75c4))" (( "(") (pointer_expression "**(code **)(pcStack_81e8 + -0x75c4)" (* "*") (pointer_expression "*(code **)(pcStack_81e8 + -0x75c4)" (* "*") (cast_expression "(code **)(pcStack_81e8 + -0x75c4)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_81e8 + -0x75c4)" (( "(") (binary_expression "pcStack_81e8 + -0x75c4" (identifier "pcStack_81e8") (+ "+") (number_literal "-0x75c4")) () ")"))))) () ")")) (argument_list "((int)cStack_81d5,*puVar23)" (( "(") (cast_expression "(int)cStack_81d5" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "cStack_81d5")) (, ",") (pointer_expression "*puVar23" (* "*") (identifier "puVar23")) () ")"))) (; ";")) (} "}"))) (} "}")))) (expression_statement "iVar2 = *(int *)(pcStack_81e8 + -0x7fd8);" (assignment_expression "iVar2 = *(int *)(pcStack_81e8 + -0x7fd8)" (identifier "iVar2") (= "=") (pointer_expression "*(int *)(pcStack_81e8 + -0x7fd8)" (* "*") (cast_expression "(int *)(pcStack_81e8 + -0x7fd8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcStack_81e8 + -0x7fd8)" (( "(") (binary_expression "pcStack_81e8 + -0x7fd8" (identifier "pcStack_81e8") (+ "+") (number_literal "-0x7fd8")) () ")"))))) (; ";")) (labeled_statement "LAB_0002e788:\n  pcVar28 = *(code **)(pcStack_81e8 + -0x7c44);" (statement_identifier "LAB_0002e788") (: ":") (expression_statement "pcVar28 = *(code **)(pcStack_81e8 + -0x7c44);" (assignment_expression "pcVar28 = *(code **)(pcStack_81e8 + -0x7c44)" (identifier "pcVar28") (= "=") (pointer_expression "*(code **)(pcStack_81e8 + -0x7c44)" (* "*") (cast_expression "(code **)(pcStack_81e8 + -0x7c44)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_81e8 + -0x7c44)" (( "(") (binary_expression "pcStack_81e8 + -0x7c44" (identifier "pcStack_81e8") (+ "+") (number_literal "-0x7c44")) () ")"))))) (; ";"))) (if_statement "if (*(int *)(iVar2 + -0x31f4) != 0) {\n    iVar2 = (**(code **)(*(int *)(iVar2 + -0x31f4) + 0x20))\n                      (*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f8));\n    pcVar28 = *(code **)(pcStack_81e8 + -0x7c44);\n    if (iVar2 != 0) {\n      (**(code **)(*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f4) + 0x18))\n                (*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f8),0xc);\n      **(undefined4 **)(pcStack_81e8 + -0x7db4) = 1;\n      pcVar27 = (char *)0x1;\n      FUN_000280f4(&cStack_81d5);\n      pcVar28 = *(code **)(pcStack_81e8 + -0x7c44);\n    }\n  }" (if "if") (parenthesized_expression "(*(int *)(iVar2 + -0x31f4) != 0)" (( "(") (binary_expression "*(int *)(iVar2 + -0x31f4) != 0" (pointer_expression "*(int *)(iVar2 + -0x31f4)" (* "*") (cast_expression "(int *)(iVar2 + -0x31f4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar2 + -0x31f4)" (( "(") (binary_expression "iVar2 + -0x31f4" (identifier "iVar2") (+ "+") (number_literal "-0x31f4")) () ")")))) (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n    iVar2 = (**(code **)(*(int *)(iVar2 + -0x31f4) + 0x20))\n                      (*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f8));\n    pcVar28 = *(code **)(pcStack_81e8 + -0x7c44);\n    if (iVar2 != 0) {\n      (**(code **)(*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f4) + 0x18))\n                (*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f8),0xc);\n      **(undefined4 **)(pcStack_81e8 + -0x7db4) = 1;\n      pcVar27 = (char *)0x1;\n      FUN_000280f4(&cStack_81d5);\n      pcVar28 = *(code **)(pcStack_81e8 + -0x7c44);\n    }\n  }" ({ "{") (expression_statement "iVar2 = (**(code **)(*(int *)(iVar2 + -0x31f4) + 0x20))\n                      (*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f8));" (assignment_expression "iVar2 = (**(code **)(*(int *)(iVar2 + -0x31f4) + 0x20))\n                      (*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f8))" (identifier "iVar2") (= "=") (call_expression "(**(code **)(*(int *)(iVar2 + -0x31f4) + 0x20))\n                      (*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f8))" (parenthesized_expression "(**(code **)(*(int *)(iVar2 + -0x31f4) + 0x20))" (( "(") (pointer_expression "**(code **)(*(int *)(iVar2 + -0x31f4) + 0x20)" (* "*") (pointer_expression "*(code **)(*(int *)(iVar2 + -0x31f4) + 0x20)" (* "*") (cast_expression "(code **)(*(int *)(iVar2 + -0x31f4) + 0x20)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(*(int *)(iVar2 + -0x31f4) + 0x20)" (( "(") (binary_expression "*(int *)(iVar2 + -0x31f4) + 0x20" (pointer_expression "*(int *)(iVar2 + -0x31f4)" (* "*") (cast_expression "(int *)(iVar2 + -0x31f4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar2 + -0x31f4)" (( "(") (binary_expression "iVar2 + -0x31f4" (identifier "iVar2") (+ "+") (number_literal "-0x31f4")) () ")")))) (+ "+") (number_literal "0x20")) () ")"))))) () ")")) (argument_list "(*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f8))" (( "(") (pointer_expression "*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f8)" (* "*") (cast_expression "(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f8)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f8)" (( "(") (binary_expression "*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f8" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fd8)" (* "*") (cast_expression "(int *)(pcStack_81e8 + -0x7fd8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcStack_81e8 + -0x7fd8)" (( "(") (binary_expression "pcStack_81e8 + -0x7fd8" (identifier "pcStack_81e8") (+ "+") (number_literal "-0x7fd8")) () ")")))) (+ "+") (number_literal "-0x31f8")) () ")")))) () ")")))) (; ";")) (expression_statement "pcVar28 = *(code **)(pcStack_81e8 + -0x7c44);" (assignment_expression "pcVar28 = *(code **)(pcStack_81e8 + -0x7c44)" (identifier "pcVar28") (= "=") (pointer_expression "*(code **)(pcStack_81e8 + -0x7c44)" (* "*") (cast_expression "(code **)(pcStack_81e8 + -0x7c44)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_81e8 + -0x7c44)" (( "(") (binary_expression "pcStack_81e8 + -0x7c44" (identifier "pcStack_81e8") (+ "+") (number_literal "-0x7c44")) () ")"))))) (; ";")) (if_statement "if (iVar2 != 0) {\n      (**(code **)(*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f4) + 0x18))\n                (*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f8),0xc);\n      **(undefined4 **)(pcStack_81e8 + -0x7db4) = 1;\n      pcVar27 = (char *)0x1;\n      FUN_000280f4(&cStack_81d5);\n      pcVar28 = *(code **)(pcStack_81e8 + -0x7c44);\n    }" (if "if") (parenthesized_expression "(iVar2 != 0)" (( "(") (binary_expression "iVar2 != 0" (identifier "iVar2") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n      (**(code **)(*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f4) + 0x18))\n                (*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f8),0xc);\n      **(undefined4 **)(pcStack_81e8 + -0x7db4) = 1;\n      pcVar27 = (char *)0x1;\n      FUN_000280f4(&cStack_81d5);\n      pcVar28 = *(code **)(pcStack_81e8 + -0x7c44);\n    }" ({ "{") (expression_statement "(**(code **)(*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f4) + 0x18))\n                (*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f8),0xc);" (call_expression "(**(code **)(*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f4) + 0x18))\n                (*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f8),0xc)" (parenthesized_expression "(**(code **)(*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f4) + 0x18))" (( "(") (pointer_expression "**(code **)(*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f4) + 0x18)" (* "*") (pointer_expression "*(code **)(*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f4) + 0x18)" (* "*") (cast_expression "(code **)(*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f4) + 0x18)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f4) + 0x18)" (( "(") (binary_expression "*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f4) + 0x18" (pointer_expression "*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f4)" (* "*") (cast_expression "(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f4)" (( "(") (binary_expression "*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f4" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fd8)" (* "*") (cast_expression "(int *)(pcStack_81e8 + -0x7fd8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcStack_81e8 + -0x7fd8)" (( "(") (binary_expression "pcStack_81e8 + -0x7fd8" (identifier "pcStack_81e8") (+ "+") (number_literal "-0x7fd8")) () ")")))) (+ "+") (number_literal "-0x31f4")) () ")")))) (+ "+") (number_literal "0x18")) () ")"))))) () ")")) (argument_list "(*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f8),0xc)" (( "(") (pointer_expression "*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f8)" (* "*") (cast_expression "(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f8)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f8)" (( "(") (binary_expression "*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f8" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fd8)" (* "*") (cast_expression "(int *)(pcStack_81e8 + -0x7fd8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcStack_81e8 + -0x7fd8)" (( "(") (binary_expression "pcStack_81e8 + -0x7fd8" (identifier "pcStack_81e8") (+ "+") (number_literal "-0x7fd8")) () ")")))) (+ "+") (number_literal "-0x31f8")) () ")")))) (, ",") (number_literal "0xc") () ")"))) (; ";")) (expression_statement "**(undefined4 **)(pcStack_81e8 + -0x7db4) = 1;" (assignment_expression "**(undefined4 **)(pcStack_81e8 + -0x7db4) = 1" (pointer_expression "**(undefined4 **)(pcStack_81e8 + -0x7db4)" (* "*") (pointer_expression "*(undefined4 **)(pcStack_81e8 + -0x7db4)" (* "*") (cast_expression "(undefined4 **)(pcStack_81e8 + -0x7db4)" (( "(") (type_descriptor "undefined4 **" (type_identifier "undefined4") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_81e8 + -0x7db4)" (( "(") (binary_expression "pcStack_81e8 + -0x7db4" (identifier "pcStack_81e8") (+ "+") (number_literal "-0x7db4")) () ")"))))) (= "=") (number_literal "1")) (; ";")) (expression_statement "pcVar27 = (char *)0x1;" (assignment_expression "pcVar27 = (char *)0x1" (identifier "pcVar27") (= "=") (cast_expression "(char *)0x1" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x1"))) (; ";")) (expression_statement "FUN_000280f4(&cStack_81d5);" (call_expression "FUN_000280f4(&cStack_81d5)" (identifier "FUN_000280f4") (argument_list "(&cStack_81d5)" (( "(") (pointer_expression "&cStack_81d5" (& "&") (identifier "cStack_81d5")) () ")"))) (; ";")) (expression_statement "pcVar28 = *(code **)(pcStack_81e8 + -0x7c44);" (assignment_expression "pcVar28 = *(code **)(pcStack_81e8 + -0x7c44)" (identifier "pcVar28") (= "=") (pointer_expression "*(code **)(pcStack_81e8 + -0x7c44)" (* "*") (cast_expression "(code **)(pcStack_81e8 + -0x7c44)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_81e8 + -0x7c44)" (( "(") (binary_expression "pcStack_81e8 + -0x7c44" (identifier "pcStack_81e8") (+ "+") (number_literal "-0x7c44")) () ")"))))) (; ";")) (} "}"))) (} "}"))) (expression_statement "(*pcVar28)();" (call_expression "(*pcVar28)()" (parenthesized_expression "(*pcVar28)" (( "(") (pointer_expression "*pcVar28" (* "*") (identifier "pcVar28")) () ")")) (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "cmdline_cleanup();" (call_expression "cmdline_cleanup()" (identifier "cmdline_cleanup") (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "(**(code **)(pcStack_81e8 + -0x7d88))(0);" (call_expression "(**(code **)(pcStack_81e8 + -0x7d88))(0)" (parenthesized_expression "(**(code **)(pcStack_81e8 + -0x7d88))" (( "(") (pointer_expression "**(code **)(pcStack_81e8 + -0x7d88)" (* "*") (pointer_expression "*(code **)(pcStack_81e8 + -0x7d88)" (* "*") (cast_expression "(code **)(pcStack_81e8 + -0x7d88)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_81e8 + -0x7d88)" (( "(") (binary_expression "pcStack_81e8 + -0x7d88" (identifier "pcStack_81e8") (+ "+") (number_literal "-0x7d88")) () ")"))))) () ")")) (argument_list "(0)" (( "(") (number_literal "0") () ")"))) (; ";")) (expression_statement "iVar20 = *(int *)(pcStack_81e8 + -0x7fd8);" (assignment_expression "iVar20 = *(int *)(pcStack_81e8 + -0x7fd8)" (identifier "iVar20") (= "=") (pointer_expression "*(int *)(pcStack_81e8 + -0x7fd8)" (* "*") (cast_expression "(int *)(pcStack_81e8 + -0x7fd8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcStack_81e8 + -0x7fd8)" (( "(") (binary_expression "pcStack_81e8 + -0x7fd8" (identifier "pcStack_81e8") (+ "+") (number_literal "-0x7fd8")) () ")"))))) (; ";")) (expression_statement "iVar24 = *(int *)(pcStack_81e8 + -0x7fd8);" (assignment_expression "iVar24 = *(int *)(pcStack_81e8 + -0x7fd8)" (identifier "iVar24") (= "=") (pointer_expression "*(int *)(pcStack_81e8 + -0x7fd8)" (* "*") (cast_expression "(int *)(pcStack_81e8 + -0x7fd8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcStack_81e8 + -0x7fd8)" (( "(") (binary_expression "pcStack_81e8 + -0x7fd8" (identifier "pcStack_81e8") (+ "+") (number_literal "-0x7fd8")) () ")"))))) (; ";")) (expression_statement "(**(code **)(*(int *)(iVar24 + -0x31f4) + 4))(*(undefined4 *)(iVar20 + -0x31f8));" (call_expression "(**(code **)(*(int *)(iVar24 + -0x31f4) + 4))(*(undefined4 *)(iVar20 + -0x31f8))" (parenthesized_expression "(**(code **)(*(int *)(iVar24 + -0x31f4) + 4))" (( "(") (pointer_expression "**(code **)(*(int *)(iVar24 + -0x31f4) + 4)" (* "*") (pointer_expression "*(code **)(*(int *)(iVar24 + -0x31f4) + 4)" (* "*") (cast_expression "(code **)(*(int *)(iVar24 + -0x31f4) + 4)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(*(int *)(iVar24 + -0x31f4) + 4)" (( "(") (binary_expression "*(int *)(iVar24 + -0x31f4) + 4" (pointer_expression "*(int *)(iVar24 + -0x31f4)" (* "*") (cast_expression "(int *)(iVar24 + -0x31f4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar24 + -0x31f4)" (( "(") (binary_expression "iVar24 + -0x31f4" (identifier "iVar24") (+ "+") (number_literal "-0x31f4")) () ")")))) (+ "+") (number_literal "4")) () ")"))))) () ")")) (argument_list "(*(undefined4 *)(iVar20 + -0x31f8))" (( "(") (pointer_expression "*(undefined4 *)(iVar20 + -0x31f8)" (* "*") (cast_expression "(undefined4 *)(iVar20 + -0x31f8)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar20 + -0x31f8)" (( "(") (binary_expression "iVar20 + -0x31f8" (identifier "iVar20") (+ "+") (number_literal "-0x31f8")) () ")")))) () ")"))) (; ";")) (expression_statement "*(undefined4 *)(iVar20 + -0x31f8) = 0;" (assignment_expression "*(undefined4 *)(iVar20 + -0x31f8) = 0" (pointer_expression "*(undefined4 *)(iVar20 + -0x31f8)" (* "*") (cast_expression "(undefined4 *)(iVar20 + -0x31f8)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar20 + -0x31f8)" (( "(") (binary_expression "iVar20 + -0x31f8" (identifier "iVar20") (+ "+") (number_literal "-0x31f8")) () ")")))) (= "=") (number_literal "0")) (; ";")) (expression_statement "*(undefined4 *)(iVar24 + -0x31f4) = 0;" (assignment_expression "*(undefined4 *)(iVar24 + -0x31f4) = 0" (pointer_expression "*(undefined4 *)(iVar24 + -0x31f4)" (* "*") (cast_expression "(undefined4 *)(iVar24 + -0x31f4)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar24 + -0x31f4)" (( "(") (binary_expression "iVar24 + -0x31f4" (identifier "iVar24") (+ "+") (number_literal "-0x31f4")) () ")")))) (= "=") (number_literal "0")) (; ";")) (expression_statement "(**(code **)(pcStack_81e8 + -0x7c3c))();" (call_expression "(**(code **)(pcStack_81e8 + -0x7c3c))()" (parenthesized_expression "(**(code **)(pcStack_81e8 + -0x7c3c))" (( "(") (pointer_expression "**(code **)(pcStack_81e8 + -0x7c3c)" (* "*") (pointer_expression "*(code **)(pcStack_81e8 + -0x7c3c)" (* "*") (cast_expression "(code **)(pcStack_81e8 + -0x7c3c)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_81e8 + -0x7c3c)" (( "(") (binary_expression "pcStack_81e8 + -0x7c3c" (identifier "pcStack_81e8") (+ "+") (number_literal "-0x7c3c")) () ")"))))) () ")")) (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "uVar3 = (uint)(*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31e0) != 0);" (assignment_expression "uVar3 = (uint)(*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31e0) != 0)" (identifier "uVar3") (= "=") (call_expression "(uint)(*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31e0) != 0)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "(*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31e0) != 0)" (( "(") (binary_expression "*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31e0) != 0" (pointer_expression "*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31e0)" (* "*") (cast_expression "(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31e0)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31e0)" (( "(") (binary_expression "*(int *)(pcStack_81e8 + -0x7fd8) + -0x31e0" (pointer_expression "*(int *)(pcStack_81e8 + -0x7fd8)" (* "*") (cast_expression "(int *)(pcStack_81e8 + -0x7fd8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcStack_81e8 + -0x7fd8)" (( "(") (binary_expression "pcStack_81e8 + -0x7fd8" (identifier "pcStack_81e8") (+ "+") (number_literal "-0x7fd8")) () ")")))) (+ "+") (number_literal "-0x31e0")) () ")")))) (!= "!=") (number_literal "0")) () ")")))) (; ";")) (labeled_statement "LAB_0002e878:\n  if (puStack_81d4 == (undefined4 *)**(int **)(pcStack_81e8 + -0x7478)) {\n    return uVar3;\n  }" (statement_identifier "LAB_0002e878") (: ":") (if_statement "if (puStack_81d4 == (undefined4 *)**(int **)(pcStack_81e8 + -0x7478)) {\n    return uVar3;\n  }" (if "if") (parenthesized_expression "(puStack_81d4 == (undefined4 *)**(int **)(pcStack_81e8 + -0x7478))" (( "(") (binary_expression "puStack_81d4 == (undefined4 *)**(int **)(pcStack_81e8 + -0x7478)" (identifier "puStack_81d4") (== "==") (cast_expression "(undefined4 *)**(int **)(pcStack_81e8 + -0x7478)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (pointer_expression "**(int **)(pcStack_81e8 + -0x7478)" (* "*") (pointer_expression "*(int **)(pcStack_81e8 + -0x7478)" (* "*") (cast_expression "(int **)(pcStack_81e8 + -0x7478)" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_81e8 + -0x7478)" (( "(") (binary_expression "pcStack_81e8 + -0x7478" (identifier "pcStack_81e8") (+ "+") (number_literal "-0x7478")) () ")"))))))) () ")")) (compound_statement "{\n    return uVar3;\n  }" ({ "{") (return_statement "return uVar3;" (return "return") (identifier "uVar3") (; ";")) (} "}")))) (expression_statement "pcVar28 = *(code **)(pcStack_81e8 + -0x74a0);" (assignment_expression "pcVar28 = *(code **)(pcStack_81e8 + -0x74a0)" (identifier "pcVar28") (= "=") (pointer_expression "*(code **)(pcStack_81e8 + -0x74a0)" (* "*") (cast_expression "(code **)(pcStack_81e8 + -0x74a0)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_81e8 + -0x74a0)" (( "(") (binary_expression "pcStack_81e8 + -0x74a0" (identifier "pcStack_81e8") (+ "+") (number_literal "-0x74a0")) () ")"))))) (; ";")) (expression_statement "uVar12 = 0x2f008;" (assignment_expression "uVar12 = 0x2f008" (identifier "uVar12") (= "=") (number_literal "0x2f008")) (; ";")) (expression_statement "puVar23 = puStack_81d4;" (assignment_expression "puVar23 = puStack_81d4" (identifier "puVar23") (= "=") (identifier "puStack_81d4")) (; ";")) (expression_statement "(*pcVar28)();" (call_expression "(*pcVar28)()" (parenthesized_expression "(*pcVar28)" (( "(") (pointer_expression "*pcVar28" (* "*") (identifier "pcVar28")) () ")")) (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "pcStack_8218 = pcVar28 + 0x95140;" (assignment_expression "pcStack_8218 = pcVar28 + 0x95140" (identifier "pcStack_8218") (= "=") (binary_expression "pcVar28 + 0x95140" (identifier "pcVar28") (+ "+") (number_literal "0x95140"))) (; ";")) (expression_statement "uVar7 = *puVar23;" (assignment_expression "uVar7 = *puVar23" (identifier "uVar7") (= "=") (pointer_expression "*puVar23" (* "*") (identifier "puVar23"))) (; ";")) (expression_statement "uVar6 = *(undefined4 *)pcVar27;" (assignment_expression "uVar6 = *(undefined4 *)pcVar27" (identifier "uVar6") (= "=") (pointer_expression "*(undefined4 *)pcVar27" (* "*") (cast_expression "(undefined4 *)pcVar27" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "pcVar27")))) (; ";")) (expression_statement "iStack_820c = iVar24;" (assignment_expression "iStack_820c = iVar24" (identifier "iStack_820c") (= "=") (identifier "iVar24")) (; ";")) (expression_statement "iStack_8208 = iVar20;" (assignment_expression "iStack_8208 = iVar20" (identifier "iStack_8208") (= "=") (identifier "iVar20")) (; ";")) (expression_statement "uStack_8204 = uVar12;" (assignment_expression "uStack_8204 = uVar12" (identifier "uStack_8204") (= "=") (identifier "uVar12")) (; ";")) (expression_statement "iVar2 = (**(code **)(pcVar28 + 0x8dd04))(uVar7,*(int *)(pcVar28 + 0x8d178) + -0x4584);" (assignment_expression "iVar2 = (**(code **)(pcVar28 + 0x8dd04))(uVar7,*(int *)(pcVar28 + 0x8d178) + -0x4584)" (identifier "iVar2") (= "=") (call_expression "(**(code **)(pcVar28 + 0x8dd04))(uVar7,*(int *)(pcVar28 + 0x8d178) + -0x4584)" (parenthesized_expression "(**(code **)(pcVar28 + 0x8dd04))" (( "(") (pointer_expression "**(code **)(pcVar28 + 0x8dd04)" (* "*") (pointer_expression "*(code **)(pcVar28 + 0x8dd04)" (* "*") (cast_expression "(code **)(pcVar28 + 0x8dd04)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar28 + 0x8dd04)" (( "(") (binary_expression "pcVar28 + 0x8dd04" (identifier "pcVar28") (+ "+") (number_literal "0x8dd04")) () ")"))))) () ")")) (argument_list "(uVar7,*(int *)(pcVar28 + 0x8d178) + -0x4584)" (( "(") (identifier "uVar7") (, ",") (binary_expression "*(int *)(pcVar28 + 0x8d178) + -0x4584" (pointer_expression "*(int *)(pcVar28 + 0x8d178)" (* "*") (cast_expression "(int *)(pcVar28 + 0x8d178)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcVar28 + 0x8d178)" (( "(") (binary_expression "pcVar28 + 0x8d178" (identifier "pcVar28") (+ "+") (number_literal "0x8d178")) () ")")))) (+ "+") (number_literal "-0x4584")) () ")")))) (; ";")) (if_statement "if (iVar2 == 0) {\n    uVar3 = 0xffffffff;\n  }\n  else {\n    iVar2 = (**(code **)(pcStack_8218 + -0x743c))(uVar6,*(int *)(pcStack_8218 + -0x7fc8) + -0x4584);\n    if (iVar2 == 0) {\n      uVar3 = 1;\n    }\n    else {\n      uVar3 = (**(code **)(pcStack_8218 + -0x743c))(uVar7,uVar6);\n    }\n  }" (if "if") (parenthesized_expression "(iVar2 == 0)" (( "(") (binary_expression "iVar2 == 0" (identifier "iVar2") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n    uVar3 = 0xffffffff;\n  }" ({ "{") (expression_statement "uVar3 = 0xffffffff;" (assignment_expression "uVar3 = 0xffffffff" (identifier "uVar3") (= "=") (number_literal "0xffffffff")) (; ";")) (} "}")) (else_clause "else {\n    iVar2 = (**(code **)(pcStack_8218 + -0x743c))(uVar6,*(int *)(pcStack_8218 + -0x7fc8) + -0x4584);\n    if (iVar2 == 0) {\n      uVar3 = 1;\n    }\n    else {\n      uVar3 = (**(code **)(pcStack_8218 + -0x743c))(uVar7,uVar6);\n    }\n  }" (else "else") (compound_statement "{\n    iVar2 = (**(code **)(pcStack_8218 + -0x743c))(uVar6,*(int *)(pcStack_8218 + -0x7fc8) + -0x4584);\n    if (iVar2 == 0) {\n      uVar3 = 1;\n    }\n    else {\n      uVar3 = (**(code **)(pcStack_8218 + -0x743c))(uVar7,uVar6);\n    }\n  }" ({ "{") (expression_statement "iVar2 = (**(code **)(pcStack_8218 + -0x743c))(uVar6,*(int *)(pcStack_8218 + -0x7fc8) + -0x4584);" (assignment_expression "iVar2 = (**(code **)(pcStack_8218 + -0x743c))(uVar6,*(int *)(pcStack_8218 + -0x7fc8) + -0x4584)" (identifier "iVar2") (= "=") (call_expression "(**(code **)(pcStack_8218 + -0x743c))(uVar6,*(int *)(pcStack_8218 + -0x7fc8) + -0x4584)" (parenthesized_expression "(**(code **)(pcStack_8218 + -0x743c))" (( "(") (pointer_expression "**(code **)(pcStack_8218 + -0x743c)" (* "*") (pointer_expression "*(code **)(pcStack_8218 + -0x743c)" (* "*") (cast_expression "(code **)(pcStack_8218 + -0x743c)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_8218 + -0x743c)" (( "(") (binary_expression "pcStack_8218 + -0x743c" (identifier "pcStack_8218") (+ "+") (number_literal "-0x743c")) () ")"))))) () ")")) (argument_list "(uVar6,*(int *)(pcStack_8218 + -0x7fc8) + -0x4584)" (( "(") (identifier "uVar6") (, ",") (binary_expression "*(int *)(pcStack_8218 + -0x7fc8) + -0x4584" (pointer_expression "*(int *)(pcStack_8218 + -0x7fc8)" (* "*") (cast_expression "(int *)(pcStack_8218 + -0x7fc8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcStack_8218 + -0x7fc8)" (( "(") (binary_expression "pcStack_8218 + -0x7fc8" (identifier "pcStack_8218") (+ "+") (number_literal "-0x7fc8")) () ")")))) (+ "+") (number_literal "-0x4584")) () ")")))) (; ";")) (if_statement "if (iVar2 == 0) {\n      uVar3 = 1;\n    }\n    else {\n      uVar3 = (**(code **)(pcStack_8218 + -0x743c))(uVar7,uVar6);\n    }" (if "if") (parenthesized_expression "(iVar2 == 0)" (( "(") (binary_expression "iVar2 == 0" (identifier "iVar2") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n      uVar3 = 1;\n    }" ({ "{") (expression_statement "uVar3 = 1;" (assignment_expression "uVar3 = 1" (identifier "uVar3") (= "=") (number_literal "1")) (; ";")) (} "}")) (else_clause "else {\n      uVar3 = (**(code **)(pcStack_8218 + -0x743c))(uVar7,uVar6);\n    }" (else "else") (compound_statement "{\n      uVar3 = (**(code **)(pcStack_8218 + -0x743c))(uVar7,uVar6);\n    }" ({ "{") (expression_statement "uVar3 = (**(code **)(pcStack_8218 + -0x743c))(uVar7,uVar6);" (assignment_expression "uVar3 = (**(code **)(pcStack_8218 + -0x743c))(uVar7,uVar6)" (identifier "uVar3") (= "=") (call_expression "(**(code **)(pcStack_8218 + -0x743c))(uVar7,uVar6)" (parenthesized_expression "(**(code **)(pcStack_8218 + -0x743c))" (( "(") (pointer_expression "**(code **)(pcStack_8218 + -0x743c)" (* "*") (pointer_expression "*(code **)(pcStack_8218 + -0x743c)" (* "*") (cast_expression "(code **)(pcStack_8218 + -0x743c)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_8218 + -0x743c)" (( "(") (binary_expression "pcStack_8218 + -0x743c" (identifier "pcStack_8218") (+ "+") (number_literal "-0x743c")) () ")"))))) () ")")) (argument_list "(uVar7,uVar6)" (( "(") (identifier "uVar7") (, ",") (identifier "uVar6") () ")")))) (; ";")) (} "}")))) (} "}")))) (return_statement "return uVar3;" (return "return") (identifier "uVar3") (; ";")) (labeled_statement "LAB_0002de88:\n  if (iStack_80c0 != 0) {\n    (**(code **)(pcStack_8138 + -0x7c60))(unaff_s5,uStack_80b8,uStack_80bc);\n  }" (statement_identifier "LAB_0002de88") (: ":") (if_statement "if (iStack_80c0 != 0) {\n    (**(code **)(pcStack_8138 + -0x7c60))(unaff_s5,uStack_80b8,uStack_80bc);\n  }" (if "if") (parenthesized_expression "(iStack_80c0 != 0)" (( "(") (binary_expression "iStack_80c0 != 0" (identifier "iStack_80c0") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n    (**(code **)(pcStack_8138 + -0x7c60))(unaff_s5,uStack_80b8,uStack_80bc);\n  }" ({ "{") (expression_statement "(**(code **)(pcStack_8138 + -0x7c60))(unaff_s5,uStack_80b8,uStack_80bc);" (call_expression "(**(code **)(pcStack_8138 + -0x7c60))(unaff_s5,uStack_80b8,uStack_80bc)" (parenthesized_expression "(**(code **)(pcStack_8138 + -0x7c60))" (( "(") (pointer_expression "**(code **)(pcStack_8138 + -0x7c60)" (* "*") (pointer_expression "*(code **)(pcStack_8138 + -0x7c60)" (* "*") (cast_expression "(code **)(pcStack_8138 + -0x7c60)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_8138 + -0x7c60)" (( "(") (binary_expression "pcStack_8138 + -0x7c60" (identifier "pcStack_8138") (+ "+") (number_literal "-0x7c60")) () ")"))))) () ")")) (argument_list "(unaff_s5,uStack_80b8,uStack_80bc)" (( "(") (identifier "unaff_s5") (, ",") (identifier "uStack_80b8") (, ",") (identifier "uStack_80bc") () ")"))) (; ";")) (} "}")))) (expression_statement "(**(code **)(pcStack_8138 + -0x7c70))(unaff_s5);" (call_expression "(**(code **)(pcStack_8138 + -0x7c70))(unaff_s5)" (parenthesized_expression "(**(code **)(pcStack_8138 + -0x7c70))" (( "(") (pointer_expression "**(code **)(pcStack_8138 + -0x7c70)" (* "*") (pointer_expression "*(code **)(pcStack_8138 + -0x7c70)" (* "*") (cast_expression "(code **)(pcStack_8138 + -0x7c70)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcStack_8138 + -0x7c70)" (( "(") (binary_expression "pcStack_8138 + -0x7c70" (identifier "pcStack_8138") (+ "+") (number_literal "-0x7c70")) () ")"))))) () ")")) (argument_list "(unaff_s5)" (( "(") (identifier "unaff_s5") () ")"))) (; ";")) (if_statement "if (iVar24 == 0) {\n    scp_finish_filerecv();\n    safefree(unaff_s3);\n    safefree(uStack_80d4);\n  }\n  else {\n    FUN_0002a658(*(int *)(pcStack_8138 + -0x7fc8) + -0x483c,unaff_s3);\n    safefree(unaff_s3);\n  }" (if "if") (parenthesized_expression "(iVar24 == 0)" (( "(") (binary_expression "iVar24 == 0" (identifier "iVar24") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n    scp_finish_filerecv();\n    safefree(unaff_s3);\n    safefree(uStack_80d4);\n  }" ({ "{") (expression_statement "scp_finish_filerecv();" (call_expression "scp_finish_filerecv()" (identifier "scp_finish_filerecv") (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "safefree(unaff_s3);" (call_expression "safefree(unaff_s3)" (identifier "safefree") (argument_list "(unaff_s3)" (( "(") (identifier "unaff_s3") () ")"))) (; ";")) (expression_statement "safefree(uStack_80d4);" (call_expression "safefree(uStack_80d4)" (identifier "safefree") (argument_list "(uStack_80d4)" (( "(") (identifier "uStack_80d4") () ")"))) (; ";")) (} "}")) (else_clause "else {\n    FUN_0002a658(*(int *)(pcStack_8138 + -0x7fc8) + -0x483c,unaff_s3);\n    safefree(unaff_s3);\n  }" (else "else") (compound_statement "{\n    FUN_0002a658(*(int *)(pcStack_8138 + -0x7fc8) + -0x483c,unaff_s3);\n    safefree(unaff_s3);\n  }" ({ "{") (expression_statement "FUN_0002a658(*(int *)(pcStack_8138 + -0x7fc8) + -0x483c,unaff_s3);" (call_expression "FUN_0002a658(*(int *)(pcStack_8138 + -0x7fc8) + -0x483c,unaff_s3)" (identifier "FUN_0002a658") (argument_list "(*(int *)(pcStack_8138 + -0x7fc8) + -0x483c,unaff_s3)" (( "(") (binary_expression "*(int *)(pcStack_8138 + -0x7fc8) + -0x483c" (pointer_expression "*(int *)(pcStack_8138 + -0x7fc8)" (* "*") (cast_expression "(int *)(pcStack_8138 + -0x7fc8)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pcStack_8138 + -0x7fc8)" (( "(") (binary_expression "pcStack_8138 + -0x7fc8" (identifier "pcStack_8138") (+ "+") (number_literal "-0x7fc8")) () ")")))) (+ "+") (number_literal "-0x483c")) (, ",") (identifier "unaff_s3") () ")"))) (; ";")) (expression_statement "safefree(unaff_s3);" (call_expression "safefree(unaff_s3)" (identifier "safefree") (argument_list "(unaff_s3)" (( "(") (identifier "unaff_s3") () ")"))) (; ";")) (} "}")))) (goto_statement "goto LAB_0002d77c;" (goto "goto") (statement_identifier "LAB_0002d77c") (; ";")) (} "}")))
(translation_unit (function_definition type: (type_identifier) declarator: (function_declarator declarator: (identifier) parameters: (parameter_list (parameter_declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (parameter_declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))))) body: (compound_statement (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (primitive_type) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (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: (pointer_declarator declarator: (identifier))) (declaration type: (primitive_type) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (primitive_type) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (primitive_type) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) 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: (primitive_type) 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: (primitive_type) 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: (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: (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: (pointer_declarator declarator: (identifier))) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) 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: (primitive_type) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (primitive_type) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (primitive_type) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (array_declarator declarator: (identifier) size: (number_literal))) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) 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: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (primitive_type) declarator: (identifier)) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (identifier))))) (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list))))) alternative: (else_clause (compound_statement (expression_statement (call_expression function: (identifier) arguments: (argument_list (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (call_expression function: (identifier) arguments: (argument_list))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (call_expression function: (identifier) arguments: (argument_list (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) (identifier)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier) (binary_expression left: (identifier) right: (number_literal)) (identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal)))) consequence: (compound_statement (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier)))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (number_literal)))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) (pointer_expression argument: (identifier)) (pointer_expression argument: (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)))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal))) consequence: (compound_statement (expression_statement (call_expression function: (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))))) (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: (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)))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (goto_statement label: (statement_identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) arguments: (argument_list (binary_expression left: (identifier) right: (number_literal)) (binary_expression left: (identifier) right: (number_literal)) (number_literal) (binary_expression left: (identifier) right: (number_literal)))))) (return_statement (identifier)))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) arguments: (argument_list (identifier) (identifier)))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier))))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (pointer_expression argument: (identifier)) (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) (identifier)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))))))))) (labeled_statement label: (statement_identifier) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (identifier))))) consequence: (compound_statement (return_statement (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier)))) arguments: (argument_list))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) 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))))))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))))) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)))))) (expression_statement (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: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))))) right: (number_literal))))))) arguments: (argument_list (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))))) (identifier) (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list))))) alternative: (else_clause (compound_statement (expression_statement (call_expression function: (identifier) arguments: (argument_list (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)))))))) (expression_statement (assignment_expression left: (identifier) right: (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: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (identifier)))) (while_statement condition: (parenthesized_expression (comma_expression left: (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))))) right: (binary_expression left: (identifier) right: (number_literal)))) body: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (call_expression function: (identifier) arguments: (argument_list))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (call_expression function: (identifier) arguments: (argument_list (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)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (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: (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))))))))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier) (identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal)))) consequence: (compound_statement (expression_statement (call_expression function: (identifier) arguments: (argument_list (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)))))))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_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)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (goto_statement label: (statement_identifier)))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) (identifier) (identifier))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier)))))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)))))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (call_expression function: (identifier) arguments: (argument_list (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)))))))))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (number_literal)))))) (labeled_statement label: (statement_identifier) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) 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))))))))) consequence: (compound_statement (return_statement (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (identifier))) arguments: (argument_list))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (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)))))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list)))) (if_statement condition: (parenthesized_expression (binary_expression left: (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: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))))) right: (number_literal))) right: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) consequence: (compound_statement (expression_statement (call_expression function: (identifier) arguments: (argument_list (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (identifier)))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)))) (labeled_statement label: (statement_identifier) (do_statement body: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (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: (identifier) right: (number_literal))))) consequence: (goto_statement label: (statement_identifier)))) condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (identifier))) (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: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (number_literal)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)))))) (expression_statement (call_expression function: (identifier) 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))))) (expression_statement (call_expression function: (identifier) 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)))))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (subscript_expression argument: (identifier) index: (identifier)) right: (char_literal (escape_sequence)))) consequence: (compound_statement (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (identifier))) arguments: (argument_list (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (number_literal)))))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (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: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))) right: (binary_expression left: (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))))) right: (number_literal)) right: (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))))) right: (number_literal))))))) consequence: (compound_statement (expression_statement (call_expression function: (identifier) 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)))) (expression_statement (call_expression function: (identifier) 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)))) (expression_statement (call_expression function: (identifier) 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))))) (expression_statement (call_expression function: (identifier) 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))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (char_literal (escape_sequence)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (call_expression function: (identifier) arguments: (argument_list (identifier))))))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (identifier)))))))))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (call_expression function: (identifier) arguments: (argument_list (identifier))))))))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier))))) (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 (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (call_expression function: (identifier) arguments: (argument_list (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (identifier)))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier)))) (goto_statement label: (statement_identifier))))) alternative: (else_clause (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (call_expression function: (identifier) arguments: (argument_list (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (identifier)))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier)))) (goto_statement label: (statement_identifier)))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier) (number_literal)))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier)))) (goto_statement label: (statement_identifier)))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (identifier))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (call_expression function: (identifier) arguments: (argument_list (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (identifier)))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier)))) (goto_statement label: (statement_identifier)))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (pointer_expression argument: (identifier)) (number_literal) (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (number_literal))))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (number_literal))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (pointer_expression argument: (identifier)) (number_literal) (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: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (labeled_statement label: (statement_identifier) (do_statement body: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier) (identifier) (identifier))))) (if_statement condition: (parenthesized_expression (binary_expression left: (number_literal) right: (identifier))) consequence: (goto_statement label: (statement_identifier))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (pointer_expression argument: (identifier)) (number_literal) (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (pointer_expression argument: (identifier)) (identifier) (identifier) (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier) (identifier) (identifier))))) (if_statement condition: (parenthesized_expression (binary_expression left: (number_literal) right: (identifier))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (pointer_expression argument: (identifier)) (identifier) (identifier) (identifier)))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (number_literal))) consequence: (compound_statement (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (identifier))) arguments: (argument_list (binary_expression left: (identifier) right: (number_literal))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (identifier) (identifier)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))) consequence: (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) consequence: (compound_statement (expression_statement (call_expression function: (identifier) arguments: (argument_list (pointer_expression argument: (identifier)) (identifier) (identifier) (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (number_literal))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))) consequence: (compound_statement (expression_statement (call_expression function: (identifier) arguments: (argument_list (pointer_expression argument: (identifier)) (identifier) (identifier) (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier) (identifier) (identifier))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (goto_statement label: (statement_identifier))))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (number_literal))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (identifier))) arguments: (argument_list (identifier) (identifier) (identifier) (identifier)))))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (identifier)))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (pointer_expression argument: (identifier)) (identifier) (identifier) (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (goto_statement label: (statement_identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) consequence: (compound_statement (expression_statement (call_expression function: (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 (number_literal) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (identifier) (identifier)))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (pointer_expression argument: (identifier)) (identifier) (identifier) (identifier))))) alternative: (else_clause (compound_statement (expression_statement (call_expression function: (identifier) arguments: (argument_list (pointer_expression argument: (identifier)) (identifier) (identifier) (identifier))))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier)))) condition: (parenthesized_expression (true)))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier)))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier)))) (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)))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (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)))))))) consequence: (compound_statement (return_statement (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))))))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (identifier))) arguments: (argument_list))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (number_literal)))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (identifier))) arguments: (argument_list))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (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)))))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (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)) (number_literal) (number_literal) (pointer_expression argument: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (identifier)))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (pointer_expression argument: (identifier)) (number_literal) (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: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (number_literal) (number_literal) (pointer_expression argument: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (identifier))) arguments: (argument_list))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (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))))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (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: (identifier))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (number_literal) (identifier)))) (expression_statement (assignment_expression left: (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))) right: (number_literal))) (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)))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (char_literal (character)))) 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: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)))))) (expression_statement (assignment_expression left: (identifier) right: (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: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)))))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal))))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) right: (number_literal)))))))))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier) (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))))))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (call_expression function: (identifier) arguments: (argument_list (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (pointer_expression argument: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))) right: (number_literal))) 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: (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: (identifier))))) (goto_statement label: (statement_identifier)))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (goto_statement label: (statement_identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (goto_statement label: (statement_identifier))) (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: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (binary_expression left: (identifier) right: (number_literal)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (goto_statement label: (statement_identifier)))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier))))) (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: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier)))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (binary_expression left: (identifier) right: (number_literal)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier)))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier)))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) right: (parenthesized_expression (comma_expression left: (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))))) right: (binary_expression left: (identifier) right: (number_literal)))))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (identifier)))) (expression_statement (call_expression function: (identifier) arguments: (argument_list)))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (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))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (goto_statement label: (statement_identifier))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (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: (identifier) 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: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (goto_statement label: (statement_identifier))))))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (binary_expression left: (identifier) right: (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: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier)))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier)))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))))) right: (number_literal))) (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: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (goto_statement label: (statement_identifier)))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))))) right: (number_literal))) (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: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier)))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)))))) (expression_statement (assignment_expression left: (identifier) right: (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 (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))))))))))))) (goto_statement label: (statement_identifier)))))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (identifier))) arguments: (argument_list))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier)))))))))))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (identifier))) consequence: (goto_statement label: (statement_identifier))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (pointer_expression argument: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (char_literal (character)))) consequence: (goto_statement label: (statement_identifier))) (goto_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: (binary_expression left: (identifier) right: (identifier))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal))))))) (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: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))))) right: (number_literal))) 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))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (identifier) right: (identifier)) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (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: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (goto_statement label: (statement_identifier))) (expression_statement (assignment_expression left: (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))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))))) (labeled_statement label: (statement_identifier) (expression_statement (call_expression function: (identifier) arguments: (argument_list (binary_expression left: (identifier) right: (number_literal)))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (pointer_expression argument: (identifier))))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (subscript_expression argument: (identifier) index: (number_literal))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (call_expression function: (identifier) arguments: (argument_list (identifier)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal)))) consequence: (compound_statement (expression_statement (call_expression function: (identifier) arguments: (argument_list (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))))) (expression_statement (assignment_expression left: (identifier) right: (number_literal)))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (pointer_expression argument: (identifier)) right: (number_literal)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (char_literal (escape_sequence)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))))))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (number_literal)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (number_literal))))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (pointer_expression argument: (identifier)) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (char_literal (escape_sequence)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (number_literal))))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))))) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))))) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))))) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))))) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (identifier) (identifier) (identifier))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier) (identifier)))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (identifier) (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))))) (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (goto_statement label: (statement_identifier))))) alternative: (else_clause (compound_statement (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (identifier) right: (identifier)) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (pointer_expression argument: (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: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (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: (pointer_expression argument: (identifier))))) (goto_statement label: (statement_identifier))))) alternative: (else_clause (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: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (identifier) right: (identifier)) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (pointer_expression argument: (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: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))))) right: (number_literal))) (goto_statement label: (statement_identifier))))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (pointer_expression argument: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (call_expression function: (identifier) arguments: (argument_list (identifier)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal)))) consequence: (compound_statement (expression_statement (call_expression function: (identifier) arguments: (argument_list (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))))) (expression_statement (assignment_expression left: (identifier) right: (number_literal)))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (pointer_expression argument: (identifier)) right: (number_literal)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (char_literal (escape_sequence)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))))))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (number_literal)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (number_literal))))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (pointer_expression argument: (identifier)) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (char_literal (escape_sequence)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (number_literal))))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (pointer_expression argument: (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 (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (pointer_expression argument: (identifier))))))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (pointer_expression argument: (identifier)) (number_literal))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (call_expression function: (identifier) arguments: (argument_list (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (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: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))))) right: (number_literal))) (goto_statement label: (statement_identifier)))))))) alternative: (else_clause (compound_statement (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (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: (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))))) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))))) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))))) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (identifier) (identifier) (identifier))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier) (identifier)))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (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 (binary_expression left: (number_literal) right: (identifier))))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (binary_expression left: (identifier) right: (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: (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: (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))))))) (do_statement body: (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))))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (identifier))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (number_literal) (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: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))) arguments: (argument_list (binary_expression left: (identifier) right: (number_literal))))) (expression_statement (assignment_expression left: (identifier) right: (identifier)))) alternative: (else_clause (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: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))) arguments: (argument_list (identifier))))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list)))) (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: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))) arguments: (argument_list (binary_expression left: (identifier) right: (number_literal))))) (expression_statement (assignment_expression left: (identifier) right: (identifier)))) alternative: (else_clause (compound_statement (while_statement condition: (parenthesized_expression (comma_expression left: (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier)))) right: (binary_expression left: (identifier) right: (number_literal)))) 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: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))) arguments: (argument_list (identifier)))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier)))))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier))))))))))))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (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))))))))) (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: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))))) right: (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))))) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))))) condition: (parenthesized_expression (binary_expression left: (identifier) right: (identifier)))) (goto_statement label: (statement_identifier)))))))) alternative: (else_clause (compound_statement (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: (pointer_expression argument: (identifier)))))) alternative: (else_clause (compound_statement (expression_statement (call_expression function: (identifier) arguments: (argument_list))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (pointer_expression argument: (identifier)))))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (call_expression function: (identifier) arguments: (argument_list (identifier)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal)))) consequence: (compound_statement (expression_statement (call_expression function: (identifier) arguments: (argument_list (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))))) (expression_statement (assignment_expression left: (identifier) right: (number_literal)))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (pointer_expression argument: (identifier)) right: (number_literal)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (char_literal (escape_sequence)))) 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: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (number_literal)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (call_expression function: (identifier) arguments: (argument_list (number_literal) (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: (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: (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))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (pointer_expression argument: (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: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (identifier)))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)))))) (expression_statement (assignment_expression left: (identifier) right: (char_literal (character)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (goto_statement label: (statement_identifier)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)))))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (pointer_expression argument: (identifier)) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (char_literal (escape_sequence)))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (number_literal))))))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (number_literal)))) consequence: (goto_statement label: (statement_identifier))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (call_expression function: (identifier) arguments: (argument_list (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) right: (number_literal)) (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: (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: (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))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (pointer_expression argument: (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: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) right: (identifier)))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (while_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (char_literal (escape_sequence)))) body: (compound_statement (labeled_statement label: (statement_identifier) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (char_literal (escape_sequence)))) consequence: (compound_statement (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier) (string_literal (escape_sequence) (escape_sequence) (escape_sequence) (escape_sequence)) (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal))))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (pointer_expression argument: (identifier)) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))))))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (identifier)))))) (expression_statement (assignment_expression left: (pointer_expression argument: (identifier)) right: (char_literal (escape_sequence)))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (char_literal (escape_sequence)))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier) (identifier)))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (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: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))))) right: (number_literal))) consequence: (compound_statement (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (goto_statement label: (statement_identifier)))) (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))))))) (while_statement condition: (parenthesized_expression (true)) body: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (pointer_expression argument: (identifier)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (break_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 (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)) (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: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))))) (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: (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: (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))))))) arguments: (argument_list (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))))))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (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: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))))) right: (number_literal))))))) arguments: (argument_list (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))))) (number_literal)))) (expression_statement (assignment_expression left: (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal)))))) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (number_literal)))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (pointer_expression argument: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))))))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (identifier))) arguments: (argument_list))) (expression_statement (call_expression function: (identifier) arguments: (argument_list))) (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 (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: (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 (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: (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))))))) 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)))))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (identifier)) arguments: (argument_list (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal))))) right: (number_literal)))))) (labeled_statement label: (statement_identifier) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))))) consequence: (compound_statement (return_statement (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (identifier))) arguments: (argument_list))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (number_literal)))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (number_literal)))) alternative: (else_clause (compound_statement (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (identifier))))))))))) (return_statement (identifier)) (labeled_statement label: (statement_identifier) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier) (identifier) (identifier))))))) (expression_statement (call_expression function: (parenthesized_expression (pointer_expression argument: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator declarator: (abstract_pointer_declarator))) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))))) arguments: (argument_list (identifier)))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (call_expression function: (identifier) arguments: (argument_list))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier)))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier))))) alternative: (else_clause (compound_statement (expression_statement (call_expression function: (identifier) arguments: (argument_list (binary_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (number_literal)) (identifier)))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier))))))) (goto_statement label: (statement_identifier)))))

uint MASKED(undefined *param_1,undefined *param_2)

{
  undefined *puVar1;
  int iVar2;
  uint uVar3;
  int iVar4;
  undefined *puVar5;
  undefined4 uVar6;
  undefined4 uVar7;
  int iVar8;
  undefined1 *puVar9;
  char *pcVar10;
  undefined4 extraout_v1;
  char cVar11;
  undefined4 uVar12;
  char *pcVar13;
  undefined *puVar14;
  int iVar15;
  int iVar16;
  undefined4 uVar17;
  undefined4 *puVar18;
  int *piVar19;
  int iVar20;
  char *pcVar21;
  char *pcVar22;
  undefined4 *unaff_s3;
  undefined4 *puVar23;
  undefined1 *unaff_s4;
  int iVar24;
  int unaff_s5;
  int iVar25;
  int iVar26;
  int unaff_s7;
  char *pcVar27;
  code *pcVar28;
  int iVar29;
  code *pcVar30;
  undefined auStack_100b0 [32408];
  code *pcStack_8218;
  int iStack_820c;
  int iStack_8208;
  undefined4 uStack_8204;
  int iStack_81f0;
  char *pcStack_81ec;
  code *pcStack_81e8;
  code *pcStack_81dc;
  char cStack_81d5;
  undefined4 *puStack_81d4;
  undefined4 *puStack_81d0;
  undefined4 uStack_81cc;
  undefined *puStack_81c8;
  undefined4 *puStack_81c4;
  int iStack_81c0;
  int iStack_81bc;
  int *piStack_81b8;
  int iStack_81b4;
  int iStack_81b0;
  code *pcStack_81ac;
  code *pcStack_8198;
  int *piStack_8190;
  undefined4 uStack_818c;
  undefined4 uStack_8184;
  undefined *puStack_8180;
  code *pcStack_817c;
  int iStack_8174;
  undefined4 uStack_8170;
  undefined4 uStack_816c;
  code *pcStack_8168;
  undefined4 uStack_8160;
  code *pcStack_815c;
  undefined4 uStack_8148;
  undefined4 uStack_8144;
  int iStack_8140;
  code *pcStack_8138;
  char *pcStack_812c;
  code *pcStack_8128;
  int iStack_8124;
  int iStack_8120;
  undefined4 uStack_811c;
  undefined *puStack_8118;
  undefined4 uStack_8114;
  int iStack_8110;
  code *pcStack_810c;
  undefined4 uStack_8108;
  undefined4 uStack_8104;
  undefined4 uStack_8100;
  undefined4 uStack_80fc;
  undefined4 uStack_80f8;
  undefined4 uStack_80f4;
  undefined4 uStack_80f0;
  undefined4 uStack_80ec;
  undefined4 uStack_80e8;
  undefined4 uStack_80e4;
  undefined4 uStack_80e0;
  undefined4 uStack_80dc;
  int iStack_80d8;
  undefined4 uStack_80d4;
  undefined *puStack_80d0;
  undefined4 uStack_80cc;
  undefined4 uStack_80c8;
  undefined4 uStack_80c4;
  int iStack_80c0;
  undefined4 uStack_80bc;
  undefined4 uStack_80b8;
  undefined1 auStack_80b4 [32768];
  uint uStack_b4;
  undefined *puStack_b0;
  undefined *puStack_ac;
  undefined *puStack_a8;
  undefined4 *puStack_a4;
  undefined1 *puStack_a0;
  undefined4 uStack_6c;
  undefined1 auStack_68 [4];
  char *pcStack_64;
  undefined *puStack_60;
  undefined *puStack_5c;
  undefined *puStack_58;
  undefined4 *puStack_54;
  undefined4 local_30;
  undefined4 local_2c;
  uint local_24;
  undefined4 local_20;
  int local_1c;
  
  puVar1 = PTR_DAT_000bc178;
  local_1c = *(int *)PTR___stack_chk_guard_000bccd8;
  if (*(int *)(PTR_DAT_000bc178 + -0x31ec) == 0) {
    uVar3 = FUN_000280f4();
  }
  else {
    xfer_download_queue(*(undefined4 *)(PTR_DAT_000bc178 + -0x3244));
    unaff_s3 = (undefined4 *)sftp_recv();
    puVar1 = (undefined *)xfer_download_gotpkt(*(undefined4 *)(puVar1 + -0x3244),unaff_s3);
    if ((int)puVar1 < 1) {
      param_2 = *(undefined **)PTR_stderr_000bccf0;
      uVar7 = fxp_error();
      FUN_00027ff8(param_2,PTR_s_Server_sent_command_exit_status___000bc188 + -0x4abc,uVar7);
      if (puVar1 == (undefined *)0x80000000) {
        safefree(unaff_s3);
      }
      *(int *)(PTR_DAT_000bc178 + -0x31e0) = *(int *)(PTR_DAT_000bc178 + -0x31e0) + 1;
      uVar3 = 0xffffffff;
    }
    else {
      iVar2 = xfer_download_data(*(undefined4 *)(PTR_DAT_000bc178 + -0x3244),&local_20,&local_24);
      if (iVar2 == 0) {
        local_24 = 0;
      }
      else {
        param_2 = (undefined *)(uint)((int)param_2 < (int)local_24);
        if ((int)local_24 < 1) {
          FUN_00027ff8(*(undefined4 *)PTR_stderr_000bccf0,
                       PTR_s_Server_sent_command_exit_status___000bc188 + -0x4a9c);
          *(int *)(PTR_DAT_000bc178 + -0x31e0) = *(int *)(PTR_DAT_000bc178 + -0x31e0) + 1;
          safefree(local_20);
          uVar3 = 0xffffffff;
          goto LAB_0002d148;
        }
        if (param_2 != (undefined *)0x0) {
          uVar3 = (*(code *)PTR___assert_fail_000bcb00)
                            (PTR_s_Server_sent_command_exit_status___000bc188 + -0x4a7c,
                             PTR_s_Server_sent_command_exit_status___000bc188 + -0x4fb0,0x628,
                             PTR_s_Server_sent_command_exit_status___000bc188 + -0x45f0);
          return uVar3;
        }
        (*(code *)PTR_memcpy_000bccdc)(param_1,local_20);
        safefree(local_20);
      }
      param_2 = PTR_DAT_000bc178;
      puVar1 = PTR_DAT_000bc178 + -0x324c;
      uint64_add32(&local_30,*(undefined4 *)(PTR_DAT_000bc178 + -0x324c),
                   *(undefined4 *)(PTR_DAT_000bc178 + -0x3248),local_24);
      *(undefined4 *)(param_2 + -0x324c) = local_30;
      *(undefined4 *)(param_2 + -0x3248) = local_2c;
      uVar3 = local_24;
    }
  }
LAB_0002d148:
  if (local_1c == *(int *)PTR___stack_chk_guard_000bccd8) {
    return uVar3;
  }
  puVar5 = PTR___stack_chk_fail_000bccb0;
  (*(code *)PTR___stack_chk_fail_000bccb0)();
  pcStack_64 = (char *)**(undefined4 **)(puVar5 + 0x8fa44);
  puStack_60 = param_2;
  puStack_5c = puVar1;
  puStack_58 = param_1;
  puStack_54 = unaff_s3;
  if (*(int *)(*(int *)(puVar5 + 0x8eee4) + -0x31ec) == 0) {
    puVar14 = (undefined *)(*(int *)(puVar5 + 0x8eef4) + -0x17dc);
    (**(code **)(*(int *)(*(int *)(puVar5 + 0x8eee4) + -0x31f4) + 0xc))
              (*(undefined4 *)(*(int *)(puVar5 + 0x8eee4) + -0x31f8),puVar14,1);
    uVar3 = FUN_00028400();
  }
  else {
    xfer_set_error(*(undefined4 *)(*(int *)(puVar5 + 0x8eee4) + -0x3244));
    iVar2 = *(int *)(puVar5 + 0x8eee4);
    unaff_s4 = auStack_68;
    unaff_s3 = &uStack_6c;
    while (iVar24 = xfer_done(*(undefined4 *)(iVar2 + -0x3244)), iVar24 == 0) {
      param_1 = (undefined *)sftp_recv();
      puVar1 = (undefined *)xfer_download_gotpkt(*(undefined4 *)(iVar2 + -0x3244),param_1);
      if ((int)puVar1 < 1) {
        param_2 = (undefined *)**(undefined4 **)(puVar5 + 0x8fa5c);
        uVar7 = fxp_error();
        puVar14 = (undefined *)(*(int *)(puVar5 + 0x8eef4) + -0x4abc);
        FUN_00027ff8(param_2,puVar14,uVar7);
        if (puVar1 == (undefined *)0x80000000) {
          safefree(param_1);
          iVar2 = *(int *)(puVar5 + 0x8eee4);
        }
        else {
          iVar2 = *(int *)(puVar5 + 0x8eee4);
        }
        *(int *)(iVar2 + -0x31e0) = *(int *)(iVar2 + -0x31e0) + 1;
        uVar3 = 0xffffffff;
        goto LAB_0002d318;
      }
      iVar24 = xfer_download_data(*(undefined4 *)(iVar2 + -0x3244),unaff_s3,unaff_s4);
      if (iVar24 != 0) {
        safefree(uStack_6c);
      }
    }
    xfer_cleanup(*(undefined4 *)(*(int *)(puVar5 + 0x8eee4) + -0x3244));
    param_2 = (undefined *)fxp_close_send(*(undefined4 *)(*(int *)(puVar5 + 0x8eee4) + -0x3240));
    uVar7 = sftp_wait_for_reply(param_2);
    puVar14 = param_2;
    fxp_close_recv(uVar7);
    uVar3 = 0;
  }
LAB_0002d318:
  if (pcStack_64 == (char *)**(undefined4 **)(puVar5 + 0x8fa44)) {
    return uVar3;
  }
  pcVar28 = *(code **)(puVar5 + 0x8fa1c);
  pcVar13 = pcStack_64;
  (*pcVar28)();
  pcStack_8138 = pcVar28 + 0x96c70;
  uStack_b4 = **(uint **)(pcVar28 + 0x8f7f8);
  pcStack_812c = pcVar13;
  puStack_8118 = puVar14;
  puStack_b0 = param_2;
  puStack_ac = puVar1;
  puStack_a8 = param_1;
  puStack_a4 = unaff_s3;
  puStack_a0 = unaff_s4;
  iVar2 = (**(code **)(pcVar28 + 0x8ef84))();
  if ((*(int *)(*(int *)(pcStack_8138 + -0x7fd8) + -0x31d4) != 0) && (iVar2 != 2)) {
    FUN_00028270(*(int *)(pcStack_8138 + -0x7fc8) + -0x4a68,pcStack_812c);
  }
  scp_sink_init();
  iVar24 = 0;
  pcStack_8128 = (code *)(*(int *)(pcStack_8138 + -0x7db0) + -0x7d90);
  pcStack_810c = (code *)(*(int *)(pcStack_8138 + -0x7db0) + -0x6cb8);
  iStack_8110 = *(int *)(pcStack_8138 + -0x7fc8) + -0x4878;
LAB_0002d77c:
  do {
    iVar4 = scp_get_sink_action(&iStack_80d8);
    if ((iVar4 != 0) || (iStack_80d8 == 3)) goto LAB_0002da64;
  } while (iStack_80d8 == 4);
  if (iVar2 == 2) {
    param_1 = auStack_100b0;
    puVar1 = (undefined *)(**(code **)(pcStack_8138 + -0x7cac))(puStack_80d0,1);
    if (puStack_80d0 != puVar1) {
      puVar23 = *(undefined4 **)(pcStack_8138 + -0x7460);
      param_1 = (undefined *)(*(int *)(pcStack_8138 + -0x7fcc) + 0x7ff8);
      FUN_00027ff8(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x4a54);
      FUN_00027ff8(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x4a20,puVar1);
    }
    iVar4 = (**(code **)(pcStack_8138 + -0x7640))(puVar1,*(int *)(pcStack_8138 + -0x7fc8) + -0x48b0)
    ;
    if (puVar1[iVar4] == '\0') {
      (*pcStack_8128)(*(int *)(pcStack_8138 + -0x7fc8) + -0x49f8);
    }
    if (puStack_8118 != (undefined *)0x0) {
      param_1 = (undefined *)(**(code **)(pcStack_8138 + -0x7cac))(puStack_8118,1);
      iVar4 = (**(code **)(pcStack_8138 + -0x743c))(puVar1,param_1);
      if ((iVar4 != 0) &&
         (puVar23 = *(undefined4 **)(pcStack_8138 + -0x7460),
         *(int *)(*(int *)(pcStack_8138 + -0x7fd8) + -0x31ec) == 0 &&
         *(int *)(*(int *)(pcStack_8138 + -0x7fd8) + -0x31dc) == 0)) {
        FUN_00027ff8(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x49ac,puVar1);
        FUN_00027ff8(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x4970,param_1);
        FUN_00027ff8(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x4940);
        FUN_00027ff8(*puVar23,*(int *)(pcStack_8138 + -0x7fc8) + -0x48f8);
        puVar1 = param_1;
      }
    }
    if (*pcStack_812c == '\0') {
      unaff_s3 = (undefined4 *)dupstr(puVar1);
    }
    else {
      unaff_s3 = (undefined4 *)(**(code **)(pcStack_8138 + -0x7c78))(pcStack_812c,puVar1);
    }
  }
  else {
    unaff_s3 = (undefined4 *)dupstr(pcStack_812c);
  }
  iVar4 = (**(code **)(pcStack_8138 + -0x7cec))(unaff_s3);
  if (iStack_80d8 == 2) {
    if (iVar4 == 0) {
      iVar4 = (**(code **)(pcStack_8138 + -0x7c80))(unaff_s3);
      if (iVar4 == 0) {
        FUN_0002a658(*(int *)(pcStack_8138 + -0x7fc8) + -0x48ac,unaff_s3);
        safefree(unaff_s3);
        goto LAB_0002d77c;
      }
    }
    else if (iVar4 != 2) {
      FUN_0002a658(*(int *)(pcStack_8138 + -0x7fc8) + -0x4a68,unaff_s3);
      safefree(unaff_s3);
      goto LAB_0002d77c;
    }
    FUN_0002d4e0(unaff_s3,0);
    safefree(unaff_s3);
    goto LAB_0002d77c;
  }
  unaff_s5 = (**(code **)(pcStack_8138 + -0x7c84))(unaff_s3,uStack_80cc);
  if (unaff_s5 == 0) {
    FUN_0002a658(*(int *)(pcStack_8138 + -0x7fc8) + -0x4890,unaff_s3);
    safefree(unaff_s3);
    goto LAB_0002d77c;
  }
  iStack_8120 = scp_accept_filexfer();
  if (iStack_8120 == 0) {
    puVar1 = auStack_100b0;
    uint64_make(&uStack_80f8,0,0);
    uStack_8114 = (**(code **)(pcStack_8138 + -0x7488))(0);
    uStack_811c = (**(code **)(pcStack_8138 + -0x7cac))(unaff_s3,1);
    uint64_make(&uStack_8100,0,0);
    iStack_8124 = *(int *)(pcStack_8138 + -0x7fc8);
    unaff_s7 = *(int *)(pcStack_8138 + -0x7fd8);
LAB_0002db64:
    do {
      iVar4 = uint64_compare(uStack_8100,uStack_80fc,uStack_80c8,uStack_80c4);
      if (-1 < iVar4) goto LAB_0002de88;
      uint64_make(&uStack_80f0,0,0x8000);
      uStack_8148 = uStack_80fc;
      uint64_subtract(&uStack_80e8,uStack_80c8,uStack_80c4,uStack_8100);
      iVar4 = uint64_compare(uStack_80f0,uStack_80ec,uStack_80e8,uStack_80e4);
      if (0 < iVar4) {
        uStack_8148 = uStack_80fc;
        uint64_subtract(&uStack_80f0,uStack_80c8,uStack_80c4,uStack_8100);
      }
      puVar1 = (undefined *)MASKED(auStack_80b4,uStack_80ec);
      if ((int)puVar1 < 1) {
        (*pcStack_8128)(iStack_8124 + -0x5640);
      }
      if (iVar24 == 0) {
        puVar5 = (undefined *)(**(code **)(pcStack_8138 + -0x7c68))(unaff_s5,auStack_80b4,puVar1);
        if (puVar5 == puVar1) {
          if (*(int *)(unaff_s7 + -0x3fa8) != 0) {
            uint64_add32(&uStack_8108,uStack_80f8,uStack_80f4,puVar1);
            uStack_80f8 = uStack_8108;
            uStack_80f4 = uStack_8104;
            iVar4 = (**(code **)(pcStack_8138 + -0x7488))(0);
            if (iVar4 <= iStack_8120) {
              uint64_add32(&uStack_80e0,uStack_8100,uStack_80fc,puVar1);
              iVar4 = uint64_compare(uStack_80e0,uStack_80dc,uStack_80c8,uStack_80c4);
              if (iVar4 != 0) goto LAB_0002dc94;
            }
            iStack_8140 = (**(code **)(pcStack_8138 + -0x7488))(0);
            uStack_8144 = uStack_8114;
            uStack_8148 = uStack_80f4;
            iStack_8120 = iStack_8140;
            (*pcStack_810c)(uStack_811c,uStack_80c8,uStack_80c4,uStack_80f8);
          }
LAB_0002dc94:
          param_1 = auStack_100b0;
          uint64_add32(&uStack_8108,uStack_8100,uStack_80fc,puVar1);
          uStack_8100 = uStack_8108;
          uStack_80fc = uStack_8104;
          goto LAB_0002db64;
        }
        if (*(int *)(unaff_s7 + -0x3fa8) != 0) {
          (**(code **)(pcStack_8138 + -0x759c))
                    (1,*(int *)(pcStack_8138 + -0x7fc8) + -0x4850,uStack_811c,iStack_8110);
        }
        uint64_add32(&uStack_8108,uStack_8100,uStack_80fc,puVar1);
      }
      else {
        uint64_add32(&uStack_8108,uStack_8100,uStack_80fc,puVar1);
      }
      param_1 = auStack_100b0;
      iVar24 = 1;
      uStack_8100 = uStack_8108;
      uStack_80fc = uStack_8104;
    } while( true );
  }
  safefree(unaff_s3);
  (**(code **)(pcStack_8138 + -0x7c70))(unaff_s5);
LAB_0002da64:
  pcVar28 = *(code **)(pcStack_8138 + -0x74a0);
  if (uStack_b4 == **(uint **)(pcStack_8138 + -0x7478)) {
    return **(uint **)(pcStack_8138 + -0x7478);
  }
  pcVar30 = version;
  (*pcVar28)();
  pcStack_8168 = pcVar28 + 0x961d8;
  uStack_8160 = 0xffff0000;
  pcStack_815c = pcVar30;
  uVar6 = buildinfo(*(int *)(pcVar28 + 0x8e210) + 0xaa4);
  uVar17 = *(undefined4 *)(pcStack_8168 + -0x7da8);
  iVar4 = *(int *)(pcStack_8168 + -0x7fc8) + -0x482c;
  uVar7 = uVar6;
  (**(code **)(pcStack_8168 + -0x759c))(1);
  safefree(uVar6);
  uVar12 = 0;
  pcVar28 = *(code **)(pcStack_8168 + -0x7504);
  pcVar30 = cmdline_error;
  (*pcVar28)();
  pcStack_8198 = pcVar28 + 0x96158;
  uStack_818c = **(undefined4 **)(pcVar28 + 0x8ece0);
  puVar23 = *(undefined4 **)(pcVar28 + 0x8ecf8);
  uStack_8184 = uVar6;
  puStack_8180 = puVar1;
  pcStack_817c = pcVar30;
  iStack_8174 = iVar4;
  uStack_8170 = uVar17;
  uStack_816c = uVar7;
  (**(code **)(pcVar28 + 0x8ec90))(*(int *)(pcVar28 + 0x8e190) + -0x4e28,1,6,*puVar23);
  piStack_8190 = &iStack_8174;
  (**(code **)(pcStack_8198 + -0x7444))(*puVar23,1,uVar12);
  iVar15 = 1;
  (**(code **)(pcStack_8198 + -0x74c8))(*(int *)(pcStack_8198 + -0x7fc8) + -0x481c,1,0x27,*puVar23);
  iVar4 = 1;
  pcVar28 = *(code **)(pcStack_8198 + -0x7504);
  pcVar30 = psftp_main;
  (*pcVar28)();
  pcStack_81e8 = pcVar28 + 0x9609c;
  puStack_81d4 = (undefined4 *)**(undefined4 **)(pcVar28 + 0x8ec24);
  **(undefined4 **)(pcVar28 + 0x8e144) = 1;
  **(undefined4 **)(pcVar28 + 0x8e158) = 2;
  **(undefined4 **)(pcVar28 + 0x8e120) = 1;
  puStack_81d0 = puVar23;
  uStack_81cc = uVar12;
  puStack_81c8 = param_1;
  puStack_81c4 = unaff_s3;
  iStack_81c0 = iVar24;
  iStack_81bc = unaff_s5;
  piStack_81b8 = &iStack_80d8;
  iStack_81b4 = unaff_s7;
  iStack_81b0 = iVar2;
  pcStack_81ac = pcVar30;
  (**(code **)(pcVar28 + 0x8e444))();
  uVar7 = conf_new();
  *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31fc) = uVar7;
  do_defaults(0,uVar7);
  **(undefined4 **)(pcStack_81e8 + -0x7f60) = 0;
  pcVar28 = pcStack_81e8;
  if (iVar4 < 2) {
    iVar2 = 1;
  }
  else {
    pcVar13 = *(char **)(iVar15 + 4);
    piVar19 = (int *)(iVar15 + 4);
    if (*pcVar13 == '-') {
      iVar25 = *(int *)(pcStack_81e8 + -0x7fd8);
      iVar26 = *(int *)(pcStack_81e8 + -0x7fc8);
      pcVar27 = (char *)(*(int *)(pcStack_81e8 + -0x7fc8) + -0x47b8);
      iVar29 = *(int *)(pcStack_81e8 + -0x7fc8);
      pcStack_81dc = (code *)(*(int *)(pcStack_81e8 + -0x7db0) + -0x79e4);
      iVar24 = 1;
LAB_0002e488:
      iVar2 = iVar24 + 1;
      uVar7 = 0;
      if (iVar2 < iVar4) {
        uVar7 = *(undefined4 *)(iVar15 + (iVar24 + 1) * 4);
      }
      iVar8 = cmdline_process_param(pcVar13,uVar7,1,*(undefined4 *)(iVar25 + -0x31fc));
      pcVar28 = pcStack_81e8;
      if (iVar8 == -2) {
        cmdline_error(*(int *)(pcStack_81e8 + -0x7fc8) + -0x47e4,*piVar19);
        uVar7 = extraout_v1;
LAB_0002e1d0:
        iVar2 = iVar24;
        if ((**(uint **)(pcVar28 + -0x7f44) & 1) != 0) {
          *(undefined4 *)(*(int *)(pcVar28 + -0x7fd8) + -0x31c8) = uVar7;
        }
        goto LAB_0002e464;
      }
      uVar7 = 1;
      if (iVar8 == 2) goto LAB_0002e464;
      if (iVar8 == 1) goto LAB_0002e1d0;
      iVar20 = *piVar19;
      iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar26 + -0x47c0);
      if (iVar8 == 0) {
        (**(code **)(pcStack_81e8 + -0x7c54))();
        uVar3 = 1;
        goto LAB_0002e878;
      }
      iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20);
      if (iVar8 == 0) {
        *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31cc) = 1;
        pcVar28 = pcStack_81e8;
        iVar2 = iVar24;
      }
      else {
        iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar29 + -0x47b4);
        if (iVar8 == 0) {
          *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d0) = 1;
          pcVar28 = pcStack_81e8;
          iVar2 = iVar24;
        }
        else {
          iVar8 = (**(code **)(pcStack_81e8 + -0x743c))
                            (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47b0);
          if (iVar8 == 0) {
            *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fa8) = 0;
            pcVar28 = pcStack_81e8;
            iVar2 = iVar24;
          }
          else {
            iVar8 = (**(code **)(pcStack_81e8 + -0x743c))
                              (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47ac);
            if ((iVar8 != 0) &&
               (iVar8 = (**(code **)(pcStack_81e8 + -0x743c))
                                  (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47a8), iVar8 != 0))
            {
              iVar8 = (**(code **)(pcStack_81e8 + -0x743c))
                                (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x47a4);
              if (iVar8 != 0) {
                iVar8 = (**(code **)(pcStack_81e8 + -0x743c))
                                  (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x479c);
                iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);
                if (iVar8 == 0) {
LAB_0002e348:
                  pcVar28 = pcStack_81e8;
                  version();
                }
                else {
                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar16 + -0x4798);
                  iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);
                  if (iVar8 == 0) goto LAB_0002e348;
                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))(iVar20,iVar16 + -0x478c);
                  iVar16 = *(int *)(pcStack_81e8 + -0x7fc8);
                  pcVar28 = pcStack_81e8;
                  if (iVar8 == 0) {
                    *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31c4) = 1;
                    iVar2 = iVar24;
                    goto LAB_0002e464;
                  }
                }
                iVar8 = (**(code **)(pcVar28 + -0x743c))(iVar20,iVar16 + -0x4788);
                if (iVar8 == 0) {
                  **(undefined4 **)(pcStack_81e8 + -0x7c4c) = 1;
                  pcVar28 = pcStack_81e8;
                  iVar2 = iVar24;
                }
                else {
                  iVar8 = (**(code **)(pcStack_81e8 + -0x743c))
                                    (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4780);
                  if (iVar8 == 0) {
                    *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31dc) = 1;
                    pcVar28 = pcStack_81e8;
                    iVar2 = iVar24;
                  }
                  else {
                    iVar8 = (**(code **)(pcStack_81e8 + -0x743c))
                                      (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4778);
                    if (iVar8 == 0) {
                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac) = 0;
                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0) = 1;
                      pcVar28 = pcStack_81e8;
                      iVar2 = iVar24;
                      goto LAB_0002e464;
                    }
                    iVar8 = (**(code **)(pcStack_81e8 + -0x743c))
                                      (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4770);
                    if (iVar8 == 0) {
                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fac) = 1;
                      *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x3fb0) = 0;
                      pcVar28 = pcStack_81e8;
                      iVar2 = iVar24;
                    }
                    else {
                      iVar24 = (**(code **)(pcStack_81e8 + -0x743c))
                                         (iVar20,*(int *)(pcStack_81e8 + -0x7fc8) + -0x4768);
                      pcVar28 = pcStack_81e8;
                      if (iVar24 == 0) goto LAB_0002e52c;
                      cmdline_error(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4764,iVar20);
                    }
                  }
                }
                goto LAB_0002e464;
              }
            }
            (*pcStack_81dc)();
            pcVar28 = pcStack_81e8;
            iVar2 = iVar24;
          }
        }
      }
LAB_0002e464:
      iVar2 = iVar2 + 1;
      if (iVar4 <= iVar2) goto LAB_0002e52c;
      piVar19 = (int *)(iVar15 + iVar2 * 4);
      pcVar13 = (char *)*piVar19;
      iVar24 = iVar2;
      if (*pcVar13 != '-') goto LAB_0002e52c;
      goto LAB_0002e488;
    }
    iVar2 = 1;
  }
LAB_0002e52c:
  iVar4 = iVar4 - iVar2;
  *(undefined4 *)(*(int *)(pcVar28 + -0x7fd8) + -0x31f4) = 0;
  puVar23 = (undefined4 *)(iVar15 + iVar2 * 4);
  if (*(int *)(*(int *)(pcVar28 + -0x7fd8) + -0x31c4) == 0) {
    if (iVar4 < 2) {
      FUN_0002861c();
      puVar18 = puVar23 + iVar4 + 0x3fffffff;
      iVar24 = FUN_00028968(*puVar18);
      iVar2 = *(int *)(pcStack_81e8 + -0x7fd8);
      if (iVar24 != 0) goto LAB_0002e90c;
      *(undefined4 *)(iVar2 + -0x31f0) = 0;
LAB_0002efd8:
      iVar2 = *(int *)(pcStack_81e8 + -0x7fc8);
LAB_0002efdc:
      FUN_00028270(iVar2 + -0x4668);
      pcVar13 = (char *)*puVar23;
LAB_0002eb34:
      uVar7 = puVar23[1];
      puVar9 = (undefined1 *)FUN_00028968(pcVar13);
      if (puVar9 == (undefined1 *)0x0) {
        FUN_00028270(*(int *)(pcStack_81e8 + -0x7fc8) + -0x463c);
        uRam00000000 = 0;
      }
      else {
        *puVar9 = 0;
      }
      if (puVar9[1] == '\0') {
        pcVar27 = (char *)(*(int *)(pcStack_81e8 + -0x7fc8) + -0x48b0);
      }
      else {
        pcVar27 = puVar9 + 1;
      }
      puVar9 = (undefined1 *)(**(code **)(pcStack_81e8 + -0x75b8))(pcVar13,0x40);
      if (puVar9 == (undefined1 *)0x0) {
        pcVar21 = (char *)0x0;
      }
      else {
        *puVar9 = 0;
        cVar11 = *pcVar13;
        pcVar21 = pcVar13;
        pcVar13 = puVar9 + 1;
        if (cVar11 == '\0') {
          pcVar21 = (char *)0x0;
        }
      }
      if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31c8) == 0) {
        iVar2 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;
      }
      else {
        iVar2 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47f4;
      }
      if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31cc) == 0) {
        iVar24 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;
      }
      else {
        iVar24 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47f0;
      }
      if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d0) == 0) {
        iVar4 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;
      }
      else {
        iVar4 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47ec;
      }
      if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4) == 0) {
        iStack_81f0 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;
      }
      else {
        iStack_81f0 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47e8;
      }
      pcStack_81ec = pcVar27;
      uVar6 = dupprintf(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4618,iVar2,iVar24,iVar4);
      FUN_00028a00(pcVar13,pcVar21,uVar6);
      safefree(uVar6);
      iVar2 = scp_sink_setup(pcVar27,*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d0),
                             *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31cc));
      if (iVar2 == 0) {
        FUN_0002d4e0(uVar7);
        iVar2 = *(int *)(pcStack_81e8 + -0x7fd8);
        goto LAB_0002e788;
      }
    }
    else {
      if (iVar4 < 3) {
        puVar18 = puVar23 + iVar4 + 0x3fffffff;
        iVar2 = FUN_00028968(*puVar18);
        if (iVar2 == 0) {
          *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f0) = 0;
          iVar2 = *(int *)(pcStack_81e8 + -0x7fc8);
          if (iVar4 != 2) goto LAB_0002efdc;
          pcVar13 = (char *)*puVar23;
          goto LAB_0002eb34;
        }
      }
      else {
        *(undefined4 *)(*(int *)(pcVar28 + -0x7fd8) + -0x31d4) = 1;
        puVar18 = puVar23 + iVar4 + 0x3fffffff;
        iVar2 = FUN_00028968(*puVar18);
        if (iVar2 == 0) {
          *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f0) = 0;
          goto LAB_0002efd8;
        }
      }
      iVar2 = *(int *)(pcStack_81e8 + -0x7fd8);
LAB_0002e90c:
      *(undefined4 *)(iVar2 + -0x31f0) = 1;
      pcVar13 = (char *)*puVar18;
      puVar9 = (undefined1 *)FUN_00028968(pcVar13);
      if (puVar9 == (undefined1 *)0x0) {
        FUN_00028270(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4720);
        uRam00000000 = 0;
      }
      else {
        *puVar9 = 0;
      }
      if (puVar9[1] == '\0') {
        pcVar21 = (char *)(*(int *)(pcStack_81e8 + -0x7fc8) + -0x48b0);
      }
      else {
        pcVar21 = puVar9 + 1;
      }
      puVar9 = (undefined1 *)(**(code **)(pcStack_81e8 + -0x75b8))(pcVar13,0x40);
      if (puVar9 == (undefined1 *)0x0) {
        pcVar27 = (char *)0x0;
      }
      else {
        *puVar9 = 0;
        cVar11 = *pcVar13;
        pcVar27 = pcVar13;
        pcVar13 = puVar9 + 1;
        if (cVar11 == '\0') {
          pcVar27 = (char *)0x0;
        }
      }
      if (iVar4 == 2) {
        iVar2 = FUN_00028968(*puVar23);
        if (iVar2 != 0) {
          FUN_00028270(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4704,*puVar23);
        }
        iVar2 = (**(code **)(pcStack_81e8 + -0x7c30))(*puVar23,1);
        if (iVar2 == 0) {
          FUN_00028270(*(int *)(pcStack_81e8 + -0x7fc8) + -0x46e0,*puVar23);
          iVar24 = *(int *)(pcStack_81e8 + -0x7fd8);
        }
        else {
          iVar24 = *(int *)(pcStack_81e8 + -0x7fd8);
          if (iVar2 == 2) {
            *(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4) = 1;
            goto LAB_0002e988;
          }
        }
      }
      else {
LAB_0002e988:
        iVar24 = *(int *)(pcStack_81e8 + -0x7fd8);
      }
      if (*(int *)(iVar24 + -0x31c8) == 0) {
        iVar2 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;
      }
      else {
        iVar2 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47f4;
      }
      if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31cc) == 0) {
        iVar24 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;
      }
      else {
        iVar24 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47f0;
      }
      if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d0) == 0) {
        iVar15 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;
      }
      else {
        iVar15 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47ec;
      }
      if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4) == 0) {
        iStack_81f0 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x17dc;
      }
      else {
        iStack_81f0 = *(int *)(pcStack_81e8 + -0x7fc8) + -0x47e8;
      }
      pcStack_81ec = pcVar21;
      uVar7 = dupprintf(*(int *)(pcStack_81e8 + -0x7fc8) + -0x46c0,iVar2,iVar24,iVar15);
      FUN_00028a00(pcVar13,pcVar27,uVar7);
      safefree(uVar7);
      pcVar27 = *(char **)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31d4);
      iVar2 = scp_source_setup(pcVar21);
      if ((iVar2 == 0) && (1 < iVar4)) {
        puVar18 = puVar23 + iVar4 + -1;
        iVar24 = *(int *)(pcStack_81e8 + -0x7db0);
        iVar25 = *(int *)(pcStack_81e8 + -0x7fc8);
        iVar15 = *(int *)(pcStack_81e8 + -0x7db0);
        iVar4 = *(int *)(pcStack_81e8 + -0x7fc8);
        do {
          pcVar13 = (char *)*puVar23;
          iVar2 = FUN_00028968(pcVar13);
          if (iVar2 == 0) {
            pcVar27 = (char *)0x1;
            iVar2 = (**(code **)(pcStack_81e8 + -0x7c30))(pcVar13,1,pcVar13);
            if (iVar2 == 0) {
              (*(code *)(iVar15 + -0x59a8))(iVar25 + -0x4688);
              pcVar27 = pcVar13;
            }
            else if (iVar2 == 1) {
              (*(code *)(iVar24 + -0x4b8c))(pcVar13);
            }
            else {
              iVar2 = (**(code **)(pcStack_81e8 + -0x7c2c))();
              if (iVar2 == 0) {
                (*(code *)(iVar15 + -0x59a8))(iVar25 + -0x4688);
                pcVar27 = pcVar13;
              }
              else {
                while (iVar26 = (**(code **)(pcStack_81e8 + -0x7c28))(iVar2), iVar26 != 0) {
                  (*(code *)(iVar24 + -0x4b8c))(iVar26);
                  safefree(iVar26);
                }
                (**(code **)(pcStack_81e8 + -0x7c24))(iVar2);
              }
            }
          }
          else {
            pcVar27 = (char *)(iVar4 + -0x46ac);
            FUN_00027ff8(**(undefined4 **)(pcStack_81e8 + -0x7460));
            *(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31e0) =
                 *(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31e0) + 1;
          }
          puVar23 = puVar23 + 1;
          iVar2 = *(int *)(pcStack_81e8 + -0x7fd8);
        } while (puVar18 != puVar23);
        goto LAB_0002e788;
      }
    }
  }
  else {
    if (iVar4 == 1) {
      pcVar13 = (char *)*puVar23;
    }
    else {
      FUN_0002861c();
      pcVar13 = (char *)*puVar23;
    }
    puVar9 = (undefined1 *)FUN_00028968(pcVar13);
    if (puVar9 == (undefined1 *)0x0) {
      FUN_00028270(*(int *)(pcStack_81e8 + -0x7fc8) + -0x4750);
      uRam00000000 = 0;
    }
    else {
      *puVar9 = 0;
    }
    if (puVar9[1] == '\0') {
      puVar9 = (undefined1 *)(**(code **)(pcStack_81e8 + -0x75b8))(pcVar13,0x40);
      if (puVar9 == (undefined1 *)0x0) {
        puVar23 = (undefined4 *)safemalloc(0x68,1);
        iVar2 = *(int *)(pcStack_81e8 + -0x7fc8);
        uVar7 = *(undefined4 *)(iVar2 + -0x4728);
        *puVar23 = *(undefined4 *)(iVar2 + -0x472c);
        puVar23[1] = uVar7;
        *(undefined1 *)(puVar23 + 2) = *(undefined1 *)(iVar2 + -0x4724);
        iVar2 = (**(code **)(pcStack_81e8 + -0x752c))(puVar23);
        pcVar10 = (char *)((int)puVar23 + iVar2);
        pcVar21 = (char *)(*(int *)(pcStack_81e8 + -0x7fc8) + -0x48b0);
        cVar11 = '.';
        pcVar27 = (char *)0x0;
        pcVar22 = pcVar21;
        goto LAB_0002e6b4;
      }
      pcVar21 = (char *)(*(int *)(pcStack_81e8 + -0x7fc8) + -0x48b0);
LAB_0002e5ac:
      *puVar9 = 0;
      cVar11 = *pcVar13;
      pcVar27 = pcVar13;
      pcVar13 = puVar9 + 1;
      if (cVar11 == '\0') {
        pcVar27 = (char *)0x0;
      }
    }
    else {
      pcVar21 = puVar9 + 1;
      puVar9 = (undefined1 *)(**(code **)(pcStack_81e8 + -0x75b8))(pcVar13);
      if (puVar9 != (undefined1 *)0x0) goto LAB_0002e5ac;
      pcVar27 = (char *)0x0;
    }
    iVar2 = (**(code **)(pcStack_81e8 + -0x752c))(pcVar21);
    puVar23 = (undefined4 *)safemalloc((iVar2 + 0x19) * 4,1);
    iVar2 = *(int *)(pcStack_81e8 + -0x7fc8);
    uVar7 = *(undefined4 *)(iVar2 + -0x4728);
    *puVar23 = *(undefined4 *)(iVar2 + -0x472c);
    puVar23[1] = uVar7;
    *(undefined1 *)(puVar23 + 2) = *(undefined1 *)(iVar2 + -0x4724);
    iVar2 = (**(code **)(pcStack_81e8 + -0x752c))(puVar23);
    pcVar10 = (char *)((int)puVar23 + iVar2);
    cVar11 = *pcVar21;
    pcVar22 = pcVar21;
    while (cVar11 != '\0') {
LAB_0002e6b4:
      if (cVar11 == '\'') {
        builtin_strncpy(pcVar10,"\'\\\'\'",4);
        pcVar10 = pcVar10 + 4;
      }
      else {
        *pcVar10 = cVar11;
        pcVar10 = pcVar10 + 1;
      }
      pcVar21 = pcVar21 + 1;
      cVar11 = *pcVar21;
    }
    *pcVar10 = '\'';
    pcVar10[1] = '\0';
    FUN_00028a00(pcVar13,pcVar27,puVar23);
    safefree(puVar23);
    if (*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31ec) != 0) {
      scp_sftp_listdir(pcVar22);
      iVar2 = *(int *)(pcStack_81e8 + -0x7fd8);
      goto LAB_0002e788;
    }
    puVar23 = *(undefined4 **)(pcStack_81e8 + -0x7594);
    while( true ) {
      pcVar27 = (char *)0x1;
      iVar2 = FUN_000280f4(&cStack_81d5);
      if (iVar2 < 1) break;
      (**(code **)(pcStack_81e8 + -0x75c4))((int)cStack_81d5,*puVar23);
    }
  }
  iVar2 = *(int *)(pcStack_81e8 + -0x7fd8);
LAB_0002e788:
  pcVar28 = *(code **)(pcStack_81e8 + -0x7c44);
  if (*(int *)(iVar2 + -0x31f4) != 0) {
    iVar2 = (**(code **)(*(int *)(iVar2 + -0x31f4) + 0x20))
                      (*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f8));
    pcVar28 = *(code **)(pcStack_81e8 + -0x7c44);
    if (iVar2 != 0) {
      (**(code **)(*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f4) + 0x18))
                (*(undefined4 *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31f8),0xc);
      **(undefined4 **)(pcStack_81e8 + -0x7db4) = 1;
      pcVar27 = (char *)0x1;
      FUN_000280f4(&cStack_81d5);
      pcVar28 = *(code **)(pcStack_81e8 + -0x7c44);
    }
  }
  (*pcVar28)();
  cmdline_cleanup();
  (**(code **)(pcStack_81e8 + -0x7d88))(0);
  iVar20 = *(int *)(pcStack_81e8 + -0x7fd8);
  iVar24 = *(int *)(pcStack_81e8 + -0x7fd8);
  (**(code **)(*(int *)(iVar24 + -0x31f4) + 4))(*(undefined4 *)(iVar20 + -0x31f8));
  *(undefined4 *)(iVar20 + -0x31f8) = 0;
  *(undefined4 *)(iVar24 + -0x31f4) = 0;
  (**(code **)(pcStack_81e8 + -0x7c3c))();
  uVar3 = (uint)(*(int *)(*(int *)(pcStack_81e8 + -0x7fd8) + -0x31e0) != 0);
LAB_0002e878:
  if (puStack_81d4 == (undefined4 *)**(int **)(pcStack_81e8 + -0x7478)) {
    return uVar3;
  }
  pcVar28 = *(code **)(pcStack_81e8 + -0x74a0);
  uVar12 = 0x2f008;
  puVar23 = puStack_81d4;
  (*pcVar28)();
  pcStack_8218 = pcVar28 + 0x95140;
  uVar7 = *puVar23;
  uVar6 = *(undefined4 *)pcVar27;
  iStack_820c = iVar24;
  iStack_8208 = iVar20;
  uStack_8204 = uVar12;
  iVar2 = (**(code **)(pcVar28 + 0x8dd04))(uVar7,*(int *)(pcVar28 + 0x8d178) + -0x4584);
  if (iVar2 == 0) {
    uVar3 = 0xffffffff;
  }
  else {
    iVar2 = (**(code **)(pcStack_8218 + -0x743c))(uVar6,*(int *)(pcStack_8218 + -0x7fc8) + -0x4584);
    if (iVar2 == 0) {
      uVar3 = 1;
    }
    else {
      uVar3 = (**(code **)(pcStack_8218 + -0x743c))(uVar7,uVar6);
    }
  }
  return uVar3;
LAB_0002de88:
  if (iStack_80c0 != 0) {
    (**(code **)(pcStack_8138 + -0x7c60))(unaff_s5,uStack_80b8,uStack_80bc);
  }
  (**(code **)(pcStack_8138 + -0x7c70))(unaff_s5);
  if (iVar24 == 0) {
    scp_finish_filerecv();
    safefree(unaff_s3);
    safefree(uStack_80d4);
  }
  else {
    FUN_0002a658(*(int *)(pcStack_8138 + -0x7fc8) + -0x483c,unaff_s3);
    safefree(unaff_s3);
  }
  goto LAB_0002d77c;
}

