43 lines
1 KiB
C
43 lines
1 KiB
C
/* MessageServer_Release_x64.exe sha256 7911b15c4379625eaa12ff227708aa3a033bc6ac2cf6b34283136e3a62df25f1
|
|
* Ghidra 12.1.2 decompiler output for 0x14006c940 FUN_14006c940
|
|
* Pseudocode, not original source. */
|
|
|
|
longlong * FUN_14006c940(longlong *param_1,short *param_2)
|
|
|
|
{
|
|
short sVar1;
|
|
longlong lVar2;
|
|
HMODULE pHVar3;
|
|
uint uVar4;
|
|
int iVar5;
|
|
short *psVar6;
|
|
|
|
lVar2 = (**(code **)(PTR_PTR_1401ac508 + 0x18))();
|
|
*param_1 = lVar2 + 0x18;
|
|
if (param_2 == (short *)0x0) {
|
|
iVar5 = 0;
|
|
}
|
|
else {
|
|
if (((ulonglong)param_2 & 0xffffffffffff0000) == 0) {
|
|
uVar4 = (uint)param_2 & 0xffff;
|
|
pHVar3 = FUN_14006bf80(uVar4,0);
|
|
if (pHVar3 == (HMODULE)0x0) {
|
|
return param_1;
|
|
}
|
|
FUN_14006c6d0(param_1,pHVar3,uVar4);
|
|
return param_1;
|
|
}
|
|
lVar2 = -1;
|
|
psVar6 = param_2;
|
|
do {
|
|
if (lVar2 == 0) break;
|
|
lVar2 = lVar2 + -1;
|
|
sVar1 = *psVar6;
|
|
psVar6 = psVar6 + 1;
|
|
} while (sVar1 != 0);
|
|
iVar5 = ~(uint)lVar2 - 1;
|
|
}
|
|
FUN_14006c7b0(param_1,param_2,iVar5);
|
|
return param_1;
|
|
}
|
|
|