53 lines
1.5 KiB
C
53 lines
1.5 KiB
C
/* Agent_Release_x64.exe sha256 6f2be7b8eb799ba51b359d1958720aac5baee5b7ee0d1d36684d3cbd72d45469
|
|
* Ghidra 12.1.2 decompiler output for 0x140001ce0 FUN_140001ce0
|
|
* Pseudocode, not original source. */
|
|
|
|
void FUN_140001ce0(longlong param_1,uint param_2)
|
|
|
|
{
|
|
int iVar1;
|
|
longlong *plVar2;
|
|
ulonglong uVar3;
|
|
ulonglong uVar4;
|
|
ulonglong uVar5;
|
|
longlong lVar6;
|
|
ulonglong uVar7;
|
|
|
|
uVar3 = 0;
|
|
iVar1 = (int)(*(longlong *)(param_1 + 0x18) - *(longlong *)(param_1 + 0x10) >> 3);
|
|
if (0 < iVar1) {
|
|
plVar2 = *(longlong **)(param_1 + 0x10);
|
|
uVar4 = uVar3;
|
|
uVar5 = uVar3;
|
|
lVar6 = (longlong)iVar1;
|
|
uVar7 = uVar3;
|
|
do {
|
|
if ((*plVar2 != 0) && (*(byte *)(*plVar2 + 0x40) == param_2)) {
|
|
uVar5 = (ulonglong)((int)uVar5 + 1);
|
|
uVar7 = uVar4;
|
|
}
|
|
uVar4 = (ulonglong)((int)uVar4 + 1);
|
|
plVar2 = plVar2 + 1;
|
|
lVar6 = lVar6 + -1;
|
|
} while (lVar6 != 0);
|
|
if ((int)uVar5 != 0) {
|
|
uVar4 = uVar3;
|
|
if ((int)uVar5 < 2) {
|
|
FUN_1400026f0((*(longlong **)(param_1 + 0x10))[(int)uVar7],-1);
|
|
}
|
|
else {
|
|
do {
|
|
if ((*(longlong *)(*(longlong *)(param_1 + 0x10) + uVar3 * 8) != 0) &&
|
|
(lVar6 = *(longlong *)(*(longlong *)(param_1 + 0x10) + uVar3 * 8),
|
|
*(byte *)(lVar6 + 0x40) == param_2)) {
|
|
FUN_1400026f0(lVar6,(int)uVar4);
|
|
uVar4 = (ulonglong)((int)uVar4 + 1);
|
|
}
|
|
uVar3 = uVar3 + 1;
|
|
} while ((longlong)uVar3 < (longlong)iVar1);
|
|
}
|
|
}
|
|
}
|
|
return;
|
|
}
|
|
|