/* DBCServer_Release_x64.exe sha256 d9e4fccdf3482e50247686d4452c0b13c75a53efc4bd7320668eece8d1ce828c * Ghidra 12.1.2 decompiler output for 0x1401b7480 FUN_1401b7480 * Pseudocode, not original source. */ void FUN_1401b7480(longlong *param_1,undefined8 param_2,undefined8 param_3,undefined8 param_4) { longlong lVar1; longlong *plVar2; undefined8 uVar3; uVar3 = 0xfffffffffffffffe; lVar1 = *param_1; while (lVar1 != 0) { lVar1 = *param_1; *param_1 = *(longlong *)(lVar1 + 0x68); *(undefined8 *)(lVar1 + 0x68) = 0; *(undefined ***)(lVar1 + 0x30) = Proud::CFastArray::vftable; if (*(longlong *)(lVar1 + 0x40) != 0) { if (*(longlong **)(lVar1 + 0x38) == (longlong *)0x0) { FUN_14016d970(*(longlong *)(lVar1 + 0x40)); } else { (**(code **)(**(longlong **)(lVar1 + 0x38) + 0x18))(); } } *(undefined ***)(lVar1 + 8) = Proud::CFastArray::vftable; if (*(longlong *)(lVar1 + 0x18) != 0) { plVar2 = *(longlong **)(lVar1 + 0x10); if (plVar2 == (longlong *)0x0) { FUN_14016d970(); } else { (**(code **)(*plVar2 + 0x18))(plVar2,*(longlong *)(lVar1 + 0x18),plVar2,param_4,uVar3); } } FUN_14016d970(lVar1); lVar1 = *param_1; } return; }