decomp DBCServer_Release and inspect/document database

This commit is contained in:
Benjamin Palko 2026-10-14 23:22:03 -04:00
parent 4b267cbe05
commit 7834b98bf0
28222 changed files with 843300 additions and 144 deletions

View file

@ -0,0 +1,675 @@
/* DBCServer_Release_x64.exe sha256 d9e4fccdf3482e50247686d4452c0b13c75a53efc4bd7320668eece8d1ce828c
* Ghidra 12.1.2 decompiler output for 0x1400ee3e0 FUN_1400ee3e0
* Pseudocode, not original source. */
/* WARNING: Function: __security_check_cookie replaced with injection: security_check_cookie */
/* WARNING: Removing unreachable block (ram,0x0001400ef892) */
/* WARNING: Removing unreachable block (ram,0x0001400ef87d) */
/* WARNING: Removing unreachable block (ram,0x0001400ef88b) */
/* WARNING: Removing unreachable block (ram,0x0001400ef897) */
/* WARNING: Removing unreachable block (ram,0x0001400ef8a1) */
/* WARNING: Removing unreachable block (ram,0x0001400ef90b) */
/* WARNING: Removing unreachable block (ram,0x0001400ef926) */
/* WARNING: Removing unreachable block (ram,0x0001400ef937) */
/* WARNING: Removing unreachable block (ram,0x0001400ef951) */
/* WARNING: Removing unreachable block (ram,0x0001400ef962) */
/* WARNING: Removing unreachable block (ram,0x0001400ef96e) */
/* WARNING: Removing unreachable block (ram,0x0001400ef97b) */
/* WARNING: Removing unreachable block (ram,0x0001400ef986) */
/* WARNING: Removing unreachable block (ram,0x0001400ef996) */
/* WARNING: Removing unreachable block (ram,0x0001400ef9a7) */
/* WARNING: Removing unreachable block (ram,0x0001400ef9b4) */
/* WARNING: Removing unreachable block (ram,0x0001400ef9c2) */
/* WARNING: Removing unreachable block (ram,0x0001400efa15) */
/* WARNING: Removing unreachable block (ram,0x0001400efa1c) */
/* WARNING: Removing unreachable block (ram,0x0001400efa29) */
/* WARNING: Removing unreachable block (ram,0x0001400efa30) */
/* WARNING: Removing unreachable block (ram,0x0001400efa3a) */
/* WARNING: Removing unreachable block (ram,0x0001400efa42) */
/* WARNING: Removing unreachable block (ram,0x0001400ee68c) */
/* WARNING: Removing unreachable block (ram,0x0001400ee699) */
/* WARNING: Removing unreachable block (ram,0x0001400ee6a4) */
/* WARNING: Removing unreachable block (ram,0x0001400ee6b4) */
undefined4 FUN_1400ee3e0(undefined8 *param_1,undefined8 *param_2)
{
IUnknown *pIVar1;
undefined6 uVar2;
IUnknown *This;
undefined1 uVar3;
undefined2 uVar4;
int iVar5;
HRESULT HVar6;
ULONG UVar7;
undefined4 uVar8;
undefined8 *puVar9;
wchar_t *pwVar10;
longlong lVar11;
longlong *plVar12;
undefined8 uVar13;
undefined8 uVar14;
wchar_t *pwVar15;
char *riid;
char *ppvObject;
wchar_t *pwVar16;
wchar_t *pwVar17;
undefined1 auStackY_658 [32];
char local_618 [4];
uint local_610;
longlong *local_600 [2];
undefined8 local_5f0;
undefined4 local_5e8;
undefined2 uStack_5e4;
undefined2 uStack_5e2;
undefined6 uStack_5e0;
undefined2 uStack_5da;
undefined6 uStack_5d8;
ushort local_5d2;
int local_5d0;
IUnknown *local_5c8;
longlong *local_5c0;
undefined4 local_5b8;
undefined1 local_5a8 [24];
undefined1 local_590 [24];
undefined4 local_578;
undefined1 *local_570;
undefined4 local_568;
undefined8 local_560;
undefined1 *local_558;
undefined8 *local_548;
wchar_t *local_540;
LPUNKNOWN local_538;
longlong *local_530;
wchar_t *local_528;
undefined8 *local_520;
undefined8 local_518;
undefined1 local_510;
undefined8 local_508;
undefined1 local_500;
undefined8 local_4f8;
undefined1 local_4f0;
longlong *local_4e8;
undefined8 local_4e0;
undefined1 local_4d8;
wchar_t *local_4d0;
undefined8 local_4c8;
undefined8 local_4c0;
short local_4b8 [12];
undefined1 local_4a0 [24];
undefined4 local_488;
undefined4 uStack_484;
undefined4 uStack_480;
undefined4 uStack_47c;
undefined1 local_470 [16];
undefined8 local_460;
undefined1 local_458 [24];
undefined1 local_440 [24];
undefined1 local_428 [24];
undefined1 local_410 [24];
longlong local_3f8 [3];
undefined1 local_3e0 [24];
undefined1 local_3c8 [24];
undefined1 local_3b0 [24];
undefined1 local_398 [24];
undefined1 local_380 [24];
undefined1 local_368 [24];
undefined1 local_350 [24];
undefined1 local_338 [24];
undefined1 local_320 [24];
undefined1 local_308 [24];
undefined1 local_2f0 [24];
undefined1 local_2d8 [24];
undefined1 local_2c0 [24];
undefined1 local_2a8 [24];
undefined1 local_290 [24];
undefined1 local_278 [24];
undefined1 local_260 [24];
undefined1 local_248 [24];
undefined1 local_230 [24];
undefined1 local_218 [24];
undefined1 local_200 [24];
undefined1 local_1e8 [24];
undefined1 local_1d0 [24];
undefined1 local_1b8 [24];
undefined1 local_1a0 [24];
undefined1 local_188 [24];
undefined1 local_170 [24];
undefined1 local_158 [24];
undefined1 local_140 [24];
undefined1 local_128 [24];
undefined1 local_110 [24];
undefined1 local_f8 [32];
IID local_d8;
undefined8 local_c8;
undefined2 local_c0;
undefined8 local_be;
undefined2 local_b6;
undefined8 local_b4;
undefined8 local_ac;
undefined8 local_a4;
undefined4 local_9c;
undefined2 local_98;
undefined8 local_96;
undefined8 local_8e;
undefined8 local_86;
undefined2 local_7e;
undefined1 local_7c;
undefined8 local_7b;
ulonglong local_73;
undefined2 local_6b;
undefined8 local_69;
undefined8 local_61;
undefined8 local_59;
undefined8 local_51;
undefined8 local_49;
ulonglong local_38;
local_460 = 0xfffffffffffffffe;
local_38 = DAT_1403463c0 ^ (ulonglong)auStackY_658;
pwVar16 = (wchar_t *)0x0;
local_600[0] = (longlong *)0x0;
local_548 = param_1;
local_520 = param_2;
iVar5 = FUN_140001990(local_600);
if ((iVar5 < 0) && (iVar5 != -0x7fffbffe)) {
/* WARNING: Subroutine does not return */
FUN_140218220(iVar5);
}
local_5c8 = (IUnknown *)0x0;
local_5c0 = (longlong *)0x0;
Ordinal_8(local_5a8);
Ordinal_8(local_590);
pIVar1 = local_5c8;
if ((local_5c8 != (IUnknown *)0x0) && (local_5c8 = (IUnknown *)0x0, pIVar1 != (IUnknown *)0x0)) {
(*pIVar1->lpVtbl->Release)(pIVar1);
}
local_558 = &DAT_14029e010;
local_570 = &DAT_14029e010;
local_568 = 0;
local_560 = 0;
if (local_5c8 != (IUnknown *)0x0) {
(*local_5c8->lpVtbl->Release)(local_5c8);
}
HVar6 = CoCreateInstance((IID *)&DAT_14029e088,(LPUNKNOWN)0x0,0x17,(IID *)&DAT_14029dfb0,
&local_538);
if (HVar6 < 0) {
LAB_1400ee55f:
local_5c8 = (IUnknown *)0x0;
}
else {
HVar6 = OleRun(local_538);
if (-1 < HVar6) {
HVar6 = (*local_538->lpVtbl->QueryInterface)(local_538,(IID *)&DAT_14029e078,&local_5c8);
}
(*local_538->lpVtbl->Release)(local_538);
if (HVar6 < 0) goto LAB_1400ee55f;
}
local_578 = 2;
local_5b8 = 1;
local_618[0] = '\x01';
local_5e8 = *(undefined4 *)(param_2 + 1);
local_5f0._4_4_ = (undefined4)((ulonglong)*param_2 >> 0x20);
local_5f0._0_4_ = CONCAT22(0x23d3,(short)*param_2);
uStack_5e4 = 0x85;
uStack_5e2 = (undefined2)*(undefined8 *)((longlong)param_2 + 0xe);
uStack_5e0 = (undefined6)((ulonglong)*(undefined8 *)((longlong)param_2 + 0xe) >> 0x10);
uStack_5da = (undefined2)*(undefined8 *)((longlong)param_2 + 0x16);
uStack_5d8 = (undefined6)((ulonglong)*(undefined8 *)((longlong)param_2 + 0x16) >> 0x10);
pwVar17 = (wchar_t *)0x0;
local_5d2 = 0;
local_610 = 0x20;
pIVar1 = *(IUnknown **)*param_1;
if (pIVar1 != (IUnknown *)0x0) {
local_5d0 = 0;
UVar7 = (*pIVar1->lpVtbl[0xb].AddRef)(pIVar1);
if ((int)UVar7 < 0) {
_com_issue_errorex(UVar7,pIVar1,(_GUID *)&DAT_14029e018);
}
if (local_5d0 != 0) goto LAB_1400ee765;
}
iVar5 = FUN_1400a80c0(param_1);
if (iVar5 == 0) {
FUN_1400a8040(param_1,param_2,0);
pIVar1 = local_5c8;
if (local_5c8 != (IUnknown *)0x0) {
UVar7 = (*local_5c8->lpVtbl[0x12].AddRef)(local_5c8);
if ((int)UVar7 < 0) {
_com_issue_errorex(UVar7,pIVar1,(_GUID *)&DAT_14029e038);
}
if (local_5c8 != (IUnknown *)0x0) {
(*local_5c8->lpVtbl->Release)(local_5c8);
local_5c8 = (IUnknown *)0x0;
}
}
local_560 = 0;
local_558 = &DAT_14029e010;
local_570 = &DAT_14029e010;
local_568 = 0;
local_578 = 0;
Ordinal_9(local_590);
Ordinal_9(local_5a8);
if (local_5c0 != (longlong *)0x0) {
(**(code **)(*local_5c0 + 0x10))();
}
if (local_5c8 != (IUnknown *)0x0) {
(*local_5c8->lpVtbl->Release)(local_5c8);
}
if (local_600[0] != (longlong *)0x0) {
(**(code **)(*local_600[0] + 0x10))();
}
return 0;
}
LAB_1400ee765:
puVar9 = (undefined8 *)FUN_140001f40(*param_1,&local_4e8);
FUN_140001700(local_600,*puVar9,"dbo.up_get_guild_storage_item_list");
if (local_4e8 != (longlong *)0x0) {
(**(code **)(*local_4e8 + 0x10))();
}
local_530 = local_3f8;
local_488 = *(undefined4 *)((longlong)param_2 + 0xe);
uStack_484 = *(undefined4 *)((longlong)param_2 + 0x12);
uStack_480 = *(undefined4 *)((longlong)param_2 + 0x16);
uStack_47c = *(undefined4 *)((longlong)param_2 + 0x1a);
FUN_140063820(local_3f8,&local_488);
pwVar10 = operator_new(0x18);
local_4d0 = pwVar16;
local_528 = pwVar10;
if (pwVar10 != (wchar_t *)0x0) {
pwVar10[4] = L'\0';
pwVar10[5] = L'\0';
pwVar10[6] = L'\0';
pwVar10[7] = L'\0';
pwVar10[8] = L'\x01';
pwVar10[9] = L'\0';
lVar11 = FUN_1402182d0("guild_id");
*(longlong *)pwVar10 = lVar11;
local_4d0 = pwVar10;
}
if (local_4d0 == (wchar_t *)0x0) {
/* WARNING: Subroutine does not return */
FUN_140218220(0x8007000e);
}
plVar12 = (longlong *)FUN_140001870(local_600,local_4a0,&local_4d0,0xca);
local_530 = plVar12;
if (local_600[0] == (longlong *)0x0) {
/* WARNING: Subroutine does not return */
FUN_140218220(0x80004003);
}
puVar9 = (undefined8 *)FUN_140001650(local_600[0],&local_528);
pIVar1 = (IUnknown *)*puVar9;
if (pIVar1 == (IUnknown *)0x0) {
/* WARNING: Subroutine does not return */
FUN_140218220(0x80004003);
}
UVar7 = (*pIVar1->lpVtbl[3].AddRef)(pIVar1);
if ((int)UVar7 < 0) {
_com_issue_errorex(UVar7,pIVar1,(_GUID *)&DAT_14029dfc0);
}
if (local_528 != (wchar_t *)0x0) {
(**(code **)(*(longlong *)local_528 + 0x10))();
}
if ((longlong *)*plVar12 != (longlong *)0x0) {
(**(code **)(*(longlong *)*plVar12 + 0x10))();
}
puVar9 = (undefined8 *)FUN_1400016c0(local_600,&local_530);
This = local_5c8;
pIVar1 = (IUnknown *)*puVar9;
if (local_5c8 != pIVar1) {
local_5c8 = pIVar1;
if (pIVar1 != (IUnknown *)0x0) {
(*pIVar1->lpVtbl->AddRef)(pIVar1);
}
if (This != (IUnknown *)0x0) {
(*This->lpVtbl->Release)(This);
}
}
if (local_530 != (longlong *)0x0) {
(**(code **)(*local_530 + 0x10))();
}
pIVar1 = local_5c8;
if (local_5c8 == (IUnknown *)0x0) {
/* WARNING: Subroutine does not return */
FUN_140218220(0x80004003);
}
UVar7 = (*local_5c8->lpVtbl[6].Release)(local_5c8);
if ((int)UVar7 < 0) {
_com_issue_errorex(UVar7,pIVar1,(_GUID *)&DAT_14029e038);
}
while( true ) {
pIVar1 = local_5c8;
if (local_5c8 == (IUnknown *)0x0) {
/* WARNING: Subroutine does not return */
FUN_140218220(0x80004003);
}
UVar7 = (*local_5c8->lpVtbl[6].Release)(local_5c8);
if ((int)UVar7 < 0) {
_com_issue_errorex(UVar7,pIVar1,(_GUID *)&DAT_14029e038);
}
local_7c = 0;
local_d8.Data1 = 0;
local_d8.Data2 = 0;
local_d8.Data3 = 0;
local_d8.Data4[0] = '\0';
local_d8.Data4[1] = '\0';
local_d8.Data4[2] = '\0';
local_d8.Data4[3] = '\0';
local_d8.Data4[4] = '\0';
local_d8.Data4[5] = '\0';
local_d8.Data4[6] = '\0';
local_d8.Data4[7] = '\0';
local_c8 = 0;
local_c0 = 0;
local_be = 0;
local_b6 = 0;
local_b4 = 0;
local_ac = 0;
local_a4 = 0;
local_9c = 0;
local_98 = 0;
local_96 = 0;
local_8e = 0;
local_86 = 0;
local_7e = 0;
local_7b = 0;
local_6b = 0;
local_69 = 0;
local_61 = 0;
local_59 = 0;
local_51 = 0;
local_49 = 0;
local_73 = 0;
uVar13 = FUN_140002290(&local_5c8,local_140,"item_uid",local_618);
FUN_140063b70(uVar13,local_470);
Ordinal_9(local_140);
uVar13 = FUN_140002290(&local_5c8,local_110,"page_index",local_618);
FUN_140199590(uVar13);
uVar4 = FUN_140063af0(uVar13);
local_c8 = CONCAT62(local_c8._2_6_,uVar4);
Ordinal_9(local_110);
uVar13 = FUN_140002290(&local_5c8,local_428,"slot_index",local_618);
FUN_140199590(uVar13);
uVar4 = FUN_140063af0(uVar13);
local_c8._0_4_ = CONCAT22(uVar4,(undefined2)local_c8);
Ordinal_9(local_428);
uVar13 = FUN_140002290(&local_5c8,local_278,&DAT_1402a522c,local_618);
FUN_140199590(uVar13);
uVar8 = FUN_140063af0(uVar13);
local_c8 = CONCAT44(uVar8,(undefined4)local_c8);
Ordinal_9(local_278);
uVar13 = FUN_140002290(&local_5c8,local_458,"use_cnt",local_618);
FUN_140199590(uVar13);
local_c0 = FUN_140063af0(uVar13);
Ordinal_9(local_458);
uVar13 = FUN_140002290(&local_5c8,local_f8,"remain_time",local_618);
FUN_140199590(uVar13);
uVar8 = FUN_140063af0(uVar13);
local_be = CONCAT44(local_be._4_4_,uVar8);
Ordinal_9(local_f8);
uVar13 = FUN_140002290(&local_5c8,local_3c8,"durability",local_618);
FUN_140199590(uVar13);
uVar8 = FUN_140063af0(uVar13);
local_be = CONCAT44(uVar8,(undefined4)local_be);
Ordinal_9(local_3c8);
uVar13 = FUN_140002290(&local_5c8,local_248,"enhance_level",local_618);
FUN_140199590(uVar13);
local_b6 = FUN_140063af0(uVar13);
Ordinal_9(local_248);
uVar13 = FUN_140002290(&local_5c8,local_398,"option_1_code",local_618);
FUN_140199590(uVar13);
uVar8 = FUN_140063af0(uVar13);
local_b4 = CONCAT44(local_b4._4_4_,uVar8);
Ordinal_9(local_398);
uVar13 = FUN_140002290(&local_5c8,local_188,"option_1_value",local_618);
FUN_140199590(uVar13);
uVar8 = FUN_140063af0(uVar13);
local_b4 = CONCAT44(uVar8,(undefined4)local_b4);
Ordinal_9(local_188);
uVar13 = FUN_140002290(&local_5c8,local_368,"option_2_code",local_618);
FUN_140199590(uVar13);
uVar8 = FUN_140063af0(uVar13);
local_ac = CONCAT44(local_ac._4_4_,uVar8);
Ordinal_9(local_368);
uVar13 = FUN_140002290(&local_5c8,local_218,"option_2_value",local_618);
FUN_140199590(uVar13);
uVar8 = FUN_140063af0(uVar13);
local_ac = CONCAT44(uVar8,(undefined4)local_ac);
Ordinal_9(local_218);
uVar13 = FUN_140002290(&local_5c8,local_338,"option_3_code",local_618);
FUN_140199590(uVar13);
uVar8 = FUN_140063af0(uVar13);
local_a4 = CONCAT44(local_a4._4_4_,uVar8);
Ordinal_9(local_338);
uVar13 = FUN_140002290(&local_5c8,local_128,"option_3_value",local_618);
FUN_140199590(uVar13);
uVar8 = FUN_140063af0(uVar13);
local_a4 = CONCAT44(uVar8,(undefined4)local_a4);
Ordinal_9(local_128);
uVar13 = FUN_140002290(&local_5c8,local_308,"option_group",local_618);
FUN_140199590(uVar13);
local_9c = FUN_140063af0(uVar13);
Ordinal_9(local_308);
uVar13 = FUN_140002290(&local_5c8,local_1e8,"ReconNum",local_618);
FUN_140199590(uVar13);
uVar4 = FUN_140063af0(uVar13);
local_7b = CONCAT62(local_7b._2_6_,uVar4);
Ordinal_9(local_1e8);
uVar13 = FUN_140002290(&local_5c8,local_2d8,"ReconState",local_618);
FUN_140199590(uVar13);
uVar4 = FUN_140063af0(uVar13);
local_7b._0_4_ = CONCAT22(uVar4,(undefined2)local_7b);
Ordinal_9(local_2d8);
uVar13 = FUN_140002290(&local_5c8,local_158,"socket_count",local_618);
FUN_140199590(uVar13);
local_98 = FUN_140063af0(uVar13);
Ordinal_9(local_158);
uVar13 = FUN_140002290(&local_5c8,local_2a8,"socket_1_code",local_618);
FUN_140199590(uVar13);
uVar8 = FUN_140063af0(uVar13);
local_96 = CONCAT44(local_96._4_4_,uVar8);
Ordinal_9(local_2a8);
uVar13 = FUN_140002290(&local_5c8,local_1b8,"socket_1_value",local_618);
FUN_140199590(uVar13);
uVar8 = FUN_140063af0(uVar13);
local_96 = CONCAT44(uVar8,(undefined4)local_96);
Ordinal_9(local_1b8);
uVar13 = FUN_140002290(&local_5c8,local_440,"socket_2_code",local_618);
FUN_140199590(uVar13);
uVar8 = FUN_140063af0(uVar13);
local_8e = CONCAT44(local_8e._4_4_,uVar8);
Ordinal_9(local_440);
uVar13 = FUN_140002290(&local_5c8,local_410,"socket_2_value",local_618);
FUN_140199590(uVar13);
uVar8 = FUN_140063af0(uVar13);
local_8e = CONCAT44(uVar8,(undefined4)local_8e);
Ordinal_9(local_410);
uVar13 = FUN_140002290(&local_5c8,local_3e0,"socket_3_code",local_618);
FUN_140199590(uVar13);
uVar8 = FUN_140063af0(uVar13);
local_86 = CONCAT44(local_86._4_4_,uVar8);
Ordinal_9(local_3e0);
uVar13 = FUN_140002290(&local_5c8,local_3b0,"socket_3_value",local_618);
FUN_140199590(uVar13);
uVar8 = FUN_140063af0(uVar13);
local_86 = CONCAT44(uVar8,(undefined4)local_86);
Ordinal_9(local_3b0);
uVar13 = FUN_140002290(&local_5c8,local_380,"socket_1_color",local_618);
FUN_140199590(uVar13);
uVar3 = FUN_140063a70(uVar13);
local_7e = CONCAT11(local_7e._1_1_,uVar3);
Ordinal_9(local_380);
uVar13 = FUN_140002290(&local_5c8,local_350,"socket_2_color",local_618);
FUN_140199590(uVar13);
uVar3 = FUN_140063a70(uVar13);
local_7e = CONCAT11(uVar3,(undefined1)local_7e);
Ordinal_9(local_350);
uVar13 = FUN_140002290(&local_5c8,local_320,"socket_3_color",local_618);
FUN_140199590(uVar13);
local_7c = FUN_140063a70(uVar13);
Ordinal_9(local_320);
uVar13 = FUN_140002290(&local_5c8,local_2f0,"expire_time",local_618);
FUN_140199590(uVar13);
uVar8 = FUN_140063af0(uVar13);
local_7b = CONCAT44(uVar8,(undefined4)local_7b);
Ordinal_9(local_2f0);
uVar13 = FUN_140002290(&local_5c8,local_2c0,"activity_value",local_618);
FUN_140199590(uVar13);
local_6b = FUN_140063af0(uVar13);
Ordinal_9(local_2c0);
uVar13 = FUN_140002290(&local_5c8,local_290,&DAT_1402a5440,local_618);
FUN_140199590(uVar13);
uVar4 = FUN_140063af0(uVar13);
local_59._0_6_ = CONCAT24(uVar4,(undefined4)local_59);
Ordinal_9(local_290);
uVar13 = FUN_140002290(&local_5c8,local_260,"acquireroute",local_618);
FUN_140199590(uVar13);
uVar4 = FUN_140063af0(uVar13);
local_59 = CONCAT26(uVar4,(undefined6)local_59);
Ordinal_9(local_260);
uVar13 = FUN_140002290(&local_5c8,local_230,"physical",local_618);
FUN_140199590(uVar13);
uVar8 = FUN_140063af0(uVar13);
local_51 = CONCAT44(local_51._4_4_,uVar8);
Ordinal_9(local_230);
uVar13 = FUN_140002290(&local_5c8,local_200,"magical",local_618);
FUN_140199590(uVar13);
uVar8 = FUN_140063af0(uVar13);
local_51 = CONCAT44(uVar8,(undefined4)local_51);
Ordinal_9(local_200);
uVar13 = FUN_140002290(&local_5c8,local_1d0,"durabilitymax",local_618);
FUN_140199590(uVar13);
uVar8 = FUN_140063af0(uVar13);
local_49 = CONCAT44(local_49._4_4_,uVar8);
Ordinal_9(local_1d0);
uVar13 = FUN_140002290(&local_5c8,local_1a0,"weight",local_618);
FUN_140199590(uVar13);
uVar8 = FUN_140063af0(uVar13);
local_49 = CONCAT44(uVar8,(undefined4)local_49);
Ordinal_9(local_1a0);
FUN_140002290(&local_5c8,local_4b8,"link_id",local_618);
if (local_4b8[0] == 1) {
local_69 = 0;
local_61 = 0;
}
else {
FUN_140063b70(local_4b8,&local_4c8);
local_69 = local_4c8;
local_61 = local_4c0;
}
uVar13 = FUN_140002290(&local_5c8,local_170,"lock_pwd",local_618);
FUN_140063de0(uVar13,&local_540);
FUN_14016d8c0();
pwVar10 = (wchar_t *)PTR_DAT_1403440a0;
if (PTR_DAT_1403440a0 == (undefined *)0x0) {
pwVar10 = pwVar16;
}
if (local_540 != (wchar_t *)PTR_DAT_1403440a0) {
uVar13 = FUN_14016d8c0();
local_4f0 = 0;
local_4f8 = uVar13;
FUN_14016db50(uVar13);
local_4f0 = 1;
if (((pwVar10 != (wchar_t *)0x0) && (pwVar10 != (wchar_t *)PTR_DAT_1403440a0)) &&
(pwVar10 + -4 != (wchar_t *)0x0)) {
uVar14 = FUN_14016d8c0();
local_4d8 = 0;
local_4e0 = uVar14;
FUN_14016db50(uVar14);
local_4d8 = 1;
pwVar15 = pwVar10 + -2;
*(int *)pwVar15 = *(int *)pwVar15 + -1;
if (*(int *)pwVar15 == 0) {
FUN_14016d970(pwVar10 + -4);
}
FUN_14016dbe0(uVar14);
local_4d8 = 0;
}
pwVar10 = local_540;
if (((local_540 != (wchar_t *)PTR_DAT_1403440a0) && (local_540 != (wchar_t *)0x0)) &&
(local_540 != (wchar_t *)0x8)) {
*(int *)(local_540 + -2) = *(int *)(local_540 + -2) + 1;
}
FUN_14016dbe0(uVar13);
local_4f0 = 0;
}
pwVar15 = pwVar10;
if (pwVar10 == (wchar_t *)0x0) {
pwVar15 = (wchar_t *)PTR_DAT_1403440a0;
}
wcsncpy((wchar_t *)&local_73,pwVar15,3);
if (((pwVar10 != (wchar_t *)0x0) && (pwVar10 != (wchar_t *)PTR_DAT_1403440a0)) &&
(pwVar10 + -4 != (wchar_t *)0x0)) {
uVar13 = FUN_14016d8c0();
local_510 = 0;
local_518 = uVar13;
FUN_14016db50(uVar13);
local_510 = 1;
pwVar15 = pwVar10 + -2;
*(int *)pwVar15 = *(int *)pwVar15 + -1;
if (*(int *)pwVar15 == 0) {
FUN_14016d970(pwVar10 + -4);
}
FUN_14016dbe0(uVar13);
local_510 = 0;
}
pwVar10 = local_540;
if (((local_540 != (wchar_t *)0x0) && (local_540 != (wchar_t *)PTR_DAT_1403440a0)) &&
(pwVar15 = local_540 + -4, pwVar15 != (wchar_t *)0x0)) {
uVar13 = FUN_14016d8c0();
local_500 = 0;
local_508 = uVar13;
FUN_14016db50(uVar13);
local_500 = 1;
pwVar10 = pwVar10 + -2;
*(int *)pwVar10 = *(int *)pwVar10 + -1;
if (*(int *)pwVar10 == 0) {
FUN_14016d970(pwVar15);
}
FUN_14016dbe0(uVar13);
local_500 = 0;
}
local_540 = (wchar_t *)PTR_DAT_1403440a0;
Ordinal_9(local_170);
local_73 = local_73 & 0xffffffffffff;
riid = (char *)&local_d8;
ppvObject = (char *)0x97;
memcpy((void *)((longlong)(int)local_610 + 0x130 + (longlong)param_1),riid,0x97);
local_610 = local_610 + 0x97;
local_5d2 = (short)pwVar17 + 1;
pwVar17 = (wchar_t *)(ulonglong)local_5d2;
if (50000 < local_610) {
uVar2 = local_5f0._2_6_;
local_5f0 = CONCAT62(local_5f0._2_6_,(short)local_610);
uVar13 = local_5f0;
riid = (char *)(param_1 + 0x26);
local_5f0._4_2_ = SUB62(uVar2,2);
local_5f0._6_2_ = SUB62(uVar2,4);
((IID *)riid)->Data1 = (undefined4)local_5f0;
((IID *)riid)->Data2 = local_5f0._4_2_;
((IID *)riid)->Data3 = local_5f0._6_2_;
param_1[0x27] = CONCAT26(uStack_5e2,CONCAT24(uStack_5e4,local_5e8));
param_1[0x28] = CONCAT26(uStack_5da,uStack_5e0);
param_1[0x29] = CONCAT26(local_5d2,uStack_5d8);
local_5f0 = uVar13;
iVar5 = FUN_1400a7630(*(undefined8 *)(param_1[0x22] + 0xf0));
if (iVar5 == 0) {
ppvObject = "DB Result Queue push error";
riid = "DBResultQueue_Error.Log";
FUN_1400a6d80(param_1[0x23]);
}
local_610 = 0x20;
local_5d2 = 0;
pwVar17 = pwVar16;
}
pIVar1 = local_5c8;
if (local_5c8 == (IUnknown *)0x0) break;
HVar6 = (*local_5c8->lpVtbl[0xc].QueryInterface)(local_5c8,(IID *)riid,(void **)ppvObject);
if (HVar6 < 0) {
_com_issue_errorex(HVar6,pIVar1,(_GUID *)&DAT_14029e038);
}
Ordinal_9(local_4b8);
}
/* WARNING: Subroutine does not return */
FUN_140218220(0x80004003);
}