server-re/decomp/AgentManager_Release_x64/full/functions/0x14000b5f0.c
2026-10-15 09:58:24 -04:00

150 lines
4.2 KiB
C

/* AgentManager_Release_x64.exe sha256 8fd8ca91725858651a7839d34257b10c2970ac16c97e60c523b8b0c983fcb186
* Ghidra 12.1.2 decompiler output for 0x14000b5f0 FUN_14000b5f0
* Pseudocode, not original source. */
ulonglong FUN_14000b5f0(longlong param_1,int param_2,int param_3,undefined8 param_4,longlong param_5
,longlong param_6)
{
uint uVar1;
uint uVar2;
int iVar3;
short *psVar4;
undefined8 uVar5;
undefined4 extraout_var;
ulonglong uVar6;
short *psVar7;
undefined8 uVar8;
longlong *local_38 [2];
short local_28 [4];
undefined4 local_20;
uVar5 = param_4;
FUN_140073cc0(local_38);
FUN_140073f70(local_38,*(IID **)(param_1 + 8),(void **)L"dbo.up_insert_log_monitor_notice");
Ordinal_8(local_28);
if ((local_28[0] == 3) || (local_28[0] == 10)) {
LAB_14000b697:
local_20._0_2_ = 2;
local_20._2_2_ = 0;
}
else {
if (local_28[0] != 0xb) {
uVar2 = Ordinal_9(local_28);
if ((int)uVar2 < 0) {
/* WARNING: Subroutine does not return */
FUN_140048d70((ulonglong)uVar2);
}
local_28[0] = 3;
goto LAB_14000b697;
}
local_20._0_2_ = 0xffff;
}
FUN_140073d70(local_38,1,(undefined4 *)local_28);
Ordinal_9(local_28);
Ordinal_8(local_28);
iVar3 = param_2;
if ((local_28[0] != 3) && (iVar3 = param_2, local_28[0] != 10)) {
if (local_28[0] == 0xb) {
local_20 = CONCAT22(local_20._2_2_,-(ushort)(param_2 != 0));
iVar3 = local_20;
}
else {
uVar2 = Ordinal_9(local_28);
if ((int)uVar2 < 0) {
/* WARNING: Subroutine does not return */
FUN_140048d70((ulonglong)uVar2);
}
local_28[0] = 3;
iVar3 = param_2;
}
}
local_20 = iVar3;
FUN_140073d70(local_38,2,(undefined4 *)local_28);
Ordinal_9(local_28);
Ordinal_8(local_28);
iVar3 = param_3;
if ((local_28[0] != 3) && (iVar3 = param_3, local_28[0] != 10)) {
if (local_28[0] == 0xb) {
local_20 = CONCAT22(local_20._2_2_,-(ushort)(param_3 != 0));
iVar3 = local_20;
}
else {
uVar2 = Ordinal_9(local_28);
if ((int)uVar2 < 0) {
/* WARNING: Subroutine does not return */
FUN_140048d70((ulonglong)uVar2);
}
local_28[0] = 3;
iVar3 = param_3;
}
}
local_20 = iVar3;
FUN_140073d70(local_38,3,(undefined4 *)local_28);
Ordinal_9(local_28);
Ordinal_8(local_28);
uVar2 = (uint)param_4;
if ((local_28[0] != 3) && (local_28[0] != 10)) {
if (local_28[0] == 0xb) {
local_20 = CONCAT22(local_20._2_2_,-(ushort)(uVar2 != 0));
uVar2 = local_20;
}
else {
uVar1 = Ordinal_9(local_28);
if ((int)uVar1 < 0) {
/* WARNING: Subroutine does not return */
FUN_140048d70((ulonglong)uVar1);
}
local_28[0] = 3;
}
}
local_20 = uVar2;
FUN_140073d70(local_38,4,(undefined4 *)local_28);
Ordinal_9(local_28);
Ordinal_8(local_28);
if ((local_28[0] != 3) && (local_28[0] != 10)) {
if (local_28[0] == 0xb) {
local_20 = local_20 & 0xffff0000;
goto LAB_14000b855;
}
uVar2 = Ordinal_9(local_28);
if ((int)uVar2 < 0) {
/* WARNING: Subroutine does not return */
FUN_140048d70((ulonglong)uVar2);
}
local_28[0] = 3;
}
local_20 = 0;
LAB_14000b855:
FUN_140073d70(local_38,5,(undefined4 *)local_28);
Ordinal_9(local_28);
FUN_14000a950(local_28,param_5);
FUN_140073d70(local_38,6,(undefined4 *)local_28);
Ordinal_9(local_28);
FUN_14000a950(local_28,param_6);
FUN_140073d70(local_38,7,(undefined4 *)local_28);
Ordinal_9(local_28);
FUN_140074540(local_38,(int *)0x0);
uVar8 = 0;
psVar7 = local_28;
psVar4 = (short *)FUN_140073e60(local_38,psVar7,0);
FUN_140074970(psVar4,psVar7,uVar8,uVar5);
iVar3 = FUN_14000add0(psVar4);
uVar5 = Ordinal_9(local_28);
if (iVar3 < 0) {
iVar3 = wprintf(L"Failed Stored Procedure!! : %s \n");
uVar6 = CONCAT44(extraout_var,iVar3);
if (local_38[0] != (longlong *)0x0) {
uVar6 = (**(code **)(*local_38[0] + 0x10))();
}
uVar6 = uVar6 & 0xffffffffffffff00;
}
else {
if (local_38[0] != (longlong *)0x0) {
uVar5 = (**(code **)(*local_38[0] + 0x10))();
}
uVar6 = CONCAT71((int7)((ulonglong)uVar5 >> 8),1);
}
return uVar6;
}