44 lines
1.7 KiB
C
44 lines
1.7 KiB
C
/* Agent_Release_x64.exe sha256 6f2be7b8eb799ba51b359d1958720aac5baee5b7ee0d1d36684d3cbd72d45469
|
|
* Ghidra 12.1.2 decompiler output for 0x1400a0d10 FUN_1400a0d10
|
|
* Pseudocode, not original source. */
|
|
|
|
longlong FUN_1400a0d10(longlong param_1,undefined8 param_2,undefined8 param_3,undefined8 param_4)
|
|
|
|
{
|
|
int iVar1;
|
|
undefined8 uVar2;
|
|
longlong lVar3;
|
|
undefined8 uVar4;
|
|
exception local_58 [80];
|
|
|
|
InitializeCriticalSection((LPCRITICAL_SECTION)&DAT_1401631e0);
|
|
InitializeCriticalSection((LPCRITICAL_SECTION)&DAT_140163220);
|
|
InitializeCriticalSection((LPCRITICAL_SECTION)&DAT_140163260);
|
|
iVar1 = FUN_1400be4c0(&PTR_s_fortuna_140110ae0);
|
|
if (iVar1 == -1) {
|
|
FUN_14002f1e0(local_58,L"REGISTER PRNG ERROR : SPRNG",param_3,param_4);
|
|
/* WARNING: Subroutine does not return */
|
|
_CxxThrowException(local_58,(ThrowInfo *)&DAT_140151b88);
|
|
}
|
|
iVar1 = FUN_1400bdc60(&PTR_DAT_140110a60);
|
|
if (iVar1 == -1) {
|
|
FUN_14002f1e0(local_58,L"REGISTER HASH ERROR : SHA1",param_3,param_4);
|
|
/* WARNING: Subroutine does not return */
|
|
_CxxThrowException(local_58,(ThrowInfo *)&DAT_140151b88);
|
|
}
|
|
memcpy(&DAT_1401632a0,&PTR_s_LibTomMath_14011089f_1_1401108d0,0x188);
|
|
iVar1 = FUN_1400bce10(0x14010aa10);
|
|
*(int *)(param_1 + 0x1058) = iVar1;
|
|
iVar1 = FUN_1400bcd70(0x14010aa08);
|
|
uVar4 = 0;
|
|
*(int *)(param_1 + 0x105c) = iVar1;
|
|
lVar3 = param_1;
|
|
uVar2 = FUN_1400bcc70(0x80,*(uint *)(param_1 + 0x1058),param_1,(undefined *)0x0);
|
|
if ((int)uVar2 != 0) {
|
|
FUN_14002f1e0(local_58,L"PRNG MAKE ERROR",lVar3,uVar4);
|
|
/* WARNING: Subroutine does not return */
|
|
_CxxThrowException(local_58,(ThrowInfo *)&DAT_140151b88);
|
|
}
|
|
return param_1;
|
|
}
|
|
|