58 lines
1.6 KiB
C
58 lines
1.6 KiB
C
/* Agent_Release_x64.exe sha256 6f2be7b8eb799ba51b359d1958720aac5baee5b7ee0d1d36684d3cbd72d45469
|
|
* Ghidra 12.1.2 decompiler output for 0x1400adf90 FUN_1400adf90
|
|
* Pseudocode, not original source. */
|
|
|
|
longlong * FUN_1400adf90(longlong *param_1,longlong *param_2,int param_3,uint param_4)
|
|
|
|
{
|
|
ulonglong uVar1;
|
|
undefined *puVar2;
|
|
uint uVar3;
|
|
uint uVar5;
|
|
ulonglong uVar4;
|
|
|
|
uVar3 = 0;
|
|
uVar4 = 0;
|
|
puVar2 = (undefined *)*param_1;
|
|
if (param_3 < 0) {
|
|
param_3 = uVar3;
|
|
}
|
|
if ((int)param_4 < 0) {
|
|
param_4 = uVar3;
|
|
}
|
|
uVar1 = 0;
|
|
if ((puVar2 != (undefined *)0x0) && (puVar2 != PTR_DAT_140155008)) {
|
|
uVar1 = (ulonglong)*(uint *)(puVar2 + -8);
|
|
}
|
|
if ((int)uVar1 < (int)(param_3 + param_4)) {
|
|
uVar5 = uVar3;
|
|
if ((puVar2 != (undefined *)0x0) && (puVar2 != PTR_DAT_140155008)) {
|
|
uVar5 = *(uint *)(puVar2 + -8);
|
|
}
|
|
param_4 = uVar5 - param_3;
|
|
}
|
|
uVar5 = uVar3;
|
|
if ((puVar2 != (undefined *)0x0) && (puVar2 != PTR_DAT_140155008)) {
|
|
uVar5 = *(uint *)(puVar2 + -8);
|
|
}
|
|
if ((int)uVar5 < param_3) {
|
|
param_4 = uVar3;
|
|
}
|
|
if (param_3 == 0) {
|
|
if ((puVar2 != (undefined *)0x0) && (puVar2 != PTR_DAT_140155008)) {
|
|
uVar4 = (ulonglong)*(uint *)(puVar2 + -8);
|
|
}
|
|
if (param_4 == (uint)uVar4) {
|
|
FUN_140030200(uVar1,PTR_DAT_140155008,puVar2,uVar4);
|
|
*param_2 = (longlong)PTR_DAT_140155008;
|
|
FUN_14001bf80(param_2,param_1,puVar2,uVar4);
|
|
return param_2;
|
|
}
|
|
}
|
|
if (puVar2 == (undefined *)0x0) {
|
|
puVar2 = PTR_DAT_140155008;
|
|
}
|
|
FUN_14002ee70(param_2,puVar2 + param_3,(ulonglong)param_4,uVar4);
|
|
return param_2;
|
|
}
|
|
|