add agent manager release decomp
This commit is contained in:
parent
31ff800b2a
commit
fac6117145
7019 changed files with 254032 additions and 5 deletions
275
decomp/AgentManager_Release_x64/full/functions/0x1400b41f0.c
Normal file
275
decomp/AgentManager_Release_x64/full/functions/0x1400b41f0.c
Normal file
|
|
@ -0,0 +1,275 @@
|
|||
/* AgentManager_Release_x64.exe sha256 8fd8ca91725858651a7839d34257b10c2970ac16c97e60c523b8b0c983fcb186
|
||||
* Ghidra 12.1.2 decompiler output for 0x1400b41f0 FUN_1400b41f0
|
||||
* Pseudocode, not original source. */
|
||||
|
||||
/* WARNING: Removing unreachable block (ram,0x0001400b439c) */
|
||||
/* WARNING: Removing unreachable block (ram,0x0001400b43a5) */
|
||||
/* WARNING: Removing unreachable block (ram,0x0001400b43c6) */
|
||||
/* WARNING: Removing unreachable block (ram,0x0001400b43cf) */
|
||||
|
||||
longlong * FUN_1400b41f0(longlong *param_1,undefined8 param_2,undefined8 param_3,longlong param_4)
|
||||
|
||||
{
|
||||
ulonglong *puVar1;
|
||||
ulonglong *puVar2;
|
||||
bool bVar3;
|
||||
ulonglong uVar4;
|
||||
ulonglong *puVar5;
|
||||
undefined8 *puVar6;
|
||||
ulonglong *puVar7;
|
||||
ulonglong *puVar8;
|
||||
longlong lVar9;
|
||||
longlong *plVar10;
|
||||
longlong lVar11;
|
||||
undefined1 uVar12;
|
||||
undefined7 uVar13;
|
||||
double dVar14;
|
||||
ulonglong *local_res10;
|
||||
ulonglong *local_res18;
|
||||
longlong local_50;
|
||||
undefined4 local_44;
|
||||
longlong local_40;
|
||||
|
||||
uVar13 = (undefined7)((ulonglong)param_3 >> 8);
|
||||
FUN_1400770f0(param_1);
|
||||
lVar11 = 0;
|
||||
param_1[0x10] = 0;
|
||||
param_1[0x14] = 0;
|
||||
param_1[0x15] = 0;
|
||||
param_1[0x16] = 0;
|
||||
*param_1 = (longlong)Proud::CNetClientImpl::vftable;
|
||||
param_1[0xc] = (longlong)Proud::CNetClientImpl::vftable;
|
||||
param_1[0xd] = (longlong)Proud::CNetClientImpl::vftable;
|
||||
param_1[0xe] = (longlong)Proud::CNetClientImpl::vftable;
|
||||
param_1[0xf] = (longlong)Proud::CNetClientImpl::vftable;
|
||||
param_1[0x11] = (longlong)Proud::CNetClientImpl::vftable;
|
||||
param_1[0x12] = (longlong)Proud::CNetClientImpl::vftable;
|
||||
param_1[0x13] = (longlong)Proud::CNetClientImpl::vftable;
|
||||
FUN_14009aa10((double *)(param_1 + 0x17),DAT_14016f0f8 * 10.0 * 2.0);
|
||||
*(undefined4 *)(param_1 + 0x93) = 0;
|
||||
param_1[0x96] = 0;
|
||||
param_1[0x97] = 0;
|
||||
param_1[0x98] = 0;
|
||||
param_1[0x99] = 0;
|
||||
param_1[0x95] = (longlong)Proud::ByteArray::vftable;
|
||||
*(undefined1 *)(param_1 + 0x9a) = 0;
|
||||
param_1[0x9c] = 0;
|
||||
uVar4 = FUN_140094860();
|
||||
uVar4 = uVar4 & 0xffffffff;
|
||||
uVar12 = 1;
|
||||
FUN_14003cf60((undefined4 *)(param_1 + 0xa3),uVar4,CONCAT71(uVar13,1),param_4);
|
||||
param_1[0xba] = 0;
|
||||
param_1[0xbb] = 0;
|
||||
*(undefined1 *)(param_1 + 0xbc) = 0;
|
||||
param_1[0xc6] = 0;
|
||||
param_1[0xbd] = 0;
|
||||
param_1[0xbe] = 0;
|
||||
param_1[0xbf] = 0;
|
||||
*(undefined4 *)(param_1 + 0xc1) = 0x11;
|
||||
param_1[0xc0] = 0;
|
||||
*(undefined4 *)(param_1 + 0xc5) = 0;
|
||||
*(undefined4 *)((longlong)param_1 + 0x60c) = 0x3f400000;
|
||||
*(undefined4 *)(param_1 + 0xc2) = 0x3e800000;
|
||||
*(undefined4 *)((longlong)param_1 + 0x614) = 0x40100000;
|
||||
param_1[0xc3] = 0x26;
|
||||
param_1[0xc4] = 4;
|
||||
param_1[0xc4] = 0;
|
||||
param_1[199] = 0;
|
||||
*(undefined1 *)((longlong)param_1 + 0x68c) = 0;
|
||||
*(undefined4 *)(param_1 + 0xd1) = 0;
|
||||
*(undefined4 *)(param_1 + 0xd2) = 0;
|
||||
param_1[0xcb] = 0;
|
||||
param_1[0xcc] = 0;
|
||||
param_1[0xd0] = 0;
|
||||
param_1[0xcf] = 0;
|
||||
param_1[0xce] = 0;
|
||||
param_1[0xcd] = 0;
|
||||
FUN_1400979a0((undefined4 *)(param_1 + 0xd4));
|
||||
*(undefined4 *)(param_1 + 0xda) = 0;
|
||||
*(undefined4 *)((longlong)param_1 + 0x6d4) = 0;
|
||||
*(undefined4 *)(param_1 + 0xdb) = 0;
|
||||
*(undefined4 *)((longlong)param_1 + 0x6dc) = 0;
|
||||
param_1[0xdc] = 0;
|
||||
param_1[0xdf] = 0;
|
||||
param_1[0xdd] = 0;
|
||||
param_1[0xde] = 0;
|
||||
*(undefined4 *)(param_1 + 0x159) = 0;
|
||||
param_1[0x15c] = 0;
|
||||
param_1[0x15d] = 0;
|
||||
param_1[0x15e] = 0;
|
||||
param_1[0x15f] = 0;
|
||||
param_1[0x15b] = (longlong)Proud::ByteArray::vftable;
|
||||
*(undefined1 *)(param_1 + 0x160) = 0;
|
||||
puVar1 = (ulonglong *)(param_1 + 0x161);
|
||||
local_res10 = puVar1;
|
||||
FUN_1400480f0(puVar1,uVar4,CONCAT71(uVar13,uVar12),param_4);
|
||||
FUN_140048210((longlong)puVar1);
|
||||
param_1[0x2a4] = 0;
|
||||
*(undefined1 *)(param_1 + 0x2a5) = 0;
|
||||
param_1[0x2a6] = 0;
|
||||
param_1[0x2a9] = 0;
|
||||
param_1[0x2a7] = 0;
|
||||
param_1[0x2a8] = 0;
|
||||
param_1[0x2aa] = (longlong)Proud::CNetClientImpl::ServerAsSendDest::vftable;
|
||||
param_1[0x2ab] = (longlong)Proud::CNetClientImpl::ServerAsSendDest::vftable;
|
||||
param_1[0x2ac] = (longlong)param_1;
|
||||
param_1[0x2ad] = 0;
|
||||
param_1[0x2ae] = 0;
|
||||
FUN_140049bd0(param_1 + 0x2b1,uVar4,CONCAT71(uVar13,uVar12),param_4);
|
||||
param_1[699] = 0;
|
||||
param_1[700] = 0;
|
||||
param_1[0x2bf] = 0;
|
||||
param_1[0x2bd] = 0;
|
||||
param_1[0x2be] = 0;
|
||||
param_1[0x2c0] = 0;
|
||||
param_1[0x2c3] = 0;
|
||||
param_1[0x2c1] = 0;
|
||||
param_1[0x2c2] = 0;
|
||||
FUN_140048880((undefined2 *)(param_1 + 0x2c4));
|
||||
*(undefined1 *)(param_1 + 0x2ca) = 0;
|
||||
param_1[0x2d4] = 0;
|
||||
param_1[0x2cb] = 0;
|
||||
param_1[0x2cc] = 0;
|
||||
param_1[0x2cd] = 0;
|
||||
*(undefined4 *)(param_1 + 0x2cf) = 0x11;
|
||||
param_1[0x2ce] = 0;
|
||||
*(undefined4 *)(param_1 + 0x2d3) = 0;
|
||||
*(undefined4 *)((longlong)param_1 + 0x167c) = 0x3f400000;
|
||||
*(undefined4 *)(param_1 + 0x2d0) = 0x3e800000;
|
||||
*(undefined4 *)((longlong)param_1 + 0x1684) = 0x40100000;
|
||||
param_1[0x2d1] = 0x26;
|
||||
param_1[0x2d2] = 4;
|
||||
param_1[0x2d2] = 0;
|
||||
*(undefined1 *)(param_1 + 0x2d5) = 0;
|
||||
param_1[0x2df] = 0;
|
||||
param_1[0x2d6] = 0;
|
||||
param_1[0x2d7] = 0;
|
||||
param_1[0x2d8] = 0;
|
||||
*(undefined4 *)(param_1 + 0x2da) = 0x11;
|
||||
param_1[0x2d9] = 0;
|
||||
*(undefined4 *)(param_1 + 0x2de) = 0;
|
||||
*(undefined4 *)((longlong)param_1 + 0x16d4) = 0x3f400000;
|
||||
*(undefined4 *)(param_1 + 0x2db) = 0x3e800000;
|
||||
*(undefined4 *)((longlong)param_1 + 0x16dc) = 0x40100000;
|
||||
param_1[0x2dc] = 0x26;
|
||||
param_1[0x2dd] = 0;
|
||||
param_1[0x2e0] = 0;
|
||||
param_1[0x2e3] = 0;
|
||||
param_1[0x2e1] = 0;
|
||||
param_1[0x2e2] = 0;
|
||||
*(undefined1 *)(param_1 + 0x2e4) = 0;
|
||||
param_1[0x2ee] = 0;
|
||||
param_1[0x2e5] = 0;
|
||||
param_1[0x2e6] = 0;
|
||||
param_1[0x2e7] = 0;
|
||||
*(undefined4 *)(param_1 + 0x2e9) = 0x11;
|
||||
param_1[0x2e8] = 0;
|
||||
*(undefined4 *)(param_1 + 0x2ed) = 0;
|
||||
*(undefined4 *)((longlong)param_1 + 0x174c) = 0x3f400000;
|
||||
*(undefined4 *)(param_1 + 0x2ea) = 0x3e800000;
|
||||
*(undefined4 *)((longlong)param_1 + 0x1754) = 0x40100000;
|
||||
param_1[0x2eb] = 0x26;
|
||||
param_1[0x2ec] = 0;
|
||||
FUN_14009aa10((double *)(param_1 + 0x2ef),DAT_14016f180);
|
||||
param_1[0x2f4] = 0;
|
||||
param_1[0x2f5] = 0;
|
||||
param_1[0x2f6] = 0;
|
||||
param_1[0x2f9] = 0;
|
||||
param_1[0x2f7] = 0;
|
||||
param_1[0x2f8] = 0;
|
||||
puVar1 = (ulonglong *)(param_1 + 0x2fa);
|
||||
local_res10 = puVar1;
|
||||
FUN_140076890(puVar1);
|
||||
*puVar1 = (ulonglong)ProudC2C::Proxy::vftable;
|
||||
if (*(int *)((longlong)param_1 + 0x17e4) != 1) {
|
||||
FUN_14003e110((wchar_t *)PTR_u_PIDL_compiler_is_incompatible_to_140170070);
|
||||
}
|
||||
*puVar1 = (ulonglong)Proud::CNetClientImpl::C2CProxy::vftable;
|
||||
FUN_140079b60(param_1 + 0x2fe);
|
||||
param_1[0x2fe] = (longlong)Proud::CNetClientImpl::C2CStub::vftable;
|
||||
puVar2 = (ulonglong *)(param_1 + 0x303);
|
||||
local_res10 = puVar2;
|
||||
FUN_140076890(puVar2);
|
||||
*puVar2 = (ulonglong)ProudC2S::Proxy::vftable;
|
||||
if (*(int *)((longlong)param_1 + 0x182c) != 1) {
|
||||
FUN_14003e110((wchar_t *)PTR_u_PIDL_compiler_is_incompatible_to_140170070);
|
||||
}
|
||||
*puVar2 = (ulonglong)Proud::CNetClientImpl::C2SProxy::vftable;
|
||||
FUN_140079b60(param_1 + 0x307);
|
||||
param_1[0x307] = (longlong)Proud::CNetClientImpl::S2CStub::vftable;
|
||||
param_1[0x30d] = 0;
|
||||
param_1[0x30e] = 0;
|
||||
FUN_14009aa10((double *)(param_1 + 0x30f),DAT_14016f1a0);
|
||||
*(undefined2 *)(param_1 + 0x319) = 0;
|
||||
*(undefined1 *)((longlong)param_1 + 0x18ca) = 0;
|
||||
param_1[0x30c] = (longlong)DAT_14016f1a0;
|
||||
puVar5 = FUN_1400a71c0((ulonglong *)&local_res10,uVar4,CONCAT71(uVar13,uVar12),param_4);
|
||||
puVar7 = (ulonglong *)(param_1 + 0xbb);
|
||||
FUN_14009d690(puVar7,puVar5,CONCAT71(uVar13,uVar12),param_4);
|
||||
puVar8 = local_res10;
|
||||
if (local_res10 != (ulonglong *)0x0) {
|
||||
puVar7 = local_res10;
|
||||
FUN_14003d040((int *)local_res10);
|
||||
bVar3 = true;
|
||||
local_res10[8] = local_res10[8] - 1;
|
||||
if (local_res10[8] == 0) {
|
||||
FUN_14003d0d0((longlong)puVar8);
|
||||
puVar7 = local_res10;
|
||||
bVar3 = false;
|
||||
local_res18 = local_res10;
|
||||
if ((undefined8 *)local_res10[7] != (undefined8 *)0x0) {
|
||||
puVar5 = (ulonglong *)0x1;
|
||||
(*(code *)**(undefined8 **)local_res10[7])();
|
||||
}
|
||||
FUN_14003d110((undefined4 *)puVar7,puVar5,CONCAT71(uVar13,uVar12),param_4);
|
||||
FUN_14003e8b0(puVar7);
|
||||
}
|
||||
if (bVar3) {
|
||||
FUN_14003d0d0((longlong)puVar8);
|
||||
puVar7 = puVar8;
|
||||
}
|
||||
}
|
||||
FUN_14003e170(puVar7,puVar5,CONCAT71(uVar13,uVar12),param_4);
|
||||
*(undefined1 *)(param_1 + 0xca) = 0;
|
||||
*(undefined4 *)(param_1 + 0xd3) = DAT_14016f110;
|
||||
param_1[0x2b0] = 0;
|
||||
param_1[0x2c9] = 0;
|
||||
*(undefined4 *)(param_1 + 0x2af) = 0;
|
||||
*(undefined4 *)(param_1 + 0xb8) = 0;
|
||||
*(undefined4 *)(param_1 + 0xb0) = 0;
|
||||
*(undefined4 *)(param_1 + 0xa1) = 0;
|
||||
lVar9 = lVar11;
|
||||
if (param_1[0xbb] != 0) {
|
||||
lVar9 = *(longlong *)(param_1[0xbb] + 0x38);
|
||||
}
|
||||
dVar14 = (double)FUN_1400bf740(lVar9);
|
||||
param_1[0xa2] = (longlong)(dVar14 + DAT_14016f100);
|
||||
FUN_140077540(param_1,(longlong *)puVar1,CONCAT71(uVar13,uVar12),param_4);
|
||||
FUN_140077540(param_1,(longlong *)puVar2,CONCAT71(uVar13,uVar12),param_4);
|
||||
FUN_140077740(param_1,param_1 + 0x307,CONCAT71(uVar13,uVar12),param_4);
|
||||
FUN_140077740(param_1,param_1 + 0x2fe,CONCAT71(uVar13,uVar12),param_4);
|
||||
*(undefined1 *)(param_1 + 0x2fc) = 1;
|
||||
*(undefined1 *)(param_1 + 0x305) = 1;
|
||||
*(undefined1 *)(param_1 + 0x30a) = 1;
|
||||
*(undefined1 *)(param_1 + 0x301) = 1;
|
||||
param_1[0x302] = (longlong)param_1;
|
||||
param_1[0x30b] = (longlong)param_1;
|
||||
*(undefined1 *)(param_1 + 0x2f2) = 0;
|
||||
param_1[0x2f3] = 0x3ff0000000000000;
|
||||
FUN_1400417c0(&local_50);
|
||||
local_50 = 0;
|
||||
local_44 = 0;
|
||||
if (param_1[0xbb] != 0) {
|
||||
lVar11 = *(longlong *)(param_1[0xbb] + 0x38);
|
||||
}
|
||||
local_40 = lVar11 + 0x10;
|
||||
plVar10 = &local_50;
|
||||
puVar6 = FUN_14003e910(0x800,plVar10,CONCAT71(uVar13,uVar12),param_4);
|
||||
param_1[0x9c] = (longlong)puVar6;
|
||||
FUN_1400dc820(param_1 + 0xdc,plVar10,CONCAT71(uVar13,uVar12),param_4);
|
||||
FUN_1400dc820(param_1 + 700,plVar10,CONCAT71(uVar13,uVar12),param_4);
|
||||
FUN_1400dc820(param_1 + 0x2c0,plVar10,CONCAT71(uVar13,uVar12),param_4);
|
||||
FUN_1400dc820(param_1 + 0x2a6,plVar10,CONCAT71(uVar13,uVar12),param_4);
|
||||
return param_1;
|
||||
}
|
||||
|
||||
Loading…
Add table
Add a link
Reference in a new issue