Function at 0x67c11860
Capabilities:
Access peb ldr_data
Get ntdll base address
Get process heap flags
Get process heap force flags

Disassembly:
push ebp
mov ebp, esp
push edi
push esi
push ebx
sub esp, 0x6c
mov ebx, dword [ebp + 8]
mov eax, dword [ebx + 0x28]
fldz
fld dword [eax + 0x14c]
fucompi st(1)
fstp st(0)
jnp 0x67c11e30
cmp dword [ebx + 0x120], 1
jg 0x67c11e00
mov edi, dword [sym.imp.kernel32.dll_HeapAlloc]
mov ecx, dword [ebx + 0x13c]
mov dword [ebp - 0x20], edi
test ecx, ecx
jne 0x67c11e40
mov esi, dword [ebp + 0x10]
mov dword [esp + 4], 0
mov eax, dword fs:[0x18]
shl esi, 4
mov dword [esp + 8], esi
mov eax, dword [eax + 0x30]
mov eax, dword [eax + 0x18]
mov dword [esp], eax
mov eax, dword [ebp - 0x20]
call eax
mov dword [ebp - 0x38], eax
mov ecx, eax
mov eax, dword [ebp + 0x10]
sub esp, 0xc
test eax, eax
je 0x67c11dc9
mov edi, dword [ebp + 0xc]
add esi, ecx
mov edx, dword [ebx + 0x270]
mov eax, ecx
mov dword [ebp - 0x30], esi
mov dword [ebp - 0x28], edi
lea esi, [esi]
mov edi, dword [ebp - 0x28]
mov ecx, dword [ebx + 0x15c]
and edx, dword [ebx + 0x158]
fld dword [edi]
fld dword [ebx + 0x14c]
fld dword [ebx + 0x150]
fsub st(2)
fmul st(1)
faddp st(2)
fxch st(1)
fst dword [ebx + 0x150]
fld dword [ebx + 0x154]
fsub st(1)
fmulp st(2)
faddp st(1)
fst dword [ebx + 0x154]
fstp dword [ecx + edx*4]
mov edx, dword [ebx + 0x270]
mov esi, dword [ebx + 0x180]
mov edi, dword [ebx + 0x188]
mov ecx, edx
sub ecx, dword [ebx + 0x19c]
and ecx, dword [ebx + 0x17c]
fld dword [esi + ecx*4]
mov ecx, edx
sub ecx, dword [ebx + 0x1a0]
and ecx, dword [ebx + 0x184]
fmul dword [ebx + 0x16c]
fld dword [edi + ecx*4]
mov edi, dword [ebx + 0x190]
mov ecx, edx
sub ecx, dword [ebx + 0x1a4]
and ecx, dword [ebx + 0x18c]
fmul dword [ebx + 0x170]
fld dword [edi + ecx*4]
mov ecx, edx
mov edi, dword [ebx + 0x198]
sub ecx, dword [ebx + 0x1a8]
and ecx, dword [ebx + 0x194]
fmul dword [ebx + 0x174]
fld dword [edi + ecx*4]
fld dword [ebx + 0x178]
mov ecx, edx
fmulp st(1)
fld st(3)
fadd st(3)
fadd st(2)
fadd st(1)
fmul dword [0x67c2aafc]
sub ecx, dword [ebx + 0x160]
mov edi, dword [ebx + 0x15c]
and ecx, dword [ebx + 0x158]
and edx, dword [ebx + 0x17c]
fadd dword [edi + ecx*4]
fsubr st(4), st(0)
fsubr st(3), st(0)
fsubr st(2), st(0)
fsubrp st(1)
fxch st(3)
fst dword [esi + edx*4]
fxch st(2)
mov ecx, dword [ebx + 0x188]
mov edx, dword [ebx + 0x270]
and edx, dword [ebx + 0x184]
fst dword [ecx + edx*4]
fxch st(1)
mov ecx, dword [ebx + 0x190]
mov edx, dword [ebx + 0x270]
and edx, dword [ebx + 0x18c]
fst dword [ecx + edx*4]
fxch st(3)
mov ecx, dword [ebx + 0x198]
mov edx, dword [ebx + 0x270]
and edx, dword [ebx + 0x194]
fst dword [ecx + edx*4]
fld dword [ebx + 0x168]
mov edx, dword [ebx + 0x270]
mov esi, dword [ebx + 0x15c]
mov ecx, edx
sub ecx, dword [ebx + 0x164]
and ecx, dword [ebx + 0x158]
fmul st(3), st(0)
fxch st(3)
and edx, dword [ebx + 0x1ac]
fstp dword [eax]
fxch st(1)
fmul st(2)
fstp dword [eax + 4]
fxch st(2)
fmul st(1)
fstp dword [eax + 8]
fmulp st(1)
fstp dword [eax + 0xc]
fld dword [esi + ecx*4]
fmul dword [ebx + 0x1c4]
mov ecx, dword [ebx + 0x1b0]
fst dword [ecx + edx*4]
mov edx, dword [ebx + 0x270]
mov ecx, dword [ebx + 0x1b0]
mov edi, dword [ebx + 0x234]
mov esi, edx
sub esi, dword [ebx + 0x1b4]
and esi, dword [ebx + 0x1ac]
fld dword [ecx + esi*4]
mov esi, edx
sub esi, dword [ebx + 0x1bc]
and esi, dword [ebx + 0x1ac]
fld dword [ecx + esi*4]
mov esi, edx
sub esi, dword [ebx + 0x248]
and esi, dword [ebx + 0x230]
fld dword [edi + esi*4]
mov esi, edx
sub esi, dword [ebx + 0x1b8]
and esi, dword [ebx + 0x1ac]
fmul dword [ebx + 0x218]
fadd dword [ecx + esi*4]
mov esi, dword [ebx + 0x224]
mov ecx, edx
sub ecx, dword [ebx + 0x240]
and ecx, dword [ebx + 0x220]
fld st(0)
fsubr dword [ebx + 0x268]
fmul dword [ebx + 0x258]
faddp st(1)
fst dword [ebx + 0x268]
fld dword [esi + ecx*4]
fmul dword [ebx + 0x210]
mov ecx, edx
mov esi, dword [ebx + 0x23c]
sub ecx, dword [ebx + 0x24c]
and ecx, dword [ebx + 0x238]
faddp st(4)
fld dword [ebx + 0x260]
fsub st(4)
fmul dword [ebx + 0x250]
faddp st(4)
fxch st(3)
fst dword [ebx + 0x260]
fld dword [esi + ecx*4]
fmul dword [ebx + 0x21c]
mov ecx, edx
faddp st(2)
fld dword [ebx + 0x26c]
mov esi, dword [ebx + 0x22c]
sub ecx, dword [ebx + 0x244]
and ecx, dword [ebx + 0x228]
fsub st(2)
fmul dword [ebx + 0x25c]
faddp st(2)
fxch st(1)
fst dword [ebx + 0x26c]
fld dword [esi + ecx*4]
fmul dword [ebx + 0x214]
mov ecx, edx
mov esi, dword [ebx + 0x1e4]
sub ecx, dword [ebx + 0x200]
add eax, 0x10
and ecx, dword [ebx + 0x1e0]
and edx, dword [ebx + 0x1e0]
faddp st(3)
fld dword [ebx + 0x264]
fsub st(3)
fmul dword [ebx + 0x254]
faddp st(3)
fxch st(2)
fst dword [ebx + 0x264]
fld dword [ebx + 0x1d0]
fld dword [esi + ecx*4]
fld dword [ebx + 0x1c8]
fmul st(6)
fld st(1)
fsub st(1)
fmul dword [ebx + 0x1c8]
faddp st(7)
fxch st(6)
fstp dword [esi + edx*4]
mov edx, dword [ebx + 0x270]
mov esi, dword [ebx + 0x1ec]
fmulp st(1)
mov ecx, edx
sub ecx, dword [ebx + 0x204]
and ecx, dword [ebx + 0x1e8]
and edx, dword [ebx + 0x1e8]
fsubrp st(4)
fld dword [ebx + 0x1d4]
fld dword [esi + ecx*4]
fld dword [ebx + 0x1c8]
fmul st(4)
fld st(1)
fsub st(1)
fmul dword [ebx + 0x1c8]
faddp st(5)
fxch st(4)
fstp dword [esi + edx*4]
mov edx, dword [ebx + 0x270]
fmulp st(1)
mov ecx, edx
fsubrp st(2)
fld dword [ebx + 0x1d8]
mov esi, dword [ebx + 0x1f4]
sub ecx, dword [ebx + 0x208]
and ecx, dword [ebx + 0x1f0]
fld dword [esi + ecx*4]
fld dword [ebx + 0x1c8]
and edx, dword [ebx + 0x1f0]
fmul st(5)
fld st(1)
fsub st(1)
fmul dword [ebx + 0x1c8]
faddp st(6)
fxch st(5)
fstp dword [esi + edx*4]
mov edx, dword [ebx + 0x270]
mov esi, dword [ebx + 0x1fc]
fmulp st(1)
mov ecx, edx
sub ecx, dword [ebx + 0x20c]
and ecx, dword [ebx + 0x1f8]
and edx, dword [ebx + 0x1f8]
fsubrp st(3)
fld dword [ebx + 0x1dc]
fld dword [esi + ecx*4]
fld dword [ebx + 0x1c8]
fmul st(3)
fld st(1)
fsub st(1)
fmul dword [ebx + 0x1c8]
faddp st(4)
fxch st(3)
fstp dword [esi + edx*4]
mov ecx, dword [ebx + 0x224]
mov edx, dword [ebx + 0x270]
fmulp st(1)
and edx, dword [ebx + 0x220]
fsubrp st(1)
fld dword [ebx + 0x1cc]
fld st(2)
fsub st(4)
fadd st(2)
fmul st(1)
fadd st(5)
fld st(4)
fsub st(6)
fadd st(3)
fmul st(2)
fadd st(4)
fld st(6)
fsub st(5)
fadd st(4)
fmul st(3)
fadd st(6)
fxch st(7)
fchs
fsubrp st(5)
fxch st(5)
fsubp st(4)
fxch st(1)
fmulp st(3)
fxch st(2)
faddp st(1)
fld dword [ebx + 0x1c0]
fxch st(2)
fst dword [ecx + edx*4]
fxch st(3)
mov ecx, dword [ebx + 0x22c]
mov edx, dword [ebx + 0x270]
and edx, dword [ebx + 0x228]
fst dword [ecx + edx*4]
fxch st(4)
mov ecx, dword [ebx + 0x234]
mov edx, dword [ebx + 0x270]
and edx, dword [ebx + 0x230]
fst dword [ecx + edx*4]
fxch st(1)
mov edx, dword [ebx + 0x270]
mov ecx, dword [ebx + 0x23c]
and edx, dword [ebx + 0x238]
add dword [ebp - 0x28], 4
fst dword [ecx + edx*4]
fxch st(3)
mov edi, dword [ebx + 0x270]
fmul st(2)
fadd dword [eax - 0x10]
lea edx, [edi + 1]
mov dword [ebx + 0x270], edx
fstp dword [eax - 0x10]
fxch st(3)
fmul st(1)
fadd dword [eax - 0xc]
fstp dword [eax - 0xc]
fmul st(2), st(0)
fxch st(2)
fadd dword [eax - 8]
fstp dword [eax - 8]
fmulp st(1)
fadd dword [eax - 4]
fstp dword [eax - 4]
cmp dword [ebp - 0x30], eax
jne 0x67c118f8
fld dword [ebx + 0x140]
fld1
fchs
fxch st(1)
fucomi st(1)
fstp st(1)
jp 0x67c11da0
jne 0x67c11da0
fstp st(0)
fld1
mov ebx, dword [ebp - 0x38]
mov edx, dword [ebp + 0xc]
xor eax, eax
mov esi, dword [ebp + 0x10]
lea esi, [esi]
nop
mov ecx, eax
shl ecx, 4
fld dword [ebx + ecx]
fmul st(1)
fadd dword [edx + eax*4]
fstp dword [edx + eax*4]
add eax, 1
cmp esi, eax
ja 0x67c11db0
fstp st(0)
mov edi, dword [ebp - 0x38]
mov dword [esp + 4], 0
mov eax, dword fs:[0x18]
mov dword [esp + 8], edi
mov eax, dword [eax + 0x30]
mov eax, dword [eax + 0x18]
mov dword [esp], eax
call dword [sym.imp.kernel32.dll_HeapFree]
sub esp, 0xc
lea esp, [ebp - 0xc]
pop ebx
pop esi
pop edi
pop ebp
ret
test byte [0x67c21390], 4
je 0x67c11df0
mov dword [esp + 0xc], str.EAX_not_yet_supported_for_non_mono_sources_n
mov dword [esp + 8], str.process_eax_buffer
mov dword [esp + 4], 0x67c21390
mov dword [esp], 2
call fcn.67c11810
jmp 0x67c11df0
jne 0x67c11881
lea esp, [ebp - 0xc]
pop ebx
pop esi
pop edi
pop ebp
ret
mov dword [ebx + 0x13c], 0
mov eax, dword [eax + 0x7c]
xor edx, edx
mov dword [ebp - 0x24], edx
mov eax, dword [eax + 4]
fnstcw word [ebp - 0x1a]
mov dword [ebp - 0x28], eax
fild qword [ebp - 0x28]
movzx eax, word [ebp - 0x1a]
fld dword [0x67c2aae4]
or ah, 0xc
mov word [ebp - 0x1c], ax
fmul st(1)
fldcw word [ebp - 0x1c]
fistp qword [ebp - 0x28]
fldcw word [ebp - 0x1a]
mov eax, dword [ebp - 0x28]
cmp eax, 0xffffffff
je 0x67c12610
mov edx, eax
shr edx, 1
or edx, eax
mov eax, edx
shr eax, 2
or edx, eax
mov eax, edx
shr eax, 4
or edx, eax
mov eax, edx
shr eax, 8
or edx, eax
mov eax, edx
shr eax, 0x10
or edx, eax
lea eax, [edx + 1]
mov dword [ebx + 0x158], edx
fld dword [0x67c2aad0]
xor ecx, ecx
mov dword [ebx + 0x15c], 0
fmul st(1)
fldcw word [ebp - 0x1c]
fistp qword [ebp - 0x28]
fldcw word [ebp - 0x1a]
mov esi, dword [ebp - 0x28]
cmp esi, 0xffffffff
je 0x67c11f20
mov edx, esi
shr edx, 1
or edx, esi
mov esi, edx
shr esi, 2
or edx, esi
mov esi, edx
shr esi, 4
or edx, esi
mov esi, edx
shr esi, 8
or edx, esi
mov esi, edx
shr esi, 0x10
or edx, esi
lea esi, [edx + 1]
mov dword [ebx + ecx*8 + 0x180], eax
add eax, esi
mov dword [ebx + ecx*8 + 0x17c], edx
add ecx, 1
cmp ecx, 4
je 0x67c11f30
fld dword [ecx*4 + 0x67c29df4]
jmp 0x67c11ec3
mov esi, 1
xor edx, edx
jmp 0x67c11efb
fld dword [0x67c2aae8]
xor edx, edx
fmul st(1)
fldcw word [ebp - 0x1c]
fistp qword [ebp - 0x28]
fldcw word [ebp - 0x1a]
mov ecx, dword [ebp - 0x28]
cmp ecx, 0xffffffff
je 0x67c11f6d
mov edx, ecx
shr edx, 1
or edx, ecx
mov ecx, edx
shr ecx, 2
or edx, ecx
mov ecx, edx
shr ecx, 4
or edx, ecx
mov ecx, edx
shr ecx, 8
or edx, ecx
mov ecx, edx
shr ecx, 0x10
or edx, ecx
mov dword [ebx + 0x1ac], edx
fld dword [0x67c2aad4]
lea esi, [eax + edx + 1]
xor ecx, ecx
mov dword [ebx + 0x1b0], eax
fmul st(1)
fldcw word [ebp - 0x1c]
fistp qword [ebp - 0x28]
fldcw word [ebp - 0x1a]
mov edi, dword [ebp - 0x28]
cmp edi, 0xffffffff
je 0x67c11fe0
mov edx, edi
shr edx, 1
or edx, edi
mov edi, edx
shr edi, 2
or edx, edi
mov edi, edx
shr edi, 4
or edx, edi
mov edi, edx
shr edi, 8
or edx, edi
mov edi, edx
shr edi, 0x10
or edx, edi
lea edi, [edx + 1]
mov dword [ebx + ecx*8 + 0x1e4], esi
add esi, edi
mov dword [ebx + ecx*8 + 0x1e0], edx
add ecx, 1
cmp ecx, 4
je 0x67c11ff0
fld dword [ecx*4 + 0x67c29de4]
jmp 0x67c11f85
mov edi, 1
xor edx, edx
jmp 0x67c11fbd
fld dword [0x67c2aad8]
xor ecx, ecx
fmul dword [0x67c2aaec]
fmul st(1)
fldcw word [ebp - 0x1c]
fistp qword [ebp - 0x28]
fldcw word [ebp - 0x1a]
mov edi, dword [ebp - 0x28]
cmp edi, 0xffffffff
je 0x67c12060
mov edx, edi
shr edx, 1
or edx, edi
mov edi, edx
shr edi, 2
or edx, edi
mov edi, edx
shr edi, 4
or edx, edi
mov edi, edx
shr edi, 8
or edx, edi
mov edi, edx
shr edi, 0x10
or edx, edi
lea edi, [edx + 1]
mov dword [ebx + ecx*8 + 0x224], esi
add esi, edi
mov dword [ebx + ecx*8 + 0x220], edx
add ecx, 1
cmp ecx, 4
je 0x67c12070
fld dword [ecx*4 + 0x67c29dd4]
jmp 0x67c11ff8
mov edi, 1
xor edx, edx
jmp 0x67c12036
cmp esi, dword [ebx + 0x148]
je 0x67c12620
test byte [0x67c21390], 8
jne 0x67c12638
fstp st(0)
mov eax, dword [ebx + 0x144]
lea edx, [esi*4]
test eax, eax
je 0x67c12678
mov dword [esp + 0xc], edx
mov dword [esp + 8], eax
mov dword [esp + 4], 0
mov ecx, dword fs:[0x18]
mov eax, dword [ecx + 0x30]
mov eax, dword [eax + 0x18]
mov dword [esp], eax
call dword [sym.imp.kernel32.dll_HeapReAlloc]
mov edx, eax
mov eax, dword [sym.imp.kernel32.dll_HeapAlloc]
sub esp, 0x10
mov dword [ebp - 0x20], eax
test edx, edx
je 0x67c126a7
mov eax, dword [ebx + 0x15c]
mov dword [ebx + 0x144], edx
mov dword [ebx + 0x148], esi
lea edi, [edx + eax*4]
mov eax, dword [ebx + 0x1b0]
fnstcw word [ebp - 0x1a]
movzx ecx, word [ebp - 0x1a]
or ch, 0xc
mov word [ebp - 0x1c], cx
lea eax, [edx + eax*4]
mov dword [ebx + 0x15c], edi
lea edi, [ebx + 0x1a0]
mov dword [ebx + 0x1b0], eax
lea eax, [ebx + 0x180]
mov ecx, dword [eax]
add eax, 8
lea ecx, [edx + ecx*4]
mov dword [eax - 8], ecx
mov ecx, dword [eax + 0x5c]
lea ecx, [edx + ecx*4]
mov dword [eax + 0x5c], ecx
mov ecx, dword [eax + 0x9c]
lea ecx, [edx + ecx*4]
mov dword [eax + 0x9c], ecx
cmp edi, eax
jne 0x67c1211f
test esi, esi
je 0x67c12168
xor eax, eax
jmp 0x67c12156
mov edx, dword [ebx + 0x144]
mov dword [edx + eax*4], 0
add eax, 1
cmp eax, dword [ebx + 0x148]
jb 0x67c12150
fld dword [0x67c2aad4]
fld dword [0x67c2aad0]
xor eax, eax
mov esi, dword [ebx + 0x28]
mov edx, dword [esi + 0x7c]
xor ecx, ecx
mov dword [ebp - 0x24], ecx
xor ecx, ecx
mov edx, dword [edx + 4]
mov dword [ebp - 0x28], edx
fild qword [ebp - 0x28]
fmulp st(1)
fldcw word [ebp - 0x1c]
fistp qword [ebp - 0x28]
fldcw word [ebp - 0x1a]
mov dword [ebp - 0x24], ecx
mov edi, dword [ebp - 0x28]
mov dword [ebx + eax*4 + 0x19c], edi
mov edx, dword [esi + 0x7c]
mov edx, dword [edx + 4]
mov dword [ebp - 0x28], edx
fild qword [ebp - 0x28]
fmulp st(1)
fldcw word [ebp - 0x1c]
fistp qword [ebp - 0x28]
fldcw word [ebp - 0x1a]
mov edi, dword [ebp - 0x28]
mov dword [ebx + eax*4 + 0x200], edi
add eax, 1
cmp eax, 4
je 0x67c121e0
fld dword [eax*4 + 0x67c29de4]
fld dword [eax*4 + 0x67c29df4]
jmp 0x67c12179
mov eax, dword [esi + 0x7c]
xor edx, edx
fld qword [0x67c2aaf0]
mov dword [ebp - 0x24], edx
fmul dword [esi + 0x1b0]
mov eax, dword [eax + 4]
mov dword [ebp - 0x28], eax
fild qword [ebp - 0x28]
mov eax, dword [sym.imp.ucrtbase.dll_cos]
fdivp st(1)
mov dword [ebp - 0x3c], eax
fstp dword [ebp - 0x28]
fld dword [ebp - 0x28]
fstp qword [esp]
call eax
fstp dword [ebp - 0x28]
fld dword [ebp - 0x28]
fst dword [ebp - 0x48]
fld dword [esi + 0x160]
fld dword [0x67c2aaf8]
fcompi st(1)
jbe 0x67c12600
fxch st(1)
fstp dword [esp + 4]
fstp dword [esp]
call fcn.67c11710
mov esi, dword [ebx + 0x28]
fstp dword [ebx + 0x14c]
mov eax, dword [esi + 0x7c]
xor edx, edx
xor edi, edi
fld dword [esi + 0x18c]
fld dword [esi + 0x178]
mov dword [ebp - 0x24], edx
mov eax, dword [eax + 4]
fnstcw word [ebp - 0x1a]
mov dword [ebp - 0x28], eax
fild qword [ebp - 0x28]
movzx eax, word [ebp - 0x1a]
fld st(1)
or ah, 0xc
mov word [ebp - 0x1c], ax
fmul st(1)
fldcw word [ebp - 0x1c]
fistp qword [ebp - 0x28]
fldcw word [ebp - 0x1a]
fxch st(2)
mov eax, dword [ebp - 0x28]
mov dword [ebx + 0x160], eax
faddp st(1)
fmulp st(1)
fldcw word [ebp - 0x1c]
fistp qword [ebp - 0x28]
fldcw word [ebp - 0x1a]
mov eax, dword [ebp - 0x28]
mov dword [ebx + 0x164], eax
fld dword [esi + 0x18c]
fstp dword [ebp - 0x28]
fld dword [0x67c2aafc]
fmul dword [esi + 0x15c]
fmul dword [esi + 0x174]
mov esi, dword [sym.imp.ucrtbase.dll_pow]
fstp dword [ebx + 0x168]
fld dword [0x67c2aad0]
fdiv dword [ebp - 0x28]
fstp qword [esp + 8]
fld dword [0x67c2aac8]
fstp qword [esp]
call esi
fstp dword [ebx + edi*4 + 0x16c]
add edi, 1
cmp edi, 4
je 0x67c12300
fld dword [edi*4 + 0x67c29df4]
jmp 0x67c122ce
mov edx, dword [ebx + 0x28]
xor edi, edi
mov eax, dword [edx + 0x7c]
fld dword [edx + 0x154]
xor edx, edx
mov dword [ebp - 0x34], edx
mov eax, dword [eax + 4]
fstp dword [ebp - 0x30]
mov dword [ebp - 0x38], eax
mov dword [ebp - 0x28], edi
fild dword [ebp - 0x28]
fstp qword [esp + 8]
fld dword [0x67c2ab00]
fstp qword [esp]
call esi
fnstcw word [ebp - 0x1a]
fstp dword [ebp - 0x28]
fld dword [ebp - 0x28]
fmul dword [0x67c2ab04]
fmul dword [0x67c2aad8]
fld dword [ebp - 0x30]
fmul dword [0x67c2ab08]
movzx eax, word [ebp - 0x1a]
or ah, 0xc
mov word [ebp - 0x1c], ax
fld1
faddp st(1)
fmulp st(1)
fild qword [ebp - 0x38]
fmulp st(1)
fldcw word [ebp - 0x1c]
fistp qword [ebp - 0x28]
fldcw word [ebp - 0x1a]
mov eax, dword [ebp - 0x28]
mov dword [ebx + edi*4 + 0x1b4], eax
add edi, 1
cmp edi, 3
jne 0x67c1231c
mov edi, dword [ebx + 0x28]
fld dword [0x67c2ab0c]
mov eax, dword [ebp - 0x3c]
fmul dword [edi + 0x158]
fst qword [esp]
fstp dword [ebp - 0x28]
call eax
fstp dword [ebp - 0x3c]
fld dword [ebp - 0x28]
fstp qword [esp]
call dword [sym.imp.ucrtbase.dll_sin]
fstp dword [ebp - 0x28]
fld dword [ebp - 0x28]
fdiv dword [0x67c2ab10]
fdiv dword [ebp - 0x3c]
fstp dword [ebx + 0x1cc]
fld dword [edi + 0x16c]
mov edx, dword [edi + 0x1bc]
fstp dword [ebp - 0x40]
test edx, edx
jne 0x67c125a0
fld dword [edi + 0x168]
fstp dword [ebp - 0x28]
jmp 0x67c123e2
fstp st(0)
fld dword [edi + 0x158]
mov edx, dword [edi + 0x7c]
mov eax, dword [edx + 4]
fstp dword [ebp - 0x50]
fld dword [edi + 0x154]
fld dword [edi + 0x188]
fmul dword [edi + 0x15c]
fmul dword [ebp - 0x3c]
mov dword [ebp - 0x30], eax
fstp dword [ebx + 0x1c0]
fmul dword [0x67c2ab08]
fld1
faddp st(1)
fst dword [ebp - 0x44]
fmul dword [0x67c2ab1c]
fdiv dword [ebp - 0x28]
fstp qword [esp + 8]
fld dword [0x67c2aac8]
fstp qword [esp]
call esi
fstp dword [ebp - 0x38]
fld dword [ebp - 0x38]
fmul st(0)
fld1
fsubrp st(1)
fld st(0)
fldz
fucompi st(1)
fld dword [ebp - 0x50]
ja 0x67c126cf
fstp st(2)
fxch st(1)
fxch st(1)
fsqrt
fstp dword [ebx + 0x1c4]
mov eax, dword [ebp - 0x30]
xor edi, edi
fmul st(0)
fmul dword [0x67c2aafc]
mov dword [ebp - 0x4c], 0
mov dword [ebp - 0x50], eax
fstp dword [ebx + 0x1c8]
fld dword [0x67c2aad4]
fdiv dword [ebp - 0x28]
fstp qword [esp + 8]
fld dword [0x67c2aac8]
fstp qword [esp]
call esi
fstp dword [ebx + edi*4 + 0x1d0]
fld dword [ebp - 0x44]
fmul dword [edi*4 + 0x67c29dd4]
fnstcw word [ebp - 0x1a]
fild qword [ebp - 0x50]
movzx eax, word [ebp - 0x1a]
fmul st(1)
or ah, 0xc
mov word [ebp - 0x1c], ax
fldcw word [ebp - 0x1c]
fistp qword [ebp - 0x30]
fldcw word [ebp - 0x1a]
fld dword [ebp - 0x28]
mov eax, dword [ebp - 0x30]
mov dword [ebx + edi*4 + 0x240], eax
fdivr st(1)
fxch st(1)
fstp dword [ebp - 0x30]
fstp qword [esp + 8]
fld dword [0x67c2aac8]
fstp qword [esp]
call esi
fstp dword [ebp - 0x38]
fld dword [ebp - 0x38]
fstp dword [ebx + edi*4 + 0x210]
fld dword [ebp - 0x40]
fld1
fcompi st(1)
fstp st(0)
fld dword [ebp - 0x30]
ja 0x67c12550
fstp st(0)
jmp 0x67c12510
fstp st(0)
lea esi, [esi]
fldz
jmp 0x67c12520
fstp st(1)
lea esi, [esi]
lea esi, [esi]
fstp dword [ebx + edi*4 + 0x250]
fld dword [ebp - 0x3c]
fmul dword [ebx + edi*4 + 0x210]
fstp dword [ebx + edi*4 + 0x210]
add edi, 1
cmp edi, 4
je 0x67c118a5
fld dword [edi*4 + 0x67c29de4]
jmp 0x67c12480
fld dword [ebp - 0x40]
fmul dword [ebp - 0x28]
fdivp st(1)
fstp qword [esp + 8]
fld dword [0x67c2aac8]
fstp qword [esp]
call esi
fstp dword [ebp - 0x30]
fld dword [ebp - 0x30]
fdiv dword [ebp - 0x38]
fmul st(0)
fld dword [0x67c2aaf8]
fcompi st(1)
jbe 0x67c12508
fld dword [ebp - 0x48]
fstp dword [esp + 4]
fstp dword [esp]
call fcn.67c11710
fld dword [0x67c2aae0]
fxch st(1)
fcomi st(1)
jbe 0x67c12514
fstp st(0)
jmp 0x67c12520
fld dword [edi + 0x1ac]
fld dword [edi + 0x168]
fstp dword [ebp - 0x28]
fld1
fcompi st(1)
jbe 0x67c123e0
fstp qword [esp]
call dword [sym.imp.ucrtbase.dll_log10]
mov edi, dword [ebx + 0x28]
fstp dword [ebp - 0x30]
fld dword [ebp - 0x30]
fmul dword [ebp - 0x28]
fdiv dword [0x67c2ab14]
fmul dword [0x67c2ab18]
fld1
fdivrp st(1)
fld dword [0x67c2aadc]
fcomi st(1)
fld dword [edi + 0x168]
fstp dword [ebp - 0x28]
jbe 0x67c126ba
fstp st(1)
fstp dword [ebp - 0x40]
jmp 0x67c123e2
fstp st(0)
fstp st(0)
fldz
jmp 0x67c12240
mov eax, 1
xor edx, edx
jmp 0x67c11eab
fstp st(0)
mov edx, dword [ebx + 0x144]
mov ecx, dword [sym.imp.kernel32.dll_HeapAlloc]
mov edi, edx
mov dword [ebp - 0x20], ecx
jmp 0x67c12104
mov dword [ebp - 0x28], esi
mov dword [ebp - 0x24], 0
fild qword [ebp - 0x28]
mov dword [esp + 0x10], esi
mov dword [esp + 0xc], str.New_reverb_buffer_length:__u_samples___f_sec__n
fdivrp st(1)
mov dword [esp + 8], str.AllocLines
mov dword [esp + 4], 0x67c21390
mov dword [esp], 3
fstp qword [esp + 0x14]
call fcn.67c11810
jmp 0x67c1208b
mov dword [esp + 8], edx
mov dword [esp + 4], 0
mov eax, dword fs:[0x18]
mov eax, dword [eax + 0x30]
mov eax, dword [eax + 0x18]
mov dword [esp], eax
mov eax, dword [sym.imp.kernel32.dll_HeapAlloc]
mov dword [ebp - 0x20], eax
call eax
sub esp, 0xc
mov edx, eax
jmp 0x67c120d3
fnstcw word [ebp - 0x1a]
movzx eax, word [ebp - 0x1a]
or ah, 0xc
mov word [ebp - 0x1c], ax
jmp 0x67c12168
fstp st(0)
fld dword [ebp - 0x40]
fxch st(1)
fcomi st(1)
fcmovnbe st(0), st(1)
fstp st(1)
fstp dword [ebp - 0x40]
jmp 0x67c123e2
fstp st(1)
fstp dword [ebp - 0x38]
fstp qword [esp]
call dword [sym.imp.ucrtbase.dll_sqrt]
fld dword [ebp - 0x38]
fxch st(1)
jmp 0x67c12457