84 lines
2.2 KiB
C
84 lines
2.2 KiB
C
/* 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);
|
|
}
|
|
|