43 lines
1.3 KiB
C
43 lines
1.3 KiB
C
/* MessageServer_Release_x64.exe sha256 7911b15c4379625eaa12ff227708aa3a033bc6ac2cf6b34283136e3a62df25f1
|
|
* Ghidra 12.1.2 decompiler output for 0x14000c040 FUN_14000c040
|
|
* Pseudocode, not original source. */
|
|
|
|
void FUN_14000c040(longlong param_1,longlong *param_2)
|
|
|
|
{
|
|
char cVar1;
|
|
longlong lVar2;
|
|
longlong *plVar3;
|
|
undefined8 *puVar4;
|
|
ulonglong uVar5;
|
|
char *pcVar6;
|
|
char *pcVar7;
|
|
|
|
uVar5 = 0xffffffffffffffff;
|
|
pcVar6 = (char *)(*(longlong *)(param_1 + 0x38) + 0x10);
|
|
pcVar7 = pcVar6;
|
|
do {
|
|
if (uVar5 == 0) break;
|
|
uVar5 = uVar5 - 1;
|
|
cVar1 = *pcVar7;
|
|
pcVar7 = pcVar7 + 1;
|
|
} while (cVar1 != '\0');
|
|
FUN_14000af60(param_2 + 7,pcVar6,~uVar5 - 1);
|
|
param_2[2] = *(longlong *)(param_1 + 0x10);
|
|
lVar2 = *(longlong *)(param_1 + 0xa0);
|
|
if (lVar2 != param_1 + 0x58) {
|
|
do {
|
|
if (lVar2 == 0) break;
|
|
FUN_14000bd00(param_2,(char *)(*(longlong *)(lVar2 + 0x20) + 0x10),
|
|
(char *)(*(longlong *)(lVar2 + 0x30) + 0x10));
|
|
lVar2 = *(longlong *)(lVar2 + 0x48);
|
|
} while ((**(longlong **)(lVar2 + 0x30) != 0) || (**(longlong **)(lVar2 + 0x20) != 0));
|
|
}
|
|
for (plVar3 = *(longlong **)(param_1 + 0x28); plVar3 != (longlong *)0x0;
|
|
plVar3 = (longlong *)plVar3[10]) {
|
|
puVar4 = (undefined8 *)(**(code **)(*plVar3 + 0x78))(plVar3);
|
|
FUN_14000b8b0(param_2,puVar4);
|
|
}
|
|
return;
|
|
}
|
|
|