Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- int64_t sub_1429f8470(void* arg1, int32_t* arg2, void* arg3, int64_t* arg4)
- {
- if (!*(uint64_t*)((char*)arg1 + 0x88))
- {
- if ((char*)arg1 + 8 != arg3)
- {
- int64_t rax_1 = *(uint64_t*)((char*)arg1 + 0x18);
- if (rax_1)
- rax_1((char*)arg1 + 8, 0, 0);
- int64_t rbx_1 = *(uint64_t*)((char*)arg3 + 0x10);
- int64_t rax_2;
- if (!rbx_1)
- rax_2 = 0;
- else
- {
- rbx_1((char*)arg1 + 8, arg3, 2);
- rax_2 = *(uint64_t*)((char*)arg3 + 0x10);
- }
- *(uint64_t*)((char*)arg1 + 0x18) = rax_2;
- *(uint64_t*)((char*)arg1 + 0x20) = *(uint64_t*)((char*)arg3 + 0x18);
- *(uint64_t*)((char*)arg3 + 0x10) = 0;
- *(uint64_t*)((char*)arg3 + 0x18) = sub_1400e8c20;
- }
- void** s_1 = j_sub_1452ca40c(0xd8);
- void** s = s_1;
- int32_t var_e8;
- if (!s_1)
- {
- void** s_2;
- while (true)
- {
- int64_t rax_4 = data_145c71700;
- if (rax_4 && rax_4(0xd8))
- {
- s_2 = j_sub_1452ca40c(0xd8);
- if (s_2)
- break;
- continue;
- }
- int64_t var_e0_2 = 0xd8;
- label_1429f95c0:
- var_e8 = 2;
- sub_141e64090("..\..\prog\engine\memory\dagmem.…", 0x310, "Not enough memory to alloc %llu …", &var_e8, 1);
- /* no return */
- }
- s = s_2;
- }
- uint32_t rax_8 = (int32_t)((j__msize_base(s) + 0xf) >> 4);
- data_145c716f0 += rax_8;
- data_145c716f4 += 1;
- int32_t rax_9 = *(uint32_t*)((char*)arg1 + 0x74);
- char rsi_2 = *(uint8_t*)((char*)arg1 + 0x71);
- char rax_10 = *(uint8_t*)((char*)arg1 + 0x70);
- int64_t rbx_2 = *(uint64_t*)((char*)arg1 + 0x68);
- char var_98 = 0;
- void* rax_11 = strlen(arg2);
- void* r12_1 = rax_11;
- void* var_90;
- char var_81;
- int32_t* r14_2;
- if (rax_11 < 0x18)
- {
- rax_11 = 0x17;
- rax_11 = 0x17 - r12_1;
- var_81 = rax_11;
- r14_2 = var_98;
- }
- else
- {
- int32_t* rax_12 = j_sub_1452ca40c((char*)r12_1 + 1);
- r14_2 = rax_12;
- if (!rax_12)
- {
- while (true)
- {
- int64_t rax_13 = data_145c71700;
- if (rax_13 && rax_13((char*)r12_1 + 1))
- {
- int32_t* rax_15 = j_sub_1452ca40c((char*)r12_1 + 1);
- if (!rax_15)
- continue;
- r14_2 = rax_15;
- break;
- }
- void* var_e0_3 = (char*)r12_1 + 1;
- goto label_1429f95c0;
- }
- }
- uint32_t rax_18 = (int32_t)((j__msize_base(r14_2) + 0xf) >> 4);
- data_145c716f0 += rax_18;
- data_145c716f4 += 1;
- var_98 = r14_2;
- int64_t rax_20 = r12_1 | 0x8000000000000000;
- int64_t var_88_1 = rax_20;
- var_90 = r12_1;
- rax_11 = rax_20 >> 0x38;
- }
- if (rax_11 >= 0)
- r14_2 = &var_98;
- char* r14_3 = &var_98;
- memcpy(r14_2, arg2, r12_1);
- uint64_t rax_21 = (uint64_t)var_81;
- void* rdx_3 = &var_98 - rax_21 + 0x17;
- if (rax_21 < 0)
- rdx_3 = var_98 + var_90;
- *(uint8_t*)rdx_3 = 0;
- s[9] = 0;
- __builtin_memset(s, 0, 0x44);
- *(uint8_t*)((char*)s + 0x5f) = 0x17;
- s[0xc] = 0;
- s[0xd] = rbx_2;
- *(uint16_t*)((char*)s + 0xbc) = 0;
- __builtin_memset(&s[0x18], 0, 0x18);
- __builtin_memset(&s[0xe], 0, 0x4b);
- (*(uint64_t*)(data_145b2d6b0 + 0x30))(&data_145d4e370, 0x50);
- data_145b2cfc0 = &data_145d4e370;
- data_145b2cfb8 = (*(uint32_t*)(data_145b2d6b0 + 0x10) & 0x10) << 0x11 | (0xffdfffff & data_145b2cfb8);
- data_145b2cfd0 = "1.2.11.zlib-ng";
- data_145b2d008 = 0x1000009;
- int32_t var_100_1 = 9;
- int32_t var_108_1 = 0;
- sub_143e16e90(&data_145d4e3c0, 0x50, "%u.%u.%u", 1);
- data_145b2d010 = &data_145d4e3c0;
- data_145b2d040 = 0x28a5;
- int32_t var_100_2 = 5;
- int32_t var_108_2 = 4;
- sub_143e16e90(&data_145d4e410, 0x50, "%u.%u.%u", 1);
- data_145b2d048 = &data_145d4e410;
- if (data_145b2cfa8 <= 0x73201)
- {
- char const (* var_e0_4)[0x7] = data_145b2cfa0;
- var_e8 = 1;
- sub_141e64090("..\..\prog\gameLibs\websocket\we…", 0x28b, "CURL version '%s'. At least '7.5…", &var_e8, 1);
- /* no return */
- }
- int32_t* rax_28 = sub_142fef270();
- *(uint64_t*)s = rax_28;
- if (!rax_28)
- {
- sub_141e64090("..\..\prog\gameLibs\websocket\we…", 0x28f, "failed to allocate curl handle", nullptr, 0);
- /* no return */
- }
- sub_142ff27b0(rax_28, 0x2777, s);
- sub_142ff27b0(*(uint64_t*)s, 0x272d, s);
- sub_142ff27b0(*(uint64_t*)s, 0x2711, s);
- sub_142ff27b0(*(uint64_t*)s, 0x2719, s);
- sub_142ff27b0(*(uint64_t*)s, 0x4e6f, sub_1429f7ae0);
- sub_142ff27b0(*(uint64_t*)s, 0x4e2b, sub_1429f6640);
- sub_142ff27b0(*(uint64_t*)s, 0x4e2c, sub_1429f6590);
- sub_142ff27b0(*(uint64_t*)s, 0x34, 1);
- sub_142ff27b0(*(uint64_t*)s, 0x29, 1);
- sub_142ff27b0(*(uint64_t*)s, 0x4e7e, sub_1429f81d0);
- uint64_t r8_6 = (uint64_t)rax_9;
- if (r8_6 > 0)
- sub_142ff27b0(*(uint64_t*)s, 0x9c, r8_6);
- uint64_t rax_29 = (uint64_t)data_145cb5767;
- int64_t rcx_24;
- if (rax_29 >= 0)
- rcx_24 = 0x17 - rax_29;
- else
- rcx_24 = data_145cb5758;
- if (!rax_10 || !rcx_24)
- {
- sub_142ff27b0(*(uint64_t*)s, 0x40, 0);
- sub_142ff27b0(*(uint64_t*)s, 0x51, 0);
- }
- else
- {
- int64_t* r8_7;
- if (rax_29 >= 0)
- r8_7 = &data_145cb5750;
- else
- r8_7 = data_145cb5750;
- sub_142ff27b0(*(uint64_t*)s, 0x2751, r8_7);
- sub_142ff27b0(*(uint64_t*)s, 0x40, 1);
- sub_142ff27b0(*(uint64_t*)s, 0x51, (uint64_t)((uint32_t)rsi_2 * 2));
- }
- uint64_t r9 = (uint64_t)var_81;
- void* r10_1 = 0x17 - r9;
- if (r9 < 0)
- r10_1 = var_90;
- if (r10_1 >= 5)
- {
- char* r8_10 = var_98;
- char temp0_1 = r9;
- void var_128;
- void* r11_1 = &var_128 + 0x17 - r9 + 0x90;
- if (temp0_1 < 0)
- r11_1 = (char*)var_90 + r8_10;
- char* rdx_7 = &var_98;
- if (temp0_1 < 0)
- rdx_7 = r8_10;
- if (rdx_7 != r11_1)
- {
- int64_t rbx_3 = 4;
- int64_t rdi_1 = 3;
- int64_t rsi_4 = 2;
- int64_t rbp_1 = 1;
- int64_t rax_31 = 0;
- while (true)
- {
- void* rcx_30 = &rdx_7[rbp_1];
- int32_t* r8_11;
- int32_t* r9_1;
- if (rdx_7[rbx_3 - 4] != 0x77)
- {
- if (rcx_30 != r11_1)
- {
- label_1429f8a19:
- rax_31 -= 1;
- rbx_3 += 1;
- rdi_1 += 1;
- rsi_4 += 1;
- rbp_1 += 1;
- continue;
- }
- }
- else if (rcx_30 != r11_1)
- {
- if (rdx_7[rbx_3 - 3] != 0x73)
- goto label_1429f8a19;
- if (&rdx_7[rsi_4] != r11_1)
- {
- if (rdx_7[rbx_3 - 2] != 0x3a)
- goto label_1429f8a19;
- if (&rdx_7[rdi_1] != r11_1)
- {
- if (rdx_7[rbx_3 - 1] != 0x2f)
- goto label_1429f8a19;
- void* rcx_33 = &rdx_7[rbx_3];
- if (rcx_33 != r11_1)
- {
- if (*(uint8_t*)rcx_33 != 0x2f)
- goto label_1429f8a19;
- if (rdx_7 - rax_31 != r11_1 && !rax_31)
- {
- if (r9 >= 0)
- r8_10 = &var_98;
- r8_11 = &r8_10[5];
- var_108_2 = &data_145a4bdf6[7];
- r9_1 = "http://";
- label_1429f8a9e:
- sub_140687980(&var_98, rdx_7, r8_11, r9_1, var_108_2);
- break;
- }
- }
- }
- }
- }
- if (r10_1 < 6)
- break;
- int64_t rbx_4 = 5;
- int64_t rdi_2 = 4;
- int64_t rsi_6 = 3;
- int64_t rax_33 = 2;
- int64_t rbp_2 = 1;
- int64_t r10_2 = 0;
- while (true)
- {
- void* rcx_41 = &rdx_7[rbp_2];
- if (rdx_7[rbx_4 - 5] == 0x77)
- {
- if (rcx_41 == r11_1)
- goto label_1429f8aaf;
- if (rdx_7[rbx_4 - 4] == 0x73)
- {
- if (&rdx_7[rax_33] == r11_1)
- goto label_1429f8aaf;
- if (rdx_7[rbx_4 - 3] == 0x73)
- {
- if (&rdx_7[rsi_6] == r11_1)
- goto label_1429f8aaf;
- if (rdx_7[rbx_4 - 2] == 0x3a)
- {
- if (&rdx_7[rdi_2] == r11_1)
- goto label_1429f8aaf;
- if (rdx_7[rbx_4 - 1] == 0x2f)
- {
- void* rcx_45 = &rdx_7[rbx_4];
- if (rcx_45 == r11_1)
- goto label_1429f8aaf;
- if (*(uint8_t*)rcx_45 == 0x2f)
- {
- if (rdx_7 - r10_2 == r11_1)
- break;
- if (r10_2)
- break;
- if (r9 >= 0)
- r8_10 = &var_98;
- r8_11 = &r8_10[6];
- var_108_2 = &data_145a4bde6[8];
- r9_1 = "https://";
- goto label_1429f8a9e;
- }
- }
- }
- }
- }
- }
- else if (rcx_41 == r11_1)
- goto label_1429f8aaf;
- r10_2 -= 1;
- rbx_4 += 1;
- rdi_2 += 1;
- rsi_6 += 1;
- rax_33 += 1;
- rbp_2 += 1;
- }
- break;
- }
- }
- }
- label_1429f8aaf:
- if (var_81 < 0)
- r14_3 = var_98;
- sub_142ff27b0(*(uint64_t*)s, 0x2712, r14_3);
- sub_142ff27b0(*(uint64_t*)s, 0x54, 2);
- sub_142ff27b0(*(uint64_t*)s, 0x2e, 1);
- sub_142ff27b0(*(uint64_t*)s, 0x2734, "GET");
- int64_t* i_17 = s[1];
- int64_t rax_32 = data_145b15750("Expect:");
- if (!rax_32)
- i_17 = nullptr;
- else
- {
- int64_t* i_19 = data_145b15768(0x10);
- if (!i_19)
- {
- data_145b15758(rax_32);
- i_17 = nullptr;
- }
- else
- {
- i_19[1] = 0;
- *(uint64_t*)i_19 = rax_32;
- if (!i_17)
- i_17 = i_19;
- else
- {
- int64_t* i = i_17;
- int64_t* i_8;
- do
- {
- i_8 = i;
- i = i[1];
- } while (i);
- i_8[1] = i_19;
- }
- }
- }
- s[1] = i_17;
- int64_t rax_36 = data_145b15750("Transfer-Encoding:");
- if (!rax_36)
- i_17 = nullptr;
- else
- {
- int64_t* i_20 = data_145b15768(0x10);
- if (!i_20)
- {
- data_145b15758(rax_36);
- i_17 = nullptr;
- }
- else
- {
- i_20[1] = 0;
- *(uint64_t*)i_20 = rax_36;
- if (!i_17)
- i_17 = i_20;
- else
- {
- int64_t* i_1 = i_17;
- int64_t* i_9;
- do
- {
- i_9 = i_1;
- i_1 = i_1[1];
- } while (i_1);
- i_9[1] = i_20;
- }
- }
- }
- s[1] = i_17;
- int64_t rax_37 = data_145b15750("Connection: Upgrade");
- if (!rax_37)
- i_17 = nullptr;
- else
- {
- int64_t* i_21 = data_145b15768(0x10);
- if (!i_21)
- {
- data_145b15758(rax_37);
- i_17 = nullptr;
- }
- else
- {
- i_21[1] = 0;
- *(uint64_t*)i_21 = rax_37;
- if (!i_17)
- i_17 = i_21;
- else
- {
- int64_t* i_2 = i_17;
- int64_t* i_10;
- do
- {
- i_10 = i_2;
- i_2 = i_2[1];
- } while (i_2);
- i_10[1] = i_21;
- }
- }
- }
- s[1] = i_17;
- int64_t rax_38 = data_145b15750("Upgrade: websocket");
- if (!rax_38)
- i_17 = nullptr;
- else
- {
- int64_t* i_22 = data_145b15768(0x10);
- if (!i_22)
- {
- data_145b15758(rax_38);
- i_17 = nullptr;
- }
- else
- {
- i_22[1] = 0;
- *(uint64_t*)i_22 = rax_38;
- if (!i_17)
- i_17 = i_22;
- else
- {
- int64_t* i_3 = i_17;
- int64_t* i_11;
- do
- {
- i_11 = i_3;
- i_3 = i_3[1];
- } while (i_3);
- i_11[1] = i_22;
- }
- }
- }
- s[1] = i_17;
- int64_t rax_39 = data_145b15750("Sec-WebSocket-Version: 13");
- if (!rax_39)
- i_17 = nullptr;
- else
- {
- int64_t* i_23 = data_145b15768(0x10);
- if (!i_23)
- {
- data_145b15758(rax_39);
- i_17 = nullptr;
- }
- else
- {
- i_23[1] = 0;
- *(uint64_t*)i_23 = rax_39;
- if (!i_17)
- i_17 = i_23;
- else
- {
- int64_t* i_4 = i_17;
- int64_t* i_12;
- do
- {
- i_12 = i_4;
- i_4 = i_4[1];
- } while (i_4);
- i_12[1] = i_23;
- }
- }
- }
- s[1] = i_17;
- int64_t var_d8_1 = (int64_t){0};
- char var_c8;
- sub_1438987a0(nullptr, &var_c8, 0x10, 0, var_108_2, var_100_2);
- uint64_t rcx_51 = (uint64_t)var_c8;
- var_e8 = (*"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdef…")[rcx_51 >> 2];
- char var_c7;
- uint64_t rbp_3 = (uint64_t)var_c7;
- *(uint8_t*)((char*)var_e8)[1] = (*"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdef…")[rbp_3 >> 4 | ((uint64_t)(rcx_51 << 4) & 0x30)];
- char var_c6;
- uint64_t rcx_55 = (uint64_t)var_c6;
- *(uint8_t*)((char*)var_e8)[2] = (*"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdef…")[(rcx_55 >> 6) + (((uint64_t)rbp_3 & 0xf) << 2)];
- *(uint8_t*)((char*)var_e8)[3] = *(uint8_t*)(((uint64_t)rcx_55 & 0x3f) + "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdef…");
- char var_c5;
- uint64_t rcx_58 = (uint64_t)var_c5;
- char var_e4_1 = (*"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdef…")[rcx_58 >> 2];
- char var_c4;
- uint64_t rbp_5 = (uint64_t)var_c4;
- char var_e3_1 = (*"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdef…")[rbp_5 >> 4 | ((uint64_t)(rcx_58 << 4) & 0x30)];
- char var_c3;
- uint64_t rcx_62 = (uint64_t)var_c3;
- char var_e2_1 = (*"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdef…")[(rcx_62 >> 6) + (((uint64_t)rbp_5 & 0xf) << 2)];
- char var_e1_1 = *(uint8_t*)(((uint64_t)rcx_62 & 0x3f) + "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdef…");
- char var_c2;
- uint64_t rcx_65 = (uint64_t)var_c2;
- int64_t var_e0;
- var_e0 = (*"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdef…")[rcx_65 >> 2];
- char var_c1;
- uint64_t rbp_7 = (uint64_t)var_c1;
- *(uint8_t*)((char*)var_e0)[1] = (*"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdef…")[rbp_7 >> 4 | ((uint64_t)(rcx_65 << 4) & 0x30)];
- char var_c0;
- uint64_t rcx_69 = (uint64_t)var_c0;
- *(uint8_t*)((char*)var_e0)[2] = (*"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdef…")[(rcx_69 >> 6) + (((uint64_t)rbp_7 & 0xf) << 2)];
- *(uint8_t*)((char*)var_e0)[3] = *(uint8_t*)(((uint64_t)rcx_69 & 0x3f) + "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdef…");
- char var_bf;
- uint64_t rcx_72 = (uint64_t)var_bf;
- *(uint8_t*)((char*)var_e0)[4] = (*"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdef…")[rcx_72 >> 2];
- char var_be;
- uint64_t rbp_9 = (uint64_t)var_be;
- *(uint8_t*)((char*)var_e0)[5] = (*"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdef…")[rbp_9 >> 4 | ((uint64_t)(rcx_72 << 4) & 0x30)];
- char var_bd;
- uint64_t rcx_76 = (uint64_t)var_bd;
- *(uint8_t*)((char*)var_e0)[6] = (*"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdef…")[(rcx_76 >> 6) + (((uint64_t)rbp_9 & 0xf) << 2)];
- *(uint8_t*)((char*)var_e0)[7] = *(uint8_t*)(((uint64_t)rcx_76 & 0x3f) + "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdef…");
- char var_bc;
- uint64_t rcx_79 = (uint64_t)var_bc;
- var_d8_1 = (*"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdef…")[rcx_79 >> 2];
- char var_bb;
- uint64_t rbp_11 = (uint64_t)var_bb;
- *(uint8_t*)((char*)var_d8_1)[1] = (*"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdef…")[rbp_11 >> 4 | ((uint64_t)(rcx_79 << 4) & 0x30)];
- char var_ba;
- uint64_t rcx_83 = (uint64_t)var_ba;
- *(uint8_t*)((char*)var_d8_1)[2] = (*"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdef…")[(rcx_83 >> 6) + (((uint64_t)rbp_11 & 0xf) << 2)];
- *(uint8_t*)((char*)var_d8_1)[3] = *(uint8_t*)(((uint64_t)rcx_83 & 0x3f) + "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdef…");
- char var_b9;
- uint64_t rcx_86 = (uint64_t)var_b9;
- *(uint8_t*)((char*)var_d8_1)[4] = (*"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdef…")[rcx_86 >> 2];
- *(uint8_t*)((char*)var_d8_1)[5] = *(uint8_t*)(((uint64_t)(rcx_86 << 4) & 0x30) + "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdef…");
- *(uint16_t*)((char*)var_d8_1)[6] = 0x3d3d;
- char var_b8 = 0;
- void* rax_41 = strlen(&var_e8);
- void* r12_2 = rax_41;
- void* var_b0;
- int64_t var_a8;
- char var_a1;
- int32_t var_78;
- int32_t* i_16;
- if (rax_41 < 0x18)
- {
- rax_41 = 0x17;
- rax_41 = 0x17 - r12_2;
- var_a1 = rax_41;
- i_16 = var_b8;
- }
- else
- {
- int32_t* i_24 = j_sub_1452ca40c((char*)r12_2 + 1);
- i_16 = i_24;
- if (!i_24)
- {
- int32_t* i_5;
- do
- {
- int64_t rax_42 = data_145c71700;
- char rax_43;
- if (rax_42)
- rax_43 = rax_42((char*)r12_2 + 1);
- if (!rax_42 || !rax_43)
- {
- void* var_70 = (char*)r12_2 + 1;
- var_78 = 2;
- sub_141e64090("..\..\prog\engine\memory\dagmem.…", 0x310, "Not enough memory to alloc %llu …", &var_78, 1);
- /* no return */
- }
- i_5 = j_sub_1452ca40c((char*)r12_2 + 1);
- } while (!i_5);
- i_16 = i_5;
- }
- uint32_t rax_46 = (int32_t)((j__msize_base(i_16) + 0xf) >> 4);
- data_145c716f0 += rax_46;
- data_145c716f4 += 1;
- var_b8 = i_16;
- int64_t rax_48 = r12_2 | 0x8000000000000000;
- var_a8 = rax_48;
- var_b0 = r12_2;
- rax_41 = rax_48 >> 0x38;
- }
- if (rax_41 >= 0)
- i_16 = &var_b8;
- int32_t* rdi_4 = &var_e8;
- memcpy(i_16, &var_e8, r12_2);
- uint64_t rax_49 = (uint64_t)var_a1;
- void* rdx_64 = &var_b8 - rax_49 + 0x17;
- if (rax_49 < 0)
- rdx_64 = var_b8 + var_b0;
- *(uint8_t*)rdx_64 = 0;
- int64_t rax_50 = s[0xb];
- var_e8 = *(uint128_t*)((char*)s + 0x48);
- s[0xb] = var_a8;
- *(uint128_t*)((char*)s + 0x48) = var_b8;
- var_b8 = var_e8;
- int64_t var_a8_1 = rax_50;
- if (var_a1 < 0)
- {
- int64_t rsi_11 = var_b8;
- if (rsi_11)
- {
- int32_t rax_56 = -((int32_t)((j__msize_base(rsi_11) + 0xf) >> 4));
- data_145c716f0 += rax_56;
- data_145c716f4 -= 1;
- sub_1452c4c18(rsi_11);
- }
- }
- sub_140808780(&var_e8, "Sec-WebSocket-Key: ", &s[9]);
- if (*(uint8_t*)((char*)rax_50)[7] < 0)
- rdi_4 = var_e8;
- int64_t* i_15 = s[1];
- int64_t rax_57 = data_145b15750(rdi_4);
- if (!rax_57)
- i_15 = nullptr;
- else
- {
- int64_t* i_25 = data_145b15768(0x10);
- if (!i_25)
- {
- data_145b15758(rax_57);
- i_15 = nullptr;
- }
- else
- {
- i_25[1] = 0;
- *(uint64_t*)i_25 = rax_57;
- if (!i_15)
- i_15 = i_25;
- else
- {
- int64_t* i_6 = i_15;
- int64_t* i_13;
- do
- {
- i_13 = i_6;
- i_6 = i_6[1];
- } while (i_6);
- i_13[1] = i_25;
- }
- }
- }
- s[1] = i_15;
- int32_t* rsi_13 = *(uint64_t*)arg4;
- int64_t rbx_6 = arg4[1];
- if (rsi_13 != rbx_6)
- {
- do
- {
- void* rbp_14 = &rsi_13[6];
- sub_140352710(&var_78, rsi_13, ": ");
- uint64_t rax_58 = (uint64_t)*(uint8_t*)((char*)rsi_13 + 0x2f);
- void* rcx_103 = *(uint64_t*)((char*)rsi_13 + 0x18);
- void* r8_17 = (char*)rbp_14 - rax_58 + 0x17;
- char temp1_1 = rax_58;
- if (temp1_1 < 0)
- r8_17 = *(uint64_t*)((char*)rsi_13 + 0x20) + rcx_103;
- if (temp1_1 < 0)
- rbp_14 = rcx_103;
- sub_140280390(&var_78, rbp_14, r8_17);
- var_b8 = var_78;
- int64_t var_68;
- int64_t var_a8_2 = var_68;
- char* rcx_105 = &var_b8;
- if (var_a1 < 0)
- rcx_105 = var_b8;
- int64_t* i_18 = s[1];
- int64_t rax_60 = data_145b15750(rcx_105);
- if (!rax_60)
- i_18 = nullptr;
- else
- {
- int64_t* i_26 = data_145b15768(0x10);
- if (!i_26)
- {
- data_145b15758(rax_60);
- i_18 = nullptr;
- }
- else
- {
- i_26[1] = 0;
- *(uint64_t*)i_26 = rax_60;
- if (!i_18)
- i_18 = i_26;
- else
- {
- int64_t* i_7 = i_18;
- int64_t* i_14;
- do
- {
- i_14 = i_7;
- i_7 = i_7[1];
- } while (i_7);
- i_14[1] = i_26;
- }
- }
- }
- s[1] = i_18;
- if (var_a1 < 0)
- {
- int64_t rbp_16 = var_b8;
- if (rbp_16)
- {
- int32_t rax_64 = -((int32_t)((j__msize_base(rbp_16) + 0xf) >> 4));
- data_145c716f0 += rax_64;
- data_145c716f4 -= 1;
- sub_1452c4c18(rbp_16);
- }
- }
- rsi_13 = &rsi_13[0xc];
- } while (rsi_13 != rbx_6);
- i_15 = s[1];
- }
- sub_142ff27b0(*(uint64_t*)s, 0x2727, i_15);
- if (*(uint8_t*)((char*)rax_50)[7] < 0)
- {
- int64_t rsi_14 = var_e8;
- if (rsi_14)
- {
- int32_t rax_68 = -((int32_t)((j__msize_base(rsi_14) + 0xf) >> 4));
- data_145c716f0 += rax_68;
- data_145c716f4 -= 1;
- sub_1452c4c18(rsi_14);
- }
- }
- if (var_81 < 0)
- {
- int64_t rsi_15 = var_98;
- if (rsi_15)
- {
- int32_t rax_72 = -((int32_t)((j__msize_base(rsi_15) + 0xf) >> 4));
- data_145c716f0 += rax_72;
- data_145c716f4 -= 1;
- sub_1452c4c18(rsi_15);
- }
- }
- int64_t* rsi_16 = *(uint64_t*)((char*)arg1 + 0x88);
- if (rsi_16 != s)
- {
- *(uint64_t*)((char*)arg1 + 0x88) = s;
- if (rsi_16)
- {
- sub_1429f8260(rsi_16);
- int32_t rax_76 = -((int32_t)((j__msize_base(rsi_16) + 0xf) >> 4));
- data_145c716f0 += rax_76;
- data_145c716f4 -= 1;
- sub_1452c4c18(rsi_16);
- s = *(uint64_t*)((char*)arg1 + 0x88);
- }
- }
- int32_t* rsi_17 = *(uint64_t*)s;
- int32_t* rax_77;
- int128_t zmm6_1;
- rax_77 = sub_143d12440(0x38f, 0x61, 0x47);
- *(uint64_t*)((char*)arg1 + 0x78) = rax_77;
- int32_t rax_78 = sub_143d12850(rax_77, rsi_17, zmm6_1);
- uint64_t rdx_70 = (uint64_t)(rax_78 + 1);
- char const* const rcx_118;
- if (rdx_70 > 0xd)
- {
- rcx_118 = "Unknown error";
- label_1429f9552:
- int64_t var_e0_1 = (int64_t)rax_78;
- var_e8 = 2;
- var_d8_1 = rcx_118;
- var_d8_1 = 1;
- sub_142adc6a0(2, "[websocket] curl_multi_add_handl…", &var_e8, 2);
- }
- else
- {
- rcx_118 = "Please call curl_multi_perform()…";
- switch (rdx_70)
- {
- case 0:
- {
- goto label_1429f9552;
- }
- case 1:
- {
- *(uint8_t*)((char*)arg1 + 0x80) = 1;
- break;
- }
- case 2:
- {
- rcx_118 = "Invalid multi handle";
- goto label_1429f9552;
- }
- case 3:
- {
- rcx_118 = "Invalid easy handle";
- goto label_1429f9552;
- }
- case 4:
- {
- rcx_118 = "Out of memory";
- goto label_1429f9552;
- }
- case 5:
- {
- rcx_118 = "Internal error";
- goto label_1429f9552;
- }
- case 6:
- {
- rcx_118 = "Invalid socket argument";
- goto label_1429f9552;
- }
- case 7:
- {
- rcx_118 = "Unknown option";
- goto label_1429f9552;
- }
- case 8:
- {
- rcx_118 = "The easy handle is already added…";
- goto label_1429f9552;
- }
- case 9:
- {
- rcx_118 = "API function called from within …";
- goto label_1429f9552;
- }
- case 0xa:
- {
- rcx_118 = "Wakeup is unavailable or failed";
- goto label_1429f9552;
- }
- case 0xb:
- {
- rcx_118 = "A libcurl function was given a b…";
- goto label_1429f9552;
- }
- case 0xc:
- {
- rcx_118 = "Operation was aborted by an appl…";
- goto label_1429f9552;
- }
- case 0xd:
- {
- rcx_118 = "Unrecoverable error in select/po…";
- goto label_1429f9552;
- }
- }
- }
- }
- else
- (*(uint64_t*)((char*)arg3 + 0x18))(arg1, 2, arg3);
- int64_t result = *(uint64_t*)((char*)arg3 + 0x10);
- if (!result)
- return result;
- return result(arg3, 0, 0);
- }
Add Comment
Please, Sign In to add comment