44 lines
1.4 KiB
C
44 lines
1.4 KiB
C
/* AgentManager_Release_x64.exe sha256 8fd8ca91725858651a7839d34257b10c2970ac16c97e60c523b8b0c983fcb186
|
|
* Ghidra 12.1.2 decompiler output for 0x14009aab0 FUN_14009aab0
|
|
* Pseudocode, not original source. */
|
|
|
|
void FUN_14009aab0(longlong param_1,undefined8 param_2,undefined8 param_3,undefined8 param_4)
|
|
|
|
{
|
|
int iVar1;
|
|
uint uVar2;
|
|
size_t _Size;
|
|
void *_Dst;
|
|
ulonglong uVar3;
|
|
ulonglong uVar4;
|
|
|
|
uVar3 = 0x80000000;
|
|
uVar4 = *(longlong *)(param_1 + 0x30) + 0x80000000;
|
|
if (0xffffffff < uVar4) {
|
|
/* WARNING: Subroutine does not return */
|
|
FUN_14003df20(L"Proud::CStreamQueue::Shrink",uVar4,param_3,param_4);
|
|
}
|
|
_Size = *(size_t *)(param_1 + 0x38);
|
|
if (0 < (longlong)_Size) {
|
|
iVar1 = *(int *)(param_1 + 0x30);
|
|
if (-1 < iVar1) {
|
|
uVar2 = *(uint *)(param_1 + 0x20);
|
|
uVar3 = (ulonglong)uVar2;
|
|
if (iVar1 < (int)uVar2) {
|
|
_Dst = *(void **)(param_1 + 0x18);
|
|
if ((int)uVar2 < 1) {
|
|
/* WARNING: Subroutine does not return */
|
|
FUN_14003def0(uVar3,(void *)((longlong)_Dst + (longlong)iVar1),_Size,_Dst);
|
|
}
|
|
memmove(_Dst,(void *)((longlong)_Dst + (longlong)iVar1),_Size);
|
|
goto LAB_14009ab02;
|
|
}
|
|
}
|
|
/* WARNING: Subroutine does not return */
|
|
FUN_14003def0(uVar3,uVar4,_Size,param_4);
|
|
}
|
|
LAB_14009ab02:
|
|
*(undefined8 *)(param_1 + 0x30) = 0;
|
|
return;
|
|
}
|
|
|