/* DBCServer_Release_x64.exe sha256 d9e4fccdf3482e50247686d4452c0b13c75a53efc4bd7320668eece8d1ce828c * Ghidra 12.1.2 decompiler output for 0x140001700 FUN_140001700 * Pseudocode, not original source. */ void FUN_140001700(longlong *param_1,IID *param_2,void **param_3) { IUnknown *pIVar1; HRESULT HVar2; ULONG UVar3; undefined8 uVar4; undefined1 local_res8 [8]; pIVar1 = (IUnknown *)*param_1; if (pIVar1 == (IUnknown *)0x0) { /* WARNING: Subroutine does not return */ FUN_140218220(0x80004003); } HVar2 = (*pIVar1->lpVtbl[3].QueryInterface)(pIVar1,param_2,param_3); if (HVar2 < 0) { _com_issue_errorex(HVar2,pIVar1,(_GUID *)&DAT_14029dff0); } uVar4 = FUN_140001000(local_res8,param_3); if (*param_1 == 0) { /* WARNING: Subroutine does not return */ FUN_140218220(0x80004003); } FUN_140001410(*param_1,uVar4); pIVar1 = (IUnknown *)*param_1; if (pIVar1 == (IUnknown *)0x0) { /* WARNING: Subroutine does not return */ FUN_140218220(0x80004003); } UVar3 = (*pIVar1->lpVtbl[6].Release)(pIVar1); if ((int)UVar3 < 0) { _com_issue_errorex(UVar3,pIVar1,(_GUID *)&DAT_14029dff0); } return; }