/* MessageServer_Release_x64.exe sha256 7911b15c4379625eaa12ff227708aa3a033bc6ac2cf6b34283136e3a62df25f1 * Ghidra 12.1.2 decompiler output for 0x1400f3cd0 FUN_1400f3cd0 * Pseudocode, not original source. */ /* WARNING: Function: __security_check_cookie replaced with injection: security_check_cookie */ void FUN_1400f3cd0(longlong param_1,ulonglong param_2,ulonglong param_3,longlong param_4, longlong param_5,double param_6,undefined8 *param_7) { ulonglong uVar1; longlong lVar2; undefined ***pppuVar3; undefined1 auStackY_e58 [32]; undefined **local_e18; undefined4 local_e10; undefined2 local_e0c; undefined8 local_e08; undefined8 local_df8; undefined8 uStack_df0; undefined8 local_de8; undefined8 uStack_de0; exception local_dd8 [80]; undefined4 local_d88 [2]; undefined *local_d80; longlong local_d78; undefined4 local_d70; int local_d6c; undefined1 local_d60 [136]; undefined1 local_cd8 [3200]; undefined1 *local_58; undefined4 local_50; int local_4c; ulonglong local_48; local_e08 = 0xfffffffffffffffe; local_48 = DAT_1401ac5a0 ^ (ulonglong)auStackY_e58; lVar2 = param_4; (**(code **)(*(longlong *)(*(longlong *)(param_1 + 0x118) + 0x78) + 0x10))(); local_4c = 200; local_50 = 0; local_58 = local_cd8; FUN_1400bca00(local_d88); FUN_1400bc680((longlong)local_d88,(longlong)local_d60,0x80,lVar2); FUN_1400db480(param_5,(longlong)local_cd8,(SIZE_T)local_d88,lVar2); local_df8 = *param_7; uStack_df0 = param_7[1]; local_de8 = param_7[2]; uStack_de0 = param_7[3]; local_e18 = Proud::AddrPort::vftable; local_e10 = *(undefined4 *)(param_4 + 8); local_e0c = *(undefined2 *)(param_4 + 0xc); pppuVar3 = &local_e18; uVar1 = param_3 & 0xffff; FUN_1400d6760(*(longlong **)(param_1 + 0x108),param_2 & 0xffffffff,uVar1,(ulonglong)pppuVar3, (longlong)local_cd8,param_6,(uint *)&local_df8); local_e18 = &local_d80; FUN_1400d1800((longlong *)&local_d80); if (local_d78 != 0) { if (local_d6c < 0) { /* WARNING: Subroutine does not return */ FUN_14006be00(); } local_d70 = 0; } if (local_58 == (undefined1 *)0x0) { FUN_14006ba50(local_dd8,(wchar_t *)PTR_u_ArrayWithExternalBuffer_is_unini_1401ad9a0,uVar1, pppuVar3); /* WARNING: Subroutine does not return */ _CxxThrowException(local_dd8,(ThrowInfo *)&DAT_1401a93e8); } if (local_4c < 0) { /* WARNING: Subroutine does not return */ FUN_14006be00(); } return; }