32 lines
1.1 KiB
C
32 lines
1.1 KiB
C
/* Agent_Release_x64.exe sha256 6f2be7b8eb799ba51b359d1958720aac5baee5b7ee0d1d36684d3cbd72d45469
|
|
* Ghidra 12.1.2 decompiler output for 0x14003a7d4 ATL::CAtlStringMgr::Reallocate
|
|
* Pseudocode, not original source. */
|
|
|
|
/* Library Function - Single Match
|
|
public: virtual struct ATL::CStringData * __ptr64 __cdecl ATL::CAtlStringMgr::Reallocate(struct
|
|
ATL::CStringData * __ptr64,int,int) __ptr64
|
|
|
|
Libraries: Visual Studio 2008 Release, Visual Studio 2010 Release */
|
|
|
|
CStringData * __thiscall
|
|
ATL::CAtlStringMgr::Reallocate(CAtlStringMgr *this,CStringData *param_1,int param_2,int param_3)
|
|
|
|
{
|
|
CStringData *pCVar1;
|
|
uint uVar2;
|
|
uint uVar3;
|
|
ulonglong uVar4;
|
|
|
|
uVar2 = param_2 + 8U & 0xfffffff8;
|
|
uVar4 = (ulonglong)uVar2 * (ulonglong)(uint)param_3;
|
|
if (((uVar4 < 0x100000000) && (uVar3 = (uint)uVar4, uVar3 < 0xffffffe8)) &&
|
|
(pCVar1 = (CStringData *)
|
|
(**(code **)(**(longlong **)(this + 8) + 0x10))
|
|
(*(longlong **)(this + 8),param_1,uVar3 + 0x18),
|
|
pCVar1 != (CStringData *)0x0)) {
|
|
*(uint *)(pCVar1 + 0xc) = uVar2 - 1;
|
|
return pCVar1;
|
|
}
|
|
return (CStringData *)0x0;
|
|
}
|
|
|