/* DBCServer_Release_x64.exe sha256 d9e4fccdf3482e50247686d4452c0b13c75a53efc4bd7320668eece8d1ce828c * Ghidra 12.1.2 decompiler output for 0x1401b1230 FUN_1401b1230 * Pseudocode, not original source. */ /* WARNING: Removing unreachable block (ram,0x0001401b1335) */ /* WARNING: Removing unreachable block (ram,0x0001401b1343) */ /* WARNING: Removing unreachable block (ram,0x0001401b133b) */ /* WARNING: Removing unreachable block (ram,0x0001401b134a) */ void FUN_1401b1230(undefined8 param_1,int param_2,undefined8 param_3,longlong param_4, undefined8 param_5) { byte *pbVar1; ulonglong uVar2; ulonglong uVar3; longlong lVar4; uint uVar5; ulonglong uVar6; undefined **local_50; undefined8 local_48; ulonglong local_40; undefined8 local_38; undefined8 local_30; uVar6 = 0; local_48 = 0; local_40 = 0; local_38 = 0; local_30 = 0; local_50 = Proud::ByteArray::vftable; pbVar1 = (byte *)(param_4 + 4); FUN_14004f0e0(&local_50,1); uVar2 = local_40; if ((int)local_38 == 0) { uVar2 = uVar6; } FUN_14004f1a0(uVar2,pbVar1,1); lVar4 = (longlong)(int)local_38; FUN_14004f0e0(&local_50,(int)local_38 + 4); uVar2 = local_40; if ((int)local_38 == 0) { uVar2 = uVar6; } FUN_14004f1a0(uVar2 + lVar4,param_4 + 0xc,4); if (param_2 < 0) { /* WARNING: Subroutine does not return */ FUN_14016d6b0(); } if (param_2 != 0) { lVar4 = (longlong)(int)local_38; FUN_14004f0e0(&local_50,(int)local_38 + param_2); uVar2 = local_40; if ((int)local_38 == 0) { uVar2 = uVar6; } FUN_14004f1a0(uVar2 + lVar4,param_1,(longlong)param_2); } uVar2 = uVar6; if (*pbVar1 != 0) { do { lVar4 = (longlong)(int)local_38; if ((int)local_38 < 0) { /* WARNING: Subroutine does not return */ FUN_14016d6b0(); } FUN_14004f0e0(&local_50,(int)local_38 + 1); uVar3 = local_40; if ((int)local_38 == 0) { uVar3 = uVar6; } *(undefined1 *)(lVar4 + uVar3) = 0; uVar5 = (int)uVar2 + 1; uVar2 = (ulonglong)uVar5; } while ((int)uVar5 < (int)(uint)*pbVar1); } uVar2 = local_40; if ((int)local_38 == 0) { uVar2 = uVar6; } FUN_1401b0870(param_5,uVar2,param_3,(longlong)(int)local_38,0); FUN_14019a9e0(&local_50); return; }