/* DBCServer_Release_x64.exe sha256 d9e4fccdf3482e50247686d4452c0b13c75a53efc4bd7320668eece8d1ce828c * Ghidra 12.1.2 decompiler output for 0x1401baf20 FUN_1401baf20 * Pseudocode, not original source. */ /* WARNING: Function: __security_check_cookie replaced with injection: security_check_cookie */ void FUN_1401baf20(longlong param_1,undefined4 param_2,undefined2 param_3,longlong param_4, undefined8 param_5,undefined4 *param_6) { undefined8 uVar1; longlong lVar2; undefined1 auStack_e78 [32]; undefined1 *local_e58; undefined8 local_e50; undefined4 *local_e48; undefined **local_e38; undefined4 local_e30; undefined2 local_e2c; longlong local_e28; undefined1 local_e20; longlong local_e18; undefined1 local_e10; undefined8 local_e08; undefined4 local_df8; undefined4 uStack_df4; undefined4 uStack_df0; undefined4 uStack_dec; undefined4 local_de8; undefined4 uStack_de4; undefined4 uStack_de0; undefined4 uStack_ddc; undefined1 local_dd8 [80]; undefined1 local_d88 [8]; 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_1403463c0 ^ (ulonglong)auStack_e78; FUN_1401b1b20(param_1 + 0x40); local_4c = 200; local_50 = 0; local_58 = local_cd8; FUN_14016b440(local_d88); FUN_14016b0c0(local_d88,local_d60,0x80); FUN_1401bf350(param_5,local_cd8,local_d88); local_e28 = param_1 + 0xa8; FUN_14016db50(); local_e20 = 1; local_df8 = *param_6; uStack_df4 = param_6[1]; uStack_df0 = param_6[2]; uStack_dec = param_6[3]; local_de8 = param_6[4]; uStack_de4 = param_6[5]; uStack_de0 = param_6[6]; uStack_ddc = param_6[7]; local_e38 = Proud::AddrPort::vftable; local_e30 = *(undefined4 *)(param_4 + 8); local_e2c = *(undefined2 *)(param_4 + 0xc); uVar1 = *(undefined8 *)(param_1 + 0x168); local_e50 = (**(code **)(*(longlong *)(*(longlong *)(param_1 + 0x148) + 0x118) + 8))(); local_e48 = &local_df8; local_e58 = local_cd8; FUN_1401b8810(uVar1,param_2,param_3,&local_e38); if (*(char *)(param_1 + 0x100) == '\0') { lVar2 = *(longlong *)(param_1 + 0x148) + 2000; local_e18 = lVar2; FUN_14016db50(lVar2); local_e10 = 1; if (*(longlong *)(param_1 + 0xa0) == 0) { FUN_1401bae90(*(longlong *)(param_1 + 0x148) + 0x828,param_1); } FUN_14016dbe0(lVar2); } FUN_14016dbe0(local_e28); local_e38 = &local_d80; FUN_14016d0e0(&local_d80); if (local_d78 != 0) { if (local_d6c < 0) { /* WARNING: Subroutine does not return */ FUN_14016d6b0(); } local_d70 = 0; } if (local_58 == (undefined1 *)0x0) { FUN_14016d300(local_dd8,PTR_u_ArrayWithExternalBuffer_is_unini_1403440d0); /* WARNING: Subroutine does not return */ _CxxThrowException(local_dd8,(ThrowInfo *)&DAT_1403417f8); } if (local_4c < 0) { /* WARNING: Subroutine does not return */ FUN_14016d6b0(); } return; }