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

CURLcode curl_easy_pause(Curl_easy *data,int action)

{
  undefined *puVar1;
  undefined3 extraout_var;
  undefined3 extraout_var_00;
  Curl_easy *pCVar2;
  curl_llist_element *pcVar3;
  _Bool _Var4;
  Curl_easy *easy;
  tempbuf *ptVar5;
  connectdata *ptr;
  void *data_00;
  connectdata *pcVar6;
  connectdata *buf;
  connectdata *in_a2;
  connectdata *in_a3;
  connectdata *pcVar7;
  int *piVar8;
  int *piVar9;
  CURLcode CVar10;
  tempbuf *unaff_s4;
  connectdata *pcVar11;
  uint uVar12;
  uint uVar13;
  undefined *puVar14;
  code *pcVar15;
  code *pcVar16;
  curl_socket_t cStack_e0;
  Curl_easy *pCStack_dc;
  connectdata *pcStack_d8;
  void *pvStack_d4;
  int *piStack_d0;
  connectdata *pcStack_cc;
  connectdata *pcStack_c8;
  connectdata *pcStack_c4;
  Curl_easy *pCStack_c0;
  code *pcStack_bc;
  connectdata *pcStack_98;
  Curl_easy *pCStack_94;
  connectdata *pcStack_90;
  Curl_easy *pCStack_8c;
  connectdata *pcStack_88;
  undefined *puStack_84;
  Curl_easy *pCStack_80;
  CURLcode CStack_7c;
  tempbuf *ptStack_78;
  code *pcStack_74;
  Curl_easy *local_58;
  tempbuf writebuf [3];
  
  puVar1 = PTR___stack_chk_guard_000a6fe0;
  pcVar6 = (connectdata *)((action & 1U) << 4 | (action & 4U) << 3);
  pcVar7 = (connectdata *)((uint)pcVar6 | (data->req).keepon & 0xffffffcfU);
  (data->req).keepon = (int)pcVar7;
  easy = *(Curl_easy **)puVar1;
  buf = pcVar6;
  if (((action & 1U) == 0) && (uVar13 = (data->state).tempcount, uVar13 != 0)) {
    pcVar11 = data->conn;
    unaff_s4 = writebuf;
    pCVar2 = data;
    ptVar5 = unaff_s4;
    do {
      in_a3 = (connectdata *)(pCVar2->state).tempwrite[0].buf;
      pcVar3 = &pCVar2->connect_queue;
      (pCVar2->state).tempwrite[0].buf = (char *)0x0;
      ptVar5->buf = (char *)in_a3;
      in_a2 = (connectdata *)(pCVar2->state).tempwrite[0].len;
      buf = (connectdata *)(pCVar2->state).tempwrite[0].type;
      ptVar5->len = (size_t)in_a2;
      ptVar5->type = (int)buf;
      pCVar2 = (Curl_easy *)pcVar3;
      ptVar5 = ptVar5 + 1;
    } while (pcVar3 != (curl_llist_element *)(data->sockets + uVar13 * 3 + -0x14));
    local_58 = pcVar11->data;
    (data->state).tempcount = 0;
    if (local_58 == data) {
      local_58 = (Curl_easy *)0x0;
    }
    else {
      pcVar11->data = data;
    }
    puVar14 = PTR_Curl_cfree_000a6144;
    uVar12 = 0;
    CVar10 = CURLE_OK;
    do {
      ptr = (connectdata *)unaff_s4->buf;
      if (CVar10 == CURLE_OK) {
        in_a3 = (connectdata *)unaff_s4->len;
        buf = (connectdata *)unaff_s4->type;
        in_a2 = ptr;
        CVar10 = Curl_client_write(pcVar11,(int)buf,(char *)ptr,(size_t)in_a3);
      }
      uVar12 = uVar12 + 1;
      unaff_s4 = unaff_s4 + 1;
      (**(code **)puVar14)(ptr);
    } while (uVar13 != uVar12);
    if (local_58 != (Curl_easy *)0x0) {
      pcVar11->data = local_58;
    }
    pcStack_88 = pcVar7;
    if (CVar10 != CURLE_OK) goto LAB_0003d0fc;
  }
  if (pcVar6 != (connectdata *)0x30) {
    in_a2 = (connectdata *)&DAT_00000006;
    buf = (connectdata *)0x0;
    Curl_expire(data,0,EXPIRE_RUN_NOW);
  }
  CVar10 = CURLE_OK;
  Curl_updatesocket(data);
  pcStack_88 = pcVar6;
LAB_0003d0fc:
  if (easy == *(Curl_easy **)puVar1) {
    return CVar10;
  }
  pcVar15 = curl_easy_recv;
  puVar14 = PTR___stack_chk_fail_000a6c54;
  (*(code *)PTR___stack_chk_fail_000a6c54)();
  piVar8 = *(int **)(puVar14 + 0x69e50);
  puStack_84 = puVar1;
  pCStack_8c = (Curl_easy *)*piVar8;
  pcVar6 = buf;
  pcVar7 = in_a2;
  pcVar11 = in_a3;
  pCStack_80 = data;
  CStack_7c = CVar10;
  ptStack_78 = unaff_s4;
  pcStack_74 = pcVar15;
  _Var4 = Curl_is_in_callback(easy);
  if (CONCAT31(extraout_var,_Var4) == 0) {
    pcVar7 = (connectdata *)&pcStack_90;
    pcVar6 = (connectdata *)&pcStack_98;
    CVar10 = easy_connection(easy,(curl_socket_t *)pcVar6,(connectdata **)pcVar7);
    if (CVar10 == CURLE_OK) {
      in_a3->data = (Curl_easy *)0x0;
      pcVar7 = buf;
      pcVar11 = in_a2;
      CVar10 = Curl_read(pcStack_90,(curl_socket_t)pcStack_98,(char *)buf,(size_t)in_a2,
                         (ssize_t *)&pCStack_94);
      pcVar6 = pcStack_98;
      if (CVar10 == CURLE_OK) {
        in_a3->data = pCStack_94;
      }
    }
  }
  else {
    CVar10 = CURLE_RECURSIVE_API_CALL;
  }
  if (pCStack_8c == (Curl_easy *)*piVar8) {
    return CVar10;
  }
  pcVar15 = *(code **)(puVar14 + 0x69ac4);
  pcVar16 = curl_easy_send;
  pCVar2 = pCStack_8c;
  (*pcVar15)();
  piVar9 = *(int **)(pcVar15 + 0x69d5c);
  pcStack_d8 = (connectdata *)0x0;
  pvStack_d4 = (void *)*piVar9;
  piStack_d0 = piVar8;
  pcStack_cc = in_a3;
  pcStack_c8 = buf;
  pcStack_c4 = in_a2;
  pCStack_c0 = easy;
  pcStack_bc = pcVar16;
  _Var4 = Curl_is_in_callback(pCVar2);
  if (CONCAT31(extraout_var_00,_Var4) == 0) {
    CVar10 = easy_connection(pCVar2,&cStack_e0,&pcStack_d8);
    if (CVar10 == CURLE_OK) {
      pcVar11->data = (Curl_easy *)0x0;
      CVar10 = Curl_write(pcStack_d8,cStack_e0,pcVar6,(size_t)pcVar7,(ssize_t *)&pCStack_dc);
      if (pCStack_dc == (Curl_easy *)&DAT_ffffffff) {
        CVar10 = CURLE_SEND_ERROR;
      }
      else if (CVar10 == CURLE_OK && pCStack_dc == (Curl_easy *)0x0) {
        CVar10 = CURLE_AGAIN;
      }
      else {
        pcVar11->data = pCStack_dc;
      }
    }
  }
  else {
    CVar10 = CURLE_RECURSIVE_API_CALL;
  }
  if (pvStack_d4 == (void *)*piVar9) {
    return CVar10;
  }
  data_00 = pvStack_d4;
  (**(code **)(pcVar15 + 0x699d0))();
  if ((data_00 != (void *)0x0) && (*(int *)((int)data_00 + 0x1030) == -0x3f212453)) {
    if (*(int *)((int)data_00 + 0x88) != 0) {
      CVar10 = Curl_upkeep((conncache *)(*(int *)((int)data_00 + 0x88) + 0x8c),data_00);
      return CVar10;
    }
    return CURLE_OK;
  }
  return CURLE_BAD_FUNCTION_ARGUMENT;
}



int curl_easy_pause(int param_1,uint param_2,int ***param_3,int ***param_4)

{
  undefined *puVar1;
  int iVar2;
  undefined4 *puVar3;
  int ***pppiVar4;
  int ***pppiVar5;
  int ***pppiVar6;
  int ***pppiVar7;
  int *piVar8;
  int iVar9;
  undefined4 *unaff_s4;
  int *piVar10;
  int iVar11;
  undefined *puVar12;
  code *pcVar13;
  code *pcVar14;
  undefined4 uStack_e0;
  int *piStack_dc;
  undefined4 uStack_d8;
  int iStack_d4;
  int *piStack_d0;
  int **ppiStack_cc;
  int **ppiStack_c8;
  int **ppiStack_c4;
  int iStack_c0;
  code *pcStack_bc;
  int *piStack_a8;
  undefined *puStack_a0;
  int **ppiStack_98;
  int *piStack_94;
  int *piStack_90;
  int iStack_8c;
  int **ppiStack_88;
  undefined *puStack_84;
  int iStack_80;
  int iStack_7c;
  undefined4 *puStack_78;
  code *pcStack_74;
  int local_58;
  undefined4 local_50 [9];
  int local_2c;
  
  puVar1 = PTR___stack_chk_guard_000a6fe0;
  pppiVar5 = (int ***)((param_2 & 1) << 4 | (param_2 & 4) << 3);
  pppiVar7 = (int ***)((uint)pppiVar5 | *(uint *)(param_1 + 0x138) & 0xffffffcf);
  *(int ****)(param_1 + 0x138) = pppiVar7;
  local_2c = *(int *)puVar1;
  pppiVar6 = pppiVar5;
  if (((param_2 & 1) == 0) && (iVar11 = *(int *)(param_1 + 0xcbc), iVar11 != 0)) {
    piVar10 = *(int **)(param_1 + 8);
    unaff_s4 = local_50;
    iVar9 = param_1;
    puVar3 = unaff_s4;
    do {
      param_4 = *(int ****)(iVar9 + 0xcc0);
      iVar2 = iVar9 + 0xc;
      *(undefined4 *)(iVar9 + 0xcc0) = 0;
      *puVar3 = param_4;
      param_3 = *(int ****)(iVar9 + 0xcc4);
      pppiVar6 = *(int ****)(iVar9 + 0xcc8);
      puVar3[1] = param_3;
      puVar3[2] = pppiVar6;
      iVar9 = iVar2;
      puVar3 = puVar3 + 3;
    } while (iVar2 != iVar11 * 0xc + param_1);
    local_58 = *piVar10;
    *(undefined4 *)(param_1 + 0xcbc) = 0;
    if (local_58 == param_1) {
      local_58 = 0;
    }
    else {
      *piVar10 = param_1;
    }
    puVar12 = PTR_PTR_free_000a6144;
    iVar2 = 0;
    iVar9 = 0;
    do {
      pppiVar4 = (int ***)*unaff_s4;
      if (iVar9 == 0) {
        param_4 = (int ***)unaff_s4[1];
        pppiVar6 = (int ***)unaff_s4[2];
        param_3 = pppiVar4;
        iVar9 = FUN_000266b0(piVar10);
      }
      iVar2 = iVar2 + 1;
      unaff_s4 = unaff_s4 + 3;
      (**(code **)puVar12)(pppiVar4);
    } while (iVar11 != iVar2);
    if (local_58 != 0) {
      *piVar10 = local_58;
    }
    ppiStack_88 = (int **)pppiVar7;
    if (iVar9 != 0) goto LAB_0003d0fc;
  }
  if (pppiVar5 != (int ***)0x30) {
    param_3 = (int ***)0x6;
    pppiVar6 = (int ***)0x0;
    FUN_00044d9c(param_1);
  }
  iVar9 = 0;
  FUN_000449a8(param_1);
  ppiStack_88 = (int **)pppiVar5;
LAB_0003d0fc:
  if (local_2c == *(int *)puVar1) {
    return iVar9;
  }
  pcVar13 = curl_easy_recv;
  iVar11 = local_2c;
  puVar12 = PTR___stack_chk_fail_000a6c54;
  (*(code *)PTR___stack_chk_fail_000a6c54)();
  puStack_a0 = puVar12 + 0x70f80;
  piVar10 = *(int **)(puVar12 + 0x69e50);
  puStack_84 = puVar1;
  iStack_8c = *piVar10;
  pppiVar5 = pppiVar6;
  pppiVar7 = param_3;
  pppiVar4 = param_4;
  iStack_80 = param_1;
  iStack_7c = iVar9;
  puStack_78 = unaff_s4;
  pcStack_74 = pcVar13;
  iVar9 = FUN_00048420();
  if (iVar9 == 0) {
    pppiVar7 = (int ***)&piStack_90;
    pppiVar5 = &ppiStack_98;
    iVar9 = FUN_0003c4e4(iVar11,pppiVar5,pppiVar7);
    if (iVar9 == 0) {
      piStack_a8 = (int *)&piStack_94;
      *param_4 = (int **)0x0;
      pppiVar7 = pppiVar6;
      pppiVar4 = param_3;
      iVar9 = FUN_00025e14(piStack_90,ppiStack_98,pppiVar6);
      pppiVar5 = (int ***)ppiStack_98;
      if (iVar9 == 0) {
        *param_4 = (int **)piStack_94;
      }
    }
  }
  else {
    iVar9 = 0x5d;
  }
  if (iStack_8c == *piVar10) {
    return iVar9;
  }
  pcVar13 = *(code **)(puStack_a0 + -0x74bc);
  pcVar14 = curl_easy_send;
  iVar9 = iStack_8c;
  (*pcVar13)();
  piVar8 = *(int **)(pcVar13 + 0x69d5c);
  uStack_d8 = 0;
  iStack_d4 = *piVar8;
  piStack_d0 = piVar10;
  ppiStack_cc = (int **)param_4;
  ppiStack_c8 = (int **)pppiVar6;
  ppiStack_c4 = (int **)param_3;
  iStack_c0 = iVar11;
  pcStack_bc = pcVar14;
  iVar11 = FUN_00048420();
  if (iVar11 == 0) {
    iVar11 = FUN_0003c4e4(iVar9,&uStack_e0,&uStack_d8);
    if (iVar11 == 0) {
      *pppiVar4 = (int **)0x0;
      iVar11 = FUN_00025cb8(uStack_d8,uStack_e0,pppiVar5,pppiVar7,&piStack_dc);
      if ((int **)piStack_dc == (int **)0xffffffff) {
        iVar11 = 0x37;
      }
      else if (iVar11 == 0 && (int **)piStack_dc == (int **)0x0) {
        iVar11 = 0x51;
      }
      else {
        *pppiVar4 = (int **)piStack_dc;
      }
    }
  }
  else {
    iVar11 = 0x5d;
  }
  if (iStack_d4 == *piVar8) {
    return iVar11;
  }
  iVar11 = iStack_d4;
  (**(code **)(pcVar13 + 0x699d0))();
  if ((iVar11 != 0) && (*(int *)(iVar11 + 0x1030) == -0x3f212453)) {
    if (*(int *)(iVar11 + 0x88) != 0) {
      iVar11 = FUN_00033390(*(int *)(iVar11 + 0x88) + 0x8c,iVar11);
      return iVar11;
    }
    return 0;
  }
  return 0x2b;
}


lui gp,0x7
addiu gp,gp,0x1160
addu gp,gp,t9
addiu sp,sp,-0x70
sll v0,a1,0x4
sll a1,a1,0x3
sw s1,0x4c(sp)
andi v0,v0,0x10
sw s0,0x48(sp)
andi a1,a1,0x20
sw s2,0x50(sp)
or s2,a0,zero
lw s1,-0x7130(gp)
or a1,v0,a1
lw s0,0x138(a0)
li a0,-0x31
sw gp,0x10(sp)
sw ra,0x6c(sp)
sw s8,0x68(sp)
and s0,s0,a0
sw s7,0x64(sp)
or s0,a1,s0
sw s6,0x60(sp)
andi v0,s0,0x10
sw s5,0x5c(sp)
sw s4,0x58(sp)
sw s3,0x54(sp)
sw s0,0x138(s2)
lw v1,0x0(s1)
sw v1,0x44(sp)
bne v0,zero,0x0003d0dc
_li v0,0x30
lw s7,0xcbc(s2)
beq s7,zero,0x0003d0dc
_sll a0,s7,0x1
lw s5,0x8(s2)
addiu s4,sp,0x20
addu a0,a0,s7
or v0,s2,zero
sll a0,a0,0x2
or v1,s4,zero
addu a0,a0,s2
lw a3,0xcc0(v0)
addiu v0,v0,0xc
addiu v1,v1,0xc
sw zero,0xcb4(v0)
sw a3,-0xc(v1)
lw a2,0xcb8(v0)
lw a1,0xcbc(v0)
sw a2,-0x8(v1)
bne v0,a0,0x0003d058
_sw a1,-0x4(v1)
lw v0,0x0(s5)
sw zero,0xcbc(s2)
beq v0,s2,0x0003d154
_sw v0,0x18(sp)
sw s2,0x0(s5)
lw s8,-0x7fcc(gp)
or s6,zero,zero
or s3,zero,zero
beq s3,zero,0x0003d15c
_lw v1,0x0(s4)
lw t9,0x0(s8)
addiu s6,s6,0x1
or a0,v1,zero
jalr t9
_addiu s4,s4,0xc
bne s7,s6,0x0003d0a0
_lw gp,0x10(sp)
lw v0,0x18(sp)
beq v0,zero,0x0003d0d4
_nop
sw v0,0x0(s5)
bne s3,zero,0x0003d0fc
_li v0,0x30
andi s0,s0,0x30
bne s0,v0,0x0003d13c
_lw t9,-0x7d34(gp)
lw t9,-0x7b4c(gp)
or a0,s2,zero
bal 0x000449a8
_or s3,zero,zero
lw gp,0x10(sp)
lw a0,0x44(sp)
or v0,s3,zero
lw v1,0x0(s1)
bne a0,v1,0x0003d184
_lw ra,0x6c(sp)
lw s8,0x68(sp)
lw s7,0x64(sp)
lw s6,0x60(sp)
lw s5,0x5c(sp)
lw s4,0x58(sp)
lw s3,0x54(sp)
lw s2,0x50(sp)
lw s1,0x4c(sp)
lw s0,0x48(sp)
jr ra
_addiu sp,sp,0x70
li a2,0x6
or a1,zero,zero
bal 0x00044d9c
_or a0,s2,zero
b 0x0003d0e8
_lw gp,0x10(sp)
b 0x0003d094
_sw zero,0x18(sp)
lw t9,-0x7fbc(gp)
or a2,v1,zero
lw a3,0x4(s4)
or a0,s5,zero
lw a1,0x8(s4)
bal 0x000266b0
_sw v1,0x1c(sp)
or s3,v0,zero
b 0x0003d0a8
_lw v1,0x1c(sp)
lw t9,-0x74bc(gp)
jalr t9
_nop
(translation_unit "int curl_easy_pause(int param_1,uint param_2,int ***param_3,int ***param_4)\n\n{\n  undefined *puVar1;\n  int iVar2;\n  undefined4 *puVar3;\n  int ***pppiVar4;\n  int ***pppiVar5;\n  int ***pppiVar6;\n  int ***pppiVar7;\n  int *piVar8;\n  int iVar9;\n  undefined4 *unaff_s4;\n  int *piVar10;\n  int iVar11;\n  undefined *puVar12;\n  code *pcVar13;\n  code *pcVar14;\n  undefined4 uStack_e0;\n  int *piStack_dc;\n  undefined4 uStack_d8;\n  int iStack_d4;\n  int *piStack_d0;\n  int **ppiStack_cc;\n  int **ppiStack_c8;\n  int **ppiStack_c4;\n  int iStack_c0;\n  code *pcStack_bc;\n  int *piStack_a8;\n  undefined *puStack_a0;\n  int **ppiStack_98;\n  int *piStack_94;\n  int *piStack_90;\n  int iStack_8c;\n  int **ppiStack_88;\n  undefined *puStack_84;\n  int iStack_80;\n  int iStack_7c;\n  undefined4 *puStack_78;\n  code *pcStack_74;\n  int local_58;\n  undefined4 local_50 [9];\n  int local_2c;\n  \n  puVar1 = PTR___stack_chk_guard_000a6fe0;\n  pppiVar5 = (int ***)((param_2 & 1) << 4 | (param_2 & 4) << 3);\n  pppiVar7 = (int ***)((uint)pppiVar5 | *(uint *)(param_1 + 0x138) & 0xffffffcf);\n  *(int ****)(param_1 + 0x138) = pppiVar7;\n  local_2c = *(int *)puVar1;\n  pppiVar6 = pppiVar5;\n  if (((param_2 & 1) == 0) && (iVar11 = *(int *)(param_1 + 0xcbc), iVar11 != 0)) {\n    piVar10 = *(int **)(param_1 + 8);\n    unaff_s4 = local_50;\n    iVar9 = param_1;\n    puVar3 = unaff_s4;\n    do {\n      param_4 = *(int ****)(iVar9 + 0xcc0);\n      iVar2 = iVar9 + 0xc;\n      *(undefined4 *)(iVar9 + 0xcc0) = 0;\n      *puVar3 = param_4;\n      param_3 = *(int ****)(iVar9 + 0xcc4);\n      pppiVar6 = *(int ****)(iVar9 + 0xcc8);\n      puVar3[1] = param_3;\n      puVar3[2] = pppiVar6;\n      iVar9 = iVar2;\n      puVar3 = puVar3 + 3;\n    } while (iVar2 != iVar11 * 0xc + param_1);\n    local_58 = *piVar10;\n    *(undefined4 *)(param_1 + 0xcbc) = 0;\n    if (local_58 == param_1) {\n      local_58 = 0;\n    }\n    else {\n      *piVar10 = param_1;\n    }\n    puVar12 = PTR_PTR_free_000a6144;\n    iVar2 = 0;\n    iVar9 = 0;\n    do {\n      pppiVar4 = (int ***)*unaff_s4;\n      if (iVar9 == 0) {\n        param_4 = (int ***)unaff_s4[1];\n        pppiVar6 = (int ***)unaff_s4[2];\n        param_3 = pppiVar4;\n        iVar9 = FUN_000266b0(piVar10);\n      }\n      iVar2 = iVar2 + 1;\n      unaff_s4 = unaff_s4 + 3;\n      (**(code **)puVar12)(pppiVar4);\n    } while (iVar11 != iVar2);\n    if (local_58 != 0) {\n      *piVar10 = local_58;\n    }\n    ppiStack_88 = (int **)pppiVar7;\n    if (iVar9 != 0) goto LAB_0003d0fc;\n  }\n  if (pppiVar5 != (int ***)0x30) {\n    param_3 = (int ***)0x6;\n    pppiVar6 = (int ***)0x0;\n    FUN_00044d9c(param_1);\n  }\n  iVar9 = 0;\n  FUN_000449a8(param_1);\n  ppiStack_88 = (int **)pppiVar5;\nLAB_0003d0fc:\n  if (local_2c == *(int *)puVar1) {\n    return iVar9;\n  }\n  pcVar13 = curl_easy_recv;\n  iVar11 = local_2c;\n  puVar12 = PTR___stack_chk_fail_000a6c54;\n  (*(code *)PTR___stack_chk_fail_000a6c54)();\n  puStack_a0 = puVar12 + 0x70f80;\n  piVar10 = *(int **)(puVar12 + 0x69e50);\n  puStack_84 = puVar1;\n  iStack_8c = *piVar10;\n  pppiVar5 = pppiVar6;\n  pppiVar7 = param_3;\n  pppiVar4 = param_4;\n  iStack_80 = param_1;\n  iStack_7c = iVar9;\n  puStack_78 = unaff_s4;\n  pcStack_74 = pcVar13;\n  iVar9 = FUN_00048420();\n  if (iVar9 == 0) {\n    pppiVar7 = (int ***)&piStack_90;\n    pppiVar5 = &ppiStack_98;\n    iVar9 = FUN_0003c4e4(iVar11,pppiVar5,pppiVar7);\n    if (iVar9 == 0) {\n      piStack_a8 = (int *)&piStack_94;\n      *param_4 = (int **)0x0;\n      pppiVar7 = pppiVar6;\n      pppiVar4 = param_3;\n      iVar9 = FUN_00025e14(piStack_90,ppiStack_98,pppiVar6);\n      pppiVar5 = (int ***)ppiStack_98;\n      if (iVar9 == 0) {\n        *param_4 = (int **)piStack_94;\n      }\n    }\n  }\n  else {\n    iVar9 = 0x5d;\n  }\n  if (iStack_8c == *piVar10) {\n    return iVar9;\n  }\n  pcVar13 = *(code **)(puStack_a0 + -0x74bc);\n  pcVar14 = curl_easy_send;\n  iVar9 = iStack_8c;\n  (*pcVar13)();\n  piVar8 = *(int **)(pcVar13 + 0x69d5c);\n  uStack_d8 = 0;\n  iStack_d4 = *piVar8;\n  piStack_d0 = piVar10;\n  ppiStack_cc = (int **)param_4;\n  ppiStack_c8 = (int **)pppiVar6;\n  ppiStack_c4 = (int **)param_3;\n  iStack_c0 = iVar11;\n  pcStack_bc = pcVar14;\n  iVar11 = FUN_00048420();\n  if (iVar11 == 0) {\n    iVar11 = FUN_0003c4e4(iVar9,&uStack_e0,&uStack_d8);\n    if (iVar11 == 0) {\n      *pppiVar4 = (int **)0x0;\n      iVar11 = FUN_00025cb8(uStack_d8,uStack_e0,pppiVar5,pppiVar7,&piStack_dc);\n      if ((int **)piStack_dc == (int **)0xffffffff) {\n        iVar11 = 0x37;\n      }\n      else if (iVar11 == 0 && (int **)piStack_dc == (int **)0x0) {\n        iVar11 = 0x51;\n      }\n      else {\n        *pppiVar4 = (int **)piStack_dc;\n      }\n    }\n  }\n  else {\n    iVar11 = 0x5d;\n  }\n  if (iStack_d4 == *piVar8) {\n    return iVar11;\n  }\n  iVar11 = iStack_d4;\n  (**(code **)(pcVar13 + 0x699d0))();\n  if ((iVar11 != 0) && (*(int *)(iVar11 + 0x1030) == -0x3f212453)) {\n    if (*(int *)(iVar11 + 0x88) != 0) {\n      iVar11 = FUN_00033390(*(int *)(iVar11 + 0x88) + 0x8c,iVar11);\n      return iVar11;\n    }\n    return 0;\n  }\n  return 0x2b;\n}\n\n" (function_definition "int curl_easy_pause(int param_1,uint param_2,int ***param_3,int ***param_4)\n\n{\n  undefined *puVar1;\n  int iVar2;\n  undefined4 *puVar3;\n  int ***pppiVar4;\n  int ***pppiVar5;\n  int ***pppiVar6;\n  int ***pppiVar7;\n  int *piVar8;\n  int iVar9;\n  undefined4 *unaff_s4;\n  int *piVar10;\n  int iVar11;\n  undefined *puVar12;\n  code *pcVar13;\n  code *pcVar14;\n  undefined4 uStack_e0;\n  int *piStack_dc;\n  undefined4 uStack_d8;\n  int iStack_d4;\n  int *piStack_d0;\n  int **ppiStack_cc;\n  int **ppiStack_c8;\n  int **ppiStack_c4;\n  int iStack_c0;\n  code *pcStack_bc;\n  int *piStack_a8;\n  undefined *puStack_a0;\n  int **ppiStack_98;\n  int *piStack_94;\n  int *piStack_90;\n  int iStack_8c;\n  int **ppiStack_88;\n  undefined *puStack_84;\n  int iStack_80;\n  int iStack_7c;\n  undefined4 *puStack_78;\n  code *pcStack_74;\n  int local_58;\n  undefined4 local_50 [9];\n  int local_2c;\n  \n  puVar1 = PTR___stack_chk_guard_000a6fe0;\n  pppiVar5 = (int ***)((param_2 & 1) << 4 | (param_2 & 4) << 3);\n  pppiVar7 = (int ***)((uint)pppiVar5 | *(uint *)(param_1 + 0x138) & 0xffffffcf);\n  *(int ****)(param_1 + 0x138) = pppiVar7;\n  local_2c = *(int *)puVar1;\n  pppiVar6 = pppiVar5;\n  if (((param_2 & 1) == 0) && (iVar11 = *(int *)(param_1 + 0xcbc), iVar11 != 0)) {\n    piVar10 = *(int **)(param_1 + 8);\n    unaff_s4 = local_50;\n    iVar9 = param_1;\n    puVar3 = unaff_s4;\n    do {\n      param_4 = *(int ****)(iVar9 + 0xcc0);\n      iVar2 = iVar9 + 0xc;\n      *(undefined4 *)(iVar9 + 0xcc0) = 0;\n      *puVar3 = param_4;\n      param_3 = *(int ****)(iVar9 + 0xcc4);\n      pppiVar6 = *(int ****)(iVar9 + 0xcc8);\n      puVar3[1] = param_3;\n      puVar3[2] = pppiVar6;\n      iVar9 = iVar2;\n      puVar3 = puVar3 + 3;\n    } while (iVar2 != iVar11 * 0xc + param_1);\n    local_58 = *piVar10;\n    *(undefined4 *)(param_1 + 0xcbc) = 0;\n    if (local_58 == param_1) {\n      local_58 = 0;\n    }\n    else {\n      *piVar10 = param_1;\n    }\n    puVar12 = PTR_PTR_free_000a6144;\n    iVar2 = 0;\n    iVar9 = 0;\n    do {\n      pppiVar4 = (int ***)*unaff_s4;\n      if (iVar9 == 0) {\n        param_4 = (int ***)unaff_s4[1];\n        pppiVar6 = (int ***)unaff_s4[2];\n        param_3 = pppiVar4;\n        iVar9 = FUN_000266b0(piVar10);\n      }\n      iVar2 = iVar2 + 1;\n      unaff_s4 = unaff_s4 + 3;\n      (**(code **)puVar12)(pppiVar4);\n    } while (iVar11 != iVar2);\n    if (local_58 != 0) {\n      *piVar10 = local_58;\n    }\n    ppiStack_88 = (int **)pppiVar7;\n    if (iVar9 != 0) goto LAB_0003d0fc;\n  }\n  if (pppiVar5 != (int ***)0x30) {\n    param_3 = (int ***)0x6;\n    pppiVar6 = (int ***)0x0;\n    FUN_00044d9c(param_1);\n  }\n  iVar9 = 0;\n  FUN_000449a8(param_1);\n  ppiStack_88 = (int **)pppiVar5;\nLAB_0003d0fc:\n  if (local_2c == *(int *)puVar1) {\n    return iVar9;\n  }\n  pcVar13 = curl_easy_recv;\n  iVar11 = local_2c;\n  puVar12 = PTR___stack_chk_fail_000a6c54;\n  (*(code *)PTR___stack_chk_fail_000a6c54)();\n  puStack_a0 = puVar12 + 0x70f80;\n  piVar10 = *(int **)(puVar12 + 0x69e50);\n  puStack_84 = puVar1;\n  iStack_8c = *piVar10;\n  pppiVar5 = pppiVar6;\n  pppiVar7 = param_3;\n  pppiVar4 = param_4;\n  iStack_80 = param_1;\n  iStack_7c = iVar9;\n  puStack_78 = unaff_s4;\n  pcStack_74 = pcVar13;\n  iVar9 = FUN_00048420();\n  if (iVar9 == 0) {\n    pppiVar7 = (int ***)&piStack_90;\n    pppiVar5 = &ppiStack_98;\n    iVar9 = FUN_0003c4e4(iVar11,pppiVar5,pppiVar7);\n    if (iVar9 == 0) {\n      piStack_a8 = (int *)&piStack_94;\n      *param_4 = (int **)0x0;\n      pppiVar7 = pppiVar6;\n      pppiVar4 = param_3;\n      iVar9 = FUN_00025e14(piStack_90,ppiStack_98,pppiVar6);\n      pppiVar5 = (int ***)ppiStack_98;\n      if (iVar9 == 0) {\n        *param_4 = (int **)piStack_94;\n      }\n    }\n  }\n  else {\n    iVar9 = 0x5d;\n  }\n  if (iStack_8c == *piVar10) {\n    return iVar9;\n  }\n  pcVar13 = *(code **)(puStack_a0 + -0x74bc);\n  pcVar14 = curl_easy_send;\n  iVar9 = iStack_8c;\n  (*pcVar13)();\n  piVar8 = *(int **)(pcVar13 + 0x69d5c);\n  uStack_d8 = 0;\n  iStack_d4 = *piVar8;\n  piStack_d0 = piVar10;\n  ppiStack_cc = (int **)param_4;\n  ppiStack_c8 = (int **)pppiVar6;\n  ppiStack_c4 = (int **)param_3;\n  iStack_c0 = iVar11;\n  pcStack_bc = pcVar14;\n  iVar11 = FUN_00048420();\n  if (iVar11 == 0) {\n    iVar11 = FUN_0003c4e4(iVar9,&uStack_e0,&uStack_d8);\n    if (iVar11 == 0) {\n      *pppiVar4 = (int **)0x0;\n      iVar11 = FUN_00025cb8(uStack_d8,uStack_e0,pppiVar5,pppiVar7,&piStack_dc);\n      if ((int **)piStack_dc == (int **)0xffffffff) {\n        iVar11 = 0x37;\n      }\n      else if (iVar11 == 0 && (int **)piStack_dc == (int **)0x0) {\n        iVar11 = 0x51;\n      }\n      else {\n        *pppiVar4 = (int **)piStack_dc;\n      }\n    }\n  }\n  else {\n    iVar11 = 0x5d;\n  }\n  if (iStack_d4 == *piVar8) {\n    return iVar11;\n  }\n  iVar11 = iStack_d4;\n  (**(code **)(pcVar13 + 0x699d0))();\n  if ((iVar11 != 0) && (*(int *)(iVar11 + 0x1030) == -0x3f212453)) {\n    if (*(int *)(iVar11 + 0x88) != 0) {\n      iVar11 = FUN_00033390(*(int *)(iVar11 + 0x88) + 0x8c,iVar11);\n      return iVar11;\n    }\n    return 0;\n  }\n  return 0x2b;\n}" primitive_type (function_declarator "curl_easy_pause(int param_1,uint param_2,int ***param_3,int ***param_4)" identifier (parameter_list "(int param_1,uint param_2,int ***param_3,int ***param_4)" ( (parameter_declaration "int param_1" primitive_type identifier) , (parameter_declaration "uint param_2" type_identifier identifier) , (parameter_declaration "int ***param_3" primitive_type (pointer_declarator "***param_3" * (pointer_declarator "**param_3" * (pointer_declarator "*param_3" * identifier)))) , (parameter_declaration "int ***param_4" primitive_type (pointer_declarator "***param_4" * (pointer_declarator "**param_4" * (pointer_declarator "*param_4" * identifier)))) ))) (compound_statement "{\n  undefined *puVar1;\n  int iVar2;\n  undefined4 *puVar3;\n  int ***pppiVar4;\n  int ***pppiVar5;\n  int ***pppiVar6;\n  int ***pppiVar7;\n  int *piVar8;\n  int iVar9;\n  undefined4 *unaff_s4;\n  int *piVar10;\n  int iVar11;\n  undefined *puVar12;\n  code *pcVar13;\n  code *pcVar14;\n  undefined4 uStack_e0;\n  int *piStack_dc;\n  undefined4 uStack_d8;\n  int iStack_d4;\n  int *piStack_d0;\n  int **ppiStack_cc;\n  int **ppiStack_c8;\n  int **ppiStack_c4;\n  int iStack_c0;\n  code *pcStack_bc;\n  int *piStack_a8;\n  undefined *puStack_a0;\n  int **ppiStack_98;\n  int *piStack_94;\n  int *piStack_90;\n  int iStack_8c;\n  int **ppiStack_88;\n  undefined *puStack_84;\n  int iStack_80;\n  int iStack_7c;\n  undefined4 *puStack_78;\n  code *pcStack_74;\n  int local_58;\n  undefined4 local_50 [9];\n  int local_2c;\n  \n  puVar1 = PTR___stack_chk_guard_000a6fe0;\n  pppiVar5 = (int ***)((param_2 & 1) << 4 | (param_2 & 4) << 3);\n  pppiVar7 = (int ***)((uint)pppiVar5 | *(uint *)(param_1 + 0x138) & 0xffffffcf);\n  *(int ****)(param_1 + 0x138) = pppiVar7;\n  local_2c = *(int *)puVar1;\n  pppiVar6 = pppiVar5;\n  if (((param_2 & 1) == 0) && (iVar11 = *(int *)(param_1 + 0xcbc), iVar11 != 0)) {\n    piVar10 = *(int **)(param_1 + 8);\n    unaff_s4 = local_50;\n    iVar9 = param_1;\n    puVar3 = unaff_s4;\n    do {\n      param_4 = *(int ****)(iVar9 + 0xcc0);\n      iVar2 = iVar9 + 0xc;\n      *(undefined4 *)(iVar9 + 0xcc0) = 0;\n      *puVar3 = param_4;\n      param_3 = *(int ****)(iVar9 + 0xcc4);\n      pppiVar6 = *(int ****)(iVar9 + 0xcc8);\n      puVar3[1] = param_3;\n      puVar3[2] = pppiVar6;\n      iVar9 = iVar2;\n      puVar3 = puVar3 + 3;\n    } while (iVar2 != iVar11 * 0xc + param_1);\n    local_58 = *piVar10;\n    *(undefined4 *)(param_1 + 0xcbc) = 0;\n    if (local_58 == param_1) {\n      local_58 = 0;\n    }\n    else {\n      *piVar10 = param_1;\n    }\n    puVar12 = PTR_PTR_free_000a6144;\n    iVar2 = 0;\n    iVar9 = 0;\n    do {\n      pppiVar4 = (int ***)*unaff_s4;\n      if (iVar9 == 0) {\n        param_4 = (int ***)unaff_s4[1];\n        pppiVar6 = (int ***)unaff_s4[2];\n        param_3 = pppiVar4;\n        iVar9 = FUN_000266b0(piVar10);\n      }\n      iVar2 = iVar2 + 1;\n      unaff_s4 = unaff_s4 + 3;\n      (**(code **)puVar12)(pppiVar4);\n    } while (iVar11 != iVar2);\n    if (local_58 != 0) {\n      *piVar10 = local_58;\n    }\n    ppiStack_88 = (int **)pppiVar7;\n    if (iVar9 != 0) goto LAB_0003d0fc;\n  }\n  if (pppiVar5 != (int ***)0x30) {\n    param_3 = (int ***)0x6;\n    pppiVar6 = (int ***)0x0;\n    FUN_00044d9c(param_1);\n  }\n  iVar9 = 0;\n  FUN_000449a8(param_1);\n  ppiStack_88 = (int **)pppiVar5;\nLAB_0003d0fc:\n  if (local_2c == *(int *)puVar1) {\n    return iVar9;\n  }\n  pcVar13 = curl_easy_recv;\n  iVar11 = local_2c;\n  puVar12 = PTR___stack_chk_fail_000a6c54;\n  (*(code *)PTR___stack_chk_fail_000a6c54)();\n  puStack_a0 = puVar12 + 0x70f80;\n  piVar10 = *(int **)(puVar12 + 0x69e50);\n  puStack_84 = puVar1;\n  iStack_8c = *piVar10;\n  pppiVar5 = pppiVar6;\n  pppiVar7 = param_3;\n  pppiVar4 = param_4;\n  iStack_80 = param_1;\n  iStack_7c = iVar9;\n  puStack_78 = unaff_s4;\n  pcStack_74 = pcVar13;\n  iVar9 = FUN_00048420();\n  if (iVar9 == 0) {\n    pppiVar7 = (int ***)&piStack_90;\n    pppiVar5 = &ppiStack_98;\n    iVar9 = FUN_0003c4e4(iVar11,pppiVar5,pppiVar7);\n    if (iVar9 == 0) {\n      piStack_a8 = (int *)&piStack_94;\n      *param_4 = (int **)0x0;\n      pppiVar7 = pppiVar6;\n      pppiVar4 = param_3;\n      iVar9 = FUN_00025e14(piStack_90,ppiStack_98,pppiVar6);\n      pppiVar5 = (int ***)ppiStack_98;\n      if (iVar9 == 0) {\n        *param_4 = (int **)piStack_94;\n      }\n    }\n  }\n  else {\n    iVar9 = 0x5d;\n  }\n  if (iStack_8c == *piVar10) {\n    return iVar9;\n  }\n  pcVar13 = *(code **)(puStack_a0 + -0x74bc);\n  pcVar14 = curl_easy_send;\n  iVar9 = iStack_8c;\n  (*pcVar13)();\n  piVar8 = *(int **)(pcVar13 + 0x69d5c);\n  uStack_d8 = 0;\n  iStack_d4 = *piVar8;\n  piStack_d0 = piVar10;\n  ppiStack_cc = (int **)param_4;\n  ppiStack_c8 = (int **)pppiVar6;\n  ppiStack_c4 = (int **)param_3;\n  iStack_c0 = iVar11;\n  pcStack_bc = pcVar14;\n  iVar11 = FUN_00048420();\n  if (iVar11 == 0) {\n    iVar11 = FUN_0003c4e4(iVar9,&uStack_e0,&uStack_d8);\n    if (iVar11 == 0) {\n      *pppiVar4 = (int **)0x0;\n      iVar11 = FUN_00025cb8(uStack_d8,uStack_e0,pppiVar5,pppiVar7,&piStack_dc);\n      if ((int **)piStack_dc == (int **)0xffffffff) {\n        iVar11 = 0x37;\n      }\n      else if (iVar11 == 0 && (int **)piStack_dc == (int **)0x0) {\n        iVar11 = 0x51;\n      }\n      else {\n        *pppiVar4 = (int **)piStack_dc;\n      }\n    }\n  }\n  else {\n    iVar11 = 0x5d;\n  }\n  if (iStack_d4 == *piVar8) {\n    return iVar11;\n  }\n  iVar11 = iStack_d4;\n  (**(code **)(pcVar13 + 0x699d0))();\n  if ((iVar11 != 0) && (*(int *)(iVar11 + 0x1030) == -0x3f212453)) {\n    if (*(int *)(iVar11 + 0x88) != 0) {\n      iVar11 = FUN_00033390(*(int *)(iVar11 + 0x88) + 0x8c,iVar11);\n      return iVar11;\n    }\n    return 0;\n  }\n  return 0x2b;\n}" { (declaration "undefined *puVar1;" type_identifier (pointer_declarator "*puVar1" * identifier) ;) (declaration "int iVar2;" primitive_type identifier ;) (declaration "undefined4 *puVar3;" type_identifier (pointer_declarator "*puVar3" * identifier) ;) (declaration "int ***pppiVar4;" primitive_type (pointer_declarator "***pppiVar4" * (pointer_declarator "**pppiVar4" * (pointer_declarator "*pppiVar4" * identifier))) ;) (declaration "int ***pppiVar5;" primitive_type (pointer_declarator "***pppiVar5" * (pointer_declarator "**pppiVar5" * (pointer_declarator "*pppiVar5" * identifier))) ;) (declaration "int ***pppiVar6;" primitive_type (pointer_declarator "***pppiVar6" * (pointer_declarator "**pppiVar6" * (pointer_declarator "*pppiVar6" * identifier))) ;) (declaration "int ***pppiVar7;" primitive_type (pointer_declarator "***pppiVar7" * (pointer_declarator "**pppiVar7" * (pointer_declarator "*pppiVar7" * identifier))) ;) (declaration "int *piVar8;" primitive_type (pointer_declarator "*piVar8" * identifier) ;) (declaration "int iVar9;" primitive_type identifier ;) (declaration "undefined4 *unaff_s4;" type_identifier (pointer_declarator "*unaff_s4" * identifier) ;) (declaration "int *piVar10;" primitive_type (pointer_declarator "*piVar10" * identifier) ;) (declaration "int iVar11;" primitive_type identifier ;) (declaration "undefined *puVar12;" type_identifier (pointer_declarator "*puVar12" * identifier) ;) (declaration "code *pcVar13;" type_identifier (pointer_declarator "*pcVar13" * identifier) ;) (declaration "code *pcVar14;" type_identifier (pointer_declarator "*pcVar14" * identifier) ;) (declaration "undefined4 uStack_e0;" type_identifier identifier ;) (declaration "int *piStack_dc;" primitive_type (pointer_declarator "*piStack_dc" * identifier) ;) (declaration "undefined4 uStack_d8;" type_identifier identifier ;) (declaration "int iStack_d4;" primitive_type identifier ;) (declaration "int *piStack_d0;" primitive_type (pointer_declarator "*piStack_d0" * identifier) ;) (declaration "int **ppiStack_cc;" primitive_type (pointer_declarator "**ppiStack_cc" * (pointer_declarator "*ppiStack_cc" * identifier)) ;) (declaration "int **ppiStack_c8;" primitive_type (pointer_declarator "**ppiStack_c8" * (pointer_declarator "*ppiStack_c8" * identifier)) ;) (declaration "int **ppiStack_c4;" primitive_type (pointer_declarator "**ppiStack_c4" * (pointer_declarator "*ppiStack_c4" * identifier)) ;) (declaration "int iStack_c0;" primitive_type identifier ;) (declaration "code *pcStack_bc;" type_identifier (pointer_declarator "*pcStack_bc" * identifier) ;) (declaration "int *piStack_a8;" primitive_type (pointer_declarator "*piStack_a8" * identifier) ;) (declaration "undefined *puStack_a0;" type_identifier (pointer_declarator "*puStack_a0" * identifier) ;) (declaration "int **ppiStack_98;" primitive_type (pointer_declarator "**ppiStack_98" * (pointer_declarator "*ppiStack_98" * identifier)) ;) (declaration "int *piStack_94;" primitive_type (pointer_declarator "*piStack_94" * identifier) ;) (declaration "int *piStack_90;" primitive_type (pointer_declarator "*piStack_90" * identifier) ;) (declaration "int iStack_8c;" primitive_type identifier ;) (declaration "int **ppiStack_88;" primitive_type (pointer_declarator "**ppiStack_88" * (pointer_declarator "*ppiStack_88" * identifier)) ;) (declaration "undefined *puStack_84;" type_identifier (pointer_declarator "*puStack_84" * identifier) ;) (declaration "int iStack_80;" primitive_type identifier ;) (declaration "int iStack_7c;" primitive_type identifier ;) (declaration "undefined4 *puStack_78;" type_identifier (pointer_declarator "*puStack_78" * identifier) ;) (declaration "code *pcStack_74;" type_identifier (pointer_declarator "*pcStack_74" * identifier) ;) (declaration "int local_58;" primitive_type identifier ;) (declaration "undefined4 local_50 [9];" type_identifier (array_declarator "local_50 [9]" identifier [ number_literal ]) ;) (declaration "int local_2c;" primitive_type identifier ;) (expression_statement "puVar1 = PTR___stack_chk_guard_000a6fe0;" (assignment_expression "puVar1 = PTR___stack_chk_guard_000a6fe0" identifier = identifier) ;) (expression_statement "pppiVar5 = (int ***)((param_2 & 1) << 4 | (param_2 & 4) << 3);" (assignment_expression "pppiVar5 = (int ***)((param_2 & 1) << 4 | (param_2 & 4) << 3)" identifier = (cast_expression "(int ***)((param_2 & 1) << 4 | (param_2 & 4) << 3)" ( (type_descriptor "int ***" primitive_type (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))) ) (parenthesized_expression "((param_2 & 1) << 4 | (param_2 & 4) << 3)" ( (binary_expression "(param_2 & 1) << 4 | (param_2 & 4) << 3" (binary_expression "(param_2 & 1) << 4" (parenthesized_expression "(param_2 & 1)" ( (binary_expression "param_2 & 1" identifier & number_literal) )) << number_literal) | (binary_expression "(param_2 & 4) << 3" (parenthesized_expression "(param_2 & 4)" ( (binary_expression "param_2 & 4" identifier & number_literal) )) << number_literal)) )))) ;) (expression_statement "pppiVar7 = (int ***)((uint)pppiVar5 | *(uint *)(param_1 + 0x138) & 0xffffffcf);" (assignment_expression "pppiVar7 = (int ***)((uint)pppiVar5 | *(uint *)(param_1 + 0x138) & 0xffffffcf)" identifier = (cast_expression "(int ***)((uint)pppiVar5 | *(uint *)(param_1 + 0x138) & 0xffffffcf)" ( (type_descriptor "int ***" primitive_type (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))) ) (parenthesized_expression "((uint)pppiVar5 | *(uint *)(param_1 + 0x138) & 0xffffffcf)" ( (binary_expression "(uint)pppiVar5 | *(uint *)(param_1 + 0x138) & 0xffffffcf" (cast_expression "(uint)pppiVar5" ( (type_descriptor "uint" type_identifier) ) identifier) | (binary_expression "*(uint *)(param_1 + 0x138) & 0xffffffcf" (pointer_expression "*(uint *)(param_1 + 0x138)" * (cast_expression "(uint *)(param_1 + 0x138)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x138)" ( (binary_expression "param_1 + 0x138" identifier + number_literal) )))) & number_literal)) )))) ;) (expression_statement "*(int ****)(param_1 + 0x138) = pppiVar7;" (assignment_expression "*(int ****)(param_1 + 0x138) = pppiVar7" (pointer_expression "*(int ****)(param_1 + 0x138)" * (cast_expression "(int ****)(param_1 + 0x138)" ( (type_descriptor "int ****" primitive_type (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))) ) (parenthesized_expression "(param_1 + 0x138)" ( (binary_expression "param_1 + 0x138" identifier + number_literal) )))) = identifier) ;) (expression_statement "local_2c = *(int *)puVar1;" (assignment_expression "local_2c = *(int *)puVar1" identifier = (pointer_expression "*(int *)puVar1" * (cast_expression "(int *)puVar1" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier))) ;) (expression_statement "pppiVar6 = pppiVar5;" (assignment_expression "pppiVar6 = pppiVar5" identifier = identifier) ;) (if_statement "if (((param_2 & 1) == 0) && (iVar11 = *(int *)(param_1 + 0xcbc), iVar11 != 0)) {\n    piVar10 = *(int **)(param_1 + 8);\n    unaff_s4 = local_50;\n    iVar9 = param_1;\n    puVar3 = unaff_s4;\n    do {\n      param_4 = *(int ****)(iVar9 + 0xcc0);\n      iVar2 = iVar9 + 0xc;\n      *(undefined4 *)(iVar9 + 0xcc0) = 0;\n      *puVar3 = param_4;\n      param_3 = *(int ****)(iVar9 + 0xcc4);\n      pppiVar6 = *(int ****)(iVar9 + 0xcc8);\n      puVar3[1] = param_3;\n      puVar3[2] = pppiVar6;\n      iVar9 = iVar2;\n      puVar3 = puVar3 + 3;\n    } while (iVar2 != iVar11 * 0xc + param_1);\n    local_58 = *piVar10;\n    *(undefined4 *)(param_1 + 0xcbc) = 0;\n    if (local_58 == param_1) {\n      local_58 = 0;\n    }\n    else {\n      *piVar10 = param_1;\n    }\n    puVar12 = PTR_PTR_free_000a6144;\n    iVar2 = 0;\n    iVar9 = 0;\n    do {\n      pppiVar4 = (int ***)*unaff_s4;\n      if (iVar9 == 0) {\n        param_4 = (int ***)unaff_s4[1];\n        pppiVar6 = (int ***)unaff_s4[2];\n        param_3 = pppiVar4;\n        iVar9 = FUN_000266b0(piVar10);\n      }\n      iVar2 = iVar2 + 1;\n      unaff_s4 = unaff_s4 + 3;\n      (**(code **)puVar12)(pppiVar4);\n    } while (iVar11 != iVar2);\n    if (local_58 != 0) {\n      *piVar10 = local_58;\n    }\n    ppiStack_88 = (int **)pppiVar7;\n    if (iVar9 != 0) goto LAB_0003d0fc;\n  }" if (parenthesized_expression "(((param_2 & 1) == 0) && (iVar11 = *(int *)(param_1 + 0xcbc), iVar11 != 0))" ( (binary_expression "((param_2 & 1) == 0) && (iVar11 = *(int *)(param_1 + 0xcbc), iVar11 != 0)" (parenthesized_expression "((param_2 & 1) == 0)" ( (binary_expression "(param_2 & 1) == 0" (parenthesized_expression "(param_2 & 1)" ( (binary_expression "param_2 & 1" identifier & number_literal) )) == number_literal) )) && (parenthesized_expression "(iVar11 = *(int *)(param_1 + 0xcbc), iVar11 != 0)" ( (comma_expression "iVar11 = *(int *)(param_1 + 0xcbc), iVar11 != 0" (assignment_expression "iVar11 = *(int *)(param_1 + 0xcbc)" identifier = (pointer_expression "*(int *)(param_1 + 0xcbc)" * (cast_expression "(int *)(param_1 + 0xcbc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0xcbc)" ( (binary_expression "param_1 + 0xcbc" identifier + number_literal) ))))) , (binary_expression "iVar11 != 0" identifier != number_literal)) ))) )) (compound_statement "{\n    piVar10 = *(int **)(param_1 + 8);\n    unaff_s4 = local_50;\n    iVar9 = param_1;\n    puVar3 = unaff_s4;\n    do {\n      param_4 = *(int ****)(iVar9 + 0xcc0);\n      iVar2 = iVar9 + 0xc;\n      *(undefined4 *)(iVar9 + 0xcc0) = 0;\n      *puVar3 = param_4;\n      param_3 = *(int ****)(iVar9 + 0xcc4);\n      pppiVar6 = *(int ****)(iVar9 + 0xcc8);\n      puVar3[1] = param_3;\n      puVar3[2] = pppiVar6;\n      iVar9 = iVar2;\n      puVar3 = puVar3 + 3;\n    } while (iVar2 != iVar11 * 0xc + param_1);\n    local_58 = *piVar10;\n    *(undefined4 *)(param_1 + 0xcbc) = 0;\n    if (local_58 == param_1) {\n      local_58 = 0;\n    }\n    else {\n      *piVar10 = param_1;\n    }\n    puVar12 = PTR_PTR_free_000a6144;\n    iVar2 = 0;\n    iVar9 = 0;\n    do {\n      pppiVar4 = (int ***)*unaff_s4;\n      if (iVar9 == 0) {\n        param_4 = (int ***)unaff_s4[1];\n        pppiVar6 = (int ***)unaff_s4[2];\n        param_3 = pppiVar4;\n        iVar9 = FUN_000266b0(piVar10);\n      }\n      iVar2 = iVar2 + 1;\n      unaff_s4 = unaff_s4 + 3;\n      (**(code **)puVar12)(pppiVar4);\n    } while (iVar11 != iVar2);\n    if (local_58 != 0) {\n      *piVar10 = local_58;\n    }\n    ppiStack_88 = (int **)pppiVar7;\n    if (iVar9 != 0) goto LAB_0003d0fc;\n  }" { (expression_statement "piVar10 = *(int **)(param_1 + 8);" (assignment_expression "piVar10 = *(int **)(param_1 + 8)" identifier = (pointer_expression "*(int **)(param_1 + 8)" * (cast_expression "(int **)(param_1 + 8)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(param_1 + 8)" ( (binary_expression "param_1 + 8" identifier + number_literal) ))))) ;) (expression_statement "unaff_s4 = local_50;" (assignment_expression "unaff_s4 = local_50" identifier = identifier) ;) (expression_statement "iVar9 = param_1;" (assignment_expression "iVar9 = param_1" identifier = identifier) ;) (expression_statement "puVar3 = unaff_s4;" (assignment_expression "puVar3 = unaff_s4" identifier = identifier) ;) (do_statement "do {\n      param_4 = *(int ****)(iVar9 + 0xcc0);\n      iVar2 = iVar9 + 0xc;\n      *(undefined4 *)(iVar9 + 0xcc0) = 0;\n      *puVar3 = param_4;\n      param_3 = *(int ****)(iVar9 + 0xcc4);\n      pppiVar6 = *(int ****)(iVar9 + 0xcc8);\n      puVar3[1] = param_3;\n      puVar3[2] = pppiVar6;\n      iVar9 = iVar2;\n      puVar3 = puVar3 + 3;\n    } while (iVar2 != iVar11 * 0xc + param_1);" do (compound_statement "{\n      param_4 = *(int ****)(iVar9 + 0xcc0);\n      iVar2 = iVar9 + 0xc;\n      *(undefined4 *)(iVar9 + 0xcc0) = 0;\n      *puVar3 = param_4;\n      param_3 = *(int ****)(iVar9 + 0xcc4);\n      pppiVar6 = *(int ****)(iVar9 + 0xcc8);\n      puVar3[1] = param_3;\n      puVar3[2] = pppiVar6;\n      iVar9 = iVar2;\n      puVar3 = puVar3 + 3;\n    }" { (expression_statement "param_4 = *(int ****)(iVar9 + 0xcc0);" (assignment_expression "param_4 = *(int ****)(iVar9 + 0xcc0)" identifier = (pointer_expression "*(int ****)(iVar9 + 0xcc0)" * (cast_expression "(int ****)(iVar9 + 0xcc0)" ( (type_descriptor "int ****" primitive_type (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))) ) (parenthesized_expression "(iVar9 + 0xcc0)" ( (binary_expression "iVar9 + 0xcc0" identifier + number_literal) ))))) ;) (expression_statement "iVar2 = iVar9 + 0xc;" (assignment_expression "iVar2 = iVar9 + 0xc" identifier = (binary_expression "iVar9 + 0xc" identifier + number_literal)) ;) (expression_statement "*(undefined4 *)(iVar9 + 0xcc0) = 0;" (assignment_expression "*(undefined4 *)(iVar9 + 0xcc0) = 0" (pointer_expression "*(undefined4 *)(iVar9 + 0xcc0)" * (cast_expression "(undefined4 *)(iVar9 + 0xcc0)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar9 + 0xcc0)" ( (binary_expression "iVar9 + 0xcc0" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*puVar3 = param_4;" (assignment_expression "*puVar3 = param_4" (pointer_expression "*puVar3" * identifier) = identifier) ;) (expression_statement "param_3 = *(int ****)(iVar9 + 0xcc4);" (assignment_expression "param_3 = *(int ****)(iVar9 + 0xcc4)" identifier = (pointer_expression "*(int ****)(iVar9 + 0xcc4)" * (cast_expression "(int ****)(iVar9 + 0xcc4)" ( (type_descriptor "int ****" primitive_type (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))) ) (parenthesized_expression "(iVar9 + 0xcc4)" ( (binary_expression "iVar9 + 0xcc4" identifier + number_literal) ))))) ;) (expression_statement "pppiVar6 = *(int ****)(iVar9 + 0xcc8);" (assignment_expression "pppiVar6 = *(int ****)(iVar9 + 0xcc8)" identifier = (pointer_expression "*(int ****)(iVar9 + 0xcc8)" * (cast_expression "(int ****)(iVar9 + 0xcc8)" ( (type_descriptor "int ****" primitive_type (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))) ) (parenthesized_expression "(iVar9 + 0xcc8)" ( (binary_expression "iVar9 + 0xcc8" identifier + number_literal) ))))) ;) (expression_statement "puVar3[1] = param_3;" (assignment_expression "puVar3[1] = param_3" (subscript_expression "puVar3[1]" identifier [ number_literal ]) = identifier) ;) (expression_statement "puVar3[2] = pppiVar6;" (assignment_expression "puVar3[2] = pppiVar6" (subscript_expression "puVar3[2]" identifier [ number_literal ]) = identifier) ;) (expression_statement "iVar9 = iVar2;" (assignment_expression "iVar9 = iVar2" identifier = identifier) ;) (expression_statement "puVar3 = puVar3 + 3;" (assignment_expression "puVar3 = puVar3 + 3" identifier = (binary_expression "puVar3 + 3" identifier + number_literal)) ;) }) while (parenthesized_expression "(iVar2 != iVar11 * 0xc + param_1)" ( (binary_expression "iVar2 != iVar11 * 0xc + param_1" identifier != (binary_expression "iVar11 * 0xc + param_1" (binary_expression "iVar11 * 0xc" identifier * number_literal) + identifier)) )) ;) (expression_statement "local_58 = *piVar10;" (assignment_expression "local_58 = *piVar10" identifier = (pointer_expression "*piVar10" * identifier)) ;) (expression_statement "*(undefined4 *)(param_1 + 0xcbc) = 0;" (assignment_expression "*(undefined4 *)(param_1 + 0xcbc) = 0" (pointer_expression "*(undefined4 *)(param_1 + 0xcbc)" * (cast_expression "(undefined4 *)(param_1 + 0xcbc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0xcbc)" ( (binary_expression "param_1 + 0xcbc" identifier + number_literal) )))) = number_literal) ;) (if_statement "if (local_58 == param_1) {\n      local_58 = 0;\n    }\n    else {\n      *piVar10 = param_1;\n    }" if (parenthesized_expression "(local_58 == param_1)" ( (binary_expression "local_58 == param_1" identifier == identifier) )) (compound_statement "{\n      local_58 = 0;\n    }" { (expression_statement "local_58 = 0;" (assignment_expression "local_58 = 0" identifier = number_literal) ;) }) (else_clause "else {\n      *piVar10 = param_1;\n    }" else (compound_statement "{\n      *piVar10 = param_1;\n    }" { (expression_statement "*piVar10 = param_1;" (assignment_expression "*piVar10 = param_1" (pointer_expression "*piVar10" * identifier) = identifier) ;) }))) (expression_statement "puVar12 = PTR_PTR_free_000a6144;" (assignment_expression "puVar12 = PTR_PTR_free_000a6144" identifier = identifier) ;) (expression_statement "iVar2 = 0;" (assignment_expression "iVar2 = 0" identifier = number_literal) ;) (expression_statement "iVar9 = 0;" (assignment_expression "iVar9 = 0" identifier = number_literal) ;) (do_statement "do {\n      pppiVar4 = (int ***)*unaff_s4;\n      if (iVar9 == 0) {\n        param_4 = (int ***)unaff_s4[1];\n        pppiVar6 = (int ***)unaff_s4[2];\n        param_3 = pppiVar4;\n        iVar9 = FUN_000266b0(piVar10);\n      }\n      iVar2 = iVar2 + 1;\n      unaff_s4 = unaff_s4 + 3;\n      (**(code **)puVar12)(pppiVar4);\n    } while (iVar11 != iVar2);" do (compound_statement "{\n      pppiVar4 = (int ***)*unaff_s4;\n      if (iVar9 == 0) {\n        param_4 = (int ***)unaff_s4[1];\n        pppiVar6 = (int ***)unaff_s4[2];\n        param_3 = pppiVar4;\n        iVar9 = FUN_000266b0(piVar10);\n      }\n      iVar2 = iVar2 + 1;\n      unaff_s4 = unaff_s4 + 3;\n      (**(code **)puVar12)(pppiVar4);\n    }" { (expression_statement "pppiVar4 = (int ***)*unaff_s4;" (assignment_expression "pppiVar4 = (int ***)*unaff_s4" identifier = (cast_expression "(int ***)*unaff_s4" ( (type_descriptor "int ***" primitive_type (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))) ) (pointer_expression "*unaff_s4" * identifier))) ;) (if_statement "if (iVar9 == 0) {\n        param_4 = (int ***)unaff_s4[1];\n        pppiVar6 = (int ***)unaff_s4[2];\n        param_3 = pppiVar4;\n        iVar9 = FUN_000266b0(piVar10);\n      }" if (parenthesized_expression "(iVar9 == 0)" ( (binary_expression "iVar9 == 0" identifier == number_literal) )) (compound_statement "{\n        param_4 = (int ***)unaff_s4[1];\n        pppiVar6 = (int ***)unaff_s4[2];\n        param_3 = pppiVar4;\n        iVar9 = FUN_000266b0(piVar10);\n      }" { (expression_statement "param_4 = (int ***)unaff_s4[1];" (assignment_expression "param_4 = (int ***)unaff_s4[1]" identifier = (cast_expression "(int ***)unaff_s4[1]" ( (type_descriptor "int ***" primitive_type (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))) ) (subscript_expression "unaff_s4[1]" identifier [ number_literal ]))) ;) (expression_statement "pppiVar6 = (int ***)unaff_s4[2];" (assignment_expression "pppiVar6 = (int ***)unaff_s4[2]" identifier = (cast_expression "(int ***)unaff_s4[2]" ( (type_descriptor "int ***" primitive_type (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))) ) (subscript_expression "unaff_s4[2]" identifier [ number_literal ]))) ;) (expression_statement "param_3 = pppiVar4;" (assignment_expression "param_3 = pppiVar4" identifier = identifier) ;) (expression_statement "iVar9 = FUN_000266b0(piVar10);" (assignment_expression "iVar9 = FUN_000266b0(piVar10)" identifier = (call_expression "FUN_000266b0(piVar10)" identifier (argument_list "(piVar10)" ( identifier )))) ;) })) (expression_statement "iVar2 = iVar2 + 1;" (assignment_expression "iVar2 = iVar2 + 1" identifier = (binary_expression "iVar2 + 1" identifier + number_literal)) ;) (expression_statement "unaff_s4 = unaff_s4 + 3;" (assignment_expression "unaff_s4 = unaff_s4 + 3" identifier = (binary_expression "unaff_s4 + 3" identifier + number_literal)) ;) (expression_statement "(**(code **)puVar12)(pppiVar4);" (call_expression "(**(code **)puVar12)(pppiVar4)" (parenthesized_expression "(**(code **)puVar12)" ( (pointer_expression "**(code **)puVar12" * (pointer_expression "*(code **)puVar12" * (cast_expression "(code **)puVar12" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier))) )) (argument_list "(pppiVar4)" ( identifier ))) ;) }) while (parenthesized_expression "(iVar11 != iVar2)" ( (binary_expression "iVar11 != iVar2" identifier != identifier) )) ;) (if_statement "if (local_58 != 0) {\n      *piVar10 = local_58;\n    }" if (parenthesized_expression "(local_58 != 0)" ( (binary_expression "local_58 != 0" identifier != number_literal) )) (compound_statement "{\n      *piVar10 = local_58;\n    }" { (expression_statement "*piVar10 = local_58;" (assignment_expression "*piVar10 = local_58" (pointer_expression "*piVar10" * identifier) = identifier) ;) })) (expression_statement "ppiStack_88 = (int **)pppiVar7;" (assignment_expression "ppiStack_88 = (int **)pppiVar7" identifier = (cast_expression "(int **)pppiVar7" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier)) ;) (if_statement "if (iVar9 != 0) goto LAB_0003d0fc;" if (parenthesized_expression "(iVar9 != 0)" ( (binary_expression "iVar9 != 0" identifier != number_literal) )) (goto_statement "goto LAB_0003d0fc;" goto statement_identifier ;)) })) (if_statement "if (pppiVar5 != (int ***)0x30) {\n    param_3 = (int ***)0x6;\n    pppiVar6 = (int ***)0x0;\n    FUN_00044d9c(param_1);\n  }" if (parenthesized_expression "(pppiVar5 != (int ***)0x30)" ( (binary_expression "pppiVar5 != (int ***)0x30" identifier != (cast_expression "(int ***)0x30" ( (type_descriptor "int ***" primitive_type (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))) ) number_literal)) )) (compound_statement "{\n    param_3 = (int ***)0x6;\n    pppiVar6 = (int ***)0x0;\n    FUN_00044d9c(param_1);\n  }" { (expression_statement "param_3 = (int ***)0x6;" (assignment_expression "param_3 = (int ***)0x6" identifier = (cast_expression "(int ***)0x6" ( (type_descriptor "int ***" primitive_type (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))) ) number_literal)) ;) (expression_statement "pppiVar6 = (int ***)0x0;" (assignment_expression "pppiVar6 = (int ***)0x0" identifier = (cast_expression "(int ***)0x0" ( (type_descriptor "int ***" primitive_type (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))) ) number_literal)) ;) (expression_statement "FUN_00044d9c(param_1);" (call_expression "FUN_00044d9c(param_1)" identifier (argument_list "(param_1)" ( identifier ))) ;) })) (expression_statement "iVar9 = 0;" (assignment_expression "iVar9 = 0" identifier = number_literal) ;) (expression_statement "FUN_000449a8(param_1);" (call_expression "FUN_000449a8(param_1)" identifier (argument_list "(param_1)" ( identifier ))) ;) (expression_statement "ppiStack_88 = (int **)pppiVar5;" (assignment_expression "ppiStack_88 = (int **)pppiVar5" identifier = (cast_expression "(int **)pppiVar5" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier)) ;) (labeled_statement "LAB_0003d0fc:\n  if (local_2c == *(int *)puVar1) {\n    return iVar9;\n  }" statement_identifier : (if_statement "if (local_2c == *(int *)puVar1) {\n    return iVar9;\n  }" if (parenthesized_expression "(local_2c == *(int *)puVar1)" ( (binary_expression "local_2c == *(int *)puVar1" identifier == (pointer_expression "*(int *)puVar1" * (cast_expression "(int *)puVar1" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier))) )) (compound_statement "{\n    return iVar9;\n  }" { (return_statement "return iVar9;" return identifier ;) }))) (expression_statement "pcVar13 = curl_easy_recv;" (assignment_expression "pcVar13 = curl_easy_recv" identifier = identifier) ;) (expression_statement "iVar11 = local_2c;" (assignment_expression "iVar11 = local_2c" identifier = identifier) ;) (expression_statement "puVar12 = PTR___stack_chk_fail_000a6c54;" (assignment_expression "puVar12 = PTR___stack_chk_fail_000a6c54" identifier = identifier) ;) (expression_statement "(*(code *)PTR___stack_chk_fail_000a6c54)();" (call_expression "(*(code *)PTR___stack_chk_fail_000a6c54)()" (parenthesized_expression "(*(code *)PTR___stack_chk_fail_000a6c54)" ( (pointer_expression "*(code *)PTR___stack_chk_fail_000a6c54" * (cast_expression "(code *)PTR___stack_chk_fail_000a6c54" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "()" ( ))) ;) (expression_statement "puStack_a0 = puVar12 + 0x70f80;" (assignment_expression "puStack_a0 = puVar12 + 0x70f80" identifier = (binary_expression "puVar12 + 0x70f80" identifier + number_literal)) ;) (expression_statement "piVar10 = *(int **)(puVar12 + 0x69e50);" (assignment_expression "piVar10 = *(int **)(puVar12 + 0x69e50)" identifier = (pointer_expression "*(int **)(puVar12 + 0x69e50)" * (cast_expression "(int **)(puVar12 + 0x69e50)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar12 + 0x69e50)" ( (binary_expression "puVar12 + 0x69e50" identifier + number_literal) ))))) ;) (expression_statement "puStack_84 = puVar1;" (assignment_expression "puStack_84 = puVar1" identifier = identifier) ;) (expression_statement "iStack_8c = *piVar10;" (assignment_expression "iStack_8c = *piVar10" identifier = (pointer_expression "*piVar10" * identifier)) ;) (expression_statement "pppiVar5 = pppiVar6;" (assignment_expression "pppiVar5 = pppiVar6" identifier = identifier) ;) (expression_statement "pppiVar7 = param_3;" (assignment_expression "pppiVar7 = param_3" identifier = identifier) ;) (expression_statement "pppiVar4 = param_4;" (assignment_expression "pppiVar4 = param_4" identifier = identifier) ;) (expression_statement "iStack_80 = param_1;" (assignment_expression "iStack_80 = param_1" identifier = identifier) ;) (expression_statement "iStack_7c = iVar9;" (assignment_expression "iStack_7c = iVar9" identifier = identifier) ;) (expression_statement "puStack_78 = unaff_s4;" (assignment_expression "puStack_78 = unaff_s4" identifier = identifier) ;) (expression_statement "pcStack_74 = pcVar13;" (assignment_expression "pcStack_74 = pcVar13" identifier = identifier) ;) (expression_statement "iVar9 = FUN_00048420();" (assignment_expression "iVar9 = FUN_00048420()" identifier = (call_expression "FUN_00048420()" identifier (argument_list "()" ( )))) ;) (if_statement "if (iVar9 == 0) {\n    pppiVar7 = (int ***)&piStack_90;\n    pppiVar5 = &ppiStack_98;\n    iVar9 = FUN_0003c4e4(iVar11,pppiVar5,pppiVar7);\n    if (iVar9 == 0) {\n      piStack_a8 = (int *)&piStack_94;\n      *param_4 = (int **)0x0;\n      pppiVar7 = pppiVar6;\n      pppiVar4 = param_3;\n      iVar9 = FUN_00025e14(piStack_90,ppiStack_98,pppiVar6);\n      pppiVar5 = (int ***)ppiStack_98;\n      if (iVar9 == 0) {\n        *param_4 = (int **)piStack_94;\n      }\n    }\n  }\n  else {\n    iVar9 = 0x5d;\n  }" if (parenthesized_expression "(iVar9 == 0)" ( (binary_expression "iVar9 == 0" identifier == number_literal) )) (compound_statement "{\n    pppiVar7 = (int ***)&piStack_90;\n    pppiVar5 = &ppiStack_98;\n    iVar9 = FUN_0003c4e4(iVar11,pppiVar5,pppiVar7);\n    if (iVar9 == 0) {\n      piStack_a8 = (int *)&piStack_94;\n      *param_4 = (int **)0x0;\n      pppiVar7 = pppiVar6;\n      pppiVar4 = param_3;\n      iVar9 = FUN_00025e14(piStack_90,ppiStack_98,pppiVar6);\n      pppiVar5 = (int ***)ppiStack_98;\n      if (iVar9 == 0) {\n        *param_4 = (int **)piStack_94;\n      }\n    }\n  }" { (expression_statement "pppiVar7 = (int ***)&piStack_90;" (assignment_expression "pppiVar7 = (int ***)&piStack_90" identifier = (cast_expression "(int ***)&piStack_90" ( (type_descriptor "int ***" primitive_type (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))) ) (pointer_expression "&piStack_90" & identifier))) ;) (expression_statement "pppiVar5 = &ppiStack_98;" (assignment_expression "pppiVar5 = &ppiStack_98" identifier = (pointer_expression "&ppiStack_98" & identifier)) ;) (expression_statement "iVar9 = FUN_0003c4e4(iVar11,pppiVar5,pppiVar7);" (assignment_expression "iVar9 = FUN_0003c4e4(iVar11,pppiVar5,pppiVar7)" identifier = (call_expression "FUN_0003c4e4(iVar11,pppiVar5,pppiVar7)" identifier (argument_list "(iVar11,pppiVar5,pppiVar7)" ( identifier , identifier , identifier )))) ;) (if_statement "if (iVar9 == 0) {\n      piStack_a8 = (int *)&piStack_94;\n      *param_4 = (int **)0x0;\n      pppiVar7 = pppiVar6;\n      pppiVar4 = param_3;\n      iVar9 = FUN_00025e14(piStack_90,ppiStack_98,pppiVar6);\n      pppiVar5 = (int ***)ppiStack_98;\n      if (iVar9 == 0) {\n        *param_4 = (int **)piStack_94;\n      }\n    }" if (parenthesized_expression "(iVar9 == 0)" ( (binary_expression "iVar9 == 0" identifier == number_literal) )) (compound_statement "{\n      piStack_a8 = (int *)&piStack_94;\n      *param_4 = (int **)0x0;\n      pppiVar7 = pppiVar6;\n      pppiVar4 = param_3;\n      iVar9 = FUN_00025e14(piStack_90,ppiStack_98,pppiVar6);\n      pppiVar5 = (int ***)ppiStack_98;\n      if (iVar9 == 0) {\n        *param_4 = (int **)piStack_94;\n      }\n    }" { (expression_statement "piStack_a8 = (int *)&piStack_94;" (assignment_expression "piStack_a8 = (int *)&piStack_94" identifier = (cast_expression "(int *)&piStack_94" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&piStack_94" & identifier))) ;) (expression_statement "*param_4 = (int **)0x0;" (assignment_expression "*param_4 = (int **)0x0" (pointer_expression "*param_4" * identifier) = (cast_expression "(int **)0x0" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) number_literal)) ;) (expression_statement "pppiVar7 = pppiVar6;" (assignment_expression "pppiVar7 = pppiVar6" identifier = identifier) ;) (expression_statement "pppiVar4 = param_3;" (assignment_expression "pppiVar4 = param_3" identifier = identifier) ;) (expression_statement "iVar9 = FUN_00025e14(piStack_90,ppiStack_98,pppiVar6);" (assignment_expression "iVar9 = FUN_00025e14(piStack_90,ppiStack_98,pppiVar6)" identifier = (call_expression "FUN_00025e14(piStack_90,ppiStack_98,pppiVar6)" identifier (argument_list "(piStack_90,ppiStack_98,pppiVar6)" ( identifier , identifier , identifier )))) ;) (expression_statement "pppiVar5 = (int ***)ppiStack_98;" (assignment_expression "pppiVar5 = (int ***)ppiStack_98" identifier = (cast_expression "(int ***)ppiStack_98" ( (type_descriptor "int ***" primitive_type (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))) ) identifier)) ;) (if_statement "if (iVar9 == 0) {\n        *param_4 = (int **)piStack_94;\n      }" if (parenthesized_expression "(iVar9 == 0)" ( (binary_expression "iVar9 == 0" identifier == number_literal) )) (compound_statement "{\n        *param_4 = (int **)piStack_94;\n      }" { (expression_statement "*param_4 = (int **)piStack_94;" (assignment_expression "*param_4 = (int **)piStack_94" (pointer_expression "*param_4" * identifier) = (cast_expression "(int **)piStack_94" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier)) ;) })) })) }) (else_clause "else {\n    iVar9 = 0x5d;\n  }" else (compound_statement "{\n    iVar9 = 0x5d;\n  }" { (expression_statement "iVar9 = 0x5d;" (assignment_expression "iVar9 = 0x5d" identifier = number_literal) ;) }))) (if_statement "if (iStack_8c == *piVar10) {\n    return iVar9;\n  }" if (parenthesized_expression "(iStack_8c == *piVar10)" ( (binary_expression "iStack_8c == *piVar10" identifier == (pointer_expression "*piVar10" * identifier)) )) (compound_statement "{\n    return iVar9;\n  }" { (return_statement "return iVar9;" return identifier ;) })) (expression_statement "pcVar13 = *(code **)(puStack_a0 + -0x74bc);" (assignment_expression "pcVar13 = *(code **)(puStack_a0 + -0x74bc)" identifier = (pointer_expression "*(code **)(puStack_a0 + -0x74bc)" * (cast_expression "(code **)(puStack_a0 + -0x74bc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puStack_a0 + -0x74bc)" ( (binary_expression "puStack_a0 + -0x74bc" identifier + number_literal) ))))) ;) (expression_statement "pcVar14 = curl_easy_send;" (assignment_expression "pcVar14 = curl_easy_send" identifier = identifier) ;) (expression_statement "iVar9 = iStack_8c;" (assignment_expression "iVar9 = iStack_8c" identifier = identifier) ;) (expression_statement "(*pcVar13)();" (call_expression "(*pcVar13)()" (parenthesized_expression "(*pcVar13)" ( (pointer_expression "*pcVar13" * identifier) )) (argument_list "()" ( ))) ;) (expression_statement "piVar8 = *(int **)(pcVar13 + 0x69d5c);" (assignment_expression "piVar8 = *(int **)(pcVar13 + 0x69d5c)" identifier = (pointer_expression "*(int **)(pcVar13 + 0x69d5c)" * (cast_expression "(int **)(pcVar13 + 0x69d5c)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar13 + 0x69d5c)" ( (binary_expression "pcVar13 + 0x69d5c" identifier + number_literal) ))))) ;) (expression_statement "uStack_d8 = 0;" (assignment_expression "uStack_d8 = 0" identifier = number_literal) ;) (expression_statement "iStack_d4 = *piVar8;" (assignment_expression "iStack_d4 = *piVar8" identifier = (pointer_expression "*piVar8" * identifier)) ;) (expression_statement "piStack_d0 = piVar10;" (assignment_expression "piStack_d0 = piVar10" identifier = identifier) ;) (expression_statement "ppiStack_cc = (int **)param_4;" (assignment_expression "ppiStack_cc = (int **)param_4" identifier = (cast_expression "(int **)param_4" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier)) ;) (expression_statement "ppiStack_c8 = (int **)pppiVar6;" (assignment_expression "ppiStack_c8 = (int **)pppiVar6" identifier = (cast_expression "(int **)pppiVar6" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier)) ;) (expression_statement "ppiStack_c4 = (int **)param_3;" (assignment_expression "ppiStack_c4 = (int **)param_3" identifier = (cast_expression "(int **)param_3" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier)) ;) (expression_statement "iStack_c0 = iVar11;" (assignment_expression "iStack_c0 = iVar11" identifier = identifier) ;) (expression_statement "pcStack_bc = pcVar14;" (assignment_expression "pcStack_bc = pcVar14" identifier = identifier) ;) (expression_statement "iVar11 = FUN_00048420();" (assignment_expression "iVar11 = FUN_00048420()" identifier = (call_expression "FUN_00048420()" identifier (argument_list "()" ( )))) ;) (if_statement "if (iVar11 == 0) {\n    iVar11 = FUN_0003c4e4(iVar9,&uStack_e0,&uStack_d8);\n    if (iVar11 == 0) {\n      *pppiVar4 = (int **)0x0;\n      iVar11 = FUN_00025cb8(uStack_d8,uStack_e0,pppiVar5,pppiVar7,&piStack_dc);\n      if ((int **)piStack_dc == (int **)0xffffffff) {\n        iVar11 = 0x37;\n      }\n      else if (iVar11 == 0 && (int **)piStack_dc == (int **)0x0) {\n        iVar11 = 0x51;\n      }\n      else {\n        *pppiVar4 = (int **)piStack_dc;\n      }\n    }\n  }\n  else {\n    iVar11 = 0x5d;\n  }" if (parenthesized_expression "(iVar11 == 0)" ( (binary_expression "iVar11 == 0" identifier == number_literal) )) (compound_statement "{\n    iVar11 = FUN_0003c4e4(iVar9,&uStack_e0,&uStack_d8);\n    if (iVar11 == 0) {\n      *pppiVar4 = (int **)0x0;\n      iVar11 = FUN_00025cb8(uStack_d8,uStack_e0,pppiVar5,pppiVar7,&piStack_dc);\n      if ((int **)piStack_dc == (int **)0xffffffff) {\n        iVar11 = 0x37;\n      }\n      else if (iVar11 == 0 && (int **)piStack_dc == (int **)0x0) {\n        iVar11 = 0x51;\n      }\n      else {\n        *pppiVar4 = (int **)piStack_dc;\n      }\n    }\n  }" { (expression_statement "iVar11 = FUN_0003c4e4(iVar9,&uStack_e0,&uStack_d8);" (assignment_expression "iVar11 = FUN_0003c4e4(iVar9,&uStack_e0,&uStack_d8)" identifier = (call_expression "FUN_0003c4e4(iVar9,&uStack_e0,&uStack_d8)" identifier (argument_list "(iVar9,&uStack_e0,&uStack_d8)" ( identifier , (pointer_expression "&uStack_e0" & identifier) , (pointer_expression "&uStack_d8" & identifier) )))) ;) (if_statement "if (iVar11 == 0) {\n      *pppiVar4 = (int **)0x0;\n      iVar11 = FUN_00025cb8(uStack_d8,uStack_e0,pppiVar5,pppiVar7,&piStack_dc);\n      if ((int **)piStack_dc == (int **)0xffffffff) {\n        iVar11 = 0x37;\n      }\n      else if (iVar11 == 0 && (int **)piStack_dc == (int **)0x0) {\n        iVar11 = 0x51;\n      }\n      else {\n        *pppiVar4 = (int **)piStack_dc;\n      }\n    }" if (parenthesized_expression "(iVar11 == 0)" ( (binary_expression "iVar11 == 0" identifier == number_literal) )) (compound_statement "{\n      *pppiVar4 = (int **)0x0;\n      iVar11 = FUN_00025cb8(uStack_d8,uStack_e0,pppiVar5,pppiVar7,&piStack_dc);\n      if ((int **)piStack_dc == (int **)0xffffffff) {\n        iVar11 = 0x37;\n      }\n      else if (iVar11 == 0 && (int **)piStack_dc == (int **)0x0) {\n        iVar11 = 0x51;\n      }\n      else {\n        *pppiVar4 = (int **)piStack_dc;\n      }\n    }" { (expression_statement "*pppiVar4 = (int **)0x0;" (assignment_expression "*pppiVar4 = (int **)0x0" (pointer_expression "*pppiVar4" * identifier) = (cast_expression "(int **)0x0" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) number_literal)) ;) (expression_statement "iVar11 = FUN_00025cb8(uStack_d8,uStack_e0,pppiVar5,pppiVar7,&piStack_dc);" (assignment_expression "iVar11 = FUN_00025cb8(uStack_d8,uStack_e0,pppiVar5,pppiVar7,&piStack_dc)" identifier = (call_expression "FUN_00025cb8(uStack_d8,uStack_e0,pppiVar5,pppiVar7,&piStack_dc)" identifier (argument_list "(uStack_d8,uStack_e0,pppiVar5,pppiVar7,&piStack_dc)" ( identifier , identifier , identifier , identifier , (pointer_expression "&piStack_dc" & identifier) )))) ;) (if_statement "if ((int **)piStack_dc == (int **)0xffffffff) {\n        iVar11 = 0x37;\n      }\n      else if (iVar11 == 0 && (int **)piStack_dc == (int **)0x0) {\n        iVar11 = 0x51;\n      }\n      else {\n        *pppiVar4 = (int **)piStack_dc;\n      }" if (parenthesized_expression "((int **)piStack_dc == (int **)0xffffffff)" ( (binary_expression "(int **)piStack_dc == (int **)0xffffffff" (cast_expression "(int **)piStack_dc" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier) == (cast_expression "(int **)0xffffffff" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) number_literal)) )) (compound_statement "{\n        iVar11 = 0x37;\n      }" { (expression_statement "iVar11 = 0x37;" (assignment_expression "iVar11 = 0x37" identifier = number_literal) ;) }) (else_clause "else if (iVar11 == 0 && (int **)piStack_dc == (int **)0x0) {\n        iVar11 = 0x51;\n      }\n      else {\n        *pppiVar4 = (int **)piStack_dc;\n      }" else (if_statement "if (iVar11 == 0 && (int **)piStack_dc == (int **)0x0) {\n        iVar11 = 0x51;\n      }\n      else {\n        *pppiVar4 = (int **)piStack_dc;\n      }" if (parenthesized_expression "(iVar11 == 0 && (int **)piStack_dc == (int **)0x0)" ( (binary_expression "iVar11 == 0 && (int **)piStack_dc == (int **)0x0" (binary_expression "iVar11 == 0" identifier == number_literal) && (binary_expression "(int **)piStack_dc == (int **)0x0" (cast_expression "(int **)piStack_dc" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier) == (cast_expression "(int **)0x0" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) number_literal))) )) (compound_statement "{\n        iVar11 = 0x51;\n      }" { (expression_statement "iVar11 = 0x51;" (assignment_expression "iVar11 = 0x51" identifier = number_literal) ;) }) (else_clause "else {\n        *pppiVar4 = (int **)piStack_dc;\n      }" else (compound_statement "{\n        *pppiVar4 = (int **)piStack_dc;\n      }" { (expression_statement "*pppiVar4 = (int **)piStack_dc;" (assignment_expression "*pppiVar4 = (int **)piStack_dc" (pointer_expression "*pppiVar4" * identifier) = (cast_expression "(int **)piStack_dc" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier)) ;) }))))) })) }) (else_clause "else {\n    iVar11 = 0x5d;\n  }" else (compound_statement "{\n    iVar11 = 0x5d;\n  }" { (expression_statement "iVar11 = 0x5d;" (assignment_expression "iVar11 = 0x5d" identifier = number_literal) ;) }))) (if_statement "if (iStack_d4 == *piVar8) {\n    return iVar11;\n  }" if (parenthesized_expression "(iStack_d4 == *piVar8)" ( (binary_expression "iStack_d4 == *piVar8" identifier == (pointer_expression "*piVar8" * identifier)) )) (compound_statement "{\n    return iVar11;\n  }" { (return_statement "return iVar11;" return identifier ;) })) (expression_statement "iVar11 = iStack_d4;" (assignment_expression "iVar11 = iStack_d4" identifier = identifier) ;) (expression_statement "(**(code **)(pcVar13 + 0x699d0))();" (call_expression "(**(code **)(pcVar13 + 0x699d0))()" (parenthesized_expression "(**(code **)(pcVar13 + 0x699d0))" ( (pointer_expression "**(code **)(pcVar13 + 0x699d0)" * (pointer_expression "*(code **)(pcVar13 + 0x699d0)" * (cast_expression "(code **)(pcVar13 + 0x699d0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar13 + 0x699d0)" ( (binary_expression "pcVar13 + 0x699d0" identifier + number_literal) ))))) )) (argument_list "()" ( ))) ;) (if_statement "if ((iVar11 != 0) && (*(int *)(iVar11 + 0x1030) == -0x3f212453)) {\n    if (*(int *)(iVar11 + 0x88) != 0) {\n      iVar11 = FUN_00033390(*(int *)(iVar11 + 0x88) + 0x8c,iVar11);\n      return iVar11;\n    }\n    return 0;\n  }" if (parenthesized_expression "((iVar11 != 0) && (*(int *)(iVar11 + 0x1030) == -0x3f212453))" ( (binary_expression "(iVar11 != 0) && (*(int *)(iVar11 + 0x1030) == -0x3f212453)" (parenthesized_expression "(iVar11 != 0)" ( (binary_expression "iVar11 != 0" identifier != number_literal) )) && (parenthesized_expression "(*(int *)(iVar11 + 0x1030) == -0x3f212453)" ( (binary_expression "*(int *)(iVar11 + 0x1030) == -0x3f212453" (pointer_expression "*(int *)(iVar11 + 0x1030)" * (cast_expression "(int *)(iVar11 + 0x1030)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar11 + 0x1030)" ( (binary_expression "iVar11 + 0x1030" identifier + number_literal) )))) == number_literal) ))) )) (compound_statement "{\n    if (*(int *)(iVar11 + 0x88) != 0) {\n      iVar11 = FUN_00033390(*(int *)(iVar11 + 0x88) + 0x8c,iVar11);\n      return iVar11;\n    }\n    return 0;\n  }" { (if_statement "if (*(int *)(iVar11 + 0x88) != 0) {\n      iVar11 = FUN_00033390(*(int *)(iVar11 + 0x88) + 0x8c,iVar11);\n      return iVar11;\n    }" if (parenthesized_expression "(*(int *)(iVar11 + 0x88) != 0)" ( (binary_expression "*(int *)(iVar11 + 0x88) != 0" (pointer_expression "*(int *)(iVar11 + 0x88)" * (cast_expression "(int *)(iVar11 + 0x88)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar11 + 0x88)" ( (binary_expression "iVar11 + 0x88" identifier + number_literal) )))) != number_literal) )) (compound_statement "{\n      iVar11 = FUN_00033390(*(int *)(iVar11 + 0x88) + 0x8c,iVar11);\n      return iVar11;\n    }" { (expression_statement "iVar11 = FUN_00033390(*(int *)(iVar11 + 0x88) + 0x8c,iVar11);" (assignment_expression "iVar11 = FUN_00033390(*(int *)(iVar11 + 0x88) + 0x8c,iVar11)" identifier = (call_expression "FUN_00033390(*(int *)(iVar11 + 0x88) + 0x8c,iVar11)" identifier (argument_list "(*(int *)(iVar11 + 0x88) + 0x8c,iVar11)" ( (binary_expression "*(int *)(iVar11 + 0x88) + 0x8c" (pointer_expression "*(int *)(iVar11 + 0x88)" * (cast_expression "(int *)(iVar11 + 0x88)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar11 + 0x88)" ( (binary_expression "iVar11 + 0x88" identifier + number_literal) )))) + number_literal) , identifier )))) ;) (return_statement "return iVar11;" return identifier ;) })) (return_statement "return 0;" return number_literal ;) })) (return_statement "return 0x2b;" return number_literal ;) })))
(translation_unit "/* WARNING: Enum "anon_enum_32": Some values do not have unique names */\n\nCURLcode curl_easy_pause(Curl_easy *data,int action)\n\n{\n  undefined *puVar1;\n  undefined3 extraout_var;\n  undefined3 extraout_var_00;\n  Curl_easy *pCVar2;\n  curl_llist_element *pcVar3;\n  _Bool _Var4;\n  Curl_easy *easy;\n  tempbuf *ptVar5;\n  connectdata *ptr;\n  void *data_00;\n  connectdata *pcVar6;\n  connectdata *buf;\n  connectdata *in_a2;\n  connectdata *in_a3;\n  connectdata *pcVar7;\n  int *piVar8;\n  int *piVar9;\n  CURLcode CVar10;\n  tempbuf *unaff_s4;\n  connectdata *pcVar11;\n  uint uVar12;\n  uint uVar13;\n  undefined *puVar14;\n  code *pcVar15;\n  code *pcVar16;\n  curl_socket_t cStack_e0;\n  Curl_easy *pCStack_dc;\n  connectdata *pcStack_d8;\n  void *pvStack_d4;\n  int *piStack_d0;\n  connectdata *pcStack_cc;\n  connectdata *pcStack_c8;\n  connectdata *pcStack_c4;\n  Curl_easy *pCStack_c0;\n  code *pcStack_bc;\n  connectdata *pcStack_98;\n  Curl_easy *pCStack_94;\n  connectdata *pcStack_90;\n  Curl_easy *pCStack_8c;\n  connectdata *pcStack_88;\n  undefined *puStack_84;\n  Curl_easy *pCStack_80;\n  CURLcode CStack_7c;\n  tempbuf *ptStack_78;\n  code *pcStack_74;\n  Curl_easy *local_58;\n  tempbuf writebuf [3];\n  \n  puVar1 = PTR___stack_chk_guard_000a6fe0;\n  pcVar6 = (connectdata *)((action & 1U) << 4 | (action & 4U) << 3);\n  pcVar7 = (connectdata *)((uint)pcVar6 | (data->req).keepon & 0xffffffcfU);\n  (data->req).keepon = (int)pcVar7;\n  easy = *(Curl_easy **)puVar1;\n  buf = pcVar6;\n  if (((action & 1U) == 0) && (uVar13 = (data->state).tempcount, uVar13 != 0)) {\n    pcVar11 = data->conn;\n    unaff_s4 = writebuf;\n    pCVar2 = data;\n    ptVar5 = unaff_s4;\n    do {\n      in_a3 = (connectdata *)(pCVar2->state).tempwrite[0].buf;\n      pcVar3 = &pCVar2->connect_queue;\n      (pCVar2->state).tempwrite[0].buf = (char *)0x0;\n      ptVar5->buf = (char *)in_a3;\n      in_a2 = (connectdata *)(pCVar2->state).tempwrite[0].len;\n      buf = (connectdata *)(pCVar2->state).tempwrite[0].type;\n      ptVar5->len = (size_t)in_a2;\n      ptVar5->type = (int)buf;\n      pCVar2 = (Curl_easy *)pcVar3;\n      ptVar5 = ptVar5 + 1;\n    } while (pcVar3 != (curl_llist_element *)(data->sockets + uVar13 * 3 + -0x14));\n    local_58 = pcVar11->data;\n    (data->state).tempcount = 0;\n    if (local_58 == data) {\n      local_58 = (Curl_easy *)0x0;\n    }\n    else {\n      pcVar11->data = data;\n    }\n    puVar14 = PTR_Curl_cfree_000a6144;\n    uVar12 = 0;\n    CVar10 = CURLE_OK;\n    do {\n      ptr = (connectdata *)unaff_s4->buf;\n      if (CVar10 == CURLE_OK) {\n        in_a3 = (connectdata *)unaff_s4->len;\n        buf = (connectdata *)unaff_s4->type;\n        in_a2 = ptr;\n        CVar10 = Curl_client_write(pcVar11,(int)buf,(char *)ptr,(size_t)in_a3);\n      }\n      uVar12 = uVar12 + 1;\n      unaff_s4 = unaff_s4 + 1;\n      (**(code **)puVar14)(ptr);\n    } while (uVar13 != uVar12);\n    if (local_58 != (Curl_easy *)0x0) {\n      pcVar11->data = local_58;\n    }\n    pcStack_88 = pcVar7;\n    if (CVar10 != CURLE_OK) goto LAB_0003d0fc;\n  }\n  if (pcVar6 != (connectdata *)0x30) {\n    in_a2 = (connectdata *)&DAT_00000006;\n    buf = (connectdata *)0x0;\n    Curl_expire(data,0,EXPIRE_RUN_NOW);\n  }\n  CVar10 = CURLE_OK;\n  Curl_updatesocket(data);\n  pcStack_88 = pcVar6;\nLAB_0003d0fc:\n  if (easy == *(Curl_easy **)puVar1) {\n    return CVar10;\n  }\n  pcVar15 = curl_easy_recv;\n  puVar14 = PTR___stack_chk_fail_000a6c54;\n  (*(code *)PTR___stack_chk_fail_000a6c54)();\n  piVar8 = *(int **)(puVar14 + 0x69e50);\n  puStack_84 = puVar1;\n  pCStack_8c = (Curl_easy *)*piVar8;\n  pcVar6 = buf;\n  pcVar7 = in_a2;\n  pcVar11 = in_a3;\n  pCStack_80 = data;\n  CStack_7c = CVar10;\n  ptStack_78 = unaff_s4;\n  pcStack_74 = pcVar15;\n  _Var4 = Curl_is_in_callback(easy);\n  if (CONCAT31(extraout_var,_Var4) == 0) {\n    pcVar7 = (connectdata *)&pcStack_90;\n    pcVar6 = (connectdata *)&pcStack_98;\n    CVar10 = easy_connection(easy,(curl_socket_t *)pcVar6,(connectdata **)pcVar7);\n    if (CVar10 == CURLE_OK) {\n      in_a3->data = (Curl_easy *)0x0;\n      pcVar7 = buf;\n      pcVar11 = in_a2;\n      CVar10 = Curl_read(pcStack_90,(curl_socket_t)pcStack_98,(char *)buf,(size_t)in_a2,\n                         (ssize_t *)&pCStack_94);\n      pcVar6 = pcStack_98;\n      if (CVar10 == CURLE_OK) {\n        in_a3->data = pCStack_94;\n      }\n    }\n  }\n  else {\n    CVar10 = CURLE_RECURSIVE_API_CALL;\n  }\n  if (pCStack_8c == (Curl_easy *)*piVar8) {\n    return CVar10;\n  }\n  pcVar15 = *(code **)(puVar14 + 0x69ac4);\n  pcVar16 = curl_easy_send;\n  pCVar2 = pCStack_8c;\n  (*pcVar15)();\n  piVar9 = *(int **)(pcVar15 + 0x69d5c);\n  pcStack_d8 = (connectdata *)0x0;\n  pvStack_d4 = (void *)*piVar9;\n  piStack_d0 = piVar8;\n  pcStack_cc = in_a3;\n  pcStack_c8 = buf;\n  pcStack_c4 = in_a2;\n  pCStack_c0 = easy;\n  pcStack_bc = pcVar16;\n  _Var4 = Curl_is_in_callback(pCVar2);\n  if (CONCAT31(extraout_var_00,_Var4) == 0) {\n    CVar10 = easy_connection(pCVar2,&cStack_e0,&pcStack_d8);\n    if (CVar10 == CURLE_OK) {\n      pcVar11->data = (Curl_easy *)0x0;\n      CVar10 = Curl_write(pcStack_d8,cStack_e0,pcVar6,(size_t)pcVar7,(ssize_t *)&pCStack_dc);\n      if (pCStack_dc == (Curl_easy *)&DAT_ffffffff) {\n        CVar10 = CURLE_SEND_ERROR;\n      }\n      else if (CVar10 == CURLE_OK && pCStack_dc == (Curl_easy *)0x0) {\n        CVar10 = CURLE_AGAIN;\n      }\n      else {\n        pcVar11->data = pCStack_dc;\n      }\n    }\n  }\n  else {\n    CVar10 = CURLE_RECURSIVE_API_CALL;\n  }\n  if (pvStack_d4 == (void *)*piVar9) {\n    return CVar10;\n  }\n  data_00 = pvStack_d4;\n  (**(code **)(pcVar15 + 0x699d0))();\n  if ((data_00 != (void *)0x0) && (*(int *)((int)data_00 + 0x1030) == -0x3f212453)) {\n    if (*(int *)((int)data_00 + 0x88) != 0) {\n      CVar10 = Curl_upkeep((conncache *)(*(int *)((int)data_00 + 0x88) + 0x8c),data_00);\n      return CVar10;\n    }\n    return CURLE_OK;\n  }\n  return CURLE_BAD_FUNCTION_ARGUMENT;\n}\n\n" comment (function_definition "CURLcode curl_easy_pause(Curl_easy *data,int action)\n\n{\n  undefined *puVar1;\n  undefined3 extraout_var;\n  undefined3 extraout_var_00;\n  Curl_easy *pCVar2;\n  curl_llist_element *pcVar3;\n  _Bool _Var4;\n  Curl_easy *easy;\n  tempbuf *ptVar5;\n  connectdata *ptr;\n  void *data_00;\n  connectdata *pcVar6;\n  connectdata *buf;\n  connectdata *in_a2;\n  connectdata *in_a3;\n  connectdata *pcVar7;\n  int *piVar8;\n  int *piVar9;\n  CURLcode CVar10;\n  tempbuf *unaff_s4;\n  connectdata *pcVar11;\n  uint uVar12;\n  uint uVar13;\n  undefined *puVar14;\n  code *pcVar15;\n  code *pcVar16;\n  curl_socket_t cStack_e0;\n  Curl_easy *pCStack_dc;\n  connectdata *pcStack_d8;\n  void *pvStack_d4;\n  int *piStack_d0;\n  connectdata *pcStack_cc;\n  connectdata *pcStack_c8;\n  connectdata *pcStack_c4;\n  Curl_easy *pCStack_c0;\n  code *pcStack_bc;\n  connectdata *pcStack_98;\n  Curl_easy *pCStack_94;\n  connectdata *pcStack_90;\n  Curl_easy *pCStack_8c;\n  connectdata *pcStack_88;\n  undefined *puStack_84;\n  Curl_easy *pCStack_80;\n  CURLcode CStack_7c;\n  tempbuf *ptStack_78;\n  code *pcStack_74;\n  Curl_easy *local_58;\n  tempbuf writebuf [3];\n  \n  puVar1 = PTR___stack_chk_guard_000a6fe0;\n  pcVar6 = (connectdata *)((action & 1U) << 4 | (action & 4U) << 3);\n  pcVar7 = (connectdata *)((uint)pcVar6 | (data->req).keepon & 0xffffffcfU);\n  (data->req).keepon = (int)pcVar7;\n  easy = *(Curl_easy **)puVar1;\n  buf = pcVar6;\n  if (((action & 1U) == 0) && (uVar13 = (data->state).tempcount, uVar13 != 0)) {\n    pcVar11 = data->conn;\n    unaff_s4 = writebuf;\n    pCVar2 = data;\n    ptVar5 = unaff_s4;\n    do {\n      in_a3 = (connectdata *)(pCVar2->state).tempwrite[0].buf;\n      pcVar3 = &pCVar2->connect_queue;\n      (pCVar2->state).tempwrite[0].buf = (char *)0x0;\n      ptVar5->buf = (char *)in_a3;\n      in_a2 = (connectdata *)(pCVar2->state).tempwrite[0].len;\n      buf = (connectdata *)(pCVar2->state).tempwrite[0].type;\n      ptVar5->len = (size_t)in_a2;\n      ptVar5->type = (int)buf;\n      pCVar2 = (Curl_easy *)pcVar3;\n      ptVar5 = ptVar5 + 1;\n    } while (pcVar3 != (curl_llist_element *)(data->sockets + uVar13 * 3 + -0x14));\n    local_58 = pcVar11->data;\n    (data->state).tempcount = 0;\n    if (local_58 == data) {\n      local_58 = (Curl_easy *)0x0;\n    }\n    else {\n      pcVar11->data = data;\n    }\n    puVar14 = PTR_Curl_cfree_000a6144;\n    uVar12 = 0;\n    CVar10 = CURLE_OK;\n    do {\n      ptr = (connectdata *)unaff_s4->buf;\n      if (CVar10 == CURLE_OK) {\n        in_a3 = (connectdata *)unaff_s4->len;\n        buf = (connectdata *)unaff_s4->type;\n        in_a2 = ptr;\n        CVar10 = Curl_client_write(pcVar11,(int)buf,(char *)ptr,(size_t)in_a3);\n      }\n      uVar12 = uVar12 + 1;\n      unaff_s4 = unaff_s4 + 1;\n      (**(code **)puVar14)(ptr);\n    } while (uVar13 != uVar12);\n    if (local_58 != (Curl_easy *)0x0) {\n      pcVar11->data = local_58;\n    }\n    pcStack_88 = pcVar7;\n    if (CVar10 != CURLE_OK) goto LAB_0003d0fc;\n  }\n  if (pcVar6 != (connectdata *)0x30) {\n    in_a2 = (connectdata *)&DAT_00000006;\n    buf = (connectdata *)0x0;\n    Curl_expire(data,0,EXPIRE_RUN_NOW);\n  }\n  CVar10 = CURLE_OK;\n  Curl_updatesocket(data);\n  pcStack_88 = pcVar6;\nLAB_0003d0fc:\n  if (easy == *(Curl_easy **)puVar1) {\n    return CVar10;\n  }\n  pcVar15 = curl_easy_recv;\n  puVar14 = PTR___stack_chk_fail_000a6c54;\n  (*(code *)PTR___stack_chk_fail_000a6c54)();\n  piVar8 = *(int **)(puVar14 + 0x69e50);\n  puStack_84 = puVar1;\n  pCStack_8c = (Curl_easy *)*piVar8;\n  pcVar6 = buf;\n  pcVar7 = in_a2;\n  pcVar11 = in_a3;\n  pCStack_80 = data;\n  CStack_7c = CVar10;\n  ptStack_78 = unaff_s4;\n  pcStack_74 = pcVar15;\n  _Var4 = Curl_is_in_callback(easy);\n  if (CONCAT31(extraout_var,_Var4) == 0) {\n    pcVar7 = (connectdata *)&pcStack_90;\n    pcVar6 = (connectdata *)&pcStack_98;\n    CVar10 = easy_connection(easy,(curl_socket_t *)pcVar6,(connectdata **)pcVar7);\n    if (CVar10 == CURLE_OK) {\n      in_a3->data = (Curl_easy *)0x0;\n      pcVar7 = buf;\n      pcVar11 = in_a2;\n      CVar10 = Curl_read(pcStack_90,(curl_socket_t)pcStack_98,(char *)buf,(size_t)in_a2,\n                         (ssize_t *)&pCStack_94);\n      pcVar6 = pcStack_98;\n      if (CVar10 == CURLE_OK) {\n        in_a3->data = pCStack_94;\n      }\n    }\n  }\n  else {\n    CVar10 = CURLE_RECURSIVE_API_CALL;\n  }\n  if (pCStack_8c == (Curl_easy *)*piVar8) {\n    return CVar10;\n  }\n  pcVar15 = *(code **)(puVar14 + 0x69ac4);\n  pcVar16 = curl_easy_send;\n  pCVar2 = pCStack_8c;\n  (*pcVar15)();\n  piVar9 = *(int **)(pcVar15 + 0x69d5c);\n  pcStack_d8 = (connectdata *)0x0;\n  pvStack_d4 = (void *)*piVar9;\n  piStack_d0 = piVar8;\n  pcStack_cc = in_a3;\n  pcStack_c8 = buf;\n  pcStack_c4 = in_a2;\n  pCStack_c0 = easy;\n  pcStack_bc = pcVar16;\n  _Var4 = Curl_is_in_callback(pCVar2);\n  if (CONCAT31(extraout_var_00,_Var4) == 0) {\n    CVar10 = easy_connection(pCVar2,&cStack_e0,&pcStack_d8);\n    if (CVar10 == CURLE_OK) {\n      pcVar11->data = (Curl_easy *)0x0;\n      CVar10 = Curl_write(pcStack_d8,cStack_e0,pcVar6,(size_t)pcVar7,(ssize_t *)&pCStack_dc);\n      if (pCStack_dc == (Curl_easy *)&DAT_ffffffff) {\n        CVar10 = CURLE_SEND_ERROR;\n      }\n      else if (CVar10 == CURLE_OK && pCStack_dc == (Curl_easy *)0x0) {\n        CVar10 = CURLE_AGAIN;\n      }\n      else {\n        pcVar11->data = pCStack_dc;\n      }\n    }\n  }\n  else {\n    CVar10 = CURLE_RECURSIVE_API_CALL;\n  }\n  if (pvStack_d4 == (void *)*piVar9) {\n    return CVar10;\n  }\n  data_00 = pvStack_d4;\n  (**(code **)(pcVar15 + 0x699d0))();\n  if ((data_00 != (void *)0x0) && (*(int *)((int)data_00 + 0x1030) == -0x3f212453)) {\n    if (*(int *)((int)data_00 + 0x88) != 0) {\n      CVar10 = Curl_upkeep((conncache *)(*(int *)((int)data_00 + 0x88) + 0x8c),data_00);\n      return CVar10;\n    }\n    return CURLE_OK;\n  }\n  return CURLE_BAD_FUNCTION_ARGUMENT;\n}" type_identifier (function_declarator "curl_easy_pause(Curl_easy *data,int action)" identifier (parameter_list "(Curl_easy *data,int action)" ( (parameter_declaration "Curl_easy *data" type_identifier (pointer_declarator "*data" * identifier)) , (parameter_declaration "int action" primitive_type identifier) ))) (compound_statement "{\n  undefined *puVar1;\n  undefined3 extraout_var;\n  undefined3 extraout_var_00;\n  Curl_easy *pCVar2;\n  curl_llist_element *pcVar3;\n  _Bool _Var4;\n  Curl_easy *easy;\n  tempbuf *ptVar5;\n  connectdata *ptr;\n  void *data_00;\n  connectdata *pcVar6;\n  connectdata *buf;\n  connectdata *in_a2;\n  connectdata *in_a3;\n  connectdata *pcVar7;\n  int *piVar8;\n  int *piVar9;\n  CURLcode CVar10;\n  tempbuf *unaff_s4;\n  connectdata *pcVar11;\n  uint uVar12;\n  uint uVar13;\n  undefined *puVar14;\n  code *pcVar15;\n  code *pcVar16;\n  curl_socket_t cStack_e0;\n  Curl_easy *pCStack_dc;\n  connectdata *pcStack_d8;\n  void *pvStack_d4;\n  int *piStack_d0;\n  connectdata *pcStack_cc;\n  connectdata *pcStack_c8;\n  connectdata *pcStack_c4;\n  Curl_easy *pCStack_c0;\n  code *pcStack_bc;\n  connectdata *pcStack_98;\n  Curl_easy *pCStack_94;\n  connectdata *pcStack_90;\n  Curl_easy *pCStack_8c;\n  connectdata *pcStack_88;\n  undefined *puStack_84;\n  Curl_easy *pCStack_80;\n  CURLcode CStack_7c;\n  tempbuf *ptStack_78;\n  code *pcStack_74;\n  Curl_easy *local_58;\n  tempbuf writebuf [3];\n  \n  puVar1 = PTR___stack_chk_guard_000a6fe0;\n  pcVar6 = (connectdata *)((action & 1U) << 4 | (action & 4U) << 3);\n  pcVar7 = (connectdata *)((uint)pcVar6 | (data->req).keepon & 0xffffffcfU);\n  (data->req).keepon = (int)pcVar7;\n  easy = *(Curl_easy **)puVar1;\n  buf = pcVar6;\n  if (((action & 1U) == 0) && (uVar13 = (data->state).tempcount, uVar13 != 0)) {\n    pcVar11 = data->conn;\n    unaff_s4 = writebuf;\n    pCVar2 = data;\n    ptVar5 = unaff_s4;\n    do {\n      in_a3 = (connectdata *)(pCVar2->state).tempwrite[0].buf;\n      pcVar3 = &pCVar2->connect_queue;\n      (pCVar2->state).tempwrite[0].buf = (char *)0x0;\n      ptVar5->buf = (char *)in_a3;\n      in_a2 = (connectdata *)(pCVar2->state).tempwrite[0].len;\n      buf = (connectdata *)(pCVar2->state).tempwrite[0].type;\n      ptVar5->len = (size_t)in_a2;\n      ptVar5->type = (int)buf;\n      pCVar2 = (Curl_easy *)pcVar3;\n      ptVar5 = ptVar5 + 1;\n    } while (pcVar3 != (curl_llist_element *)(data->sockets + uVar13 * 3 + -0x14));\n    local_58 = pcVar11->data;\n    (data->state).tempcount = 0;\n    if (local_58 == data) {\n      local_58 = (Curl_easy *)0x0;\n    }\n    else {\n      pcVar11->data = data;\n    }\n    puVar14 = PTR_Curl_cfree_000a6144;\n    uVar12 = 0;\n    CVar10 = CURLE_OK;\n    do {\n      ptr = (connectdata *)unaff_s4->buf;\n      if (CVar10 == CURLE_OK) {\n        in_a3 = (connectdata *)unaff_s4->len;\n        buf = (connectdata *)unaff_s4->type;\n        in_a2 = ptr;\n        CVar10 = Curl_client_write(pcVar11,(int)buf,(char *)ptr,(size_t)in_a3);\n      }\n      uVar12 = uVar12 + 1;\n      unaff_s4 = unaff_s4 + 1;\n      (**(code **)puVar14)(ptr);\n    } while (uVar13 != uVar12);\n    if (local_58 != (Curl_easy *)0x0) {\n      pcVar11->data = local_58;\n    }\n    pcStack_88 = pcVar7;\n    if (CVar10 != CURLE_OK) goto LAB_0003d0fc;\n  }\n  if (pcVar6 != (connectdata *)0x30) {\n    in_a2 = (connectdata *)&DAT_00000006;\n    buf = (connectdata *)0x0;\n    Curl_expire(data,0,EXPIRE_RUN_NOW);\n  }\n  CVar10 = CURLE_OK;\n  Curl_updatesocket(data);\n  pcStack_88 = pcVar6;\nLAB_0003d0fc:\n  if (easy == *(Curl_easy **)puVar1) {\n    return CVar10;\n  }\n  pcVar15 = curl_easy_recv;\n  puVar14 = PTR___stack_chk_fail_000a6c54;\n  (*(code *)PTR___stack_chk_fail_000a6c54)();\n  piVar8 = *(int **)(puVar14 + 0x69e50);\n  puStack_84 = puVar1;\n  pCStack_8c = (Curl_easy *)*piVar8;\n  pcVar6 = buf;\n  pcVar7 = in_a2;\n  pcVar11 = in_a3;\n  pCStack_80 = data;\n  CStack_7c = CVar10;\n  ptStack_78 = unaff_s4;\n  pcStack_74 = pcVar15;\n  _Var4 = Curl_is_in_callback(easy);\n  if (CONCAT31(extraout_var,_Var4) == 0) {\n    pcVar7 = (connectdata *)&pcStack_90;\n    pcVar6 = (connectdata *)&pcStack_98;\n    CVar10 = easy_connection(easy,(curl_socket_t *)pcVar6,(connectdata **)pcVar7);\n    if (CVar10 == CURLE_OK) {\n      in_a3->data = (Curl_easy *)0x0;\n      pcVar7 = buf;\n      pcVar11 = in_a2;\n      CVar10 = Curl_read(pcStack_90,(curl_socket_t)pcStack_98,(char *)buf,(size_t)in_a2,\n                         (ssize_t *)&pCStack_94);\n      pcVar6 = pcStack_98;\n      if (CVar10 == CURLE_OK) {\n        in_a3->data = pCStack_94;\n      }\n    }\n  }\n  else {\n    CVar10 = CURLE_RECURSIVE_API_CALL;\n  }\n  if (pCStack_8c == (Curl_easy *)*piVar8) {\n    return CVar10;\n  }\n  pcVar15 = *(code **)(puVar14 + 0x69ac4);\n  pcVar16 = curl_easy_send;\n  pCVar2 = pCStack_8c;\n  (*pcVar15)();\n  piVar9 = *(int **)(pcVar15 + 0x69d5c);\n  pcStack_d8 = (connectdata *)0x0;\n  pvStack_d4 = (void *)*piVar9;\n  piStack_d0 = piVar8;\n  pcStack_cc = in_a3;\n  pcStack_c8 = buf;\n  pcStack_c4 = in_a2;\n  pCStack_c0 = easy;\n  pcStack_bc = pcVar16;\n  _Var4 = Curl_is_in_callback(pCVar2);\n  if (CONCAT31(extraout_var_00,_Var4) == 0) {\n    CVar10 = easy_connection(pCVar2,&cStack_e0,&pcStack_d8);\n    if (CVar10 == CURLE_OK) {\n      pcVar11->data = (Curl_easy *)0x0;\n      CVar10 = Curl_write(pcStack_d8,cStack_e0,pcVar6,(size_t)pcVar7,(ssize_t *)&pCStack_dc);\n      if (pCStack_dc == (Curl_easy *)&DAT_ffffffff) {\n        CVar10 = CURLE_SEND_ERROR;\n      }\n      else if (CVar10 == CURLE_OK && pCStack_dc == (Curl_easy *)0x0) {\n        CVar10 = CURLE_AGAIN;\n      }\n      else {\n        pcVar11->data = pCStack_dc;\n      }\n    }\n  }\n  else {\n    CVar10 = CURLE_RECURSIVE_API_CALL;\n  }\n  if (pvStack_d4 == (void *)*piVar9) {\n    return CVar10;\n  }\n  data_00 = pvStack_d4;\n  (**(code **)(pcVar15 + 0x699d0))();\n  if ((data_00 != (void *)0x0) && (*(int *)((int)data_00 + 0x1030) == -0x3f212453)) {\n    if (*(int *)((int)data_00 + 0x88) != 0) {\n      CVar10 = Curl_upkeep((conncache *)(*(int *)((int)data_00 + 0x88) + 0x8c),data_00);\n      return CVar10;\n    }\n    return CURLE_OK;\n  }\n  return CURLE_BAD_FUNCTION_ARGUMENT;\n}" { (declaration "undefined *puVar1;" type_identifier (pointer_declarator "*puVar1" * identifier) ;) (declaration "undefined3 extraout_var;" type_identifier identifier ;) (declaration "undefined3 extraout_var_00;" type_identifier identifier ;) (declaration "Curl_easy *pCVar2;" type_identifier (pointer_declarator "*pCVar2" * identifier) ;) (declaration "curl_llist_element *pcVar3;" type_identifier (pointer_declarator "*pcVar3" * identifier) ;) (declaration "_Bool _Var4;" type_identifier identifier ;) (declaration "Curl_easy *easy;" type_identifier (pointer_declarator "*easy" * identifier) ;) (declaration "tempbuf *ptVar5;" type_identifier (pointer_declarator "*ptVar5" * identifier) ;) (declaration "connectdata *ptr;" type_identifier (pointer_declarator "*ptr" * identifier) ;) (declaration "void *data_00;" primitive_type (pointer_declarator "*data_00" * identifier) ;) (declaration "connectdata *pcVar6;" type_identifier (pointer_declarator "*pcVar6" * identifier) ;) (declaration "connectdata *buf;" type_identifier (pointer_declarator "*buf" * identifier) ;) (declaration "connectdata *in_a2;" type_identifier (pointer_declarator "*in_a2" * identifier) ;) (declaration "connectdata *in_a3;" type_identifier (pointer_declarator "*in_a3" * identifier) ;) (declaration "connectdata *pcVar7;" type_identifier (pointer_declarator "*pcVar7" * identifier) ;) (declaration "int *piVar8;" primitive_type (pointer_declarator "*piVar8" * identifier) ;) (declaration "int *piVar9;" primitive_type (pointer_declarator "*piVar9" * identifier) ;) (declaration "CURLcode CVar10;" type_identifier identifier ;) (declaration "tempbuf *unaff_s4;" type_identifier (pointer_declarator "*unaff_s4" * identifier) ;) (declaration "connectdata *pcVar11;" type_identifier (pointer_declarator "*pcVar11" * identifier) ;) (declaration "uint uVar12;" type_identifier identifier ;) (declaration "uint uVar13;" type_identifier identifier ;) (declaration "undefined *puVar14;" type_identifier (pointer_declarator "*puVar14" * identifier) ;) (declaration "code *pcVar15;" type_identifier (pointer_declarator "*pcVar15" * identifier) ;) (declaration "code *pcVar16;" type_identifier (pointer_declarator "*pcVar16" * identifier) ;) (declaration "curl_socket_t cStack_e0;" type_identifier identifier ;) (declaration "Curl_easy *pCStack_dc;" type_identifier (pointer_declarator "*pCStack_dc" * identifier) ;) (declaration "connectdata *pcStack_d8;" type_identifier (pointer_declarator "*pcStack_d8" * identifier) ;) (declaration "void *pvStack_d4;" primitive_type (pointer_declarator "*pvStack_d4" * identifier) ;) (declaration "int *piStack_d0;" primitive_type (pointer_declarator "*piStack_d0" * identifier) ;) (declaration "connectdata *pcStack_cc;" type_identifier (pointer_declarator "*pcStack_cc" * identifier) ;) (declaration "connectdata *pcStack_c8;" type_identifier (pointer_declarator "*pcStack_c8" * identifier) ;) (declaration "connectdata *pcStack_c4;" type_identifier (pointer_declarator "*pcStack_c4" * identifier) ;) (declaration "Curl_easy *pCStack_c0;" type_identifier (pointer_declarator "*pCStack_c0" * identifier) ;) (declaration "code *pcStack_bc;" type_identifier (pointer_declarator "*pcStack_bc" * identifier) ;) (declaration "connectdata *pcStack_98;" type_identifier (pointer_declarator "*pcStack_98" * identifier) ;) (declaration "Curl_easy *pCStack_94;" type_identifier (pointer_declarator "*pCStack_94" * identifier) ;) (declaration "connectdata *pcStack_90;" type_identifier (pointer_declarator "*pcStack_90" * identifier) ;) (declaration "Curl_easy *pCStack_8c;" type_identifier (pointer_declarator "*pCStack_8c" * identifier) ;) (declaration "connectdata *pcStack_88;" type_identifier (pointer_declarator "*pcStack_88" * identifier) ;) (declaration "undefined *puStack_84;" type_identifier (pointer_declarator "*puStack_84" * identifier) ;) (declaration "Curl_easy *pCStack_80;" type_identifier (pointer_declarator "*pCStack_80" * identifier) ;) (declaration "CURLcode CStack_7c;" type_identifier identifier ;) (declaration "tempbuf *ptStack_78;" type_identifier (pointer_declarator "*ptStack_78" * identifier) ;) (declaration "code *pcStack_74;" type_identifier (pointer_declarator "*pcStack_74" * identifier) ;) (declaration "Curl_easy *local_58;" type_identifier (pointer_declarator "*local_58" * identifier) ;) (declaration "tempbuf writebuf [3];" type_identifier (array_declarator "writebuf [3]" identifier [ number_literal ]) ;) (expression_statement "puVar1 = PTR___stack_chk_guard_000a6fe0;" (assignment_expression "puVar1 = PTR___stack_chk_guard_000a6fe0" identifier = identifier) ;) (expression_statement "pcVar6 = (connectdata *)((action & 1U) << 4 | (action & 4U) << 3);" (assignment_expression "pcVar6 = (connectdata *)((action & 1U) << 4 | (action & 4U) << 3)" identifier = (cast_expression "(connectdata *)((action & 1U) << 4 | (action & 4U) << 3)" ( (type_descriptor "connectdata *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((action & 1U) << 4 | (action & 4U) << 3)" ( (binary_expression "(action & 1U) << 4 | (action & 4U) << 3" (binary_expression "(action & 1U) << 4" (parenthesized_expression "(action & 1U)" ( (binary_expression "action & 1U" identifier & number_literal) )) << number_literal) | (binary_expression "(action & 4U) << 3" (parenthesized_expression "(action & 4U)" ( (binary_expression "action & 4U" identifier & number_literal) )) << number_literal)) )))) ;) (expression_statement "pcVar7 = (connectdata *)((uint)pcVar6 | (data->req).keepon & 0xffffffcfU);" (assignment_expression "pcVar7 = (connectdata *)((uint)pcVar6 | (data->req).keepon & 0xffffffcfU)" identifier = (cast_expression "(connectdata *)((uint)pcVar6 | (data->req).keepon & 0xffffffcfU)" ( (type_descriptor "connectdata *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((uint)pcVar6 | (data->req).keepon & 0xffffffcfU)" ( (binary_expression "(uint)pcVar6 | (data->req).keepon & 0xffffffcfU" (cast_expression "(uint)pcVar6" ( (type_descriptor "uint" type_identifier) ) identifier) | (binary_expression "(data->req).keepon & 0xffffffcfU" (field_expression "(data->req).keepon" (parenthesized_expression "(data->req)" ( (field_expression "data->req" identifier -> field_identifier) )) . field_identifier) & number_literal)) )))) ;) (expression_statement "(data->req).keepon = (int)pcVar7;" (assignment_expression "(data->req).keepon = (int)pcVar7" (field_expression "(data->req).keepon" (parenthesized_expression "(data->req)" ( (field_expression "data->req" identifier -> field_identifier) )) . field_identifier) = (cast_expression "(int)pcVar7" ( (type_descriptor "int" primitive_type) ) identifier)) ;) (expression_statement "easy = *(Curl_easy **)puVar1;" (assignment_expression "easy = *(Curl_easy **)puVar1" identifier = (pointer_expression "*(Curl_easy **)puVar1" * (cast_expression "(Curl_easy **)puVar1" ( (type_descriptor "Curl_easy **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier))) ;) (expression_statement "buf = pcVar6;" (assignment_expression "buf = pcVar6" identifier = identifier) ;) (if_statement "if (((action & 1U) == 0) && (uVar13 = (data->state).tempcount, uVar13 != 0)) {\n    pcVar11 = data->conn;\n    unaff_s4 = writebuf;\n    pCVar2 = data;\n    ptVar5 = unaff_s4;\n    do {\n      in_a3 = (connectdata *)(pCVar2->state).tempwrite[0].buf;\n      pcVar3 = &pCVar2->connect_queue;\n      (pCVar2->state).tempwrite[0].buf = (char *)0x0;\n      ptVar5->buf = (char *)in_a3;\n      in_a2 = (connectdata *)(pCVar2->state).tempwrite[0].len;\n      buf = (connectdata *)(pCVar2->state).tempwrite[0].type;\n      ptVar5->len = (size_t)in_a2;\n      ptVar5->type = (int)buf;\n      pCVar2 = (Curl_easy *)pcVar3;\n      ptVar5 = ptVar5 + 1;\n    } while (pcVar3 != (curl_llist_element *)(data->sockets + uVar13 * 3 + -0x14));\n    local_58 = pcVar11->data;\n    (data->state).tempcount = 0;\n    if (local_58 == data) {\n      local_58 = (Curl_easy *)0x0;\n    }\n    else {\n      pcVar11->data = data;\n    }\n    puVar14 = PTR_Curl_cfree_000a6144;\n    uVar12 = 0;\n    CVar10 = CURLE_OK;\n    do {\n      ptr = (connectdata *)unaff_s4->buf;\n      if (CVar10 == CURLE_OK) {\n        in_a3 = (connectdata *)unaff_s4->len;\n        buf = (connectdata *)unaff_s4->type;\n        in_a2 = ptr;\n        CVar10 = Curl_client_write(pcVar11,(int)buf,(char *)ptr,(size_t)in_a3);\n      }\n      uVar12 = uVar12 + 1;\n      unaff_s4 = unaff_s4 + 1;\n      (**(code **)puVar14)(ptr);\n    } while (uVar13 != uVar12);\n    if (local_58 != (Curl_easy *)0x0) {\n      pcVar11->data = local_58;\n    }\n    pcStack_88 = pcVar7;\n    if (CVar10 != CURLE_OK) goto LAB_0003d0fc;\n  }" if (parenthesized_expression "(((action & 1U) == 0) && (uVar13 = (data->state).tempcount, uVar13 != 0))" ( (binary_expression "((action & 1U) == 0) && (uVar13 = (data->state).tempcount, uVar13 != 0)" (parenthesized_expression "((action & 1U) == 0)" ( (binary_expression "(action & 1U) == 0" (parenthesized_expression "(action & 1U)" ( (binary_expression "action & 1U" identifier & number_literal) )) == number_literal) )) && (parenthesized_expression "(uVar13 = (data->state).tempcount, uVar13 != 0)" ( (comma_expression "uVar13 = (data->state).tempcount, uVar13 != 0" (assignment_expression "uVar13 = (data->state).tempcount" identifier = (field_expression "(data->state).tempcount" (parenthesized_expression "(data->state)" ( (field_expression "data->state" identifier -> field_identifier) )) . field_identifier)) , (binary_expression "uVar13 != 0" identifier != number_literal)) ))) )) (compound_statement "{\n    pcVar11 = data->conn;\n    unaff_s4 = writebuf;\n    pCVar2 = data;\n    ptVar5 = unaff_s4;\n    do {\n      in_a3 = (connectdata *)(pCVar2->state).tempwrite[0].buf;\n      pcVar3 = &pCVar2->connect_queue;\n      (pCVar2->state).tempwrite[0].buf = (char *)0x0;\n      ptVar5->buf = (char *)in_a3;\n      in_a2 = (connectdata *)(pCVar2->state).tempwrite[0].len;\n      buf = (connectdata *)(pCVar2->state).tempwrite[0].type;\n      ptVar5->len = (size_t)in_a2;\n      ptVar5->type = (int)buf;\n      pCVar2 = (Curl_easy *)pcVar3;\n      ptVar5 = ptVar5 + 1;\n    } while (pcVar3 != (curl_llist_element *)(data->sockets + uVar13 * 3 + -0x14));\n    local_58 = pcVar11->data;\n    (data->state).tempcount = 0;\n    if (local_58 == data) {\n      local_58 = (Curl_easy *)0x0;\n    }\n    else {\n      pcVar11->data = data;\n    }\n    puVar14 = PTR_Curl_cfree_000a6144;\n    uVar12 = 0;\n    CVar10 = CURLE_OK;\n    do {\n      ptr = (connectdata *)unaff_s4->buf;\n      if (CVar10 == CURLE_OK) {\n        in_a3 = (connectdata *)unaff_s4->len;\n        buf = (connectdata *)unaff_s4->type;\n        in_a2 = ptr;\n        CVar10 = Curl_client_write(pcVar11,(int)buf,(char *)ptr,(size_t)in_a3);\n      }\n      uVar12 = uVar12 + 1;\n      unaff_s4 = unaff_s4 + 1;\n      (**(code **)puVar14)(ptr);\n    } while (uVar13 != uVar12);\n    if (local_58 != (Curl_easy *)0x0) {\n      pcVar11->data = local_58;\n    }\n    pcStack_88 = pcVar7;\n    if (CVar10 != CURLE_OK) goto LAB_0003d0fc;\n  }" { (expression_statement "pcVar11 = data->conn;" (assignment_expression "pcVar11 = data->conn" identifier = (field_expression "data->conn" identifier -> field_identifier)) ;) (expression_statement "unaff_s4 = writebuf;" (assignment_expression "unaff_s4 = writebuf" identifier = identifier) ;) (expression_statement "pCVar2 = data;" (assignment_expression "pCVar2 = data" identifier = identifier) ;) (expression_statement "ptVar5 = unaff_s4;" (assignment_expression "ptVar5 = unaff_s4" identifier = identifier) ;) (do_statement "do {\n      in_a3 = (connectdata *)(pCVar2->state).tempwrite[0].buf;\n      pcVar3 = &pCVar2->connect_queue;\n      (pCVar2->state).tempwrite[0].buf = (char *)0x0;\n      ptVar5->buf = (char *)in_a3;\n      in_a2 = (connectdata *)(pCVar2->state).tempwrite[0].len;\n      buf = (connectdata *)(pCVar2->state).tempwrite[0].type;\n      ptVar5->len = (size_t)in_a2;\n      ptVar5->type = (int)buf;\n      pCVar2 = (Curl_easy *)pcVar3;\n      ptVar5 = ptVar5 + 1;\n    } while (pcVar3 != (curl_llist_element *)(data->sockets + uVar13 * 3 + -0x14));" do (compound_statement "{\n      in_a3 = (connectdata *)(pCVar2->state).tempwrite[0].buf;\n      pcVar3 = &pCVar2->connect_queue;\n      (pCVar2->state).tempwrite[0].buf = (char *)0x0;\n      ptVar5->buf = (char *)in_a3;\n      in_a2 = (connectdata *)(pCVar2->state).tempwrite[0].len;\n      buf = (connectdata *)(pCVar2->state).tempwrite[0].type;\n      ptVar5->len = (size_t)in_a2;\n      ptVar5->type = (int)buf;\n      pCVar2 = (Curl_easy *)pcVar3;\n      ptVar5 = ptVar5 + 1;\n    }" { (expression_statement "in_a3 = (connectdata *)(pCVar2->state).tempwrite[0].buf;" (assignment_expression "in_a3 = (connectdata *)(pCVar2->state).tempwrite[0].buf" identifier = (cast_expression "(connectdata *)(pCVar2->state).tempwrite[0].buf" ( (type_descriptor "connectdata *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "(pCVar2->state).tempwrite[0].buf" (subscript_expression "(pCVar2->state).tempwrite[0]" (field_expression "(pCVar2->state).tempwrite" (parenthesized_expression "(pCVar2->state)" ( (field_expression "pCVar2->state" identifier -> field_identifier) )) . field_identifier) [ number_literal ]) . field_identifier))) ;) (expression_statement "pcVar3 = &pCVar2->connect_queue;" (assignment_expression "pcVar3 = &pCVar2->connect_queue" identifier = (pointer_expression "&pCVar2->connect_queue" & (field_expression "pCVar2->connect_queue" identifier -> field_identifier))) ;) (expression_statement "(pCVar2->state).tempwrite[0].buf = (char *)0x0;" (assignment_expression "(pCVar2->state).tempwrite[0].buf = (char *)0x0" (field_expression "(pCVar2->state).tempwrite[0].buf" (subscript_expression "(pCVar2->state).tempwrite[0]" (field_expression "(pCVar2->state).tempwrite" (parenthesized_expression "(pCVar2->state)" ( (field_expression "pCVar2->state" identifier -> field_identifier) )) . field_identifier) [ number_literal ]) . field_identifier) = (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "ptVar5->buf = (char *)in_a3;" (assignment_expression "ptVar5->buf = (char *)in_a3" (field_expression "ptVar5->buf" identifier -> field_identifier) = (cast_expression "(char *)in_a3" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier)) ;) (expression_statement "in_a2 = (connectdata *)(pCVar2->state).tempwrite[0].len;" (assignment_expression "in_a2 = (connectdata *)(pCVar2->state).tempwrite[0].len" identifier = (cast_expression "(connectdata *)(pCVar2->state).tempwrite[0].len" ( (type_descriptor "connectdata *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "(pCVar2->state).tempwrite[0].len" (subscript_expression "(pCVar2->state).tempwrite[0]" (field_expression "(pCVar2->state).tempwrite" (parenthesized_expression "(pCVar2->state)" ( (field_expression "pCVar2->state" identifier -> field_identifier) )) . field_identifier) [ number_literal ]) . field_identifier))) ;) (expression_statement "buf = (connectdata *)(pCVar2->state).tempwrite[0].type;" (assignment_expression "buf = (connectdata *)(pCVar2->state).tempwrite[0].type" identifier = (cast_expression "(connectdata *)(pCVar2->state).tempwrite[0].type" ( (type_descriptor "connectdata *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "(pCVar2->state).tempwrite[0].type" (subscript_expression "(pCVar2->state).tempwrite[0]" (field_expression "(pCVar2->state).tempwrite" (parenthesized_expression "(pCVar2->state)" ( (field_expression "pCVar2->state" identifier -> field_identifier) )) . field_identifier) [ number_literal ]) . field_identifier))) ;) (expression_statement "ptVar5->len = (size_t)in_a2;" (assignment_expression "ptVar5->len = (size_t)in_a2" (field_expression "ptVar5->len" identifier -> field_identifier) = (cast_expression "(size_t)in_a2" ( (type_descriptor "size_t" primitive_type) ) identifier)) ;) (expression_statement "ptVar5->type = (int)buf;" (assignment_expression "ptVar5->type = (int)buf" (field_expression "ptVar5->type" identifier -> field_identifier) = (cast_expression "(int)buf" ( (type_descriptor "int" primitive_type) ) identifier)) ;) (expression_statement "pCVar2 = (Curl_easy *)pcVar3;" (assignment_expression "pCVar2 = (Curl_easy *)pcVar3" identifier = (cast_expression "(Curl_easy *)pcVar3" ( (type_descriptor "Curl_easy *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;) (expression_statement "ptVar5 = ptVar5 + 1;" (assignment_expression "ptVar5 = ptVar5 + 1" identifier = (binary_expression "ptVar5 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(pcVar3 != (curl_llist_element *)(data->sockets + uVar13 * 3 + -0x14))" ( (binary_expression "pcVar3 != (curl_llist_element *)(data->sockets + uVar13 * 3 + -0x14)" identifier != (cast_expression "(curl_llist_element *)(data->sockets + uVar13 * 3 + -0x14)" ( (type_descriptor "curl_llist_element *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(data->sockets + uVar13 * 3 + -0x14)" ( (binary_expression "data->sockets + uVar13 * 3 + -0x14" (binary_expression "data->sockets + uVar13 * 3" (field_expression "data->sockets" identifier -> field_identifier) + (binary_expression "uVar13 * 3" identifier * number_literal)) + number_literal) )))) )) ;) (expression_statement "local_58 = pcVar11->data;" (assignment_expression "local_58 = pcVar11->data" identifier = (field_expression "pcVar11->data" identifier -> field_identifier)) ;) (expression_statement "(data->state).tempcount = 0;" (assignment_expression "(data->state).tempcount = 0" (field_expression "(data->state).tempcount" (parenthesized_expression "(data->state)" ( (field_expression "data->state" identifier -> field_identifier) )) . field_identifier) = number_literal) ;) (if_statement "if (local_58 == data) {\n      local_58 = (Curl_easy *)0x0;\n    }\n    else {\n      pcVar11->data = data;\n    }" if (parenthesized_expression "(local_58 == data)" ( (binary_expression "local_58 == data" identifier == identifier) )) (compound_statement "{\n      local_58 = (Curl_easy *)0x0;\n    }" { (expression_statement "local_58 = (Curl_easy *)0x0;" (assignment_expression "local_58 = (Curl_easy *)0x0" identifier = (cast_expression "(Curl_easy *)0x0" ( (type_descriptor "Curl_easy *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) }) (else_clause "else {\n      pcVar11->data = data;\n    }" else (compound_statement "{\n      pcVar11->data = data;\n    }" { (expression_statement "pcVar11->data = data;" (assignment_expression "pcVar11->data = data" (field_expression "pcVar11->data" identifier -> field_identifier) = identifier) ;) }))) (expression_statement "puVar14 = PTR_Curl_cfree_000a6144;" (assignment_expression "puVar14 = PTR_Curl_cfree_000a6144" identifier = identifier) ;) (expression_statement "uVar12 = 0;" (assignment_expression "uVar12 = 0" identifier = number_literal) ;) (expression_statement "CVar10 = CURLE_OK;" (assignment_expression "CVar10 = CURLE_OK" identifier = identifier) ;) (do_statement "do {\n      ptr = (connectdata *)unaff_s4->buf;\n      if (CVar10 == CURLE_OK) {\n        in_a3 = (connectdata *)unaff_s4->len;\n        buf = (connectdata *)unaff_s4->type;\n        in_a2 = ptr;\n        CVar10 = Curl_client_write(pcVar11,(int)buf,(char *)ptr,(size_t)in_a3);\n      }\n      uVar12 = uVar12 + 1;\n      unaff_s4 = unaff_s4 + 1;\n      (**(code **)puVar14)(ptr);\n    } while (uVar13 != uVar12);" do (compound_statement "{\n      ptr = (connectdata *)unaff_s4->buf;\n      if (CVar10 == CURLE_OK) {\n        in_a3 = (connectdata *)unaff_s4->len;\n        buf = (connectdata *)unaff_s4->type;\n        in_a2 = ptr;\n        CVar10 = Curl_client_write(pcVar11,(int)buf,(char *)ptr,(size_t)in_a3);\n      }\n      uVar12 = uVar12 + 1;\n      unaff_s4 = unaff_s4 + 1;\n      (**(code **)puVar14)(ptr);\n    }" { (expression_statement "ptr = (connectdata *)unaff_s4->buf;" (assignment_expression "ptr = (connectdata *)unaff_s4->buf" identifier = (cast_expression "(connectdata *)unaff_s4->buf" ( (type_descriptor "connectdata *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "unaff_s4->buf" identifier -> field_identifier))) ;) (if_statement "if (CVar10 == CURLE_OK) {\n        in_a3 = (connectdata *)unaff_s4->len;\n        buf = (connectdata *)unaff_s4->type;\n        in_a2 = ptr;\n        CVar10 = Curl_client_write(pcVar11,(int)buf,(char *)ptr,(size_t)in_a3);\n      }" if (parenthesized_expression "(CVar10 == CURLE_OK)" ( (binary_expression "CVar10 == CURLE_OK" identifier == identifier) )) (compound_statement "{\n        in_a3 = (connectdata *)unaff_s4->len;\n        buf = (connectdata *)unaff_s4->type;\n        in_a2 = ptr;\n        CVar10 = Curl_client_write(pcVar11,(int)buf,(char *)ptr,(size_t)in_a3);\n      }" { (expression_statement "in_a3 = (connectdata *)unaff_s4->len;" (assignment_expression "in_a3 = (connectdata *)unaff_s4->len" identifier = (cast_expression "(connectdata *)unaff_s4->len" ( (type_descriptor "connectdata *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "unaff_s4->len" identifier -> field_identifier))) ;) (expression_statement "buf = (connectdata *)unaff_s4->type;" (assignment_expression "buf = (connectdata *)unaff_s4->type" identifier = (cast_expression "(connectdata *)unaff_s4->type" ( (type_descriptor "connectdata *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "unaff_s4->type" identifier -> field_identifier))) ;) (expression_statement "in_a2 = ptr;" (assignment_expression "in_a2 = ptr" identifier = identifier) ;) (expression_statement "CVar10 = Curl_client_write(pcVar11,(int)buf,(char *)ptr,(size_t)in_a3);" (assignment_expression "CVar10 = Curl_client_write(pcVar11,(int)buf,(char *)ptr,(size_t)in_a3)" identifier = (call_expression "Curl_client_write(pcVar11,(int)buf,(char *)ptr,(size_t)in_a3)" identifier (argument_list "(pcVar11,(int)buf,(char *)ptr,(size_t)in_a3)" ( identifier , (cast_expression "(int)buf" ( (type_descriptor "int" primitive_type) ) identifier) , (cast_expression "(char *)ptr" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) , (cast_expression "(size_t)in_a3" ( (type_descriptor "size_t" primitive_type) ) identifier) )))) ;) })) (expression_statement "uVar12 = uVar12 + 1;" (assignment_expression "uVar12 = uVar12 + 1" identifier = (binary_expression "uVar12 + 1" identifier + number_literal)) ;) (expression_statement "unaff_s4 = unaff_s4 + 1;" (assignment_expression "unaff_s4 = unaff_s4 + 1" identifier = (binary_expression "unaff_s4 + 1" identifier + number_literal)) ;) (expression_statement "(**(code **)puVar14)(ptr);" (call_expression "(**(code **)puVar14)(ptr)" (parenthesized_expression "(**(code **)puVar14)" ( (pointer_expression "**(code **)puVar14" * (pointer_expression "*(code **)puVar14" * (cast_expression "(code **)puVar14" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier))) )) (argument_list "(ptr)" ( identifier ))) ;) }) while (parenthesized_expression "(uVar13 != uVar12)" ( (binary_expression "uVar13 != uVar12" identifier != identifier) )) ;) (if_statement "if (local_58 != (Curl_easy *)0x0) {\n      pcVar11->data = local_58;\n    }" if (parenthesized_expression "(local_58 != (Curl_easy *)0x0)" ( (binary_expression "local_58 != (Curl_easy *)0x0" identifier != (cast_expression "(Curl_easy *)0x0" ( (type_descriptor "Curl_easy *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n      pcVar11->data = local_58;\n    }" { (expression_statement "pcVar11->data = local_58;" (assignment_expression "pcVar11->data = local_58" (field_expression "pcVar11->data" identifier -> field_identifier) = identifier) ;) })) (expression_statement "pcStack_88 = pcVar7;" (assignment_expression "pcStack_88 = pcVar7" identifier = identifier) ;) (if_statement "if (CVar10 != CURLE_OK) goto LAB_0003d0fc;" if (parenthesized_expression "(CVar10 != CURLE_OK)" ( (binary_expression "CVar10 != CURLE_OK" identifier != identifier) )) (goto_statement "goto LAB_0003d0fc;" goto statement_identifier ;)) })) (if_statement "if (pcVar6 != (connectdata *)0x30) {\n    in_a2 = (connectdata *)&DAT_00000006;\n    buf = (connectdata *)0x0;\n    Curl_expire(data,0,EXPIRE_RUN_NOW);\n  }" if (parenthesized_expression "(pcVar6 != (connectdata *)0x30)" ( (binary_expression "pcVar6 != (connectdata *)0x30" identifier != (cast_expression "(connectdata *)0x30" ( (type_descriptor "connectdata *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    in_a2 = (connectdata *)&DAT_00000006;\n    buf = (connectdata *)0x0;\n    Curl_expire(data,0,EXPIRE_RUN_NOW);\n  }" { (expression_statement "in_a2 = (connectdata *)&DAT_00000006;" (assignment_expression "in_a2 = (connectdata *)&DAT_00000006" identifier = (cast_expression "(connectdata *)&DAT_00000006" ( (type_descriptor "connectdata *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&DAT_00000006" & identifier))) ;) (expression_statement "buf = (connectdata *)0x0;" (assignment_expression "buf = (connectdata *)0x0" identifier = (cast_expression "(connectdata *)0x0" ( (type_descriptor "connectdata *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "Curl_expire(data,0,EXPIRE_RUN_NOW);" (call_expression "Curl_expire(data,0,EXPIRE_RUN_NOW)" identifier (argument_list "(data,0,EXPIRE_RUN_NOW)" ( identifier , number_literal , identifier ))) ;) })) (expression_statement "CVar10 = CURLE_OK;" (assignment_expression "CVar10 = CURLE_OK" identifier = identifier) ;) (expression_statement "Curl_updatesocket(data);" (call_expression "Curl_updatesocket(data)" identifier (argument_list "(data)" ( identifier ))) ;) (expression_statement "pcStack_88 = pcVar6;" (assignment_expression "pcStack_88 = pcVar6" identifier = identifier) ;) (labeled_statement "LAB_0003d0fc:\n  if (easy == *(Curl_easy **)puVar1) {\n    return CVar10;\n  }" statement_identifier : (if_statement "if (easy == *(Curl_easy **)puVar1) {\n    return CVar10;\n  }" if (parenthesized_expression "(easy == *(Curl_easy **)puVar1)" ( (binary_expression "easy == *(Curl_easy **)puVar1" identifier == (pointer_expression "*(Curl_easy **)puVar1" * (cast_expression "(Curl_easy **)puVar1" ( (type_descriptor "Curl_easy **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier))) )) (compound_statement "{\n    return CVar10;\n  }" { (return_statement "return CVar10;" return identifier ;) }))) (expression_statement "pcVar15 = curl_easy_recv;" (assignment_expression "pcVar15 = curl_easy_recv" identifier = identifier) ;) (expression_statement "puVar14 = PTR___stack_chk_fail_000a6c54;" (assignment_expression "puVar14 = PTR___stack_chk_fail_000a6c54" identifier = identifier) ;) (expression_statement "(*(code *)PTR___stack_chk_fail_000a6c54)();" (call_expression "(*(code *)PTR___stack_chk_fail_000a6c54)()" (parenthesized_expression "(*(code *)PTR___stack_chk_fail_000a6c54)" ( (pointer_expression "*(code *)PTR___stack_chk_fail_000a6c54" * (cast_expression "(code *)PTR___stack_chk_fail_000a6c54" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "()" ( ))) ;) (expression_statement "piVar8 = *(int **)(puVar14 + 0x69e50);" (assignment_expression "piVar8 = *(int **)(puVar14 + 0x69e50)" identifier = (pointer_expression "*(int **)(puVar14 + 0x69e50)" * (cast_expression "(int **)(puVar14 + 0x69e50)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar14 + 0x69e50)" ( (binary_expression "puVar14 + 0x69e50" identifier + number_literal) ))))) ;) (expression_statement "puStack_84 = puVar1;" (assignment_expression "puStack_84 = puVar1" identifier = identifier) ;) (expression_statement "pCStack_8c = (Curl_easy *)*piVar8;" (assignment_expression "pCStack_8c = (Curl_easy *)*piVar8" identifier = (cast_expression "(Curl_easy *)*piVar8" ( (type_descriptor "Curl_easy *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "*piVar8" * identifier))) ;) (expression_statement "pcVar6 = buf;" (assignment_expression "pcVar6 = buf" identifier = identifier) ;) (expression_statement "pcVar7 = in_a2;" (assignment_expression "pcVar7 = in_a2" identifier = identifier) ;) (expression_statement "pcVar11 = in_a3;" (assignment_expression "pcVar11 = in_a3" identifier = identifier) ;) (expression_statement "pCStack_80 = data;" (assignment_expression "pCStack_80 = data" identifier = identifier) ;) (expression_statement "CStack_7c = CVar10;" (assignment_expression "CStack_7c = CVar10" identifier = identifier) ;) (expression_statement "ptStack_78 = unaff_s4;" (assignment_expression "ptStack_78 = unaff_s4" identifier = identifier) ;) (expression_statement "pcStack_74 = pcVar15;" (assignment_expression "pcStack_74 = pcVar15" identifier = identifier) ;) (expression_statement "_Var4 = Curl_is_in_callback(easy);" (assignment_expression "_Var4 = Curl_is_in_callback(easy)" identifier = (call_expression "Curl_is_in_callback(easy)" identifier (argument_list "(easy)" ( identifier )))) ;) (if_statement "if (CONCAT31(extraout_var,_Var4) == 0) {\n    pcVar7 = (connectdata *)&pcStack_90;\n    pcVar6 = (connectdata *)&pcStack_98;\n    CVar10 = easy_connection(easy,(curl_socket_t *)pcVar6,(connectdata **)pcVar7);\n    if (CVar10 == CURLE_OK) {\n      in_a3->data = (Curl_easy *)0x0;\n      pcVar7 = buf;\n      pcVar11 = in_a2;\n      CVar10 = Curl_read(pcStack_90,(curl_socket_t)pcStack_98,(char *)buf,(size_t)in_a2,\n                         (ssize_t *)&pCStack_94);\n      pcVar6 = pcStack_98;\n      if (CVar10 == CURLE_OK) {\n        in_a3->data = pCStack_94;\n      }\n    }\n  }\n  else {\n    CVar10 = CURLE_RECURSIVE_API_CALL;\n  }" if (parenthesized_expression "(CONCAT31(extraout_var,_Var4) == 0)" ( (binary_expression "CONCAT31(extraout_var,_Var4) == 0" (call_expression "CONCAT31(extraout_var,_Var4)" identifier (argument_list "(extraout_var,_Var4)" ( identifier , identifier ))) == number_literal) )) (compound_statement "{\n    pcVar7 = (connectdata *)&pcStack_90;\n    pcVar6 = (connectdata *)&pcStack_98;\n    CVar10 = easy_connection(easy,(curl_socket_t *)pcVar6,(connectdata **)pcVar7);\n    if (CVar10 == CURLE_OK) {\n      in_a3->data = (Curl_easy *)0x0;\n      pcVar7 = buf;\n      pcVar11 = in_a2;\n      CVar10 = Curl_read(pcStack_90,(curl_socket_t)pcStack_98,(char *)buf,(size_t)in_a2,\n                         (ssize_t *)&pCStack_94);\n      pcVar6 = pcStack_98;\n      if (CVar10 == CURLE_OK) {\n        in_a3->data = pCStack_94;\n      }\n    }\n  }" { (expression_statement "pcVar7 = (connectdata *)&pcStack_90;" (assignment_expression "pcVar7 = (connectdata *)&pcStack_90" identifier = (cast_expression "(connectdata *)&pcStack_90" ( (type_descriptor "connectdata *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pcStack_90" & identifier))) ;) (expression_statement "pcVar6 = (connectdata *)&pcStack_98;" (assignment_expression "pcVar6 = (connectdata *)&pcStack_98" identifier = (cast_expression "(connectdata *)&pcStack_98" ( (type_descriptor "connectdata *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pcStack_98" & identifier))) ;) (expression_statement "CVar10 = easy_connection(easy,(curl_socket_t *)pcVar6,(connectdata **)pcVar7);" (assignment_expression "CVar10 = easy_connection(easy,(curl_socket_t *)pcVar6,(connectdata **)pcVar7)" identifier = (call_expression "easy_connection(easy,(curl_socket_t *)pcVar6,(connectdata **)pcVar7)" identifier (argument_list "(easy,(curl_socket_t *)pcVar6,(connectdata **)pcVar7)" ( identifier , (cast_expression "(curl_socket_t *)pcVar6" ( (type_descriptor "curl_socket_t *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) , (cast_expression "(connectdata **)pcVar7" ( (type_descriptor "connectdata **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier) )))) ;) (if_statement "if (CVar10 == CURLE_OK) {\n      in_a3->data = (Curl_easy *)0x0;\n      pcVar7 = buf;\n      pcVar11 = in_a2;\n      CVar10 = Curl_read(pcStack_90,(curl_socket_t)pcStack_98,(char *)buf,(size_t)in_a2,\n                         (ssize_t *)&pCStack_94);\n      pcVar6 = pcStack_98;\n      if (CVar10 == CURLE_OK) {\n        in_a3->data = pCStack_94;\n      }\n    }" if (parenthesized_expression "(CVar10 == CURLE_OK)" ( (binary_expression "CVar10 == CURLE_OK" identifier == identifier) )) (compound_statement "{\n      in_a3->data = (Curl_easy *)0x0;\n      pcVar7 = buf;\n      pcVar11 = in_a2;\n      CVar10 = Curl_read(pcStack_90,(curl_socket_t)pcStack_98,(char *)buf,(size_t)in_a2,\n                         (ssize_t *)&pCStack_94);\n      pcVar6 = pcStack_98;\n      if (CVar10 == CURLE_OK) {\n        in_a3->data = pCStack_94;\n      }\n    }" { (expression_statement "in_a3->data = (Curl_easy *)0x0;" (assignment_expression "in_a3->data = (Curl_easy *)0x0" (field_expression "in_a3->data" identifier -> field_identifier) = (cast_expression "(Curl_easy *)0x0" ( (type_descriptor "Curl_easy *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "pcVar7 = buf;" (assignment_expression "pcVar7 = buf" identifier = identifier) ;) (expression_statement "pcVar11 = in_a2;" (assignment_expression "pcVar11 = in_a2" identifier = identifier) ;) (expression_statement "CVar10 = Curl_read(pcStack_90,(curl_socket_t)pcStack_98,(char *)buf,(size_t)in_a2,\n                         (ssize_t *)&pCStack_94);" (assignment_expression "CVar10 = Curl_read(pcStack_90,(curl_socket_t)pcStack_98,(char *)buf,(size_t)in_a2,\n                         (ssize_t *)&pCStack_94)" identifier = (call_expression "Curl_read(pcStack_90,(curl_socket_t)pcStack_98,(char *)buf,(size_t)in_a2,\n                         (ssize_t *)&pCStack_94)" identifier (argument_list "(pcStack_90,(curl_socket_t)pcStack_98,(char *)buf,(size_t)in_a2,\n                         (ssize_t *)&pCStack_94)" ( identifier , (cast_expression "(curl_socket_t)pcStack_98" ( (type_descriptor "curl_socket_t" type_identifier) ) identifier) , (cast_expression "(char *)buf" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) , (cast_expression "(size_t)in_a2" ( (type_descriptor "size_t" primitive_type) ) identifier) , (cast_expression "(ssize_t *)&pCStack_94" ( (type_descriptor "ssize_t *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pCStack_94" & identifier)) )))) ;) (expression_statement "pcVar6 = pcStack_98;" (assignment_expression "pcVar6 = pcStack_98" identifier = identifier) ;) (if_statement "if (CVar10 == CURLE_OK) {\n        in_a3->data = pCStack_94;\n      }" if (parenthesized_expression "(CVar10 == CURLE_OK)" ( (binary_expression "CVar10 == CURLE_OK" identifier == identifier) )) (compound_statement "{\n        in_a3->data = pCStack_94;\n      }" { (expression_statement "in_a3->data = pCStack_94;" (assignment_expression "in_a3->data = pCStack_94" (field_expression "in_a3->data" identifier -> field_identifier) = identifier) ;) })) })) }) (else_clause "else {\n    CVar10 = CURLE_RECURSIVE_API_CALL;\n  }" else (compound_statement "{\n    CVar10 = CURLE_RECURSIVE_API_CALL;\n  }" { (expression_statement "CVar10 = CURLE_RECURSIVE_API_CALL;" (assignment_expression "CVar10 = CURLE_RECURSIVE_API_CALL" identifier = identifier) ;) }))) (if_statement "if (pCStack_8c == (Curl_easy *)*piVar8) {\n    return CVar10;\n  }" if (parenthesized_expression "(pCStack_8c == (Curl_easy *)*piVar8)" ( (binary_expression "pCStack_8c == (Curl_easy *)*piVar8" identifier == (cast_expression "(Curl_easy *)*piVar8" ( (type_descriptor "Curl_easy *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "*piVar8" * identifier))) )) (compound_statement "{\n    return CVar10;\n  }" { (return_statement "return CVar10;" return identifier ;) })) (expression_statement "pcVar15 = *(code **)(puVar14 + 0x69ac4);" (assignment_expression "pcVar15 = *(code **)(puVar14 + 0x69ac4)" identifier = (pointer_expression "*(code **)(puVar14 + 0x69ac4)" * (cast_expression "(code **)(puVar14 + 0x69ac4)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar14 + 0x69ac4)" ( (binary_expression "puVar14 + 0x69ac4" identifier + number_literal) ))))) ;) (expression_statement "pcVar16 = curl_easy_send;" (assignment_expression "pcVar16 = curl_easy_send" identifier = identifier) ;) (expression_statement "pCVar2 = pCStack_8c;" (assignment_expression "pCVar2 = pCStack_8c" identifier = identifier) ;) (expression_statement "(*pcVar15)();" (call_expression "(*pcVar15)()" (parenthesized_expression "(*pcVar15)" ( (pointer_expression "*pcVar15" * identifier) )) (argument_list "()" ( ))) ;) (expression_statement "piVar9 = *(int **)(pcVar15 + 0x69d5c);" (assignment_expression "piVar9 = *(int **)(pcVar15 + 0x69d5c)" identifier = (pointer_expression "*(int **)(pcVar15 + 0x69d5c)" * (cast_expression "(int **)(pcVar15 + 0x69d5c)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar15 + 0x69d5c)" ( (binary_expression "pcVar15 + 0x69d5c" identifier + number_literal) ))))) ;) (expression_statement "pcStack_d8 = (connectdata *)0x0;" (assignment_expression "pcStack_d8 = (connectdata *)0x0" identifier = (cast_expression "(connectdata *)0x0" ( (type_descriptor "connectdata *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "pvStack_d4 = (void *)*piVar9;" (assignment_expression "pvStack_d4 = (void *)*piVar9" identifier = (cast_expression "(void *)*piVar9" ( (type_descriptor "void *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "*piVar9" * identifier))) ;) (expression_statement "piStack_d0 = piVar8;" (assignment_expression "piStack_d0 = piVar8" identifier = identifier) ;) (expression_statement "pcStack_cc = in_a3;" (assignment_expression "pcStack_cc = in_a3" identifier = identifier) ;) (expression_statement "pcStack_c8 = buf;" (assignment_expression "pcStack_c8 = buf" identifier = identifier) ;) (expression_statement "pcStack_c4 = in_a2;" (assignment_expression "pcStack_c4 = in_a2" identifier = identifier) ;) (expression_statement "pCStack_c0 = easy;" (assignment_expression "pCStack_c0 = easy" identifier = identifier) ;) (expression_statement "pcStack_bc = pcVar16;" (assignment_expression "pcStack_bc = pcVar16" identifier = identifier) ;) (expression_statement "_Var4 = Curl_is_in_callback(pCVar2);" (assignment_expression "_Var4 = Curl_is_in_callback(pCVar2)" identifier = (call_expression "Curl_is_in_callback(pCVar2)" identifier (argument_list "(pCVar2)" ( identifier )))) ;) (if_statement "if (CONCAT31(extraout_var_00,_Var4) == 0) {\n    CVar10 = easy_connection(pCVar2,&cStack_e0,&pcStack_d8);\n    if (CVar10 == CURLE_OK) {\n      pcVar11->data = (Curl_easy *)0x0;\n      CVar10 = Curl_write(pcStack_d8,cStack_e0,pcVar6,(size_t)pcVar7,(ssize_t *)&pCStack_dc);\n      if (pCStack_dc == (Curl_easy *)&DAT_ffffffff) {\n        CVar10 = CURLE_SEND_ERROR;\n      }\n      else if (CVar10 == CURLE_OK && pCStack_dc == (Curl_easy *)0x0) {\n        CVar10 = CURLE_AGAIN;\n      }\n      else {\n        pcVar11->data = pCStack_dc;\n      }\n    }\n  }\n  else {\n    CVar10 = CURLE_RECURSIVE_API_CALL;\n  }" if (parenthesized_expression "(CONCAT31(extraout_var_00,_Var4) == 0)" ( (binary_expression "CONCAT31(extraout_var_00,_Var4) == 0" (call_expression "CONCAT31(extraout_var_00,_Var4)" identifier (argument_list "(extraout_var_00,_Var4)" ( identifier , identifier ))) == number_literal) )) (compound_statement "{\n    CVar10 = easy_connection(pCVar2,&cStack_e0,&pcStack_d8);\n    if (CVar10 == CURLE_OK) {\n      pcVar11->data = (Curl_easy *)0x0;\n      CVar10 = Curl_write(pcStack_d8,cStack_e0,pcVar6,(size_t)pcVar7,(ssize_t *)&pCStack_dc);\n      if (pCStack_dc == (Curl_easy *)&DAT_ffffffff) {\n        CVar10 = CURLE_SEND_ERROR;\n      }\n      else if (CVar10 == CURLE_OK && pCStack_dc == (Curl_easy *)0x0) {\n        CVar10 = CURLE_AGAIN;\n      }\n      else {\n        pcVar11->data = pCStack_dc;\n      }\n    }\n  }" { (expression_statement "CVar10 = easy_connection(pCVar2,&cStack_e0,&pcStack_d8);" (assignment_expression "CVar10 = easy_connection(pCVar2,&cStack_e0,&pcStack_d8)" identifier = (call_expression "easy_connection(pCVar2,&cStack_e0,&pcStack_d8)" identifier (argument_list "(pCVar2,&cStack_e0,&pcStack_d8)" ( identifier , (pointer_expression "&cStack_e0" & identifier) , (pointer_expression "&pcStack_d8" & identifier) )))) ;) (if_statement "if (CVar10 == CURLE_OK) {\n      pcVar11->data = (Curl_easy *)0x0;\n      CVar10 = Curl_write(pcStack_d8,cStack_e0,pcVar6,(size_t)pcVar7,(ssize_t *)&pCStack_dc);\n      if (pCStack_dc == (Curl_easy *)&DAT_ffffffff) {\n        CVar10 = CURLE_SEND_ERROR;\n      }\n      else if (CVar10 == CURLE_OK && pCStack_dc == (Curl_easy *)0x0) {\n        CVar10 = CURLE_AGAIN;\n      }\n      else {\n        pcVar11->data = pCStack_dc;\n      }\n    }" if (parenthesized_expression "(CVar10 == CURLE_OK)" ( (binary_expression "CVar10 == CURLE_OK" identifier == identifier) )) (compound_statement "{\n      pcVar11->data = (Curl_easy *)0x0;\n      CVar10 = Curl_write(pcStack_d8,cStack_e0,pcVar6,(size_t)pcVar7,(ssize_t *)&pCStack_dc);\n      if (pCStack_dc == (Curl_easy *)&DAT_ffffffff) {\n        CVar10 = CURLE_SEND_ERROR;\n      }\n      else if (CVar10 == CURLE_OK && pCStack_dc == (Curl_easy *)0x0) {\n        CVar10 = CURLE_AGAIN;\n      }\n      else {\n        pcVar11->data = pCStack_dc;\n      }\n    }" { (expression_statement "pcVar11->data = (Curl_easy *)0x0;" (assignment_expression "pcVar11->data = (Curl_easy *)0x0" (field_expression "pcVar11->data" identifier -> field_identifier) = (cast_expression "(Curl_easy *)0x0" ( (type_descriptor "Curl_easy *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "CVar10 = Curl_write(pcStack_d8,cStack_e0,pcVar6,(size_t)pcVar7,(ssize_t *)&pCStack_dc);" (assignment_expression "CVar10 = Curl_write(pcStack_d8,cStack_e0,pcVar6,(size_t)pcVar7,(ssize_t *)&pCStack_dc)" identifier = (call_expression "Curl_write(pcStack_d8,cStack_e0,pcVar6,(size_t)pcVar7,(ssize_t *)&pCStack_dc)" identifier (argument_list "(pcStack_d8,cStack_e0,pcVar6,(size_t)pcVar7,(ssize_t *)&pCStack_dc)" ( identifier , identifier , identifier , (cast_expression "(size_t)pcVar7" ( (type_descriptor "size_t" primitive_type) ) identifier) , (cast_expression "(ssize_t *)&pCStack_dc" ( (type_descriptor "ssize_t *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pCStack_dc" & identifier)) )))) ;) (if_statement "if (pCStack_dc == (Curl_easy *)&DAT_ffffffff) {\n        CVar10 = CURLE_SEND_ERROR;\n      }\n      else if (CVar10 == CURLE_OK && pCStack_dc == (Curl_easy *)0x0) {\n        CVar10 = CURLE_AGAIN;\n      }\n      else {\n        pcVar11->data = pCStack_dc;\n      }" if (parenthesized_expression "(pCStack_dc == (Curl_easy *)&DAT_ffffffff)" ( (binary_expression "pCStack_dc == (Curl_easy *)&DAT_ffffffff" identifier == (cast_expression "(Curl_easy *)&DAT_ffffffff" ( (type_descriptor "Curl_easy *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&DAT_ffffffff" & identifier))) )) (compound_statement "{\n        CVar10 = CURLE_SEND_ERROR;\n      }" { (expression_statement "CVar10 = CURLE_SEND_ERROR;" (assignment_expression "CVar10 = CURLE_SEND_ERROR" identifier = identifier) ;) }) (else_clause "else if (CVar10 == CURLE_OK && pCStack_dc == (Curl_easy *)0x0) {\n        CVar10 = CURLE_AGAIN;\n      }\n      else {\n        pcVar11->data = pCStack_dc;\n      }" else (if_statement "if (CVar10 == CURLE_OK && pCStack_dc == (Curl_easy *)0x0) {\n        CVar10 = CURLE_AGAIN;\n      }\n      else {\n        pcVar11->data = pCStack_dc;\n      }" if (parenthesized_expression "(CVar10 == CURLE_OK && pCStack_dc == (Curl_easy *)0x0)" ( (binary_expression "CVar10 == CURLE_OK && pCStack_dc == (Curl_easy *)0x0" (binary_expression "CVar10 == CURLE_OK" identifier == identifier) && (binary_expression "pCStack_dc == (Curl_easy *)0x0" identifier == (cast_expression "(Curl_easy *)0x0" ( (type_descriptor "Curl_easy *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal))) )) (compound_statement "{\n        CVar10 = CURLE_AGAIN;\n      }" { (expression_statement "CVar10 = CURLE_AGAIN;" (assignment_expression "CVar10 = CURLE_AGAIN" identifier = identifier) ;) }) (else_clause "else {\n        pcVar11->data = pCStack_dc;\n      }" else (compound_statement "{\n        pcVar11->data = pCStack_dc;\n      }" { (expression_statement "pcVar11->data = pCStack_dc;" (assignment_expression "pcVar11->data = pCStack_dc" (field_expression "pcVar11->data" identifier -> field_identifier) = identifier) ;) }))))) })) }) (else_clause "else {\n    CVar10 = CURLE_RECURSIVE_API_CALL;\n  }" else (compound_statement "{\n    CVar10 = CURLE_RECURSIVE_API_CALL;\n  }" { (expression_statement "CVar10 = CURLE_RECURSIVE_API_CALL;" (assignment_expression "CVar10 = CURLE_RECURSIVE_API_CALL" identifier = identifier) ;) }))) (if_statement "if (pvStack_d4 == (void *)*piVar9) {\n    return CVar10;\n  }" if (parenthesized_expression "(pvStack_d4 == (void *)*piVar9)" ( (binary_expression "pvStack_d4 == (void *)*piVar9" identifier == (cast_expression "(void *)*piVar9" ( (type_descriptor "void *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "*piVar9" * identifier))) )) (compound_statement "{\n    return CVar10;\n  }" { (return_statement "return CVar10;" return identifier ;) })) (expression_statement "data_00 = pvStack_d4;" (assignment_expression "data_00 = pvStack_d4" identifier = identifier) ;) (expression_statement "(**(code **)(pcVar15 + 0x699d0))();" (call_expression "(**(code **)(pcVar15 + 0x699d0))()" (parenthesized_expression "(**(code **)(pcVar15 + 0x699d0))" ( (pointer_expression "**(code **)(pcVar15 + 0x699d0)" * (pointer_expression "*(code **)(pcVar15 + 0x699d0)" * (cast_expression "(code **)(pcVar15 + 0x699d0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar15 + 0x699d0)" ( (binary_expression "pcVar15 + 0x699d0" identifier + number_literal) ))))) )) (argument_list "()" ( ))) ;) (if_statement "if ((data_00 != (void *)0x0) && (*(int *)((int)data_00 + 0x1030) == -0x3f212453)) {\n    if (*(int *)((int)data_00 + 0x88) != 0) {\n      CVar10 = Curl_upkeep((conncache *)(*(int *)((int)data_00 + 0x88) + 0x8c),data_00);\n      return CVar10;\n    }\n    return CURLE_OK;\n  }" if (parenthesized_expression "((data_00 != (void *)0x0) && (*(int *)((int)data_00 + 0x1030) == -0x3f212453))" ( (binary_expression "(data_00 != (void *)0x0) && (*(int *)((int)data_00 + 0x1030) == -0x3f212453)" (parenthesized_expression "(data_00 != (void *)0x0)" ( (binary_expression "data_00 != (void *)0x0" identifier != (cast_expression "(void *)0x0" ( (type_descriptor "void *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) && (parenthesized_expression "(*(int *)((int)data_00 + 0x1030) == -0x3f212453)" ( (binary_expression "*(int *)((int)data_00 + 0x1030) == -0x3f212453" (pointer_expression "*(int *)((int)data_00 + 0x1030)" * (cast_expression "(int *)((int)data_00 + 0x1030)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)data_00 + 0x1030)" ( (binary_expression "(int)data_00 + 0x1030" (cast_expression "(int)data_00" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) == number_literal) ))) )) (compound_statement "{\n    if (*(int *)((int)data_00 + 0x88) != 0) {\n      CVar10 = Curl_upkeep((conncache *)(*(int *)((int)data_00 + 0x88) + 0x8c),data_00);\n      return CVar10;\n    }\n    return CURLE_OK;\n  }" { (if_statement "if (*(int *)((int)data_00 + 0x88) != 0) {\n      CVar10 = Curl_upkeep((conncache *)(*(int *)((int)data_00 + 0x88) + 0x8c),data_00);\n      return CVar10;\n    }" if (parenthesized_expression "(*(int *)((int)data_00 + 0x88) != 0)" ( (binary_expression "*(int *)((int)data_00 + 0x88) != 0" (pointer_expression "*(int *)((int)data_00 + 0x88)" * (cast_expression "(int *)((int)data_00 + 0x88)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)data_00 + 0x88)" ( (binary_expression "(int)data_00 + 0x88" (cast_expression "(int)data_00" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) != number_literal) )) (compound_statement "{\n      CVar10 = Curl_upkeep((conncache *)(*(int *)((int)data_00 + 0x88) + 0x8c),data_00);\n      return CVar10;\n    }" { (expression_statement "CVar10 = Curl_upkeep((conncache *)(*(int *)((int)data_00 + 0x88) + 0x8c),data_00);" (assignment_expression "CVar10 = Curl_upkeep((conncache *)(*(int *)((int)data_00 + 0x88) + 0x8c),data_00)" identifier = (call_expression "Curl_upkeep((conncache *)(*(int *)((int)data_00 + 0x88) + 0x8c),data_00)" identifier (argument_list "((conncache *)(*(int *)((int)data_00 + 0x88) + 0x8c),data_00)" ( (cast_expression "(conncache *)(*(int *)((int)data_00 + 0x88) + 0x8c)" ( (type_descriptor "conncache *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)((int)data_00 + 0x88) + 0x8c)" ( (binary_expression "*(int *)((int)data_00 + 0x88) + 0x8c" (pointer_expression "*(int *)((int)data_00 + 0x88)" * (cast_expression "(int *)((int)data_00 + 0x88)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)data_00 + 0x88)" ( (binary_expression "(int)data_00 + 0x88" (cast_expression "(int)data_00" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )))) + number_literal) ))) , identifier )))) ;) (return_statement "return CVar10;" return identifier ;) })) (return_statement "return CURLE_OK;" return identifier ;) })) (return_statement "return CURLE_BAD_FUNCTION_ARGUMENT;" return identifier ;) })))
(translation_unit "int curl_easy_pause(int param_1,uint param_2,int ***param_3,int ***param_4)\n\n{\n  undefined *puVar1;\n  int iVar2;\n  undefined4 *puVar3;\n  int ***pppiVar4;\n  int ***pppiVar5;\n  int ***pppiVar6;\n  int ***pppiVar7;\n  int *piVar8;\n  int iVar9;\n  undefined4 *unaff_s4;\n  int *piVar10;\n  int iVar11;\n  undefined *puVar12;\n  code *pcVar13;\n  code *pcVar14;\n  undefined4 uStack_e0;\n  int *piStack_dc;\n  undefined4 uStack_d8;\n  int iStack_d4;\n  int *piStack_d0;\n  int **ppiStack_cc;\n  int **ppiStack_c8;\n  int **ppiStack_c4;\n  int iStack_c0;\n  code *pcStack_bc;\n  int *piStack_a8;\n  undefined *puStack_a0;\n  int **ppiStack_98;\n  int *piStack_94;\n  int *piStack_90;\n  int iStack_8c;\n  int **ppiStack_88;\n  undefined *puStack_84;\n  int iStack_80;\n  int iStack_7c;\n  undefined4 *puStack_78;\n  code *pcStack_74;\n  int local_58;\n  undefined4 local_50 [9];\n  int local_2c;\n  \n  puVar1 = PTR___stack_chk_guard_000a6fe0;\n  pppiVar5 = (int ***)((param_2 & 1) << 4 | (param_2 & 4) << 3);\n  pppiVar7 = (int ***)((uint)pppiVar5 | *(uint *)(param_1 + 0x138) & 0xffffffcf);\n  *(int ****)(param_1 + 0x138) = pppiVar7;\n  local_2c = *(int *)puVar1;\n  pppiVar6 = pppiVar5;\n  if (((param_2 & 1) == 0) && (iVar11 = *(int *)(param_1 + 0xcbc), iVar11 != 0)) {\n    piVar10 = *(int **)(param_1 + 8);\n    unaff_s4 = local_50;\n    iVar9 = param_1;\n    puVar3 = unaff_s4;\n    do {\n      param_4 = *(int ****)(iVar9 + 0xcc0);\n      iVar2 = iVar9 + 0xc;\n      *(undefined4 *)(iVar9 + 0xcc0) = 0;\n      *puVar3 = param_4;\n      param_3 = *(int ****)(iVar9 + 0xcc4);\n      pppiVar6 = *(int ****)(iVar9 + 0xcc8);\n      puVar3[1] = param_3;\n      puVar3[2] = pppiVar6;\n      iVar9 = iVar2;\n      puVar3 = puVar3 + 3;\n    } while (iVar2 != iVar11 * 0xc + param_1);\n    local_58 = *piVar10;\n    *(undefined4 *)(param_1 + 0xcbc) = 0;\n    if (local_58 == param_1) {\n      local_58 = 0;\n    }\n    else {\n      *piVar10 = param_1;\n    }\n    puVar12 = PTR_PTR_free_000a6144;\n    iVar2 = 0;\n    iVar9 = 0;\n    do {\n      pppiVar4 = (int ***)*unaff_s4;\n      if (iVar9 == 0) {\n        param_4 = (int ***)unaff_s4[1];\n        pppiVar6 = (int ***)unaff_s4[2];\n        param_3 = pppiVar4;\n        iVar9 = FUN_000266b0(piVar10);\n      }\n      iVar2 = iVar2 + 1;\n      unaff_s4 = unaff_s4 + 3;\n      (**(code **)puVar12)(pppiVar4);\n    } while (iVar11 != iVar2);\n    if (local_58 != 0) {\n      *piVar10 = local_58;\n    }\n    ppiStack_88 = (int **)pppiVar7;\n    if (iVar9 != 0) goto LAB_0003d0fc;\n  }\n  if (pppiVar5 != (int ***)0x30) {\n    param_3 = (int ***)0x6;\n    pppiVar6 = (int ***)0x0;\n    FUN_00044d9c(param_1);\n  }\n  iVar9 = 0;\n  FUN_000449a8(param_1);\n  ppiStack_88 = (int **)pppiVar5;\nLAB_0003d0fc:\n  if (local_2c == *(int *)puVar1) {\n    return iVar9;\n  }\n  pcVar13 = curl_easy_recv;\n  iVar11 = local_2c;\n  puVar12 = PTR___stack_chk_fail_000a6c54;\n  (*(code *)PTR___stack_chk_fail_000a6c54)();\n  puStack_a0 = puVar12 + 0x70f80;\n  piVar10 = *(int **)(puVar12 + 0x69e50);\n  puStack_84 = puVar1;\n  iStack_8c = *piVar10;\n  pppiVar5 = pppiVar6;\n  pppiVar7 = param_3;\n  pppiVar4 = param_4;\n  iStack_80 = param_1;\n  iStack_7c = iVar9;\n  puStack_78 = unaff_s4;\n  pcStack_74 = pcVar13;\n  iVar9 = FUN_00048420();\n  if (iVar9 == 0) {\n    pppiVar7 = (int ***)&piStack_90;\n    pppiVar5 = &ppiStack_98;\n    iVar9 = FUN_0003c4e4(iVar11,pppiVar5,pppiVar7);\n    if (iVar9 == 0) {\n      piStack_a8 = (int *)&piStack_94;\n      *param_4 = (int **)0x0;\n      pppiVar7 = pppiVar6;\n      pppiVar4 = param_3;\n      iVar9 = FUN_00025e14(piStack_90,ppiStack_98,pppiVar6);\n      pppiVar5 = (int ***)ppiStack_98;\n      if (iVar9 == 0) {\n        *param_4 = (int **)piStack_94;\n      }\n    }\n  }\n  else {\n    iVar9 = 0x5d;\n  }\n  if (iStack_8c == *piVar10) {\n    return iVar9;\n  }\n  pcVar13 = *(code **)(puStack_a0 + -0x74bc);\n  pcVar14 = curl_easy_send;\n  iVar9 = iStack_8c;\n  (*pcVar13)();\n  piVar8 = *(int **)(pcVar13 + 0x69d5c);\n  uStack_d8 = 0;\n  iStack_d4 = *piVar8;\n  piStack_d0 = piVar10;\n  ppiStack_cc = (int **)param_4;\n  ppiStack_c8 = (int **)pppiVar6;\n  ppiStack_c4 = (int **)param_3;\n  iStack_c0 = iVar11;\n  pcStack_bc = pcVar14;\n  iVar11 = FUN_00048420();\n  if (iVar11 == 0) {\n    iVar11 = FUN_0003c4e4(iVar9,&uStack_e0,&uStack_d8);\n    if (iVar11 == 0) {\n      *pppiVar4 = (int **)0x0;\n      iVar11 = FUN_00025cb8(uStack_d8,uStack_e0,pppiVar5,pppiVar7,&piStack_dc);\n      if ((int **)piStack_dc == (int **)0xffffffff) {\n        iVar11 = 0x37;\n      }\n      else if (iVar11 == 0 && (int **)piStack_dc == (int **)0x0) {\n        iVar11 = 0x51;\n      }\n      else {\n        *pppiVar4 = (int **)piStack_dc;\n      }\n    }\n  }\n  else {\n    iVar11 = 0x5d;\n  }\n  if (iStack_d4 == *piVar8) {\n    return iVar11;\n  }\n  iVar11 = iStack_d4;\n  (**(code **)(pcVar13 + 0x699d0))();\n  if ((iVar11 != 0) && (*(int *)(iVar11 + 0x1030) == -0x3f212453)) {\n    if (*(int *)(iVar11 + 0x88) != 0) {\n      iVar11 = FUN_00033390(*(int *)(iVar11 + 0x88) + 0x8c,iVar11);\n      return iVar11;\n    }\n    return 0;\n  }\n  return 0x2b;\n}\n\n" (function_definition "int curl_easy_pause(int param_1,uint param_2,int ***param_3,int ***param_4)\n\n{\n  undefined *puVar1;\n  int iVar2;\n  undefined4 *puVar3;\n  int ***pppiVar4;\n  int ***pppiVar5;\n  int ***pppiVar6;\n  int ***pppiVar7;\n  int *piVar8;\n  int iVar9;\n  undefined4 *unaff_s4;\n  int *piVar10;\n  int iVar11;\n  undefined *puVar12;\n  code *pcVar13;\n  code *pcVar14;\n  undefined4 uStack_e0;\n  int *piStack_dc;\n  undefined4 uStack_d8;\n  int iStack_d4;\n  int *piStack_d0;\n  int **ppiStack_cc;\n  int **ppiStack_c8;\n  int **ppiStack_c4;\n  int iStack_c0;\n  code *pcStack_bc;\n  int *piStack_a8;\n  undefined *puStack_a0;\n  int **ppiStack_98;\n  int *piStack_94;\n  int *piStack_90;\n  int iStack_8c;\n  int **ppiStack_88;\n  undefined *puStack_84;\n  int iStack_80;\n  int iStack_7c;\n  undefined4 *puStack_78;\n  code *pcStack_74;\n  int local_58;\n  undefined4 local_50 [9];\n  int local_2c;\n  \n  puVar1 = PTR___stack_chk_guard_000a6fe0;\n  pppiVar5 = (int ***)((param_2 & 1) << 4 | (param_2 & 4) << 3);\n  pppiVar7 = (int ***)((uint)pppiVar5 | *(uint *)(param_1 + 0x138) & 0xffffffcf);\n  *(int ****)(param_1 + 0x138) = pppiVar7;\n  local_2c = *(int *)puVar1;\n  pppiVar6 = pppiVar5;\n  if (((param_2 & 1) == 0) && (iVar11 = *(int *)(param_1 + 0xcbc), iVar11 != 0)) {\n    piVar10 = *(int **)(param_1 + 8);\n    unaff_s4 = local_50;\n    iVar9 = param_1;\n    puVar3 = unaff_s4;\n    do {\n      param_4 = *(int ****)(iVar9 + 0xcc0);\n      iVar2 = iVar9 + 0xc;\n      *(undefined4 *)(iVar9 + 0xcc0) = 0;\n      *puVar3 = param_4;\n      param_3 = *(int ****)(iVar9 + 0xcc4);\n      pppiVar6 = *(int ****)(iVar9 + 0xcc8);\n      puVar3[1] = param_3;\n      puVar3[2] = pppiVar6;\n      iVar9 = iVar2;\n      puVar3 = puVar3 + 3;\n    } while (iVar2 != iVar11 * 0xc + param_1);\n    local_58 = *piVar10;\n    *(undefined4 *)(param_1 + 0xcbc) = 0;\n    if (local_58 == param_1) {\n      local_58 = 0;\n    }\n    else {\n      *piVar10 = param_1;\n    }\n    puVar12 = PTR_PTR_free_000a6144;\n    iVar2 = 0;\n    iVar9 = 0;\n    do {\n      pppiVar4 = (int ***)*unaff_s4;\n      if (iVar9 == 0) {\n        param_4 = (int ***)unaff_s4[1];\n        pppiVar6 = (int ***)unaff_s4[2];\n        param_3 = pppiVar4;\n        iVar9 = FUN_000266b0(piVar10);\n      }\n      iVar2 = iVar2 + 1;\n      unaff_s4 = unaff_s4 + 3;\n      (**(code **)puVar12)(pppiVar4);\n    } while (iVar11 != iVar2);\n    if (local_58 != 0) {\n      *piVar10 = local_58;\n    }\n    ppiStack_88 = (int **)pppiVar7;\n    if (iVar9 != 0) goto LAB_0003d0fc;\n  }\n  if (pppiVar5 != (int ***)0x30) {\n    param_3 = (int ***)0x6;\n    pppiVar6 = (int ***)0x0;\n    FUN_00044d9c(param_1);\n  }\n  iVar9 = 0;\n  FUN_000449a8(param_1);\n  ppiStack_88 = (int **)pppiVar5;\nLAB_0003d0fc:\n  if (local_2c == *(int *)puVar1) {\n    return iVar9;\n  }\n  pcVar13 = curl_easy_recv;\n  iVar11 = local_2c;\n  puVar12 = PTR___stack_chk_fail_000a6c54;\n  (*(code *)PTR___stack_chk_fail_000a6c54)();\n  puStack_a0 = puVar12 + 0x70f80;\n  piVar10 = *(int **)(puVar12 + 0x69e50);\n  puStack_84 = puVar1;\n  iStack_8c = *piVar10;\n  pppiVar5 = pppiVar6;\n  pppiVar7 = param_3;\n  pppiVar4 = param_4;\n  iStack_80 = param_1;\n  iStack_7c = iVar9;\n  puStack_78 = unaff_s4;\n  pcStack_74 = pcVar13;\n  iVar9 = FUN_00048420();\n  if (iVar9 == 0) {\n    pppiVar7 = (int ***)&piStack_90;\n    pppiVar5 = &ppiStack_98;\n    iVar9 = FUN_0003c4e4(iVar11,pppiVar5,pppiVar7);\n    if (iVar9 == 0) {\n      piStack_a8 = (int *)&piStack_94;\n      *param_4 = (int **)0x0;\n      pppiVar7 = pppiVar6;\n      pppiVar4 = param_3;\n      iVar9 = FUN_00025e14(piStack_90,ppiStack_98,pppiVar6);\n      pppiVar5 = (int ***)ppiStack_98;\n      if (iVar9 == 0) {\n        *param_4 = (int **)piStack_94;\n      }\n    }\n  }\n  else {\n    iVar9 = 0x5d;\n  }\n  if (iStack_8c == *piVar10) {\n    return iVar9;\n  }\n  pcVar13 = *(code **)(puStack_a0 + -0x74bc);\n  pcVar14 = curl_easy_send;\n  iVar9 = iStack_8c;\n  (*pcVar13)();\n  piVar8 = *(int **)(pcVar13 + 0x69d5c);\n  uStack_d8 = 0;\n  iStack_d4 = *piVar8;\n  piStack_d0 = piVar10;\n  ppiStack_cc = (int **)param_4;\n  ppiStack_c8 = (int **)pppiVar6;\n  ppiStack_c4 = (int **)param_3;\n  iStack_c0 = iVar11;\n  pcStack_bc = pcVar14;\n  iVar11 = FUN_00048420();\n  if (iVar11 == 0) {\n    iVar11 = FUN_0003c4e4(iVar9,&uStack_e0,&uStack_d8);\n    if (iVar11 == 0) {\n      *pppiVar4 = (int **)0x0;\n      iVar11 = FUN_00025cb8(uStack_d8,uStack_e0,pppiVar5,pppiVar7,&piStack_dc);\n      if ((int **)piStack_dc == (int **)0xffffffff) {\n        iVar11 = 0x37;\n      }\n      else if (iVar11 == 0 && (int **)piStack_dc == (int **)0x0) {\n        iVar11 = 0x51;\n      }\n      else {\n        *pppiVar4 = (int **)piStack_dc;\n      }\n    }\n  }\n  else {\n    iVar11 = 0x5d;\n  }\n  if (iStack_d4 == *piVar8) {\n    return iVar11;\n  }\n  iVar11 = iStack_d4;\n  (**(code **)(pcVar13 + 0x699d0))();\n  if ((iVar11 != 0) && (*(int *)(iVar11 + 0x1030) == -0x3f212453)) {\n    if (*(int *)(iVar11 + 0x88) != 0) {\n      iVar11 = FUN_00033390(*(int *)(iVar11 + 0x88) + 0x8c,iVar11);\n      return iVar11;\n    }\n    return 0;\n  }\n  return 0x2b;\n}" primitive_type (function_declarator "curl_easy_pause(int param_1,uint param_2,int ***param_3,int ***param_4)" identifier (parameter_list "(int param_1,uint param_2,int ***param_3,int ***param_4)" ( (parameter_declaration "int param_1" primitive_type identifier) , (parameter_declaration "uint param_2" type_identifier identifier) , (parameter_declaration "int ***param_3" primitive_type (pointer_declarator "***param_3" * (pointer_declarator "**param_3" * (pointer_declarator "*param_3" * identifier)))) , (parameter_declaration "int ***param_4" primitive_type (pointer_declarator "***param_4" * (pointer_declarator "**param_4" * (pointer_declarator "*param_4" * identifier)))) ))) (compound_statement "{\n  undefined *puVar1;\n  int iVar2;\n  undefined4 *puVar3;\n  int ***pppiVar4;\n  int ***pppiVar5;\n  int ***pppiVar6;\n  int ***pppiVar7;\n  int *piVar8;\n  int iVar9;\n  undefined4 *unaff_s4;\n  int *piVar10;\n  int iVar11;\n  undefined *puVar12;\n  code *pcVar13;\n  code *pcVar14;\n  undefined4 uStack_e0;\n  int *piStack_dc;\n  undefined4 uStack_d8;\n  int iStack_d4;\n  int *piStack_d0;\n  int **ppiStack_cc;\n  int **ppiStack_c8;\n  int **ppiStack_c4;\n  int iStack_c0;\n  code *pcStack_bc;\n  int *piStack_a8;\n  undefined *puStack_a0;\n  int **ppiStack_98;\n  int *piStack_94;\n  int *piStack_90;\n  int iStack_8c;\n  int **ppiStack_88;\n  undefined *puStack_84;\n  int iStack_80;\n  int iStack_7c;\n  undefined4 *puStack_78;\n  code *pcStack_74;\n  int local_58;\n  undefined4 local_50 [9];\n  int local_2c;\n  \n  puVar1 = PTR___stack_chk_guard_000a6fe0;\n  pppiVar5 = (int ***)((param_2 & 1) << 4 | (param_2 & 4) << 3);\n  pppiVar7 = (int ***)((uint)pppiVar5 | *(uint *)(param_1 + 0x138) & 0xffffffcf);\n  *(int ****)(param_1 + 0x138) = pppiVar7;\n  local_2c = *(int *)puVar1;\n  pppiVar6 = pppiVar5;\n  if (((param_2 & 1) == 0) && (iVar11 = *(int *)(param_1 + 0xcbc), iVar11 != 0)) {\n    piVar10 = *(int **)(param_1 + 8);\n    unaff_s4 = local_50;\n    iVar9 = param_1;\n    puVar3 = unaff_s4;\n    do {\n      param_4 = *(int ****)(iVar9 + 0xcc0);\n      iVar2 = iVar9 + 0xc;\n      *(undefined4 *)(iVar9 + 0xcc0) = 0;\n      *puVar3 = param_4;\n      param_3 = *(int ****)(iVar9 + 0xcc4);\n      pppiVar6 = *(int ****)(iVar9 + 0xcc8);\n      puVar3[1] = param_3;\n      puVar3[2] = pppiVar6;\n      iVar9 = iVar2;\n      puVar3 = puVar3 + 3;\n    } while (iVar2 != iVar11 * 0xc + param_1);\n    local_58 = *piVar10;\n    *(undefined4 *)(param_1 + 0xcbc) = 0;\n    if (local_58 == param_1) {\n      local_58 = 0;\n    }\n    else {\n      *piVar10 = param_1;\n    }\n    puVar12 = PTR_PTR_free_000a6144;\n    iVar2 = 0;\n    iVar9 = 0;\n    do {\n      pppiVar4 = (int ***)*unaff_s4;\n      if (iVar9 == 0) {\n        param_4 = (int ***)unaff_s4[1];\n        pppiVar6 = (int ***)unaff_s4[2];\n        param_3 = pppiVar4;\n        iVar9 = FUN_000266b0(piVar10);\n      }\n      iVar2 = iVar2 + 1;\n      unaff_s4 = unaff_s4 + 3;\n      (**(code **)puVar12)(pppiVar4);\n    } while (iVar11 != iVar2);\n    if (local_58 != 0) {\n      *piVar10 = local_58;\n    }\n    ppiStack_88 = (int **)pppiVar7;\n    if (iVar9 != 0) goto LAB_0003d0fc;\n  }\n  if (pppiVar5 != (int ***)0x30) {\n    param_3 = (int ***)0x6;\n    pppiVar6 = (int ***)0x0;\n    FUN_00044d9c(param_1);\n  }\n  iVar9 = 0;\n  FUN_000449a8(param_1);\n  ppiStack_88 = (int **)pppiVar5;\nLAB_0003d0fc:\n  if (local_2c == *(int *)puVar1) {\n    return iVar9;\n  }\n  pcVar13 = curl_easy_recv;\n  iVar11 = local_2c;\n  puVar12 = PTR___stack_chk_fail_000a6c54;\n  (*(code *)PTR___stack_chk_fail_000a6c54)();\n  puStack_a0 = puVar12 + 0x70f80;\n  piVar10 = *(int **)(puVar12 + 0x69e50);\n  puStack_84 = puVar1;\n  iStack_8c = *piVar10;\n  pppiVar5 = pppiVar6;\n  pppiVar7 = param_3;\n  pppiVar4 = param_4;\n  iStack_80 = param_1;\n  iStack_7c = iVar9;\n  puStack_78 = unaff_s4;\n  pcStack_74 = pcVar13;\n  iVar9 = FUN_00048420();\n  if (iVar9 == 0) {\n    pppiVar7 = (int ***)&piStack_90;\n    pppiVar5 = &ppiStack_98;\n    iVar9 = FUN_0003c4e4(iVar11,pppiVar5,pppiVar7);\n    if (iVar9 == 0) {\n      piStack_a8 = (int *)&piStack_94;\n      *param_4 = (int **)0x0;\n      pppiVar7 = pppiVar6;\n      pppiVar4 = param_3;\n      iVar9 = FUN_00025e14(piStack_90,ppiStack_98,pppiVar6);\n      pppiVar5 = (int ***)ppiStack_98;\n      if (iVar9 == 0) {\n        *param_4 = (int **)piStack_94;\n      }\n    }\n  }\n  else {\n    iVar9 = 0x5d;\n  }\n  if (iStack_8c == *piVar10) {\n    return iVar9;\n  }\n  pcVar13 = *(code **)(puStack_a0 + -0x74bc);\n  pcVar14 = curl_easy_send;\n  iVar9 = iStack_8c;\n  (*pcVar13)();\n  piVar8 = *(int **)(pcVar13 + 0x69d5c);\n  uStack_d8 = 0;\n  iStack_d4 = *piVar8;\n  piStack_d0 = piVar10;\n  ppiStack_cc = (int **)param_4;\n  ppiStack_c8 = (int **)pppiVar6;\n  ppiStack_c4 = (int **)param_3;\n  iStack_c0 = iVar11;\n  pcStack_bc = pcVar14;\n  iVar11 = FUN_00048420();\n  if (iVar11 == 0) {\n    iVar11 = FUN_0003c4e4(iVar9,&uStack_e0,&uStack_d8);\n    if (iVar11 == 0) {\n      *pppiVar4 = (int **)0x0;\n      iVar11 = FUN_00025cb8(uStack_d8,uStack_e0,pppiVar5,pppiVar7,&piStack_dc);\n      if ((int **)piStack_dc == (int **)0xffffffff) {\n        iVar11 = 0x37;\n      }\n      else if (iVar11 == 0 && (int **)piStack_dc == (int **)0x0) {\n        iVar11 = 0x51;\n      }\n      else {\n        *pppiVar4 = (int **)piStack_dc;\n      }\n    }\n  }\n  else {\n    iVar11 = 0x5d;\n  }\n  if (iStack_d4 == *piVar8) {\n    return iVar11;\n  }\n  iVar11 = iStack_d4;\n  (**(code **)(pcVar13 + 0x699d0))();\n  if ((iVar11 != 0) && (*(int *)(iVar11 + 0x1030) == -0x3f212453)) {\n    if (*(int *)(iVar11 + 0x88) != 0) {\n      iVar11 = FUN_00033390(*(int *)(iVar11 + 0x88) + 0x8c,iVar11);\n      return iVar11;\n    }\n    return 0;\n  }\n  return 0x2b;\n}" { (declaration "undefined *puVar1;" type_identifier (pointer_declarator "*puVar1" * identifier) ;) (declaration "int iVar2;" primitive_type identifier ;) (declaration "undefined4 *puVar3;" type_identifier (pointer_declarator "*puVar3" * identifier) ;) (declaration "int ***pppiVar4;" primitive_type (pointer_declarator "***pppiVar4" * (pointer_declarator "**pppiVar4" * (pointer_declarator "*pppiVar4" * identifier))) ;) (declaration "int ***pppiVar5;" primitive_type (pointer_declarator "***pppiVar5" * (pointer_declarator "**pppiVar5" * (pointer_declarator "*pppiVar5" * identifier))) ;) (declaration "int ***pppiVar6;" primitive_type (pointer_declarator "***pppiVar6" * (pointer_declarator "**pppiVar6" * (pointer_declarator "*pppiVar6" * identifier))) ;) (declaration "int ***pppiVar7;" primitive_type (pointer_declarator "***pppiVar7" * (pointer_declarator "**pppiVar7" * (pointer_declarator "*pppiVar7" * identifier))) ;) (declaration "int *piVar8;" primitive_type (pointer_declarator "*piVar8" * identifier) ;) (declaration "int iVar9;" primitive_type identifier ;) (declaration "undefined4 *unaff_s4;" type_identifier (pointer_declarator "*unaff_s4" * identifier) ;) (declaration "int *piVar10;" primitive_type (pointer_declarator "*piVar10" * identifier) ;) (declaration "int iVar11;" primitive_type identifier ;) (declaration "undefined *puVar12;" type_identifier (pointer_declarator "*puVar12" * identifier) ;) (declaration "code *pcVar13;" type_identifier (pointer_declarator "*pcVar13" * identifier) ;) (declaration "code *pcVar14;" type_identifier (pointer_declarator "*pcVar14" * identifier) ;) (declaration "undefined4 uStack_e0;" type_identifier identifier ;) (declaration "int *piStack_dc;" primitive_type (pointer_declarator "*piStack_dc" * identifier) ;) (declaration "undefined4 uStack_d8;" type_identifier identifier ;) (declaration "int iStack_d4;" primitive_type identifier ;) (declaration "int *piStack_d0;" primitive_type (pointer_declarator "*piStack_d0" * identifier) ;) (declaration "int **ppiStack_cc;" primitive_type (pointer_declarator "**ppiStack_cc" * (pointer_declarator "*ppiStack_cc" * identifier)) ;) (declaration "int **ppiStack_c8;" primitive_type (pointer_declarator "**ppiStack_c8" * (pointer_declarator "*ppiStack_c8" * identifier)) ;) (declaration "int **ppiStack_c4;" primitive_type (pointer_declarator "**ppiStack_c4" * (pointer_declarator "*ppiStack_c4" * identifier)) ;) (declaration "int iStack_c0;" primitive_type identifier ;) (declaration "code *pcStack_bc;" type_identifier (pointer_declarator "*pcStack_bc" * identifier) ;) (declaration "int *piStack_a8;" primitive_type (pointer_declarator "*piStack_a8" * identifier) ;) (declaration "undefined *puStack_a0;" type_identifier (pointer_declarator "*puStack_a0" * identifier) ;) (declaration "int **ppiStack_98;" primitive_type (pointer_declarator "**ppiStack_98" * (pointer_declarator "*ppiStack_98" * identifier)) ;) (declaration "int *piStack_94;" primitive_type (pointer_declarator "*piStack_94" * identifier) ;) (declaration "int *piStack_90;" primitive_type (pointer_declarator "*piStack_90" * identifier) ;) (declaration "int iStack_8c;" primitive_type identifier ;) (declaration "int **ppiStack_88;" primitive_type (pointer_declarator "**ppiStack_88" * (pointer_declarator "*ppiStack_88" * identifier)) ;) (declaration "undefined *puStack_84;" type_identifier (pointer_declarator "*puStack_84" * identifier) ;) (declaration "int iStack_80;" primitive_type identifier ;) (declaration "int iStack_7c;" primitive_type identifier ;) (declaration "undefined4 *puStack_78;" type_identifier (pointer_declarator "*puStack_78" * identifier) ;) (declaration "code *pcStack_74;" type_identifier (pointer_declarator "*pcStack_74" * identifier) ;) (declaration "int local_58;" primitive_type identifier ;) (declaration "undefined4 local_50 [9];" type_identifier (array_declarator "local_50 [9]" identifier [ number_literal ]) ;) (declaration "int local_2c;" primitive_type identifier ;) (expression_statement "puVar1 = PTR___stack_chk_guard_000a6fe0;" (assignment_expression "puVar1 = PTR___stack_chk_guard_000a6fe0" identifier = identifier) ;) (expression_statement "pppiVar5 = (int ***)((param_2 & 1) << 4 | (param_2 & 4) << 3);" (assignment_expression "pppiVar5 = (int ***)((param_2 & 1) << 4 | (param_2 & 4) << 3)" identifier = (cast_expression "(int ***)((param_2 & 1) << 4 | (param_2 & 4) << 3)" ( (type_descriptor "int ***" primitive_type (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))) ) (parenthesized_expression "((param_2 & 1) << 4 | (param_2 & 4) << 3)" ( (binary_expression "(param_2 & 1) << 4 | (param_2 & 4) << 3" (binary_expression "(param_2 & 1) << 4" (parenthesized_expression "(param_2 & 1)" ( (binary_expression "param_2 & 1" identifier & number_literal) )) << number_literal) | (binary_expression "(param_2 & 4) << 3" (parenthesized_expression "(param_2 & 4)" ( (binary_expression "param_2 & 4" identifier & number_literal) )) << number_literal)) )))) ;) (expression_statement "pppiVar7 = (int ***)((uint)pppiVar5 | *(uint *)(param_1 + 0x138) & 0xffffffcf);" (assignment_expression "pppiVar7 = (int ***)((uint)pppiVar5 | *(uint *)(param_1 + 0x138) & 0xffffffcf)" identifier = (cast_expression "(int ***)((uint)pppiVar5 | *(uint *)(param_1 + 0x138) & 0xffffffcf)" ( (type_descriptor "int ***" primitive_type (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))) ) (parenthesized_expression "((uint)pppiVar5 | *(uint *)(param_1 + 0x138) & 0xffffffcf)" ( (binary_expression "(uint)pppiVar5 | *(uint *)(param_1 + 0x138) & 0xffffffcf" (cast_expression "(uint)pppiVar5" ( (type_descriptor "uint" type_identifier) ) identifier) | (binary_expression "*(uint *)(param_1 + 0x138) & 0xffffffcf" (pointer_expression "*(uint *)(param_1 + 0x138)" * (cast_expression "(uint *)(param_1 + 0x138)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x138)" ( (binary_expression "param_1 + 0x138" identifier + number_literal) )))) & number_literal)) )))) ;) (expression_statement "*(int ****)(param_1 + 0x138) = pppiVar7;" (assignment_expression "*(int ****)(param_1 + 0x138) = pppiVar7" (pointer_expression "*(int ****)(param_1 + 0x138)" * (cast_expression "(int ****)(param_1 + 0x138)" ( (type_descriptor "int ****" primitive_type (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))) ) (parenthesized_expression "(param_1 + 0x138)" ( (binary_expression "param_1 + 0x138" identifier + number_literal) )))) = identifier) ;) (expression_statement "local_2c = *(int *)puVar1;" (assignment_expression "local_2c = *(int *)puVar1" identifier = (pointer_expression "*(int *)puVar1" * (cast_expression "(int *)puVar1" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier))) ;) (expression_statement "pppiVar6 = pppiVar5;" (assignment_expression "pppiVar6 = pppiVar5" identifier = identifier) ;) (if_statement "if (((param_2 & 1) == 0) && (iVar11 = *(int *)(param_1 + 0xcbc), iVar11 != 0)) {\n    piVar10 = *(int **)(param_1 + 8);\n    unaff_s4 = local_50;\n    iVar9 = param_1;\n    puVar3 = unaff_s4;\n    do {\n      param_4 = *(int ****)(iVar9 + 0xcc0);\n      iVar2 = iVar9 + 0xc;\n      *(undefined4 *)(iVar9 + 0xcc0) = 0;\n      *puVar3 = param_4;\n      param_3 = *(int ****)(iVar9 + 0xcc4);\n      pppiVar6 = *(int ****)(iVar9 + 0xcc8);\n      puVar3[1] = param_3;\n      puVar3[2] = pppiVar6;\n      iVar9 = iVar2;\n      puVar3 = puVar3 + 3;\n    } while (iVar2 != iVar11 * 0xc + param_1);\n    local_58 = *piVar10;\n    *(undefined4 *)(param_1 + 0xcbc) = 0;\n    if (local_58 == param_1) {\n      local_58 = 0;\n    }\n    else {\n      *piVar10 = param_1;\n    }\n    puVar12 = PTR_PTR_free_000a6144;\n    iVar2 = 0;\n    iVar9 = 0;\n    do {\n      pppiVar4 = (int ***)*unaff_s4;\n      if (iVar9 == 0) {\n        param_4 = (int ***)unaff_s4[1];\n        pppiVar6 = (int ***)unaff_s4[2];\n        param_3 = pppiVar4;\n        iVar9 = FUN_000266b0(piVar10);\n      }\n      iVar2 = iVar2 + 1;\n      unaff_s4 = unaff_s4 + 3;\n      (**(code **)puVar12)(pppiVar4);\n    } while (iVar11 != iVar2);\n    if (local_58 != 0) {\n      *piVar10 = local_58;\n    }\n    ppiStack_88 = (int **)pppiVar7;\n    if (iVar9 != 0) goto LAB_0003d0fc;\n  }" if (parenthesized_expression "(((param_2 & 1) == 0) && (iVar11 = *(int *)(param_1 + 0xcbc), iVar11 != 0))" ( (binary_expression "((param_2 & 1) == 0) && (iVar11 = *(int *)(param_1 + 0xcbc), iVar11 != 0)" (parenthesized_expression "((param_2 & 1) == 0)" ( (binary_expression "(param_2 & 1) == 0" (parenthesized_expression "(param_2 & 1)" ( (binary_expression "param_2 & 1" identifier & number_literal) )) == number_literal) )) && (parenthesized_expression "(iVar11 = *(int *)(param_1 + 0xcbc), iVar11 != 0)" ( (comma_expression "iVar11 = *(int *)(param_1 + 0xcbc), iVar11 != 0" (assignment_expression "iVar11 = *(int *)(param_1 + 0xcbc)" identifier = (pointer_expression "*(int *)(param_1 + 0xcbc)" * (cast_expression "(int *)(param_1 + 0xcbc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0xcbc)" ( (binary_expression "param_1 + 0xcbc" identifier + number_literal) ))))) , (binary_expression "iVar11 != 0" identifier != number_literal)) ))) )) (compound_statement "{\n    piVar10 = *(int **)(param_1 + 8);\n    unaff_s4 = local_50;\n    iVar9 = param_1;\n    puVar3 = unaff_s4;\n    do {\n      param_4 = *(int ****)(iVar9 + 0xcc0);\n      iVar2 = iVar9 + 0xc;\n      *(undefined4 *)(iVar9 + 0xcc0) = 0;\n      *puVar3 = param_4;\n      param_3 = *(int ****)(iVar9 + 0xcc4);\n      pppiVar6 = *(int ****)(iVar9 + 0xcc8);\n      puVar3[1] = param_3;\n      puVar3[2] = pppiVar6;\n      iVar9 = iVar2;\n      puVar3 = puVar3 + 3;\n    } while (iVar2 != iVar11 * 0xc + param_1);\n    local_58 = *piVar10;\n    *(undefined4 *)(param_1 + 0xcbc) = 0;\n    if (local_58 == param_1) {\n      local_58 = 0;\n    }\n    else {\n      *piVar10 = param_1;\n    }\n    puVar12 = PTR_PTR_free_000a6144;\n    iVar2 = 0;\n    iVar9 = 0;\n    do {\n      pppiVar4 = (int ***)*unaff_s4;\n      if (iVar9 == 0) {\n        param_4 = (int ***)unaff_s4[1];\n        pppiVar6 = (int ***)unaff_s4[2];\n        param_3 = pppiVar4;\n        iVar9 = FUN_000266b0(piVar10);\n      }\n      iVar2 = iVar2 + 1;\n      unaff_s4 = unaff_s4 + 3;\n      (**(code **)puVar12)(pppiVar4);\n    } while (iVar11 != iVar2);\n    if (local_58 != 0) {\n      *piVar10 = local_58;\n    }\n    ppiStack_88 = (int **)pppiVar7;\n    if (iVar9 != 0) goto LAB_0003d0fc;\n  }" { (expression_statement "piVar10 = *(int **)(param_1 + 8);" (assignment_expression "piVar10 = *(int **)(param_1 + 8)" identifier = (pointer_expression "*(int **)(param_1 + 8)" * (cast_expression "(int **)(param_1 + 8)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(param_1 + 8)" ( (binary_expression "param_1 + 8" identifier + number_literal) ))))) ;) (expression_statement "unaff_s4 = local_50;" (assignment_expression "unaff_s4 = local_50" identifier = identifier) ;) (expression_statement "iVar9 = param_1;" (assignment_expression "iVar9 = param_1" identifier = identifier) ;) (expression_statement "puVar3 = unaff_s4;" (assignment_expression "puVar3 = unaff_s4" identifier = identifier) ;) (do_statement "do {\n      param_4 = *(int ****)(iVar9 + 0xcc0);\n      iVar2 = iVar9 + 0xc;\n      *(undefined4 *)(iVar9 + 0xcc0) = 0;\n      *puVar3 = param_4;\n      param_3 = *(int ****)(iVar9 + 0xcc4);\n      pppiVar6 = *(int ****)(iVar9 + 0xcc8);\n      puVar3[1] = param_3;\n      puVar3[2] = pppiVar6;\n      iVar9 = iVar2;\n      puVar3 = puVar3 + 3;\n    } while (iVar2 != iVar11 * 0xc + param_1);" do (compound_statement "{\n      param_4 = *(int ****)(iVar9 + 0xcc0);\n      iVar2 = iVar9 + 0xc;\n      *(undefined4 *)(iVar9 + 0xcc0) = 0;\n      *puVar3 = param_4;\n      param_3 = *(int ****)(iVar9 + 0xcc4);\n      pppiVar6 = *(int ****)(iVar9 + 0xcc8);\n      puVar3[1] = param_3;\n      puVar3[2] = pppiVar6;\n      iVar9 = iVar2;\n      puVar3 = puVar3 + 3;\n    }" { (expression_statement "param_4 = *(int ****)(iVar9 + 0xcc0);" (assignment_expression "param_4 = *(int ****)(iVar9 + 0xcc0)" identifier = (pointer_expression "*(int ****)(iVar9 + 0xcc0)" * (cast_expression "(int ****)(iVar9 + 0xcc0)" ( (type_descriptor "int ****" primitive_type (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))) ) (parenthesized_expression "(iVar9 + 0xcc0)" ( (binary_expression "iVar9 + 0xcc0" identifier + number_literal) ))))) ;) (expression_statement "iVar2 = iVar9 + 0xc;" (assignment_expression "iVar2 = iVar9 + 0xc" identifier = (binary_expression "iVar9 + 0xc" identifier + number_literal)) ;) (expression_statement "*(undefined4 *)(iVar9 + 0xcc0) = 0;" (assignment_expression "*(undefined4 *)(iVar9 + 0xcc0) = 0" (pointer_expression "*(undefined4 *)(iVar9 + 0xcc0)" * (cast_expression "(undefined4 *)(iVar9 + 0xcc0)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar9 + 0xcc0)" ( (binary_expression "iVar9 + 0xcc0" identifier + number_literal) )))) = number_literal) ;) (expression_statement "*puVar3 = param_4;" (assignment_expression "*puVar3 = param_4" (pointer_expression "*puVar3" * identifier) = identifier) ;) (expression_statement "param_3 = *(int ****)(iVar9 + 0xcc4);" (assignment_expression "param_3 = *(int ****)(iVar9 + 0xcc4)" identifier = (pointer_expression "*(int ****)(iVar9 + 0xcc4)" * (cast_expression "(int ****)(iVar9 + 0xcc4)" ( (type_descriptor "int ****" primitive_type (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))) ) (parenthesized_expression "(iVar9 + 0xcc4)" ( (binary_expression "iVar9 + 0xcc4" identifier + number_literal) ))))) ;) (expression_statement "pppiVar6 = *(int ****)(iVar9 + 0xcc8);" (assignment_expression "pppiVar6 = *(int ****)(iVar9 + 0xcc8)" identifier = (pointer_expression "*(int ****)(iVar9 + 0xcc8)" * (cast_expression "(int ****)(iVar9 + 0xcc8)" ( (type_descriptor "int ****" primitive_type (abstract_pointer_declarator "****" * (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))))) ) (parenthesized_expression "(iVar9 + 0xcc8)" ( (binary_expression "iVar9 + 0xcc8" identifier + number_literal) ))))) ;) (expression_statement "puVar3[1] = param_3;" (assignment_expression "puVar3[1] = param_3" (subscript_expression "puVar3[1]" identifier [ number_literal ]) = identifier) ;) (expression_statement "puVar3[2] = pppiVar6;" (assignment_expression "puVar3[2] = pppiVar6" (subscript_expression "puVar3[2]" identifier [ number_literal ]) = identifier) ;) (expression_statement "iVar9 = iVar2;" (assignment_expression "iVar9 = iVar2" identifier = identifier) ;) (expression_statement "puVar3 = puVar3 + 3;" (assignment_expression "puVar3 = puVar3 + 3" identifier = (binary_expression "puVar3 + 3" identifier + number_literal)) ;) }) while (parenthesized_expression "(iVar2 != iVar11 * 0xc + param_1)" ( (binary_expression "iVar2 != iVar11 * 0xc + param_1" identifier != (binary_expression "iVar11 * 0xc + param_1" (binary_expression "iVar11 * 0xc" identifier * number_literal) + identifier)) )) ;) (expression_statement "local_58 = *piVar10;" (assignment_expression "local_58 = *piVar10" identifier = (pointer_expression "*piVar10" * identifier)) ;) (expression_statement "*(undefined4 *)(param_1 + 0xcbc) = 0;" (assignment_expression "*(undefined4 *)(param_1 + 0xcbc) = 0" (pointer_expression "*(undefined4 *)(param_1 + 0xcbc)" * (cast_expression "(undefined4 *)(param_1 + 0xcbc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0xcbc)" ( (binary_expression "param_1 + 0xcbc" identifier + number_literal) )))) = number_literal) ;) (if_statement "if (local_58 == param_1) {\n      local_58 = 0;\n    }\n    else {\n      *piVar10 = param_1;\n    }" if (parenthesized_expression "(local_58 == param_1)" ( (binary_expression "local_58 == param_1" identifier == identifier) )) (compound_statement "{\n      local_58 = 0;\n    }" { (expression_statement "local_58 = 0;" (assignment_expression "local_58 = 0" identifier = number_literal) ;) }) (else_clause "else {\n      *piVar10 = param_1;\n    }" else (compound_statement "{\n      *piVar10 = param_1;\n    }" { (expression_statement "*piVar10 = param_1;" (assignment_expression "*piVar10 = param_1" (pointer_expression "*piVar10" * identifier) = identifier) ;) }))) (expression_statement "puVar12 = PTR_PTR_free_000a6144;" (assignment_expression "puVar12 = PTR_PTR_free_000a6144" identifier = identifier) ;) (expression_statement "iVar2 = 0;" (assignment_expression "iVar2 = 0" identifier = number_literal) ;) (expression_statement "iVar9 = 0;" (assignment_expression "iVar9 = 0" identifier = number_literal) ;) (do_statement "do {\n      pppiVar4 = (int ***)*unaff_s4;\n      if (iVar9 == 0) {\n        param_4 = (int ***)unaff_s4[1];\n        pppiVar6 = (int ***)unaff_s4[2];\n        param_3 = pppiVar4;\n        iVar9 = FUN_000266b0(piVar10);\n      }\n      iVar2 = iVar2 + 1;\n      unaff_s4 = unaff_s4 + 3;\n      (**(code **)puVar12)(pppiVar4);\n    } while (iVar11 != iVar2);" do (compound_statement "{\n      pppiVar4 = (int ***)*unaff_s4;\n      if (iVar9 == 0) {\n        param_4 = (int ***)unaff_s4[1];\n        pppiVar6 = (int ***)unaff_s4[2];\n        param_3 = pppiVar4;\n        iVar9 = FUN_000266b0(piVar10);\n      }\n      iVar2 = iVar2 + 1;\n      unaff_s4 = unaff_s4 + 3;\n      (**(code **)puVar12)(pppiVar4);\n    }" { (expression_statement "pppiVar4 = (int ***)*unaff_s4;" (assignment_expression "pppiVar4 = (int ***)*unaff_s4" identifier = (cast_expression "(int ***)*unaff_s4" ( (type_descriptor "int ***" primitive_type (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))) ) (pointer_expression "*unaff_s4" * identifier))) ;) (if_statement "if (iVar9 == 0) {\n        param_4 = (int ***)unaff_s4[1];\n        pppiVar6 = (int ***)unaff_s4[2];\n        param_3 = pppiVar4;\n        iVar9 = FUN_000266b0(piVar10);\n      }" if (parenthesized_expression "(iVar9 == 0)" ( (binary_expression "iVar9 == 0" identifier == number_literal) )) (compound_statement "{\n        param_4 = (int ***)unaff_s4[1];\n        pppiVar6 = (int ***)unaff_s4[2];\n        param_3 = pppiVar4;\n        iVar9 = FUN_000266b0(piVar10);\n      }" { (expression_statement "param_4 = (int ***)unaff_s4[1];" (assignment_expression "param_4 = (int ***)unaff_s4[1]" identifier = (cast_expression "(int ***)unaff_s4[1]" ( (type_descriptor "int ***" primitive_type (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))) ) (subscript_expression "unaff_s4[1]" identifier [ number_literal ]))) ;) (expression_statement "pppiVar6 = (int ***)unaff_s4[2];" (assignment_expression "pppiVar6 = (int ***)unaff_s4[2]" identifier = (cast_expression "(int ***)unaff_s4[2]" ( (type_descriptor "int ***" primitive_type (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))) ) (subscript_expression "unaff_s4[2]" identifier [ number_literal ]))) ;) (expression_statement "param_3 = pppiVar4;" (assignment_expression "param_3 = pppiVar4" identifier = identifier) ;) (expression_statement "iVar9 = FUN_000266b0(piVar10);" (assignment_expression "iVar9 = FUN_000266b0(piVar10)" identifier = (call_expression "FUN_000266b0(piVar10)" identifier (argument_list "(piVar10)" ( identifier )))) ;) })) (expression_statement "iVar2 = iVar2 + 1;" (assignment_expression "iVar2 = iVar2 + 1" identifier = (binary_expression "iVar2 + 1" identifier + number_literal)) ;) (expression_statement "unaff_s4 = unaff_s4 + 3;" (assignment_expression "unaff_s4 = unaff_s4 + 3" identifier = (binary_expression "unaff_s4 + 3" identifier + number_literal)) ;) (expression_statement "(**(code **)puVar12)(pppiVar4);" (call_expression "(**(code **)puVar12)(pppiVar4)" (parenthesized_expression "(**(code **)puVar12)" ( (pointer_expression "**(code **)puVar12" * (pointer_expression "*(code **)puVar12" * (cast_expression "(code **)puVar12" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier))) )) (argument_list "(pppiVar4)" ( identifier ))) ;) }) while (parenthesized_expression "(iVar11 != iVar2)" ( (binary_expression "iVar11 != iVar2" identifier != identifier) )) ;) (if_statement "if (local_58 != 0) {\n      *piVar10 = local_58;\n    }" if (parenthesized_expression "(local_58 != 0)" ( (binary_expression "local_58 != 0" identifier != number_literal) )) (compound_statement "{\n      *piVar10 = local_58;\n    }" { (expression_statement "*piVar10 = local_58;" (assignment_expression "*piVar10 = local_58" (pointer_expression "*piVar10" * identifier) = identifier) ;) })) (expression_statement "ppiStack_88 = (int **)pppiVar7;" (assignment_expression "ppiStack_88 = (int **)pppiVar7" identifier = (cast_expression "(int **)pppiVar7" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier)) ;) (if_statement "if (iVar9 != 0) goto LAB_0003d0fc;" if (parenthesized_expression "(iVar9 != 0)" ( (binary_expression "iVar9 != 0" identifier != number_literal) )) (goto_statement "goto LAB_0003d0fc;" goto statement_identifier ;)) })) (if_statement "if (pppiVar5 != (int ***)0x30) {\n    param_3 = (int ***)0x6;\n    pppiVar6 = (int ***)0x0;\n    FUN_00044d9c(param_1);\n  }" if (parenthesized_expression "(pppiVar5 != (int ***)0x30)" ( (binary_expression "pppiVar5 != (int ***)0x30" identifier != (cast_expression "(int ***)0x30" ( (type_descriptor "int ***" primitive_type (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))) ) number_literal)) )) (compound_statement "{\n    param_3 = (int ***)0x6;\n    pppiVar6 = (int ***)0x0;\n    FUN_00044d9c(param_1);\n  }" { (expression_statement "param_3 = (int ***)0x6;" (assignment_expression "param_3 = (int ***)0x6" identifier = (cast_expression "(int ***)0x6" ( (type_descriptor "int ***" primitive_type (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))) ) number_literal)) ;) (expression_statement "pppiVar6 = (int ***)0x0;" (assignment_expression "pppiVar6 = (int ***)0x0" identifier = (cast_expression "(int ***)0x0" ( (type_descriptor "int ***" primitive_type (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))) ) number_literal)) ;) (expression_statement "FUN_00044d9c(param_1);" (call_expression "FUN_00044d9c(param_1)" identifier (argument_list "(param_1)" ( identifier ))) ;) })) (expression_statement "iVar9 = 0;" (assignment_expression "iVar9 = 0" identifier = number_literal) ;) (expression_statement "FUN_000449a8(param_1);" (call_expression "FUN_000449a8(param_1)" identifier (argument_list "(param_1)" ( identifier ))) ;) (expression_statement "ppiStack_88 = (int **)pppiVar5;" (assignment_expression "ppiStack_88 = (int **)pppiVar5" identifier = (cast_expression "(int **)pppiVar5" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier)) ;) (labeled_statement "LAB_0003d0fc:\n  if (local_2c == *(int *)puVar1) {\n    return iVar9;\n  }" statement_identifier : (if_statement "if (local_2c == *(int *)puVar1) {\n    return iVar9;\n  }" if (parenthesized_expression "(local_2c == *(int *)puVar1)" ( (binary_expression "local_2c == *(int *)puVar1" identifier == (pointer_expression "*(int *)puVar1" * (cast_expression "(int *)puVar1" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier))) )) (compound_statement "{\n    return iVar9;\n  }" { (return_statement "return iVar9;" return identifier ;) }))) (expression_statement "pcVar13 = curl_easy_recv;" (assignment_expression "pcVar13 = curl_easy_recv" identifier = identifier) ;) (expression_statement "iVar11 = local_2c;" (assignment_expression "iVar11 = local_2c" identifier = identifier) ;) (expression_statement "puVar12 = PTR___stack_chk_fail_000a6c54;" (assignment_expression "puVar12 = PTR___stack_chk_fail_000a6c54" identifier = identifier) ;) (expression_statement "(*(code *)PTR___stack_chk_fail_000a6c54)();" (call_expression "(*(code *)PTR___stack_chk_fail_000a6c54)()" (parenthesized_expression "(*(code *)PTR___stack_chk_fail_000a6c54)" ( (pointer_expression "*(code *)PTR___stack_chk_fail_000a6c54" * (cast_expression "(code *)PTR___stack_chk_fail_000a6c54" ( (type_descriptor "code *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) )) (argument_list "()" ( ))) ;) (expression_statement "puStack_a0 = puVar12 + 0x70f80;" (assignment_expression "puStack_a0 = puVar12 + 0x70f80" identifier = (binary_expression "puVar12 + 0x70f80" identifier + number_literal)) ;) (expression_statement "piVar10 = *(int **)(puVar12 + 0x69e50);" (assignment_expression "piVar10 = *(int **)(puVar12 + 0x69e50)" identifier = (pointer_expression "*(int **)(puVar12 + 0x69e50)" * (cast_expression "(int **)(puVar12 + 0x69e50)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puVar12 + 0x69e50)" ( (binary_expression "puVar12 + 0x69e50" identifier + number_literal) ))))) ;) (expression_statement "puStack_84 = puVar1;" (assignment_expression "puStack_84 = puVar1" identifier = identifier) ;) (expression_statement "iStack_8c = *piVar10;" (assignment_expression "iStack_8c = *piVar10" identifier = (pointer_expression "*piVar10" * identifier)) ;) (expression_statement "pppiVar5 = pppiVar6;" (assignment_expression "pppiVar5 = pppiVar6" identifier = identifier) ;) (expression_statement "pppiVar7 = param_3;" (assignment_expression "pppiVar7 = param_3" identifier = identifier) ;) (expression_statement "pppiVar4 = param_4;" (assignment_expression "pppiVar4 = param_4" identifier = identifier) ;) (expression_statement "iStack_80 = param_1;" (assignment_expression "iStack_80 = param_1" identifier = identifier) ;) (expression_statement "iStack_7c = iVar9;" (assignment_expression "iStack_7c = iVar9" identifier = identifier) ;) (expression_statement "puStack_78 = unaff_s4;" (assignment_expression "puStack_78 = unaff_s4" identifier = identifier) ;) (expression_statement "pcStack_74 = pcVar13;" (assignment_expression "pcStack_74 = pcVar13" identifier = identifier) ;) (expression_statement "iVar9 = FUN_00048420();" (assignment_expression "iVar9 = FUN_00048420()" identifier = (call_expression "FUN_00048420()" identifier (argument_list "()" ( )))) ;) (if_statement "if (iVar9 == 0) {\n    pppiVar7 = (int ***)&piStack_90;\n    pppiVar5 = &ppiStack_98;\n    iVar9 = FUN_0003c4e4(iVar11,pppiVar5,pppiVar7);\n    if (iVar9 == 0) {\n      piStack_a8 = (int *)&piStack_94;\n      *param_4 = (int **)0x0;\n      pppiVar7 = pppiVar6;\n      pppiVar4 = param_3;\n      iVar9 = FUN_00025e14(piStack_90,ppiStack_98,pppiVar6);\n      pppiVar5 = (int ***)ppiStack_98;\n      if (iVar9 == 0) {\n        *param_4 = (int **)piStack_94;\n      }\n    }\n  }\n  else {\n    iVar9 = 0x5d;\n  }" if (parenthesized_expression "(iVar9 == 0)" ( (binary_expression "iVar9 == 0" identifier == number_literal) )) (compound_statement "{\n    pppiVar7 = (int ***)&piStack_90;\n    pppiVar5 = &ppiStack_98;\n    iVar9 = FUN_0003c4e4(iVar11,pppiVar5,pppiVar7);\n    if (iVar9 == 0) {\n      piStack_a8 = (int *)&piStack_94;\n      *param_4 = (int **)0x0;\n      pppiVar7 = pppiVar6;\n      pppiVar4 = param_3;\n      iVar9 = FUN_00025e14(piStack_90,ppiStack_98,pppiVar6);\n      pppiVar5 = (int ***)ppiStack_98;\n      if (iVar9 == 0) {\n        *param_4 = (int **)piStack_94;\n      }\n    }\n  }" { (expression_statement "pppiVar7 = (int ***)&piStack_90;" (assignment_expression "pppiVar7 = (int ***)&piStack_90" identifier = (cast_expression "(int ***)&piStack_90" ( (type_descriptor "int ***" primitive_type (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))) ) (pointer_expression "&piStack_90" & identifier))) ;) (expression_statement "pppiVar5 = &ppiStack_98;" (assignment_expression "pppiVar5 = &ppiStack_98" identifier = (pointer_expression "&ppiStack_98" & identifier)) ;) (expression_statement "iVar9 = FUN_0003c4e4(iVar11,pppiVar5,pppiVar7);" (assignment_expression "iVar9 = FUN_0003c4e4(iVar11,pppiVar5,pppiVar7)" identifier = (call_expression "FUN_0003c4e4(iVar11,pppiVar5,pppiVar7)" identifier (argument_list "(iVar11,pppiVar5,pppiVar7)" ( identifier , identifier , identifier )))) ;) (if_statement "if (iVar9 == 0) {\n      piStack_a8 = (int *)&piStack_94;\n      *param_4 = (int **)0x0;\n      pppiVar7 = pppiVar6;\n      pppiVar4 = param_3;\n      iVar9 = FUN_00025e14(piStack_90,ppiStack_98,pppiVar6);\n      pppiVar5 = (int ***)ppiStack_98;\n      if (iVar9 == 0) {\n        *param_4 = (int **)piStack_94;\n      }\n    }" if (parenthesized_expression "(iVar9 == 0)" ( (binary_expression "iVar9 == 0" identifier == number_literal) )) (compound_statement "{\n      piStack_a8 = (int *)&piStack_94;\n      *param_4 = (int **)0x0;\n      pppiVar7 = pppiVar6;\n      pppiVar4 = param_3;\n      iVar9 = FUN_00025e14(piStack_90,ppiStack_98,pppiVar6);\n      pppiVar5 = (int ***)ppiStack_98;\n      if (iVar9 == 0) {\n        *param_4 = (int **)piStack_94;\n      }\n    }" { (expression_statement "piStack_a8 = (int *)&piStack_94;" (assignment_expression "piStack_a8 = (int *)&piStack_94" identifier = (cast_expression "(int *)&piStack_94" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&piStack_94" & identifier))) ;) (expression_statement "*param_4 = (int **)0x0;" (assignment_expression "*param_4 = (int **)0x0" (pointer_expression "*param_4" * identifier) = (cast_expression "(int **)0x0" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) number_literal)) ;) (expression_statement "pppiVar7 = pppiVar6;" (assignment_expression "pppiVar7 = pppiVar6" identifier = identifier) ;) (expression_statement "pppiVar4 = param_3;" (assignment_expression "pppiVar4 = param_3" identifier = identifier) ;) (expression_statement "iVar9 = FUN_00025e14(piStack_90,ppiStack_98,pppiVar6);" (assignment_expression "iVar9 = FUN_00025e14(piStack_90,ppiStack_98,pppiVar6)" identifier = (call_expression "FUN_00025e14(piStack_90,ppiStack_98,pppiVar6)" identifier (argument_list "(piStack_90,ppiStack_98,pppiVar6)" ( identifier , identifier , identifier )))) ;) (expression_statement "pppiVar5 = (int ***)ppiStack_98;" (assignment_expression "pppiVar5 = (int ***)ppiStack_98" identifier = (cast_expression "(int ***)ppiStack_98" ( (type_descriptor "int ***" primitive_type (abstract_pointer_declarator "***" * (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *)))) ) identifier)) ;) (if_statement "if (iVar9 == 0) {\n        *param_4 = (int **)piStack_94;\n      }" if (parenthesized_expression "(iVar9 == 0)" ( (binary_expression "iVar9 == 0" identifier == number_literal) )) (compound_statement "{\n        *param_4 = (int **)piStack_94;\n      }" { (expression_statement "*param_4 = (int **)piStack_94;" (assignment_expression "*param_4 = (int **)piStack_94" (pointer_expression "*param_4" * identifier) = (cast_expression "(int **)piStack_94" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier)) ;) })) })) }) (else_clause "else {\n    iVar9 = 0x5d;\n  }" else (compound_statement "{\n    iVar9 = 0x5d;\n  }" { (expression_statement "iVar9 = 0x5d;" (assignment_expression "iVar9 = 0x5d" identifier = number_literal) ;) }))) (if_statement "if (iStack_8c == *piVar10) {\n    return iVar9;\n  }" if (parenthesized_expression "(iStack_8c == *piVar10)" ( (binary_expression "iStack_8c == *piVar10" identifier == (pointer_expression "*piVar10" * identifier)) )) (compound_statement "{\n    return iVar9;\n  }" { (return_statement "return iVar9;" return identifier ;) })) (expression_statement "pcVar13 = *(code **)(puStack_a0 + -0x74bc);" (assignment_expression "pcVar13 = *(code **)(puStack_a0 + -0x74bc)" identifier = (pointer_expression "*(code **)(puStack_a0 + -0x74bc)" * (cast_expression "(code **)(puStack_a0 + -0x74bc)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(puStack_a0 + -0x74bc)" ( (binary_expression "puStack_a0 + -0x74bc" identifier + number_literal) ))))) ;) (expression_statement "pcVar14 = curl_easy_send;" (assignment_expression "pcVar14 = curl_easy_send" identifier = identifier) ;) (expression_statement "iVar9 = iStack_8c;" (assignment_expression "iVar9 = iStack_8c" identifier = identifier) ;) (expression_statement "(*pcVar13)();" (call_expression "(*pcVar13)()" (parenthesized_expression "(*pcVar13)" ( (pointer_expression "*pcVar13" * identifier) )) (argument_list "()" ( ))) ;) (expression_statement "piVar8 = *(int **)(pcVar13 + 0x69d5c);" (assignment_expression "piVar8 = *(int **)(pcVar13 + 0x69d5c)" identifier = (pointer_expression "*(int **)(pcVar13 + 0x69d5c)" * (cast_expression "(int **)(pcVar13 + 0x69d5c)" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar13 + 0x69d5c)" ( (binary_expression "pcVar13 + 0x69d5c" identifier + number_literal) ))))) ;) (expression_statement "uStack_d8 = 0;" (assignment_expression "uStack_d8 = 0" identifier = number_literal) ;) (expression_statement "iStack_d4 = *piVar8;" (assignment_expression "iStack_d4 = *piVar8" identifier = (pointer_expression "*piVar8" * identifier)) ;) (expression_statement "piStack_d0 = piVar10;" (assignment_expression "piStack_d0 = piVar10" identifier = identifier) ;) (expression_statement "ppiStack_cc = (int **)param_4;" (assignment_expression "ppiStack_cc = (int **)param_4" identifier = (cast_expression "(int **)param_4" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier)) ;) (expression_statement "ppiStack_c8 = (int **)pppiVar6;" (assignment_expression "ppiStack_c8 = (int **)pppiVar6" identifier = (cast_expression "(int **)pppiVar6" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier)) ;) (expression_statement "ppiStack_c4 = (int **)param_3;" (assignment_expression "ppiStack_c4 = (int **)param_3" identifier = (cast_expression "(int **)param_3" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier)) ;) (expression_statement "iStack_c0 = iVar11;" (assignment_expression "iStack_c0 = iVar11" identifier = identifier) ;) (expression_statement "pcStack_bc = pcVar14;" (assignment_expression "pcStack_bc = pcVar14" identifier = identifier) ;) (expression_statement "iVar11 = FUN_00048420();" (assignment_expression "iVar11 = FUN_00048420()" identifier = (call_expression "FUN_00048420()" identifier (argument_list "()" ( )))) ;) (if_statement "if (iVar11 == 0) {\n    iVar11 = FUN_0003c4e4(iVar9,&uStack_e0,&uStack_d8);\n    if (iVar11 == 0) {\n      *pppiVar4 = (int **)0x0;\n      iVar11 = FUN_00025cb8(uStack_d8,uStack_e0,pppiVar5,pppiVar7,&piStack_dc);\n      if ((int **)piStack_dc == (int **)0xffffffff) {\n        iVar11 = 0x37;\n      }\n      else if (iVar11 == 0 && (int **)piStack_dc == (int **)0x0) {\n        iVar11 = 0x51;\n      }\n      else {\n        *pppiVar4 = (int **)piStack_dc;\n      }\n    }\n  }\n  else {\n    iVar11 = 0x5d;\n  }" if (parenthesized_expression "(iVar11 == 0)" ( (binary_expression "iVar11 == 0" identifier == number_literal) )) (compound_statement "{\n    iVar11 = FUN_0003c4e4(iVar9,&uStack_e0,&uStack_d8);\n    if (iVar11 == 0) {\n      *pppiVar4 = (int **)0x0;\n      iVar11 = FUN_00025cb8(uStack_d8,uStack_e0,pppiVar5,pppiVar7,&piStack_dc);\n      if ((int **)piStack_dc == (int **)0xffffffff) {\n        iVar11 = 0x37;\n      }\n      else if (iVar11 == 0 && (int **)piStack_dc == (int **)0x0) {\n        iVar11 = 0x51;\n      }\n      else {\n        *pppiVar4 = (int **)piStack_dc;\n      }\n    }\n  }" { (expression_statement "iVar11 = FUN_0003c4e4(iVar9,&uStack_e0,&uStack_d8);" (assignment_expression "iVar11 = FUN_0003c4e4(iVar9,&uStack_e0,&uStack_d8)" identifier = (call_expression "FUN_0003c4e4(iVar9,&uStack_e0,&uStack_d8)" identifier (argument_list "(iVar9,&uStack_e0,&uStack_d8)" ( identifier , (pointer_expression "&uStack_e0" & identifier) , (pointer_expression "&uStack_d8" & identifier) )))) ;) (if_statement "if (iVar11 == 0) {\n      *pppiVar4 = (int **)0x0;\n      iVar11 = FUN_00025cb8(uStack_d8,uStack_e0,pppiVar5,pppiVar7,&piStack_dc);\n      if ((int **)piStack_dc == (int **)0xffffffff) {\n        iVar11 = 0x37;\n      }\n      else if (iVar11 == 0 && (int **)piStack_dc == (int **)0x0) {\n        iVar11 = 0x51;\n      }\n      else {\n        *pppiVar4 = (int **)piStack_dc;\n      }\n    }" if (parenthesized_expression "(iVar11 == 0)" ( (binary_expression "iVar11 == 0" identifier == number_literal) )) (compound_statement "{\n      *pppiVar4 = (int **)0x0;\n      iVar11 = FUN_00025cb8(uStack_d8,uStack_e0,pppiVar5,pppiVar7,&piStack_dc);\n      if ((int **)piStack_dc == (int **)0xffffffff) {\n        iVar11 = 0x37;\n      }\n      else if (iVar11 == 0 && (int **)piStack_dc == (int **)0x0) {\n        iVar11 = 0x51;\n      }\n      else {\n        *pppiVar4 = (int **)piStack_dc;\n      }\n    }" { (expression_statement "*pppiVar4 = (int **)0x0;" (assignment_expression "*pppiVar4 = (int **)0x0" (pointer_expression "*pppiVar4" * identifier) = (cast_expression "(int **)0x0" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) number_literal)) ;) (expression_statement "iVar11 = FUN_00025cb8(uStack_d8,uStack_e0,pppiVar5,pppiVar7,&piStack_dc);" (assignment_expression "iVar11 = FUN_00025cb8(uStack_d8,uStack_e0,pppiVar5,pppiVar7,&piStack_dc)" identifier = (call_expression "FUN_00025cb8(uStack_d8,uStack_e0,pppiVar5,pppiVar7,&piStack_dc)" identifier (argument_list "(uStack_d8,uStack_e0,pppiVar5,pppiVar7,&piStack_dc)" ( identifier , identifier , identifier , identifier , (pointer_expression "&piStack_dc" & identifier) )))) ;) (if_statement "if ((int **)piStack_dc == (int **)0xffffffff) {\n        iVar11 = 0x37;\n      }\n      else if (iVar11 == 0 && (int **)piStack_dc == (int **)0x0) {\n        iVar11 = 0x51;\n      }\n      else {\n        *pppiVar4 = (int **)piStack_dc;\n      }" if (parenthesized_expression "((int **)piStack_dc == (int **)0xffffffff)" ( (binary_expression "(int **)piStack_dc == (int **)0xffffffff" (cast_expression "(int **)piStack_dc" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier) == (cast_expression "(int **)0xffffffff" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) number_literal)) )) (compound_statement "{\n        iVar11 = 0x37;\n      }" { (expression_statement "iVar11 = 0x37;" (assignment_expression "iVar11 = 0x37" identifier = number_literal) ;) }) (else_clause "else if (iVar11 == 0 && (int **)piStack_dc == (int **)0x0) {\n        iVar11 = 0x51;\n      }\n      else {\n        *pppiVar4 = (int **)piStack_dc;\n      }" else (if_statement "if (iVar11 == 0 && (int **)piStack_dc == (int **)0x0) {\n        iVar11 = 0x51;\n      }\n      else {\n        *pppiVar4 = (int **)piStack_dc;\n      }" if (parenthesized_expression "(iVar11 == 0 && (int **)piStack_dc == (int **)0x0)" ( (binary_expression "iVar11 == 0 && (int **)piStack_dc == (int **)0x0" (binary_expression "iVar11 == 0" identifier == number_literal) && (binary_expression "(int **)piStack_dc == (int **)0x0" (cast_expression "(int **)piStack_dc" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier) == (cast_expression "(int **)0x0" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) number_literal))) )) (compound_statement "{\n        iVar11 = 0x51;\n      }" { (expression_statement "iVar11 = 0x51;" (assignment_expression "iVar11 = 0x51" identifier = number_literal) ;) }) (else_clause "else {\n        *pppiVar4 = (int **)piStack_dc;\n      }" else (compound_statement "{\n        *pppiVar4 = (int **)piStack_dc;\n      }" { (expression_statement "*pppiVar4 = (int **)piStack_dc;" (assignment_expression "*pppiVar4 = (int **)piStack_dc" (pointer_expression "*pppiVar4" * identifier) = (cast_expression "(int **)piStack_dc" ( (type_descriptor "int **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) identifier)) ;) }))))) })) }) (else_clause "else {\n    iVar11 = 0x5d;\n  }" else (compound_statement "{\n    iVar11 = 0x5d;\n  }" { (expression_statement "iVar11 = 0x5d;" (assignment_expression "iVar11 = 0x5d" identifier = number_literal) ;) }))) (if_statement "if (iStack_d4 == *piVar8) {\n    return iVar11;\n  }" if (parenthesized_expression "(iStack_d4 == *piVar8)" ( (binary_expression "iStack_d4 == *piVar8" identifier == (pointer_expression "*piVar8" * identifier)) )) (compound_statement "{\n    return iVar11;\n  }" { (return_statement "return iVar11;" return identifier ;) })) (expression_statement "iVar11 = iStack_d4;" (assignment_expression "iVar11 = iStack_d4" identifier = identifier) ;) (expression_statement "(**(code **)(pcVar13 + 0x699d0))();" (call_expression "(**(code **)(pcVar13 + 0x699d0))()" (parenthesized_expression "(**(code **)(pcVar13 + 0x699d0))" ( (pointer_expression "**(code **)(pcVar13 + 0x699d0)" * (pointer_expression "*(code **)(pcVar13 + 0x699d0)" * (cast_expression "(code **)(pcVar13 + 0x699d0)" ( (type_descriptor "code **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pcVar13 + 0x699d0)" ( (binary_expression "pcVar13 + 0x699d0" identifier + number_literal) ))))) )) (argument_list "()" ( ))) ;) (if_statement "if ((iVar11 != 0) && (*(int *)(iVar11 + 0x1030) == -0x3f212453)) {\n    if (*(int *)(iVar11 + 0x88) != 0) {\n      iVar11 = FUN_00033390(*(int *)(iVar11 + 0x88) + 0x8c,iVar11);\n      return iVar11;\n    }\n    return 0;\n  }" if (parenthesized_expression "((iVar11 != 0) && (*(int *)(iVar11 + 0x1030) == -0x3f212453))" ( (binary_expression "(iVar11 != 0) && (*(int *)(iVar11 + 0x1030) == -0x3f212453)" (parenthesized_expression "(iVar11 != 0)" ( (binary_expression "iVar11 != 0" identifier != number_literal) )) && (parenthesized_expression "(*(int *)(iVar11 + 0x1030) == -0x3f212453)" ( (binary_expression "*(int *)(iVar11 + 0x1030) == -0x3f212453" (pointer_expression "*(int *)(iVar11 + 0x1030)" * (cast_expression "(int *)(iVar11 + 0x1030)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar11 + 0x1030)" ( (binary_expression "iVar11 + 0x1030" identifier + number_literal) )))) == number_literal) ))) )) (compound_statement "{\n    if (*(int *)(iVar11 + 0x88) != 0) {\n      iVar11 = FUN_00033390(*(int *)(iVar11 + 0x88) + 0x8c,iVar11);\n      return iVar11;\n    }\n    return 0;\n  }" { (if_statement "if (*(int *)(iVar11 + 0x88) != 0) {\n      iVar11 = FUN_00033390(*(int *)(iVar11 + 0x88) + 0x8c,iVar11);\n      return iVar11;\n    }" if (parenthesized_expression "(*(int *)(iVar11 + 0x88) != 0)" ( (binary_expression "*(int *)(iVar11 + 0x88) != 0" (pointer_expression "*(int *)(iVar11 + 0x88)" * (cast_expression "(int *)(iVar11 + 0x88)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar11 + 0x88)" ( (binary_expression "iVar11 + 0x88" identifier + number_literal) )))) != number_literal) )) (compound_statement "{\n      iVar11 = FUN_00033390(*(int *)(iVar11 + 0x88) + 0x8c,iVar11);\n      return iVar11;\n    }" { (expression_statement "iVar11 = FUN_00033390(*(int *)(iVar11 + 0x88) + 0x8c,iVar11);" (assignment_expression "iVar11 = FUN_00033390(*(int *)(iVar11 + 0x88) + 0x8c,iVar11)" identifier = (call_expression "FUN_00033390(*(int *)(iVar11 + 0x88) + 0x8c,iVar11)" identifier (argument_list "(*(int *)(iVar11 + 0x88) + 0x8c,iVar11)" ( (binary_expression "*(int *)(iVar11 + 0x88) + 0x8c" (pointer_expression "*(int *)(iVar11 + 0x88)" * (cast_expression "(int *)(iVar11 + 0x88)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar11 + 0x88)" ( (binary_expression "iVar11 + 0x88" identifier + number_literal) )))) + number_literal) , identifier )))) ;) (return_statement "return iVar11;" return identifier ;) })) (return_statement "return 0;" return number_literal ;) })) (return_statement "return 0x2b;" return number_literal ;) })))
(translation_unit (function_definition TYPE (function_declarator IDENT (parameter_list ( (parameter_declaration TYPE IDENT) , (parameter_declaration TYPE IDENT) , (parameter_declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT)))) , (parameter_declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT)))) ))) (compound_statement { (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT))) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT))) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (pointer_declarator * IDENT))) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * (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 (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * IDENT)) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * IDENT)) ;) (declaration TYPE (pointer_declarator * (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 * (pointer_declarator * IDENT)) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * (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 (array_declarator IDENT [ LIT ]) ;) (declaration TYPE IDENT ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))) ) (parenthesized_expression ( (binary_expression (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) << LIT) | (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) << LIT)) )))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) | (binary_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 * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) == LIT) )) && (parenthesized_expression ( (comma_expression (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) , (binary_expression IDENT != LIT)) ))) )) (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (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) ;) (do_statement do (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *))))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * IDENT) = IDENT) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (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 * (abstract_pointer_declarator * (abstract_pointer_declarator *))))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = IDENT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) }) while (parenthesized_expression ( (binary_expression IDENT != (binary_expression (binary_expression IDENT * LIT) + IDENT)) )) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * IDENT)) ;) (expression_statement (assignment_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 == IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression (pointer_expression * IDENT) = IDENT) ;) }))) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (do_statement do (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))) ) (pointer_expression * 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 * (abstract_pointer_declarator * (abstract_pointer_declarator *)))) ) (subscript_expression IDENT [ LIT ]))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))) ) (subscript_expression IDENT [ LIT ]))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT )))) ;) })) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (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 *))) ) IDENT))) )) (argument_list ( IDENT ))) ;) }) while (parenthesized_expression ( (binary_expression IDENT != IDENT) )) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * IDENT) = IDENT) ;) })) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) IDENT)) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (goto_statement goto statement_identifier ;)) })) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))) ) LIT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))) ) LIT)) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT ))) ;) })) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT ))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) 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 (assignment_expression IDENT = 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 = (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 = (pointer_expression * 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 = IDENT) ;) (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 = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))) ) (pointer_expression & IDENT))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression & IDENT)) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , IDENT , IDENT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (pointer_expression & IDENT))) ;) (expression_statement (assignment_expression (pointer_expression * IDENT) = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) LIT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , IDENT , IDENT )))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator * (abstract_pointer_declarator *)))) ) IDENT)) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * IDENT) = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) IDENT)) ;) })) })) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) }))) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (pointer_expression * IDENT)) )) (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 (assignment_expression IDENT = IDENT) ;) (expression_statement (call_expression (parenthesized_expression ( (pointer_expression * IDENT) )) (argument_list ( ))) ;) (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 = (pointer_expression * IDENT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) IDENT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) IDENT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) IDENT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , (pointer_expression & IDENT) , (pointer_expression & IDENT) )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * IDENT) = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) LIT)) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , IDENT , IDENT , IDENT , (pointer_expression & IDENT) )))) ;) (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) IDENT) == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) }) (else_clause else (if_statement if (parenthesized_expression ( (binary_expression (binary_expression IDENT == LIT) && (binary_expression (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) IDENT) == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) LIT))) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression (pointer_expression * IDENT) = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) IDENT)) ;) }))))) })) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) }))) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (pointer_expression * IDENT)) )) (compound_statement { (return_statement return 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 ( ))) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT != LIT) )) && (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) == LIT) ))) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) != LIT) )) (compound_statement { (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 )))) ;) (return_statement return IDENT ;) })) (return_statement return LIT ;) })) (return_statement return LIT ;) })))
(function_definition "int curl_easy_pause(int param_1,uint param_2,int ***param_3,int ***param_4)\n\n{\n  undefined *puVar1;\n  int iVar2;\n  undefined4 *puVar3;\n  int ***pppiVar4;\n  int ***pppiVar5;\n  int ***pppiVar6;\n  int ***pppiVar7;\n  int *piVar8;\n  int iVar9;\n  undefined4 *unaff_s4;\n  int *piVar10;\n  int iVar11;\n  undefined *puVar12;\n  code *pcVar13;\n  code *pcVar14;\n  undefined4 uStack_e0;\n  int *piStack_dc;\n  undefined4 uStack_d8;\n  int iStack_d4;\n  int *piStack_d0;\n  int **ppiStack_cc;\n  int **ppiStack_c8;\n  int **ppiStack_c4;\n  int iStack_c0;\n  code *pcStack_bc;\n  int *piStack_a8;\n  undefined *puStack_a0;\n  int **ppiStack_98;\n  int *piStack_94;\n  int *piStack_90;\n  int iStack_8c;\n  int **ppiStack_88;\n  undefined *puStack_84;\n  int iStack_80;\n  int iStack_7c;\n  undefined4 *puStack_78;\n  code *pcStack_74;\n  int local_58;\n  undefined4 local_50 [9];\n  int local_2c;\n  \n  puVar1 = PTR___stack_chk_guard_000a6fe0;\n  pppiVar5 = (int ***)((param_2 & 1) << 4 | (param_2 & 4) << 3);\n  pppiVar7 = (int ***)((uint)pppiVar5 | *(uint *)(param_1 + 0x138) & 0xffffffcf);\n  *(int ****)(param_1 + 0x138) = pppiVar7;\n  local_2c = *(int *)puVar1;\n  pppiVar6 = pppiVar5;\n  if (((param_2 & 1) == 0) && (iVar11 = *(int *)(param_1 + 0xcbc), iVar11 != 0)) {\n    piVar10 = *(int **)(param_1 + 8);\n    unaff_s4 = local_50;\n    iVar9 = param_1;\n    puVar3 = unaff_s4;\n    do {\n      param_4 = *(int ****)(iVar9 + 0xcc0);\n      iVar2 = iVar9 + 0xc;\n      *(undefined4 *)(iVar9 + 0xcc0) = 0;\n      *puVar3 = param_4;\n      param_3 = *(int ****)(iVar9 + 0xcc4);\n      pppiVar6 = *(int ****)(iVar9 + 0xcc8);\n      puVar3[1] = param_3;\n      puVar3[2] = pppiVar6;\n      iVar9 = iVar2;\n      puVar3 = puVar3 + 3;\n    } while (iVar2 != iVar11 * 0xc + param_1);\n    local_58 = *piVar10;\n    *(undefined4 *)(param_1 + 0xcbc) = 0;\n    if (local_58 == param_1) {\n      local_58 = 0;\n    }\n    else {\n      *piVar10 = param_1;\n    }\n    puVar12 = PTR_PTR_free_000a6144;\n    iVar2 = 0;\n    iVar9 = 0;\n    do {\n      pppiVar4 = (int ***)*unaff_s4;\n      if (iVar9 == 0) {\n        param_4 = (int ***)unaff_s4[1];\n        pppiVar6 = (int ***)unaff_s4[2];\n        param_3 = pppiVar4;\n        iVar9 = FUN_000266b0(piVar10);\n      }\n      iVar2 = iVar2 + 1;\n      unaff_s4 = unaff_s4 + 3;\n      (**(code **)puVar12)(pppiVar4);\n    } while (iVar11 != iVar2);\n    if (local_58 != 0) {\n      *piVar10 = local_58;\n    }\n    ppiStack_88 = (int **)pppiVar7;\n    if (iVar9 != 0) goto LAB_0003d0fc;\n  }\n  if (pppiVar5 != (int ***)0x30) {\n    param_3 = (int ***)0x6;\n    pppiVar6 = (int ***)0x0;\n    FUN_00044d9c(param_1);\n  }\n  iVar9 = 0;\n  FUN_000449a8(param_1);\n  ppiStack_88 = (int **)pppiVar5;\nLAB_0003d0fc:\n  if (local_2c == *(int *)puVar1) {\n    return iVar9;\n  }\n  pcVar13 = curl_easy_recv;\n  iVar11 = local_2c;\n  puVar12 = PTR___stack_chk_fail_000a6c54;\n  (*(code *)PTR___stack_chk_fail_000a6c54)();\n  puStack_a0 = puVar12 + 0x70f80;\n  piVar10 = *(int **)(puVar12 + 0x69e50);\n  puStack_84 = puVar1;\n  iStack_8c = *piVar10;\n  pppiVar5 = pppiVar6;\n  pppiVar7 = param_3;\n  pppiVar4 = param_4;\n  iStack_80 = param_1;\n  iStack_7c = iVar9;\n  puStack_78 = unaff_s4;\n  pcStack_74 = pcVar13;\n  iVar9 = FUN_00048420();\n  if (iVar9 == 0) {\n    pppiVar7 = (int ***)&piStack_90;\n    pppiVar5 = &ppiStack_98;\n    iVar9 = FUN_0003c4e4(iVar11,pppiVar5,pppiVar7);\n    if (iVar9 == 0) {\n      piStack_a8 = (int *)&piStack_94;\n      *param_4 = (int **)0x0;\n      pppiVar7 = pppiVar6;\n      pppiVar4 = param_3;\n      iVar9 = FUN_00025e14(piStack_90,ppiStack_98,pppiVar6);\n      pppiVar5 = (int ***)ppiStack_98;\n      if (iVar9 == 0) {\n        *param_4 = (int **)piStack_94;\n      }\n    }\n  }\n  else {\n    iVar9 = 0x5d;\n  }\n  if (iStack_8c == *piVar10) {\n    return iVar9;\n  }\n  pcVar13 = *(code **)(puStack_a0 + -0x74bc);\n  pcVar14 = curl_easy_send;\n  iVar9 = iStack_8c;\n  (*pcVar13)();\n  piVar8 = *(int **)(pcVar13 + 0x69d5c);\n  uStack_d8 = 0;\n  iStack_d4 = *piVar8;\n  piStack_d0 = piVar10;\n  ppiStack_cc = (int **)param_4;\n  ppiStack_c8 = (int **)pppiVar6;\n  ppiStack_c4 = (int **)param_3;\n  iStack_c0 = iVar11;\n  pcStack_bc = pcVar14;\n  iVar11 = FUN_00048420();\n  if (iVar11 == 0) {\n    iVar11 = FUN_0003c4e4(iVar9,&uStack_e0,&uStack_d8);\n    if (iVar11 == 0) {\n      *pppiVar4 = (int **)0x0;\n      iVar11 = FUN_00025cb8(uStack_d8,uStack_e0,pppiVar5,pppiVar7,&piStack_dc);\n      if ((int **)piStack_dc == (int **)0xffffffff) {\n        iVar11 = 0x37;\n      }\n      else if (iVar11 == 0 && (int **)piStack_dc == (int **)0x0) {\n        iVar11 = 0x51;\n      }\n      else {\n        *pppiVar4 = (int **)piStack_dc;\n      }\n    }\n  }\n  else {\n    iVar11 = 0x5d;\n  }\n  if (iStack_d4 == *piVar8) {\n    return iVar11;\n  }\n  iVar11 = iStack_d4;\n  (**(code **)(pcVar13 + 0x699d0))();\n  if ((iVar11 != 0) && (*(int *)(iVar11 + 0x1030) == -0x3f212453)) {\n    if (*(int *)(iVar11 + 0x88) != 0) {\n      iVar11 = FUN_00033390(*(int *)(iVar11 + 0x88) + 0x8c,iVar11);\n      return iVar11;\n    }\n    return 0;\n  }\n  return 0x2b;\n}" (primitive_type "int") (function_declarator "curl_easy_pause(int param_1,uint param_2,int ***param_3,int ***param_4)" (identifier "curl_easy_pause") (parameter_list "(int param_1,uint param_2,int ***param_3,int ***param_4)" (( "(") (parameter_declaration "int param_1" (primitive_type "int") (identifier "param_1")) (, ",") (parameter_declaration "uint param_2" (type_identifier "uint") (identifier "param_2")) (, ",") (parameter_declaration "int ***param_3" (primitive_type "int") (pointer_declarator "***param_3" (* "*") (pointer_declarator "**param_3" (* "*") (pointer_declarator "*param_3" (* "*") (identifier "param_3"))))) (, ",") (parameter_declaration "int ***param_4" (primitive_type "int") (pointer_declarator "***param_4" (* "*") (pointer_declarator "**param_4" (* "*") (pointer_declarator "*param_4" (* "*") (identifier "param_4"))))) () ")"))) (compound_statement "{\n  undefined *puVar1;\n  int iVar2;\n  undefined4 *puVar3;\n  int ***pppiVar4;\n  int ***pppiVar5;\n  int ***pppiVar6;\n  int ***pppiVar7;\n  int *piVar8;\n  int iVar9;\n  undefined4 *unaff_s4;\n  int *piVar10;\n  int iVar11;\n  undefined *puVar12;\n  code *pcVar13;\n  code *pcVar14;\n  undefined4 uStack_e0;\n  int *piStack_dc;\n  undefined4 uStack_d8;\n  int iStack_d4;\n  int *piStack_d0;\n  int **ppiStack_cc;\n  int **ppiStack_c8;\n  int **ppiStack_c4;\n  int iStack_c0;\n  code *pcStack_bc;\n  int *piStack_a8;\n  undefined *puStack_a0;\n  int **ppiStack_98;\n  int *piStack_94;\n  int *piStack_90;\n  int iStack_8c;\n  int **ppiStack_88;\n  undefined *puStack_84;\n  int iStack_80;\n  int iStack_7c;\n  undefined4 *puStack_78;\n  code *pcStack_74;\n  int local_58;\n  undefined4 local_50 [9];\n  int local_2c;\n  \n  puVar1 = PTR___stack_chk_guard_000a6fe0;\n  pppiVar5 = (int ***)((param_2 & 1) << 4 | (param_2 & 4) << 3);\n  pppiVar7 = (int ***)((uint)pppiVar5 | *(uint *)(param_1 + 0x138) & 0xffffffcf);\n  *(int ****)(param_1 + 0x138) = pppiVar7;\n  local_2c = *(int *)puVar1;\n  pppiVar6 = pppiVar5;\n  if (((param_2 & 1) == 0) && (iVar11 = *(int *)(param_1 + 0xcbc), iVar11 != 0)) {\n    piVar10 = *(int **)(param_1 + 8);\n    unaff_s4 = local_50;\n    iVar9 = param_1;\n    puVar3 = unaff_s4;\n    do {\n      param_4 = *(int ****)(iVar9 + 0xcc0);\n      iVar2 = iVar9 + 0xc;\n      *(undefined4 *)(iVar9 + 0xcc0) = 0;\n      *puVar3 = param_4;\n      param_3 = *(int ****)(iVar9 + 0xcc4);\n      pppiVar6 = *(int ****)(iVar9 + 0xcc8);\n      puVar3[1] = param_3;\n      puVar3[2] = pppiVar6;\n      iVar9 = iVar2;\n      puVar3 = puVar3 + 3;\n    } while (iVar2 != iVar11 * 0xc + param_1);\n    local_58 = *piVar10;\n    *(undefined4 *)(param_1 + 0xcbc) = 0;\n    if (local_58 == param_1) {\n      local_58 = 0;\n    }\n    else {\n      *piVar10 = param_1;\n    }\n    puVar12 = PTR_PTR_free_000a6144;\n    iVar2 = 0;\n    iVar9 = 0;\n    do {\n      pppiVar4 = (int ***)*unaff_s4;\n      if (iVar9 == 0) {\n        param_4 = (int ***)unaff_s4[1];\n        pppiVar6 = (int ***)unaff_s4[2];\n        param_3 = pppiVar4;\n        iVar9 = FUN_000266b0(piVar10);\n      }\n      iVar2 = iVar2 + 1;\n      unaff_s4 = unaff_s4 + 3;\n      (**(code **)puVar12)(pppiVar4);\n    } while (iVar11 != iVar2);\n    if (local_58 != 0) {\n      *piVar10 = local_58;\n    }\n    ppiStack_88 = (int **)pppiVar7;\n    if (iVar9 != 0) goto LAB_0003d0fc;\n  }\n  if (pppiVar5 != (int ***)0x30) {\n    param_3 = (int ***)0x6;\n    pppiVar6 = (int ***)0x0;\n    FUN_00044d9c(param_1);\n  }\n  iVar9 = 0;\n  FUN_000449a8(param_1);\n  ppiStack_88 = (int **)pppiVar5;\nLAB_0003d0fc:\n  if (local_2c == *(int *)puVar1) {\n    return iVar9;\n  }\n  pcVar13 = curl_easy_recv;\n  iVar11 = local_2c;\n  puVar12 = PTR___stack_chk_fail_000a6c54;\n  (*(code *)PTR___stack_chk_fail_000a6c54)();\n  puStack_a0 = puVar12 + 0x70f80;\n  piVar10 = *(int **)(puVar12 + 0x69e50);\n  puStack_84 = puVar1;\n  iStack_8c = *piVar10;\n  pppiVar5 = pppiVar6;\n  pppiVar7 = param_3;\n  pppiVar4 = param_4;\n  iStack_80 = param_1;\n  iStack_7c = iVar9;\n  puStack_78 = unaff_s4;\n  pcStack_74 = pcVar13;\n  iVar9 = FUN_00048420();\n  if (iVar9 == 0) {\n    pppiVar7 = (int ***)&piStack_90;\n    pppiVar5 = &ppiStack_98;\n    iVar9 = FUN_0003c4e4(iVar11,pppiVar5,pppiVar7);\n    if (iVar9 == 0) {\n      piStack_a8 = (int *)&piStack_94;\n      *param_4 = (int **)0x0;\n      pppiVar7 = pppiVar6;\n      pppiVar4 = param_3;\n      iVar9 = FUN_00025e14(piStack_90,ppiStack_98,pppiVar6);\n      pppiVar5 = (int ***)ppiStack_98;\n      if (iVar9 == 0) {\n        *param_4 = (int **)piStack_94;\n      }\n    }\n  }\n  else {\n    iVar9 = 0x5d;\n  }\n  if (iStack_8c == *piVar10) {\n    return iVar9;\n  }\n  pcVar13 = *(code **)(puStack_a0 + -0x74bc);\n  pcVar14 = curl_easy_send;\n  iVar9 = iStack_8c;\n  (*pcVar13)();\n  piVar8 = *(int **)(pcVar13 + 0x69d5c);\n  uStack_d8 = 0;\n  iStack_d4 = *piVar8;\n  piStack_d0 = piVar10;\n  ppiStack_cc = (int **)param_4;\n  ppiStack_c8 = (int **)pppiVar6;\n  ppiStack_c4 = (int **)param_3;\n  iStack_c0 = iVar11;\n  pcStack_bc = pcVar14;\n  iVar11 = FUN_00048420();\n  if (iVar11 == 0) {\n    iVar11 = FUN_0003c4e4(iVar9,&uStack_e0,&uStack_d8);\n    if (iVar11 == 0) {\n      *pppiVar4 = (int **)0x0;\n      iVar11 = FUN_00025cb8(uStack_d8,uStack_e0,pppiVar5,pppiVar7,&piStack_dc);\n      if ((int **)piStack_dc == (int **)0xffffffff) {\n        iVar11 = 0x37;\n      }\n      else if (iVar11 == 0 && (int **)piStack_dc == (int **)0x0) {\n        iVar11 = 0x51;\n      }\n      else {\n        *pppiVar4 = (int **)piStack_dc;\n      }\n    }\n  }\n  else {\n    iVar11 = 0x5d;\n  }\n  if (iStack_d4 == *piVar8) {\n    return iVar11;\n  }\n  iVar11 = iStack_d4;\n  (**(code **)(pcVar13 + 0x699d0))();\n  if ((iVar11 != 0) && (*(int *)(iVar11 + 0x1030) == -0x3f212453)) {\n    if (*(int *)(iVar11 + 0x88) != 0) {\n      iVar11 = FUN_00033390(*(int *)(iVar11 + 0x88) + 0x8c,iVar11);\n      return iVar11;\n    }\n    return 0;\n  }\n  return 0x2b;\n}" ({ "{") (declaration "undefined *puVar1;" (type_identifier "undefined") (pointer_declarator "*puVar1" (* "*") (identifier "puVar1")) (; ";")) (declaration "int iVar2;" (primitive_type "int") (identifier "iVar2") (; ";")) (declaration "undefined4 *puVar3;" (type_identifier "undefined4") (pointer_declarator "*puVar3" (* "*") (identifier "puVar3")) (; ";")) (declaration "int ***pppiVar4;" (primitive_type "int") (pointer_declarator "***pppiVar4" (* "*") (pointer_declarator "**pppiVar4" (* "*") (pointer_declarator "*pppiVar4" (* "*") (identifier "pppiVar4")))) (; ";")) (declaration "int ***pppiVar5;" (primitive_type "int") (pointer_declarator "***pppiVar5" (* "*") (pointer_declarator "**pppiVar5" (* "*") (pointer_declarator "*pppiVar5" (* "*") (identifier "pppiVar5")))) (; ";")) (declaration "int ***pppiVar6;" (primitive_type "int") (pointer_declarator "***pppiVar6" (* "*") (pointer_declarator "**pppiVar6" (* "*") (pointer_declarator "*pppiVar6" (* "*") (identifier "pppiVar6")))) (; ";")) (declaration "int ***pppiVar7;" (primitive_type "int") (pointer_declarator "***pppiVar7" (* "*") (pointer_declarator "**pppiVar7" (* "*") (pointer_declarator "*pppiVar7" (* "*") (identifier "pppiVar7")))) (; ";")) (declaration "int *piVar8;" (primitive_type "int") (pointer_declarator "*piVar8" (* "*") (identifier "piVar8")) (; ";")) (declaration "int iVar9;" (primitive_type "int") (identifier "iVar9") (; ";")) (declaration "undefined4 *unaff_s4;" (type_identifier "undefined4") (pointer_declarator "*unaff_s4" (* "*") (identifier "unaff_s4")) (; ";")) (declaration "int *piVar10;" (primitive_type "int") (pointer_declarator "*piVar10" (* "*") (identifier "piVar10")) (; ";")) (declaration "int iVar11;" (primitive_type "int") (identifier "iVar11") (; ";")) (declaration "undefined *puVar12;" (type_identifier "undefined") (pointer_declarator "*puVar12" (* "*") (identifier "puVar12")) (; ";")) (declaration "code *pcVar13;" (type_identifier "code") (pointer_declarator "*pcVar13" (* "*") (identifier "pcVar13")) (; ";")) (declaration "code *pcVar14;" (type_identifier "code") (pointer_declarator "*pcVar14" (* "*") (identifier "pcVar14")) (; ";")) (declaration "undefined4 uStack_e0;" (type_identifier "undefined4") (identifier "uStack_e0") (; ";")) (declaration "int *piStack_dc;" (primitive_type "int") (pointer_declarator "*piStack_dc" (* "*") (identifier "piStack_dc")) (; ";")) (declaration "undefined4 uStack_d8;" (type_identifier "undefined4") (identifier "uStack_d8") (; ";")) (declaration "int iStack_d4;" (primitive_type "int") (identifier "iStack_d4") (; ";")) (declaration "int *piStack_d0;" (primitive_type "int") (pointer_declarator "*piStack_d0" (* "*") (identifier "piStack_d0")) (; ";")) (declaration "int **ppiStack_cc;" (primitive_type "int") (pointer_declarator "**ppiStack_cc" (* "*") (pointer_declarator "*ppiStack_cc" (* "*") (identifier "ppiStack_cc"))) (; ";")) (declaration "int **ppiStack_c8;" (primitive_type "int") (pointer_declarator "**ppiStack_c8" (* "*") (pointer_declarator "*ppiStack_c8" (* "*") (identifier "ppiStack_c8"))) (; ";")) (declaration "int **ppiStack_c4;" (primitive_type "int") (pointer_declarator "**ppiStack_c4" (* "*") (pointer_declarator "*ppiStack_c4" (* "*") (identifier "ppiStack_c4"))) (; ";")) (declaration "int iStack_c0;" (primitive_type "int") (identifier "iStack_c0") (; ";")) (declaration "code *pcStack_bc;" (type_identifier "code") (pointer_declarator "*pcStack_bc" (* "*") (identifier "pcStack_bc")) (; ";")) (declaration "int *piStack_a8;" (primitive_type "int") (pointer_declarator "*piStack_a8" (* "*") (identifier "piStack_a8")) (; ";")) (declaration "undefined *puStack_a0;" (type_identifier "undefined") (pointer_declarator "*puStack_a0" (* "*") (identifier "puStack_a0")) (; ";")) (declaration "int **ppiStack_98;" (primitive_type "int") (pointer_declarator "**ppiStack_98" (* "*") (pointer_declarator "*ppiStack_98" (* "*") (identifier "ppiStack_98"))) (; ";")) (declaration "int *piStack_94;" (primitive_type "int") (pointer_declarator "*piStack_94" (* "*") (identifier "piStack_94")) (; ";")) (declaration "int *piStack_90;" (primitive_type "int") (pointer_declarator "*piStack_90" (* "*") (identifier "piStack_90")) (; ";")) (declaration "int iStack_8c;" (primitive_type "int") (identifier "iStack_8c") (; ";")) (declaration "int **ppiStack_88;" (primitive_type "int") (pointer_declarator "**ppiStack_88" (* "*") (pointer_declarator "*ppiStack_88" (* "*") (identifier "ppiStack_88"))) (; ";")) (declaration "undefined *puStack_84;" (type_identifier "undefined") (pointer_declarator "*puStack_84" (* "*") (identifier "puStack_84")) (; ";")) (declaration "int iStack_80;" (primitive_type "int") (identifier "iStack_80") (; ";")) (declaration "int iStack_7c;" (primitive_type "int") (identifier "iStack_7c") (; ";")) (declaration "undefined4 *puStack_78;" (type_identifier "undefined4") (pointer_declarator "*puStack_78" (* "*") (identifier "puStack_78")) (; ";")) (declaration "code *pcStack_74;" (type_identifier "code") (pointer_declarator "*pcStack_74" (* "*") (identifier "pcStack_74")) (; ";")) (declaration "int local_58;" (primitive_type "int") (identifier "local_58") (; ";")) (declaration "undefined4 local_50 [9];" (type_identifier "undefined4") (array_declarator "local_50 [9]" (identifier "local_50") ([ "[") (number_literal "9") (] "]")) (; ";")) (declaration "int local_2c;" (primitive_type "int") (identifier "local_2c") (; ";")) (expression_statement "puVar1 = PTR___stack_chk_guard_000a6fe0;" (assignment_expression "puVar1 = PTR___stack_chk_guard_000a6fe0" (identifier "puVar1") (= "=") (identifier "PTR___stack_chk_guard_000a6fe0")) (; ";")) (expression_statement "pppiVar5 = (int ***)((param_2 & 1) << 4 | (param_2 & 4) << 3);" (assignment_expression "pppiVar5 = (int ***)((param_2 & 1) << 4 | (param_2 & 4) << 3)" (identifier "pppiVar5") (= "=") (cast_expression "(int ***)((param_2 & 1) << 4 | (param_2 & 4) << 3)" (( "(") (type_descriptor "int ***" (primitive_type "int") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))) () ")") (parenthesized_expression "((param_2 & 1) << 4 | (param_2 & 4) << 3)" (( "(") (binary_expression "(param_2 & 1) << 4 | (param_2 & 4) << 3" (binary_expression "(param_2 & 1) << 4" (parenthesized_expression "(param_2 & 1)" (( "(") (binary_expression "param_2 & 1" (identifier "param_2") (& "&") (number_literal "1")) () ")")) (<< "<<") (number_literal "4")) (| "|") (binary_expression "(param_2 & 4) << 3" (parenthesized_expression "(param_2 & 4)" (( "(") (binary_expression "param_2 & 4" (identifier "param_2") (& "&") (number_literal "4")) () ")")) (<< "<<") (number_literal "3"))) () ")")))) (; ";")) (expression_statement "pppiVar7 = (int ***)((uint)pppiVar5 | *(uint *)(param_1 + 0x138) & 0xffffffcf);" (assignment_expression "pppiVar7 = (int ***)((uint)pppiVar5 | *(uint *)(param_1 + 0x138) & 0xffffffcf)" (identifier "pppiVar7") (= "=") (cast_expression "(int ***)((uint)pppiVar5 | *(uint *)(param_1 + 0x138) & 0xffffffcf)" (( "(") (type_descriptor "int ***" (primitive_type "int") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))) () ")") (parenthesized_expression "((uint)pppiVar5 | *(uint *)(param_1 + 0x138) & 0xffffffcf)" (( "(") (binary_expression "(uint)pppiVar5 | *(uint *)(param_1 + 0x138) & 0xffffffcf" (cast_expression "(uint)pppiVar5" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "pppiVar5")) (| "|") (binary_expression "*(uint *)(param_1 + 0x138) & 0xffffffcf" (pointer_expression "*(uint *)(param_1 + 0x138)" (* "*") (cast_expression "(uint *)(param_1 + 0x138)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x138)" (( "(") (binary_expression "param_1 + 0x138" (identifier "param_1") (+ "+") (number_literal "0x138")) () ")")))) (& "&") (number_literal "0xffffffcf"))) () ")")))) (; ";")) (expression_statement "*(int ****)(param_1 + 0x138) = pppiVar7;" (assignment_expression "*(int ****)(param_1 + 0x138) = pppiVar7" (pointer_expression "*(int ****)(param_1 + 0x138)" (* "*") (cast_expression "(int ****)(param_1 + 0x138)" (( "(") (type_descriptor "int ****" (primitive_type "int") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))) () ")") (parenthesized_expression "(param_1 + 0x138)" (( "(") (binary_expression "param_1 + 0x138" (identifier "param_1") (+ "+") (number_literal "0x138")) () ")")))) (= "=") (identifier "pppiVar7")) (; ";")) (expression_statement "local_2c = *(int *)puVar1;" (assignment_expression "local_2c = *(int *)puVar1" (identifier "local_2c") (= "=") (pointer_expression "*(int *)puVar1" (* "*") (cast_expression "(int *)puVar1" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "puVar1")))) (; ";")) (expression_statement "pppiVar6 = pppiVar5;" (assignment_expression "pppiVar6 = pppiVar5" (identifier "pppiVar6") (= "=") (identifier "pppiVar5")) (; ";")) (if_statement "if (((param_2 & 1) == 0) && (iVar11 = *(int *)(param_1 + 0xcbc), iVar11 != 0)) {\n    piVar10 = *(int **)(param_1 + 8);\n    unaff_s4 = local_50;\n    iVar9 = param_1;\n    puVar3 = unaff_s4;\n    do {\n      param_4 = *(int ****)(iVar9 + 0xcc0);\n      iVar2 = iVar9 + 0xc;\n      *(undefined4 *)(iVar9 + 0xcc0) = 0;\n      *puVar3 = param_4;\n      param_3 = *(int ****)(iVar9 + 0xcc4);\n      pppiVar6 = *(int ****)(iVar9 + 0xcc8);\n      puVar3[1] = param_3;\n      puVar3[2] = pppiVar6;\n      iVar9 = iVar2;\n      puVar3 = puVar3 + 3;\n    } while (iVar2 != iVar11 * 0xc + param_1);\n    local_58 = *piVar10;\n    *(undefined4 *)(param_1 + 0xcbc) = 0;\n    if (local_58 == param_1) {\n      local_58 = 0;\n    }\n    else {\n      *piVar10 = param_1;\n    }\n    puVar12 = PTR_PTR_free_000a6144;\n    iVar2 = 0;\n    iVar9 = 0;\n    do {\n      pppiVar4 = (int ***)*unaff_s4;\n      if (iVar9 == 0) {\n        param_4 = (int ***)unaff_s4[1];\n        pppiVar6 = (int ***)unaff_s4[2];\n        param_3 = pppiVar4;\n        iVar9 = FUN_000266b0(piVar10);\n      }\n      iVar2 = iVar2 + 1;\n      unaff_s4 = unaff_s4 + 3;\n      (**(code **)puVar12)(pppiVar4);\n    } while (iVar11 != iVar2);\n    if (local_58 != 0) {\n      *piVar10 = local_58;\n    }\n    ppiStack_88 = (int **)pppiVar7;\n    if (iVar9 != 0) goto LAB_0003d0fc;\n  }" (if "if") (parenthesized_expression "(((param_2 & 1) == 0) && (iVar11 = *(int *)(param_1 + 0xcbc), iVar11 != 0))" (( "(") (binary_expression "((param_2 & 1) == 0) && (iVar11 = *(int *)(param_1 + 0xcbc), iVar11 != 0)" (parenthesized_expression "((param_2 & 1) == 0)" (( "(") (binary_expression "(param_2 & 1) == 0" (parenthesized_expression "(param_2 & 1)" (( "(") (binary_expression "param_2 & 1" (identifier "param_2") (& "&") (number_literal "1")) () ")")) (== "==") (number_literal "0")) () ")")) (&& "&&") (parenthesized_expression "(iVar11 = *(int *)(param_1 + 0xcbc), iVar11 != 0)" (( "(") (comma_expression "iVar11 = *(int *)(param_1 + 0xcbc), iVar11 != 0" (assignment_expression "iVar11 = *(int *)(param_1 + 0xcbc)" (identifier "iVar11") (= "=") (pointer_expression "*(int *)(param_1 + 0xcbc)" (* "*") (cast_expression "(int *)(param_1 + 0xcbc)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0xcbc)" (( "(") (binary_expression "param_1 + 0xcbc" (identifier "param_1") (+ "+") (number_literal "0xcbc")) () ")"))))) (, ",") (binary_expression "iVar11 != 0" (identifier "iVar11") (!= "!=") (number_literal "0"))) () ")"))) () ")")) (compound_statement "{\n    piVar10 = *(int **)(param_1 + 8);\n    unaff_s4 = local_50;\n    iVar9 = param_1;\n    puVar3 = unaff_s4;\n    do {\n      param_4 = *(int ****)(iVar9 + 0xcc0);\n      iVar2 = iVar9 + 0xc;\n      *(undefined4 *)(iVar9 + 0xcc0) = 0;\n      *puVar3 = param_4;\n      param_3 = *(int ****)(iVar9 + 0xcc4);\n      pppiVar6 = *(int ****)(iVar9 + 0xcc8);\n      puVar3[1] = param_3;\n      puVar3[2] = pppiVar6;\n      iVar9 = iVar2;\n      puVar3 = puVar3 + 3;\n    } while (iVar2 != iVar11 * 0xc + param_1);\n    local_58 = *piVar10;\n    *(undefined4 *)(param_1 + 0xcbc) = 0;\n    if (local_58 == param_1) {\n      local_58 = 0;\n    }\n    else {\n      *piVar10 = param_1;\n    }\n    puVar12 = PTR_PTR_free_000a6144;\n    iVar2 = 0;\n    iVar9 = 0;\n    do {\n      pppiVar4 = (int ***)*unaff_s4;\n      if (iVar9 == 0) {\n        param_4 = (int ***)unaff_s4[1];\n        pppiVar6 = (int ***)unaff_s4[2];\n        param_3 = pppiVar4;\n        iVar9 = FUN_000266b0(piVar10);\n      }\n      iVar2 = iVar2 + 1;\n      unaff_s4 = unaff_s4 + 3;\n      (**(code **)puVar12)(pppiVar4);\n    } while (iVar11 != iVar2);\n    if (local_58 != 0) {\n      *piVar10 = local_58;\n    }\n    ppiStack_88 = (int **)pppiVar7;\n    if (iVar9 != 0) goto LAB_0003d0fc;\n  }" ({ "{") (expression_statement "piVar10 = *(int **)(param_1 + 8);" (assignment_expression "piVar10 = *(int **)(param_1 + 8)" (identifier "piVar10") (= "=") (pointer_expression "*(int **)(param_1 + 8)" (* "*") (cast_expression "(int **)(param_1 + 8)" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(param_1 + 8)" (( "(") (binary_expression "param_1 + 8" (identifier "param_1") (+ "+") (number_literal "8")) () ")"))))) (; ";")) (expression_statement "unaff_s4 = local_50;" (assignment_expression "unaff_s4 = local_50" (identifier "unaff_s4") (= "=") (identifier "local_50")) (; ";")) (expression_statement "iVar9 = param_1;" (assignment_expression "iVar9 = param_1" (identifier "iVar9") (= "=") (identifier "param_1")) (; ";")) (expression_statement "puVar3 = unaff_s4;" (assignment_expression "puVar3 = unaff_s4" (identifier "puVar3") (= "=") (identifier "unaff_s4")) (; ";")) (do_statement "do {\n      param_4 = *(int ****)(iVar9 + 0xcc0);\n      iVar2 = iVar9 + 0xc;\n      *(undefined4 *)(iVar9 + 0xcc0) = 0;\n      *puVar3 = param_4;\n      param_3 = *(int ****)(iVar9 + 0xcc4);\n      pppiVar6 = *(int ****)(iVar9 + 0xcc8);\n      puVar3[1] = param_3;\n      puVar3[2] = pppiVar6;\n      iVar9 = iVar2;\n      puVar3 = puVar3 + 3;\n    } while (iVar2 != iVar11 * 0xc + param_1);" (do "do") (compound_statement "{\n      param_4 = *(int ****)(iVar9 + 0xcc0);\n      iVar2 = iVar9 + 0xc;\n      *(undefined4 *)(iVar9 + 0xcc0) = 0;\n      *puVar3 = param_4;\n      param_3 = *(int ****)(iVar9 + 0xcc4);\n      pppiVar6 = *(int ****)(iVar9 + 0xcc8);\n      puVar3[1] = param_3;\n      puVar3[2] = pppiVar6;\n      iVar9 = iVar2;\n      puVar3 = puVar3 + 3;\n    }" ({ "{") (expression_statement "param_4 = *(int ****)(iVar9 + 0xcc0);" (assignment_expression "param_4 = *(int ****)(iVar9 + 0xcc0)" (identifier "param_4") (= "=") (pointer_expression "*(int ****)(iVar9 + 0xcc0)" (* "*") (cast_expression "(int ****)(iVar9 + 0xcc0)" (( "(") (type_descriptor "int ****" (primitive_type "int") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))) () ")") (parenthesized_expression "(iVar9 + 0xcc0)" (( "(") (binary_expression "iVar9 + 0xcc0" (identifier "iVar9") (+ "+") (number_literal "0xcc0")) () ")"))))) (; ";")) (expression_statement "iVar2 = iVar9 + 0xc;" (assignment_expression "iVar2 = iVar9 + 0xc" (identifier "iVar2") (= "=") (binary_expression "iVar9 + 0xc" (identifier "iVar9") (+ "+") (number_literal "0xc"))) (; ";")) (expression_statement "*(undefined4 *)(iVar9 + 0xcc0) = 0;" (assignment_expression "*(undefined4 *)(iVar9 + 0xcc0) = 0" (pointer_expression "*(undefined4 *)(iVar9 + 0xcc0)" (* "*") (cast_expression "(undefined4 *)(iVar9 + 0xcc0)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar9 + 0xcc0)" (( "(") (binary_expression "iVar9 + 0xcc0" (identifier "iVar9") (+ "+") (number_literal "0xcc0")) () ")")))) (= "=") (number_literal "0")) (; ";")) (expression_statement "*puVar3 = param_4;" (assignment_expression "*puVar3 = param_4" (pointer_expression "*puVar3" (* "*") (identifier "puVar3")) (= "=") (identifier "param_4")) (; ";")) (expression_statement "param_3 = *(int ****)(iVar9 + 0xcc4);" (assignment_expression "param_3 = *(int ****)(iVar9 + 0xcc4)" (identifier "param_3") (= "=") (pointer_expression "*(int ****)(iVar9 + 0xcc4)" (* "*") (cast_expression "(int ****)(iVar9 + 0xcc4)" (( "(") (type_descriptor "int ****" (primitive_type "int") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))) () ")") (parenthesized_expression "(iVar9 + 0xcc4)" (( "(") (binary_expression "iVar9 + 0xcc4" (identifier "iVar9") (+ "+") (number_literal "0xcc4")) () ")"))))) (; ";")) (expression_statement "pppiVar6 = *(int ****)(iVar9 + 0xcc8);" (assignment_expression "pppiVar6 = *(int ****)(iVar9 + 0xcc8)" (identifier "pppiVar6") (= "=") (pointer_expression "*(int ****)(iVar9 + 0xcc8)" (* "*") (cast_expression "(int ****)(iVar9 + 0xcc8)" (( "(") (type_descriptor "int ****" (primitive_type "int") (abstract_pointer_declarator "****" (* "*") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))))) () ")") (parenthesized_expression "(iVar9 + 0xcc8)" (( "(") (binary_expression "iVar9 + 0xcc8" (identifier "iVar9") (+ "+") (number_literal "0xcc8")) () ")"))))) (; ";")) (expression_statement "puVar3[1] = param_3;" (assignment_expression "puVar3[1] = param_3" (subscript_expression "puVar3[1]" (identifier "puVar3") ([ "[") (number_literal "1") (] "]")) (= "=") (identifier "param_3")) (; ";")) (expression_statement "puVar3[2] = pppiVar6;" (assignment_expression "puVar3[2] = pppiVar6" (subscript_expression "puVar3[2]" (identifier "puVar3") ([ "[") (number_literal "2") (] "]")) (= "=") (identifier "pppiVar6")) (; ";")) (expression_statement "iVar9 = iVar2;" (assignment_expression "iVar9 = iVar2" (identifier "iVar9") (= "=") (identifier "iVar2")) (; ";")) (expression_statement "puVar3 = puVar3 + 3;" (assignment_expression "puVar3 = puVar3 + 3" (identifier "puVar3") (= "=") (binary_expression "puVar3 + 3" (identifier "puVar3") (+ "+") (number_literal "3"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(iVar2 != iVar11 * 0xc + param_1)" (( "(") (binary_expression "iVar2 != iVar11 * 0xc + param_1" (identifier "iVar2") (!= "!=") (binary_expression "iVar11 * 0xc + param_1" (binary_expression "iVar11 * 0xc" (identifier "iVar11") (* "*") (number_literal "0xc")) (+ "+") (identifier "param_1"))) () ")")) (; ";")) (expression_statement "local_58 = *piVar10;" (assignment_expression "local_58 = *piVar10" (identifier "local_58") (= "=") (pointer_expression "*piVar10" (* "*") (identifier "piVar10"))) (; ";")) (expression_statement "*(undefined4 *)(param_1 + 0xcbc) = 0;" (assignment_expression "*(undefined4 *)(param_1 + 0xcbc) = 0" (pointer_expression "*(undefined4 *)(param_1 + 0xcbc)" (* "*") (cast_expression "(undefined4 *)(param_1 + 0xcbc)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0xcbc)" (( "(") (binary_expression "param_1 + 0xcbc" (identifier "param_1") (+ "+") (number_literal "0xcbc")) () ")")))) (= "=") (number_literal "0")) (; ";")) (if_statement "if (local_58 == param_1) {\n      local_58 = 0;\n    }\n    else {\n      *piVar10 = param_1;\n    }" (if "if") (parenthesized_expression "(local_58 == param_1)" (( "(") (binary_expression "local_58 == param_1" (identifier "local_58") (== "==") (identifier "param_1")) () ")")) (compound_statement "{\n      local_58 = 0;\n    }" ({ "{") (expression_statement "local_58 = 0;" (assignment_expression "local_58 = 0" (identifier "local_58") (= "=") (number_literal "0")) (; ";")) (} "}")) (else_clause "else {\n      *piVar10 = param_1;\n    }" (else "else") (compound_statement "{\n      *piVar10 = param_1;\n    }" ({ "{") (expression_statement "*piVar10 = param_1;" (assignment_expression "*piVar10 = param_1" (pointer_expression "*piVar10" (* "*") (identifier "piVar10")) (= "=") (identifier "param_1")) (; ";")) (} "}")))) (expression_statement "puVar12 = PTR_PTR_free_000a6144;" (assignment_expression "puVar12 = PTR_PTR_free_000a6144" (identifier "puVar12") (= "=") (identifier "PTR_PTR_free_000a6144")) (; ";")) (expression_statement "iVar2 = 0;" (assignment_expression "iVar2 = 0" (identifier "iVar2") (= "=") (number_literal "0")) (; ";")) (expression_statement "iVar9 = 0;" (assignment_expression "iVar9 = 0" (identifier "iVar9") (= "=") (number_literal "0")) (; ";")) (do_statement "do {\n      pppiVar4 = (int ***)*unaff_s4;\n      if (iVar9 == 0) {\n        param_4 = (int ***)unaff_s4[1];\n        pppiVar6 = (int ***)unaff_s4[2];\n        param_3 = pppiVar4;\n        iVar9 = FUN_000266b0(piVar10);\n      }\n      iVar2 = iVar2 + 1;\n      unaff_s4 = unaff_s4 + 3;\n      (**(code **)puVar12)(pppiVar4);\n    } while (iVar11 != iVar2);" (do "do") (compound_statement "{\n      pppiVar4 = (int ***)*unaff_s4;\n      if (iVar9 == 0) {\n        param_4 = (int ***)unaff_s4[1];\n        pppiVar6 = (int ***)unaff_s4[2];\n        param_3 = pppiVar4;\n        iVar9 = FUN_000266b0(piVar10);\n      }\n      iVar2 = iVar2 + 1;\n      unaff_s4 = unaff_s4 + 3;\n      (**(code **)puVar12)(pppiVar4);\n    }" ({ "{") (expression_statement "pppiVar4 = (int ***)*unaff_s4;" (assignment_expression "pppiVar4 = (int ***)*unaff_s4" (identifier "pppiVar4") (= "=") (cast_expression "(int ***)*unaff_s4" (( "(") (type_descriptor "int ***" (primitive_type "int") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))) () ")") (pointer_expression "*unaff_s4" (* "*") (identifier "unaff_s4")))) (; ";")) (if_statement "if (iVar9 == 0) {\n        param_4 = (int ***)unaff_s4[1];\n        pppiVar6 = (int ***)unaff_s4[2];\n        param_3 = pppiVar4;\n        iVar9 = FUN_000266b0(piVar10);\n      }" (if "if") (parenthesized_expression "(iVar9 == 0)" (( "(") (binary_expression "iVar9 == 0" (identifier "iVar9") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n        param_4 = (int ***)unaff_s4[1];\n        pppiVar6 = (int ***)unaff_s4[2];\n        param_3 = pppiVar4;\n        iVar9 = FUN_000266b0(piVar10);\n      }" ({ "{") (expression_statement "param_4 = (int ***)unaff_s4[1];" (assignment_expression "param_4 = (int ***)unaff_s4[1]" (identifier "param_4") (= "=") (cast_expression "(int ***)unaff_s4[1]" (( "(") (type_descriptor "int ***" (primitive_type "int") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))) () ")") (subscript_expression "unaff_s4[1]" (identifier "unaff_s4") ([ "[") (number_literal "1") (] "]")))) (; ";")) (expression_statement "pppiVar6 = (int ***)unaff_s4[2];" (assignment_expression "pppiVar6 = (int ***)unaff_s4[2]" (identifier "pppiVar6") (= "=") (cast_expression "(int ***)unaff_s4[2]" (( "(") (type_descriptor "int ***" (primitive_type "int") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))) () ")") (subscript_expression "unaff_s4[2]" (identifier "unaff_s4") ([ "[") (number_literal "2") (] "]")))) (; ";")) (expression_statement "param_3 = pppiVar4;" (assignment_expression "param_3 = pppiVar4" (identifier "param_3") (= "=") (identifier "pppiVar4")) (; ";")) (expression_statement "iVar9 = FUN_000266b0(piVar10);" (assignment_expression "iVar9 = FUN_000266b0(piVar10)" (identifier "iVar9") (= "=") (call_expression "FUN_000266b0(piVar10)" (identifier "FUN_000266b0") (argument_list "(piVar10)" (( "(") (identifier "piVar10") () ")")))) (; ";")) (} "}"))) (expression_statement "iVar2 = iVar2 + 1;" (assignment_expression "iVar2 = iVar2 + 1" (identifier "iVar2") (= "=") (binary_expression "iVar2 + 1" (identifier "iVar2") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "unaff_s4 = unaff_s4 + 3;" (assignment_expression "unaff_s4 = unaff_s4 + 3" (identifier "unaff_s4") (= "=") (binary_expression "unaff_s4 + 3" (identifier "unaff_s4") (+ "+") (number_literal "3"))) (; ";")) (expression_statement "(**(code **)puVar12)(pppiVar4);" (call_expression "(**(code **)puVar12)(pppiVar4)" (parenthesized_expression "(**(code **)puVar12)" (( "(") (pointer_expression "**(code **)puVar12" (* "*") (pointer_expression "*(code **)puVar12" (* "*") (cast_expression "(code **)puVar12" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (identifier "puVar12")))) () ")")) (argument_list "(pppiVar4)" (( "(") (identifier "pppiVar4") () ")"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(iVar11 != iVar2)" (( "(") (binary_expression "iVar11 != iVar2" (identifier "iVar11") (!= "!=") (identifier "iVar2")) () ")")) (; ";")) (if_statement "if (local_58 != 0) {\n      *piVar10 = local_58;\n    }" (if "if") (parenthesized_expression "(local_58 != 0)" (( "(") (binary_expression "local_58 != 0" (identifier "local_58") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n      *piVar10 = local_58;\n    }" ({ "{") (expression_statement "*piVar10 = local_58;" (assignment_expression "*piVar10 = local_58" (pointer_expression "*piVar10" (* "*") (identifier "piVar10")) (= "=") (identifier "local_58")) (; ";")) (} "}"))) (expression_statement "ppiStack_88 = (int **)pppiVar7;" (assignment_expression "ppiStack_88 = (int **)pppiVar7" (identifier "ppiStack_88") (= "=") (cast_expression "(int **)pppiVar7" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (identifier "pppiVar7"))) (; ";")) (if_statement "if (iVar9 != 0) goto LAB_0003d0fc;" (if "if") (parenthesized_expression "(iVar9 != 0)" (( "(") (binary_expression "iVar9 != 0" (identifier "iVar9") (!= "!=") (number_literal "0")) () ")")) (goto_statement "goto LAB_0003d0fc;" (goto "goto") (statement_identifier "LAB_0003d0fc") (; ";"))) (} "}"))) (if_statement "if (pppiVar5 != (int ***)0x30) {\n    param_3 = (int ***)0x6;\n    pppiVar6 = (int ***)0x0;\n    FUN_00044d9c(param_1);\n  }" (if "if") (parenthesized_expression "(pppiVar5 != (int ***)0x30)" (( "(") (binary_expression "pppiVar5 != (int ***)0x30" (identifier "pppiVar5") (!= "!=") (cast_expression "(int ***)0x30" (( "(") (type_descriptor "int ***" (primitive_type "int") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))) () ")") (number_literal "0x30"))) () ")")) (compound_statement "{\n    param_3 = (int ***)0x6;\n    pppiVar6 = (int ***)0x0;\n    FUN_00044d9c(param_1);\n  }" ({ "{") (expression_statement "param_3 = (int ***)0x6;" (assignment_expression "param_3 = (int ***)0x6" (identifier "param_3") (= "=") (cast_expression "(int ***)0x6" (( "(") (type_descriptor "int ***" (primitive_type "int") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))) () ")") (number_literal "0x6"))) (; ";")) (expression_statement "pppiVar6 = (int ***)0x0;" (assignment_expression "pppiVar6 = (int ***)0x0" (identifier "pppiVar6") (= "=") (cast_expression "(int ***)0x0" (( "(") (type_descriptor "int ***" (primitive_type "int") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))) () ")") (number_literal "0x0"))) (; ";")) (expression_statement "FUN_00044d9c(param_1);" (call_expression "FUN_00044d9c(param_1)" (identifier "FUN_00044d9c") (argument_list "(param_1)" (( "(") (identifier "param_1") () ")"))) (; ";")) (} "}"))) (expression_statement "iVar9 = 0;" (assignment_expression "iVar9 = 0" (identifier "iVar9") (= "=") (number_literal "0")) (; ";")) (expression_statement "FUN_000449a8(param_1);" (call_expression "FUN_000449a8(param_1)" (identifier "FUN_000449a8") (argument_list "(param_1)" (( "(") (identifier "param_1") () ")"))) (; ";")) (expression_statement "ppiStack_88 = (int **)pppiVar5;" (assignment_expression "ppiStack_88 = (int **)pppiVar5" (identifier "ppiStack_88") (= "=") (cast_expression "(int **)pppiVar5" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (identifier "pppiVar5"))) (; ";")) (labeled_statement "LAB_0003d0fc:\n  if (local_2c == *(int *)puVar1) {\n    return iVar9;\n  }" (statement_identifier "LAB_0003d0fc") (: ":") (if_statement "if (local_2c == *(int *)puVar1) {\n    return iVar9;\n  }" (if "if") (parenthesized_expression "(local_2c == *(int *)puVar1)" (( "(") (binary_expression "local_2c == *(int *)puVar1" (identifier "local_2c") (== "==") (pointer_expression "*(int *)puVar1" (* "*") (cast_expression "(int *)puVar1" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "puVar1")))) () ")")) (compound_statement "{\n    return iVar9;\n  }" ({ "{") (return_statement "return iVar9;" (return "return") (identifier "iVar9") (; ";")) (} "}")))) (expression_statement "pcVar13 = curl_easy_recv;" (assignment_expression "pcVar13 = curl_easy_recv" (identifier "pcVar13") (= "=") (identifier "curl_easy_recv")) (; ";")) (expression_statement "iVar11 = local_2c;" (assignment_expression "iVar11 = local_2c" (identifier "iVar11") (= "=") (identifier "local_2c")) (; ";")) (expression_statement "puVar12 = PTR___stack_chk_fail_000a6c54;" (assignment_expression "puVar12 = PTR___stack_chk_fail_000a6c54" (identifier "puVar12") (= "=") (identifier "PTR___stack_chk_fail_000a6c54")) (; ";")) (expression_statement "(*(code *)PTR___stack_chk_fail_000a6c54)();" (call_expression "(*(code *)PTR___stack_chk_fail_000a6c54)()" (parenthesized_expression "(*(code *)PTR___stack_chk_fail_000a6c54)" (( "(") (pointer_expression "*(code *)PTR___stack_chk_fail_000a6c54" (* "*") (cast_expression "(code *)PTR___stack_chk_fail_000a6c54" (( "(") (type_descriptor "code *" (type_identifier "code") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR___stack_chk_fail_000a6c54"))) () ")")) (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "puStack_a0 = puVar12 + 0x70f80;" (assignment_expression "puStack_a0 = puVar12 + 0x70f80" (identifier "puStack_a0") (= "=") (binary_expression "puVar12 + 0x70f80" (identifier "puVar12") (+ "+") (number_literal "0x70f80"))) (; ";")) (expression_statement "piVar10 = *(int **)(puVar12 + 0x69e50);" (assignment_expression "piVar10 = *(int **)(puVar12 + 0x69e50)" (identifier "piVar10") (= "=") (pointer_expression "*(int **)(puVar12 + 0x69e50)" (* "*") (cast_expression "(int **)(puVar12 + 0x69e50)" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puVar12 + 0x69e50)" (( "(") (binary_expression "puVar12 + 0x69e50" (identifier "puVar12") (+ "+") (number_literal "0x69e50")) () ")"))))) (; ";")) (expression_statement "puStack_84 = puVar1;" (assignment_expression "puStack_84 = puVar1" (identifier "puStack_84") (= "=") (identifier "puVar1")) (; ";")) (expression_statement "iStack_8c = *piVar10;" (assignment_expression "iStack_8c = *piVar10" (identifier "iStack_8c") (= "=") (pointer_expression "*piVar10" (* "*") (identifier "piVar10"))) (; ";")) (expression_statement "pppiVar5 = pppiVar6;" (assignment_expression "pppiVar5 = pppiVar6" (identifier "pppiVar5") (= "=") (identifier "pppiVar6")) (; ";")) (expression_statement "pppiVar7 = param_3;" (assignment_expression "pppiVar7 = param_3" (identifier "pppiVar7") (= "=") (identifier "param_3")) (; ";")) (expression_statement "pppiVar4 = param_4;" (assignment_expression "pppiVar4 = param_4" (identifier "pppiVar4") (= "=") (identifier "param_4")) (; ";")) (expression_statement "iStack_80 = param_1;" (assignment_expression "iStack_80 = param_1" (identifier "iStack_80") (= "=") (identifier "param_1")) (; ";")) (expression_statement "iStack_7c = iVar9;" (assignment_expression "iStack_7c = iVar9" (identifier "iStack_7c") (= "=") (identifier "iVar9")) (; ";")) (expression_statement "puStack_78 = unaff_s4;" (assignment_expression "puStack_78 = unaff_s4" (identifier "puStack_78") (= "=") (identifier "unaff_s4")) (; ";")) (expression_statement "pcStack_74 = pcVar13;" (assignment_expression "pcStack_74 = pcVar13" (identifier "pcStack_74") (= "=") (identifier "pcVar13")) (; ";")) (expression_statement "iVar9 = FUN_00048420();" (assignment_expression "iVar9 = FUN_00048420()" (identifier "iVar9") (= "=") (call_expression "FUN_00048420()" (identifier "FUN_00048420") (argument_list "()" (( "(") () ")")))) (; ";")) (if_statement "if (iVar9 == 0) {\n    pppiVar7 = (int ***)&piStack_90;\n    pppiVar5 = &ppiStack_98;\n    iVar9 = FUN_0003c4e4(iVar11,pppiVar5,pppiVar7);\n    if (iVar9 == 0) {\n      piStack_a8 = (int *)&piStack_94;\n      *param_4 = (int **)0x0;\n      pppiVar7 = pppiVar6;\n      pppiVar4 = param_3;\n      iVar9 = FUN_00025e14(piStack_90,ppiStack_98,pppiVar6);\n      pppiVar5 = (int ***)ppiStack_98;\n      if (iVar9 == 0) {\n        *param_4 = (int **)piStack_94;\n      }\n    }\n  }\n  else {\n    iVar9 = 0x5d;\n  }" (if "if") (parenthesized_expression "(iVar9 == 0)" (( "(") (binary_expression "iVar9 == 0" (identifier "iVar9") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n    pppiVar7 = (int ***)&piStack_90;\n    pppiVar5 = &ppiStack_98;\n    iVar9 = FUN_0003c4e4(iVar11,pppiVar5,pppiVar7);\n    if (iVar9 == 0) {\n      piStack_a8 = (int *)&piStack_94;\n      *param_4 = (int **)0x0;\n      pppiVar7 = pppiVar6;\n      pppiVar4 = param_3;\n      iVar9 = FUN_00025e14(piStack_90,ppiStack_98,pppiVar6);\n      pppiVar5 = (int ***)ppiStack_98;\n      if (iVar9 == 0) {\n        *param_4 = (int **)piStack_94;\n      }\n    }\n  }" ({ "{") (expression_statement "pppiVar7 = (int ***)&piStack_90;" (assignment_expression "pppiVar7 = (int ***)&piStack_90" (identifier "pppiVar7") (= "=") (cast_expression "(int ***)&piStack_90" (( "(") (type_descriptor "int ***" (primitive_type "int") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))) () ")") (pointer_expression "&piStack_90" (& "&") (identifier "piStack_90")))) (; ";")) (expression_statement "pppiVar5 = &ppiStack_98;" (assignment_expression "pppiVar5 = &ppiStack_98" (identifier "pppiVar5") (= "=") (pointer_expression "&ppiStack_98" (& "&") (identifier "ppiStack_98"))) (; ";")) (expression_statement "iVar9 = FUN_0003c4e4(iVar11,pppiVar5,pppiVar7);" (assignment_expression "iVar9 = FUN_0003c4e4(iVar11,pppiVar5,pppiVar7)" (identifier "iVar9") (= "=") (call_expression "FUN_0003c4e4(iVar11,pppiVar5,pppiVar7)" (identifier "FUN_0003c4e4") (argument_list "(iVar11,pppiVar5,pppiVar7)" (( "(") (identifier "iVar11") (, ",") (identifier "pppiVar5") (, ",") (identifier "pppiVar7") () ")")))) (; ";")) (if_statement "if (iVar9 == 0) {\n      piStack_a8 = (int *)&piStack_94;\n      *param_4 = (int **)0x0;\n      pppiVar7 = pppiVar6;\n      pppiVar4 = param_3;\n      iVar9 = FUN_00025e14(piStack_90,ppiStack_98,pppiVar6);\n      pppiVar5 = (int ***)ppiStack_98;\n      if (iVar9 == 0) {\n        *param_4 = (int **)piStack_94;\n      }\n    }" (if "if") (parenthesized_expression "(iVar9 == 0)" (( "(") (binary_expression "iVar9 == 0" (identifier "iVar9") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n      piStack_a8 = (int *)&piStack_94;\n      *param_4 = (int **)0x0;\n      pppiVar7 = pppiVar6;\n      pppiVar4 = param_3;\n      iVar9 = FUN_00025e14(piStack_90,ppiStack_98,pppiVar6);\n      pppiVar5 = (int ***)ppiStack_98;\n      if (iVar9 == 0) {\n        *param_4 = (int **)piStack_94;\n      }\n    }" ({ "{") (expression_statement "piStack_a8 = (int *)&piStack_94;" (assignment_expression "piStack_a8 = (int *)&piStack_94" (identifier "piStack_a8") (= "=") (cast_expression "(int *)&piStack_94" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (pointer_expression "&piStack_94" (& "&") (identifier "piStack_94")))) (; ";")) (expression_statement "*param_4 = (int **)0x0;" (assignment_expression "*param_4 = (int **)0x0" (pointer_expression "*param_4" (* "*") (identifier "param_4")) (= "=") (cast_expression "(int **)0x0" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (number_literal "0x0"))) (; ";")) (expression_statement "pppiVar7 = pppiVar6;" (assignment_expression "pppiVar7 = pppiVar6" (identifier "pppiVar7") (= "=") (identifier "pppiVar6")) (; ";")) (expression_statement "pppiVar4 = param_3;" (assignment_expression "pppiVar4 = param_3" (identifier "pppiVar4") (= "=") (identifier "param_3")) (; ";")) (expression_statement "iVar9 = FUN_00025e14(piStack_90,ppiStack_98,pppiVar6);" (assignment_expression "iVar9 = FUN_00025e14(piStack_90,ppiStack_98,pppiVar6)" (identifier "iVar9") (= "=") (call_expression "FUN_00025e14(piStack_90,ppiStack_98,pppiVar6)" (identifier "FUN_00025e14") (argument_list "(piStack_90,ppiStack_98,pppiVar6)" (( "(") (identifier "piStack_90") (, ",") (identifier "ppiStack_98") (, ",") (identifier "pppiVar6") () ")")))) (; ";")) (expression_statement "pppiVar5 = (int ***)ppiStack_98;" (assignment_expression "pppiVar5 = (int ***)ppiStack_98" (identifier "pppiVar5") (= "=") (cast_expression "(int ***)ppiStack_98" (( "(") (type_descriptor "int ***" (primitive_type "int") (abstract_pointer_declarator "***" (* "*") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*"))))) () ")") (identifier "ppiStack_98"))) (; ";")) (if_statement "if (iVar9 == 0) {\n        *param_4 = (int **)piStack_94;\n      }" (if "if") (parenthesized_expression "(iVar9 == 0)" (( "(") (binary_expression "iVar9 == 0" (identifier "iVar9") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n        *param_4 = (int **)piStack_94;\n      }" ({ "{") (expression_statement "*param_4 = (int **)piStack_94;" (assignment_expression "*param_4 = (int **)piStack_94" (pointer_expression "*param_4" (* "*") (identifier "param_4")) (= "=") (cast_expression "(int **)piStack_94" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (identifier "piStack_94"))) (; ";")) (} "}"))) (} "}"))) (} "}")) (else_clause "else {\n    iVar9 = 0x5d;\n  }" (else "else") (compound_statement "{\n    iVar9 = 0x5d;\n  }" ({ "{") (expression_statement "iVar9 = 0x5d;" (assignment_expression "iVar9 = 0x5d" (identifier "iVar9") (= "=") (number_literal "0x5d")) (; ";")) (} "}")))) (if_statement "if (iStack_8c == *piVar10) {\n    return iVar9;\n  }" (if "if") (parenthesized_expression "(iStack_8c == *piVar10)" (( "(") (binary_expression "iStack_8c == *piVar10" (identifier "iStack_8c") (== "==") (pointer_expression "*piVar10" (* "*") (identifier "piVar10"))) () ")")) (compound_statement "{\n    return iVar9;\n  }" ({ "{") (return_statement "return iVar9;" (return "return") (identifier "iVar9") (; ";")) (} "}"))) (expression_statement "pcVar13 = *(code **)(puStack_a0 + -0x74bc);" (assignment_expression "pcVar13 = *(code **)(puStack_a0 + -0x74bc)" (identifier "pcVar13") (= "=") (pointer_expression "*(code **)(puStack_a0 + -0x74bc)" (* "*") (cast_expression "(code **)(puStack_a0 + -0x74bc)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(puStack_a0 + -0x74bc)" (( "(") (binary_expression "puStack_a0 + -0x74bc" (identifier "puStack_a0") (+ "+") (number_literal "-0x74bc")) () ")"))))) (; ";")) (expression_statement "pcVar14 = curl_easy_send;" (assignment_expression "pcVar14 = curl_easy_send" (identifier "pcVar14") (= "=") (identifier "curl_easy_send")) (; ";")) (expression_statement "iVar9 = iStack_8c;" (assignment_expression "iVar9 = iStack_8c" (identifier "iVar9") (= "=") (identifier "iStack_8c")) (; ";")) (expression_statement "(*pcVar13)();" (call_expression "(*pcVar13)()" (parenthesized_expression "(*pcVar13)" (( "(") (pointer_expression "*pcVar13" (* "*") (identifier "pcVar13")) () ")")) (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "piVar8 = *(int **)(pcVar13 + 0x69d5c);" (assignment_expression "piVar8 = *(int **)(pcVar13 + 0x69d5c)" (identifier "piVar8") (= "=") (pointer_expression "*(int **)(pcVar13 + 0x69d5c)" (* "*") (cast_expression "(int **)(pcVar13 + 0x69d5c)" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar13 + 0x69d5c)" (( "(") (binary_expression "pcVar13 + 0x69d5c" (identifier "pcVar13") (+ "+") (number_literal "0x69d5c")) () ")"))))) (; ";")) (expression_statement "uStack_d8 = 0;" (assignment_expression "uStack_d8 = 0" (identifier "uStack_d8") (= "=") (number_literal "0")) (; ";")) (expression_statement "iStack_d4 = *piVar8;" (assignment_expression "iStack_d4 = *piVar8" (identifier "iStack_d4") (= "=") (pointer_expression "*piVar8" (* "*") (identifier "piVar8"))) (; ";")) (expression_statement "piStack_d0 = piVar10;" (assignment_expression "piStack_d0 = piVar10" (identifier "piStack_d0") (= "=") (identifier "piVar10")) (; ";")) (expression_statement "ppiStack_cc = (int **)param_4;" (assignment_expression "ppiStack_cc = (int **)param_4" (identifier "ppiStack_cc") (= "=") (cast_expression "(int **)param_4" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (identifier "param_4"))) (; ";")) (expression_statement "ppiStack_c8 = (int **)pppiVar6;" (assignment_expression "ppiStack_c8 = (int **)pppiVar6" (identifier "ppiStack_c8") (= "=") (cast_expression "(int **)pppiVar6" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (identifier "pppiVar6"))) (; ";")) (expression_statement "ppiStack_c4 = (int **)param_3;" (assignment_expression "ppiStack_c4 = (int **)param_3" (identifier "ppiStack_c4") (= "=") (cast_expression "(int **)param_3" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (identifier "param_3"))) (; ";")) (expression_statement "iStack_c0 = iVar11;" (assignment_expression "iStack_c0 = iVar11" (identifier "iStack_c0") (= "=") (identifier "iVar11")) (; ";")) (expression_statement "pcStack_bc = pcVar14;" (assignment_expression "pcStack_bc = pcVar14" (identifier "pcStack_bc") (= "=") (identifier "pcVar14")) (; ";")) (expression_statement "iVar11 = FUN_00048420();" (assignment_expression "iVar11 = FUN_00048420()" (identifier "iVar11") (= "=") (call_expression "FUN_00048420()" (identifier "FUN_00048420") (argument_list "()" (( "(") () ")")))) (; ";")) (if_statement "if (iVar11 == 0) {\n    iVar11 = FUN_0003c4e4(iVar9,&uStack_e0,&uStack_d8);\n    if (iVar11 == 0) {\n      *pppiVar4 = (int **)0x0;\n      iVar11 = FUN_00025cb8(uStack_d8,uStack_e0,pppiVar5,pppiVar7,&piStack_dc);\n      if ((int **)piStack_dc == (int **)0xffffffff) {\n        iVar11 = 0x37;\n      }\n      else if (iVar11 == 0 && (int **)piStack_dc == (int **)0x0) {\n        iVar11 = 0x51;\n      }\n      else {\n        *pppiVar4 = (int **)piStack_dc;\n      }\n    }\n  }\n  else {\n    iVar11 = 0x5d;\n  }" (if "if") (parenthesized_expression "(iVar11 == 0)" (( "(") (binary_expression "iVar11 == 0" (identifier "iVar11") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n    iVar11 = FUN_0003c4e4(iVar9,&uStack_e0,&uStack_d8);\n    if (iVar11 == 0) {\n      *pppiVar4 = (int **)0x0;\n      iVar11 = FUN_00025cb8(uStack_d8,uStack_e0,pppiVar5,pppiVar7,&piStack_dc);\n      if ((int **)piStack_dc == (int **)0xffffffff) {\n        iVar11 = 0x37;\n      }\n      else if (iVar11 == 0 && (int **)piStack_dc == (int **)0x0) {\n        iVar11 = 0x51;\n      }\n      else {\n        *pppiVar4 = (int **)piStack_dc;\n      }\n    }\n  }" ({ "{") (expression_statement "iVar11 = FUN_0003c4e4(iVar9,&uStack_e0,&uStack_d8);" (assignment_expression "iVar11 = FUN_0003c4e4(iVar9,&uStack_e0,&uStack_d8)" (identifier "iVar11") (= "=") (call_expression "FUN_0003c4e4(iVar9,&uStack_e0,&uStack_d8)" (identifier "FUN_0003c4e4") (argument_list "(iVar9,&uStack_e0,&uStack_d8)" (( "(") (identifier "iVar9") (, ",") (pointer_expression "&uStack_e0" (& "&") (identifier "uStack_e0")) (, ",") (pointer_expression "&uStack_d8" (& "&") (identifier "uStack_d8")) () ")")))) (; ";")) (if_statement "if (iVar11 == 0) {\n      *pppiVar4 = (int **)0x0;\n      iVar11 = FUN_00025cb8(uStack_d8,uStack_e0,pppiVar5,pppiVar7,&piStack_dc);\n      if ((int **)piStack_dc == (int **)0xffffffff) {\n        iVar11 = 0x37;\n      }\n      else if (iVar11 == 0 && (int **)piStack_dc == (int **)0x0) {\n        iVar11 = 0x51;\n      }\n      else {\n        *pppiVar4 = (int **)piStack_dc;\n      }\n    }" (if "if") (parenthesized_expression "(iVar11 == 0)" (( "(") (binary_expression "iVar11 == 0" (identifier "iVar11") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n      *pppiVar4 = (int **)0x0;\n      iVar11 = FUN_00025cb8(uStack_d8,uStack_e0,pppiVar5,pppiVar7,&piStack_dc);\n      if ((int **)piStack_dc == (int **)0xffffffff) {\n        iVar11 = 0x37;\n      }\n      else if (iVar11 == 0 && (int **)piStack_dc == (int **)0x0) {\n        iVar11 = 0x51;\n      }\n      else {\n        *pppiVar4 = (int **)piStack_dc;\n      }\n    }" ({ "{") (expression_statement "*pppiVar4 = (int **)0x0;" (assignment_expression "*pppiVar4 = (int **)0x0" (pointer_expression "*pppiVar4" (* "*") (identifier "pppiVar4")) (= "=") (cast_expression "(int **)0x0" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (number_literal "0x0"))) (; ";")) (expression_statement "iVar11 = FUN_00025cb8(uStack_d8,uStack_e0,pppiVar5,pppiVar7,&piStack_dc);" (assignment_expression "iVar11 = FUN_00025cb8(uStack_d8,uStack_e0,pppiVar5,pppiVar7,&piStack_dc)" (identifier "iVar11") (= "=") (call_expression "FUN_00025cb8(uStack_d8,uStack_e0,pppiVar5,pppiVar7,&piStack_dc)" (identifier "FUN_00025cb8") (argument_list "(uStack_d8,uStack_e0,pppiVar5,pppiVar7,&piStack_dc)" (( "(") (identifier "uStack_d8") (, ",") (identifier "uStack_e0") (, ",") (identifier "pppiVar5") (, ",") (identifier "pppiVar7") (, ",") (pointer_expression "&piStack_dc" (& "&") (identifier "piStack_dc")) () ")")))) (; ";")) (if_statement "if ((int **)piStack_dc == (int **)0xffffffff) {\n        iVar11 = 0x37;\n      }\n      else if (iVar11 == 0 && (int **)piStack_dc == (int **)0x0) {\n        iVar11 = 0x51;\n      }\n      else {\n        *pppiVar4 = (int **)piStack_dc;\n      }" (if "if") (parenthesized_expression "((int **)piStack_dc == (int **)0xffffffff)" (( "(") (binary_expression "(int **)piStack_dc == (int **)0xffffffff" (cast_expression "(int **)piStack_dc" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (identifier "piStack_dc")) (== "==") (cast_expression "(int **)0xffffffff" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (number_literal "0xffffffff"))) () ")")) (compound_statement "{\n        iVar11 = 0x37;\n      }" ({ "{") (expression_statement "iVar11 = 0x37;" (assignment_expression "iVar11 = 0x37" (identifier "iVar11") (= "=") (number_literal "0x37")) (; ";")) (} "}")) (else_clause "else if (iVar11 == 0 && (int **)piStack_dc == (int **)0x0) {\n        iVar11 = 0x51;\n      }\n      else {\n        *pppiVar4 = (int **)piStack_dc;\n      }" (else "else") (if_statement "if (iVar11 == 0 && (int **)piStack_dc == (int **)0x0) {\n        iVar11 = 0x51;\n      }\n      else {\n        *pppiVar4 = (int **)piStack_dc;\n      }" (if "if") (parenthesized_expression "(iVar11 == 0 && (int **)piStack_dc == (int **)0x0)" (( "(") (binary_expression "iVar11 == 0 && (int **)piStack_dc == (int **)0x0" (binary_expression "iVar11 == 0" (identifier "iVar11") (== "==") (number_literal "0")) (&& "&&") (binary_expression "(int **)piStack_dc == (int **)0x0" (cast_expression "(int **)piStack_dc" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (identifier "piStack_dc")) (== "==") (cast_expression "(int **)0x0" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (number_literal "0x0")))) () ")")) (compound_statement "{\n        iVar11 = 0x51;\n      }" ({ "{") (expression_statement "iVar11 = 0x51;" (assignment_expression "iVar11 = 0x51" (identifier "iVar11") (= "=") (number_literal "0x51")) (; ";")) (} "}")) (else_clause "else {\n        *pppiVar4 = (int **)piStack_dc;\n      }" (else "else") (compound_statement "{\n        *pppiVar4 = (int **)piStack_dc;\n      }" ({ "{") (expression_statement "*pppiVar4 = (int **)piStack_dc;" (assignment_expression "*pppiVar4 = (int **)piStack_dc" (pointer_expression "*pppiVar4" (* "*") (identifier "pppiVar4")) (= "=") (cast_expression "(int **)piStack_dc" (( "(") (type_descriptor "int **" (primitive_type "int") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (identifier "piStack_dc"))) (; ";")) (} "}")))))) (} "}"))) (} "}")) (else_clause "else {\n    iVar11 = 0x5d;\n  }" (else "else") (compound_statement "{\n    iVar11 = 0x5d;\n  }" ({ "{") (expression_statement "iVar11 = 0x5d;" (assignment_expression "iVar11 = 0x5d" (identifier "iVar11") (= "=") (number_literal "0x5d")) (; ";")) (} "}")))) (if_statement "if (iStack_d4 == *piVar8) {\n    return iVar11;\n  }" (if "if") (parenthesized_expression "(iStack_d4 == *piVar8)" (( "(") (binary_expression "iStack_d4 == *piVar8" (identifier "iStack_d4") (== "==") (pointer_expression "*piVar8" (* "*") (identifier "piVar8"))) () ")")) (compound_statement "{\n    return iVar11;\n  }" ({ "{") (return_statement "return iVar11;" (return "return") (identifier "iVar11") (; ";")) (} "}"))) (expression_statement "iVar11 = iStack_d4;" (assignment_expression "iVar11 = iStack_d4" (identifier "iVar11") (= "=") (identifier "iStack_d4")) (; ";")) (expression_statement "(**(code **)(pcVar13 + 0x699d0))();" (call_expression "(**(code **)(pcVar13 + 0x699d0))()" (parenthesized_expression "(**(code **)(pcVar13 + 0x699d0))" (( "(") (pointer_expression "**(code **)(pcVar13 + 0x699d0)" (* "*") (pointer_expression "*(code **)(pcVar13 + 0x699d0)" (* "*") (cast_expression "(code **)(pcVar13 + 0x699d0)" (( "(") (type_descriptor "code **" (type_identifier "code") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pcVar13 + 0x699d0)" (( "(") (binary_expression "pcVar13 + 0x699d0" (identifier "pcVar13") (+ "+") (number_literal "0x699d0")) () ")"))))) () ")")) (argument_list "()" (( "(") () ")"))) (; ";")) (if_statement "if ((iVar11 != 0) && (*(int *)(iVar11 + 0x1030) == -0x3f212453)) {\n    if (*(int *)(iVar11 + 0x88) != 0) {\n      iVar11 = FUN_00033390(*(int *)(iVar11 + 0x88) + 0x8c,iVar11);\n      return iVar11;\n    }\n    return 0;\n  }" (if "if") (parenthesized_expression "((iVar11 != 0) && (*(int *)(iVar11 + 0x1030) == -0x3f212453))" (( "(") (binary_expression "(iVar11 != 0) && (*(int *)(iVar11 + 0x1030) == -0x3f212453)" (parenthesized_expression "(iVar11 != 0)" (( "(") (binary_expression "iVar11 != 0" (identifier "iVar11") (!= "!=") (number_literal "0")) () ")")) (&& "&&") (parenthesized_expression "(*(int *)(iVar11 + 0x1030) == -0x3f212453)" (( "(") (binary_expression "*(int *)(iVar11 + 0x1030) == -0x3f212453" (pointer_expression "*(int *)(iVar11 + 0x1030)" (* "*") (cast_expression "(int *)(iVar11 + 0x1030)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar11 + 0x1030)" (( "(") (binary_expression "iVar11 + 0x1030" (identifier "iVar11") (+ "+") (number_literal "0x1030")) () ")")))) (== "==") (number_literal "-0x3f212453")) () ")"))) () ")")) (compound_statement "{\n    if (*(int *)(iVar11 + 0x88) != 0) {\n      iVar11 = FUN_00033390(*(int *)(iVar11 + 0x88) + 0x8c,iVar11);\n      return iVar11;\n    }\n    return 0;\n  }" ({ "{") (if_statement "if (*(int *)(iVar11 + 0x88) != 0) {\n      iVar11 = FUN_00033390(*(int *)(iVar11 + 0x88) + 0x8c,iVar11);\n      return iVar11;\n    }" (if "if") (parenthesized_expression "(*(int *)(iVar11 + 0x88) != 0)" (( "(") (binary_expression "*(int *)(iVar11 + 0x88) != 0" (pointer_expression "*(int *)(iVar11 + 0x88)" (* "*") (cast_expression "(int *)(iVar11 + 0x88)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar11 + 0x88)" (( "(") (binary_expression "iVar11 + 0x88" (identifier "iVar11") (+ "+") (number_literal "0x88")) () ")")))) (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n      iVar11 = FUN_00033390(*(int *)(iVar11 + 0x88) + 0x8c,iVar11);\n      return iVar11;\n    }" ({ "{") (expression_statement "iVar11 = FUN_00033390(*(int *)(iVar11 + 0x88) + 0x8c,iVar11);" (assignment_expression "iVar11 = FUN_00033390(*(int *)(iVar11 + 0x88) + 0x8c,iVar11)" (identifier "iVar11") (= "=") (call_expression "FUN_00033390(*(int *)(iVar11 + 0x88) + 0x8c,iVar11)" (identifier "FUN_00033390") (argument_list "(*(int *)(iVar11 + 0x88) + 0x8c,iVar11)" (( "(") (binary_expression "*(int *)(iVar11 + 0x88) + 0x8c" (pointer_expression "*(int *)(iVar11 + 0x88)" (* "*") (cast_expression "(int *)(iVar11 + 0x88)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar11 + 0x88)" (( "(") (binary_expression "iVar11 + 0x88" (identifier "iVar11") (+ "+") (number_literal "0x88")) () ")")))) (+ "+") (number_literal "0x8c")) (, ",") (identifier "iVar11") () ")")))) (; ";")) (return_statement "return iVar11;" (return "return") (identifier "iVar11") (; ";")) (} "}"))) (return_statement "return 0;" (return "return") (number_literal "0") (; ";")) (} "}"))) (return_statement "return 0x2b;" (return "return") (number_literal "0x2b") (; ";")) (} "}")))

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

type_1 function_1(type_2 *var_6,int var_1)

{
  type_3 *puVar1;
  type_4 extraout_var;
  type_4 extraout_var_00;
  type_2 *pCVar2;
  type_5 *var_4;
  type_6 _Var4;
  type_2 *var_15;
  type_7 *var_3;
  type_8 *ptr;
  void *var_26;
  type_8 *var_12;
  type_8 *buf;
  type_8 *in_a2;
  type_8 *in_a3;
  type_8 *pcVar7;
  int *piVar8;
  int *piVar9;
  type_1 var_7;
  type_7 *var_11;
  type_8 *pcVar11;
  type_9 var_10;
  type_9 var_2;
  type_3 *var_16;
  type_10 *var_22;
  type_10 *pcVar16;
  type_11 cStack_e0;
  type_2 *var_24;
  type_8 *pcStack_d8;
  void *var_25;
  int *piStack_d0;
  type_8 *pcStack_cc;
  type_8 *pcStack_c8;
  type_8 *pcStack_c4;
  type_2 *pCStack_c0;
  type_10 *pcStack_bc;
  type_8 *pcStack_98;
  type_2 *pCStack_94;
  type_8 *pcStack_90;
  type_2 *var_21;
  type_8 *pcStack_88;
  type_3 *puStack_84;
  type_2 *pCStack_80;
  type_1 CStack_7c;
  type_7 *ptStack_78;
  type_10 *pcStack_74;
  type_2 *var_5;
  type_7 writebuf [3];
  
  puVar1 = PTR___stack_chk_guard_000a6fe0;
  var_12 = (type_8 *)((var_1 & 1U) << 4 | (var_1 & 4U) << 3);
  pcVar7 = (type_8 *)((type_9)var_12 | (var_6->req).keepon & 0xffffffcfU);
  (var_6->req).keepon = (int)pcVar7;
  var_15 = *(type_2 **)puVar1;
  buf = var_12;
  if (((var_1 & 1U) == 0) && (var_2 = (var_6->state).tempcount, var_2 != 0)) {
    pcVar11 = var_6->conn;
    var_11 = writebuf;
    pCVar2 = var_6;
    var_3 = var_11;
    do {
      in_a3 = (type_8 *)(pCVar2->state).tempwrite[0].buf;
      var_4 = &pCVar2->connect_queue;
      (pCVar2->state).tempwrite[0].buf = (char *)0x0;
      var_3->buf = (char *)in_a3;
      in_a2 = (type_8 *)(pCVar2->state).tempwrite[0].len;
      buf = (type_8 *)(pCVar2->state).tempwrite[0].type;
      var_3->len = (size_t)in_a2;
      var_3->type = (int)buf;
      pCVar2 = (type_2 *)var_4;
      var_3 = var_3 + 1;
    } while (var_4 != (type_5 *)(var_6->sockets + var_2 * 3 + -0x14));
    var_5 = pcVar11->var_6;
    (var_6->state).tempcount = 0;
    if (var_5 == var_6) {
      var_5 = (type_2 *)0x0;
    }
    else {
      pcVar11->var_6 = var_6;
    }
    var_16 = PTR_Curl_cfree_000a6144;
    var_10 = 0;
    var_7 = var_8;
    do {
      ptr = (type_8 *)var_11->buf;
      if (var_7 == var_8) {
        in_a3 = (type_8 *)var_11->len;
        buf = (type_8 *)var_11->type;
        in_a2 = ptr;
        var_7 = var_9(pcVar11,(int)buf,(char *)ptr,(size_t)in_a3);
      }
      var_10 = var_10 + 1;
      var_11 = var_11 + 1;
      (**(type_10 **)var_16)(ptr);
    } while (var_2 != var_10);
    if (var_5 != (type_2 *)0x0) {
      pcVar11->var_6 = var_5;
    }
    pcStack_88 = pcVar7;
    if (var_7 != var_8) goto LAB_0003d0fc;
  }
  if (var_12 != (type_8 *)0x30) {
    in_a2 = (type_8 *)&DAT_00000006;
    buf = (type_8 *)0x0;
    var_13(var_6,0,EXPIRE_RUN_NOW);
  }
  var_7 = var_8;
  var_14(var_6);
  pcStack_88 = var_12;
LAB_0003d0fc:
  if (var_15 == *(type_2 **)puVar1) {
    return var_7;
  }
  var_22 = curl_easy_recv;
  var_16 = PTR___stack_chk_fail_000a6c54;
  (*(type_10 *)PTR___stack_chk_fail_000a6c54)();
  piVar8 = *(int **)(var_16 + 0x69e50);
  puStack_84 = puVar1;
  var_21 = (type_2 *)*piVar8;
  var_12 = buf;
  pcVar7 = in_a2;
  pcVar11 = in_a3;
  pCStack_80 = var_6;
  CStack_7c = var_7;
  ptStack_78 = var_11;
  pcStack_74 = var_22;
  _Var4 = var_17(var_15);
  if (var_18(extraout_var,_Var4) == 0) {
    pcVar7 = (type_8 *)&pcStack_90;
    var_12 = (type_8 *)&pcStack_98;
    var_7 = var_19(var_15,(type_11 *)var_12,(type_8 **)pcVar7);
    if (var_7 == var_8) {
      in_a3->var_6 = (type_2 *)0x0;
      pcVar7 = buf;
      pcVar11 = in_a2;
      var_7 = var_20(pcStack_90,(type_11)pcStack_98,(char *)buf,(size_t)in_a2,
                         (ssize_t *)&pCStack_94);
      var_12 = pcStack_98;
      if (var_7 == var_8) {
        in_a3->var_6 = pCStack_94;
      }
    }
  }
  else {
    var_7 = CURLE_RECURSIVE_API_CALL;
  }
  if (var_21 == (type_2 *)*piVar8) {
    return var_7;
  }
  var_22 = *(type_10 **)(var_16 + 0x69ac4);
  pcVar16 = curl_easy_send;
  pCVar2 = var_21;
  (*var_22)();
  piVar9 = *(int **)(var_22 + 0x69d5c);
  pcStack_d8 = (type_8 *)0x0;
  var_25 = (void *)*piVar9;
  piStack_d0 = piVar8;
  pcStack_cc = in_a3;
  pcStack_c8 = buf;
  pcStack_c4 = in_a2;
  pCStack_c0 = var_15;
  pcStack_bc = pcVar16;
  _Var4 = var_17(pCVar2);
  if (var_18(extraout_var_00,_Var4) == 0) {
    var_7 = var_19(pCVar2,&cStack_e0,&pcStack_d8);
    if (var_7 == var_8) {
      pcVar11->var_6 = (type_2 *)0x0;
      var_7 = var_23(pcStack_d8,cStack_e0,var_12,(size_t)pcVar7,(ssize_t *)&var_24);
      if (var_24 == (type_2 *)&DAT_ffffffff) {
        var_7 = CURLE_SEND_ERROR;
      }
      else if (var_7 == var_8 && var_24 == (type_2 *)0x0) {
        var_7 = CURLE_AGAIN;
      }
      else {
        pcVar11->var_6 = var_24;
      }
    }
  }
  else {
    var_7 = CURLE_RECURSIVE_API_CALL;
  }
  if (var_25 == (void *)*piVar9) {
    return var_7;
  }
  var_26 = var_25;
  (**(type_10 **)(var_22 + 0x699d0))();
  if ((var_26 != (void *)0x0) && (*(int *)((int)var_26 + 0x1030) == -0x3f212453)) {
    if (*(int *)((int)var_26 + 0x88) != 0) {
      var_7 = var_27((type_12 *)(*(int *)((int)var_26 + 0x88) + 0x8c),var_26);
      return var_7;
    }
    return var_8;
  }
  return CURLE_BAD_FUNCTION_ARGUMENT;
}


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

int MASKED(int param_1,uint param_2,int ***param_3,int ***param_4)

{
  undefined *puVar1;
  int iVar2;
  undefined4 *puVar3;
  int ***pppiVar4;
  int ***pppiVar5;
  int ***pppiVar6;
  int ***pppiVar7;
  int *piVar8;
  int iVar9;
  undefined4 *unaff_s4;
  int *piVar10;
  int iVar11;
  undefined *puVar12;
  code *pcVar13;
  code *pcVar14;
  undefined4 uStack_e0;
  int *piStack_dc;
  undefined4 uStack_d8;
  int iStack_d4;
  int *piStack_d0;
  int **ppiStack_cc;
  int **ppiStack_c8;
  int **ppiStack_c4;
  int iStack_c0;
  code *pcStack_bc;
  int *piStack_a8;
  undefined *puStack_a0;
  int **ppiStack_98;
  int *piStack_94;
  int *piStack_90;
  int iStack_8c;
  int **ppiStack_88;
  undefined *puStack_84;
  int iStack_80;
  int iStack_7c;
  undefined4 *puStack_78;
  code *pcStack_74;
  int local_58;
  undefined4 local_50 [9];
  int local_2c;
  
  puVar1 = PTR___stack_chk_guard_000a6fe0;
  pppiVar5 = (int ***)((param_2 & 1) << 4 | (param_2 & 4) << 3);
  pppiVar7 = (int ***)((uint)pppiVar5 | *(uint *)(param_1 + 0x138) & 0xffffffcf);
  *(int ****)(param_1 + 0x138) = pppiVar7;
  local_2c = *(int *)puVar1;
  pppiVar6 = pppiVar5;
  if (((param_2 & 1) == 0) && (iVar11 = *(int *)(param_1 + 0xcbc), iVar11 != 0)) {
    piVar10 = *(int **)(param_1 + 8);
    unaff_s4 = local_50;
    iVar9 = param_1;
    puVar3 = unaff_s4;
    do {
      param_4 = *(int ****)(iVar9 + 0xcc0);
      iVar2 = iVar9 + 0xc;
      *(undefined4 *)(iVar9 + 0xcc0) = 0;
      *puVar3 = param_4;
      param_3 = *(int ****)(iVar9 + 0xcc4);
      pppiVar6 = *(int ****)(iVar9 + 0xcc8);
      puVar3[1] = param_3;
      puVar3[2] = pppiVar6;
      iVar9 = iVar2;
      puVar3 = puVar3 + 3;
    } while (iVar2 != iVar11 * 0xc + param_1);
    local_58 = *piVar10;
    *(undefined4 *)(param_1 + 0xcbc) = 0;
    if (local_58 == param_1) {
      local_58 = 0;
    }
    else {
      *piVar10 = param_1;
    }
    puVar12 = PTR_PTR_free_000a6144;
    iVar2 = 0;
    iVar9 = 0;
    do {
      pppiVar4 = (int ***)*unaff_s4;
      if (iVar9 == 0) {
        param_4 = (int ***)unaff_s4[1];
        pppiVar6 = (int ***)unaff_s4[2];
        param_3 = pppiVar4;
        iVar9 = FUN_000266b0(piVar10);
      }
      iVar2 = iVar2 + 1;
      unaff_s4 = unaff_s4 + 3;
      (**(code **)puVar12)(pppiVar4);
    } while (iVar11 != iVar2);
    if (local_58 != 0) {
      *piVar10 = local_58;
    }
    ppiStack_88 = (int **)pppiVar7;
    if (iVar9 != 0) goto LAB_0003d0fc;
  }
  if (pppiVar5 != (int ***)0x30) {
    param_3 = (int ***)0x6;
    pppiVar6 = (int ***)0x0;
    FUN_00044d9c(param_1);
  }
  iVar9 = 0;
  FUN_000449a8(param_1);
  ppiStack_88 = (int **)pppiVar5;
LAB_0003d0fc:
  if (local_2c == *(int *)puVar1) {
    return iVar9;
  }
  pcVar13 = curl_easy_recv;
  iVar11 = local_2c;
  puVar12 = PTR___stack_chk_fail_000a6c54;
  (*(code *)PTR___stack_chk_fail_000a6c54)();
  puStack_a0 = puVar12 + 0x70f80;
  piVar10 = *(int **)(puVar12 + 0x69e50);
  puStack_84 = puVar1;
  iStack_8c = *piVar10;
  pppiVar5 = pppiVar6;
  pppiVar7 = param_3;
  pppiVar4 = param_4;
  iStack_80 = param_1;
  iStack_7c = iVar9;
  puStack_78 = unaff_s4;
  pcStack_74 = pcVar13;
  iVar9 = FUN_00048420();
  if (iVar9 == 0) {
    pppiVar7 = (int ***)&piStack_90;
    pppiVar5 = &ppiStack_98;
    iVar9 = FUN_0003c4e4(iVar11,pppiVar5,pppiVar7);
    if (iVar9 == 0) {
      piStack_a8 = (int *)&piStack_94;
      *param_4 = (int **)0x0;
      pppiVar7 = pppiVar6;
      pppiVar4 = param_3;
      iVar9 = FUN_00025e14(piStack_90,ppiStack_98,pppiVar6);
      pppiVar5 = (int ***)ppiStack_98;
      if (iVar9 == 0) {
        *param_4 = (int **)piStack_94;
      }
    }
  }
  else {
    iVar9 = 0x5d;
  }
  if (iStack_8c == *piVar10) {
    return iVar9;
  }
  pcVar13 = *(code **)(puStack_a0 + -0x74bc);
  pcVar14 = curl_easy_send;
  iVar9 = iStack_8c;
  (*pcVar13)();
  piVar8 = *(int **)(pcVar13 + 0x69d5c);
  uStack_d8 = 0;
  iStack_d4 = *piVar8;
  piStack_d0 = piVar10;
  ppiStack_cc = (int **)param_4;
  ppiStack_c8 = (int **)pppiVar6;
  ppiStack_c4 = (int **)param_3;
  iStack_c0 = iVar11;
  pcStack_bc = pcVar14;
  iVar11 = FUN_00048420();
  if (iVar11 == 0) {
    iVar11 = FUN_0003c4e4(iVar9,&uStack_e0,&uStack_d8);
    if (iVar11 == 0) {
      *pppiVar4 = (int **)0x0;
      iVar11 = FUN_00025cb8(uStack_d8,uStack_e0,pppiVar5,pppiVar7,&piStack_dc);
      if ((int **)piStack_dc == (int **)0xffffffff) {
        iVar11 = 0x37;
      }
      else if (iVar11 == 0 && (int **)piStack_dc == (int **)0x0) {
        iVar11 = 0x51;
      }
      else {
        *pppiVar4 = (int **)piStack_dc;
      }
    }
  }
  else {
    iVar11 = 0x5d;
  }
  if (iStack_d4 == *piVar8) {
    return iVar11;
  }
  iVar11 = iStack_d4;
  (**(code **)(pcVar13 + 0x699d0))();
  if ((iVar11 != 0) && (*(int *)(iVar11 + 0x1030) == -0x3f212453)) {
    if (*(int *)(iVar11 + 0x88) != 0) {
      iVar11 = FUN_00033390(*(int *)(iVar11 + 0x88) + 0x8c,iVar11);
      return iVar11;
    }
    return 0;
  }
  return 0x2b;
}

