Files
soothe2-re/decomp_dsp.txt
T
Matiq 25cf786c54 Initial commit: soothe2 RE workspace + roadmap
- Инфраструктура: RTTI-дампы (rtti_dsp/full.json), декомпиляции DSP-классов (decomp_*.txt),
  Ghidra-скрипты (Dump*.java, ImportRtti*.java, Diag.java), depthcurve/curve_fits LUT.
- Поведенческая модель sim_v5.py + sim.py (RMSE ~0.3dB), утилиты (measure, tt_sweep, patchparam,
  sweep, harness_*, verify_sim).
- summary.md + roadmap.md (контракт из manual M1-M12, топология пайплайна из OCR, фазы A-C).
- pipeline_ocr.txt: OCR диаграммы Appendix A (mid/side ручка, trim/mix/bypass порядок).
2026-08-16 18:54:40 +03:00

6635 lines
197 KiB
Plaintext

############ VTABLE SpectralProcessor 0x1824abb90
SLOTLIST:
[0] 0x18052d390 size=52
[1] 0x18052cfb0 size=61
[2] 0x180529550 size=191
[3] 0x1804714b0 size=3
[4] 0x180529610 size=1154
[5] 0x18113285a size=6
[6] 0x1804714b0 size=3
[7] 0x1804714b0 size=3
[8] 0x1804727a0 size=3
[9] 0x1804714b0 size=3
[10] 0x1804714b0 size=3
[11] 0x1804714b0 size=3
[18] 0x182505548 size=0
[19] 0x18052d3d0 size=52
[20] 0x18052c8f0 size=26
[21] 0x1812c1fb0 size=92
[22] 0x18052c4a0 size=794
[23] 0x1804714b0 size=3
[24] 0x1804714b0 size=3
[25] 0x1812c0b50 size=3
[26] 0x18052bfa0 size=870
[27] 0x1812c0b60 size=152
[28] 0x18052bdf0 size=432
[29] 0x1804731c0 size=3
[30] 0x1804731c0 size=3
[31] 0x1812c0b40 size=3
[32] 0x18113285a size=6
[33] 0x1804731c0 size=3
[34] 0x1804731c0 size=3
[35] 0x1804731c0 size=3
[36] 0x1804731c0 size=3
[37] 0x1812c0ca0 size=3
[38] 0x1804727a0 size=3
[39] 0x1812c0df0 size=4
[40] 0x18113285a size=6
[41] 0x180484870 size=3
[42] 0x1812c0cc0 size=3
[43] 0x18052c8d0 size=18
[44] 0x18052c8c0 size=16
[45] 0x18052c880 size=49
[46] 0x18052c7f0 size=141
[47] 0x1804714b0 size=3
[48] 0x18052bde0 size=15
[49] 0x1812bfff0 size=10
[50] 0x18052bdd0 size=15
[51] 0x1812bffb0 size=55
[52] 0x1812c0e20 size=3
[53] 0x1812c0e10 size=3
[54] 0x18052c490 size=14
[55] 0x1812c1130 size=139
[56] 0x1812c1070 size=180
[57] 0x1812c11d0 size=5
[58] 0x1812bf000 size=137
[59] 0x1804d7000 size=33
[60] 0x1812bffa0 size=3
[61] 0x18052c310 size=339
[62] 0x1804d7030 size=10
[63] 0x1812c0230 size=525
CCODE:
--- [1] 0x18052cfb0 size=61 ---
void .?AV?$AudioProcessingModule@M$01@@::vtbl___AV__AudioProcessingModule_M_01__(longlong param_1)
{
FUN_1812b4430(param_1 + 0x14,0,2);
*(float *)(param_1 + 0x58) = (float)(DAT_1824c4230 / (double)*(float *)(param_1 + 0x24));
return;
}
--- [2] 0x180529550 size=191 ---
void .?AV?$Soothe2Module@M$01@@::vtbl___AV__Soothe2Module_M_01__
(longlong *param_1,undefined4 param_2,undefined4 *param_3,int param_4)
{
int *piVar1;
longlong lVar2;
uint *puVar3;
lVar2 = (longlong)param_4;
puVar3 = (uint *)(param_1 + (lVar2 + 9) * 8);
*(undefined4 *)(*(longlong *)(puVar3 + 8) + (longlong)(int)*puVar3 * 4) = *param_3;
*puVar3 = puVar3[2] - 1 & *puVar3 + 1;
puVar3 = (uint *)(param_1 + (lVar2 + 7) * 8);
*(undefined4 *)(*(longlong *)(puVar3 + 8) + (longlong)(int)*puVar3 * 4) = param_2;
*puVar3 = puVar3[2] - 1 & *puVar3 + 1;
piVar1 = (int *)((longlong)param_1 + lVar2 * 4 + 0x3c0);
*piVar1 = *piVar1 + 1;
if ((*(int *)((longlong)param_1 + lVar2 * 4 + 0x3c0) == (int)param_1[0x79] / 2) && (param_4 == 0))
{
(**(code **)(*param_1 + 0x38))(param_1);
}
if (*(int *)((longlong)param_1 + lVar2 * 4 + 0x3c0) == (int)param_1[0x79]) {
*(undefined4 *)((longlong)param_1 + lVar2 * 4 + 0x3c0) = 0;
FUN_1805300f0(param_1,param_4);
}
return;
}
--- [4] 0x180529610 size=1154 ---
void .?AV?$SpectralProcessor@M$07$01@@::vtbl___AV__SpectralProcessor_M_07_01__
(longlong *param_1,longlong *param_2,ulonglong param_3)
{
int iVar1;
int iVar2;
longlong lVar3;
ulonglong uVar4;
uint uVar5;
int iVar6;
ulonglong uVar7;
ulonglong uVar8;
ulonglong uVar9;
longlong *plVar10;
longlong *plVar11;
code *pcVar12;
uVar4 = 0;
uVar9 = uVar4;
if (0 < (int)param_1[6]) {
param_2 = param_1 + 0x3b;
do {
param_2[-3] = 0;
uVar8 = uVar4;
uVar7 = uVar4;
if (0 < (int)*param_2) {
do {
*(undefined4 *)(uVar7 + param_2[-1]) = 0;
uVar5 = (int)uVar8 + 1;
uVar8 = (ulonglong)uVar5;
uVar7 = uVar7 + 4;
} while ((int)uVar5 < (int)*param_2);
}
param_2[1] = param_2[-1];
param_2[0xd] = 0;
uVar8 = uVar4;
uVar7 = uVar4;
if (0 < (int)param_2[0x10]) {
do {
*(undefined4 *)(uVar8 + param_2[0xf]) = 0;
uVar5 = (int)uVar7 + 1;
uVar8 = uVar8 + 4;
uVar7 = (ulonglong)uVar5;
} while ((int)uVar5 < (int)param_2[0x10]);
}
param_2[0x11] = param_2[0xf];
param_2[0x1d] = 0;
uVar8 = uVar4;
param_3 = uVar4;
if (0 < (int)param_2[0x20]) {
do {
*(undefined4 *)(uVar8 + param_2[0x1f]) = 0;
uVar5 = (int)param_3 + 1;
param_3 = (ulonglong)uVar5;
uVar8 = uVar8 + 4;
} while ((int)uVar5 < (int)param_2[0x20]);
}
param_2[0x21] = param_2[0x1f];
uVar5 = (int)uVar9 + 1;
uVar9 = (ulonglong)uVar5;
param_2 = param_2 + 8;
} while ((int)uVar5 < (int)param_1[6]);
}
FUN_18052e130(param_1,param_2,param_3,uVar9,0xfffffffffffffffe);
iVar1 = (int)param_1[0x34];
uVar9 = (longlong)iVar1 % (longlong)*(int *)((longlong)param_1 + 0x1ac) & 0xffffffff;
*(int *)(param_1 + 0x79) = iVar1 / *(int *)((longlong)param_1 + 0x1ac);
*(int *)(param_1 + 0x35) = (int)param_1[0x36] * iVar1;
if (0 < (int)param_1[6]) {
plVar10 = param_1 + 0x3b;
uVar8 = uVar4;
do {
iVar2 = FUN_1813bbf80(0x10000,uVar9);
if ((int)plVar10[-2] != iVar2) {
FUN_18052e190(plVar10 + -1,iVar2,0);
}
*(int *)(plVar10 + -2) = iVar2;
plVar10[-3] = 0;
uVar9 = uVar4;
uVar7 = uVar4;
if (0 < (int)*plVar10) {
do {
*(undefined4 *)(uVar9 + plVar10[-1]) = 0;
uVar5 = (int)uVar7 + 1;
uVar9 = uVar9 + 4;
uVar7 = (ulonglong)uVar5;
} while ((int)uVar5 < (int)*plVar10);
}
plVar10[1] = plVar10[-1];
uVar5 = (int)param_1[0x34] + (int)plVar10[-3] & (int)plVar10[-2] - 1U;
if ((int)uVar5 < 0) {
uVar5 = uVar5 + (int)plVar10[-2];
}
*(uint *)(plVar10 + -3) = uVar5;
iVar2 = FUN_1813bbf80(0x10000);
if ((int)plVar10[0xe] != iVar2) {
FUN_18052e190(plVar10 + 0xf,iVar2,0);
}
*(int *)(plVar10 + 0xe) = iVar2;
plVar10[0xd] = 0;
uVar9 = uVar4;
uVar7 = uVar4;
if (0 < (int)plVar10[0x10]) {
do {
*(undefined4 *)(uVar9 + plVar10[0xf]) = 0;
uVar5 = (int)uVar7 + 1;
uVar9 = uVar9 + 4;
uVar7 = (ulonglong)uVar5;
} while ((int)uVar5 < (int)plVar10[0x10]);
}
plVar10[0x11] = plVar10[0xf];
uVar5 = (int)param_1[0x34] + (int)plVar10[0xd] & (int)plVar10[0xe] - 1U;
if ((int)uVar5 < 0) {
uVar5 = uVar5 + (int)plVar10[0xe];
}
*(uint *)(plVar10 + 0xd) = uVar5;
iVar2 = FUN_1813bbf80(0x10000);
if ((int)plVar10[0x1e] != iVar2) {
FUN_18052e190(plVar10 + 0x1f,iVar2,0);
}
*(int *)(plVar10 + 0x1e) = iVar2;
plVar10[0x1d] = 0;
uVar7 = uVar4;
uVar9 = uVar4;
if (0 < (int)plVar10[0x20]) {
do {
*(undefined4 *)(uVar7 + plVar10[0x1f]) = 0;
uVar5 = (int)uVar9 + 1;
uVar9 = (ulonglong)uVar5;
uVar7 = uVar7 + 4;
} while ((int)uVar5 < (int)plVar10[0x20]);
}
plVar10[0x21] = plVar10[0x1f];
uVar5 = (int)uVar8 + 1;
uVar8 = (ulonglong)uVar5;
plVar10 = plVar10 + 8;
} while ((int)uVar5 < (int)param_1[6]);
}
if (0 < (int)param_1[6]) {
iVar2 = iVar1 * 0x10;
plVar10 = param_1 + 0x6c;
uVar9 = uVar4;
do {
if ((int)plVar10[1] == iVar2) {
LAB_18052990b:
uVar8 = uVar4;
uVar7 = uVar4;
if (0 < (int)plVar10[1]) {
do {
*(undefined4 *)(uVar8 + *plVar10) = 0;
uVar5 = (int)uVar7 + 1;
uVar8 = uVar8 + 4;
uVar7 = (ulonglong)uVar5;
} while ((int)uVar5 < (int)plVar10[1]);
}
}
else {
if ((0 < (int)plVar10[1]) && (*plVar10 != 0)) {
FUN_1800010c0();
}
*plVar10 = 0;
iVar6 = iVar2;
if (iVar2 < 0) {
iVar6 = 0;
}
*(int *)(plVar10 + 1) = iVar6;
if (iVar6 != 0) {
lVar3 = FUN_180001080(iVar6 * 4);
*plVar10 = lVar3;
goto LAB_18052990b;
}
}
uVar5 = (int)uVar9 + 1;
uVar9 = (ulonglong)uVar5;
plVar10 = plVar10 + 2;
} while ((int)uVar5 < (int)param_1[6]);
}
if (0 < (int)param_1[6]) {
plVar11 = param_1 + 0x70;
plVar10 = param_1 + 0x6c;
uVar9 = uVar4;
do {
*plVar11 = *plVar10;
uVar5 = (int)uVar9 + 1;
uVar9 = (ulonglong)uVar5;
plVar10 = plVar10 + 2;
plVar11 = plVar11 + 1;
} while ((int)uVar5 < (int)param_1[6]);
}
FUN_18052e190(param_1 + 0x72,iVar1 * 0x10,0);
FUN_18052dc30(param_1 + 0xc,(int)param_1[0x35],iVar1 * 8);
FUN_18052e190(param_1 + 0x74,(int)param_1[0x34],0);
uVar9 = uVar4;
uVar8 = uVar4;
if (0 < (int)param_1[0x75]) {
do {
*(undefined4 *)(uVar9 + param_1[0x74]) = 0;
uVar5 = (int)uVar8 + 1;
uVar9 = uVar9 + 4;
uVar8 = (ulonglong)uVar5;
} while ((int)uVar5 < (int)param_1[0x75]);
}
if (0 < (int)param_1[6]) {
plVar10 = param_1 + 0x78;
do {
*(undefined4 *)plVar10 = 0;
uVar5 = (int)uVar4 + 1;
uVar4 = (ulonglong)uVar5;
plVar10 = (longlong *)((longlong)plVar10 + 4);
} while ((int)uVar5 < (int)param_1[6]);
}
FUN_18052df60(param_1);
if (*(char *)((longlong)param_1 + 0x1b6) == '\0') {
if (*(char *)((longlong)param_1 + 0x1b7) == '\0') {
if ((char)param_1[0x37] == '\0') goto LAB_180529a6a;
*(undefined1 *)(param_1 + 0x37) = 0;
pcVar12 = *(code **)(*param_1 + 0x48);
}
else {
*(undefined1 *)((longlong)param_1 + 0x1b7) = 0;
pcVar12 = *(code **)(*param_1 + 0x58);
}
}
else {
*(undefined1 *)((longlong)param_1 + 0x1b6) = 0;
pcVar12 = *(code **)(*param_1 + 0x50);
}
if (pcVar12 != _guard_check_icall) {
(*pcVar12)(param_1);
}
LAB_180529a6a:
*(undefined1 *)((longlong)param_1 + 0x3cc) = 0;
return;
}
--- [21] 0x1812c1fb0 size=92 ---
undefined8 *
.?AV?$ModuleDecryptor@VSoothe2_DynamicCryptoManager@eden@pace@@@@::
vtbl___AV__ModuleDecryptor_VSoothe2_DynamicCryptoManager_eden_pace____
(longlong *param_1,undefined8 *param_2)
{
uint uVar1;
undefined8 uVar2;
uint *_Memory;
undefined8 *local_res10 [3];
local_res10[0] = param_2;
uVar2 = (**(code **)(*param_1 + 8))(param_1,local_res10);
*param_2 = 0;
param_2[1] = 0;
FUN_18049b000(param_2,uVar2);
_Memory = (uint *)(local_res10[0] + -2);
if ((*_Memory & 0x30000000) == 0) {
LOCK();
uVar1 = *_Memory;
*_Memory = *_Memory - 1;
UNLOCK();
if (uVar1 == 0) {
/* WARNING: Subroutine does not return */
free(_Memory);
}
}
return param_2;
}
--- [22] 0x18052c4a0 size=794 ---
/* WARNING: Function: __security_check_cookie replaced with injection: security_check_cookie */
void .?AV?$ModuleDecryptor@VSoothe2_DynamicCryptoManager@eden@pace@@@@::
vtbl___AV__ModuleDecryptor_VSoothe2_DynamicCryptoManager_eden_pace____
(longlong *param_1,double param_2,undefined4 param_3)
{
uint *puVar1;
int iVar2;
undefined8 *puVar3;
undefined8 *puVar4;
undefined8 *puVar5;
char cVar6;
uint uVar7;
undefined8 *puVar8;
code *pcVar9;
int iVar10;
longlong *plVar11;
ulonglong uVar12;
ulonglong uVar13;
ulonglong uVar14;
ulonglong uVar15;
ulonglong uVar16;
undefined1 auStack_e8 [32];
code *local_c8;
undefined4 uStack_c0;
undefined4 uStack_bc;
undefined8 local_b8;
uint *local_b0;
undefined1 local_a8 [16];
undefined1 local_98 [16];
undefined **local_88;
undefined4 local_80;
undefined4 uStack_7c;
undefined4 uStack_78;
undefined4 uStack_74;
longlong *local_70;
undefined ***local_50;
ulonglong local_48;
local_b8 = 0xfffffffffffffffe;
local_48 = DAT_182615970 ^ (ulonglong)auStack_e8;
puVar1 = (uint *)(param_1 + 0xab);
do {
LOCK();
uVar7 = *puVar1;
*puVar1 = *puVar1 | 1;
UNLOCK();
} while ((uVar7 & 1) != 0);
local_b0 = puVar1;
if ((*(char *)((longlong)param_1 + 0x554) != '\0') && (param_1[0xb7] != 0)) {
plVar11 = (longlong *)(param_1[0xb7] + 0x70);
(**(code **)(*plVar11 + 8))(plVar11,param_3,SUB84(param_2,0));
}
uVar14 = 0;
if ((double)param_1[0x2b] != param_2) {
param_1[0xbb] = 0;
}
param_1[0x2b] = (longlong)param_2;
*(undefined4 *)(param_1 + 0x2c) = param_3;
cVar6 = (**(code **)(*(longlong *)param_1[0x2d] + 0xe8))();
uVar7 = 0;
if (cVar6 != '\0') {
local_c8 = FUN_18052f680;
uStack_c0 = 0;
local_88 = std::
_Func_impl_no_alloc<std::_Binder<std::_Unforced,void_(__cdecl_CloudyAudioProcessor<Soothe2ModuleBase<float,2>,Soothe2ModuleDecryptor,ParameterStates,float>::*)(void)___ptr64,CloudyAudioProcessor<class_Soothe2ModuleBase<float,2>,class_Soothe2ModuleDecryptor,class_ParameterStates,float>*___ptr64>,void>
::vftable;
local_80 = 0x8052f680;
uStack_7c = 1;
uStack_78 = 0;
uStack_74 = uStack_bc;
local_50 = &local_88;
local_70 = param_1;
FUN_18113eab0();
FUN_18114b490(&local_88);
if (local_50 != (undefined ***)0x0) {
(*(code *)(*local_50)[4])(local_50,local_50 != &local_88);
}
}
puVar8 = (undefined8 *)FUN_1812c37c0(param_1,local_a8);
if (*(int *)((longlong)puVar8 + 0xc) != 0) {
uVar7 = FUN_18123d3f0(*puVar8);
}
FUN_18047c500(local_98);
FUN_18047c500(local_a8);
if (uVar7 != *(uint *)((longlong)param_1 + 0x56c)) {
plVar11 = param_1 + 0xac;
FUN_180531620(plVar11);
if ((int)param_1[0xad] != 0) {
/* WARNING: Subroutine does not return */
free((void *)*plVar11);
}
*(undefined4 *)(param_1 + 0xad) = 0;
if (0 < (int)uVar7) {
uVar13 = (ulonglong)uVar7;
do {
pcVar9 = (code *)FUN_1811316e0(0x28);
*(undefined8 *)pcVar9 = 0;
*(undefined4 *)(pcVar9 + 8) = 0;
*(undefined8 *)(pcVar9 + 0x10) = 0;
*(undefined4 *)(pcVar9 + 0x18) = 0;
*(undefined8 *)(pcVar9 + 0x20) = 0;
local_c8 = pcVar9;
FUN_18052bc40(pcVar9,0x10000);
iVar2 = *(int *)((longlong)param_1 + 0x56c);
iVar10 = iVar2 + 1;
if ((int)param_1[0xad] < iVar10) {
if (iVar10 < 0) {
iVar10 = iVar2 + 2;
}
FUN_18047cb30(plVar11,iVar2 + 9 + (iVar10 >> 1) & 0xfffffff8);
}
iVar10 = *(int *)((longlong)param_1 + 0x56c);
*(int *)((longlong)param_1 + 0x56c) = iVar10 + 1;
*(code **)(*plVar11 + (longlong)iVar10 * 8) = pcVar9;
uVar13 = uVar13 - 1;
} while (uVar13 != 0);
}
}
(**(code **)(*param_1 + 0x220))(param_1,param_1[0x2b],(int)param_1[0x2c]);
puVar8 = (undefined8 *)param_1[0x36];
puVar3 = (undefined8 *)*puVar8;
while (puVar3 != puVar8) {
FUN_1811c4880(puVar3[5]);
puVar4 = (undefined8 *)puVar3[2];
if (*(char *)((longlong)puVar4 + 0x19) == '\0') {
cVar6 = *(char *)((longlong)*puVar4 + 0x19);
puVar3 = puVar4;
puVar4 = (undefined8 *)*puVar4;
while (cVar6 == '\0') {
cVar6 = *(char *)((longlong)*puVar4 + 0x19);
puVar3 = puVar4;
puVar4 = (undefined8 *)*puVar4;
}
}
else {
cVar6 = *(char *)((longlong)puVar3[1] + 0x19);
puVar5 = (undefined8 *)puVar3[1];
puVar4 = puVar3;
while ((puVar3 = puVar5, cVar6 == '\0' && (puVar4 == (undefined8 *)puVar3[2]))) {
cVar6 = *(char *)((longlong)puVar3[1] + 0x19);
puVar5 = (undefined8 *)puVar3[1];
puVar4 = puVar3;
}
}
}
FUN_1812a77d0(param_1 + 0x60,0x10);
puVar8 = (undefined8 *)param_1[0xac];
uVar13 = (ulonglong)
((longlong)(puVar8 + *(int *)((longlong)param_1 + 0x56c)) + (7 - (longlong)puVar8)) >> 3;
if (puVar8 + *(int *)((longlong)param_1 + 0x56c) < puVar8) {
uVar13 = uVar14;
}
uVar16 = uVar14;
if (uVar13 != 0) {
do {
puVar3 = (undefined8 *)*puVar8;
*puVar3 = 0;
uVar12 = uVar14;
uVar15 = uVar14;
if (0 < *(int *)(puVar3 + 3)) {
do {
*(undefined4 *)(uVar12 + puVar3[2]) = 0;
uVar7 = (int)uVar15 + 1;
uVar12 = uVar12 + 4;
uVar15 = (ulonglong)uVar7;
} while ((int)uVar7 < *(int *)(puVar3 + 3));
}
puVar3[4] = puVar3[2];
puVar8 = puVar8 + 1;
uVar16 = uVar16 + 1;
} while (uVar16 != uVar13);
}
LOCK();
*puVar1 = 0;
UNLOCK();
}
--- [26] 0x18052bfa0 size=870 ---
void .?AV?$ModuleDecryptor@VSoothe2_DynamicCryptoManager@eden@pace@@@@::
vtbl___AV__ModuleDecryptor_VSoothe2_DynamicCryptoManager_eden_pace____
(longlong *param_1,longlong param_2,undefined8 param_3)
{
longlong *plVar1;
longlong lVar2;
char cVar3;
int iVar4;
uint uVar5;
int iVar6;
longlong lVar7;
uint *puVar8;
longlong lVar9;
uint *puVar10;
uint *puVar11;
uint *puVar12;
bool bVar13;
int local_b0;
int local_ac;
undefined4 local_a8;
undefined8 local_a0;
int local_94;
undefined1 local_90 [16];
longlong local_80;
ulonglong local_78;
longlong local_70;
undefined4 local_68;
undefined4 local_64;
uint *local_60;
char local_58;
undefined8 local_50;
local_50 = 0xfffffffffffffffe;
local_60 = (uint *)(param_1 + 0xab);
LOCK();
bVar13 = (*local_60 & 1) == 0;
*local_60 = *local_60 | 1;
UNLOCK();
puVar12 = (uint *)0x0;
iVar4 = 0;
if ((((DAT_1826216ff == '\0') || (DAT_18262170c == '\0')) || (DAT_18262170d == '\0')) ||
((DAT_1826216fd == '\0' || (iVar6 = 1, DAT_1826216fe == '\0')))) {
iVar6 = iVar4;
}
local_58 = bVar13;
if (((char)iVar6 == '\0') ||
(cVar3 = (**(code **)(*(longlong *)param_1[0x2d] + 0xe8))(), cVar3 == '\0')) {
if (((DAT_1826216ff == '\0') ||
(((DAT_18262170c == '\0' || (DAT_18262170d == '\0')) || (DAT_1826216fd == '\0')))) ||
(iVar6 = 1, DAT_1826216fe == '\0')) {
iVar6 = iVar4;
}
if (((char)iVar6 != '\0') ||
(cVar3 = (**(code **)(*(longlong *)param_1[0x2d] + 0xe8))(), cVar3 != '\0'))
goto LAB_18052c0bb;
}
if (bVar13) {
FUN_18052f850(param_1);
}
LAB_18052c0bb:
uVar5 = MXCSR;
local_78 = (ulonglong)MXCSR;
MXCSR = MXCSR | 0x8040;
if ((char)param_1[0xb6] != *(char *)((longlong)param_1 + 0x41)) {
*(char *)(param_1 + 0xb6) = *(char *)((longlong)param_1 + 0x41);
(**(code **)(*param_1 + 0x230))(param_1);
}
local_78._0_4_ = uVar5;
if (bVar13) {
cVar3 = (**(code **)(*(longlong *)param_1[0x2d] + 0xe8))();
if (cVar3 == '\0') {
LOCK();
*(undefined1 *)((longlong)param_1 + 0x164) = 0;
UNLOCK();
FUN_181198f30(param_1 + 0x2f,0);
if ((*(char *)((longlong)param_1 + 0x554) != '\0') && (param_1[0xb7] != 0)) {
local_68 = 0;
local_64 = *(undefined4 *)(param_2 + 4);
plVar1 = (longlong *)(param_1[0xb7] + 0x70);
local_70 = param_2;
(**(code **)(*plVar1 + 0x18))(plVar1,&local_70);
}
FUN_1812c37c0(param_1,&local_a0);
if (local_94 != 0) {
iVar4 = FUN_18123d3f0(local_a0);
}
iVar6 = *(int *)(param_2 + 4);
local_80 = (longlong)iVar4;
if (0 < local_80) {
puVar8 = puVar12;
puVar10 = puVar12;
do {
lVar2 = *(longlong *)(*(longlong *)(param_2 + 0x10) + (longlong)puVar8 * 8);
puVar11 = puVar12;
if ((uint)puVar10 < *(uint *)((longlong)param_1 + 0x56c)) {
puVar11 = *(uint **)(param_1[0xac] + (longlong)puVar8 * 8);
}
lVar9 = lVar2;
FUN_18052f640(puVar11,&local_b0,iVar6,0,1);
lVar7 = (longlong)local_ac;
FUN_18052dbc0(*(longlong *)(puVar11 + 8) + (longlong)local_b0 * 4,lVar9,local_ac);
FUN_18052dbc0(*(undefined8 *)(puVar11 + 8),lVar2 + lVar7 * 4,local_a8);
uVar5 = *puVar11 + iVar6 & puVar11[2] - 1;
if ((int)uVar5 < 0) {
uVar5 = uVar5 + puVar11[2];
}
*puVar11 = uVar5;
puVar10 = (uint *)(ulonglong)((uint)puVar10 + 1);
puVar8 = (uint *)((longlong)puVar8 + 1);
} while ((longlong)puVar8 < local_80);
}
FUN_18047c500(local_90);
FUN_18047c500(&local_a0);
(**(code **)(*param_1 + 0x228))(param_1,param_2,param_3);
if ((*(char *)((longlong)param_1 + 0x554) != '\0') && (param_1[0xb7] != 0)) {
FUN_18052fc90(param_2,*(undefined4 *)(param_1[0xb7] + 0x48));
}
param_1[0xbb] = param_1[0xbb] + (longlong)*(int *)(param_2 + 4);
}
else {
(**(code **)(*param_1 + 0x48))(param_1,param_2,param_3);
FUN_18052fc90(param_2,0);
local_58 = bVar13;
}
}
else {
(**(code **)(*param_1 + 0x48))(param_1,param_2,param_3);
local_58 = bVar13;
}
MXCSR = (uint)local_78;
if (local_58 != '\0') {
LOCK();
*local_60 = 0;
UNLOCK();
}
return;
}
--- [27] 0x1812c0b60 size=152 ---
void .?AV?$ModuleDecryptor@VSoothe2_DynamicCryptoManager@eden@pace@@@@::
vtbl___AV__ModuleDecryptor_VSoothe2_DynamicCryptoManager_eden_pace____
(longlong param_1,longlong param_2)
{
int iVar1;
longlong lVar2;
if ((*(int *)(param_1 + 0xdc) == 0) || (**(longlong **)(param_1 + 0xd0) == 0)) {
iVar1 = 0;
}
else {
iVar1 = *(int *)(**(longlong **)(param_1 + 0xd0) + 0x8c);
}
if (iVar1 < *(int *)(param_1 + 0x104)) {
lVar2 = (longlong)iVar1 * 8;
do {
if (*(char *)(param_2 + 0x120) == '\0') {
memset(*(void **)(*(longlong *)(param_2 + 0x10) + lVar2),0,
(longlong)*(int *)(param_2 + 4) << 3);
}
iVar1 = iVar1 + 1;
lVar2 = lVar2 + 8;
} while (iVar1 < *(int *)(param_1 + 0x104));
}
return;
}
--- [28] 0x18052bdf0 size=432 ---
void .?AV?$SpectralProcessor@M$07$01@@::vtbl___AV__SpectralProcessor_M_07_01__
(longlong param_1,longlong param_2)
{
int iVar1;
int iVar2;
longlong lVar3;
int iVar4;
uint uVar5;
uint *puVar6;
longlong lVar7;
longlong lVar8;
uint uVar9;
longlong lVar10;
int local_78;
int local_74;
undefined4 local_70;
int local_68;
int local_64;
undefined4 local_60;
undefined8 local_58;
int local_4c;
undefined1 local_48 [16];
LOCK();
*(undefined1 *)(param_1 + 0x164) = 1;
UNLOCK();
FUN_1812c37c0(param_1,&local_58);
if (local_4c == 0) {
iVar4 = 0;
}
else {
iVar4 = FUN_18123d3f0(local_58);
}
iVar1 = *(int *)(param_1 + 0x3c);
uVar9 = 0;
iVar2 = *(int *)(param_2 + 4);
lVar10 = 0;
if (0 < (longlong)iVar4) {
do {
LOCK();
*(undefined1 *)(param_2 + 0x120) = 0;
UNLOCK();
lVar3 = *(longlong *)(*(longlong *)(param_2 + 0x10) + lVar10 * 8);
if (uVar9 < *(uint *)(param_1 + 0x56c)) {
puVar6 = *(uint **)(*(longlong *)(param_1 + 0x560) + lVar10 * 8);
}
else {
puVar6 = (uint *)0x0;
}
FUN_18052f640(puVar6,&local_78,iVar2,0,1);
lVar7 = (longlong)local_74;
FUN_18052dbc0(*(longlong *)(puVar6 + 8) + (longlong)local_78 * 4,lVar3,local_74);
FUN_18052dbc0(*(undefined8 *)(puVar6 + 8),lVar3 + lVar7 * 4,local_70);
uVar5 = *puVar6 + iVar2 & puVar6[2] - 1;
if ((int)uVar5 < 0) {
uVar5 = uVar5 + puVar6[2];
}
*puVar6 = uVar5;
if (uVar9 < *(uint *)(param_1 + 0x56c)) {
lVar7 = *(longlong *)(*(longlong *)(param_1 + 0x560) + lVar10 * 8);
}
else {
lVar7 = 0;
}
FUN_18052f640(lVar7,&local_68,iVar2,-(iVar1 + iVar2),1);
lVar8 = (longlong)local_64;
FUN_18052dbc0(lVar3,*(longlong *)(lVar7 + 0x20) + (longlong)local_68 * 4,local_64);
FUN_18052dbc0(lVar3 + lVar8 * 4,*(undefined8 *)(lVar7 + 0x20),local_60);
uVar9 = uVar9 + 1;
lVar10 = lVar10 + 1;
} while (lVar10 < iVar4);
}
FUN_18047c500(local_48);
FUN_18047c500(&local_58);
return;
}
--- [46] 0x18052c7f0 size=141 ---
undefined8 *
.?AV?$SpectralProcessor@M$07$01@@::vtbl___AV__SpectralProcessor_M_07_01__
(longlong param_1,undefined8 *param_2,uint param_3)
{
longlong *plVar1;
undefined8 *puVar2;
longlong local_res8 [4];
if ((*(int *)(param_1 + 8) == 3) && (param_3 < *(uint *)(param_1 + 0x444))) {
plVar1 = *(longlong **)(*(longlong *)(param_1 + 0x438) + (longlong)(int)param_3 * 8);
if (plVar1 != (longlong *)0x0) {
if ((undefined **)*plVar1 == Preset::vftable) {
local_res8[0] = plVar1[2];
FUN_18049c9e0(param_2,local_res8[0]);
return param_2;
}
puVar2 = (undefined8 *)(*(code *)((undefined **)*plVar1)[4])(plVar1,local_res8);
FUN_18049c9e0(param_2,*puVar2);
return param_2;
}
}
*param_2 = &DAT_1821dbf98;
return param_2;
}
--- [55] 0x1812c1130 size=139 ---
void FUN_1812c1130(longlong param_1,longlong param_2)
{
longlong *plVar1;
int iVar2;
longlong *plVar3;
EnterCriticalSection((LPCRITICAL_SECTION)(param_1 + 0x74));
plVar3 = *(longlong **)(param_1 + 0x18);
iVar2 = *(int *)(param_1 + 0x24);
plVar1 = plVar3 + iVar2;
for (; plVar3 != plVar1; plVar3 = plVar3 + 1) {
if (param_2 == *plVar3) goto LAB_1812c11a1;
}
if (*(int *)(param_1 + 0x20) < iVar2 + 1) {
FUN_18047cb30(param_1 + 0x18,iVar2 + 9 + (iVar2 + 1) / 2 & 0xfffffff8);
}
iVar2 = *(int *)(param_1 + 0x24);
*(int *)(param_1 + 0x24) = iVar2 + 1;
*(longlong *)(*(longlong *)(param_1 + 0x18) + (longlong)iVar2 * 8) = param_2;
LAB_1812c11a1:
/* WARNING: Could not recover jumptable at 0x0001812c11b4. Too many branches */
/* WARNING: Treating indirect jump as call */
LeaveCriticalSection((LPCRITICAL_SECTION)(param_1 + 0x74));
return;
}
--- [56] 0x1812c1070 size=180 ---
void FUN_1812c1070(longlong param_1,longlong param_2)
{
void *_Dst;
int iVar1;
longlong lVar2;
int iVar3;
EnterCriticalSection((LPCRITICAL_SECTION)(param_1 + 0x74));
iVar1 = *(int *)(param_1 + 0x24);
iVar3 = 0;
lVar2 = 0;
if (0 < iVar1) {
do {
if (param_2 == *(longlong *)(*(longlong *)(param_1 + 0x18) + lVar2 * 8)) {
_Dst = (void *)(*(longlong *)(param_1 + 0x18) + (longlong)iVar3 * 8);
memmove(_Dst,(void *)((longlong)_Dst + 8),(longlong)((iVar1 - iVar3) + -1) << 3);
*(int *)(param_1 + 0x24) = *(int *)(param_1 + 0x24) + -1;
iVar1 = *(int *)(param_1 + 0x24);
iVar3 = 0;
if (0 < iVar1 * 2) {
iVar3 = iVar1 * 2;
}
if (iVar3 < *(int *)(param_1 + 0x20)) {
if (iVar1 < 8) {
iVar1 = 8;
}
if (iVar1 < *(int *)(param_1 + 0x20)) {
FUN_18047cb30(param_1 + 0x18);
}
}
break;
}
iVar3 = iVar3 + 1;
lVar2 = lVar2 + 1;
} while (lVar2 < iVar1);
}
/* WARNING: Could not recover jumptable at 0x0001812c111d. Too many branches */
/* WARNING: Treating indirect jump as call */
LeaveCriticalSection((LPCRITICAL_SECTION)(param_1 + 0x74));
return;
}
--- [58] 0x1812bf000 size=137 ---
void FUN_1812bf000(undefined8 param_1,undefined8 param_2,undefined8 param_3,undefined1 param_4)
{
undefined1 auStack_b8 [32];
undefined1 local_98;
void *local_68;
undefined8 local_60;
undefined8 local_58;
undefined8 local_50;
undefined8 local_48;
ulonglong local_40;
local_40 = DAT_182615970 ^ (ulonglong)auStack_b8;
local_50 = 4;
local_48 = 0xffffffff;
local_68 = (void *)0x0;
local_60 = 0;
local_58 = 0;
local_98 = param_4;
FUN_18123c5f0(param_2,&local_68);
/* WARNING: Subroutine does not return */
free(local_68);
}
--- [61] 0x18052c310 size=339 ---
/* WARNING: Function: __security_check_cookie replaced with injection: security_check_cookie */
/* WARNING: Removing unreachable block (ram,0x00018052c3fa) */
/* WARNING: Removing unreachable block (ram,0x00018052c3ff) */
/* WARNING: Removing unreachable block (ram,0x00018052c40a) */
/* WARNING: Removing unreachable block (ram,0x00018052c40f) */
/* WARNING: Removing unreachable block (ram,0x00018052c413) */
/* WARNING: Removing unreachable block (ram,0x00018052c3d6) */
void FUN_18052c310(undefined8 param_1,longlong param_2)
{
int iVar1;
undefined1 auStack_d8 [32];
undefined4 local_b8;
void *local_b0 [5];
undefined1 local_88 [40];
void *local_60 [5];
void *local_38 [5];
ulonglong local_10;
local_10 = DAT_182615970 ^ (ulonglong)auStack_d8;
local_b8 = 0;
FUN_18124a040(local_88,8);
FUN_1804db6f0(param_2 + 0x10,local_b0,0);
iVar1 = FUN_18123c5f0(local_b0,local_88);
if (iVar1 == 0) {
/* WARNING: Subroutine does not return */
free(local_b0[0]);
}
FUN_18124a040(local_38,6);
FUN_1804db6f0(param_2 + 0x10,local_60,0);
FUN_18123c5f0(local_60,local_38);
/* WARNING: Subroutine does not return */
free(local_60[0]);
}
--- [63] 0x1812c0230 size=525 ---
/* WARNING: Function: __security_check_cookie replaced with injection: security_check_cookie */
void FUN_1812c0230(longlong param_1,longlong param_2)
{
bool bVar1;
char cVar2;
int iVar3;
longlong lVar4;
undefined8 uVar5;
undefined1 auStack_98 [32];
int local_78;
int local_74;
int local_70;
void *local_68 [2];
undefined1 local_58 [24];
ulonglong local_40;
local_40 = DAT_182615970 ^ (ulonglong)auStack_98;
lVar4 = FUN_1812c37c0(param_1,local_68);
cVar2 = FUN_1804df970(param_2,lVar4);
if ((cVar2 == '\0') || (cVar2 = FUN_1804df970(param_2 + 0x10,lVar4 + 0x10), cVar2 == '\0')) {
bVar1 = false;
}
else {
bVar1 = true;
}
FUN_18047c500(local_58);
FUN_18047c500(local_68);
if (!bVar1) {
local_74 = *(int *)(param_1 + 0x100);
local_78 = *(int *)(param_1 + 0xec);
local_70 = *(int *)(param_1 + 0x104);
if ((*(int *)(param_2 + 0xc) == *(int *)(param_1 + 0xdc)) &&
(*(int *)(param_2 + 0x1c) == local_78)) {
if (0 < *(int *)(param_1 + 0xdc)) {
if (*(int *)(param_1 + 0xdc) == 0) {
lVar4 = 0;
}
else {
lVar4 = **(longlong **)(param_1 + 0xd0);
}
FUN_1804db6f0(param_2,local_68,0);
FUN_18123d980(lVar4 + 0x10,local_68);
iVar3 = FUN_18123d3f0(local_68);
if (iVar3 != 0) {
FUN_18123d980(lVar4 + 0x60,local_68);
}
FUN_18123d3f0(local_68);
/* WARNING: Subroutine does not return */
free(local_68[0]);
}
if (0 < local_78) {
if (*(int *)(param_1 + 0xec) == 0) {
lVar4 = 0;
}
else {
lVar4 = **(longlong **)(param_1 + 0xe0);
}
FUN_1804db6f0(param_2 + 0x10,local_68,0);
FUN_18123d980(lVar4 + 0x10,local_68);
iVar3 = FUN_18123d3f0(local_68);
if (iVar3 != 0) {
FUN_18123d980(lVar4 + 0x60,local_68);
}
FUN_18123d3f0(local_68);
/* WARNING: Subroutine does not return */
free(local_68[0]);
}
if ((local_74 == 0) && (local_70 == 0)) {
uVar5 = 0;
}
else {
uVar5 = 1;
}
FUN_1812c0000(param_1,0,uVar5);
}
}
}
############ VTABLE Soothe2ModuleBase 0x1824ac7a8
SLOTLIST:
[0] 0x18052fd40 size=38
[1] 0x18052cfb0 size=61
[2] 0x180529550 size=191
[3] 0x1804714b0 size=3
[4] 0x18052ce00 size=98
[5] 0x1804714b0 size=3
[6] 0x1804714b0 size=3
[7] 0x1804714b0 size=3
[8] 0x1804727a0 size=3
[9] 0x1804714b0 size=3
[10] 0x1804714b0 size=3
[11] 0x1804714b0 size=3
[12] 0x1804714b0 size=3
[13] 0x1804714b0 size=3
[14] 0x1804714b0 size=3
[15] 0x1804714b0 size=3
[16] 0x1804714b0 size=3
[17] 0x1804714b0 size=3
[18] 0x1804714b0 size=3
[19] 0x1804714b0 size=3
[20] 0x1804714b0 size=3
[21] 0x1804714b0 size=3
[22] 0x1804714b0 size=3
[23] 0x1804714b0 size=3
[24] 0x18052cec0 size=88
[25] 0x18052ce90 size=48
[26] 0x18052ce80 size=14
[27] 0x1804727a0 size=3
[28] 0x18052ce70 size=9
[29] 0x180484870 size=3
[30] 0x1804714b0 size=3
[31] 0x1804714b0 size=3
[34] 0x182507b08 size=0
[35] 0x180546620 size=62
[36] 0x1813afeb0 size=43
[37] 0x1813afef0 size=130
[38] 0x18136cc80 size=13
[39] 0x18136cc60 size=13
[40] 0x18136cc50 size=3
[41] 0x18136cc40 size=3
[42] 0x18136cc30 size=3
[43] 0x1813afd80 size=80
[44] 0x1813afe80 size=13
[45] 0x18136cbb0 size=108
[46] 0x1813afe40 size=32
[47] 0x1813afe70 size=3
[48] 0x1813afcf0 size=132
[49] 0x18136cba0 size=3
[50] 0x1825080a8 size=0
[51] 0x18053e010 size=47
[52] 0x1813af190 size=138
[53] 0x1813af220 size=771
[54] 0x1813af160 size=29
[55] 0x18053dba0 size=990
[56] 0x182507300 size=0
[57] 0x1805386e0 size=120
[58] 0x1813aed50 size=3
[59] 0x1813aed40 size=3
[60] 0x1813aec40 size=242
[61] 0x1813aed90 size=5
[62] 0x1813aed60 size=24
[63] 0x1813aeda0 size=9
CCODE:
--- [1] 0x18052cfb0 size=61 ---
void .?AV?$AudioProcessingModule@M$01@@::vtbl___AV__AudioProcessingModule_M_01__(longlong param_1)
{
FUN_1812b4430(param_1 + 0x14,0,2);
*(float *)(param_1 + 0x58) = (float)(DAT_1824c4230 / (double)*(float *)(param_1 + 0x24));
return;
}
--- [2] 0x180529550 size=191 ---
void .?AV?$Soothe2Module@M$01@@::vtbl___AV__Soothe2Module_M_01__
(longlong *param_1,undefined4 param_2,undefined4 *param_3,int param_4)
{
int *piVar1;
longlong lVar2;
uint *puVar3;
lVar2 = (longlong)param_4;
puVar3 = (uint *)(param_1 + (lVar2 + 9) * 8);
*(undefined4 *)(*(longlong *)(puVar3 + 8) + (longlong)(int)*puVar3 * 4) = *param_3;
*puVar3 = puVar3[2] - 1 & *puVar3 + 1;
puVar3 = (uint *)(param_1 + (lVar2 + 7) * 8);
*(undefined4 *)(*(longlong *)(puVar3 + 8) + (longlong)(int)*puVar3 * 4) = param_2;
*puVar3 = puVar3[2] - 1 & *puVar3 + 1;
piVar1 = (int *)((longlong)param_1 + lVar2 * 4 + 0x3c0);
*piVar1 = *piVar1 + 1;
if ((*(int *)((longlong)param_1 + lVar2 * 4 + 0x3c0) == (int)param_1[0x79] / 2) && (param_4 == 0))
{
(**(code **)(*param_1 + 0x38))(param_1);
}
if (*(int *)((longlong)param_1 + lVar2 * 4 + 0x3c0) == (int)param_1[0x79]) {
*(undefined4 *)((longlong)param_1 + lVar2 * 4 + 0x3c0) = 0;
FUN_1805300f0(param_1,param_4);
}
return;
}
--- [4] 0x18052ce00 size=98 ---
void .?AV?$Soothe2ModuleBase@M$01@@::vtbl___AV__Soothe2ModuleBase_M_01__(longlong param_1)
{
float fVar1;
.?AV?$SpectralProcessor@M$07$01@@::vtbl___AV__SpectralProcessor_M_07_01__();
fVar1 = *(float *)(param_1 + 0x3fc);
*(float *)(param_1 + 0x3fc) = *(float *)(param_1 + 0x24);
if (fVar1 != *(float *)(param_1 + 0x24)) {
(**(code **)(*(longlong *)(param_1 + 0x3d8) + 0x20))((longlong *)(param_1 + 0x3d8));
}
*(undefined4 *)(param_1 + 0x240458) = 4;
*(undefined4 *)(param_1 + 0x240467) = 0x1010101;
*(undefined4 *)(param_1 + 0x24046b) = 0x1010101;
return;
}
--- [24] 0x18052cec0 size=88 ---
void .?AV?$Soothe2ModuleBase@M$01@@::vtbl___AV__Soothe2ModuleBase_M_01__(longlong param_1)
{
int iVar1;
iVar1 = *(int *)(param_1 + 0x2404cc);
while( true ) {
if (iVar1 < 1) {
return;
}
iVar1 = iVar1 + -1;
if ((*(int *)(param_1 + 0x2404cc) <= iVar1) &&
(iVar1 = *(int *)(param_1 + 0x2404cc) + -1, iVar1 < 0)) break;
FUN_180492ef8(*(undefined8 *)(*(longlong *)(param_1 + 0x2404c0) + (longlong)iVar1 * 8));
}
return;
}
--- [35] 0x180546620 size=62 ---
undefined8 *
.?AV?$Soothe2ModuleBase@M$01@@::vtbl___AV__Soothe2ModuleBase_M_01__
(undefined8 *param_1,ulonglong param_2)
{
*param_1 = juce::WindowsMediaAudioFormat::vftable;
FUN_1813affa0();
if ((param_2 & 1) != 0) {
/* WARNING: Subroutine does not return */
free(param_1);
}
return param_1;
}
--- [37] 0x1813afef0 size=130 ---
void .?AV?$Soothe2ModuleBase@M$01@@::vtbl___AV__Soothe2ModuleBase_M_01__
(longlong *param_1,undefined8 param_2,undefined8 param_3,undefined8 param_4)
{
undefined8 *puVar1;
char cVar2;
undefined8 *puVar3;
undefined8 *local_20;
int local_14;
(**(code **)(*param_1 + 8))(param_1,&local_20,param_3,param_4,0xfffffffffffffffe);
puVar1 = local_20 + local_14;
puVar3 = local_20;
while( true ) {
if (puVar3 == puVar1) {
FUN_180488c50(&local_20);
/* WARNING: Subroutine does not return */
free(local_20);
}
cVar2 = FUN_18123fe10(param_2,*puVar3);
if (cVar2 != '\0') break;
puVar3 = puVar3 + 1;
}
FUN_180488c50(&local_20);
/* WARNING: Subroutine does not return */
free(local_20);
}
--- [43] 0x1813afd80 size=80 ---
void .?AV?$Soothe2ModuleBase@M$01@@::vtbl___AV__Soothe2ModuleBase_M_01__
(undefined8 param_1,undefined8 param_2)
{
undefined1 auStack_58 [32];
void *local_38 [5];
ulonglong local_10;
local_10 = DAT_182615970 ^ (ulonglong)auStack_58;
FUN_18124a040(local_38,8);
FUN_18123c5f0(param_2,local_38);
/* WARNING: Subroutine does not return */
free(local_38[0]);
}
--- [45] 0x18136cbb0 size=108 ---
undefined8 *
.?AV?$Soothe2ModuleBase@M$01@@::vtbl___AV__Soothe2ModuleBase_M_01__
(undefined8 param_1,undefined8 param_2,undefined8 param_3,undefined8 param_4)
{
undefined8 uVar1;
undefined8 *puVar2;
uVar1 = FUN_1811316e0(0x90,param_2,param_3,param_4,0xfffffffffffffffe);
puVar2 = (undefined8 *)FUN_180545be0(uVar1,param_2);
if ((double)puVar2[1] <= 0.0) {
if ((char)param_3 == '\0') {
puVar2[10] = 0;
}
(**(code **)*puVar2)(puVar2,1);
puVar2 = (undefined8 *)0x0;
}
return puVar2;
}
--- [48] 0x1813afcf0 size=132 ---
undefined8
FUN_1813afcf0(longlong *param_1,undefined8 param_2,undefined4 param_3,undefined8 param_4,
undefined4 param_5,undefined8 param_6,undefined4 param_7)
{
char cVar1;
undefined4 uVar2;
undefined8 uVar3;
cVar1 = (**(code **)(*param_1 + 0x40))(param_1,param_4);
if (cVar1 == '\0') {
uVar3 = 0;
}
else {
uVar2 = FUN_18123d3f0(param_4);
uVar3 = (**(code **)(*param_1 + 0x70))(param_1,param_2,param_3,uVar2,param_5,param_6,param_7);
}
return uVar3;
}
--- [52] 0x1813af190 size=138 ---
void FUN_1813af190(longlong *param_1,undefined8 param_2,undefined8 param_3,undefined4 *param_4,
undefined4 *param_5,undefined4 *param_6,undefined4 *param_7)
{
if (*(uint *)(param_1 + 4) < 2) {
(**(code **)(*param_1 + 0x10))();
}
else {
(**(code **)(*param_1 + 0x10))();
}
*param_4 = 0;
*param_5 = 0;
*param_6 = 0;
*param_7 = 0;
return;
}
--- [53] 0x1813af220 size=771 ---
void FUN_1813af220(longlong *param_1,longlong param_2,ulonglong param_3,longlong param_4,int param_5
)
{
float fVar1;
int iVar2;
ulonglong uVar3;
bool bVar4;
int iVar5;
float fVar6;
char cVar7;
longlong lVar8;
float *pfVar9;
int iVar10;
longlong lVar11;
longlong lVar12;
int iVar13;
int iVar14;
int *piVar15;
undefined8 *puVar16;
longlong lVar17;
undefined8 *puVar18;
float fVar19;
float fVar20;
float local_1c4;
float local_1c0;
float local_1bc;
float local_1b8;
float local_1b4;
float fStack_1b0;
undefined8 *local_1a8;
longlong local_1a0;
ulonglong local_198;
undefined8 local_190;
undefined1 local_188 [16];
undefined8 *local_178;
void *local_170;
undefined1 local_68;
local_190 = 0xfffffffffffffffe;
lVar11 = (longlong)param_5;
if ((longlong)param_3 < 1) {
lVar8 = 0;
if (0 < param_5) {
do {
*(undefined8 *)(param_4 + lVar8 * 8) = 0;
lVar8 = lVar8 + 1;
} while (lVar8 < lVar11);
}
return;
}
iVar10 = (int)param_3;
if (0x1000 < (longlong)param_3) {
iVar10 = 0x1000;
}
local_1a0 = lVar11;
FUN_180535db0(local_188,lVar11,iVar10);
fVar6 = DAT_1824c3c28;
LOCK();
local_68 = 0;
UNLOCK();
local_1a8 = local_178;
bVar4 = true;
local_198 = (ulonglong)iVar10;
puVar16 = local_178;
do {
uVar3 = param_3;
if ((longlong)local_198 < (longlong)param_3) {
uVar3 = local_198;
}
iVar13 = (int)uVar3;
lVar17 = (longlong)iVar13;
lVar8 = param_2;
iVar10 = iVar13;
iVar14 = 0;
if (param_2 < 0) {
lVar8 = lVar11;
iVar14 = (int)-param_2;
if (lVar17 < -param_2) {
iVar14 = iVar13;
}
while (lVar8 = lVar8 + -1, -1 < lVar8) {
if ((void *)puVar16[lVar8] != (void *)0x0) {
memset((void *)puVar16[lVar8],0,(longlong)iVar14 << 2);
}
}
iVar10 = iVar13 - iVar14;
lVar8 = 0;
}
if (0 < iVar10) {
iVar5 = (int)param_1[4];
if (param_5 < (int)param_1[4]) {
iVar5 = param_5;
}
cVar7 = (**(code **)(*param_1 + 0x20))(param_1,puVar16,iVar5,iVar14,lVar8,iVar10);
if (cVar7 == '\0') break;
lVar8 = (longlong)(int)param_1[4];
if ((int)param_1[4] < param_5) {
for (; lVar8 < lVar11; lVar8 = lVar8 + 1) {
if ((void *)puVar16[lVar8] != (void *)0x0) {
memset((void *)puVar16[lVar8],0,lVar17 * 4);
}
}
}
}
puVar18 = puVar16;
lVar8 = lVar11;
if (0 < lVar11) {
lVar12 = param_4 - (longlong)puVar16;
do {
if (*(char *)((longlong)param_1 + 0x24) == '\0') {
piVar15 = (int *)*puVar16;
if (iVar13 < 1) {
iVar10 = 0;
iVar14 = 0;
}
else {
iVar10 = *piVar15;
iVar14 = iVar10;
iVar5 = iVar13;
while (iVar5 = iVar5 + -1, 0 < iVar5) {
piVar15 = piVar15 + 1;
iVar2 = *piVar15;
if (iVar10 < iVar2) {
iVar10 = iVar2;
}
if (iVar2 < iVar14) {
iVar14 = iVar2;
}
}
}
fVar20 = (float)iVar10 * fVar6;
fVar19 = (float)iVar14 * fVar6;
if (fVar20 <= fVar19) {
fVar20 = fVar19;
}
}
else {
FUN_1804d5400(&local_1bc,*puVar16,uVar3 & 0xffffffff);
fVar19 = local_1bc;
fVar20 = local_1b8;
}
if (bVar4) {
local_1b4 = fVar19;
fStack_1b0 = fVar20;
pfVar9 = &local_1b4;
}
else {
fVar1 = *(float *)(lVar12 + 4 + (longlong)puVar16);
if (fVar20 <= fVar1) {
fVar20 = fVar1;
}
if (*(float *)(lVar12 + (longlong)puVar16) <= fVar19) {
fVar19 = *(float *)(lVar12 + (longlong)puVar16);
}
local_1c4 = fVar19;
if (fVar20 <= fVar19) {
local_1c0 = fVar19;
}
else {
local_1c0 = fVar20;
}
pfVar9 = &local_1c4;
}
*(undefined8 *)(lVar12 + (longlong)puVar16) = *(undefined8 *)pfVar9;
puVar16 = puVar16 + 1;
lVar11 = lVar11 + -1;
puVar18 = local_1a8;
lVar8 = local_1a0;
} while (lVar11 != 0);
}
bVar4 = false;
param_3 = param_3 - lVar17;
param_2 = param_2 + lVar17;
puVar16 = puVar18;
lVar11 = lVar8;
} while (0 < (longlong)param_3);
/* WARNING: Subroutine does not return */
free(local_170);
}
--- [55] 0x18053dba0 size=990 ---
undefined8
FUN_18053dba0(longlong param_1,longlong param_2,int param_3,int param_4,longlong param_5,int param_6
)
{
undefined4 uVar1;
int iVar2;
int iVar3;
int iVar4;
longlong lVar5;
longlong lVar6;
int iVar7;
int iVar8;
int local_res20;
longlong local_48;
iVar4 = param_6;
local_res20 = param_4;
if (param_6 < 1) {
return 1;
}
do {
iVar2 = (*(int *)(param_1 + 0x4f4) - (int)param_5) + *(int *)(param_1 + 0x4f0);
if ((*(int *)(param_1 + 0x4f0) <= param_5) && (0 < iVar2)) {
iVar8 = iVar4;
if (iVar2 < iVar4) {
iVar8 = iVar2;
}
iVar2 = param_3;
if (*(int *)(param_1 + 0x3c8) < param_3) {
iVar2 = *(int *)(param_1 + 0x3c8);
}
iVar2 = iVar2 + -1;
if (-1 < iVar2) {
lVar5 = (longlong)iVar2 * 8;
do {
if (*(longlong *)(lVar5 + param_2) != 0) {
memcpy((void *)(*(longlong *)(lVar5 + param_2) + (longlong)local_res20 * 4),
(void *)(*(longlong *)(*(longlong *)(param_1 + 0x3d8) + lVar5) +
(longlong)((int)param_5 - *(int *)(param_1 + 0x4f0)) * 4),
(longlong)iVar8 << 2);
}
lVar5 = lVar5 + -8;
iVar2 = iVar2 + -1;
iVar4 = param_6;
} while (-1 < iVar2);
}
iVar4 = iVar4 - iVar8;
param_5 = param_5 + iVar8;
local_res20 = local_res20 + iVar8;
param_6 = iVar4;
if (iVar4 == 0) {
return 1;
}
}
if ((param_5 < *(int *)(param_1 + 0x4f0)) ||
((longlong)(*(int *)(param_1 + 0x4f0) + *(int *)(param_1 + 0x4f4)) < iVar4 + param_5)) {
*(undefined4 *)(param_1 + 0x4f4) = *(undefined4 *)(param_1 + 0x3cc);
iVar2 = -0x83;
iVar8 = 0;
if (0 < (int)param_5) {
iVar8 = (int)param_5;
}
*(int *)(param_1 + 0x4f0) = iVar8;
if (1 < *(int *)(param_1 + 0xe0)) {
iVar2 = (int)*(undefined8 *)(param_1 + 0xd8);
}
if (iVar8 != iVar2) {
FUN_18136fc00(param_1 + 0x60);
}
iVar8 = 0;
for (iVar2 = *(int *)(param_1 + 0x4f4); 0 < iVar2; iVar2 = iVar2 - iVar7) {
local_48 = 0;
iVar4 = param_6;
if (*(int *)(param_1 + 0xe0) < 2) {
LAB_18053deb3:
if ((0 < iVar2) && (*(char *)(param_1 + 0x4e8) == '\0')) {
if ((iVar8 == 0) && (iVar2 == *(int *)(param_1 + 0x3cc))) {
LOCK();
*(undefined1 *)(param_1 + 0x4e8) = 1;
UNLOCK();
}
iVar7 = 0;
if (0 < *(int *)(param_1 + 0x3c8)) {
lVar5 = 0;
do {
memset((void *)(*(longlong *)(*(longlong *)(param_1 + 0x3d8) + lVar5) +
(longlong)iVar8 * 4),0,(longlong)iVar2 << 2);
iVar7 = iVar7 + 1;
lVar5 = lVar5 + 8;
} while (iVar7 < *(int *)(param_1 + 0x3c8));
}
}
break;
}
do {
if (*(int *)(param_1 + 0xe0) == 4) {
lVar5 = *(longlong *)(param_1 + 0x280);
if ((-1 < *(int *)(param_1 + 0x2a0)) &&
(*(int *)(param_1 + 0x2a0) < *(int *)(param_1 + 0x29c))) {
iVar7 = 0;
if (0 < *(int *)(lVar5 + 4)) {
lVar6 = 0;
do {
iVar7 = iVar7 + 1;
*(longlong *)(lVar6 + *(longlong *)(param_1 + 0x290)) =
*(longlong *)(*(longlong *)(param_1 + 0x288) + -8 + lVar6 + 8) +
(longlong)*(int *)(param_1 + 0x2a0) * 4;
lVar6 = lVar6 + 8;
} while (iVar7 < *(int *)(lVar5 + 4));
}
iVar7 = *(int *)(param_1 + 0x29c) - *(int *)(param_1 + 0x2a0);
if (iVar7 != 0) {
if (iVar2 < iVar7) {
iVar7 = iVar2;
}
uVar1 = *(undefined4 *)(*(longlong *)(*(longlong *)(param_1 + 200) + 0x20) + 0x1668)
;
if ((iVar7 == 0) || (*(int *)(param_1 + 0x2a0) + iVar7 <= *(int *)(param_1 + 0x29c))
) {
*(int *)(param_1 + 0x2a0) = *(int *)(param_1 + 0x2a0) + iVar7;
}
*(longlong *)(param_1 + 0xd8) =
*(longlong *)(param_1 + 0xd8) + (longlong)(iVar7 << ((byte)uVar1 & 0x1f));
local_48 = *(longlong *)(param_1 + 0x290);
break;
}
}
}
iVar7 = FUN_181371870(param_1 + 0x60);
if (iVar7 == -2) goto LAB_18053deb3;
} while (0 < iVar7);
if (iVar7 < 1) goto LAB_18053deb3;
iVar3 = *(int *)(param_1 + 0x20);
if (*(int *)(param_1 + 0x3c8) < *(int *)(param_1 + 0x20)) {
iVar3 = *(int *)(param_1 + 0x3c8);
}
lVar5 = (longlong)(iVar3 + -1);
if (-1 < iVar3 + -1) {
do {
LOCK();
*(undefined1 *)(param_1 + 0x4e8) = 0;
UNLOCK();
memcpy((void *)(*(longlong *)(*(longlong *)(param_1 + 0x3d8) + lVar5 * 8) +
(longlong)iVar8 * 4),*(void **)(local_48 + lVar5 * 8),
(longlong)iVar7 << 2);
lVar5 = lVar5 + -1;
} while (-1 < lVar5);
}
iVar8 = iVar8 + iVar7;
}
}
if (iVar4 < 1) {
return 1;
}
} while( true );
}
--- [57] 0x1805386e0 size=120 ---
undefined8 * FUN_1805386e0(undefined8 *param_1,uint param_2)
{
undefined8 *puVar1;
*param_1 = juce::AudioFormatReaderSource::vftable;
if (*(char *)(param_1 + 2) == '\0') {
param_1[1] = 0;
}
else {
puVar1 = (undefined8 *)param_1[1];
param_1[1] = 0;
if (puVar1 == (undefined8 *)0x0) goto LAB_180538737;
(**(code **)*puVar1)(puVar1,1);
}
puVar1 = (undefined8 *)param_1[1];
if (puVar1 != (undefined8 *)0x0) {
(**(code **)*puVar1)(puVar1,1);
}
LAB_180538737:
if ((param_2 & 1) != 0) {
/* WARNING: Subroutine does not return */
free(param_1);
}
return param_1;
}
--- [60] 0x1813aec40 size=242 ---
void FUN_1813aec40(longlong param_1,undefined8 *param_2)
{
longlong lVar1;
longlong lVar2;
longlong lVar3;
longlong lVar4;
ulonglong uVar5;
int iVar6;
iVar6 = *(int *)((longlong)param_2 + 0xc);
if (0 < iVar6) {
lVar1 = *(longlong *)(param_1 + 0x18);
lVar2 = *(longlong *)(param_1 + 8);
if (*(char *)(param_1 + 0x20) != '\0') {
lVar3 = *(longlong *)(lVar2 + 0x18);
lVar4 = lVar1 % lVar3;
uVar5 = (lVar1 + iVar6) % lVar3;
if (lVar4 < (longlong)uVar5) {
FUN_1813af530(lVar2,*param_2,*(undefined4 *)(param_2 + 1),(int)uVar5 - (int)lVar4,lVar4);
*(ulonglong *)(param_1 + 0x18) = uVar5;
return;
}
iVar6 = (int)lVar3 - (int)lVar4;
FUN_1813af530(lVar2,*param_2,*(undefined4 *)(param_2 + 1),iVar6,lVar4);
FUN_1813af530(*(undefined8 *)(param_1 + 8),*param_2,*(int *)(param_2 + 1) + iVar6,
uVar5 & 0xffffffff,0);
*(ulonglong *)(param_1 + 0x18) = uVar5;
return;
}
FUN_1813af530(lVar2,*param_2,*(undefined4 *)(param_2 + 1),(longlong)iVar6,lVar1);
*(longlong *)(param_1 + 0x18) =
*(longlong *)(param_1 + 0x18) + (longlong)*(int *)((longlong)param_2 + 0xc);
}
return;
}
############ VTABLE CloudyAudioProcessor 0x1824ab7c0
SLOTLIST:
[0] 0x1805384a8 size=12
[1] 0x18052bd00 size=189
[2] 0x182507040 size=0
[3] 0x180536b60 size=22
[4] 0x180536b60 size=22
[5] 0x1805379a0 size=104
[6] 0x180536b50 size=8
[7] 0x18048dc80 size=15
[8] 0x180481210 size=5
[10] 0x182505588 size=0
[11] 0x180536850 size=22
[12] 0x180536850 size=22
[13] 0x180537e90 size=150
[14] 0x180536840 size=8
[15] 0x18048db00 size=15
[16] 0x180481210 size=5
[17] 0x182506590 size=0
[18] 0x180536f20 size=14
[19] 0x180536f20 size=14
[20] 0x180537290 size=41
[21] 0x180536f10 size=8
[22] 0x18048db00 size=15
[23] 0x180481210 size=5
[24] 0x182505910 size=0
[25] 0x180536610 size=30
[26] 0x180536610 size=30
[27] 0x1805380e0 size=35
[28] 0x180536600 size=8
[29] 0x1805365f0 size=15
[30] 0x180481210 size=5
[31] 0x182504cd0 size=0
[32] 0x180536d60 size=22
[33] 0x180536d60 size=22
[34] 0x1805375e0 size=73
[35] 0x180536d50 size=8
[36] 0x18048db00 size=15
[37] 0x180481210 size=5
[38] 0x182506f18 size=0
[39] 0x180536dc0 size=22
[40] 0x180536dc0 size=22
[41] 0x1805374e0 size=163
[42] 0x180536db0 size=8
[43] 0x18048db00 size=15
[44] 0x180481210 size=5
[45] 0x182506090 size=0
[46] 0x1805367f0 size=22
[47] 0x1805367f0 size=22
[48] 0x180537f60 size=25
[49] 0x1805367e0 size=8
[50] 0x18048db00 size=15
[51] 0x180481210 size=5
[53] 0x182506948 size=0
[54] 0x1805366d0 size=22
[55] 0x1805366d0 size=22
[56] 0x180538010 size=25
[57] 0x1805366c0 size=8
[58] 0x18048db00 size=15
[59] 0x180481210 size=5
[62] 0x1825061b8 size=0
[63] 0x180536a30 size=14
CCODE:
--- [1] 0x18052bd00 size=189 ---
/* WARNING: Function: __security_check_cookie replaced with injection: security_check_cookie */
void .?AV?$CloudyAudioProcessor@V?$Soothe2ModuleBase@M$01@@VSoothe2ModuleDecryptor@@VParameterStates@@M@@
::
vtbl___AV__CloudyAudioProcessor_V__Soothe2ModuleBase_M_01__VSoothe2ModuleDecryptor__VParameterStates__M__
(longlong param_1,undefined8 param_2,undefined8 *param_3)
{
uint *_Memory;
uint uVar1;
undefined1 uVar2;
int iVar3;
undefined1 auStack_58 [32];
longlong local_38;
undefined8 local_30;
undefined8 *local_28;
ulonglong local_20;
local_30 = 0xfffffffffffffffe;
local_20 = DAT_182615970 ^ (ulonglong)auStack_58;
local_38 = *(longlong *)(param_1 + 0x478);
_Memory = (uint *)(local_38 + -0x10);
if ((*_Memory & 0x30000000) == 0) {
LOCK();
*_Memory = *_Memory + 1;
UNLOCK();
}
local_28 = param_3;
iVar3 = FUN_18048cbc0(param_2,local_38);
if ((*_Memory & 0x30000000) == 0) {
LOCK();
uVar1 = *_Memory;
*_Memory = *_Memory - 1;
UNLOCK();
if (uVar1 == 0) {
/* WARNING: Subroutine does not return */
free(_Memory);
}
}
if (iVar3 == 0) {
uVar2 = FUN_180528b30(param_1 + 0x470);
*(undefined1 *)(param_1 + 0x404) = uVar2;
}
(**(code **)(*(longlong *)*param_3 + 0xb0))((longlong *)*param_3,param_3 + 1);
}
--- [5] 0x1805379a0 size=104 ---
void .?AV?$CloudyAudioProcessor@V?$Soothe2ModuleBase@M$01@@VSoothe2ModuleDecryptor@@VParameterStates@@M@@
::
vtbl___AV__CloudyAudioProcessor_V__Soothe2ModuleBase_M_01__VSoothe2ModuleDecryptor__VParameterStates__M__
(longlong param_1,undefined4 *param_2)
{
uint uVar1;
longlong lVar2;
longlong lVar3;
longlong lVar4;
uVar1 = *(uint *)(param_1 + 8);
lVar2 = *(longlong *)(*(longlong *)(param_1 + 0x10) + 0x168);
lVar3 = lVar2 + 0x3d8;
if (uVar1 < *(uint *)(lVar2 + 0x444)) {
lVar4 = *(longlong *)(*(longlong *)(lVar2 + 0x438) + (longlong)(int)uVar1 * 8);
}
else {
lVar4 = 0;
}
*(undefined4 *)(lVar4 + 0x80c) = *param_2;
if ((int)uVar1 < 0) {
*(undefined4 *)(lVar2 + 0x240467) = 0x1010101;
*(undefined4 *)(lVar2 + 0x24046b) = 0x1010101;
FUN_18052fc30(lVar3);
return;
}
*(undefined1 *)((longlong)(int)uVar1 + 0x24008f + lVar3) = 1;
FUN_18052fc30(lVar3);
return;
}
--- [13] 0x180537e90 size=150 ---
void .?AV?$CloudyAudioProcessor@V?$Soothe2ModuleBase@M$01@@VSoothe2ModuleDecryptor@@VParameterStates@@M@@
::
vtbl___AV__CloudyAudioProcessor_V__Soothe2ModuleBase_M_01__VSoothe2ModuleDecryptor__VParameterStates__M__
(longlong param_1,float *param_2)
{
longlong lVar1;
char cVar2;
int iVar3;
iVar3 = (int)*param_2;
if ((*(char *)(*(longlong *)(param_1 + 8) + 0x41) != '\0') &&
(cVar2 = FUN_180528d50(), cVar2 != '\0')) {
return;
}
lVar1 = *(longlong *)(*(longlong *)(param_1 + 8) + 0x168);
*(undefined1 *)(lVar1 + 0x3cc) = 1;
*(undefined1 *)(lVar1 + 0x1b6) = 1;
if (iVar3 == 1) {
*(undefined4 *)(lVar1 + 0x1ac) = 4;
}
else if (iVar3 == 2) {
*(undefined4 *)(lVar1 + 0x1ac) = 8;
}
else if (iVar3 == 3) {
*(undefined4 *)(lVar1 + 0x1ac) = 0x10;
}
else {
*(undefined4 *)(lVar1 + 0x1ac) = 2;
}
(**(code **)(**(longlong **)(*(longlong *)(param_1 + 8) + 0x168) + 0x20))();
return;
}
--- [34] 0x1805375e0 size=73 ---
void .?AV?$CloudyAudioProcessor@V?$Soothe2ModuleBase@M$01@@VSoothe2ModuleDecryptor@@VParameterStates@@M@@
::
vtbl___AV__CloudyAudioProcessor_V__Soothe2ModuleBase_M_01__VSoothe2ModuleDecryptor__VParameterStates__M__
(longlong param_1,undefined4 *param_2)
{
longlong lVar1;
lVar1 = **(longlong **)(param_1 + 8);
if (*(int *)(lVar1 + 0x444) != 0) {
*(undefined4 *)(**(longlong **)(lVar1 + 0x438) + 0x80c) = *param_2;
*(undefined1 *)(lVar1 + 0x240467) = 1;
FUN_18052fc30();
return;
}
uRam000000000000080c = *param_2;
*(undefined1 *)(lVar1 + 0x240467) = 1;
FUN_18052fc30();
return;
}
--- [41] 0x1805374e0 size=163 ---
void .?AV?$CloudyAudioProcessor@V?$Soothe2ModuleBase@M$01@@VSoothe2ModuleDecryptor@@VParameterStates@@M@@
::
vtbl___AV__CloudyAudioProcessor_V__Soothe2ModuleBase_M_01__VSoothe2ModuleDecryptor__VParameterStates__M__
(longlong param_1,float *param_2)
{
longlong *plVar1;
longlong lVar2;
float fVar3;
float fVar4;
float fVar5;
fVar3 = logf(DAT_1824c43e8);
plVar1 = *(longlong **)(*(longlong *)(param_1 + 8) + 0x168);
lVar2 = *plVar1;
fVar4 = powf(*param_2 * DAT_1824c3cb8,DAT_1824c3ef8);
fVar5 = logf(DAT_1824c45e4);
fVar3 = expf(fVar4 * (fVar5 - fVar3) + fVar3);
/* WARNING: Could not recover jumptable at 0x000180537580. Too many branches */
/* WARNING: Treating indirect jump as call */
(**(code **)(lVar2 + 0x80))(plVar1,fVar3);
return;
}
############ VTABLE AudioProcessingModule 0x1824ac638
SLOTLIST:
[0] 0x18052d580 size=47
[1] 0x18052cfb0 size=61
[2] 0x18052cfa0 size=13
[3] 0x1804714b0 size=3
[4] 0x18113285a size=6
[9] 0x1825071e8 size=0
[10] 0x180536aa0 size=22
[11] 0x180536aa0 size=22
[12] 0x180537b10 size=74
[13] 0x180536a90 size=8
[14] 0x18048db00 size=15
[15] 0x180481210 size=5
[20] 0x182505780 size=0
[21] 0x180536eb0 size=22
[22] 0x180536eb0 size=22
[23] 0x1805373c0 size=41
[24] 0x180536ea0 size=8
[25] 0x18048db00 size=15
[26] 0x180481210 size=5
[27] 0x182506568 size=0
[28] 0x1805365d0 size=30
[29] 0x1805365d0 size=30
[30] 0x180538110 size=44
[31] 0x1805365c0 size=8
[32] 0x18048dc80 size=15
[33] 0x180481210 size=5
[45] 0x1825056d8 size=0
[46] 0x18052fd40 size=38
[47] 0x18052cfb0 size=61
[48] 0x180529550 size=191
[49] 0x1804714b0 size=3
[50] 0x18052ce00 size=98
[51] 0x1804714b0 size=3
[52] 0x1804714b0 size=3
[53] 0x1804714b0 size=3
[54] 0x1804727a0 size=3
[55] 0x1804714b0 size=3
[56] 0x1804714b0 size=3
[57] 0x1804714b0 size=3
[58] 0x1804714b0 size=3
[59] 0x1804714b0 size=3
[60] 0x1804714b0 size=3
[61] 0x1804714b0 size=3
[62] 0x1804714b0 size=3
[63] 0x1804714b0 size=3
CCODE:
--- [1] 0x18052cfb0 size=61 ---
void .?AV?$AudioProcessingModule@M$01@@::vtbl___AV__AudioProcessingModule_M_01__(longlong param_1)
{
FUN_1812b4430(param_1 + 0x14,0,2);
*(float *)(param_1 + 0x58) = (float)(DAT_1824c4230 / (double)*(float *)(param_1 + 0x24));
return;
}
--- [12] 0x180537b10 size=74 ---
void .?AV?$AudioProcessingModule@M$01@@::vtbl___AV__AudioProcessingModule_M_01__
(longlong param_1,undefined4 *param_2)
{
longlong lVar1;
lVar1 = **(longlong **)(param_1 + 8);
if (5 < *(uint *)(lVar1 + 0x444)) {
*(undefined4 *)(*(longlong *)(*(longlong *)(lVar1 + 0x438) + 0x28) + 0x80c) = *param_2;
*(undefined1 *)(lVar1 + 0x24046c) = 1;
FUN_18052fc30();
return;
}
uRam000000000000080c = *param_2;
*(undefined1 *)(lVar1 + 0x24046c) = 1;
FUN_18052fc30();
return;
}
--- [47] 0x18052cfb0 size=61 ---
void .?AV?$AudioProcessingModule@M$01@@::vtbl___AV__AudioProcessingModule_M_01__(longlong param_1)
{
FUN_1812b4430(param_1 + 0x14,0,2);
*(float *)(param_1 + 0x58) = (float)(DAT_1824c4230 / (double)*(float *)(param_1 + 0x24));
return;
}
--- [48] 0x180529550 size=191 ---
void .?AV?$Soothe2Module@M$01@@::vtbl___AV__Soothe2Module_M_01__
(longlong *param_1,undefined4 param_2,undefined4 *param_3,int param_4)
{
int *piVar1;
longlong lVar2;
uint *puVar3;
lVar2 = (longlong)param_4;
puVar3 = (uint *)(param_1 + (lVar2 + 9) * 8);
*(undefined4 *)(*(longlong *)(puVar3 + 8) + (longlong)(int)*puVar3 * 4) = *param_3;
*puVar3 = puVar3[2] - 1 & *puVar3 + 1;
puVar3 = (uint *)(param_1 + (lVar2 + 7) * 8);
*(undefined4 *)(*(longlong *)(puVar3 + 8) + (longlong)(int)*puVar3 * 4) = param_2;
*puVar3 = puVar3[2] - 1 & *puVar3 + 1;
piVar1 = (int *)((longlong)param_1 + lVar2 * 4 + 0x3c0);
*piVar1 = *piVar1 + 1;
if ((*(int *)((longlong)param_1 + lVar2 * 4 + 0x3c0) == (int)param_1[0x79] / 2) && (param_4 == 0))
{
(**(code **)(*param_1 + 0x38))(param_1);
}
if (*(int *)((longlong)param_1 + lVar2 * 4 + 0x3c0) == (int)param_1[0x79]) {
*(undefined4 *)((longlong)param_1 + lVar2 * 4 + 0x3c0) = 0;
FUN_1805300f0(param_1,param_4);
}
return;
}
--- [50] 0x18052ce00 size=98 ---
void .?AV?$Soothe2ModuleBase@M$01@@::vtbl___AV__Soothe2ModuleBase_M_01__(longlong param_1)
{
float fVar1;
.?AV?$SpectralProcessor@M$07$01@@::vtbl___AV__SpectralProcessor_M_07_01__();
fVar1 = *(float *)(param_1 + 0x3fc);
*(float *)(param_1 + 0x3fc) = *(float *)(param_1 + 0x24);
if (fVar1 != *(float *)(param_1 + 0x24)) {
(**(code **)(*(longlong *)(param_1 + 0x3d8) + 0x20))((longlong *)(param_1 + 0x3d8));
}
*(undefined4 *)(param_1 + 0x240458) = 4;
*(undefined4 *)(param_1 + 0x240467) = 0x1010101;
*(undefined4 *)(param_1 + 0x24046b) = 0x1010101;
return;
}
############ VTABLE IIRFilterExtended 0x1824ac5d8
SLOTLIST:
[0] 0x1805346b0 size=56
[1] 0x18052cfb0 size=61
[2] 0x18052cfa0 size=13
[3] 0x18052fb50 size=119
[4] 0x18052fb30 size=31
[5] 0x182506a00 size=0
[6] 0x180538460 size=12
[7] 0x1804714b0 size=3
[8] 0x180529c50 size=8
[11] 0x182504d80 size=0
[12] 0x18052d580 size=47
[13] 0x18052cfb0 size=61
[14] 0x18052cfa0 size=13
[15] 0x1804714b0 size=3
[16] 0x18113285a size=6
[21] 0x1825071e8 size=0
[22] 0x180536aa0 size=22
[23] 0x180536aa0 size=22
[24] 0x180537b10 size=74
[25] 0x180536a90 size=8
[26] 0x18048db00 size=15
[27] 0x180481210 size=5
[32] 0x182505780 size=0
[33] 0x180536eb0 size=22
[34] 0x180536eb0 size=22
[35] 0x1805373c0 size=41
[36] 0x180536ea0 size=8
[37] 0x18048db00 size=15
[38] 0x180481210 size=5
[39] 0x182506568 size=0
[40] 0x1805365d0 size=30
[41] 0x1805365d0 size=30
[42] 0x180538110 size=44
[43] 0x1805365c0 size=8
[44] 0x18048dc80 size=15
[45] 0x180481210 size=5
[57] 0x1825056d8 size=0
[58] 0x18052fd40 size=38
[59] 0x18052cfb0 size=61
[60] 0x180529550 size=191
[61] 0x1804714b0 size=3
[62] 0x18052ce00 size=98
[63] 0x1804714b0 size=3
CCODE:
--- [1] 0x18052cfb0 size=61 ---
void .?AV?$AudioProcessingModule@M$01@@::vtbl___AV__AudioProcessingModule_M_01__(longlong param_1)
{
FUN_1812b4430(param_1 + 0x14,0,2);
*(float *)(param_1 + 0x58) = (float)(DAT_1824c4230 / (double)*(float *)(param_1 + 0x24));
return;
}
--- [3] 0x18052fb50 size=119 ---
void .?AV?$IIRFilterExtended@M$01@@::vtbl___AV__IIRFilterExtended_M_01__
(longlong param_1,float *param_2,int param_3)
{
longlong lVar1;
double dVar2;
lVar1 = (longlong)param_3;
dVar2 = (double)*param_2 * *(double *)(param_1 + 0xb8) + *(double *)(param_1 + 0x98 + lVar1 * 8);
*(double *)(param_1 + 0x98 + lVar1 * 8) =
((double)*param_2 * *(double *)(param_1 + 0xc0) - dVar2 * *(double *)(param_1 + 0xd0)) +
*(double *)(param_1 + 0xa8 + lVar1 * 8);
*(double *)(param_1 + 0xa8 + lVar1 * 8) =
(double)*param_2 * *(double *)(param_1 + 200) - dVar2 * *(double *)(param_1 + 0xd8);
*param_2 = (float)dVar2;
return;
}
--- [13] 0x18052cfb0 size=61 ---
void .?AV?$AudioProcessingModule@M$01@@::vtbl___AV__AudioProcessingModule_M_01__(longlong param_1)
{
FUN_1812b4430(param_1 + 0x14,0,2);
*(float *)(param_1 + 0x58) = (float)(DAT_1824c4230 / (double)*(float *)(param_1 + 0x24));
return;
}
--- [24] 0x180537b10 size=74 ---
void .?AV?$AudioProcessingModule@M$01@@::vtbl___AV__AudioProcessingModule_M_01__
(longlong param_1,undefined4 *param_2)
{
longlong lVar1;
lVar1 = **(longlong **)(param_1 + 8);
if (5 < *(uint *)(lVar1 + 0x444)) {
*(undefined4 *)(*(longlong *)(*(longlong *)(lVar1 + 0x438) + 0x28) + 0x80c) = *param_2;
*(undefined1 *)(lVar1 + 0x24046c) = 1;
FUN_18052fc30();
return;
}
uRam000000000000080c = *param_2;
*(undefined1 *)(lVar1 + 0x24046c) = 1;
FUN_18052fc30();
return;
}
--- [59] 0x18052cfb0 size=61 ---
void .?AV?$AudioProcessingModule@M$01@@::vtbl___AV__AudioProcessingModule_M_01__(longlong param_1)
{
FUN_1812b4430(param_1 + 0x14,0,2);
*(float *)(param_1 + 0x58) = (float)(DAT_1824c4230 / (double)*(float *)(param_1 + 0x24));
return;
}
--- [60] 0x180529550 size=191 ---
void .?AV?$Soothe2Module@M$01@@::vtbl___AV__Soothe2Module_M_01__
(longlong *param_1,undefined4 param_2,undefined4 *param_3,int param_4)
{
int *piVar1;
longlong lVar2;
uint *puVar3;
lVar2 = (longlong)param_4;
puVar3 = (uint *)(param_1 + (lVar2 + 9) * 8);
*(undefined4 *)(*(longlong *)(puVar3 + 8) + (longlong)(int)*puVar3 * 4) = *param_3;
*puVar3 = puVar3[2] - 1 & *puVar3 + 1;
puVar3 = (uint *)(param_1 + (lVar2 + 7) * 8);
*(undefined4 *)(*(longlong *)(puVar3 + 8) + (longlong)(int)*puVar3 * 4) = param_2;
*puVar3 = puVar3[2] - 1 & *puVar3 + 1;
piVar1 = (int *)((longlong)param_1 + lVar2 * 4 + 0x3c0);
*piVar1 = *piVar1 + 1;
if ((*(int *)((longlong)param_1 + lVar2 * 4 + 0x3c0) == (int)param_1[0x79] / 2) && (param_4 == 0))
{
(**(code **)(*param_1 + 0x38))(param_1);
}
if (*(int *)((longlong)param_1 + lVar2 * 4 + 0x3c0) == (int)param_1[0x79]) {
*(undefined4 *)((longlong)param_1 + lVar2 * 4 + 0x3c0) = 0;
FUN_1805300f0(param_1,param_4);
}
return;
}
--- [62] 0x18052ce00 size=98 ---
void .?AV?$Soothe2ModuleBase@M$01@@::vtbl___AV__Soothe2ModuleBase_M_01__(longlong param_1)
{
float fVar1;
.?AV?$SpectralProcessor@M$07$01@@::vtbl___AV__SpectralProcessor_M_07_01__();
fVar1 = *(float *)(param_1 + 0x3fc);
*(float *)(param_1 + 0x3fc) = *(float *)(param_1 + 0x24);
if (fVar1 != *(float *)(param_1 + 0x24)) {
(**(code **)(*(longlong *)(param_1 + 0x3d8) + 0x20))((longlong *)(param_1 + 0x3d8));
}
*(undefined4 *)(param_1 + 0x240458) = 4;
*(undefined4 *)(param_1 + 0x240467) = 0x1010101;
*(undefined4 *)(param_1 + 0x24046b) = 0x1010101;
return;
}
############ VTABLE Soothe2FilterGraph 0x1824be810
SLOTLIST:
[0] 0x180589260 size=278
[1] 0x18134bc00 size=3
[2] 0x18058b4d0 size=36
[3] 0x18058b380 size=324
[4] 0x18134bbd0 size=3
[5] 0x18134bbc0 size=3
[6] 0x18134bbb0 size=3
[7] 0x18134bba0 size=3
[8] 0x18134bb30 size=93
[9] 0x18134bad0 size=82
[10] 0x18134c900 size=397
[11] 0x18134c760 size=397
[12] 0x18134c750 size=3
[13] 0x18134c3a0 size=933
[14] 0x18134c2d0 size=3
[15] 0x18134c2c0 size=3
[16] 0x18134c270 size=69
[17] 0x1805689c0 size=60
[18] 0x18134bf00 size=3
[19] 0x18134be30 size=195
[20] 0x18134bde0 size=3
[21] 0x18134bcf0 size=66
[22] 0x18134bce0 size=3
[23] 0x18134bc50 size=126
[24] 0x18134bc20 size=34
[25] 0x18058ad80 size=452
[26] 0x18134bc10 size=3
[27] 0x18134bac0 size=3
[28] 0x18134bab0 size=3
[29] 0x18134ba90 size=20
[30] 0x18134ba80 size=3
[31] 0x18134ba70 size=3
[32] 0x18134ba60 size=3
[33] 0x18058af50 size=179
[34] 0x18134ba50 size=3
[35] 0x18134adc0 size=3
[36] 0x18134ba40 size=3
[37] 0x18134ba30 size=3
[38] 0x18134ba20 size=3
[39] 0x18134ba10 size=3
[40] 0x18134b940 size=196
[41] 0x18134b930 size=3
[42] 0x18134b870 size=87
[43] 0x1804714b0 size=3
[44] 0x181a06ff0 size=323
[45] 0x1804714b0 size=3
[46] 0x181a07170 size=1813
[47] 0x18251a8e0 size=0
[48] 0x18058d230 size=47
[49] 0x18052cfb0 size=61
[50] 0x18052cfa0 size=13
[51] 0x18058c850 size=83
[52] 0x18058c8b0 size=74
[53] 0x18058c7b0 size=149
[54] 0x18251ae98 size=0
[55] 0x18058e330 size=22
[56] 0x18058e330 size=22
[57] 0x18058e400 size=42
[58] 0x18058e320 size=8
[59] 0x18048db00 size=15
[60] 0x180481210 size=5
[61] 0x18251aab8 size=0
[62] 0x18058eb10 size=12
[63] 0x18058b500 size=275
CCODE:
--- [0] 0x180589260 size=278 ---
void .?AV?$DigitalFilter@M$0BA@$01@@::vtbl___AV__DigitalFilter_M_0BA__01__(undefined8 *param_1)
{
void *_Dst;
int iVar1;
longlong lVar2;
longlong lVar3;
longlong lVar4;
int iVar5;
*param_1 = Soothe2FilterGraph::vftable;
iVar5 = 0;
param_1[0x16] = Soothe2FilterGraph::vftable;
param_1[0x19] = Soothe2FilterGraph::vftable;
param_1[0x1c] = Soothe2FilterGraph::vftable;
param_1[0x1d] = Soothe2FilterGraph::vftable;
param_1[0x1e] = Soothe2FilterGraph::vftable;
param_1[0x138d] = Soothe2FilterGraph::vftable;
lVar2 = *(longlong *)(param_1[0x138e] + 0x168);
lVar4 = 0;
iVar1 = *(int *)(lVar2 + 0x2404cc);
lVar3 = *(longlong *)(lVar2 + 0x2404c0);
if (0 < iVar1) {
do {
if (param_1 + 0x138d == *(undefined8 **)(lVar3 + lVar4 * 8)) {
_Dst = (void *)(lVar3 + (longlong)iVar5 * 8);
memmove(_Dst,(void *)((longlong)_Dst + 8),(longlong)((iVar1 - iVar5) + -1) << 3);
*(int *)(lVar2 + 0x2404cc) = *(int *)(lVar2 + 0x2404cc) + -1;
iVar1 = *(int *)(lVar2 + 0x2404cc);
iVar5 = 0;
if (0 < iVar1 * 2) {
iVar5 = iVar1 * 2;
}
if (iVar5 < *(int *)(lVar2 + 0x2404c8)) {
if (iVar1 < 8) {
iVar1 = 8;
}
if (iVar1 < *(int *)(lVar2 + 0x2404c8)) {
FUN_18047cb30((longlong *)(lVar2 + 0x2404c0));
}
}
break;
}
iVar5 = iVar5 + 1;
lVar4 = lVar4 + 1;
} while (lVar4 < iVar1);
}
*(undefined4 *)((longlong)param_1 + 0x209c8c) = 0;
/* WARNING: Subroutine does not return */
free((void *)param_1[0x41390]);
}
--- [3] 0x18058b380 size=324 ---
void .?AV?$DigitalFilter@M$0BA@$01@@::vtbl___AV__DigitalFilter_M_0BA__01__
(longlong param_1,undefined8 *param_2)
{
longlong lVar1;
int iVar2;
int iVar3;
int iVar4;
undefined8 *puVar5;
ulonglong uVar6;
ulonglong uVar7;
float fVar8;
float fStackX_c;
undefined8 local_38;
undefined4 uStack_30;
undefined4 uStack_2c;
lVar1 = *(longlong *)(param_1 + 0xf8);
if (lVar1 != 0) {
uVar7 = 0;
iVar2 = *(int *)(*(longlong *)(param_1 + 0x9c60) + 0x28) + -10;
iVar3 = *(int *)(*(longlong *)(param_1 + 0x9c60) + 0x2c) + -10;
iVar4 = 0;
if (0 < iVar2) {
iVar4 = iVar2;
}
iVar2 = 0;
if (0 < iVar3) {
iVar2 = iVar3;
}
fVar8 = (float)*param_2;
if ((((fVar8 < DAT_1824c4360) ||
(fStackX_c = (float)((ulonglong)*param_2 >> 0x20), fStackX_c < DAT_1824c4360)) ||
((float)iVar4 + DAT_1824c4360 <= fVar8)) || ((float)iVar2 + DAT_1824c4360 <= fStackX_c)) {
puVar5 = *(undefined8 **)(lVar1 + 0xf0);
*(undefined4 *)(lVar1 + 0x204) = 0;
uVar6 = (ulonglong)((longlong)(puVar5 + *(int *)(lVar1 + 0xfc)) + (7 - (longlong)puVar5)) >> 3
;
if (puVar5 + *(int *)(lVar1 + 0xfc) < puVar5) {
uVar6 = uVar7;
}
if (uVar6 != 0) {
do {
FUN_181342bf0(*puVar5);
uVar7 = uVar7 + 1;
puVar5 = puVar5 + 1;
} while (uVar7 != uVar6);
}
uStack_30 = *(undefined4 *)(lVar1 + 0x28);
uStack_2c = *(undefined4 *)(lVar1 + 0x2c);
local_38 = 0;
FUN_181342870(lVar1,&local_38,1);
}
}
return;
}
--- [8] 0x18134bb30 size=93 ---
void .?AV?$DigitalFilter@M$0BA@$01@@::vtbl___AV__DigitalFilter_M_0BA__01__
(longlong param_1,undefined8 param_2,undefined8 param_3)
{
longlong lVar1;
undefined8 uVar2;
undefined1 local_68 [96];
if (*(longlong **)(param_1 + 0x18) != (longlong *)0x0) {
lVar1 = **(longlong **)(param_1 + 0x18);
uVar2 = FUN_181339840(param_2,local_68);
(**(code **)(lVar1 + 0x40))(*(undefined8 *)(param_1 + 0x18),uVar2,param_3);
}
return;
}
--- [9] 0x18134bad0 size=82 ---
void .?AV?$DigitalFilter@M$0BA@$01@@::vtbl___AV__DigitalFilter_M_0BA__01__
(longlong param_1,undefined8 param_2,undefined4 param_3)
{
undefined8 uVar1;
undefined1 local_78 [112];
if (*(longlong *)(param_1 + 0x18) != 0) {
uVar1 = FUN_181339840(param_2,local_78);
(**(code **)(**(longlong **)(param_1 + 0x18) + 0x48))
(*(longlong **)(param_1 + 0x18),uVar1,param_3);
}
return;
}
--- [10] 0x18134c900 size=397 ---
void .?AV?$DigitalFilter@M$0BA@$01@@::vtbl___AV__DigitalFilter_M_0BA__01__
(longlong param_1,longlong *param_2,undefined8 param_3,undefined8 param_4)
{
int *piVar1;
uint uVar2;
code *pcVar3;
longlong *plVar4;
undefined8 *puVar5;
longlong lVar6;
uint *_Memory;
int iVar7;
bool bVar8;
undefined8 *local_res8;
undefined1 local_res10 [16];
lVar6 = *param_2;
if (*(longlong *)(param_1 + 8) == lVar6) {
iVar7 = 0;
}
else {
iVar7 = FUN_18048cbc0(*(undefined8 *)(param_1 + 8),lVar6,param_3,param_4,0xfffffffffffffffe);
}
if (iVar7 != 0) {
if ((*(uint *)(lVar6 + -0x10) & 0x30000000) == 0) {
LOCK();
*(int *)(lVar6 + -0x10) = *(int *)(lVar6 + -0x10) + 1;
UNLOCK();
}
LOCK();
lVar6 = *(longlong *)(param_1 + 8);
*(longlong *)(param_1 + 8) = *param_2;
UNLOCK();
_Memory = (uint *)(lVar6 + -0x10);
if ((*_Memory & 0x30000000) == 0) {
LOCK();
uVar2 = *_Memory;
*_Memory = *_Memory - 1;
UNLOCK();
if (uVar2 == 0) {
/* WARNING: Subroutine does not return */
free(_Memory);
}
}
if (((*(byte *)(param_1 + 0xa8) & 1) != 0) &&
(plVar4 = (longlong *)FUN_1812d2bd0(param_1), plVar4 != (longlong *)0x0)) {
if ((undefined **)*plVar4 == juce::HWNDComponentPeer::vftable) {
puVar5 = (undefined8 *)FUN_18049a930(local_res10);
SetWindowTextW((HWND)plVar4[0x11],(LPCWSTR)*puVar5);
}
else {
(*(code *)((undefined **)*plVar4)[3])(plVar4,param_2);
}
}
FUN_1804de690(&local_res8,param_1);
puVar5 = local_res8;
iVar7 = *(int *)(param_1 + 0x8c);
bVar8 = local_res8 == (undefined8 *)0x0;
while( true ) {
if (bVar8) {
lVar6 = 0;
}
else {
lVar6 = puVar5[2];
}
if ((lVar6 == 0) || (iVar7 < 1)) break;
iVar7 = iVar7 + -1;
if ((*(int *)(param_1 + 0x8c) <= iVar7) && (iVar7 = *(int *)(param_1 + 0x8c) + -1, iVar7 < 0))
break;
plVar4 = *(longlong **)(*(longlong *)(param_1 + 0x80) + (longlong)iVar7 * 8);
pcVar3 = *(code **)(*plVar4 + 0x30);
if (pcVar3 != .?AVSoothe2Grid@@::vtbl___AVSoothe2Grid__) {
(*pcVar3)(plVar4,param_1);
}
}
if (puVar5 != (undefined8 *)0x0) {
LOCK();
piVar1 = (int *)(puVar5 + 1);
iVar7 = *piVar1;
*piVar1 = *piVar1 + -1;
UNLOCK();
if (iVar7 == 1) {
(**(code **)*local_res8)(local_res8,1);
}
}
}
return;
}
--- [11] 0x18134c760 size=397 ---
void .?AV?$DigitalFilter@M$0BA@$01@@::vtbl___AV__DigitalFilter_M_0BA__01__
(longlong param_1,byte param_2,undefined8 param_3,undefined8 param_4)
{
int *piVar1;
int iVar2;
undefined8 *puVar3;
longlong lVar4;
longlong *plVar5;
longlong lVar6;
bool bVar7;
undefined8 *local_res8;
undefined4 local_28;
undefined4 uStack_24;
undefined4 uStack_20;
undefined4 uStack_1c;
if ((*(byte *)(param_1 + 0xa8) >> 1 & 1) != param_2) {
FUN_1804de690(&local_res8,param_1,param_3,param_4,0xfffffffffffffffe);
*(byte *)(param_1 + 0xa8) = *(byte *)(param_1 + 0xa8) & 0xfd;
*(byte *)(param_1 + 0xa8) = *(byte *)(param_1 + 0xa8) | (param_2 & 1) * '\x02';
lVar6 = 0;
if (param_2 == 0) {
FUN_181342b10(param_1);
}
else {
uStack_1c = *(undefined4 *)(param_1 + 0x2c);
uStack_20 = *(undefined4 *)(param_1 + 0x28);
local_28 = 0;
uStack_24 = 0;
FUN_181342870(param_1,&local_28,1);
}
FUN_18133f790();
if (param_2 == 0) {
FUN_1804e5060(param_1);
for (lVar4 = DAT_182673708; lVar4 != param_1; lVar4 = *(longlong *)(lVar4 + 0x18)) {
if (lVar4 == 0) goto LAB_18134c84f;
}
if (*(longlong *)(param_1 + 0x18) == 0) {
FUN_18133eae0(1);
}
else {
FUN_18133ed60(*(longlong *)(param_1 + 0x18),2,1);
}
}
LAB_18134c84f:
puVar3 = local_res8;
bVar7 = local_res8 != (undefined8 *)0x0;
lVar4 = lVar6;
if (bVar7) {
lVar4 = local_res8[2];
}
if (lVar4 != 0) {
FUN_1813452b0(param_1);
if (bVar7) {
lVar6 = puVar3[2];
}
if (((lVar6 != 0) && ((*(byte *)(param_1 + 0xa8) & 1) != 0)) &&
(plVar5 = (longlong *)FUN_18134c2e0(param_1), plVar5 != (longlong *)0x0)) {
(**(code **)(*plVar5 + 0x10))(plVar5,param_2);
FUN_181343670(param_1);
}
}
if (puVar3 != (undefined8 *)0x0) {
LOCK();
piVar1 = (int *)(puVar3 + 1);
iVar2 = *piVar1;
*piVar1 = *piVar1 + -1;
UNLOCK();
if (iVar2 == 1) {
(**(code **)*local_res8)(local_res8,1);
}
}
}
return;
}
--- [13] 0x18134c3a0 size=933 ---
void .?AV?$DigitalFilter@M$0BA@$01@@::vtbl___AV__DigitalFilter_M_0BA__01__
(longlong *param_1,uint param_2,undefined8 param_3)
{
int *piVar1;
undefined8 *puVar2;
int iVar3;
ulonglong uVar4;
longlong lVar5;
undefined8 *puVar6;
char cVar7;
int iVar8;
longlong *plVar9;
ulonglong *puVar10;
ulonglong uVar11;
undefined4 uVar12;
longlong *plVar13;
undefined8 *puVar14;
ulonglong uVar15;
undefined4 uVar16;
undefined4 uVar17;
undefined4 uVar18;
undefined4 uVar19;
char local_res20;
undefined8 *local_88;
longlong local_80;
undefined8 local_78;
undefined1 local_70 [8];
longlong *local_68;
undefined8 local_60;
undefined8 local_58;
undefined8 uStack_50;
local_78 = 0xfffffffffffffffe;
if ((*(byte *)(param_1 + 0x15) >> 2 & 1) == 0) {
param_2 = param_2 | 0x40000000;
}
else {
param_2 = param_2 & 0xbfffffff;
}
plVar9 = (longlong *)FUN_1812d2bd0();
if ((plVar9 != (longlong *)0x0) && (param_2 == *(uint *)(plVar9 + 2))) {
return;
}
FUN_1804de690(&local_88,param_1);
uVar15 = 0;
uVar4 = uVar15;
puVar6 = local_88;
for (plVar13 = param_1; local_88 = puVar6, plVar13 != (longlong *)0x0;
plVar13 = (longlong *)plVar13[3]) {
puVar10 = (ulonglong *)FUN_18051e290(local_70,plVar13,uVar4);
uVar4 = *puVar10;
puVar6 = local_88;
}
cVar7 = '\0';
local_res20 = '\0';
local_80 = 0;
uVar16 = 0;
uVar17 = 0;
uVar18 = 0;
uVar19 = 0;
local_58 = 0;
uStack_50 = 0;
iVar8 = -1;
if (plVar9 != (longlong *)0x0) {
local_68 = plVar9;
cVar7 = (**(code **)(*plVar9 + 0x78))(plVar9);
local_res20 = (**(code **)(*plVar9 + 0x68))(plVar9);
local_80 = plVar9[5];
uVar16 = *(undefined4 *)((longlong)plVar9 + 0x14);
uVar17 = (undefined4)plVar9[3];
local_58 = *(undefined8 *)((longlong)plVar9 + 0x14);
uVar18 = *(undefined4 *)((longlong)plVar9 + 0x1c);
uVar19 = (undefined4)plVar9[4];
uStack_50 = *(undefined8 *)((longlong)plVar9 + 0x1c);
iVar8 = (**(code **)(*plVar9 + 0x100))(plVar9);
*(byte *)(param_1 + 0x15) = *(byte *)(param_1 + 0x15) & 0xfe;
if (DAT_182673700 == 0) {
local_60 = FUN_1811316e0(0x130);
DAT_182673700 = FUN_18133c6c0(local_60);
}
FUN_180488600(DAT_182673700 + 0x58,param_1);
FUN_181343670(param_1);
uVar11 = uVar15;
if (puVar6 != (undefined8 *)0x0) {
uVar11 = puVar6[2];
}
if (uVar11 == 0) {
(**(code **)*plVar9)(plVar9,1);
goto LAB_18134c6f7;
}
FUN_18134bfe0(param_1,uVar4 & 0xffffffff,uVar4 >> 0x20,(int)param_1[5],
*(undefined4 *)((longlong)param_1 + 0x2c));
(**(code **)*plVar9)(plVar9,1);
}
lVar5 = param_1[3];
if (lVar5 != 0) {
plVar9 = *(longlong **)(lVar5 + 0x40);
for (plVar13 = plVar9; plVar13 != plVar9 + *(int *)(lVar5 + 0x4c); plVar13 = plVar13 + 1) {
if (param_1 == (longlong *)*plVar13) {
uVar12 = (undefined4)((longlong)plVar13 - (longlong)plVar9 >> 3);
goto LAB_18134c588;
}
}
uVar12 = 0xffffffff;
LAB_18134c588:
FUN_181343a90(lVar5,uVar12,1);
}
if (puVar6 != (undefined8 *)0x0) {
uVar15 = puVar6[2];
}
if (uVar15 != 0) {
*(byte *)(param_1 + 0x15) = *(byte *)(param_1 + 0x15) | 1;
plVar9 = (longlong *)(**(code **)(*param_1 + 0x150))(param_1,param_2,param_3);
if (DAT_182673700 == 0) {
local_60 = FUN_1811316e0(0x130);
DAT_182673700 = FUN_18133c6c0(local_60);
}
lVar5 = DAT_182673700;
plVar13 = (longlong *)(DAT_182673700 + 0x58);
puVar14 = (undefined8 *)*plVar13;
iVar3 = *(int *)(DAT_182673700 + 100);
puVar2 = puVar14 + iVar3;
for (; puVar14 != puVar2; puVar14 = puVar14 + 1) {
if (param_1 == (longlong *)*puVar14) goto LAB_18134c651;
}
if (*(int *)(DAT_182673700 + 0x60) < iVar3 + 1) {
FUN_18047cb30(plVar13,iVar3 + 9 + (iVar3 + 1) / 2 & 0xfffffff8);
}
iVar3 = *(int *)(lVar5 + 100);
*(int *)(lVar5 + 100) = iVar3 + 1;
*(longlong **)(*plVar13 + (longlong)iVar3 * 8) = param_1;
LAB_18134c651:
param_1[4] = uVar4;
FUN_18134b470(plVar9);
if (-1 < iVar8) {
(**(code **)(*plVar9 + 0x108))(plVar9,iVar8);
}
(**(code **)(*plVar9 + 0x10))(plVar9,*(byte *)(param_1 + 0x15) >> 1 & 1);
plVar9 = (longlong *)FUN_1812d2bd0(param_1);
if (plVar9 != (longlong *)0x0) {
if (cVar7 != '\0') {
(**(code **)(*plVar9 + 0x70))(plVar9,1);
*(undefined4 *)((longlong)plVar9 + 0x14) = uVar16;
*(undefined4 *)(plVar9 + 3) = uVar17;
*(undefined4 *)((longlong)plVar9 + 0x1c) = uVar18;
*(undefined4 *)(plVar9 + 4) = uVar19;
}
if (local_res20 != '\0') {
(**(code **)(*plVar9 + 0x60))(plVar9,1);
}
if ((*(byte *)((longlong)param_1 + 0xa9) & 1) != 0) {
(**(code **)(*plVar9 + 0xa8))(plVar9,1);
}
plVar9[5] = local_80;
FUN_18134bdf0(param_1);
FUN_181343670(param_1);
}
}
LAB_18134c6f7:
if (puVar6 != (undefined8 *)0x0) {
LOCK();
piVar1 = (int *)(puVar6 + 1);
iVar8 = *piVar1;
*piVar1 = *piVar1 + -1;
UNLOCK();
if (iVar8 == 1) {
(**(code **)*local_88)(local_88,1);
}
}
return;
}
--- [16] 0x18134c270 size=69 ---
undefined4 .?AV?$DigitalFilter@M$0BA@$01@@::vtbl___AV__DigitalFilter_M_0BA__01__(void)
{
undefined8 uVar1;
if (DAT_182673700 == 0) {
uVar1 = FUN_1811316e0(0x130);
DAT_182673700 = FUN_18133c6c0(uVar1);
}
return *(undefined4 *)(DAT_182673700 + 0xc0);
}
--- [17] 0x1805689c0 size=60 ---
void .?AV?$DigitalFilter@M$0BA@$01@@::vtbl___AV__DigitalFilter_M_0BA__01__(longlong *param_1)
{
if ((char)param_1[0x18] == '\0') {
FUN_180569ff0();
if (param_1[0x17] != 0) {
(**(code **)(*param_1 + 0x158))(param_1);
*(undefined1 *)(param_1 + 0x18) = 1;
}
}
return;
}
--- [19] 0x18134be30 size=195 ---
uint .?AV?$DigitalFilter@M$0BA@$01@@::vtbl___AV__DigitalFilter_M_0BA__01__
(longlong param_1,undefined4 param_2,undefined4 param_3)
{
longlong *plVar1;
ulonglong uVar2;
char cVar3;
uint uVar4;
ulonglong *puVar5;
longlong lVar6;
undefined1 local_res20 [8];
uVar4 = 0;
if ((*(byte *)(param_1 + 0xa8) & 8) == 0) {
return 1;
}
if ((*(byte *)(param_1 + 0xa8) & 0x10) != 0) {
uVar4 = *(int *)(param_1 + 0x4c) - 1;
lVar6 = (longlong)(int)uVar4;
if (-1 < (int)uVar4) {
do {
plVar1 = *(longlong **)(*(longlong *)(param_1 + 0x40) + lVar6 * 8);
if ((*(byte *)(plVar1 + 0x15) & 2) != 0) {
puVar5 = (ulonglong *)FUN_18051e060(local_res20,plVar1,CONCAT44(param_3,param_2));
uVar2 = *puVar5;
if ((((uint)uVar2 < *(uint *)(plVar1 + 5)) &&
((uint)(uVar2 >> 0x20) < *(uint *)((longlong)plVar1 + 0x2c))) &&
(cVar3 = (**(code **)(*plVar1 + 0x98))(plVar1,uVar2 & 0xffffffff,uVar2 >> 0x20),
cVar3 != '\0')) {
uVar4 = 1;
}
else {
uVar4 = 0;
}
if ((char)uVar4 != '\0') {
return 1;
}
}
lVar6 = lVar6 + -1;
} while (-1 < lVar6);
}
}
return uVar4 & 0xffffff00;
}
--- [21] 0x18134bcf0 size=66 ---
void .?AV?$DigitalFilter@M$0BA@$01@@::vtbl___AV__DigitalFilter_M_0BA__01__(longlong param_1)
{
undefined8 *puVar1;
if (((*(byte *)(param_1 + 0xa8) & 0x40) == 0) &&
(*(longlong **)(param_1 + 0x18) != (longlong *)0x0)) {
/* WARNING: Could not recover jumptable at 0x00018134bd0d. Too many branches */
/* WARNING: Treating indirect jump as call */
(**(code **)(**(longlong **)(param_1 + 0x18) + 0xa8))();
return;
}
puVar1 = (undefined8 *)FUN_1811316e0(8);
*puVar1 = juce::KeyboardFocusTraverser::vftable;
return;
}
--- [23] 0x18134bc50 size=126 ---
void .?AV?$DigitalFilter@M$0BA@$01@@::vtbl___AV__DigitalFilter_M_0BA__01__(longlong param_1)
{
longlong *plVar1;
undefined8 local_18;
undefined4 uStack_10;
undefined4 uStack_c;
if ((*(byte *)(param_1 + 0xa8) & 1) == 0) {
uStack_10 = *(undefined4 *)(param_1 + 0x28);
uStack_c = *(undefined4 *)(param_1 + 0x2c);
local_18 = 0;
FUN_181342870(0,&local_18,1);
}
else {
plVar1 = (longlong *)FUN_1812d2bd0();
if (plVar1 != (longlong *)0x0) {
/* WARNING: Could not recover jumptable at 0x00018134bc94. Too many branches */
/* WARNING: Treating indirect jump as call */
(**(code **)(*plVar1 + 0xf0))
(plVar1,(float)(int)(0xff - (uint)*(byte *)(param_1 + 0xac)) / DAT_1824c4548);
return;
}
}
return;
}
--- [25] 0x18058ad80 size=452 ---
/* WARNING: Globals starting with '_' overlap smaller symbols at the same address */
void .?AV?$DigitalFilter@M$0BA@$01@@::vtbl___AV__DigitalFilter_M_0BA__01__
(longlong *param_1,undefined8 param_2)
{
float fVar1;
float fVar2;
longlong lVar3;
byte *pbVar4;
int iVar5;
float local_68 [3];
undefined8 local_5c;
undefined8 uStack_54;
undefined8 local_4c;
(**(code **)(*param_1 + 0x160))();
fVar2 = DAT_1824c4548;
fVar1 = DAT_1824c3c8c;
iVar5 = 0;
if (0 < (int)param_1[0x130f]) {
pbVar4 = (byte *)((longlong)param_1 + 0x99c7);
do {
if (fVar1 <= (float)*pbVar4 / fVar2) {
FUN_181296c00(param_2,*(undefined4 *)((longlong)param_1 + (longlong)iVar5 * 4 + 0x99c4));
local_4c = 0x3f800000;
local_68[0] = 1.0;
local_68[1] = 0.0;
local_68[2] = 0.0;
local_5c = _DAT_1824c4780;
uStack_54 = _UNK_1824c4788;
FUN_181295d20(param_2,param_1 + ((longlong)iVar5 + 0x3d2) * 5,local_68,&local_5c);
}
iVar5 = iVar5 + 1;
pbVar4 = pbVar4 + 4;
} while (iVar5 < (int)param_1[0x130f]);
}
FUN_181296c00(param_2,(int)param_1[0x1338]);
local_5c = _DAT_1824c4780;
uStack_54 = _UNK_1824c4788;
local_4c = 0x3f800000;
if (*(code **)(param_1[0x16] + 8) == .?AUSoothe2VertexData@@::vtbl___AUSoothe2VertexData__) {
if (param_1[0x17] == 0) {
FUN_180569ff0(param_1);
}
lVar3 = param_1[0x17];
}
else {
lVar3 = (**(code **)(param_1[0x16] + 8))(param_1 + 0x16);
}
local_68[0] = *(float *)((longlong)param_1 + 0x99f4) * *(float *)(lVar3 + 0x88);
local_68[1] = 0.0;
local_68[2] = 0.0;
FUN_181295d20(param_2,param_1 + 0x1315,local_68,&local_5c);
if (*(code **)(*param_1 + 0x168) != _guard_check_icall) {
(**(code **)(*param_1 + 0x168))(param_1,param_2);
return;
}
return;
}
--- [33] 0x18058af50 size=179 ---
void .?AV?$DigitalFilter@M$0BA@$01@@::vtbl___AV__DigitalFilter_M_0BA__01__(longlong param_1)
{
float fVar1;
if (*(longlong *)(param_1 + 0xf8) != 0) {
FUN_18134bfe0(*(longlong *)(param_1 + 0xf8),0,0,*(undefined4 *)(param_1 + 0x28),
*(undefined4 *)(param_1 + 0x2c));
}
fVar1 = DAT_1824c3d8c;
*(undefined4 *)(param_1 + 0x99f8) = 0x41200000;
*(float *)(param_1 + 0x99dc) = (float)*(int *)(param_1 + 0x2c) * fVar1;
*(float *)(param_1 + 0x99e0) = (float)*(int *)(param_1 + 0x28) / (float)*(int *)(param_1 + 0x9890)
;
*(float *)(param_1 + 0x99fc) =
(fVar1 / *(float *)(param_1 + 0x99e8)) * (float)*(int *)(param_1 + 0x9894);
return;
}
--- [40] 0x18134b940 size=196 ---
void .?AV?$FilterGraph@M$05$0CAA@@@::vtbl___AV__FilterGraph_M_05_0CAA___
(undefined8 param_1,undefined8 param_2,undefined8 param_3,undefined8 param_4)
{
undefined8 *puVar1;
longlong *plVar2;
undefined8 uVar3;
uVar3 = 0xfffffffffffffffe;
if (DAT_182673c20 == (undefined8 *)0x0) {
puVar1 = (undefined8 *)FUN_1811316e0(0x28);
FUN_1812a59f0(puVar1);
FUN_1812a7230(puVar1 + 2);
*puVar1 = juce::ModalComponentManager::vftable;
puVar1[2] = juce::ModalComponentManager::vftable;
puVar1[3] = 0;
puVar1[4] = 0;
DAT_182673c20 = puVar1;
}
FUN_18133b010(DAT_182673c20,1,param_3,param_4,uVar3);
plVar2 = (longlong *)FUN_18134adf0(param_1);
if (*(code **)(*plVar2 + 0x78) == FUN_1812c6070) {
/* WARNING: Could not recover jumptable at 0x00018134b9e5. Too many branches */
/* WARNING: Treating indirect jump as call */
MessageBeep(0);
return;
}
(**(code **)(*plVar2 + 0x78))(plVar2);
return;
}
--- [42] 0x18134b870 size=87 ---
void .?AV?$FilterGraphGrid@M@@::vtbl___AV__FilterGraphGrid_M__
(undefined8 param_1,undefined4 param_2,undefined8 param_3)
{
undefined8 uVar1;
uVar1 = FUN_1811316e0(0x158);
FUN_18050dd00(uVar1,param_1,param_2,param_3,0);
return;
}
--- [44] 0x181a06ff0 size=323 ---
/* WARNING: Globals starting with '_' overlap smaller symbols at the same address */
void .?AVSoothe2FilterGraph@@::vtbl___AVSoothe2FilterGraph__(longlong param_1,undefined8 param_2)
{
float fVar1;
longlong lVar2;
byte local_res8;
byte local_res9;
byte local_resa;
undefined1 local_resb;
float local_48 [4];
undefined8 local_38;
undefined8 uStack_30;
ulonglong local_28;
if (*(int *)(*(longlong *)(*(longlong *)(param_1 + 0x9c70) + 0x168) + 0x30) != 1) {
FUN_18049fa40(local_48,DAT_18262e938);
FUN_18049fbb0(&local_res8,local_48[0],DAT_1824c3d18,local_48[2],
(char)((uint)DAT_18262e938 >> 0x18));
FUN_181296c00(param_2,CONCAT13(local_resb,
CONCAT12((char)(int)((float)local_resa * DAT_1824c3e14),
CONCAT11((char)(int)((float)local_res9 * DAT_1824c3e14),
(char)(int)((float)local_res8 * DAT_1824c3e14))
)));
fVar1 = *(float *)(param_1 + 0x99f4);
local_38 = _DAT_1824c4780;
uStack_30 = _UNK_1824c4788;
local_28 = (ulonglong)DAT_1824c3ea4;
lVar2 = (**(code **)(*(longlong *)(param_1 + 0xb0) + 8))();
local_48[0] = fVar1 * *(float *)(lVar2 + 0x88);
local_48[1] = 0.0;
local_48[2] = 0.0;
FUN_181295d20(param_2,param_1 + 0x209c80,local_48,&local_38);
}
return;
}
--- [46] 0x181a07170 size=1813 ---
void .?AVSoothe2FilterGraph@@::vtbl___AVSoothe2FilterGraph__(longlong param_1)
{
float fVar1;
float fVar2;
undefined4 uVar3;
undefined4 uVar4;
longlong *plVar5;
void *_Memory;
double dVar6;
char cVar7;
int iVar8;
undefined8 *puVar9;
undefined8 uVar10;
float *pfVar11;
int iVar12;
char *pcVar13;
int iVar14;
int iVar15;
int iVar16;
undefined8 *puVar17;
float *pfVar18;
float *pfVar19;
double dVar20;
float fVar21;
float fVar22;
int local_res8 [2];
int local_res10 [2];
longlong local_res18;
float *local_res20;
void *local_188;
undefined4 local_17c;
undefined1 local_138 [24];
float local_120 [56];
iVar14 = 0;
if (0 < *(int *)(param_1 + 0x9878)) {
pcVar13 = (char *)(param_1 + 0x9a02);
puVar17 = (undefined8 *)(param_1 + 0x9c8);
do {
if (*pcVar13 != '\0') {
plVar5 = *(longlong **)(param_1 + 0x140);
local_res10[0] = iVar14;
if (plVar5 == (longlong *)0x0) {
/* WARNING: Subroutine does not return */
std::_Xbad_function_call();
}
if ((undefined **)*plVar5 ==
std::
_Func_impl_no_alloc<std::function<float*___ptr64___cdecl(int)>,float_const*___ptr64,int>
::vftable) {
plVar5 = (longlong *)plVar5[8];
local_res8[0] = iVar14;
if (plVar5 == (longlong *)0x0) {
/* WARNING: Subroutine does not return */
std::_Xbad_function_call();
}
uVar10 = (**(code **)(*plVar5 + 0x10))(plVar5,local_res8);
*puVar17 = uVar10;
}
else {
uVar10 = (*(code *)((undefined **)*plVar5)[2])(plVar5,local_res10);
*puVar17 = uVar10;
}
}
iVar14 = iVar14 + 1;
puVar17 = puVar17 + 1;
pcVar13 = pcVar13 + 1;
} while (iVar14 < *(int *)(param_1 + 0x9878));
}
fVar2 = DAT_1824c41e0;
fVar1 = DAT_1824c3ea4;
pfVar11 = (float *)(*(longlong *)(param_1 + 0x9c78) + 0x2400d8);
local_res10[0] = *(int *)(*(longlong *)(*(longlong *)(param_1 + 0x9c70) + 0x168) + 0x30);
local_res20 = pfVar11;
if (local_res10[0] == 2) {
iVar14 = 0;
do {
iVar12 = 0;
if (0 < *(int *)(param_1 + 0x9878)) {
local_res18 = param_1 + 0x9c8;
pfVar18 = pfVar11;
do {
if (iVar12 == 0) {
iVar14 = __std_type_info_compare(0x182650db8,0x182650db8);
if (iVar14 != 0) {
/* WARNING: Subroutine does not return */
thunk_FUN_181ba94b0();
}
/* WARNING: Subroutine does not return */
thunk_FUN_181ba94b0();
}
plVar5 = *(longlong **)(param_1 + 0x180);
local_res8[0] = iVar12;
if (plVar5 == (longlong *)0x0) {
/* WARNING: Subroutine does not return */
std::_Xbad_function_call();
}
cVar7 = (**(code **)(*plVar5 + 0x10))(plVar5,local_res8);
if (cVar7 == '\0') {
if (iVar14 == 0) {
fVar21 = fVar1 - *pfVar18;
}
else {
fVar21 = *pfVar18;
}
uVar3 = *(undefined4 *)(param_1 + 0x9890);
fVar22 = fVar21 * fVar2;
if (fVar1 <= fVar21 * fVar2) {
fVar22 = fVar1;
}
iVar14 = __std_type_info_compare(0x182650db8,0x182650db8);
if (iVar14 != 0) {
/* WARNING: Subroutine does not return */
thunk_FUN_181ba94b0((double)(fVar1 - fVar22),param_1 + 0x209ca8,uVar3);
}
/* WARNING: Subroutine does not return */
thunk_FUN_181ba94b0();
}
local_res18 = local_res18 + 8;
iVar12 = iVar12 + 1;
pfVar18 = pfVar18 + 1;
pfVar11 = local_res20;
} while (iVar12 < *(int *)(param_1 + 0x9878));
}
iVar14 = iVar14 + 1;
} while (iVar14 < 2);
}
else {
iVar14 = 0;
if (0 < *(int *)(param_1 + 0x9878)) {
puVar17 = (undefined8 *)(param_1 + 0x9c8);
do {
plVar5 = *(longlong **)(param_1 + 0x180);
local_res8[0] = iVar14;
if (iVar14 == 0) {
if (plVar5 == (longlong *)0x0) {
/* WARNING: Subroutine does not return */
std::_Xbad_function_call();
}
cVar7 = (**(code **)(*plVar5 + 0x10))(plVar5,local_res8);
uVar3 = *(undefined4 *)(param_1 + 0x9890);
if (cVar7 != '\0') {
iVar14 = __std_type_info_compare(0x182650db8,0x182650db8);
if (iVar14 != 0) {
/* WARNING: Subroutine does not return */
thunk_FUN_181ba94b0();
}
/* WARNING: Subroutine does not return */
thunk_FUN_181ba94b0();
}
uVar10 = *(undefined8 *)(param_1 + 0x9c8);
iVar14 = __std_type_info_compare(0x182650db8,0x182650db8);
if (iVar14 != 0) {
/* WARNING: Subroutine does not return */
thunk_FUN_181ba94b0(uVar10,param_1 + 0x9c80,uVar3);
}
/* WARNING: Subroutine does not return */
thunk_FUN_181ba94b0();
}
if (plVar5 == (longlong *)0x0) {
/* WARNING: Subroutine does not return */
std::_Xbad_function_call();
}
cVar7 = (**(code **)(*plVar5 + 0x10))(plVar5,local_res8);
if (cVar7 == '\0') {
uVar3 = *(undefined4 *)(param_1 + 0x9890);
uVar10 = *puVar17;
iVar14 = __std_type_info_compare(0x182650db8,0x182650db8);
if (iVar14 != 0) {
/* WARNING: Subroutine does not return */
thunk_FUN_181ba94b0(uVar10,param_1 + 0x9c80,uVar3);
}
/* WARNING: Subroutine does not return */
thunk_FUN_181ba94b0();
}
iVar14 = iVar14 + 1;
puVar17 = puVar17 + 1;
} while (iVar14 < *(int *)(param_1 + 0x9878));
}
}
*(undefined4 *)(param_1 + 0x9a10) = *(undefined4 *)(param_1 + 0x99dc);
*(undefined4 *)(param_1 + 0x9a0c) = 0;
iVar14 = *(int *)(param_1 + 0x2c);
fVar1 = *(float *)(param_1 + 0x9b14);
fVar2 = *(float *)(param_1 + 0x9b10);
local_res18 = CONCAT44(local_res18._4_4_,fVar1);
_eh_vector_constructor_iterator_(local_138,0x28,2,FUN_18129e350,FUN_18129e330);
dVar6 = DAT_1824c42b0;
local_res20 = (float *)(longlong)local_res10[0];
local_res8[0] = 0;
if (0 < local_res10[0]) {
pfVar18 = (float *)(param_1 + 0x9c84);
pfVar11 = local_120;
do {
iVar12 = local_res8[0];
iVar15 = *(int *)(param_1 + 0x9894) + -1;
dVar20 = log10((double)pfVar18[-1]);
iVar8 = (int)((((float)(dVar20 * dVar6) - fVar2) * ((float)iVar15 - 0.0)) / (fVar1 - fVar2) +
0.0);
iVar16 = 0;
if ((-1 < iVar8) && (iVar16 = iVar8, iVar15 < iVar8)) {
iVar16 = iVar15;
}
fVar21 = (float)iVar14 - (float)iVar14 * *(float *)(param_1 + 0x19f8 + (longlong)iVar16 * 4);
if (pfVar11[-3] == 0.0) {
*pfVar11 = fVar21;
pfVar11[-2] = 0.0;
pfVar11[-1] = 0.0;
LAB_181a0775d:
pfVar11[1] = fVar21;
}
else {
if (pfVar11[-2] <= 0.0) {
if (pfVar11[-1] <= 0.0 && pfVar11[-1] != 0.0) {
pfVar11[-1] = 0.0;
}
}
else {
pfVar11[-2] = 0.0;
}
if (*pfVar11 <= fVar21) {
if (pfVar11[1] <= fVar21 && fVar21 != pfVar11[1]) goto LAB_181a0775d;
}
else {
*pfVar11 = fVar21;
}
}
FUN_1804b02a0(pfVar11 + -6,&DAT_1821df344,0);
iVar8 = 1;
iVar16 = iVar12;
if (1 < *(int *)(param_1 + 0x9890)) {
pfVar19 = pfVar18;
do {
log10((double)*pfVar19);
FUN_18129ddd0(local_138 + (longlong)iVar12 * 0x28);
iVar8 = iVar8 + 1;
pfVar19 = pfVar19 + 1;
iVar16 = local_res8[0];
} while (iVar8 < *(int *)(param_1 + 0x9890));
}
local_res8[0] = iVar16 + 1;
pfVar11 = pfVar11 + 10;
pfVar18 = pfVar18 + 0x200;
local_res20 = (float *)((longlong)local_res20 + -1);
} while (local_res20 != (float *)0x0);
local_res20 = (float *)0x0;
}
puVar9 = (undefined8 *)FUN_18129a910(local_138,&local_188,*(undefined4 *)(param_1 + 0x99f8));
puVar17 = (undefined8 *)(param_1 + 0x98a8);
if (puVar17 == puVar9) {
uVar10 = puVar9[3];
*(undefined8 *)(param_1 + 0x98b8) = puVar9[2];
*(undefined8 *)(param_1 + 0x98c0) = uVar10;
*(undefined1 *)(param_1 + 0x98c8) = *(undefined1 *)(puVar9 + 4);
local_17c = 0;
/* WARNING: Subroutine does not return */
free(local_188);
}
uVar10 = *puVar9;
*puVar9 = 0;
uVar3 = *(undefined4 *)(puVar9 + 1);
uVar4 = *(undefined4 *)((longlong)puVar9 + 0xc);
puVar9[1] = 0;
_Memory = (void *)*puVar17;
*puVar17 = uVar10;
*(undefined4 *)(param_1 + 0x98b0) = uVar3;
*(undefined4 *)(param_1 + 0x98b4) = uVar4;
/* WARNING: Subroutine does not return */
free(_Memory);
}
--- [49] 0x18052cfb0 size=61 ---
void .?AV?$AudioProcessingModule@M$01@@::vtbl___AV__AudioProcessingModule_M_01__(longlong param_1)
{
FUN_1812b4430(param_1 + 0x14,0,2);
*(float *)(param_1 + 0x58) = (float)(DAT_1824c4230 / (double)*(float *)(param_1 + 0x24));
return;
}
--- [51] 0x18058c850 size=83 ---
void .?AV?$LowPassFilter@M$0BA@$01@@::vtbl___AV__LowPassFilter_M_0BA__01__
(longlong param_1,float *param_2,int param_3)
{
uint uVar1;
float *pfVar2;
float fVar3;
pfVar2 = (float *)(param_1 + 0x6c + (longlong)param_3 * 0x40);
uVar1 = 0;
if (*(int *)(param_1 + 100) != 0) {
do {
uVar1 = uVar1 + 1;
fVar3 = *param_2 * *(float *)(param_1 + 0xf0);
*param_2 = fVar3;
fVar3 = *(float *)(param_1 + 0x60) * *pfVar2 + fVar3;
*param_2 = fVar3;
*pfVar2 = fVar3;
pfVar2 = pfVar2 + 1;
} while (uVar1 < *(uint *)(param_1 + 100));
}
return;
}
--- [52] 0x18058c8b0 size=74 ---
void .?AV?$LowPassFilter@M$0BA@$01@@::vtbl___AV__LowPassFilter_M_0BA__01__(longlong param_1)
{
double dVar1;
float fVar2;
fVar2 = expf((*(float *)(param_1 + 0x68) / *(float *)(param_1 + 0x24)) *
*(float *)(param_1 + 0xf4));
dVar1 = DAT_1824c4140;
*(float *)(param_1 + 0x60) = fVar2;
*(float *)(param_1 + 0xf0) = (float)(dVar1 - (double)fVar2);
return;
}
--- [53] 0x18058c7b0 size=149 ---
void .?AV?$LowPassFilter@M$0BA@$01@@::vtbl___AV__LowPassFilter_M_0BA__01__
(longlong param_1,uint param_2)
{
double dVar1;
double dVar2;
float fVar3;
dVar1 = DAT_1824c4140;
*(uint *)(param_1 + 100) = param_2;
dVar2 = pow(DAT_1824c41e8,dVar1 / (double)param_2);
dVar2 = sqrt(dVar2 - dVar1);
fVar3 = (float)((dVar1 / dVar2) * DAT_1824c46b8);
*(float *)(param_1 + 0xf4) = fVar3;
fVar3 = expf((*(float *)(param_1 + 0x68) / *(float *)(param_1 + 0x24)) * fVar3);
*(float *)(param_1 + 0x60) = fVar3;
*(float *)(param_1 + 0xf0) = (float)(dVar1 - (double)fVar3);
return;
}
--- [63] 0x18058b500 size=275 ---
/* WARNING: Function: __security_check_cookie replaced with injection: security_check_cookie */
void .?AV?$LowPassFilter@M$0BA@$01@@::vtbl___AV__LowPassFilter_M_0BA__01__
(longlong param_1,undefined8 param_2,undefined8 *param_3)
{
uint *_Memory;
uint uVar1;
undefined8 uVar2;
double dVar3;
int iVar4;
undefined8 *puVar5;
undefined4 uVar6;
undefined1 auStack_78 [32];
longlong local_58;
undefined8 local_50;
undefined8 *local_48;
longlong *local_40;
undefined1 local_38 [8];
ulonglong local_30;
local_50 = 0xfffffffffffffffe;
local_30 = DAT_182615970 ^ (ulonglong)auStack_78;
local_58 = *(longlong *)(param_1 + 0x9b50);
_Memory = (uint *)(local_58 + -0x10);
if ((*_Memory & 0x30000000) == 0) {
LOCK();
*_Memory = *_Memory + 1;
UNLOCK();
}
local_48 = param_3;
iVar4 = FUN_18048cbc0(param_2,local_58);
if ((*_Memory & 0x30000000) == 0) {
LOCK();
uVar1 = *_Memory;
*_Memory = *_Memory - 1;
UNLOCK();
if (uVar1 == 0) {
/* WARNING: Subroutine does not return */
free(_Memory);
}
}
if ((iVar4 == 0) && (*(longlong *)(param_1 + 0x18) != 0)) {
puVar5 = (undefined8 *)
(**(code **)(*(longlong *)(param_1 + 0x9b48) + 0x10))
((longlong *)(param_1 + 0x9b48),&local_40);
dVar3 = (double)(**(code **)(*(longlong *)*puVar5 + 0x18))((longlong *)*puVar5,puVar5 + 1);
(**(code **)(*local_40 + 0xb0))(local_40,local_38);
uVar2 = *(undefined8 *)(param_1 + 0x18);
uVar6 = FUN_180487300(param_1 + 0x9958,(float)dVar3);
FUN_18058cb60(uVar2,uVar6);
}
(**(code **)(*(longlong *)*param_3 + 0xb0))((longlong *)*param_3,param_3 + 1);
}
############ VTABLE FilterGraph_6_0x400 0x1824be228
SLOTLIST:
[0] 0x18058eb1c size=12
[1] 0x18058b010 size=176
[2] 0x18251ab48 size=0
[3] 0x18058eab0 size=12
[4] 0x18160b000 size=4718
[5] 0x1804714b0 size=3
[6] 0x18251a6c8 size=0
[7] 0x1805893c0 size=52
[8] 0x18134bc00 size=3
[9] 0x18134bbf0 size=3
[10] 0x18134bbe0 size=3
[11] 0x18134bbd0 size=3
[12] 0x18134bbc0 size=3
[13] 0x18134bbb0 size=3
[14] 0x18134bba0 size=3
[15] 0x18134bb30 size=93
[16] 0x18134bad0 size=82
[17] 0x18134c900 size=397
[18] 0x18134c760 size=397
[19] 0x18134c750 size=3
[20] 0x18134c3a0 size=933
[21] 0x18134c2d0 size=3
[22] 0x18134c2c0 size=3
[23] 0x18134c270 size=69
[24] 0x18134bf10 size=3
[25] 0x18134bf00 size=3
[26] 0x18134be30 size=195
[27] 0x18134bde0 size=3
[28] 0x18134bcf0 size=66
[29] 0x18134bce0 size=3
[30] 0x18134bc50 size=126
[31] 0x18134bc20 size=34
[32] 0x18134ade0 size=3
[33] 0x18134bc10 size=3
[34] 0x18134bac0 size=3
[35] 0x18134bab0 size=3
[36] 0x18134ba90 size=20
[37] 0x18134ba80 size=3
[38] 0x18134ba70 size=3
[39] 0x18134ba60 size=3
[40] 0x18160c410 size=1445
[41] 0x18134ba50 size=3
[42] 0x18134adc0 size=3
[43] 0x18134ba40 size=3
[44] 0x18134ba30 size=3
[45] 0x18134ba20 size=3
[46] 0x18134ba10 size=3
[47] 0x18134b940 size=196
[48] 0x18134b930 size=3
[49] 0x18134b870 size=87
[50] 0x18251aed8 size=0
[51] 0x18058e360 size=22
[52] 0x18058e360 size=22
[53] 0x18058e380 size=124
[54] 0x18058e350 size=8
[55] 0x18048dc80 size=15
[56] 0x180481210 size=5
[57] 0x18251ab70 size=0
[58] 0x18058eb04 size=12
[59] 0x1804714b0 size=3
[60] 0x18058b220 size=318
[61] 0x18058b0c0 size=313
[62] 0x1804714b0 size=3
[63] 0x18251ac50 size=0
CCODE:
--- [1] 0x18058b010 size=176 ---
void .?AV?$FilterGraph@M$05$0CAA@@@::vtbl___AV__FilterGraph_M_05_0CAA___(longlong param_1)
{
byte *pbVar1;
ulonglong uVar2;
byte bVar3;
undefined8 local_18;
undefined4 uStack_10;
undefined4 uStack_c;
uVar2 = (ulonglong)*(uint *)(param_1 + 0x97b0);
if (0 < (int)*(uint *)(param_1 + 0x97b0)) {
bVar3 = *(byte *)(param_1 + 0x9939);
pbVar1 = (byte *)(param_1 + 0x993a);
do {
bVar3 = bVar3 | *pbVar1;
pbVar1 = pbVar1 + 1;
*(byte *)(param_1 + 0x9939) = bVar3;
uVar2 = uVar2 - 1;
} while (uVar2 != 0);
}
if (*(char *)(param_1 + 0x9939) != '\0') {
(**(code **)(*(longlong *)(param_1 + -200) + 0x170))(param_1 + -200);
uStack_10 = *(undefined4 *)(param_1 + -0xa0);
uStack_c = *(undefined4 *)(param_1 + -0x9c);
local_18 = 0;
FUN_181342870(param_1 + -200,&local_18,1);
*(undefined1 *)(param_1 + 0x9939) = 0;
}
return;
}
--- [4] 0x18160b000 size=4718 ---
/* WARNING: Instruction at (ram,0x00018160bbc8) overlaps instruction at (ram,0x00018160bbc3)
*/
/* WARNING: Function: __security_check_cookie replaced with injection: security_check_cookie */
/* WARNING: Removing unreachable block (ram,0x00018160b5f3) */
/* WARNING: Removing unreachable block (ram,0x00018160b060) */
/* WARNING: Removing unreachable block (ram,0x00018160b041) */
/* WARNING: Removing unreachable block (ram,0x00018160b229) */
/* WARNING: Removing unreachable block (ram,0x00018160bbc3) */
/* WARNING: Removing unreachable block (ram,0x00018160b46f) */
/* WARNING: Globals starting with '_' overlap smaller symbols at the same address */
/* WARNING: Restarted to delay deadcode elimination for space: stack */
void .?AV?$FilterGraph@M$05$0CAA@@@::vtbl___AV__FilterGraph_M_05_0CAA___
(longlong param_1,int param_2,undefined8 param_3)
{
uint uVar1;
uint uVar2;
byte bVar3;
undefined8 uVar4;
longlong lVar5;
undefined1 *puVar6;
uint uVar7;
ulonglong uVar8;
uint uVar9;
uint uVar10;
uint uVar11;
uint uVar12;
uint *puVar13;
uint uVar14;
longlong lVar15;
undefined4 *puVar16;
ulonglong uVar17;
longlong *plVar18;
uint *puVar19;
uint *puVar20;
undefined1 *puVar21;
undefined8 uVar22;
uint uVar23;
uint uVar24;
uint uVar25;
uint uVar26;
uint uVar27;
int iVar28;
uint uVar29;
ulonglong uVar30;
uint uVar31;
longlong lVar32;
bool bVar33;
int unaff_retaddr;
undefined1 auStack_148 [32];
int local_128;
uint local_124;
uint *local_120;
undefined *local_118;
uint local_110;
uint local_10c;
uint local_108;
uint local_104;
uint local_100;
uint local_fc;
int local_f8;
undefined8 local_f0;
undefined4 local_e8;
uint local_e4;
int local_e0;
uint local_dc;
code *local_d8;
longlong local_d0;
undefined8 local_c8;
undefined4 local_c0;
undefined4 local_bc;
longlong local_b8;
longlong local_b0;
longlong local_a8;
code *local_a0;
uint local_94;
uint local_90;
undefined4 local_80;
uint local_7c;
int local_78;
uint local_74;
undefined1 local_68 [8];
uint local_60;
uint local_5c;
ulonglong local_40;
local_40 = DAT_182615970 ^ (ulonglong)auStack_148;
uVar29 = (uint)&stack0x00000000 & 0x3ff;
local_dc = 0x9ea5 - ((uVar29 + 2) * (uVar29 + 1) * uVar29) % 3 ^ 0x9655;
local_e0 = 0x420;
local_f0 = 0x100;
local_120 = &DAT_18163cb4c;
local_118 = &DAT_18163cc4c;
uVar29 = (DAT_18163cb4c ^ 0x811c9e53) * 0x10001d1;
uVar30 = (ulonglong)uVar29;
uVar29 = _DAT_18163cb78 ^
(_DAT_18163cb74 ^
(_DAT_18163cb70 ^
(_DAT_18163cb6c ^
(_DAT_18163cb68 ^
(DAT_18163cb64 ^
(DAT_18163cb60 ^
(DAT_18163cb5c ^
(DAT_18163cb58 ^ (DAT_18163cb54 ^ (DAT_18163cb50 ^ uVar29) * 0x10001d1) * 0x10001d1) *
0x10001d1) * 0x10001d1) * 0x10001d1) * 0x10001d1) * 0x10001d1) * 0x10001d1) * 0x10001d1)
* 0x10001d1;
local_f8 = param_2;
local_d0 = param_1;
local_c8 = param_3;
do {
uVar22 = rdtsc();
local_110 = (uint)uVar22 ^ (uint)((ulonglong)uVar22 >> 0x20);
FUN_18160962e();
uVar9 = (unaff_retaddr + 1) * unaff_retaddr & 0x80000001;
if ((int)uVar9 < 0) {
uVar9 = (uVar9 - 1 | 0xfffffffe) + 1;
}
} while (uVar9 != 0);
local_110 = (local_110 * -0x3d4d4602 >> 0x18 ^ local_110 * -0x3d4d4602) * -0x3b313595;
if (local_110 < 0x430fc8) {
do {
local_d8 = FUN_1813f2240;
uVar9 = (unaff_retaddr + 1) * unaff_retaddr & 0x80000001;
if ((int)uVar9 < 0) {
uVar9 = (uVar9 - 1 | 0xfffffffe) + 1;
}
} while (uVar9 != 0);
uVar8 = FUN_1813f2240(0,0x672d);
if (1 < uVar8) {
FUN_18113eab0();
}
}
lVar15 = 0x17;
uVar29 = (_DAT_18163cb7c ^ uVar29 * 0x10001d1) * 0x10001d1;
local_118 = (undefined *)0xeb1172bd7cee29a8;
puVar19 = (uint *)&DAT_18163cb80;
local_120 = (uint *)CONCAT44(local_120._4_4_,0x7cee29a8);
do {
uVar9 = *puVar19;
puVar19 = puVar19 + 1;
uVar29 = (uVar9 ^ uVar29) * 0x10001d1;
lVar15 = lVar15 + -1;
} while (lVar15 != 0);
uVar29 = (*puVar19 ^ uVar29) * 0x10001d1;
if ((uVar29 >> 8 & 1) == 0) {
uVar9 = uVar29 & 0x27f;
iVar28 = (uVar9 + 2) * (uVar9 + 1) * uVar9;
uVar9 = ((iVar28 >> 1) - (iVar28 >> 3)) + iVar28 * 0x55555555 >> 0x1e;
}
else {
uVar9 = uVar29 & 0x3f;
uVar9 = (uVar9 + 1) * (uVar9 + 1) * uVar9 * uVar9 & 1;
}
uVar9 = 0xf642 - uVar9 ^ 0xf542;
puVar20 = (uint *)((longlong)puVar19 + (longlong)(int)uVar9 + -0x2f4);
uVar24 = (uint)puVar20 & 0xff;
uVar9 = (*puVar20 ^
(*(uint *)((longlong)puVar19 + (longlong)(int)uVar9 + -0x2f8) ^
(*(uint *)((longlong)puVar19 + (longlong)(int)uVar9 + -0x2fc) ^ uVar29) * 0x10001d1) *
0x10001d1) * 0x10001d1;
uVar29 = uVar9 & 0x3bff;
uVar29 = ((uVar29 + 1) * uVar29 + 7) % 0x51 - ((uVar24 + 2) * (uVar24 + 1) * uVar24) % 3;
puVar20 = (uint *)((longlong)puVar20 +
(0x204 - (ulonglong)(~((int)(uVar29 | -uVar29) >> 0x1f & 0xfffffdffU) & 0xfae7))
);
bVar33 = puVar20 == (uint *)0x0;
bVar3 = POPCOUNT((ulonglong)puVar20 & 0xff);
do {
if (((bVar3 & 1) == 0) && (bVar33)) {
uVar30 = ~(~uVar30 + 1) + 1;
}
uVar29 = (unaff_retaddr + 1) * unaff_retaddr & 0x80000001;
if ((int)uVar29 < 0) {
uVar29 = (uVar29 - 1 | 0xfffffffe) + 1;
}
bVar33 = uVar29 == 0;
bVar3 = POPCOUNT(uVar29 & 0xff);
} while (!bVar33);
uVar24 = (int)puVar20 + 4U & 0x5f;
uVar26 = (puVar20[1] ^ (*puVar20 ^ uVar9) * 0x10001d1) * 0x10001d1;
uVar29 = uVar26 & 0x1f;
puVar20 = (uint *)((longlong)puVar20 +
(((longlong)
(int)(((uVar24 + 1) * (uVar24 + 1) * uVar24 * uVar24 & 1) +
((uVar29 + 1) * (uVar29 + 1) * uVar29 * uVar29 & 0x80000003)) ^ 0x400U) -
0x3f8));
uVar29 = *puVar20;
uVar9 = puVar20[1];
uVar24 = puVar20[2];
uVar25 = puVar20[3];
uVar27 = puVar20[4];
uVar1 = puVar20[5];
do {
local_e8 = 0xf4b58d1e;
uVar10 = (unaff_retaddr + 1) * unaff_retaddr & 0x80000001;
if ((int)uVar10 < 0) {
uVar10 = (uVar10 - 1 | 0xfffffffe) + 1;
}
} while (uVar10 != 0);
uVar10 = puVar20[6];
uVar2 = puVar20[7];
do {
local_c0 = 0x72;
local_b8 = 0x18160b707;
uVar11 = (unaff_retaddr + 1) * unaff_retaddr & 0x80000001;
if ((int)uVar11 < 0) {
uVar11 = (uVar11 - 1 | 0xfffffffe) + 1;
}
} while (uVar11 != 0);
local_128 = 0x101f68d;
do {
plVar18 = &local_b0;
puVar16 = &local_bc;
puVar19 = &local_104;
FUN_18160cf73();
*puVar19 = 0x4816aad0;
*puVar16 = 0x6c;
*plVar18 = 0x18160b7e7;
uVar11 = (unaff_retaddr + 1) * unaff_retaddr & 0x80000001;
if ((int)uVar11 < 0) {
uVar11 = (uVar11 - 1 | 0xfffffffe) + 1;
}
} while (uVar11 != 0);
lVar15 = local_128 + local_b8;
uVar11 = local_104 << 4;
uVar14 = local_104 >> 0x1c;
uVar7 = local_104 >> 4;
uVar23 = local_104 << 0x1c;
local_128 = 0;
local_104 = 0;
uVar11 = ((uVar7 | uVar23) & 0xe1e1e1e1 | (uVar11 | uVar14) & 0x1e1e1e1e) ^ 0xe5d863fd;
uVar14 = ((uVar11 & 0x33333333) << 2 | uVar11 >> 2 & 0x33333333) + 0x87604ead;
uVar11 = (uVar14 >> 0xf ^ uVar14) & 0x3fff;
uVar14 = uVar14 ^ (uVar11 << 0xf | uVar11);
uVar14 = ((uVar14 << 0x10 | uVar14 >> 0x10) & 0xed1212ed |
(uVar14 >> 0x10 | uVar14 << 0x10) & 0x12eded12) ^ 0xb938882a;
uVar11 = (uVar14 >> 0xe ^ uVar14) >> 2 & 0x3fff;
uVar14 = uVar14 ^ (uVar11 << 0xe | uVar11) << 2;
lVar32 = ((longlong)(int)(uVar14 << 0x10 | uVar14 >> 0x10) & 0xffffffffcb0934f6U |
(ulonglong)((uVar14 >> 0x10 | uVar14 << 0x10) & 0x34f6cb09)) + local_b0;
*(longlong *)(lVar15 + 4) =
*(longlong *)(lVar15 + 4) +
(ulonglong)((uint)(*(ulonglong *)(lVar32 + 4) >> 0x1b) & 0x45210049);
do {
puVar19 = &local_e4;
puVar13 = &local_124;
FUN_18160a47b();
uVar22 = rdtsc();
uVar11 = (int)uVar22 + (int)((ulonglong)uVar22 >> 0x20);
*puVar19 = uVar11;
uVar8 = (ulonglong)uVar11 * -0x47ff - 0x419c2dc1;
uVar8 = uVar8 - (uVar8 * 0x20 | uVar8 >> 0x3b);
*puVar13 = (uint)((uVar8 ^ (uVar8 >> 0xd) - 0x3b73948f) * 0x101 - 0x6d2a332 >> 5) & 0xc78b3a8e;
lVar5 = local_d0;
uVar11 = (unaff_retaddr + 1) * unaff_retaddr & 0x80000001;
if ((int)uVar11 < 0) {
uVar11 = (uVar11 - 1 | 0xfffffffe) + 1;
}
} while (uVar11 != 0);
*(int *)(lVar15 + 8) = *(int *)(lVar15 + 8) + (local_124 ^ 0x328b734b);
*(int *)(lVar15 + 4) = *(int *)(lVar15 + 4) + (local_124 ^ 0xc0006fe8);
uVar17 = (*(ulonglong *)(lVar15 + 4) << 0x21 | *(ulonglong *)(lVar15 + 4) >> 0x1f) +
0xb0379220c452d670;
uVar8 = (ulonglong)((uint)((uVar17 >> 0x1e ^ uVar17) >> 2) & 0x1fffff);
uVar8 = ((uVar8 << 0x1e | uVar8) << 2 ^ uVar17) + 0xba631318a0d4a7cb;
uVar17 = (uVar8 >> 4 | uVar8 << 0x3c) & 0xc3c3c3c3c3c3c3c3 |
(uVar8 * 0x10 | uVar8 >> 0x3c) & 0x3c3c3c3c3c3c3c3c;
uVar11 = (uint)((uVar17 >> 9 ^ uVar17) >> 0x1a) & 1;
uVar8 = ((ulonglong)uVar11 << 9 | (ulonglong)uVar11) << 0x1a ^ uVar17;
uVar8 = ((uVar8 << 4 | uVar17 >> 0x3c) & 0xe1e1e1e1e1e1e1e1 |
(uVar8 >> 4 | uVar17 << 0x3c) & 0x1e1e1e1e1e1e1e1e) + 0xcbb348cc940fcd7a;
uVar8 = (uVar8 >> 2 | uVar8 << 0x3e) & 0x9999999999999999 |
(uVar8 * 4 | uVar8 >> 0x3e) & 0x6666666666666666;
*(ulonglong *)(lVar15 + 4) = uVar8;
plVar18 = (longlong *)(lVar32 + 4);
*plVar18 = *plVar18 + (ulonglong)((uint)(uVar8 >> 0xf) & 0x20230248);
local_124 = (uint)(*(ulonglong *)(lVar15 + 4) >> 0x1b) & 0x7fffffff;
local_108 = (uint)(*(ulonglong *)(lVar15 + 4) >> 0x19) ^ 0xb9d9b711;
local_118 = (undefined *)(*(ulonglong *)(lVar15 + 4) ^ 0x49746e3163e2e07a);
uVar29 = (puVar20[0xb] ^
(puVar20[10] ^
(puVar20[9] ^
(puVar20[8] ^
(uVar2 ^ (uVar10 ^ (uVar1 ^ (uVar27 ^ (uVar25 ^ (uVar24 ^ (uVar9 ^ (uVar29 ^ uVar26) *
0x10001d1) * 0x10001d1
) * 0x10001d1) * 0x10001d1) * 0x10001d1)
* 0x10001d1) * 0x10001d1) * 0x10001d1) * 0x10001d1) * 0x10001d1) *
0x10001d1) * 0x10001d1;
local_f0 = CONCAT44(local_f0._4_4_,uVar29);
do {
uVar9 = (unaff_retaddr + 1) * unaff_retaddr & 0x80000001;
if ((int)uVar9 < 0) {
uVar9 = (uVar9 - 1 | 0xfffffffe) + 1;
}
} while (uVar9 != 0);
local_90 = (uint)local_118;
uVar9 = ((local_90 ^ local_108) & 0x6593f979 ^ local_108) + 0x4ed1481b;
uVar24 = ((local_90 ^ local_108) & 0x9a6c0686 ^ local_108) + 0xaef7aa14;
uVar27 = (int)((ulonglong)local_118 >> 0x20) + 0x7bc739d3;
uVar25 = (uVar9 * 0x100 | uVar9 >> 0x18) & 0x9a659a65 |
(uVar9 >> 8 | uVar9 * 0x1000000) & 0x659a659a;
uVar27 = uVar27 >> 2 & 0xcccccccc | uVar27 * 0x40000000 | uVar27 * 4 & 0x33333333 | uVar27 >> 0x1e
;
uVar24 = ((uVar24 * 0x10000 | uVar24 >> 0x10) & 0xc73b38c4 |
(uVar24 >> 0x10 | uVar24 * 0x10000) & 0x38c4c73b) ^ uVar25;
uVar9 = uVar24 & 0x8a578475 ^ uVar25;
uVar22 = 0x1f67ec24;
uVar24 = uVar24 & 0x75a87b8a ^ uVar25 ^ uVar9;
uVar25 = uVar24 & 0x44465b56 ^ uVar9;
uVar9 = uVar24 & 0xbbb9a4a9 ^ uVar9;
uVar24 = uVar25 >> 0x19 | uVar25 << 7;
uVar25 = (uVar27 >> 10 | uVar27 << 0x16) ^ uVar24;
uVar31 = (uVar9 >> 0x1f | uVar9 << 1) ^ 0xea2cbcd1;
uVar8 = (ulonglong)uVar31;
uVar7 = uVar25 & 0xddffbe9c ^ uVar24;
uVar23 = uVar25 & 0x22004163 ^ uVar24 ^ uVar7;
uVar9 = puVar20[0xc];
uVar24 = puVar20[0xd];
uVar25 = puVar20[0xe];
uVar27 = puVar20[0xf];
uVar1 = puVar20[0x10];
uVar26 = puVar20[0x11];
uVar10 = puVar20[0x12];
uVar2 = puVar20[0x13];
uVar11 = puVar20[0x14];
uVar14 = puVar20[0x15];
do {
uVar4 = rdtsc();
local_e4 = (int)uVar4 - (int)((ulonglong)uVar4 >> 0x20);
uVar17 = (ulonglong)local_e4 - ((ulonglong)(local_e4 >> 5) - 0x3dd514ae) >> 8;
uVar17 = uVar17 + (~-uVar17 + 1) * 0x200 + -0x72ddc7ad;
uVar17 = uVar17 ^ uVar17 * 0x200;
uVar12 = (unaff_retaddr + 1) * unaff_retaddr & 0x80000001;
if ((int)uVar12 < 0) {
uVar12 = (uVar12 - 1 | 0xfffffffe) + 1;
}
} while (uVar12 != 0);
local_100 = (uint)((int)uVar17 - (int)(uVar17 << 5)) >> 1 ^ local_124;
local_94 = local_108;
if (local_100 < 0xd698) {
do {
uVar12 = (unaff_retaddr + 1) * unaff_retaddr & 0x80000001;
if ((int)uVar12 < 0) {
uVar12 = (uVar12 - 1 | 0xfffffffe) + 1;
}
} while (uVar12 != 0);
local_10c = 0x7432a569;
local_80 = 0x1f67ec24;
local_7c = uVar31;
local_78 = (uVar23 & 0x7310039d ^ uVar7) + 0x6bb1bcf9;
local_74 = uVar23 & 0x8ceffc62 ^ uVar7 ^ 0xaa7d1554;
do {
plVar18 = &local_a8;
puVar19 = &local_fc;
FUN_18160cbe4();
*puVar19 = 0x5e5cf042;
uVar30 = 0;
*plVar18 = 0x18160bf83;
FUN_18160a645();
uVar7 = (unaff_retaddr + 1) * unaff_retaddr & 0x80000001;
if ((int)uVar7 < 0) {
uVar7 = (uVar7 - 1 | 0xfffffffe) + 1;
}
} while (uVar7 != 0);
uVar7 = (local_fc + 0x1804952a >> 0x15 | (local_fc + 0x1804952a) * 0x800) ^ 0x90bd4e7c;
local_fc = ~((uVar7 >> 0x11 | uVar7 << 0xf) + 0xe9b473b7);
(*(code *)((int)local_fc + local_a8))(&local_80,local_68);
iVar28 = 7;
do {
uVar31 = ((local_60 << 4 | local_60 >> 0x1c) & 0xb4b4b4b4 |
(local_60 >> 4 | local_60 << 0x1c) & 0x4b4b4b4b) + 0xedf66992;
uVar23 = ((local_5c >> 8 | local_5c << 0x18) & 0xfa05fa05 |
(local_5c << 8 | local_5c >> 0x18) & 0x5fa05fa) + 0x703d2ee4;
uVar7 = uVar31 >> 0xc;
uVar23 = (uVar23 >> 0x1d | uVar23 * 8) + 0x5f26144;
uVar31 = (((uVar7 | uVar31 * 0x100000) ^ 0x2677a938) >> 3 | uVar7 << 0x1d) + 0x70f6a640;
uVar23 = (uVar23 * 0x8000 | uVar23 >> 0x11) + 0x191d2650;
uVar12 = uVar31 >> 0x17 | uVar31 * 0x200;
uVar7 = uVar23 >> 0xc;
uVar23 = uVar23 * 0x100000 | uVar7;
uVar31 = (uVar12 >> 8 | (uVar31 >> 0x17) << 0x18) & 0xa857a857 |
(uVar12 << 8 | (uVar31 & 0x7fffff) >> 0xf) & 0x57a857a8;
uVar23 = (uVar7 << 0x10 | uVar23 >> 0x10) & 0xd65429ab |
(uVar23 >> 0x10 | uVar7 << 0x10) & 0x29abd654;
uVar7 = uVar31 >> 6;
local_60 = uVar7 | uVar31 << 0x1a;
local_5c = uVar23 << 0x16 | uVar23 >> 10;
iVar28 = iVar28 + -1;
} while (-1 < iVar28);
uVar7 = (uVar7 << 0x1d | local_60 >> 3) + 0xa6be00c2;
uVar7 = (uVar7 * 0x80 | uVar7 >> 0x19) + 0xc72db2d0;
uVar7 = (uVar7 * 8 | uVar7 >> 0x1d) + 0x5e0136f7;
uVar7 = (uVar7 * 0x400 | uVar7 >> 0x16) ^ 0xd2776bfa;
if (((uVar7 >> 0x10 | uVar7 << 0x10) ^ local_10c) + local_5c != local_108) {
do {
local_a0 = FUN_180bc28e0;
uVar7 = (unaff_retaddr + 1) * unaff_retaddr & 0x80000001;
if ((int)uVar7 < 0) {
uVar7 = (uVar7 - 1 | 0xfffffffe) + 1;
}
} while (uVar7 != 0);
FUN_180bc28e0();
do {
uVar7 = (unaff_retaddr + 1) * unaff_retaddr & 0x80000001;
if ((int)uVar7 < 0) {
uVar7 = (uVar7 - 1 | 0xfffffffe) + 1;
}
} while (uVar7 != 0);
}
}
uVar9 = (uVar14 ^ (uVar11 ^ (uVar2 ^ (uVar10 ^ (uVar26 ^ (uVar1 ^ (uVar27 ^ (uVar25 ^ (uVar24 ^ (
uVar9 ^ uVar29) * 0x10001d1) * 0x10001d1) *
0x10001d1) * 0x10001d1) * 0x10001d1) * 0x10001d1)
* 0x10001d1) * 0x10001d1) * 0x10001d1) * 0x10001d1 ^
0xd282d6a9;
uVar29 = (uVar9 >> 0xe ^ uVar9) >> 1 & 0xff;
lVar32 = (longlong)local_f8;
uVar29 = ~((uVar29 << 0xe | uVar29) * 2 ^ uVar9) + 0xac1763b7;
uVar9 = uVar29 >> 0x17 | uVar29 * 0x200;
uVar29 = ((uVar29 & 0x7fffff) >> 3 ^ uVar9) >> 7 & 0x1ff;
lVar15 = lVar32 * 0x828 + 0x3830 + lVar5;
if ((uint)local_120 == ((uVar29 << 0xc | uVar29) << 7 ^ uVar9)) {
FUN_180589400(lVar15,local_c8);
*(undefined1 *)(*(longlong *)(lVar5 + 0x10) + 0x9a02 + lVar32) = 1;
thunk_FUN_1805a9280();
return;
}
FUN_180589400(lVar15,local_c8);
*(undefined1 *)(*(longlong *)(lVar5 + 0x10) + 0x9a02 + lVar32) = 1;
puVar6 = auStack_148;
do {
puVar21 = puVar6;
*(ulonglong *)(puVar21 + -8) = uVar30;
*(undefined8 *)(puVar21 + -0x10) = uVar22;
*(ulonglong *)(puVar21 + -0x18) = uVar8;
lVar15 = -(longlong)local_e0;
uVar8 = *(ulonglong *)(puVar21 + lVar15 + 0x408);
uVar22 = *(undefined8 *)(puVar21 + lVar15 + 0x410);
uVar30 = *(ulonglong *)(puVar21 + lVar15 + 0x418);
uVar29 = (unaff_retaddr + 1) * unaff_retaddr & 0x80000001;
if ((int)uVar29 < 0) {
uVar29 = (uVar29 - 1 | 0xfffffffe) + 1;
}
puVar6 = puVar21 + lVar15 + 0x420;
} while (uVar29 != 0);
*(undefined **)(puVar21 + lVar15 + 0x418) = &UNK_18160c3e2;
}
--- [15] 0x18134bb30 size=93 ---
void .?AV?$DigitalFilter@M$0BA@$01@@::vtbl___AV__DigitalFilter_M_0BA__01__
(longlong param_1,undefined8 param_2,undefined8 param_3)
{
longlong lVar1;
undefined8 uVar2;
undefined1 local_68 [96];
if (*(longlong **)(param_1 + 0x18) != (longlong *)0x0) {
lVar1 = **(longlong **)(param_1 + 0x18);
uVar2 = FUN_181339840(param_2,local_68);
(**(code **)(lVar1 + 0x40))(*(undefined8 *)(param_1 + 0x18),uVar2,param_3);
}
return;
}
--- [16] 0x18134bad0 size=82 ---
void .?AV?$DigitalFilter@M$0BA@$01@@::vtbl___AV__DigitalFilter_M_0BA__01__
(longlong param_1,undefined8 param_2,undefined4 param_3)
{
undefined8 uVar1;
undefined1 local_78 [112];
if (*(longlong *)(param_1 + 0x18) != 0) {
uVar1 = FUN_181339840(param_2,local_78);
(**(code **)(**(longlong **)(param_1 + 0x18) + 0x48))
(*(longlong **)(param_1 + 0x18),uVar1,param_3);
}
return;
}
--- [17] 0x18134c900 size=397 ---
void .?AV?$DigitalFilter@M$0BA@$01@@::vtbl___AV__DigitalFilter_M_0BA__01__
(longlong param_1,longlong *param_2,undefined8 param_3,undefined8 param_4)
{
int *piVar1;
uint uVar2;
code *pcVar3;
longlong *plVar4;
undefined8 *puVar5;
longlong lVar6;
uint *_Memory;
int iVar7;
bool bVar8;
undefined8 *local_res8;
undefined1 local_res10 [16];
lVar6 = *param_2;
if (*(longlong *)(param_1 + 8) == lVar6) {
iVar7 = 0;
}
else {
iVar7 = FUN_18048cbc0(*(undefined8 *)(param_1 + 8),lVar6,param_3,param_4,0xfffffffffffffffe);
}
if (iVar7 != 0) {
if ((*(uint *)(lVar6 + -0x10) & 0x30000000) == 0) {
LOCK();
*(int *)(lVar6 + -0x10) = *(int *)(lVar6 + -0x10) + 1;
UNLOCK();
}
LOCK();
lVar6 = *(longlong *)(param_1 + 8);
*(longlong *)(param_1 + 8) = *param_2;
UNLOCK();
_Memory = (uint *)(lVar6 + -0x10);
if ((*_Memory & 0x30000000) == 0) {
LOCK();
uVar2 = *_Memory;
*_Memory = *_Memory - 1;
UNLOCK();
if (uVar2 == 0) {
/* WARNING: Subroutine does not return */
free(_Memory);
}
}
if (((*(byte *)(param_1 + 0xa8) & 1) != 0) &&
(plVar4 = (longlong *)FUN_1812d2bd0(param_1), plVar4 != (longlong *)0x0)) {
if ((undefined **)*plVar4 == juce::HWNDComponentPeer::vftable) {
puVar5 = (undefined8 *)FUN_18049a930(local_res10);
SetWindowTextW((HWND)plVar4[0x11],(LPCWSTR)*puVar5);
}
else {
(*(code *)((undefined **)*plVar4)[3])(plVar4,param_2);
}
}
FUN_1804de690(&local_res8,param_1);
puVar5 = local_res8;
iVar7 = *(int *)(param_1 + 0x8c);
bVar8 = local_res8 == (undefined8 *)0x0;
while( true ) {
if (bVar8) {
lVar6 = 0;
}
else {
lVar6 = puVar5[2];
}
if ((lVar6 == 0) || (iVar7 < 1)) break;
iVar7 = iVar7 + -1;
if ((*(int *)(param_1 + 0x8c) <= iVar7) && (iVar7 = *(int *)(param_1 + 0x8c) + -1, iVar7 < 0))
break;
plVar4 = *(longlong **)(*(longlong *)(param_1 + 0x80) + (longlong)iVar7 * 8);
pcVar3 = *(code **)(*plVar4 + 0x30);
if (pcVar3 != .?AVSoothe2Grid@@::vtbl___AVSoothe2Grid__) {
(*pcVar3)(plVar4,param_1);
}
}
if (puVar5 != (undefined8 *)0x0) {
LOCK();
piVar1 = (int *)(puVar5 + 1);
iVar7 = *piVar1;
*piVar1 = *piVar1 + -1;
UNLOCK();
if (iVar7 == 1) {
(**(code **)*local_res8)(local_res8,1);
}
}
}
return;
}
--- [18] 0x18134c760 size=397 ---
void .?AV?$DigitalFilter@M$0BA@$01@@::vtbl___AV__DigitalFilter_M_0BA__01__
(longlong param_1,byte param_2,undefined8 param_3,undefined8 param_4)
{
int *piVar1;
int iVar2;
undefined8 *puVar3;
longlong lVar4;
longlong *plVar5;
longlong lVar6;
bool bVar7;
undefined8 *local_res8;
undefined4 local_28;
undefined4 uStack_24;
undefined4 uStack_20;
undefined4 uStack_1c;
if ((*(byte *)(param_1 + 0xa8) >> 1 & 1) != param_2) {
FUN_1804de690(&local_res8,param_1,param_3,param_4,0xfffffffffffffffe);
*(byte *)(param_1 + 0xa8) = *(byte *)(param_1 + 0xa8) & 0xfd;
*(byte *)(param_1 + 0xa8) = *(byte *)(param_1 + 0xa8) | (param_2 & 1) * '\x02';
lVar6 = 0;
if (param_2 == 0) {
FUN_181342b10(param_1);
}
else {
uStack_1c = *(undefined4 *)(param_1 + 0x2c);
uStack_20 = *(undefined4 *)(param_1 + 0x28);
local_28 = 0;
uStack_24 = 0;
FUN_181342870(param_1,&local_28,1);
}
FUN_18133f790();
if (param_2 == 0) {
FUN_1804e5060(param_1);
for (lVar4 = DAT_182673708; lVar4 != param_1; lVar4 = *(longlong *)(lVar4 + 0x18)) {
if (lVar4 == 0) goto LAB_18134c84f;
}
if (*(longlong *)(param_1 + 0x18) == 0) {
FUN_18133eae0(1);
}
else {
FUN_18133ed60(*(longlong *)(param_1 + 0x18),2,1);
}
}
LAB_18134c84f:
puVar3 = local_res8;
bVar7 = local_res8 != (undefined8 *)0x0;
lVar4 = lVar6;
if (bVar7) {
lVar4 = local_res8[2];
}
if (lVar4 != 0) {
FUN_1813452b0(param_1);
if (bVar7) {
lVar6 = puVar3[2];
}
if (((lVar6 != 0) && ((*(byte *)(param_1 + 0xa8) & 1) != 0)) &&
(plVar5 = (longlong *)FUN_18134c2e0(param_1), plVar5 != (longlong *)0x0)) {
(**(code **)(*plVar5 + 0x10))(plVar5,param_2);
FUN_181343670(param_1);
}
}
if (puVar3 != (undefined8 *)0x0) {
LOCK();
piVar1 = (int *)(puVar3 + 1);
iVar2 = *piVar1;
*piVar1 = *piVar1 + -1;
UNLOCK();
if (iVar2 == 1) {
(**(code **)*local_res8)(local_res8,1);
}
}
}
return;
}
--- [20] 0x18134c3a0 size=933 ---
void .?AV?$DigitalFilter@M$0BA@$01@@::vtbl___AV__DigitalFilter_M_0BA__01__
(longlong *param_1,uint param_2,undefined8 param_3)
{
int *piVar1;
undefined8 *puVar2;
int iVar3;
ulonglong uVar4;
longlong lVar5;
undefined8 *puVar6;
char cVar7;
int iVar8;
longlong *plVar9;
ulonglong *puVar10;
ulonglong uVar11;
undefined4 uVar12;
longlong *plVar13;
undefined8 *puVar14;
ulonglong uVar15;
undefined4 uVar16;
undefined4 uVar17;
undefined4 uVar18;
undefined4 uVar19;
char local_res20;
undefined8 *local_88;
longlong local_80;
undefined8 local_78;
undefined1 local_70 [8];
longlong *local_68;
undefined8 local_60;
undefined8 local_58;
undefined8 uStack_50;
local_78 = 0xfffffffffffffffe;
if ((*(byte *)(param_1 + 0x15) >> 2 & 1) == 0) {
param_2 = param_2 | 0x40000000;
}
else {
param_2 = param_2 & 0xbfffffff;
}
plVar9 = (longlong *)FUN_1812d2bd0();
if ((plVar9 != (longlong *)0x0) && (param_2 == *(uint *)(plVar9 + 2))) {
return;
}
FUN_1804de690(&local_88,param_1);
uVar15 = 0;
uVar4 = uVar15;
puVar6 = local_88;
for (plVar13 = param_1; local_88 = puVar6, plVar13 != (longlong *)0x0;
plVar13 = (longlong *)plVar13[3]) {
puVar10 = (ulonglong *)FUN_18051e290(local_70,plVar13,uVar4);
uVar4 = *puVar10;
puVar6 = local_88;
}
cVar7 = '\0';
local_res20 = '\0';
local_80 = 0;
uVar16 = 0;
uVar17 = 0;
uVar18 = 0;
uVar19 = 0;
local_58 = 0;
uStack_50 = 0;
iVar8 = -1;
if (plVar9 != (longlong *)0x0) {
local_68 = plVar9;
cVar7 = (**(code **)(*plVar9 + 0x78))(plVar9);
local_res20 = (**(code **)(*plVar9 + 0x68))(plVar9);
local_80 = plVar9[5];
uVar16 = *(undefined4 *)((longlong)plVar9 + 0x14);
uVar17 = (undefined4)plVar9[3];
local_58 = *(undefined8 *)((longlong)plVar9 + 0x14);
uVar18 = *(undefined4 *)((longlong)plVar9 + 0x1c);
uVar19 = (undefined4)plVar9[4];
uStack_50 = *(undefined8 *)((longlong)plVar9 + 0x1c);
iVar8 = (**(code **)(*plVar9 + 0x100))(plVar9);
*(byte *)(param_1 + 0x15) = *(byte *)(param_1 + 0x15) & 0xfe;
if (DAT_182673700 == 0) {
local_60 = FUN_1811316e0(0x130);
DAT_182673700 = FUN_18133c6c0(local_60);
}
FUN_180488600(DAT_182673700 + 0x58,param_1);
FUN_181343670(param_1);
uVar11 = uVar15;
if (puVar6 != (undefined8 *)0x0) {
uVar11 = puVar6[2];
}
if (uVar11 == 0) {
(**(code **)*plVar9)(plVar9,1);
goto LAB_18134c6f7;
}
FUN_18134bfe0(param_1,uVar4 & 0xffffffff,uVar4 >> 0x20,(int)param_1[5],
*(undefined4 *)((longlong)param_1 + 0x2c));
(**(code **)*plVar9)(plVar9,1);
}
lVar5 = param_1[3];
if (lVar5 != 0) {
plVar9 = *(longlong **)(lVar5 + 0x40);
for (plVar13 = plVar9; plVar13 != plVar9 + *(int *)(lVar5 + 0x4c); plVar13 = plVar13 + 1) {
if (param_1 == (longlong *)*plVar13) {
uVar12 = (undefined4)((longlong)plVar13 - (longlong)plVar9 >> 3);
goto LAB_18134c588;
}
}
uVar12 = 0xffffffff;
LAB_18134c588:
FUN_181343a90(lVar5,uVar12,1);
}
if (puVar6 != (undefined8 *)0x0) {
uVar15 = puVar6[2];
}
if (uVar15 != 0) {
*(byte *)(param_1 + 0x15) = *(byte *)(param_1 + 0x15) | 1;
plVar9 = (longlong *)(**(code **)(*param_1 + 0x150))(param_1,param_2,param_3);
if (DAT_182673700 == 0) {
local_60 = FUN_1811316e0(0x130);
DAT_182673700 = FUN_18133c6c0(local_60);
}
lVar5 = DAT_182673700;
plVar13 = (longlong *)(DAT_182673700 + 0x58);
puVar14 = (undefined8 *)*plVar13;
iVar3 = *(int *)(DAT_182673700 + 100);
puVar2 = puVar14 + iVar3;
for (; puVar14 != puVar2; puVar14 = puVar14 + 1) {
if (param_1 == (longlong *)*puVar14) goto LAB_18134c651;
}
if (*(int *)(DAT_182673700 + 0x60) < iVar3 + 1) {
FUN_18047cb30(plVar13,iVar3 + 9 + (iVar3 + 1) / 2 & 0xfffffff8);
}
iVar3 = *(int *)(lVar5 + 100);
*(int *)(lVar5 + 100) = iVar3 + 1;
*(longlong **)(*plVar13 + (longlong)iVar3 * 8) = param_1;
LAB_18134c651:
param_1[4] = uVar4;
FUN_18134b470(plVar9);
if (-1 < iVar8) {
(**(code **)(*plVar9 + 0x108))(plVar9,iVar8);
}
(**(code **)(*plVar9 + 0x10))(plVar9,*(byte *)(param_1 + 0x15) >> 1 & 1);
plVar9 = (longlong *)FUN_1812d2bd0(param_1);
if (plVar9 != (longlong *)0x0) {
if (cVar7 != '\0') {
(**(code **)(*plVar9 + 0x70))(plVar9,1);
*(undefined4 *)((longlong)plVar9 + 0x14) = uVar16;
*(undefined4 *)(plVar9 + 3) = uVar17;
*(undefined4 *)((longlong)plVar9 + 0x1c) = uVar18;
*(undefined4 *)(plVar9 + 4) = uVar19;
}
if (local_res20 != '\0') {
(**(code **)(*plVar9 + 0x60))(plVar9,1);
}
if ((*(byte *)((longlong)param_1 + 0xa9) & 1) != 0) {
(**(code **)(*plVar9 + 0xa8))(plVar9,1);
}
plVar9[5] = local_80;
FUN_18134bdf0(param_1);
FUN_181343670(param_1);
}
}
LAB_18134c6f7:
if (puVar6 != (undefined8 *)0x0) {
LOCK();
piVar1 = (int *)(puVar6 + 1);
iVar8 = *piVar1;
*piVar1 = *piVar1 + -1;
UNLOCK();
if (iVar8 == 1) {
(**(code **)*local_88)(local_88,1);
}
}
return;
}
--- [23] 0x18134c270 size=69 ---
undefined4 .?AV?$DigitalFilter@M$0BA@$01@@::vtbl___AV__DigitalFilter_M_0BA__01__(void)
{
undefined8 uVar1;
if (DAT_182673700 == 0) {
uVar1 = FUN_1811316e0(0x130);
DAT_182673700 = FUN_18133c6c0(uVar1);
}
return *(undefined4 *)(DAT_182673700 + 0xc0);
}
--- [26] 0x18134be30 size=195 ---
uint .?AV?$DigitalFilter@M$0BA@$01@@::vtbl___AV__DigitalFilter_M_0BA__01__
(longlong param_1,undefined4 param_2,undefined4 param_3)
{
longlong *plVar1;
ulonglong uVar2;
char cVar3;
uint uVar4;
ulonglong *puVar5;
longlong lVar6;
undefined1 local_res20 [8];
uVar4 = 0;
if ((*(byte *)(param_1 + 0xa8) & 8) == 0) {
return 1;
}
if ((*(byte *)(param_1 + 0xa8) & 0x10) != 0) {
uVar4 = *(int *)(param_1 + 0x4c) - 1;
lVar6 = (longlong)(int)uVar4;
if (-1 < (int)uVar4) {
do {
plVar1 = *(longlong **)(*(longlong *)(param_1 + 0x40) + lVar6 * 8);
if ((*(byte *)(plVar1 + 0x15) & 2) != 0) {
puVar5 = (ulonglong *)FUN_18051e060(local_res20,plVar1,CONCAT44(param_3,param_2));
uVar2 = *puVar5;
if ((((uint)uVar2 < *(uint *)(plVar1 + 5)) &&
((uint)(uVar2 >> 0x20) < *(uint *)((longlong)plVar1 + 0x2c))) &&
(cVar3 = (**(code **)(*plVar1 + 0x98))(plVar1,uVar2 & 0xffffffff,uVar2 >> 0x20),
cVar3 != '\0')) {
uVar4 = 1;
}
else {
uVar4 = 0;
}
if ((char)uVar4 != '\0') {
return 1;
}
}
lVar6 = lVar6 + -1;
} while (-1 < lVar6);
}
}
return uVar4 & 0xffffff00;
}
--- [28] 0x18134bcf0 size=66 ---
void .?AV?$DigitalFilter@M$0BA@$01@@::vtbl___AV__DigitalFilter_M_0BA__01__(longlong param_1)
{
undefined8 *puVar1;
if (((*(byte *)(param_1 + 0xa8) & 0x40) == 0) &&
(*(longlong **)(param_1 + 0x18) != (longlong *)0x0)) {
/* WARNING: Could not recover jumptable at 0x00018134bd0d. Too many branches */
/* WARNING: Treating indirect jump as call */
(**(code **)(**(longlong **)(param_1 + 0x18) + 0xa8))();
return;
}
puVar1 = (undefined8 *)FUN_1811316e0(8);
*puVar1 = juce::KeyboardFocusTraverser::vftable;
return;
}
--- [30] 0x18134bc50 size=126 ---
void .?AV?$DigitalFilter@M$0BA@$01@@::vtbl___AV__DigitalFilter_M_0BA__01__(longlong param_1)
{
longlong *plVar1;
undefined8 local_18;
undefined4 uStack_10;
undefined4 uStack_c;
if ((*(byte *)(param_1 + 0xa8) & 1) == 0) {
uStack_10 = *(undefined4 *)(param_1 + 0x28);
uStack_c = *(undefined4 *)(param_1 + 0x2c);
local_18 = 0;
FUN_181342870(0,&local_18,1);
}
else {
plVar1 = (longlong *)FUN_1812d2bd0();
if (plVar1 != (longlong *)0x0) {
/* WARNING: Could not recover jumptable at 0x00018134bc94. Too many branches */
/* WARNING: Treating indirect jump as call */
(**(code **)(*plVar1 + 0xf0))
(plVar1,(float)(int)(0xff - (uint)*(byte *)(param_1 + 0xac)) / DAT_1824c4548);
return;
}
}
return;
}
--- [40] 0x18160c410 size=1445 ---
/* WARNING: Instruction at (ram,0x00018160ca3a) overlaps instruction at (ram,0x00018160ca38)
*/
/* WARNING: Possible PIC construction at 0x00018160cb22: Changing call to branch */
/* WARNING: Removing unreachable block (ram,0x00018160cb27) */
/* WARNING: Removing unreachable block (ram,0x00018160ca34) */
/* WARNING: Removing unreachable block (ram,0x00018160c8cc) */
/* WARNING: Removing unreachable block (ram,0x00018160ca14) */
/* WARNING: Removing unreachable block (ram,0x00018160c9c7) */
undefined8 .?AV?$FilterGraph@M$05$0CAA@@@::vtbl___AV__FilterGraph_M_05_0CAA___(longlong param_1)
{
longlong *plVar1;
longlong lVar2;
undefined4 uVar3;
ulonglong uVar4;
undefined8 uVar5;
uint uVar6;
ulonglong uVar7;
code **ppcVar8;
longlong *plVar9;
int iVar10;
longlong lVar11;
longlong *plVar12;
undefined8 *puVar13;
undefined8 *puVar14;
undefined8 *puVar15;
undefined1 *puVar16;
undefined4 *puVar17;
undefined4 *puVar18;
longlong lVar19;
undefined4 *puVar20;
longlong *plVar21;
undefined *puVar22;
longlong lVar23;
undefined4 *puVar24;
undefined **ppuVar25;
uint uVar26;
int unaff_retaddr;
undefined8 auStack_1a8 [2];
undefined1 auStack_198 [24];
uint auStack_180 [6];
undefined8 local_168;
undefined **local_160;
uint local_158;
longlong alStack_148 [2];
undefined8 local_138;
uint local_130;
uint local_128;
undefined4 local_124;
code *local_120;
undefined **local_118;
longlong local_110;
undefined4 local_108;
undefined4 uStack_104;
undefined4 uStack_100;
undefined4 uStack_fc;
undefined4 local_c8;
undefined4 uStack_c4;
undefined4 uStack_c0;
undefined4 uStack_bc;
undefined4 uStack_b8;
undefined4 uStack_b4;
undefined4 uStack_b0;
undefined4 uStack_ac;
undefined4 uStack_a8;
undefined4 uStack_a4;
undefined4 uStack_a0;
undefined4 uStack_9c;
undefined4 local_68 [14];
ulonglong local_30;
puVar15 = (undefined8 *)auStack_198;
local_30 = DAT_182615970 ^ (ulonglong)auStack_198;
uVar6 = (uint)&stack0x00000000 & 0x23f;
lVar23 = 0x1210;
local_124 = 0x8e0;
iVar10 = (uVar6 + 2) * (uVar6 + 1) * uVar6;
uVar6 = ((iVar10 >> 1) - (iVar10 >> 3)) + iVar10 * 0x55555555 >> 0x1e;
uVar4 = (ulonglong)uVar6;
local_128 = -uVar6 ^ 0x740;
local_110 = param_1;
FUN_18134c250(param_1,&local_108);
alStack_148[1] = 0x6f01000;
local_138 = 0x1bab6a8;
local_168 = 0x10;
local_160 = &PTR__guard_check_icall_181bab6a8;
local_118 = (undefined **)&DAT_181bab6b8;
plVar12 = (longlong *)&DAT_186f01000;
auStack_180[2] = 0;
local_c8 = local_108;
uStack_c4 = uStack_104;
uStack_c0 = uStack_100;
uStack_bc = uStack_fc;
FUN_18134c170(*(undefined8 *)(param_1 + 200),&local_c8);
do {
uVar7 = 0xee14;
func_0x00018160aa28();
if ((uVar7 & 0x43) != 0) goto LAB_18160c66b;
uVar6 = (unaff_retaddr + 1) * unaff_retaddr & 0x80000001;
if ((int)uVar6 < 0) {
uVar6 = (uVar6 - 1 | 0xfffffffe) + 1;
}
uVar7 = uVar4;
} while (uVar6 != 0);
do {
local_130 = 0x4fa5f61e;
LAB_18160c66b:
uVar6 = (unaff_retaddr + 1) * unaff_retaddr & 0x80000001;
if ((int)uVar6 < 0) {
uVar6 = (uVar6 - 1 | 0xfffffffe) + 1;
}
} while (uVar6 != 0);
alStack_148[1] = 0xf1e46594c6bad6be;
uVar26 = ((~local_130 ^ 0x61689430) >> 0x13 | (~local_130 ^ 0x61689430) << 0xd) ^ 0xe6c076f9;
local_138 = CONCAT44(local_138._4_4_,0xc6bad6be);
uVar6 = uVar26 >> 7;
local_168 = CONCAT44(local_168._4_4_,
~((uVar6 << 0x1e | ((uVar26 << 0x19 | uVar6) ^ 0x13f5de1c) >> 2) + 0x84cdc7cb
));
do {
uVar5 = rdtsc();
uVar6 = (unaff_retaddr + 1) * unaff_retaddr & 0x80000001;
if ((int)uVar6 < 0) {
uVar6 = (uVar6 - 1 | 0xfffffffe) + 1;
}
} while (uVar6 != 0);
uVar6 = ((uint)uVar5 ^ (uint)((ulonglong)uVar5 >> 0x20)) * -0x166a12ab;
local_158 = (uVar6 >> 0x18 ^ uVar6) * -0x3d4d13ad;
if (local_158 < 0x5d1745ff) {
local_120 = (code *)0x0;
do {
ppcVar8 = &local_120;
FUN_18160cb18(ppcVar8,&local_120);
*ppcVar8 = FUN_1813bba80;
uVar6 = (unaff_retaddr + 1) * unaff_retaddr & 0x80000001;
if ((int)uVar6 < 0) {
uVar6 = (uVar6 - 1 | 0xfffffffe) + 1;
}
} while (uVar6 != 0);
uVar4 = (*local_120)(0,0x48eb);
if (1 < uVar4) {
FUN_18113eab0();
}
}
ppuVar25 = local_160;
puVar24 = (undefined4 *)((longlong)local_118 - (longlong)local_160);
puVar17 = (undefined4 *)0x0;
puVar16 = auStack_198;
if (local_118 == local_160) {
code_r0x00018160ca00:
do {
uVar6 = (unaff_retaddr + 1) * unaff_retaddr & 0x80000001;
if ((int)uVar6 < 0) {
uVar6 = (uVar6 - 1 | 0xfffffffe) + 1;
}
} while (uVar6 != 0);
uVar5 = *(undefined8 *)(param_1 + 0xc0);
uStack_b8 = local_108;
uStack_b4 = uStack_104;
uStack_b0 = uStack_100;
uStack_ac = uStack_fc;
*(undefined **)(puVar16 + -8) = &UNK_18160ca7f;
FUN_18134c170(uVar5,&uStack_b8,uVar7);
puVar17 = &uStack_a8;
uStack_a8 = local_108;
uStack_a4 = uStack_104;
uStack_a0 = uStack_100;
uStack_9c = uStack_fc;
uVar5 = *(undefined8 *)(local_110 + 0xd0);
*(undefined **)(puVar16 + -8) = &UNK_18160ca9f;
FUN_18134c170(uVar5,puVar17);
do {
*(undefined **)(puVar16 + -8) = &UNK_18160caaa;
func_0x00018160d859(0xee14);
puVar22 = (undefined *)((longlong)ppuVar25 + lVar23);
ppuVar25 = (undefined **)((lVar23 - (longlong)puVar22 ^ 0xffffffffffffffffU) + 1);
lVar23 = (longlong)puVar22 - (longlong)ppuVar25;
uVar6 = (unaff_retaddr + 1) * unaff_retaddr & 0x80000001;
if ((int)uVar6 < 0) {
uVar6 = (uVar6 - 1 | 0xfffffffe) + 1;
}
} while (uVar6 != 0);
*(undefined4 *)(puVar16 + 0x48) = *(undefined4 *)(puVar16 + 0x20);
*(undefined **)(puVar16 + -8) = &UNK_18160cb0c;
uVar3 = func_0x00018160b4ce();
*(longlong *)(puVar16 + -8) = lVar23;
*(longlong *)(puVar16 + -0x10) = param_1;
*(undefined **)(puVar16 + -0x18) = &UNK_18160cb27;
lVar23 = *(longlong *)(puVar16 + -0x18);
*(longlong *)(puVar16 + -0x18) = lVar23 + 0x166;
*(longlong *)(puVar16 + -0x20) = lVar23 + 0x3f85dd;
*(longlong *)(puVar16 + -0x28) = lVar23 + -0x1667b;
*(longlong *)(puVar16 + -0x30) = lVar23 + 0x3fe56b;
*(longlong *)(puVar16 + -0x38) = lVar23 + 0x3f85fa;
*(longlong *)(puVar16 + -0x40) = lVar23 + -0x177e0;
*(longlong *)(puVar16 + -0x48) = lVar23 + -0x454f5;
*(longlong *)(puVar16 + -0x50) = lVar23 + -0x7c9eb;
*(longlong *)(puVar16 + -0x58) = lVar23 + 0x3fe56b;
/* WARNING: Could not recover jumptable at 0x00018160cc6b. Too many branches */
/* WARNING: Treating indirect jump as call */
uVar5 = (*(code *)(lVar23 + 0x3f85fa))(uVar3,puVar17);
return uVar5;
}
LAB_18160c7f0:
puVar18 = (undefined4 *)((longlong)puVar17 + (longlong)ppuVar25);
if ((plVar12 != (longlong *)0x0) && (lVar11 = *plVar12, -1 < lVar11)) {
*(undefined8 *)((longlong)puVar15 + 0x58) = 0x2621fc0;
lVar19 = (longlong)&DAT_182621fc0 + -*(longlong *)((longlong)puVar15 + 0x58);
do {
if (puVar18 < (undefined4 *)(-*(longlong *)((longlong)puVar15 + 0x58) + 0x182621fc8 + lVar11))
{
if (-1 < lVar11) {
plVar9 = (longlong *)(lVar19 + lVar11);
plVar1 = (longlong *)(puVar18 + 1);
if (plVar9 < plVar1) {
local_68[0] = *puVar18;
lVar23 = lVar19 - (longlong)puVar18;
plVar21 = plVar12;
goto LAB_18160c870;
}
}
break;
}
lVar11 = plVar12[1];
plVar12 = plVar12 + 1;
} while (-1 < lVar11);
}
goto LAB_18160c8a0;
while (plVar9 = (longlong *)(lVar19 + lVar11), plVar9 < plVar1) {
LAB_18160c870:
lVar2 = lVar23 + lVar11;
lVar11 = plVar21[1];
plVar21 = plVar21 + 1;
*(longlong *)((longlong)local_68 + lVar2) = *plVar9 - lVar19;
puVar18 = local_68;
if (lVar11 < 0) break;
}
LAB_18160c8a0:
do {
puVar20 = (undefined4 *)((longlong)puVar15 + 0x20);
uVar4 = 0xee14;
*(undefined4 **)((longlong)puVar15 + -8) = puVar17;
puVar15 = (undefined8 *)((longlong)puVar15 + -8);
puVar17 = puVar18;
while ((uVar4 & 0xc300) != 0) {
while (puVar13 = puVar15, (uVar4 & 0xc300) != 0) {
while( true ) {
puVar13[-1] = 0x18160c901;
uVar3 = FUN_18160cb59();
*puVar20 = uVar3;
puVar17 = (undefined4 *)*puVar13;
puVar15 = puVar13 + 1;
puVar14 = puVar13 + 1;
if ((uVar4 & 0xc3) != 0) break;
puVar13 = puVar13 + 1;
puVar15 = puVar14;
if ((uVar4 & 0xc3) == 0) goto LAB_18160c93e;
}
}
}
LAB_18160c93e:
uVar6 = (unaff_retaddr + 1) * unaff_retaddr & 0x80000001;
if ((int)uVar6 < 0) {
uVar6 = (uVar6 - 1 | 0xfffffffe) + 1;
}
} while (uVar6 != 0);
uVar26 = (uint)puVar17 & 0x4aff;
uVar7 = (ulonglong)uVar26;
uVar6 = *(int *)((longlong)puVar15 + 0x20) * 0x401 ^
(uint)(*(int *)((longlong)puVar15 + 0x20) * 0x401) >> 6;
*(uint *)((longlong)puVar15 + 0x20) = uVar6;
uVar6 = uVar6 & 0x17f;
iVar10 = (uVar6 + 2) * (uVar6 + 1) * uVar6;
puVar17 = (undefined4 *)
((longlong)puVar17 +
(0xa4 - ((longlong)
((longlong)(((iVar10 >> 1) - (iVar10 >> 3)) + iVar10 * 0x55555555) ^
0x2800000000U) >> 0x1e ^ (longlong)(int)((uVar26 + 1) * uVar26 & 0x80000001))))
;
param_1 = local_110;
puVar16 = (undefined1 *)puVar15;
if (puVar24 == puVar17) goto code_r0x00018160ca00;
goto LAB_18160c7f0;
}
--- [47] 0x18134b940 size=196 ---
void .?AV?$FilterGraph@M$05$0CAA@@@::vtbl___AV__FilterGraph_M_05_0CAA___
(undefined8 param_1,undefined8 param_2,undefined8 param_3,undefined8 param_4)
{
undefined8 *puVar1;
longlong *plVar2;
undefined8 uVar3;
uVar3 = 0xfffffffffffffffe;
if (DAT_182673c20 == (undefined8 *)0x0) {
puVar1 = (undefined8 *)FUN_1811316e0(0x28);
FUN_1812a59f0(puVar1);
FUN_1812a7230(puVar1 + 2);
*puVar1 = juce::ModalComponentManager::vftable;
puVar1[2] = juce::ModalComponentManager::vftable;
puVar1[3] = 0;
puVar1[4] = 0;
DAT_182673c20 = puVar1;
}
FUN_18133b010(DAT_182673c20,1,param_3,param_4,uVar3);
plVar2 = (longlong *)FUN_18134adf0(param_1);
if (*(code **)(*plVar2 + 0x78) == FUN_1812c6070) {
/* WARNING: Could not recover jumptable at 0x00018134b9e5. Too many branches */
/* WARNING: Treating indirect jump as call */
MessageBeep(0);
return;
}
(**(code **)(*plVar2 + 0x78))(plVar2);
return;
}
--- [49] 0x18134b870 size=87 ---
void .?AV?$FilterGraphGrid@M@@::vtbl___AV__FilterGraphGrid_M__
(undefined8 param_1,undefined4 param_2,undefined8 param_3)
{
undefined8 uVar1;
uVar1 = FUN_1811316e0(0x158);
FUN_18050dd00(uVar1,param_1,param_2,param_3,0);
return;
}
--- [53] 0x18058e380 size=124 ---
longlong FUN_18058e380(longlong param_1,uint *param_2)
{
uint uVar1;
longlong lVar2;
longlong lVar3;
undefined8 uVar4;
uVar1 = *param_2;
lVar2 = *(longlong *)(param_1 + 8);
lVar3 = (longlong)(int)uVar1 * 0x800;
if (uVar1 < *(uint *)(lVar2 + 0x84)) {
uVar4 = *(undefined8 *)(*(longlong *)(lVar2 + 0x78) + (longlong)(int)uVar1 * 8);
}
else {
uVar4 = 0;
}
FUN_180536300(lVar2 + 0x18,*(longlong *)(param_1 + 0x10) + 0x8e0 + lVar3,
*(longlong *)(param_1 + 0x10) + 0xe0,uVar4,0x200);
return *(longlong *)(param_1 + 0x10) + 0x8e0 + lVar3;
}
--- [60] 0x18058b220 size=318 ---
/* WARNING: Function: __security_check_cookie replaced with injection: security_check_cookie */
void FUN_18058b220(longlong param_1,int param_2)
{
uint *puVar1;
uint uVar2;
undefined4 uVar3;
longlong lVar4;
int iVar5;
undefined1 auStack_c8 [32];
undefined4 local_a8;
float local_98;
longlong local_90;
longlong local_88 [5];
undefined1 local_59 [32];
undefined1 local_39;
ulonglong local_38 [4];
local_88[1] = 0xfffffffffffffffe;
local_38[0] = DAT_182615970 ^ (ulonglong)auStack_c8;
local_98 = *(float *)(*(longlong *)(param_1 + 0x9b28) + 0x188);
iVar5 = (int)local_98;
if (param_2 != iVar5) {
lVar4 = FUN_181233e10(local_59 + 1);
FUN_180495150(&local_90,lVar4,local_59 + -lVar4);
uVar3 = DAT_1824c4680;
local_a8 = DAT_1824c4680;
FUN_181411be0(*(undefined8 *)(param_1 + 0x97b0),local_90,DAT_1824c3ea4,DAT_1824c4680);
puVar1 = (uint *)(local_90 + -0x10);
if ((*puVar1 & 0x30000000) == 0) {
LOCK();
uVar2 = *puVar1;
*puVar1 = *puVar1 - 1;
UNLOCK();
if (uVar2 == 0) {
/* WARNING: Subroutine does not return */
free(puVar1);
}
}
lVar4 = FUN_181233e10(local_38,iVar5);
FUN_180495150(local_88,lVar4,&local_39 + -lVar4);
local_a8 = uVar3;
FUN_181411be0(*(undefined8 *)(param_1 + 0x97b0),local_88[0],DAT_1824c3d8c,uVar3);
puVar1 = (uint *)(local_88[0] + -0x10);
if ((*puVar1 & 0x30000000) == 0) {
LOCK();
uVar2 = *puVar1;
*puVar1 = *puVar1 - 1;
UNLOCK();
if (uVar2 == 0) {
/* WARNING: Subroutine does not return */
free(puVar1);
}
}
}
}
--- [61] 0x18058b0c0 size=313 ---
/* WARNING: Function: __security_check_cookie replaced with injection: security_check_cookie */
void FUN_18058b0c0(longlong param_1,int param_2)
{
uint *puVar1;
uint uVar2;
undefined4 uVar3;
longlong lVar4;
int iVar5;
undefined1 auStack_c8 [32];
undefined4 local_a8;
float local_98;
longlong local_90;
longlong local_88 [5];
undefined1 local_59 [32];
undefined1 local_39;
ulonglong local_38 [4];
local_88[1] = 0xfffffffffffffffe;
local_38[0] = DAT_182615970 ^ (ulonglong)auStack_c8;
local_98 = *(float *)(*(longlong *)(param_1 + 0x9b28) + 0x188);
iVar5 = (int)local_98;
if (param_2 != iVar5) {
lVar4 = FUN_181233e10(local_59 + 1);
FUN_180495150(&local_90,lVar4,local_59 + -lVar4);
uVar3 = DAT_1824c4680;
local_a8 = DAT_1824c4680;
FUN_181411be0(*(undefined8 *)(param_1 + 0x97b0),local_90,0,DAT_1824c4680);
puVar1 = (uint *)(local_90 + -0x10);
if ((*puVar1 & 0x30000000) == 0) {
LOCK();
uVar2 = *puVar1;
*puVar1 = *puVar1 - 1;
UNLOCK();
if (uVar2 == 0) {
/* WARNING: Subroutine does not return */
free(puVar1);
}
}
lVar4 = FUN_181233e10(local_38,iVar5);
FUN_180495150(local_88,lVar4,&local_39 + -lVar4);
local_a8 = uVar3;
FUN_181411be0(*(undefined8 *)(param_1 + 0x97b0),local_88[0],DAT_1824c3ea4,uVar3);
puVar1 = (uint *)(local_88[0] + -0x10);
if ((*puVar1 & 0x30000000) == 0) {
LOCK();
uVar2 = *puVar1;
*puVar1 = *puVar1 - 1;
UNLOCK();
if (uVar2 == 0) {
/* WARNING: Subroutine does not return */
free(puVar1);
}
}
}
}
############ VTABLE FilterGraphGrid 0x1824be0a8
SLOTLIST:
[0] 0x18058c4b0 size=116
[1] 0x18134bc00 size=3
[2] 0x18134bbf0 size=3
[3] 0x18134bbe0 size=3
[4] 0x18134bbd0 size=3
[5] 0x18134bbc0 size=3
[6] 0x18134bbb0 size=3
[7] 0x18134bba0 size=3
[8] 0x18134bb30 size=93
[9] 0x18134bad0 size=82
[10] 0x18134c900 size=397
[11] 0x18134c760 size=397
[12] 0x18134c750 size=3
[13] 0x18134c3a0 size=933
[14] 0x18134c2d0 size=3
[15] 0x18134c2c0 size=3
[16] 0x18134c270 size=69
[17] 0x1805689c0 size=60
[18] 0x18134bf00 size=3
[19] 0x18134be30 size=195
[20] 0x18134bde0 size=3
[21] 0x18134bcf0 size=66
[22] 0x18134bce0 size=3
[23] 0x18134bc50 size=126
[24] 0x18134bc20 size=34
[25] 0x18134ade0 size=3
[26] 0x18134bc10 size=3
[27] 0x18134bac0 size=3
[28] 0x18134bab0 size=3
[29] 0x18134ba90 size=20
[30] 0x18134ba80 size=3
[31] 0x18134ba70 size=3
[32] 0x18134ba60 size=3
[33] 0x1805895c0 size=2420
[34] 0x18134ba50 size=3
[35] 0x18134adc0 size=3
[36] 0x18134ba40 size=3
[37] 0x18134ba30 size=3
[38] 0x18134ba20 size=3
[39] 0x18134ba10 size=3
[40] 0x18134b940 size=196
[41] 0x18134b930 size=3
[42] 0x18134b870 size=87
[43] 0x180589f40 size=99
[44] 0x18251a470 size=0
[45] 0x18058eaf8 size=12
[46] 0x180568990 size=48
[47] 0x18251ad88 size=0
[48] 0x18058eb1c size=12
[49] 0x18058b010 size=176
[50] 0x18251ab48 size=0
[51] 0x18058eab0 size=12
[52] 0x18160b000 size=4718
[53] 0x1804714b0 size=3
[54] 0x18251a6c8 size=0
[55] 0x1805893c0 size=52
[56] 0x18134bc00 size=3
[57] 0x18134bbf0 size=3
[58] 0x18134bbe0 size=3
[59] 0x18134bbd0 size=3
[60] 0x18134bbc0 size=3
[61] 0x18134bbb0 size=3
[62] 0x18134bba0 size=3
[63] 0x18134bb30 size=93
CCODE:
--- [0] 0x18058c4b0 size=116 ---
void .?AV?$FilterGraphGrid@M@@::vtbl___AV__FilterGraphGrid_M__(undefined8 *param_1)
{
undefined8 *puVar1;
*param_1 = FilterGraphGrid<float>::vftable;
param_1[0x16] = FilterGraphGrid<float>::vftable;
FUN_180484cd0(param_1 + 0x25);
puVar1 = (undefined8 *)param_1[0x24];
if (puVar1 != (undefined8 *)0x0) {
(**(code **)*puVar1)(puVar1,1);
}
FUN_18047cbc0(param_1 + 0x22);
*(undefined4 *)((longlong)param_1 + 0x11c) = 0;
/* WARNING: Subroutine does not return */
free((void *)param_1[0x22]);
}
--- [8] 0x18134bb30 size=93 ---
void .?AV?$DigitalFilter@M$0BA@$01@@::vtbl___AV__DigitalFilter_M_0BA__01__
(longlong param_1,undefined8 param_2,undefined8 param_3)
{
longlong lVar1;
undefined8 uVar2;
undefined1 local_68 [96];
if (*(longlong **)(param_1 + 0x18) != (longlong *)0x0) {
lVar1 = **(longlong **)(param_1 + 0x18);
uVar2 = FUN_181339840(param_2,local_68);
(**(code **)(lVar1 + 0x40))(*(undefined8 *)(param_1 + 0x18),uVar2,param_3);
}
return;
}
--- [9] 0x18134bad0 size=82 ---
void .?AV?$DigitalFilter@M$0BA@$01@@::vtbl___AV__DigitalFilter_M_0BA__01__
(longlong param_1,undefined8 param_2,undefined4 param_3)
{
undefined8 uVar1;
undefined1 local_78 [112];
if (*(longlong *)(param_1 + 0x18) != 0) {
uVar1 = FUN_181339840(param_2,local_78);
(**(code **)(**(longlong **)(param_1 + 0x18) + 0x48))
(*(longlong **)(param_1 + 0x18),uVar1,param_3);
}
return;
}
--- [10] 0x18134c900 size=397 ---
void .?AV?$DigitalFilter@M$0BA@$01@@::vtbl___AV__DigitalFilter_M_0BA__01__
(longlong param_1,longlong *param_2,undefined8 param_3,undefined8 param_4)
{
int *piVar1;
uint uVar2;
code *pcVar3;
longlong *plVar4;
undefined8 *puVar5;
longlong lVar6;
uint *_Memory;
int iVar7;
bool bVar8;
undefined8 *local_res8;
undefined1 local_res10 [16];
lVar6 = *param_2;
if (*(longlong *)(param_1 + 8) == lVar6) {
iVar7 = 0;
}
else {
iVar7 = FUN_18048cbc0(*(undefined8 *)(param_1 + 8),lVar6,param_3,param_4,0xfffffffffffffffe);
}
if (iVar7 != 0) {
if ((*(uint *)(lVar6 + -0x10) & 0x30000000) == 0) {
LOCK();
*(int *)(lVar6 + -0x10) = *(int *)(lVar6 + -0x10) + 1;
UNLOCK();
}
LOCK();
lVar6 = *(longlong *)(param_1 + 8);
*(longlong *)(param_1 + 8) = *param_2;
UNLOCK();
_Memory = (uint *)(lVar6 + -0x10);
if ((*_Memory & 0x30000000) == 0) {
LOCK();
uVar2 = *_Memory;
*_Memory = *_Memory - 1;
UNLOCK();
if (uVar2 == 0) {
/* WARNING: Subroutine does not return */
free(_Memory);
}
}
if (((*(byte *)(param_1 + 0xa8) & 1) != 0) &&
(plVar4 = (longlong *)FUN_1812d2bd0(param_1), plVar4 != (longlong *)0x0)) {
if ((undefined **)*plVar4 == juce::HWNDComponentPeer::vftable) {
puVar5 = (undefined8 *)FUN_18049a930(local_res10);
SetWindowTextW((HWND)plVar4[0x11],(LPCWSTR)*puVar5);
}
else {
(*(code *)((undefined **)*plVar4)[3])(plVar4,param_2);
}
}
FUN_1804de690(&local_res8,param_1);
puVar5 = local_res8;
iVar7 = *(int *)(param_1 + 0x8c);
bVar8 = local_res8 == (undefined8 *)0x0;
while( true ) {
if (bVar8) {
lVar6 = 0;
}
else {
lVar6 = puVar5[2];
}
if ((lVar6 == 0) || (iVar7 < 1)) break;
iVar7 = iVar7 + -1;
if ((*(int *)(param_1 + 0x8c) <= iVar7) && (iVar7 = *(int *)(param_1 + 0x8c) + -1, iVar7 < 0))
break;
plVar4 = *(longlong **)(*(longlong *)(param_1 + 0x80) + (longlong)iVar7 * 8);
pcVar3 = *(code **)(*plVar4 + 0x30);
if (pcVar3 != .?AVSoothe2Grid@@::vtbl___AVSoothe2Grid__) {
(*pcVar3)(plVar4,param_1);
}
}
if (puVar5 != (undefined8 *)0x0) {
LOCK();
piVar1 = (int *)(puVar5 + 1);
iVar7 = *piVar1;
*piVar1 = *piVar1 + -1;
UNLOCK();
if (iVar7 == 1) {
(**(code **)*local_res8)(local_res8,1);
}
}
}
return;
}
--- [11] 0x18134c760 size=397 ---
void .?AV?$DigitalFilter@M$0BA@$01@@::vtbl___AV__DigitalFilter_M_0BA__01__
(longlong param_1,byte param_2,undefined8 param_3,undefined8 param_4)
{
int *piVar1;
int iVar2;
undefined8 *puVar3;
longlong lVar4;
longlong *plVar5;
longlong lVar6;
bool bVar7;
undefined8 *local_res8;
undefined4 local_28;
undefined4 uStack_24;
undefined4 uStack_20;
undefined4 uStack_1c;
if ((*(byte *)(param_1 + 0xa8) >> 1 & 1) != param_2) {
FUN_1804de690(&local_res8,param_1,param_3,param_4,0xfffffffffffffffe);
*(byte *)(param_1 + 0xa8) = *(byte *)(param_1 + 0xa8) & 0xfd;
*(byte *)(param_1 + 0xa8) = *(byte *)(param_1 + 0xa8) | (param_2 & 1) * '\x02';
lVar6 = 0;
if (param_2 == 0) {
FUN_181342b10(param_1);
}
else {
uStack_1c = *(undefined4 *)(param_1 + 0x2c);
uStack_20 = *(undefined4 *)(param_1 + 0x28);
local_28 = 0;
uStack_24 = 0;
FUN_181342870(param_1,&local_28,1);
}
FUN_18133f790();
if (param_2 == 0) {
FUN_1804e5060(param_1);
for (lVar4 = DAT_182673708; lVar4 != param_1; lVar4 = *(longlong *)(lVar4 + 0x18)) {
if (lVar4 == 0) goto LAB_18134c84f;
}
if (*(longlong *)(param_1 + 0x18) == 0) {
FUN_18133eae0(1);
}
else {
FUN_18133ed60(*(longlong *)(param_1 + 0x18),2,1);
}
}
LAB_18134c84f:
puVar3 = local_res8;
bVar7 = local_res8 != (undefined8 *)0x0;
lVar4 = lVar6;
if (bVar7) {
lVar4 = local_res8[2];
}
if (lVar4 != 0) {
FUN_1813452b0(param_1);
if (bVar7) {
lVar6 = puVar3[2];
}
if (((lVar6 != 0) && ((*(byte *)(param_1 + 0xa8) & 1) != 0)) &&
(plVar5 = (longlong *)FUN_18134c2e0(param_1), plVar5 != (longlong *)0x0)) {
(**(code **)(*plVar5 + 0x10))(plVar5,param_2);
FUN_181343670(param_1);
}
}
if (puVar3 != (undefined8 *)0x0) {
LOCK();
piVar1 = (int *)(puVar3 + 1);
iVar2 = *piVar1;
*piVar1 = *piVar1 + -1;
UNLOCK();
if (iVar2 == 1) {
(**(code **)*local_res8)(local_res8,1);
}
}
}
return;
}
--- [13] 0x18134c3a0 size=933 ---
void .?AV?$DigitalFilter@M$0BA@$01@@::vtbl___AV__DigitalFilter_M_0BA__01__
(longlong *param_1,uint param_2,undefined8 param_3)
{
int *piVar1;
undefined8 *puVar2;
int iVar3;
ulonglong uVar4;
longlong lVar5;
undefined8 *puVar6;
char cVar7;
int iVar8;
longlong *plVar9;
ulonglong *puVar10;
ulonglong uVar11;
undefined4 uVar12;
longlong *plVar13;
undefined8 *puVar14;
ulonglong uVar15;
undefined4 uVar16;
undefined4 uVar17;
undefined4 uVar18;
undefined4 uVar19;
char local_res20;
undefined8 *local_88;
longlong local_80;
undefined8 local_78;
undefined1 local_70 [8];
longlong *local_68;
undefined8 local_60;
undefined8 local_58;
undefined8 uStack_50;
local_78 = 0xfffffffffffffffe;
if ((*(byte *)(param_1 + 0x15) >> 2 & 1) == 0) {
param_2 = param_2 | 0x40000000;
}
else {
param_2 = param_2 & 0xbfffffff;
}
plVar9 = (longlong *)FUN_1812d2bd0();
if ((plVar9 != (longlong *)0x0) && (param_2 == *(uint *)(plVar9 + 2))) {
return;
}
FUN_1804de690(&local_88,param_1);
uVar15 = 0;
uVar4 = uVar15;
puVar6 = local_88;
for (plVar13 = param_1; local_88 = puVar6, plVar13 != (longlong *)0x0;
plVar13 = (longlong *)plVar13[3]) {
puVar10 = (ulonglong *)FUN_18051e290(local_70,plVar13,uVar4);
uVar4 = *puVar10;
puVar6 = local_88;
}
cVar7 = '\0';
local_res20 = '\0';
local_80 = 0;
uVar16 = 0;
uVar17 = 0;
uVar18 = 0;
uVar19 = 0;
local_58 = 0;
uStack_50 = 0;
iVar8 = -1;
if (plVar9 != (longlong *)0x0) {
local_68 = plVar9;
cVar7 = (**(code **)(*plVar9 + 0x78))(plVar9);
local_res20 = (**(code **)(*plVar9 + 0x68))(plVar9);
local_80 = plVar9[5];
uVar16 = *(undefined4 *)((longlong)plVar9 + 0x14);
uVar17 = (undefined4)plVar9[3];
local_58 = *(undefined8 *)((longlong)plVar9 + 0x14);
uVar18 = *(undefined4 *)((longlong)plVar9 + 0x1c);
uVar19 = (undefined4)plVar9[4];
uStack_50 = *(undefined8 *)((longlong)plVar9 + 0x1c);
iVar8 = (**(code **)(*plVar9 + 0x100))(plVar9);
*(byte *)(param_1 + 0x15) = *(byte *)(param_1 + 0x15) & 0xfe;
if (DAT_182673700 == 0) {
local_60 = FUN_1811316e0(0x130);
DAT_182673700 = FUN_18133c6c0(local_60);
}
FUN_180488600(DAT_182673700 + 0x58,param_1);
FUN_181343670(param_1);
uVar11 = uVar15;
if (puVar6 != (undefined8 *)0x0) {
uVar11 = puVar6[2];
}
if (uVar11 == 0) {
(**(code **)*plVar9)(plVar9,1);
goto LAB_18134c6f7;
}
FUN_18134bfe0(param_1,uVar4 & 0xffffffff,uVar4 >> 0x20,(int)param_1[5],
*(undefined4 *)((longlong)param_1 + 0x2c));
(**(code **)*plVar9)(plVar9,1);
}
lVar5 = param_1[3];
if (lVar5 != 0) {
plVar9 = *(longlong **)(lVar5 + 0x40);
for (plVar13 = plVar9; plVar13 != plVar9 + *(int *)(lVar5 + 0x4c); plVar13 = plVar13 + 1) {
if (param_1 == (longlong *)*plVar13) {
uVar12 = (undefined4)((longlong)plVar13 - (longlong)plVar9 >> 3);
goto LAB_18134c588;
}
}
uVar12 = 0xffffffff;
LAB_18134c588:
FUN_181343a90(lVar5,uVar12,1);
}
if (puVar6 != (undefined8 *)0x0) {
uVar15 = puVar6[2];
}
if (uVar15 != 0) {
*(byte *)(param_1 + 0x15) = *(byte *)(param_1 + 0x15) | 1;
plVar9 = (longlong *)(**(code **)(*param_1 + 0x150))(param_1,param_2,param_3);
if (DAT_182673700 == 0) {
local_60 = FUN_1811316e0(0x130);
DAT_182673700 = FUN_18133c6c0(local_60);
}
lVar5 = DAT_182673700;
plVar13 = (longlong *)(DAT_182673700 + 0x58);
puVar14 = (undefined8 *)*plVar13;
iVar3 = *(int *)(DAT_182673700 + 100);
puVar2 = puVar14 + iVar3;
for (; puVar14 != puVar2; puVar14 = puVar14 + 1) {
if (param_1 == (longlong *)*puVar14) goto LAB_18134c651;
}
if (*(int *)(DAT_182673700 + 0x60) < iVar3 + 1) {
FUN_18047cb30(plVar13,iVar3 + 9 + (iVar3 + 1) / 2 & 0xfffffff8);
}
iVar3 = *(int *)(lVar5 + 100);
*(int *)(lVar5 + 100) = iVar3 + 1;
*(longlong **)(*plVar13 + (longlong)iVar3 * 8) = param_1;
LAB_18134c651:
param_1[4] = uVar4;
FUN_18134b470(plVar9);
if (-1 < iVar8) {
(**(code **)(*plVar9 + 0x108))(plVar9,iVar8);
}
(**(code **)(*plVar9 + 0x10))(plVar9,*(byte *)(param_1 + 0x15) >> 1 & 1);
plVar9 = (longlong *)FUN_1812d2bd0(param_1);
if (plVar9 != (longlong *)0x0) {
if (cVar7 != '\0') {
(**(code **)(*plVar9 + 0x70))(plVar9,1);
*(undefined4 *)((longlong)plVar9 + 0x14) = uVar16;
*(undefined4 *)(plVar9 + 3) = uVar17;
*(undefined4 *)((longlong)plVar9 + 0x1c) = uVar18;
*(undefined4 *)(plVar9 + 4) = uVar19;
}
if (local_res20 != '\0') {
(**(code **)(*plVar9 + 0x60))(plVar9,1);
}
if ((*(byte *)((longlong)param_1 + 0xa9) & 1) != 0) {
(**(code **)(*plVar9 + 0xa8))(plVar9,1);
}
plVar9[5] = local_80;
FUN_18134bdf0(param_1);
FUN_181343670(param_1);
}
}
LAB_18134c6f7:
if (puVar6 != (undefined8 *)0x0) {
LOCK();
piVar1 = (int *)(puVar6 + 1);
iVar8 = *piVar1;
*piVar1 = *piVar1 + -1;
UNLOCK();
if (iVar8 == 1) {
(**(code **)*local_88)(local_88,1);
}
}
return;
}
--- [16] 0x18134c270 size=69 ---
undefined4 .?AV?$DigitalFilter@M$0BA@$01@@::vtbl___AV__DigitalFilter_M_0BA__01__(void)
{
undefined8 uVar1;
if (DAT_182673700 == 0) {
uVar1 = FUN_1811316e0(0x130);
DAT_182673700 = FUN_18133c6c0(uVar1);
}
return *(undefined4 *)(DAT_182673700 + 0xc0);
}
--- [17] 0x1805689c0 size=60 ---
void .?AV?$DigitalFilter@M$0BA@$01@@::vtbl___AV__DigitalFilter_M_0BA__01__(longlong *param_1)
{
if ((char)param_1[0x18] == '\0') {
FUN_180569ff0();
if (param_1[0x17] != 0) {
(**(code **)(*param_1 + 0x158))(param_1);
*(undefined1 *)(param_1 + 0x18) = 1;
}
}
return;
}
--- [19] 0x18134be30 size=195 ---
uint .?AV?$DigitalFilter@M$0BA@$01@@::vtbl___AV__DigitalFilter_M_0BA__01__
(longlong param_1,undefined4 param_2,undefined4 param_3)
{
longlong *plVar1;
ulonglong uVar2;
char cVar3;
uint uVar4;
ulonglong *puVar5;
longlong lVar6;
undefined1 local_res20 [8];
uVar4 = 0;
if ((*(byte *)(param_1 + 0xa8) & 8) == 0) {
return 1;
}
if ((*(byte *)(param_1 + 0xa8) & 0x10) != 0) {
uVar4 = *(int *)(param_1 + 0x4c) - 1;
lVar6 = (longlong)(int)uVar4;
if (-1 < (int)uVar4) {
do {
plVar1 = *(longlong **)(*(longlong *)(param_1 + 0x40) + lVar6 * 8);
if ((*(byte *)(plVar1 + 0x15) & 2) != 0) {
puVar5 = (ulonglong *)FUN_18051e060(local_res20,plVar1,CONCAT44(param_3,param_2));
uVar2 = *puVar5;
if ((((uint)uVar2 < *(uint *)(plVar1 + 5)) &&
((uint)(uVar2 >> 0x20) < *(uint *)((longlong)plVar1 + 0x2c))) &&
(cVar3 = (**(code **)(*plVar1 + 0x98))(plVar1,uVar2 & 0xffffffff,uVar2 >> 0x20),
cVar3 != '\0')) {
uVar4 = 1;
}
else {
uVar4 = 0;
}
if ((char)uVar4 != '\0') {
return 1;
}
}
lVar6 = lVar6 + -1;
} while (-1 < lVar6);
}
}
return uVar4 & 0xffffff00;
}
--- [21] 0x18134bcf0 size=66 ---
void .?AV?$DigitalFilter@M$0BA@$01@@::vtbl___AV__DigitalFilter_M_0BA__01__(longlong param_1)
{
undefined8 *puVar1;
if (((*(byte *)(param_1 + 0xa8) & 0x40) == 0) &&
(*(longlong **)(param_1 + 0x18) != (longlong *)0x0)) {
/* WARNING: Could not recover jumptable at 0x00018134bd0d. Too many branches */
/* WARNING: Treating indirect jump as call */
(**(code **)(**(longlong **)(param_1 + 0x18) + 0xa8))();
return;
}
puVar1 = (undefined8 *)FUN_1811316e0(8);
*puVar1 = juce::KeyboardFocusTraverser::vftable;
return;
}
--- [23] 0x18134bc50 size=126 ---
void .?AV?$DigitalFilter@M$0BA@$01@@::vtbl___AV__DigitalFilter_M_0BA__01__(longlong param_1)
{
longlong *plVar1;
undefined8 local_18;
undefined4 uStack_10;
undefined4 uStack_c;
if ((*(byte *)(param_1 + 0xa8) & 1) == 0) {
uStack_10 = *(undefined4 *)(param_1 + 0x28);
uStack_c = *(undefined4 *)(param_1 + 0x2c);
local_18 = 0;
FUN_181342870(0,&local_18,1);
}
else {
plVar1 = (longlong *)FUN_1812d2bd0();
if (plVar1 != (longlong *)0x0) {
/* WARNING: Could not recover jumptable at 0x00018134bc94. Too many branches */
/* WARNING: Treating indirect jump as call */
(**(code **)(*plVar1 + 0xf0))
(plVar1,(float)(int)(0xff - (uint)*(byte *)(param_1 + 0xac)) / DAT_1824c4548);
return;
}
}
return;
}
--- [33] 0x1805895c0 size=2420 ---
/* WARNING: Globals starting with '_' overlap smaller symbols at the same address */
void .?AV?$FilterGraphGrid@M@@::vtbl___AV__FilterGraphGrid_M__(longlong param_1)
{
double dVar1;
double dVar2;
double dVar3;
double dVar4;
double dVar5;
undefined8 *puVar6;
undefined8 uVar7;
ulonglong uVar8;
uint *_Memory;
ulonglong uVar9;
longlong *plVar10;
longlong *plVar11;
longlong lVar12;
longlong lVar13;
longlong *plVar14;
char cVar15;
uint uVar16;
ulonglong uVar17;
ulonglong uVar18;
ulonglong uVar19;
undefined8 uVar20;
uint uVar21;
bool bVar22;
double dVar23;
float fVar24;
float fVar25;
float fVar26;
float fVar27;
float fVar28;
float fVar29;
char local_res8;
undefined7 uStackX_9;
float local_res10;
double local_res18;
double local_res20;
undefined4 local_180;
undefined4 local_160;
undefined1 local_158 [4];
undefined4 local_154;
double local_150;
double local_148;
double local_140;
double local_138;
undefined1 local_130 [4];
undefined4 local_12c;
undefined1 local_128 [8];
undefined1 local_120 [8];
undefined1 local_118 [8];
undefined1 local_110 [8];
undefined4 local_108;
undefined4 uStack_104;
undefined4 uStack_100;
undefined4 uStack_fc;
undefined4 local_f8;
undefined4 uStack_f4;
undefined4 uStack_f0;
undefined4 uStack_ec;
if (*(longlong *)(param_1 + 0xb8) != 0) {
plVar14 = (longlong *)(param_1 + 0xb0);
if (*(code **)(*plVar14 + 8) == .?AUSoothe2VertexData@@::vtbl___AUSoothe2VertexData__) {
if (*(longlong *)(param_1 + 0xb8) == 0) {
FUN_180569ff0(param_1);
}
uVar7 = *(undefined8 *)(param_1 + 0xb8);
}
else {
uVar7 = (**(code **)(*plVar14 + 8))(plVar14);
}
puVar6 = (undefined8 *)FUN_18140e230(local_128,*(undefined4 *)(param_1 + 0x211));
FUN_1813f0dc0(uVar7,DAT_18267423c,*puVar6,param_1);
if (*(code **)(*plVar14 + 8) == .?AUSoothe2VertexData@@::vtbl___AUSoothe2VertexData__) {
if (*(longlong *)(param_1 + 0xb8) == 0) {
FUN_180569ff0(param_1);
}
uVar7 = *(undefined8 *)(param_1 + 0xb8);
}
else {
uVar7 = (**(code **)(*plVar14 + 8))(plVar14);
}
puVar6 = (undefined8 *)FUN_18140e230(local_120,*(undefined4 *)(param_1 + 0x215));
FUN_1813f0dc0(uVar7,DAT_182674188,*puVar6,param_1);
}
uVar18 = 0;
fVar29 = (float)*(int *)(param_1 + 0x2c);
fVar26 = (float)*(int *)(param_1 + 0x28);
fVar28 = fVar26 * DAT_1824c3c98;
fVar27 = fVar29 * DAT_1824c3c90;
*(float *)(param_1 + 0x200) = fVar29 * DAT_1824c3c70;
local_res10 = fVar26;
FUN_18134bfe0(*(undefined8 *)(param_1 + 0x120),0,0,*(undefined4 *)(param_1 + 0x28),
*(undefined4 *)(param_1 + 0x2c));
dVar5 = DAT_1824c4520;
fVar24 = DAT_1824c3d8c;
if (*(char *)(param_1 + 0x210) != '\0') {
if (0 < *(int *)(param_1 + 0xfc)) {
bVar22 = *(int *)(param_1 + 0xfc) != 0;
uVar9 = uVar18;
uVar17 = uVar18;
uVar19 = uVar18;
do {
uVar8 = uVar18;
if (bVar22) {
uVar8 = *(ulonglong *)(uVar17 + *(longlong *)(param_1 + 0xf0));
}
puVar6 = (undefined8 *)FUN_1812ea010(uVar8,&local_res8);
cVar15 = *(char *)*puVar6;
_Memory = (uint *)(CONCAT71(uStackX_9,local_res8) + -0x10);
if ((*_Memory & 0x30000000) == 0) {
LOCK();
uVar16 = *_Memory;
*_Memory = *_Memory - 1;
UNLOCK();
if (uVar16 == 0) {
/* WARNING: Subroutine does not return */
free(_Memory);
}
}
uVar16 = (uint)uVar9;
if (cVar15 == '\0') {
if (uVar16 < *(uint *)(param_1 + 0xfc)) {
plVar14 = *(longlong **)(uVar17 + *(longlong *)(param_1 + 0xf0));
(**(code **)(*plVar14 + 0x58))(plVar14,0);
}
else {
(**(code **)(_DAT_00000000 + 0x58))(0,0);
}
}
else {
if (uVar16 < *(uint *)(param_1 + 0xdc)) {
fVar25 = *(float *)(uVar19 + *(longlong *)(param_1 + 0xd0));
}
else {
fVar25 = 0.0;
}
local_res20 = dVar5;
local_res18 = (double)(fVar25 * fVar26) + dVar5;
local_180 = SUB84((double)fVar27 + dVar5,0);
uVar9 = uVar18;
if (uVar16 < *(uint *)(param_1 + 0xfc)) {
uVar9 = *(ulonglong *)(uVar17 + *(longlong *)(param_1 + 0xf0));
}
FUN_18134bfe0(uVar9,local_res18._0_4_ - (int)(fVar28 * fVar24),
(ulonglong)dVar5 & 0xffffffff,
(ulonglong)((double)fVar28 + dVar5) & 0xffffffff,local_180);
}
uVar16 = uVar16 + 1;
uVar9 = (ulonglong)uVar16;
uVar19 = uVar19 + 4;
uVar17 = uVar17 + 8;
bVar22 = uVar16 < *(uint *)(param_1 + 0xfc);
} while ((int)uVar16 < (int)*(uint *)(param_1 + 0xfc));
}
dVar4 = DAT_1824c41c8;
cVar15 = DAT_1824c3ea4 < *(float *)(param_1 + 0x20c);
if (0 < *(int *)(param_1 + 0xec)) {
bVar22 = *(int *)(param_1 + 0xec) != 0;
local_res20 = 0.0;
uVar9 = uVar18;
uVar16 = DAT_1824c4f30;
local_res8 = cVar15;
do {
plVar14 = (longlong *)0x0;
if (bVar22) {
fVar24 = *(float *)((longlong)local_res20 + *(longlong *)(param_1 + 0xe0));
}
else {
fVar24 = 0.0;
}
fVar24 = fVar24 * fVar29;
uVar21 = (uint)uVar9;
if ((fVar24 <= fVar27) || (fVar29 - fVar27 <= fVar24)) {
plVar10 = plVar14;
if (uVar21 < *(uint *)(param_1 + 0x10c)) {
plVar10 = *(longlong **)(uVar18 + *(longlong *)(param_1 + 0x100));
}
(**(code **)(*plVar10 + 0x58))(plVar10,0);
if (uVar21 < *(uint *)(param_1 + 0x11c)) {
plVar14 = *(longlong **)(uVar18 + *(longlong *)(param_1 + 0x110));
}
(**(code **)(*plVar14 + 0x58))();
}
else {
plVar10 = plVar14;
if (uVar21 < *(uint *)(param_1 + 0x10c)) {
plVar10 = *(longlong **)(uVar18 + *(longlong *)(param_1 + 0x100));
}
(**(code **)(*plVar10 + 0x58))(fVar29 - fVar27,1);
plVar10 = plVar14;
if (uVar21 < *(uint *)(param_1 + 0x11c)) {
plVar10 = *(longlong **)(uVar18 + *(longlong *)(param_1 + 0x110));
}
(**(code **)(*plVar10 + 0x58))(plVar10,cVar15);
plVar10 = (longlong *)(param_1 + 0xb0);
fVar25 = fVar28 * DAT_1824c3df0;
fVar26 = fVar26 - fVar28 * DAT_1824c3c94;
fVar24 = (float)((uint)fVar27 ^ uVar16) + fVar24;
dVar3 = (double)fVar27 + dVar5;
dVar2 = (double)fVar25 + dVar5;
local_160 = SUB84(dVar3,0);
if (*(code **)(*plVar10 + 8) == .?AUSoothe2VertexData@@::vtbl___AUSoothe2VertexData__) {
if (*(longlong *)(param_1 + 0xb8) == 0) {
FUN_180569ff0(param_1);
}
uVar7 = *(undefined8 *)(param_1 + 0xb8);
}
else {
uVar7 = (**(code **)(*plVar10 + 8))(plVar10);
}
FUN_1813f22a0(uVar7,local_158,DAT_18267423c,param_1);
if (*(code **)(*plVar10 + 8) == .?AUSoothe2VertexData@@::vtbl___AUSoothe2VertexData__) {
if (*(longlong *)(param_1 + 0xb8) == 0) {
FUN_180569ff0(param_1);
}
local_res18 = *(double *)(param_1 + 0xb8);
}
else {
local_res18 = (double)(**(code **)(*plVar10 + 8))(plVar10);
}
if (uVar21 < *(uint *)(param_1 + 0x10c)) {
plVar14 = *(longlong **)(uVar18 + *(longlong *)(param_1 + 0x100));
}
puVar6 = (undefined8 *)FUN_18140e230(local_118,local_154);
FUN_1813f0dc0(local_res18,DAT_182674268,*puVar6,plVar14);
plVar14 = (longlong *)0x0;
plVar11 = plVar14;
if (uVar21 < *(uint *)(param_1 + 0x10c)) {
plVar11 = *(longlong **)(uVar18 + *(longlong *)(param_1 + 0x100));
}
if (((((int)plVar11[0x3d] != 0) || (*(int *)((longlong)plVar11 + 0x1ec) != 0)) ||
((int)plVar11[0x3e] != 0)) || (*(int *)((longlong)plVar11 + 500) != 0)) {
plVar11[0x3d] = 0;
plVar11[0x3e] = 0;
uStack_100 = (undefined4)plVar11[5];
uStack_fc = *(undefined4 *)((longlong)plVar11 + 0x2c);
local_108 = 0;
uStack_104 = 0;
FUN_181342870(0,&local_108,1);
}
plVar11 = plVar14;
if (uVar21 < *(uint *)(param_1 + 0x10c)) {
plVar11 = *(longlong **)(uVar18 + *(longlong *)(param_1 + 0x100));
}
FUN_18134bfe0(plVar11,(ulonglong)((double)(fVar26 - fVar25) + dVar5) & 0xffffffff,
(ulonglong)((double)fVar24 + dVar5) & 0xffffffff,
(ulonglong)dVar2 & 0xffffffff,local_160);
cVar15 = local_res8;
if (local_res8 == '\0') {
if (uVar21 < *(uint *)(param_1 + 0x11c)) {
plVar14 = *(longlong **)(uVar18 + *(longlong *)(param_1 + 0x110));
}
(**(code **)(*plVar14 + 0x58))();
uVar16 = DAT_1824c4f30;
fVar26 = local_res10;
}
else {
dVar1 = (double)(float)((double)fVar26 - (double)fVar25 * dVar4) + dVar5;
dVar23 = (double)fVar24 + dVar5;
local_150 = dVar1;
local_148 = dVar23;
local_140 = dVar2;
local_138 = dVar3;
if (*(code **)(*plVar10 + 8) == .?AUSoothe2VertexData@@::vtbl___AUSoothe2VertexData__) {
if (*(longlong *)(param_1 + 0xb8) == 0) {
FUN_180569ff0(param_1);
}
uVar7 = *(undefined8 *)(param_1 + 0xb8);
}
else {
uVar7 = (**(code **)(*plVar10 + 8))(plVar10);
}
FUN_1813f22a0(uVar7,local_130,DAT_182674188,param_1);
if (*(code **)(*plVar10 + 8) == .?AUSoothe2VertexData@@::vtbl___AUSoothe2VertexData__) {
if (*(longlong *)(param_1 + 0xb8) == 0) {
FUN_180569ff0(param_1);
}
uVar7 = *(undefined8 *)(param_1 + 0xb8);
}
else {
uVar7 = (**(code **)(*plVar10 + 8))(plVar10);
}
if (uVar21 < *(uint *)(param_1 + 0x11c)) {
uVar20 = *(undefined8 *)(uVar18 + *(longlong *)(param_1 + 0x110));
}
else {
uVar20 = 0;
}
puVar6 = (undefined8 *)FUN_18140e230(local_110,local_12c);
FUN_1813f0dc0(uVar7,DAT_182674268,*puVar6,uVar20);
lVar13 = 0;
lVar12 = lVar13;
if (uVar21 < *(uint *)(param_1 + 0x11c)) {
lVar12 = *(longlong *)(uVar18 + *(longlong *)(param_1 + 0x110));
}
if (((*(int *)(lVar12 + 0x1e8) != 0) || (*(int *)(lVar12 + 0x1ec) != 0)) ||
((*(int *)(lVar12 + 0x1f0) != 0 || (*(int *)(lVar12 + 500) != 0)))) {
*(undefined8 *)(lVar12 + 0x1e8) = 0;
*(undefined8 *)(lVar12 + 0x1f0) = 0;
uStack_f0 = *(undefined4 *)(lVar12 + 0x28);
uStack_ec = *(undefined4 *)(lVar12 + 0x2c);
local_f8 = 0;
uStack_f4 = 0;
FUN_181342870(0,&local_f8,1);
}
if (uVar21 < *(uint *)(param_1 + 0x11c)) {
lVar13 = *(longlong *)(uVar18 + *(longlong *)(param_1 + 0x110));
}
FUN_18134bfe0(lVar13,(ulonglong)dVar1 & 0xffffffff,(ulonglong)dVar23 & 0xffffffff,
(ulonglong)dVar2 & 0xffffffff,local_160);
uVar16 = DAT_1824c4f30;
cVar15 = local_res8;
fVar26 = local_res10;
}
}
uVar21 = uVar21 + 1;
uVar9 = (ulonglong)uVar21;
local_res20 = (double)((longlong)local_res20 + 4);
uVar18 = uVar18 + 8;
bVar22 = uVar21 < *(uint *)(param_1 + 0xec);
} while ((int)uVar21 < (int)*(uint *)(param_1 + 0xec));
}
}
return;
}
--- [40] 0x18134b940 size=196 ---
void .?AV?$FilterGraph@M$05$0CAA@@@::vtbl___AV__FilterGraph_M_05_0CAA___
(undefined8 param_1,undefined8 param_2,undefined8 param_3,undefined8 param_4)
{
undefined8 *puVar1;
longlong *plVar2;
undefined8 uVar3;
uVar3 = 0xfffffffffffffffe;
if (DAT_182673c20 == (undefined8 *)0x0) {
puVar1 = (undefined8 *)FUN_1811316e0(0x28);
FUN_1812a59f0(puVar1);
FUN_1812a7230(puVar1 + 2);
*puVar1 = juce::ModalComponentManager::vftable;
puVar1[2] = juce::ModalComponentManager::vftable;
puVar1[3] = 0;
puVar1[4] = 0;
DAT_182673c20 = puVar1;
}
FUN_18133b010(DAT_182673c20,1,param_3,param_4,uVar3);
plVar2 = (longlong *)FUN_18134adf0(param_1);
if (*(code **)(*plVar2 + 0x78) == FUN_1812c6070) {
/* WARNING: Could not recover jumptable at 0x00018134b9e5. Too many branches */
/* WARNING: Treating indirect jump as call */
MessageBeep(0);
return;
}
(**(code **)(*plVar2 + 0x78))(plVar2);
return;
}
--- [42] 0x18134b870 size=87 ---
void .?AV?$FilterGraphGrid@M@@::vtbl___AV__FilterGraphGrid_M__
(undefined8 param_1,undefined4 param_2,undefined8 param_3)
{
undefined8 uVar1;
uVar1 = FUN_1811316e0(0x158);
FUN_18050dd00(uVar1,param_1,param_2,param_3,0);
return;
}
--- [43] 0x180589f40 size=99 ---
void .?AV?$FilterGraphGrid@M@@::vtbl___AV__FilterGraphGrid_M__
(undefined8 param_1,undefined8 param_2)
{
undefined8 *puVar1;
undefined1 local_res18 [16];
puVar1 = (undefined8 *)FUN_18140e230(local_res18,DAT_18262bb74);
FUN_1813f0dc0(param_2,DAT_182674268,*puVar1,param_1);
puVar1 = (undefined8 *)FUN_18140e230(local_res18,DAT_182674358);
FUN_1813f0dc0(param_2,DAT_182674230,*puVar1,param_1);
return;
}
--- [49] 0x18058b010 size=176 ---
void .?AV?$FilterGraph@M$05$0CAA@@@::vtbl___AV__FilterGraph_M_05_0CAA___(longlong param_1)
{
byte *pbVar1;
ulonglong uVar2;
byte bVar3;
undefined8 local_18;
undefined4 uStack_10;
undefined4 uStack_c;
uVar2 = (ulonglong)*(uint *)(param_1 + 0x97b0);
if (0 < (int)*(uint *)(param_1 + 0x97b0)) {
bVar3 = *(byte *)(param_1 + 0x9939);
pbVar1 = (byte *)(param_1 + 0x993a);
do {
bVar3 = bVar3 | *pbVar1;
pbVar1 = pbVar1 + 1;
*(byte *)(param_1 + 0x9939) = bVar3;
uVar2 = uVar2 - 1;
} while (uVar2 != 0);
}
if (*(char *)(param_1 + 0x9939) != '\0') {
(**(code **)(*(longlong *)(param_1 + -200) + 0x170))(param_1 + -200);
uStack_10 = *(undefined4 *)(param_1 + -0xa0);
uStack_c = *(undefined4 *)(param_1 + -0x9c);
local_18 = 0;
FUN_181342870(param_1 + -200,&local_18,1);
*(undefined1 *)(param_1 + 0x9939) = 0;
}
return;
}
--- [52] 0x18160b000 size=4718 ---
/* WARNING: Instruction at (ram,0x00018160bbc8) overlaps instruction at (ram,0x00018160bbc3)
*/
/* WARNING: Function: __security_check_cookie replaced with injection: security_check_cookie */
/* WARNING: Removing unreachable block (ram,0x00018160b5f3) */
/* WARNING: Removing unreachable block (ram,0x00018160b060) */
/* WARNING: Removing unreachable block (ram,0x00018160b041) */
/* WARNING: Removing unreachable block (ram,0x00018160b229) */
/* WARNING: Removing unreachable block (ram,0x00018160bbc3) */
/* WARNING: Removing unreachable block (ram,0x00018160b46f) */
/* WARNING: Globals starting with '_' overlap smaller symbols at the same address */
/* WARNING: Restarted to delay deadcode elimination for space: stack */
void .?AV?$FilterGraph@M$05$0CAA@@@::vtbl___AV__FilterGraph_M_05_0CAA___
(longlong param_1,int param_2,undefined8 param_3)
{
uint uVar1;
uint uVar2;
byte bVar3;
undefined8 uVar4;
longlong lVar5;
undefined1 *puVar6;
uint uVar7;
ulonglong uVar8;
uint uVar9;
uint uVar10;
uint uVar11;
uint uVar12;
uint *puVar13;
uint uVar14;
longlong lVar15;
undefined4 *puVar16;
ulonglong uVar17;
longlong *plVar18;
uint *puVar19;
uint *puVar20;
undefined1 *puVar21;
undefined8 uVar22;
uint uVar23;
uint uVar24;
uint uVar25;
uint uVar26;
uint uVar27;
int iVar28;
uint uVar29;
ulonglong uVar30;
uint uVar31;
longlong lVar32;
bool bVar33;
int unaff_retaddr;
undefined1 auStack_148 [32];
int local_128;
uint local_124;
uint *local_120;
undefined *local_118;
uint local_110;
uint local_10c;
uint local_108;
uint local_104;
uint local_100;
uint local_fc;
int local_f8;
undefined8 local_f0;
undefined4 local_e8;
uint local_e4;
int local_e0;
uint local_dc;
code *local_d8;
longlong local_d0;
undefined8 local_c8;
undefined4 local_c0;
undefined4 local_bc;
longlong local_b8;
longlong local_b0;
longlong local_a8;
code *local_a0;
uint local_94;
uint local_90;
undefined4 local_80;
uint local_7c;
int local_78;
uint local_74;
undefined1 local_68 [8];
uint local_60;
uint local_5c;
ulonglong local_40;
local_40 = DAT_182615970 ^ (ulonglong)auStack_148;
uVar29 = (uint)&stack0x00000000 & 0x3ff;
local_dc = 0x9ea5 - ((uVar29 + 2) * (uVar29 + 1) * uVar29) % 3 ^ 0x9655;
local_e0 = 0x420;
local_f0 = 0x100;
local_120 = &DAT_18163cb4c;
local_118 = &DAT_18163cc4c;
uVar29 = (DAT_18163cb4c ^ 0x811c9e53) * 0x10001d1;
uVar30 = (ulonglong)uVar29;
uVar29 = _DAT_18163cb78 ^
(_DAT_18163cb74 ^
(_DAT_18163cb70 ^
(_DAT_18163cb6c ^
(_DAT_18163cb68 ^
(DAT_18163cb64 ^
(DAT_18163cb60 ^
(DAT_18163cb5c ^
(DAT_18163cb58 ^ (DAT_18163cb54 ^ (DAT_18163cb50 ^ uVar29) * 0x10001d1) * 0x10001d1) *
0x10001d1) * 0x10001d1) * 0x10001d1) * 0x10001d1) * 0x10001d1) * 0x10001d1) * 0x10001d1)
* 0x10001d1;
local_f8 = param_2;
local_d0 = param_1;
local_c8 = param_3;
do {
uVar22 = rdtsc();
local_110 = (uint)uVar22 ^ (uint)((ulonglong)uVar22 >> 0x20);
FUN_18160962e();
uVar9 = (unaff_retaddr + 1) * unaff_retaddr & 0x80000001;
if ((int)uVar9 < 0) {
uVar9 = (uVar9 - 1 | 0xfffffffe) + 1;
}
} while (uVar9 != 0);
local_110 = (local_110 * -0x3d4d4602 >> 0x18 ^ local_110 * -0x3d4d4602) * -0x3b313595;
if (local_110 < 0x430fc8) {
do {
local_d8 = FUN_1813f2240;
uVar9 = (unaff_retaddr + 1) * unaff_retaddr & 0x80000001;
if ((int)uVar9 < 0) {
uVar9 = (uVar9 - 1 | 0xfffffffe) + 1;
}
} while (uVar9 != 0);
uVar8 = FUN_1813f2240(0,0x672d);
if (1 < uVar8) {
FUN_18113eab0();
}
}
lVar15 = 0x17;
uVar29 = (_DAT_18163cb7c ^ uVar29 * 0x10001d1) * 0x10001d1;
local_118 = (undefined *)0xeb1172bd7cee29a8;
puVar19 = (uint *)&DAT_18163cb80;
local_120 = (uint *)CONCAT44(local_120._4_4_,0x7cee29a8);
do {
uVar9 = *puVar19;
puVar19 = puVar19 + 1;
uVar29 = (uVar9 ^ uVar29) * 0x10001d1;
lVar15 = lVar15 + -1;
} while (lVar15 != 0);
uVar29 = (*puVar19 ^ uVar29) * 0x10001d1;
if ((uVar29 >> 8 & 1) == 0) {
uVar9 = uVar29 & 0x27f;
iVar28 = (uVar9 + 2) * (uVar9 + 1) * uVar9;
uVar9 = ((iVar28 >> 1) - (iVar28 >> 3)) + iVar28 * 0x55555555 >> 0x1e;
}
else {
uVar9 = uVar29 & 0x3f;
uVar9 = (uVar9 + 1) * (uVar9 + 1) * uVar9 * uVar9 & 1;
}
uVar9 = 0xf642 - uVar9 ^ 0xf542;
puVar20 = (uint *)((longlong)puVar19 + (longlong)(int)uVar9 + -0x2f4);
uVar24 = (uint)puVar20 & 0xff;
uVar9 = (*puVar20 ^
(*(uint *)((longlong)puVar19 + (longlong)(int)uVar9 + -0x2f8) ^
(*(uint *)((longlong)puVar19 + (longlong)(int)uVar9 + -0x2fc) ^ uVar29) * 0x10001d1) *
0x10001d1) * 0x10001d1;
uVar29 = uVar9 & 0x3bff;
uVar29 = ((uVar29 + 1) * uVar29 + 7) % 0x51 - ((uVar24 + 2) * (uVar24 + 1) * uVar24) % 3;
puVar20 = (uint *)((longlong)puVar20 +
(0x204 - (ulonglong)(~((int)(uVar29 | -uVar29) >> 0x1f & 0xfffffdffU) & 0xfae7))
);
bVar33 = puVar20 == (uint *)0x0;
bVar3 = POPCOUNT((ulonglong)puVar20 & 0xff);
do {
if (((bVar3 & 1) == 0) && (bVar33)) {
uVar30 = ~(~uVar30 + 1) + 1;
}
uVar29 = (unaff_retaddr + 1) * unaff_retaddr & 0x80000001;
if ((int)uVar29 < 0) {
uVar29 = (uVar29 - 1 | 0xfffffffe) + 1;
}
bVar33 = uVar29 == 0;
bVar3 = POPCOUNT(uVar29 & 0xff);
} while (!bVar33);
uVar24 = (int)puVar20 + 4U & 0x5f;
uVar26 = (puVar20[1] ^ (*puVar20 ^ uVar9) * 0x10001d1) * 0x10001d1;
uVar29 = uVar26 & 0x1f;
puVar20 = (uint *)((longlong)puVar20 +
(((longlong)
(int)(((uVar24 + 1) * (uVar24 + 1) * uVar24 * uVar24 & 1) +
((uVar29 + 1) * (uVar29 + 1) * uVar29 * uVar29 & 0x80000003)) ^ 0x400U) -
0x3f8));
uVar29 = *puVar20;
uVar9 = puVar20[1];
uVar24 = puVar20[2];
uVar25 = puVar20[3];
uVar27 = puVar20[4];
uVar1 = puVar20[5];
do {
local_e8 = 0xf4b58d1e;
uVar10 = (unaff_retaddr + 1) * unaff_retaddr & 0x80000001;
if ((int)uVar10 < 0) {
uVar10 = (uVar10 - 1 | 0xfffffffe) + 1;
}
} while (uVar10 != 0);
uVar10 = puVar20[6];
uVar2 = puVar20[7];
do {
local_c0 = 0x72;
local_b8 = 0x18160b707;
uVar11 = (unaff_retaddr + 1) * unaff_retaddr & 0x80000001;
if ((int)uVar11 < 0) {
uVar11 = (uVar11 - 1 | 0xfffffffe) + 1;
}
} while (uVar11 != 0);
local_128 = 0x101f68d;
do {
plVar18 = &local_b0;
puVar16 = &local_bc;
puVar19 = &local_104;
FUN_18160cf73();
*puVar19 = 0x4816aad0;
*puVar16 = 0x6c;
*plVar18 = 0x18160b7e7;
uVar11 = (unaff_retaddr + 1) * unaff_retaddr & 0x80000001;
if ((int)uVar11 < 0) {
uVar11 = (uVar11 - 1 | 0xfffffffe) + 1;
}
} while (uVar11 != 0);
lVar15 = local_128 + local_b8;
uVar11 = local_104 << 4;
uVar14 = local_104 >> 0x1c;
uVar7 = local_104 >> 4;
uVar23 = local_104 << 0x1c;
local_128 = 0;
local_104 = 0;
uVar11 = ((uVar7 | uVar23) & 0xe1e1e1e1 | (uVar11 | uVar14) & 0x1e1e1e1e) ^ 0xe5d863fd;
uVar14 = ((uVar11 & 0x33333333) << 2 | uVar11 >> 2 & 0x33333333) + 0x87604ead;
uVar11 = (uVar14 >> 0xf ^ uVar14) & 0x3fff;
uVar14 = uVar14 ^ (uVar11 << 0xf | uVar11);
uVar14 = ((uVar14 << 0x10 | uVar14 >> 0x10) & 0xed1212ed |
(uVar14 >> 0x10 | uVar14 << 0x10) & 0x12eded12) ^ 0xb938882a;
uVar11 = (uVar14 >> 0xe ^ uVar14) >> 2 & 0x3fff;
uVar14 = uVar14 ^ (uVar11 << 0xe | uVar11) << 2;
lVar32 = ((longlong)(int)(uVar14 << 0x10 | uVar14 >> 0x10) & 0xffffffffcb0934f6U |
(ulonglong)((uVar14 >> 0x10 | uVar14 << 0x10) & 0x34f6cb09)) + local_b0;
*(longlong *)(lVar15 + 4) =
*(longlong *)(lVar15 + 4) +
(ulonglong)((uint)(*(ulonglong *)(lVar32 + 4) >> 0x1b) & 0x45210049);
do {
puVar19 = &local_e4;
puVar13 = &local_124;
FUN_18160a47b();
uVar22 = rdtsc();
uVar11 = (int)uVar22 + (int)((ulonglong)uVar22 >> 0x20);
*puVar19 = uVar11;
uVar8 = (ulonglong)uVar11 * -0x47ff - 0x419c2dc1;
uVar8 = uVar8 - (uVar8 * 0x20 | uVar8 >> 0x3b);
*puVar13 = (uint)((uVar8 ^ (uVar8 >> 0xd) - 0x3b73948f) * 0x101 - 0x6d2a332 >> 5) & 0xc78b3a8e;
lVar5 = local_d0;
uVar11 = (unaff_retaddr + 1) * unaff_retaddr & 0x80000001;
if ((int)uVar11 < 0) {
uVar11 = (uVar11 - 1 | 0xfffffffe) + 1;
}
} while (uVar11 != 0);
*(int *)(lVar15 + 8) = *(int *)(lVar15 + 8) + (local_124 ^ 0x328b734b);
*(int *)(lVar15 + 4) = *(int *)(lVar15 + 4) + (local_124 ^ 0xc0006fe8);
uVar17 = (*(ulonglong *)(lVar15 + 4) << 0x21 | *(ulonglong *)(lVar15 + 4) >> 0x1f) +
0xb0379220c452d670;
uVar8 = (ulonglong)((uint)((uVar17 >> 0x1e ^ uVar17) >> 2) & 0x1fffff);
uVar8 = ((uVar8 << 0x1e | uVar8) << 2 ^ uVar17) + 0xba631318a0d4a7cb;
uVar17 = (uVar8 >> 4 | uVar8 << 0x3c) & 0xc3c3c3c3c3c3c3c3 |
(uVar8 * 0x10 | uVar8 >> 0x3c) & 0x3c3c3c3c3c3c3c3c;
uVar11 = (uint)((uVar17 >> 9 ^ uVar17) >> 0x1a) & 1;
uVar8 = ((ulonglong)uVar11 << 9 | (ulonglong)uVar11) << 0x1a ^ uVar17;
uVar8 = ((uVar8 << 4 | uVar17 >> 0x3c) & 0xe1e1e1e1e1e1e1e1 |
(uVar8 >> 4 | uVar17 << 0x3c) & 0x1e1e1e1e1e1e1e1e) + 0xcbb348cc940fcd7a;
uVar8 = (uVar8 >> 2 | uVar8 << 0x3e) & 0x9999999999999999 |
(uVar8 * 4 | uVar8 >> 0x3e) & 0x6666666666666666;
*(ulonglong *)(lVar15 + 4) = uVar8;
plVar18 = (longlong *)(lVar32 + 4);
*plVar18 = *plVar18 + (ulonglong)((uint)(uVar8 >> 0xf) & 0x20230248);
local_124 = (uint)(*(ulonglong *)(lVar15 + 4) >> 0x1b) & 0x7fffffff;
local_108 = (uint)(*(ulonglong *)(lVar15 + 4) >> 0x19) ^ 0xb9d9b711;
local_118 = (undefined *)(*(ulonglong *)(lVar15 + 4) ^ 0x49746e3163e2e07a);
uVar29 = (puVar20[0xb] ^
(puVar20[10] ^
(puVar20[9] ^
(puVar20[8] ^
(uVar2 ^ (uVar10 ^ (uVar1 ^ (uVar27 ^ (uVar25 ^ (uVar24 ^ (uVar9 ^ (uVar29 ^ uVar26) *
0x10001d1) * 0x10001d1
) * 0x10001d1) * 0x10001d1) * 0x10001d1)
* 0x10001d1) * 0x10001d1) * 0x10001d1) * 0x10001d1) * 0x10001d1) *
0x10001d1) * 0x10001d1;
local_f0 = CONCAT44(local_f0._4_4_,uVar29);
do {
uVar9 = (unaff_retaddr + 1) * unaff_retaddr & 0x80000001;
if ((int)uVar9 < 0) {
uVar9 = (uVar9 - 1 | 0xfffffffe) + 1;
}
} while (uVar9 != 0);
local_90 = (uint)local_118;
uVar9 = ((local_90 ^ local_108) & 0x6593f979 ^ local_108) + 0x4ed1481b;
uVar24 = ((local_90 ^ local_108) & 0x9a6c0686 ^ local_108) + 0xaef7aa14;
uVar27 = (int)((ulonglong)local_118 >> 0x20) + 0x7bc739d3;
uVar25 = (uVar9 * 0x100 | uVar9 >> 0x18) & 0x9a659a65 |
(uVar9 >> 8 | uVar9 * 0x1000000) & 0x659a659a;
uVar27 = uVar27 >> 2 & 0xcccccccc | uVar27 * 0x40000000 | uVar27 * 4 & 0x33333333 | uVar27 >> 0x1e
;
uVar24 = ((uVar24 * 0x10000 | uVar24 >> 0x10) & 0xc73b38c4 |
(uVar24 >> 0x10 | uVar24 * 0x10000) & 0x38c4c73b) ^ uVar25;
uVar9 = uVar24 & 0x8a578475 ^ uVar25;
uVar22 = 0x1f67ec24;
uVar24 = uVar24 & 0x75a87b8a ^ uVar25 ^ uVar9;
uVar25 = uVar24 & 0x44465b56 ^ uVar9;
uVar9 = uVar24 & 0xbbb9a4a9 ^ uVar9;
uVar24 = uVar25 >> 0x19 | uVar25 << 7;
uVar25 = (uVar27 >> 10 | uVar27 << 0x16) ^ uVar24;
uVar31 = (uVar9 >> 0x1f | uVar9 << 1) ^ 0xea2cbcd1;
uVar8 = (ulonglong)uVar31;
uVar7 = uVar25 & 0xddffbe9c ^ uVar24;
uVar23 = uVar25 & 0x22004163 ^ uVar24 ^ uVar7;
uVar9 = puVar20[0xc];
uVar24 = puVar20[0xd];
uVar25 = puVar20[0xe];
uVar27 = puVar20[0xf];
uVar1 = puVar20[0x10];
uVar26 = puVar20[0x11];
uVar10 = puVar20[0x12];
uVar2 = puVar20[0x13];
uVar11 = puVar20[0x14];
uVar14 = puVar20[0x15];
do {
uVar4 = rdtsc();
local_e4 = (int)uVar4 - (int)((ulonglong)uVar4 >> 0x20);
uVar17 = (ulonglong)local_e4 - ((ulonglong)(local_e4 >> 5) - 0x3dd514ae) >> 8;
uVar17 = uVar17 + (~-uVar17 + 1) * 0x200 + -0x72ddc7ad;
uVar17 = uVar17 ^ uVar17 * 0x200;
uVar12 = (unaff_retaddr + 1) * unaff_retaddr & 0x80000001;
if ((int)uVar12 < 0) {
uVar12 = (uVar12 - 1 | 0xfffffffe) + 1;
}
} while (uVar12 != 0);
local_100 = (uint)((int)uVar17 - (int)(uVar17 << 5)) >> 1 ^ local_124;
local_94 = local_108;
if (local_100 < 0xd698) {
do {
uVar12 = (unaff_retaddr + 1) * unaff_retaddr & 0x80000001;
if ((int)uVar12 < 0) {
uVar12 = (uVar12 - 1 | 0xfffffffe) + 1;
}
} while (uVar12 != 0);
local_10c = 0x7432a569;
local_80 = 0x1f67ec24;
local_7c = uVar31;
local_78 = (uVar23 & 0x7310039d ^ uVar7) + 0x6bb1bcf9;
local_74 = uVar23 & 0x8ceffc62 ^ uVar7 ^ 0xaa7d1554;
do {
plVar18 = &local_a8;
puVar19 = &local_fc;
FUN_18160cbe4();
*puVar19 = 0x5e5cf042;
uVar30 = 0;
*plVar18 = 0x18160bf83;
FUN_18160a645();
uVar7 = (unaff_retaddr + 1) * unaff_retaddr & 0x80000001;
if ((int)uVar7 < 0) {
uVar7 = (uVar7 - 1 | 0xfffffffe) + 1;
}
} while (uVar7 != 0);
uVar7 = (local_fc + 0x1804952a >> 0x15 | (local_fc + 0x1804952a) * 0x800) ^ 0x90bd4e7c;
local_fc = ~((uVar7 >> 0x11 | uVar7 << 0xf) + 0xe9b473b7);
(*(code *)((int)local_fc + local_a8))(&local_80,local_68);
iVar28 = 7;
do {
uVar31 = ((local_60 << 4 | local_60 >> 0x1c) & 0xb4b4b4b4 |
(local_60 >> 4 | local_60 << 0x1c) & 0x4b4b4b4b) + 0xedf66992;
uVar23 = ((local_5c >> 8 | local_5c << 0x18) & 0xfa05fa05 |
(local_5c << 8 | local_5c >> 0x18) & 0x5fa05fa) + 0x703d2ee4;
uVar7 = uVar31 >> 0xc;
uVar23 = (uVar23 >> 0x1d | uVar23 * 8) + 0x5f26144;
uVar31 = (((uVar7 | uVar31 * 0x100000) ^ 0x2677a938) >> 3 | uVar7 << 0x1d) + 0x70f6a640;
uVar23 = (uVar23 * 0x8000 | uVar23 >> 0x11) + 0x191d2650;
uVar12 = uVar31 >> 0x17 | uVar31 * 0x200;
uVar7 = uVar23 >> 0xc;
uVar23 = uVar23 * 0x100000 | uVar7;
uVar31 = (uVar12 >> 8 | (uVar31 >> 0x17) << 0x18) & 0xa857a857 |
(uVar12 << 8 | (uVar31 & 0x7fffff) >> 0xf) & 0x57a857a8;
uVar23 = (uVar7 << 0x10 | uVar23 >> 0x10) & 0xd65429ab |
(uVar23 >> 0x10 | uVar7 << 0x10) & 0x29abd654;
uVar7 = uVar31 >> 6;
local_60 = uVar7 | uVar31 << 0x1a;
local_5c = uVar23 << 0x16 | uVar23 >> 10;
iVar28 = iVar28 + -1;
} while (-1 < iVar28);
uVar7 = (uVar7 << 0x1d | local_60 >> 3) + 0xa6be00c2;
uVar7 = (uVar7 * 0x80 | uVar7 >> 0x19) + 0xc72db2d0;
uVar7 = (uVar7 * 8 | uVar7 >> 0x1d) + 0x5e0136f7;
uVar7 = (uVar7 * 0x400 | uVar7 >> 0x16) ^ 0xd2776bfa;
if (((uVar7 >> 0x10 | uVar7 << 0x10) ^ local_10c) + local_5c != local_108) {
do {
local_a0 = FUN_180bc28e0;
uVar7 = (unaff_retaddr + 1) * unaff_retaddr & 0x80000001;
if ((int)uVar7 < 0) {
uVar7 = (uVar7 - 1 | 0xfffffffe) + 1;
}
} while (uVar7 != 0);
FUN_180bc28e0();
do {
uVar7 = (unaff_retaddr + 1) * unaff_retaddr & 0x80000001;
if ((int)uVar7 < 0) {
uVar7 = (uVar7 - 1 | 0xfffffffe) + 1;
}
} while (uVar7 != 0);
}
}
uVar9 = (uVar14 ^ (uVar11 ^ (uVar2 ^ (uVar10 ^ (uVar26 ^ (uVar1 ^ (uVar27 ^ (uVar25 ^ (uVar24 ^ (
uVar9 ^ uVar29) * 0x10001d1) * 0x10001d1) *
0x10001d1) * 0x10001d1) * 0x10001d1) * 0x10001d1)
* 0x10001d1) * 0x10001d1) * 0x10001d1) * 0x10001d1 ^
0xd282d6a9;
uVar29 = (uVar9 >> 0xe ^ uVar9) >> 1 & 0xff;
lVar32 = (longlong)local_f8;
uVar29 = ~((uVar29 << 0xe | uVar29) * 2 ^ uVar9) + 0xac1763b7;
uVar9 = uVar29 >> 0x17 | uVar29 * 0x200;
uVar29 = ((uVar29 & 0x7fffff) >> 3 ^ uVar9) >> 7 & 0x1ff;
lVar15 = lVar32 * 0x828 + 0x3830 + lVar5;
if ((uint)local_120 == ((uVar29 << 0xc | uVar29) << 7 ^ uVar9)) {
FUN_180589400(lVar15,local_c8);
*(undefined1 *)(*(longlong *)(lVar5 + 0x10) + 0x9a02 + lVar32) = 1;
thunk_FUN_1805a9280();
return;
}
FUN_180589400(lVar15,local_c8);
*(undefined1 *)(*(longlong *)(lVar5 + 0x10) + 0x9a02 + lVar32) = 1;
puVar6 = auStack_148;
do {
puVar21 = puVar6;
*(ulonglong *)(puVar21 + -8) = uVar30;
*(undefined8 *)(puVar21 + -0x10) = uVar22;
*(ulonglong *)(puVar21 + -0x18) = uVar8;
lVar15 = -(longlong)local_e0;
uVar8 = *(ulonglong *)(puVar21 + lVar15 + 0x408);
uVar22 = *(undefined8 *)(puVar21 + lVar15 + 0x410);
uVar30 = *(ulonglong *)(puVar21 + lVar15 + 0x418);
uVar29 = (unaff_retaddr + 1) * unaff_retaddr & 0x80000001;
if ((int)uVar29 < 0) {
uVar29 = (uVar29 - 1 | 0xfffffffe) + 1;
}
puVar6 = puVar21 + lVar15 + 0x420;
} while (uVar29 != 0);
*(undefined **)(puVar21 + lVar15 + 0x418) = &UNK_18160c3e2;
}
--- [63] 0x18134bb30 size=93 ---
void .?AV?$DigitalFilter@M$0BA@$01@@::vtbl___AV__DigitalFilter_M_0BA__01__
(longlong param_1,undefined8 param_2,undefined8 param_3)
{
longlong lVar1;
undefined8 uVar2;
undefined1 local_68 [96];
if (*(longlong **)(param_1 + 0x18) != (longlong *)0x0) {
lVar1 = **(longlong **)(param_1 + 0x18);
uVar2 = FUN_181339840(param_2,local_68);
(**(code **)(lVar1 + 0x40))(*(undefined8 *)(param_1 + 0x18),uVar2,param_3);
}
return;
}