/* Agent_Release_x64.exe sha256 6f2be7b8eb799ba51b359d1958720aac5baee5b7ee0d1d36684d3cbd72d45469 * Ghidra 12.1.2 decompiler output for 0x14005ec50 FUN_14005ec50 * Pseudocode, not original source. */ ulonglong FUN_14005ec50(longlong param_1,uint param_2,SIZE_T param_3,undefined8 *param_4) { SIZE_T *pSVar1; undefined4 uVar2; int *piVar3; ulonglong uVar4; undefined **local_40 [5]; uVar4 = param_3 & 0xffffffff; pSVar1 = (SIZE_T *)(param_1 + -0xa8); piVar3 = (int *)(**(code **)(*pSVar1 + 0x58))(pSVar1); FUN_14002e6e0(piVar3); if (DAT_14015bfcf != '\0') { param_3 = *pSVar1; (**(code **)(param_3 + 200))(pSVar1,L"Proud::CNetServerImpl::JoinP2PGroup"); } *(int *)(param_1 + 0x16f0) = *(int *)(param_1 + 0x16f0) + 1; uVar2 = *(undefined4 *)(param_1 + 0x16f0); FUN_140040d80(local_40,(longlong)param_4,param_3); local_40[0] = Proud::ByteArray::vftable; uVar4 = FUN_14005cf50((longlong)pSVar1,param_2,uVar4,local_40,uVar2); FUN_14002e770((longlong)piVar3); FUN_14003b870(param_4); return uVar4 & 0xff; }