add agent manager release decomp
This commit is contained in:
parent
31ff800b2a
commit
fac6117145
7019 changed files with 254032 additions and 5 deletions
193
decomp/AgentManager_Release_x64/full/functions/0x1400dc120.c
Normal file
193
decomp/AgentManager_Release_x64/full/functions/0x1400dc120.c
Normal file
|
|
@ -0,0 +1,193 @@
|
|||
/* AgentManager_Release_x64.exe sha256 8fd8ca91725858651a7839d34257b10c2970ac16c97e60c523b8b0c983fcb186
|
||||
* Ghidra 12.1.2 decompiler output for 0x1400dc120 FUN_1400dc120
|
||||
* Pseudocode, not original source. */
|
||||
|
||||
longlong * FUN_1400dc120(longlong *param_1,longlong param_2,undefined8 param_3,undefined8 param_4)
|
||||
|
||||
{
|
||||
undefined8 *puVar1;
|
||||
char *pcVar2;
|
||||
char *pcVar3;
|
||||
undefined8 *puVar4;
|
||||
ulonglong uVar5;
|
||||
longlong *plVar6;
|
||||
char **ppcVar7;
|
||||
undefined8 **ppuVar8;
|
||||
longlong *plVar9;
|
||||
longlong *plVar10;
|
||||
char *local_res10;
|
||||
undefined8 *local_res18;
|
||||
undefined8 *local_res20;
|
||||
|
||||
*param_1 = (longlong)Proud::CSendSpeedMeasurer::vftable;
|
||||
param_1[1] = (longlong)Proud::CSendSpeedMeasurer::vftable;
|
||||
param_1[2] = (longlong)Proud::CSendSpeedMeasurer::vftable;
|
||||
plVar9 = (longlong *)0x0;
|
||||
param_1[3] = 0;
|
||||
param_1[4] = 0;
|
||||
param_1[0x61] = 0;
|
||||
uVar5 = FUN_140094860();
|
||||
plVar10 = (longlong *)CONCAT71((int7)((ulonglong)param_3 >> 8),1);
|
||||
FUN_14003cf60((undefined4 *)(param_1 + 0x62),uVar5 & 0xffffffff,plVar10,param_4);
|
||||
param_1[0x69] = 0;
|
||||
FUN_140048880((undefined2 *)(param_1 + 0x71));
|
||||
local_res10 = operator_new(0xa8);
|
||||
plVar6 = plVar9;
|
||||
if (local_res10 != (char *)0x0) {
|
||||
plVar10 = (longlong *)CONCAT71((int7)((ulonglong)plVar10 >> 8),1);
|
||||
plVar6 = (longlong *)FUN_140047bb0(local_res10,param_1 + 1,plVar10,param_4);
|
||||
}
|
||||
param_1[0x61] = (longlong)plVar6;
|
||||
*(undefined1 *)(param_1 + 9) = 0;
|
||||
param_1[0x76] = param_2;
|
||||
*(undefined1 *)(param_1 + 0x70) = 1;
|
||||
*(undefined1 *)(param_1 + 0x58) = 0;
|
||||
*(undefined1 *)(param_1 + 0x60) = 0;
|
||||
local_res10 = (char *)FUN_14003e840(0x400);
|
||||
plVar6 = plVar9;
|
||||
if (local_res10 != (char *)0x0) {
|
||||
plVar10 = param_1;
|
||||
plVar6 = FUN_140043f50((undefined8 *)local_res10,1,param_1,param_4);
|
||||
}
|
||||
if (plVar6 == (longlong *)0x0) {
|
||||
local_res10 = (char *)0x0;
|
||||
}
|
||||
else {
|
||||
local_res10 = (char *)FUN_14003e840(0x10);
|
||||
local_res10[8] = '\x01';
|
||||
local_res10[9] = '\0';
|
||||
local_res10[10] = '\0';
|
||||
local_res10[0xb] = '\0';
|
||||
local_res10[0xc] = '\0';
|
||||
local_res10[0xd] = '\0';
|
||||
local_res10[0xe] = '\0';
|
||||
local_res10[0xf] = '\0';
|
||||
*(longlong **)local_res10 = plVar6;
|
||||
}
|
||||
pcVar2 = local_res10;
|
||||
ppcVar7 = &local_res10;
|
||||
FUN_140040510(param_1 + 3,(longlong *)ppcVar7);
|
||||
pcVar3 = local_res10;
|
||||
if (pcVar2 != (char *)0x0) {
|
||||
plVar6 = (longlong *)(pcVar2 + 8);
|
||||
*plVar6 = *plVar6 + -1;
|
||||
if (*plVar6 == 0) {
|
||||
plVar6 = *(longlong **)local_res10;
|
||||
if (plVar6 != (longlong *)0x0) {
|
||||
FUN_140043e60(plVar6,ppcVar7,plVar10,param_4);
|
||||
FUN_14003e8b0(plVar6);
|
||||
}
|
||||
FUN_14003e8b0(pcVar3);
|
||||
}
|
||||
}
|
||||
plVar6 = plVar9;
|
||||
if ((undefined8 *)param_1[3] != (undefined8 *)0x0) {
|
||||
plVar6 = *(longlong **)param_1[3];
|
||||
}
|
||||
FUN_140045ad0((longlong)plVar6,ppcVar7,plVar10,param_4);
|
||||
plVar6 = plVar9;
|
||||
if ((undefined8 *)param_1[3] != (undefined8 *)0x0) {
|
||||
plVar6 = *(longlong **)param_1[3];
|
||||
}
|
||||
FUN_140044fa0((longlong)plVar6,0);
|
||||
plVar6 = plVar9;
|
||||
if ((undefined8 *)param_1[3] != (undefined8 *)0x0) {
|
||||
plVar6 = *(longlong **)param_1[3];
|
||||
}
|
||||
FUN_140045250((longlong)plVar6,4);
|
||||
local_res18 = (undefined8 *)FUN_14003e840(0x400);
|
||||
plVar6 = plVar9;
|
||||
if (local_res18 != (undefined8 *)0x0) {
|
||||
plVar10 = param_1;
|
||||
plVar6 = FUN_140043f50(local_res18,2,param_1,param_4);
|
||||
}
|
||||
if (plVar6 == (longlong *)0x0) {
|
||||
local_res18 = (undefined8 *)0x0;
|
||||
}
|
||||
else {
|
||||
local_res18 = (undefined8 *)FUN_14003e840(0x10);
|
||||
local_res18[1] = 1;
|
||||
*local_res18 = plVar6;
|
||||
}
|
||||
puVar1 = local_res18;
|
||||
ppuVar8 = &local_res18;
|
||||
FUN_140040510(param_1 + 4,(longlong *)ppuVar8);
|
||||
puVar4 = local_res18;
|
||||
if (puVar1 != (undefined8 *)0x0) {
|
||||
plVar6 = puVar1 + 1;
|
||||
*plVar6 = *plVar6 + -1;
|
||||
if (*plVar6 == 0) {
|
||||
plVar6 = (longlong *)*local_res18;
|
||||
if (plVar6 != (longlong *)0x0) {
|
||||
FUN_140043e60(plVar6,ppuVar8,plVar10,param_4);
|
||||
FUN_14003e8b0(plVar6);
|
||||
}
|
||||
FUN_14003e8b0(puVar4);
|
||||
}
|
||||
}
|
||||
plVar6 = plVar9;
|
||||
if ((undefined8 *)param_1[4] != (undefined8 *)0x0) {
|
||||
plVar6 = *(longlong **)param_1[4];
|
||||
}
|
||||
FUN_140045ad0((longlong)plVar6,ppuVar8,plVar10,param_4);
|
||||
plVar6 = plVar9;
|
||||
if ((undefined8 *)param_1[3] != (undefined8 *)0x0) {
|
||||
plVar6 = *(longlong **)param_1[3];
|
||||
}
|
||||
FUN_140043150((longlong)plVar6,param_1 + 2,plVar10,param_4);
|
||||
plVar6 = plVar9;
|
||||
if ((undefined8 *)param_1[3] != (undefined8 *)0x0) {
|
||||
plVar6 = *(longlong **)param_1[3];
|
||||
}
|
||||
FUN_140047fc0(param_1[0x61],plVar6,plVar10,param_4);
|
||||
plVar6 = plVar9;
|
||||
if ((undefined8 *)param_1[4] != (undefined8 *)0x0) {
|
||||
plVar6 = *(longlong **)param_1[4];
|
||||
}
|
||||
FUN_140043150((longlong)plVar6,param_1 + 2,plVar10,param_4);
|
||||
plVar6 = plVar9;
|
||||
if ((undefined8 *)param_1[4] != (undefined8 *)0x0) {
|
||||
plVar6 = *(longlong **)param_1[4];
|
||||
}
|
||||
FUN_140047fc0(param_1[0x61],plVar6,plVar10,param_4);
|
||||
param_1[5] = 0;
|
||||
*(undefined1 *)(param_1 + 6) = 0;
|
||||
param_1[8] = 0;
|
||||
FUN_1400488d0((char *)(param_1 + 0x71));
|
||||
local_res20 = operator_new(0x28);
|
||||
plVar6 = plVar9;
|
||||
if (local_res20 != (undefined8 *)0x0) {
|
||||
plVar10 = param_1;
|
||||
plVar6 = FUN_140045b20(local_res20,FUN_1400dc0f0,param_1);
|
||||
}
|
||||
if (plVar6 == (longlong *)0x0) {
|
||||
local_res20 = (undefined8 *)0x0;
|
||||
}
|
||||
else {
|
||||
local_res20 = (undefined8 *)FUN_14003e840(0x10);
|
||||
local_res20[1] = 1;
|
||||
*local_res20 = plVar6;
|
||||
}
|
||||
puVar1 = local_res20;
|
||||
ppuVar8 = &local_res20;
|
||||
FUN_14007b440(param_1 + 0x69,(longlong *)ppuVar8);
|
||||
puVar4 = local_res20;
|
||||
if (puVar1 != (undefined8 *)0x0) {
|
||||
plVar6 = puVar1 + 1;
|
||||
*plVar6 = *plVar6 + -1;
|
||||
if (*plVar6 == 0) {
|
||||
puVar1 = (undefined8 *)*local_res20;
|
||||
if (puVar1 != (undefined8 *)0x0) {
|
||||
FUN_140045c30(puVar1);
|
||||
operator_delete(puVar1);
|
||||
}
|
||||
FUN_14003e8b0(puVar4);
|
||||
}
|
||||
}
|
||||
if ((undefined8 *)param_1[0x69] != (undefined8 *)0x0) {
|
||||
plVar9 = *(longlong **)param_1[0x69];
|
||||
}
|
||||
FUN_140045d20(plVar9,ppuVar8,plVar10,param_4);
|
||||
return param_1;
|
||||
}
|
||||
|
||||
Loading…
Add table
Add a link
Reference in a new issue