/* DBCServer_Release_x64.exe sha256 d9e4fccdf3482e50247686d4452c0b13c75a53efc4bd7320668eece8d1ce828c * Ghidra 12.1.2 decompiler output for 0x14019cad0 FUN_14019cad0 * Pseudocode, not original source. */ undefined8 * FUN_14019cad0(undefined8 *param_1,int param_2,undefined8 param_3) { undefined4 uVar1; undefined8 uVar2; undefined8 uVar3; undefined1 local_50 [72]; uVar3 = 0xfffffffffffffffe; *param_1 = 0; param_1[1] = 0; param_1[2] = 0; uVar1 = FUN_140171510(); FUN_14016da70(param_1 + 5,uVar1,1); param_1[0x18] = 0; param_1[0x19] = 0; param_1[0x1a] = 0; param_1[0x1b] = 0; *(undefined1 *)(param_1 + 0x20) = 0; param_1[0x29] = 0; param_1[0x2a] = 0; param_1[0x2b] = 0; *(undefined4 *)(param_1 + 0x2c) = 0; param_1[0x28] = Proud::CSocketBuffer::vftable; *(undefined4 *)((longlong)param_1 + 0x164) = 1; param_1[0x30] = 0; param_1[0x31] = 0; param_1[0x32] = 0; param_1[0x33] = 0; *(undefined1 *)(param_1 + 0x38) = 0; param_1[0x41] = 0; param_1[0x42] = 0; param_1[0x43] = 0; *(undefined4 *)(param_1 + 0x44) = 0; param_1[0x40] = Proud::CSocketBuffer::vftable; *(undefined4 *)((longlong)param_1 + 0x224) = 1; param_1[0x48] = 0; param_1[0x49] = 0; param_1[0x4a] = 0; param_1[0x4b] = 0; *(undefined1 *)(param_1 + 0x50) = 0; param_1[0x59] = 0; param_1[0x5a] = 0; param_1[0x5b] = 0; *(undefined4 *)(param_1 + 0x5c) = 0; param_1[0x58] = Proud::CSocketBuffer::vftable; *(undefined4 *)((longlong)param_1 + 0x2e4) = 1; param_1[0x68] = 0; param_1[0x69] = 0; param_1[0x6a] = 0; param_1[0x6b] = 0; *(undefined1 *)(param_1 + 0x70) = 0; *(undefined1 *)(param_1 + 4) = 0; param_1[3] = param_3; FUN_14019c940(param_1); if (param_2 == 0) { uVar2 = 1; } else if (param_2 == 1) { uVar2 = 2; } else { if (param_2 != 2) { FUN_14016f090(L"Invalid Parameter in Socket ctor!"); goto LAB_14019cc94; } uVar2 = 3; } uVar3 = WSASocketW(2,uVar2,0,0,0,1,uVar3); param_1[0x7a] = uVar3; LAB_14019cc94: if (param_1[0x7a] != -1) { return param_1; } uVar1 = Ordinal_111(); FUN_14016d300(local_50,&DAT_140280218,uVar1); /* WARNING: Subroutine does not return */ _CxxThrowException(local_50,(ThrowInfo *)&DAT_1403417f8); }