84 lines
3.6 KiB
C
84 lines
3.6 KiB
C
/* Agent_Release_x64.exe sha256 6f2be7b8eb799ba51b359d1958720aac5baee5b7ee0d1d36684d3cbd72d45469
|
|
* Ghidra 12.1.2 decompiler output for 0x1400dbb08 FUN_1400dbb08
|
|
* Pseudocode, not original source. */
|
|
|
|
void FUN_1400dbb08(longlong param_1)
|
|
|
|
{
|
|
ushort uVar1;
|
|
int iVar2;
|
|
int iVar3;
|
|
|
|
iVar3 = *(int *)(param_1 + 0x1714);
|
|
*(ushort *)(param_1 + 0x1710) = *(ushort *)(param_1 + 0x1710) | 2 << ((byte)iVar3 & 0x1f);
|
|
if (iVar3 < 0xe) {
|
|
iVar3 = iVar3 + 3;
|
|
}
|
|
else {
|
|
*(undefined1 *)((ulonglong)*(uint *)(param_1 + 0x28) + *(longlong *)(param_1 + 0x10)) =
|
|
*(undefined1 *)(param_1 + 0x1710);
|
|
*(int *)(param_1 + 0x28) = *(int *)(param_1 + 0x28) + 1;
|
|
*(undefined1 *)((ulonglong)*(uint *)(param_1 + 0x28) + *(longlong *)(param_1 + 0x10)) =
|
|
*(undefined1 *)(param_1 + 0x1711);
|
|
*(int *)(param_1 + 0x28) = *(int *)(param_1 + 0x28) + 1;
|
|
*(ushort *)(param_1 + 0x1710) = 2 >> (0x10U - (char)*(int *)(param_1 + 0x1714) & 0x1f);
|
|
iVar3 = *(int *)(param_1 + 0x1714) + -0xd;
|
|
}
|
|
*(int *)(param_1 + 0x1714) = iVar3;
|
|
uVar1 = 0;
|
|
*(ushort *)(param_1 + 0x1710) = *(ushort *)(param_1 + 0x1710) | 0 << ((byte)iVar3 & 0x1f);
|
|
if (iVar3 < 10) {
|
|
iVar3 = iVar3 + 7;
|
|
}
|
|
else {
|
|
*(undefined1 *)((ulonglong)*(uint *)(param_1 + 0x28) + *(longlong *)(param_1 + 0x10)) =
|
|
*(undefined1 *)(param_1 + 0x1710);
|
|
*(int *)(param_1 + 0x28) = *(int *)(param_1 + 0x28) + 1;
|
|
*(undefined1 *)((ulonglong)*(uint *)(param_1 + 0x28) + *(longlong *)(param_1 + 0x10)) =
|
|
*(undefined1 *)(param_1 + 0x1711);
|
|
*(int *)(param_1 + 0x28) = *(int *)(param_1 + 0x28) + 1;
|
|
*(ushort *)(param_1 + 0x1710) = 0 >> (0x10U - (char)*(int *)(param_1 + 0x1714) & 0x1f);
|
|
iVar3 = *(int *)(param_1 + 0x1714) + -9;
|
|
}
|
|
*(int *)(param_1 + 0x1714) = iVar3;
|
|
FUN_1400db4e8(param_1);
|
|
iVar3 = *(int *)(param_1 + 0x1714);
|
|
if ((*(int *)(param_1 + 0x170c) - iVar3) + 0xb < 9) {
|
|
if (iVar3 < 0xe) {
|
|
iVar2 = iVar3 + 3;
|
|
*(ushort *)(param_1 + 0x1710) = *(ushort *)(param_1 + 0x1710) | 2 << ((byte)iVar3 & 0x1f);
|
|
}
|
|
else {
|
|
*(ushort *)(param_1 + 0x1710) = *(ushort *)(param_1 + 0x1710) | 2 << ((byte)iVar3 & 0x1f);
|
|
*(undefined1 *)((ulonglong)*(uint *)(param_1 + 0x28) + *(longlong *)(param_1 + 0x10)) =
|
|
*(undefined1 *)(param_1 + 0x1710);
|
|
*(int *)(param_1 + 0x28) = *(int *)(param_1 + 0x28) + 1;
|
|
*(undefined1 *)((ulonglong)*(uint *)(param_1 + 0x28) + *(longlong *)(param_1 + 0x10)) =
|
|
*(undefined1 *)(param_1 + 0x1711);
|
|
*(int *)(param_1 + 0x28) = *(int *)(param_1 + 0x28) + 1;
|
|
iVar2 = *(int *)(param_1 + 0x1714) + -0xd;
|
|
*(ushort *)(param_1 + 0x1710) = 2 >> (0x10U - (char)*(int *)(param_1 + 0x1714) & 0x1f);
|
|
}
|
|
*(int *)(param_1 + 0x1714) = iVar2;
|
|
if (iVar2 < 10) {
|
|
iVar3 = iVar2 + 7;
|
|
*(ushort *)(param_1 + 0x1710) = *(ushort *)(param_1 + 0x1710) | uVar1 << ((byte)iVar2 & 0x1f);
|
|
}
|
|
else {
|
|
*(ushort *)(param_1 + 0x1710) = *(ushort *)(param_1 + 0x1710) | uVar1 << ((byte)iVar2 & 0x1f);
|
|
*(undefined1 *)((ulonglong)*(uint *)(param_1 + 0x28) + *(longlong *)(param_1 + 0x10)) =
|
|
*(undefined1 *)(param_1 + 0x1710);
|
|
*(int *)(param_1 + 0x28) = *(int *)(param_1 + 0x28) + 1;
|
|
*(undefined1 *)((ulonglong)*(uint *)(param_1 + 0x28) + *(longlong *)(param_1 + 0x10)) =
|
|
*(undefined1 *)(param_1 + 0x1711);
|
|
*(int *)(param_1 + 0x28) = *(int *)(param_1 + 0x28) + 1;
|
|
iVar3 = *(int *)(param_1 + 0x1714) + -9;
|
|
*(ushort *)(param_1 + 0x1710) = uVar1 >> (0x10U - (char)*(int *)(param_1 + 0x1714) & 0x1f);
|
|
}
|
|
*(int *)(param_1 + 0x1714) = iVar3;
|
|
FUN_1400db4e8(param_1);
|
|
}
|
|
*(undefined4 *)(param_1 + 0x170c) = 7;
|
|
return;
|
|
}
|
|
|