add agent manager release decomp
This commit is contained in:
parent
31ff800b2a
commit
fac6117145
7019 changed files with 254032 additions and 5 deletions
102
decomp/AgentManager_Release_x64/full/functions/0x1400bd9a0.c
Normal file
102
decomp/AgentManager_Release_x64/full/functions/0x1400bd9a0.c
Normal file
|
|
@ -0,0 +1,102 @@
|
|||
/* AgentManager_Release_x64.exe sha256 8fd8ca91725858651a7839d34257b10c2970ac16c97e60c523b8b0c983fcb186
|
||||
* Ghidra 12.1.2 decompiler output for 0x1400bd9a0 FUN_1400bd9a0
|
||||
* Pseudocode, not original source. */
|
||||
|
||||
void FUN_1400bd9a0(longlong param_1,int param_2,int param_3,uint param_4)
|
||||
|
||||
{
|
||||
ushort uVar1;
|
||||
int iVar2;
|
||||
int iVar3;
|
||||
byte *pbVar4;
|
||||
ulonglong uVar5;
|
||||
|
||||
iVar2 = *(int *)(param_1 + 0x1714);
|
||||
uVar5 = (ulonglong)param_4;
|
||||
if (iVar2 < 0xc) {
|
||||
*(ushort *)(param_1 + 0x1710) =
|
||||
*(ushort *)(param_1 + 0x1710) | (short)param_2 + -0x101 << ((byte)iVar2 & 0x1f);
|
||||
iVar2 = iVar2 + 5;
|
||||
}
|
||||
else {
|
||||
uVar1 = (short)param_2 - 0x101;
|
||||
*(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;
|
||||
iVar2 = *(int *)(param_1 + 0x1714) + -0xb;
|
||||
*(ushort *)(param_1 + 0x1710) = uVar1 >> (0x10U - (char)*(int *)(param_1 + 0x1714) & 0x1f);
|
||||
}
|
||||
*(int *)(param_1 + 0x1714) = iVar2;
|
||||
if (iVar2 < 0xc) {
|
||||
*(ushort *)(param_1 + 0x1710) =
|
||||
*(ushort *)(param_1 + 0x1710) | (short)param_3 + -1 << ((byte)iVar2 & 0x1f);
|
||||
iVar2 = iVar2 + 5;
|
||||
}
|
||||
else {
|
||||
uVar1 = (short)param_3 - 1;
|
||||
*(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;
|
||||
iVar2 = *(int *)(param_1 + 0x1714) + -0xb;
|
||||
*(ushort *)(param_1 + 0x1710) = uVar1 >> (0x10U - (char)*(int *)(param_1 + 0x1714) & 0x1f);
|
||||
}
|
||||
*(int *)(param_1 + 0x1714) = iVar2;
|
||||
if (iVar2 < 0xd) {
|
||||
*(ushort *)(param_1 + 0x1710) =
|
||||
*(ushort *)(param_1 + 0x1710) | (short)param_4 + -4 << ((byte)iVar2 & 0x1f);
|
||||
iVar2 = iVar2 + 4;
|
||||
}
|
||||
else {
|
||||
uVar1 = (short)param_4 - 4;
|
||||
*(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;
|
||||
iVar2 = *(int *)(param_1 + 0x1714) + -0xc;
|
||||
*(ushort *)(param_1 + 0x1710) = uVar1 >> (0x10U - (char)*(int *)(param_1 + 0x1714) & 0x1f);
|
||||
}
|
||||
*(int *)(param_1 + 0x1714) = iVar2;
|
||||
if (0 < (int)param_4) {
|
||||
pbVar4 = &DAT_1401229d0;
|
||||
do {
|
||||
iVar2 = *(int *)(param_1 + 0x1714);
|
||||
if (iVar2 < 0xe) {
|
||||
iVar3 = iVar2 + 3;
|
||||
*(ushort *)(param_1 + 0x1710) =
|
||||
*(ushort *)(param_1 + 0x1710) |
|
||||
*(short *)(param_1 + 0xaa6 + (ulonglong)*pbVar4 * 4) << ((byte)iVar2 & 0x1f);
|
||||
}
|
||||
else {
|
||||
uVar1 = *(ushort *)(param_1 + 0xaa6 + (ulonglong)*pbVar4 * 4);
|
||||
*(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) + -0xd;
|
||||
*(ushort *)(param_1 + 0x1710) = uVar1 >> (0x10U - (char)*(int *)(param_1 + 0x1714) & 0x1f);
|
||||
}
|
||||
pbVar4 = pbVar4 + 1;
|
||||
uVar5 = uVar5 - 1;
|
||||
*(int *)(param_1 + 0x1714) = iVar3;
|
||||
} while (uVar5 != 0);
|
||||
}
|
||||
FUN_1400bd430(param_1,param_1 + 0xbc,param_2 + -1);
|
||||
FUN_1400bd430(param_1,param_1 + 0x9b0,param_3 + -1);
|
||||
return;
|
||||
}
|
||||
|
||||
Loading…
Add table
Add a link
Reference in a new issue