/* AgentManager_Release_x64.exe sha256 8fd8ca91725858651a7839d34257b10c2970ac16c97e60c523b8b0c983fcb186 * Ghidra 12.1.2 decompiler output for 0x1400b8990 FUN_1400b8990 * Pseudocode, not original source. */ undefined8 FUN_1400b8990(longlong *param_1,undefined1 *param_2) { uint uVar1; if ((param_1 != (longlong *)0x0) && (param_2 != (undefined1 *)0x0)) { uVar1 = *(uint *)((longlong)param_1 + 0x1c); if (uVar1 < 0x40) { *param_1 = *param_1 + (ulonglong)(uVar1 * 8); *(undefined1 *)((ulonglong)uVar1 + 0x20 + (longlong)param_1) = 0x80; *(int *)((longlong)param_1 + 0x1c) = *(int *)((longlong)param_1 + 0x1c) + 1; uVar1 = *(uint *)((longlong)param_1 + 0x1c); if (0x38 < uVar1) { while (uVar1 < 0x40) { *(undefined1 *)((ulonglong)uVar1 + 0x20 + (longlong)param_1) = 0; *(int *)((longlong)param_1 + 0x1c) = *(int *)((longlong)param_1 + 0x1c) + 1; uVar1 = *(uint *)((longlong)param_1 + 0x1c); } FUN_1400b83a0((longlong)param_1,(longlong)(param_1 + 4)); *(undefined4 *)((longlong)param_1 + 0x1c) = 0; } uVar1 = *(uint *)((longlong)param_1 + 0x1c); while (uVar1 < 0x38) { *(undefined1 *)((ulonglong)*(uint *)((longlong)param_1 + 0x1c) + 0x20 + (longlong)param_1) = 0; *(int *)((longlong)param_1 + 0x1c) = *(int *)((longlong)param_1 + 0x1c) + 1; uVar1 = *(uint *)((longlong)param_1 + 0x1c); } *(undefined1 *)(param_1 + 0xb) = *(undefined1 *)((longlong)param_1 + 7); *(undefined1 *)((longlong)param_1 + 0x59) = *(undefined1 *)((longlong)param_1 + 6); *(undefined1 *)((longlong)param_1 + 0x5a) = *(undefined1 *)((longlong)param_1 + 5); *(undefined1 *)((longlong)param_1 + 0x5b) = *(undefined1 *)((longlong)param_1 + 4); *(undefined1 *)((longlong)param_1 + 0x5c) = *(undefined1 *)((longlong)param_1 + 3); *(undefined1 *)((longlong)param_1 + 0x5d) = *(undefined1 *)((longlong)param_1 + 2); *(undefined1 *)((longlong)param_1 + 0x5e) = *(undefined1 *)((longlong)param_1 + 1); *(char *)((longlong)param_1 + 0x5f) = (char)*param_1; FUN_1400b83a0((longlong)param_1,(longlong)(param_1 + 4)); *param_2 = *(undefined1 *)((longlong)param_1 + 0xb); param_2[1] = *(undefined1 *)((longlong)param_1 + 10); param_2[2] = *(undefined1 *)((longlong)param_1 + 9); param_2[3] = (char)param_1[1]; param_2[4] = *(undefined1 *)((longlong)param_1 + 0xf); param_2[5] = *(undefined1 *)((longlong)param_1 + 0xe); param_2[6] = *(undefined1 *)((longlong)param_1 + 0xd); param_2[7] = *(undefined1 *)((longlong)param_1 + 0xc); param_2[8] = *(undefined1 *)((longlong)param_1 + 0x13); param_2[9] = *(undefined1 *)((longlong)param_1 + 0x12); param_2[10] = *(undefined1 *)((longlong)param_1 + 0x11); param_2[0xb] = (char)param_1[2]; param_2[0xc] = *(undefined1 *)((longlong)param_1 + 0x17); param_2[0xd] = *(undefined1 *)((longlong)param_1 + 0x16); param_2[0xe] = *(undefined1 *)((longlong)param_1 + 0x15); param_2[0xf] = *(undefined1 *)((longlong)param_1 + 0x14); param_2[0x10] = *(undefined1 *)((longlong)param_1 + 0x1b); param_2[0x11] = *(undefined1 *)((longlong)param_1 + 0x1a); param_2[0x12] = *(undefined1 *)((longlong)param_1 + 0x19); param_2[0x13] = (char)param_1[3]; return 0; } } return 0x10; }