53 lines
1.4 KiB
C
53 lines
1.4 KiB
C
/* DBCServer_Release_x64.exe sha256 d9e4fccdf3482e50247686d4452c0b13c75a53efc4bd7320668eece8d1ce828c
|
|
* Ghidra 12.1.2 decompiler output for 0x14021c130 FUN_14021c130
|
|
* Pseudocode, not original source. */
|
|
|
|
undefined8 *
|
|
FUN_14021c130(undefined8 *param_1,undefined8 param_2,undefined8 param_3,undefined8 param_4)
|
|
|
|
{
|
|
undefined8 *puVar1;
|
|
double *pdVar2;
|
|
longlong lVar3;
|
|
double dVar4;
|
|
double dVar5;
|
|
|
|
*param_1 = Clock::vftable;
|
|
param_1[1] = Clock::vftable;
|
|
param_1[2] = 0;
|
|
param_1[3] = 0;
|
|
param_1[4] = 0;
|
|
*(undefined4 *)(param_1 + 5) = 0;
|
|
param_1[6] = 0;
|
|
param_1[7] = 0;
|
|
param_1[10] = 0;
|
|
param_1[0xb] = 0;
|
|
param_1[0xc] = 0;
|
|
param_1[0xe] = 0;
|
|
param_1[0xf] = 0;
|
|
param_1[0x10] = 0;
|
|
param_1[0x12] = 0x3fc999999999999a;
|
|
puVar1 = (undefined8 *)param_1[2];
|
|
if (puVar1 != (undefined8 *)0x0) {
|
|
(**(code **)*puVar1)(puVar1,1,param_3,param_4,0xfffffffffffffffe);
|
|
}
|
|
param_1[2] = 0;
|
|
param_1[0x12] = 0x3fe0000000000000;
|
|
FUN_14021c0b0(param_1,0x3f9eb851eb851eb8);
|
|
dVar5 = 0.0;
|
|
pdVar2 = (double *)param_1[10];
|
|
if (pdVar2 != (double *)param_1[0xb]) {
|
|
do {
|
|
dVar5 = dVar5 + *pdVar2;
|
|
pdVar2 = pdVar2 + 1;
|
|
} while (pdVar2 != (double *)param_1[0xb]);
|
|
}
|
|
lVar3 = (longlong)(param_1[0xb] - param_1[10]) >> 3;
|
|
dVar4 = (double)lVar3;
|
|
if (lVar3 < 0) {
|
|
dVar4 = dVar4 + 1.8446744073709552e+19;
|
|
}
|
|
param_1[4] = dVar5 / dVar4;
|
|
return param_1;
|
|
}
|
|
|