/* MessageServer_Release_x64.exe sha256 7911b15c4379625eaa12ff227708aa3a033bc6ac2cf6b34283136e3a62df25f1 * Ghidra 12.1.2 decompiler output for 0x140076b20 FUN_140076b20 * Pseudocode, not original source. */ /* WARNING: Globals starting with '_' overlap smaller symbols at the same address */ undefined * FUN_140076b20(undefined8 param_1,undefined8 param_2,undefined8 param_3,undefined8 param_4) { bool bVar1; bool bVar2; ulonglong uVar3; undefined7 uVar4; uVar4 = (undefined7)((ulonglong)param_3 >> 8); bVar1 = false; bVar2 = FUN_14006b3f0((int *)&DAT_1401b5aa0); if (bVar2) { if (DAT_1401ac500 == '\0') { bVar1 = false; } else { bVar1 = true; FUN_14006b350((int *)&DAT_1401b5aa0); } } if ((DAT_1401b5a98 & 1) == 0) { DAT_1401b5a98 = DAT_1401b5a98 | 1; _DAT_1401b5080 = Proud::CRandom::vftable; uVar3 = FUN_140079250(); FUN_14006b270((undefined4 *)&DAT_1401b5a60,uVar3 & 0xffffffff,CONCAT71(uVar4,1),param_4); _DAT_1401b5a58 = 0xfffffffe; atexit((_func_5014 *)&LAB_14012f630); } DAT_1401ac500 = 0; if (bVar1) { FUN_14006b3e0(0x1401b5aa0); } return &DAT_1401b5080; }