Function at 0x67181b30
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
push edi
push esi
push ebx
and esp, 0xfffffff0
sub esp, 0xa0
mov esi, dword [ebp + 0xc]
mov ebx, dword [ebp + 0x10]
movss xmm0, dword [esi + 0x20]
movups xmm7, xmm0
movss xmm0, dword [esi + 0x1c]
subss xmm7, dword [ebx + 0x24]
movups xmm6, xmm0
movss xmm0, dword [esi + 0x18]
subss xmm6, dword [ebx + 0x20]
subss xmm0, dword [ebx + 0x1c]
movss dword [esp + 0x60], xmm7
movups xmm1, xmm6
movss dword [esp + 0x58], xmm0
movss dword [esp + 0x5c], xmm6
mulss xmm1, xmm6
mulss xmm0, xmm0
addss xmm0, xmm1
movups xmm1, xmm7
mulss xmm1, xmm7
addss xmm0, xmm1
pxor xmm1, xmm1
cvtss2sd xmm0, xmm0
movupd xmm4, xmm0
ucomisd xmm1, xmm0
sqrtsd xmm4, xmm4
ja 0x67182994
mov edx, dword [ebp + 0x14]
cvtsd2ss xmm4, xmm4
movups xmm3, xmm4
mov eax, dword [ebp + 0x18]
divss xmm3, dword [ebx + 0x5c]
and edx, 1
movss dword [eax + 0x24], xmm4
jne 0x67181e88
test byte [ebp + 0x14], 4
je 0x67181c52
mov eax, dword [ebx + 0x50]
mov edx, 0x67184068
test eax, eax
cmove eax, edx
mov edx, 1
mov ecx, dword [eax + 4]
mov edi, dword [eax]
cmp ecx, 1
lea eax, [edi + 8]
ja 0x67181c0c
jmp 0x671826a8
inc edx
add eax, 8
cmp ecx, edx
je 0x67182590
movss xmm0, dword [eax]
mov dword [esp + 0x68], eax
comiss xmm3, xmm0
jae 0x67181c00
lea eax, [edi + edx*8 - 8]
mov edi, dword [esp + 0x68]
movups xmm1, xmm0
subss xmm1, xmm3
subss xmm0, dword [eax]
divss xmm1, xmm0
movss xmm0, dword [0x67186294]
subss xmm0, xmm1
mulss xmm1, dword [eax + 4]
mulss xmm0, dword [edi + 4]
addss xmm0, xmm1
mov eax, dword [ebp + 0x18]
movss dword [eax + 0x10], xmm0
test byte [ebp + 0x14], 8
je 0x67181cd2
mov eax, dword [ebx + 0x54]
mov edx, 0x67184060
test eax, eax
cmove eax, edx
mov edx, 1
mov ecx, dword [eax + 4]
mov edi, dword [eax]
cmp ecx, 1
lea eax, [edi + 8]
ja 0x67181c8c
jmp 0x671826e8
inc edx
add eax, 8
cmp ecx, edx
je 0x67182580
movss xmm0, dword [eax]
mov dword [esp + 0x68], eax
comiss xmm3, xmm0
jae 0x67181c80
lea eax, [edi + edx*8 - 8]
mov edi, dword [esp + 0x68]
movups xmm1, xmm0
subss xmm1, xmm3
subss xmm0, dword [eax]
divss xmm1, xmm0
movss xmm0, dword [0x67186294]
subss xmm0, xmm1
mulss xmm1, dword [eax + 4]
mulss xmm0, dword [edi + 4]
addss xmm0, xmm1
mov eax, dword [ebp + 0x18]
movss dword [eax + 0x14], xmm0
test byte [ebp + 0x14], 0x10
je 0x67181d59
mov eax, dword [ebx + 0x58]
mov edx, 0x67184058
test eax, eax
cmove eax, edx
mov edx, 1
mov ecx, dword [eax + 4]
mov edi, dword [eax]
cmp ecx, 1
lea eax, [edi + 8]
ja 0x67181d0c
jmp 0x671826c8
inc edx
add eax, 8
cmp ecx, edx
je 0x67182538
movss xmm0, dword [eax]
mov dword [esp + 0x68], eax
comiss xmm3, xmm0
jae 0x67181d00
lea edi, [edi + edx*8 - 8]
movss xmm1, dword [edi + 4]
movups xmm2, xmm0
mov eax, dword [esp + 0x68]
subss xmm0, dword [edi]
subss xmm2, xmm3
divss xmm2, xmm0
movups xmm0, xmm2
movss xmm2, dword [0x67186294]
mulss xmm1, xmm0
subss xmm2, xmm0
mulss xmm2, dword [eax + 4]
addss xmm1, xmm2
mov eax, dword [ebp + 0x18]
movss dword [eax + 0x18], xmm1
test byte [ebp + 0x14], 0x20
jne 0x67181da8
test byte [ebp + 0x14], 0x40
je 0x67181d89
pxor xmm0, xmm0
movsd xmm1, qword [0x671862d0]
cvtss2sd xmm0, xmm4
comisd xmm1, xmm0
jbe 0x671824d0
mov eax, dword [ebp + 0x18]
mov dword [eax + 0x20], 0x3fc90fdb
test byte [ebp + 0x14], 2
je 0x67181d9b
mov eax, dword [ebp + 8]
cmp dword [eax], 3
je 0x67182388
lea esp, [ebp - 0xc]
pop ebx
pop esi
pop edi
pop ebp
ret
mov eax, dword [ebp + 8]
pxor xmm0, xmm0
ucomiss xmm4, xmm0
movss xmm1, dword [eax + 0xc]
mov eax, dword [ebp + 0x18]
mov dword [eax + 0x1c], 0x3f800000
jp 0x671823b8
jne 0x671823b8
mov eax, dword [ebp + 0x18]
mov dword [eax + 0x2c], 0
mov dword [eax + 0x28], 0
movss xmm2, dword [ebx + 0x60]
comiss xmm2, xmm0
jbe 0x67181d5f
movups xmm0, xmm1
mov eax, dword [ebp + 0x18]
movups xmm7, xmm1
movss dword [esp + 0x68], xmm4
divss xmm0, xmm2
movss xmm3, dword [eax + 0x28]
movss xmm2, dword [eax + 0x2c]
minss xmm3, xmm0
minss xmm2, xmm0
movss dword [eax + 0x28], xmm3
movss dword [eax + 0x2c], xmm2
movups xmm0, xmm3
movss xmm3, dword [ebx + 0x60]
mulss xmm2, xmm3
mulss xmm0, xmm3
subss xmm7, xmm2
subss xmm1, xmm0
movups xmm2, xmm7
divss xmm2, xmm1
movss dword [eax + 0x1c], xmm2
movss dword [esp], xmm2
call dword [sym.imp.ucrtbase.dll__fdclass]
movss xmm4, dword [esp + 0x68]
cmp ax, 2
je 0x67182698
mov eax, dword [ebp + 0x18]
movss xmm0, dword [eax + 0x1c]
comiss xmm0, dword [0x671862a8]
jbe 0x67182718
movss xmm0, dword [0x671862a8]
mov eax, dword [ebp + 0x18]
movss dword [eax + 0x1c], xmm0
jmp 0x67181d5f
mov eax, dword [eax]
mov dword [esp + 0x68], eax
mov eax, dword [ebp + 0x18]
mov eax, dword [eax + 0xc]
mov dword [esp + 0x48], eax
mov eax, dword [ebp + 0x18]
mov eax, dword [eax + 8]
mov dword [esp + 0x50], eax
mov eax, dword [ebp + 8]
mov edi, dword [eax]
xor eax, eax
lea esi, [esi]
mov ecx, eax
shl ecx, 4
cmp edi, dword [ecx + 0x67186060]
je 0x671825a0
inc eax
cmp eax, 0xa
jne 0x67181eb0
xor eax, eax
mov dword [esp + 0x40], eax
mov eax, dword [ebx + 0x48]
mov edi, dword [ebx + 0x4c]
test eax, eax
mov dword [esp + 0x64], edi
je 0x67182620
mov edi, dword [eax + 4]
mov ecx, dword [eax]
cmp edi, 1
mov dword [esp + 0x54], ecx
jbe 0x67182893
mov dword [esp + 0x3c], edx
lea eax, [ecx + 8]
mov ecx, edx
jmp 0x67181f0c
inc ecx
add eax, 8
cmp edi, ecx
je 0x67182600
movss xmm0, dword [eax]
comiss xmm3, xmm0
jae 0x67181f00
mov edx, dword [esp + 0x3c]
mov edi, eax
movups xmm1, xmm0
mov eax, dword [esp + 0x54]
subss xmm1, xmm3
lea eax, [eax + ecx*8 - 8]
subss xmm0, dword [eax]
divss xmm1, xmm0
movups xmm0, xmm1
movss xmm1, dword [0x67186294]
subss xmm1, xmm0
mulss xmm0, dword [eax + 4]
mulss xmm1, dword [edi + 4]
addss xmm1, xmm0
movss dword [esp + 0x54], xmm1
mov eax, dword [esp + 0x64]
test eax, eax
je 0x67182658
mov eax, dword [esp + 0x64]
mov ecx, dword [eax + 4]
mov edi, dword [eax]
cmp ecx, 1
mov dword [esp + 0x64], edi
jbe 0x671828ac
lea eax, [edi + 8]
jmp 0x67181f8c
inc edx
add eax, 8
cmp ecx, edx
je 0x67182680
movss xmm0, dword [eax]
mov edi, eax
comiss xmm3, xmm0
jae 0x67181f80
movups xmm2, xmm0
mov eax, dword [esp + 0x64]
subss xmm2, xmm3
lea eax, [eax + edx*8 - 8]
subss xmm0, dword [eax]
divss xmm2, xmm0
movups xmm0, xmm2
movss xmm2, dword [0x67186294]
subss xmm2, xmm0
mulss xmm0, dword [eax + 4]
mulss xmm2, dword [edi + 4]
addss xmm2, xmm0
movss dword [esp + 0x64], xmm2
mov eax, dword [esi + 0x30]
test eax, eax
je 0x6718208a
movss xmm0, dword [esp + 0x58]
movss xmm1, dword [esp + 0x5c]
mulss xmm0, dword [esi]
mulss xmm1, dword [esi + 4]
movss dword [esp + 0x38], xmm3
movss dword [esp + 0x3c], xmm4
addss xmm0, xmm1
movss xmm1, dword [esp + 0x60]
mulss xmm1, dword [esi + 8]
addss xmm0, xmm1
divss xmm0, xmm4
cvtss2sd xmm0, xmm0
movsd qword [esp], xmm0
call dword [sym.imp.ucrtbase.dll_acos]
mov eax, dword [esi + 0x30]
pxor xmm0, xmm0
movss xmm4, dword [esp + 0x3c]
movss xmm3, dword [esp + 0x38]
movss xmm2, dword [eax]
movss xmm7, dword [eax + 0xc]
movss xmm5, dword [eax + 8]
ucomiss xmm2, xmm0
movss xmm6, dword [eax + 4]
fstp qword [esp + 0x30]
jp 0x67182428
jne 0x67182428
ucomiss xmm6, xmm0
jp 0x67182428
jne 0x67182428
movups xmm5, xmm7
movss xmm6, dword [esp + 0x54]
mulss xmm6, xmm5
mulss xmm5, dword [esp + 0x64]
movss dword [esp + 0x54], xmm6
movss dword [esp + 0x64], xmm5
mov edi, dword [ebx]
test edi, edi
je 0x6718209a
cmp dword [ebx + 0x3c], 1
je 0x67182730
mov edx, dword [esp + 0x50]
mov ecx, dword [esp + 0x48]
mov eax, dword [esp + 0x68]
imul edx, ecx
mov edi, eax
shl edx, 2
cmp edx, 8
jae 0x67182548
test dl, 4
je 0x671820c5
mov dword [edi], 0
add edi, 4
test dl, 2
je 0x671820d2
mov word [edi], 0
add edi, 2
test dl, 1
je 0x671820da
mov byte [edi], 0
cmp dword [esp + 0x48], 1
je 0x671825b0
mov eax, dword [esi]
movss xmm0, dword [esi + 0xc]
movss xmm6, dword [esi]
movss xmm1, dword [esi + 0x14]
mov dword [esp + 0x7c], eax
mov eax, dword [esi + 4]
movss xmm2, dword [esi + 8]
movss xmm5, dword [esi + 0x10]
movss xmm7, dword [esi + 4]
mov dword [esp + 0x80], eax
mov eax, dword [esi + 8]
mulss xmm5, xmm2
mulss xmm7, xmm1
mulss xmm2, xmm0
mov dword [esp + 0x84], eax
mov eax, dword [esi + 0xc]
mulss xmm1, xmm6
mulss xmm0, dword [esi + 4]
mulss xmm6, dword [esi + 0x10]
subss xmm5, xmm7
mov dword [esp + 0x94], eax
mov eax, dword [esi + 0x10]
subss xmm1, xmm2
movss dword [esp + 0x88], xmm5
subss xmm0, xmm6
movss dword [esp + 0x8c], xmm1
mov dword [esp + 0x98], eax
mov eax, dword [esi + 0x14]
movss dword [esp + 0x90], xmm0
mov dword [esp + 0x9c], eax
mov eax, dword [ebx + 0x3c]
cmp eax, 1
je 0x671827e0
movss xmm6, dword [ebx + 0x10]
test eax, eax
movss xmm1, dword [ebx + 0x14]
movss xmm5, dword [ebx + 8]
movss xmm0, dword [ebx + 4]
movups xmm2, xmm6
movups xmm7, xmm1
mulss xmm7, xmm0
mulss xmm2, xmm5
subss xmm2, xmm7
movss xmm7, dword [ebx + 0xc]
movss dword [esp + 0x30], xmm2
movss xmm2, dword [ebx + 0x18]
mulss xmm6, xmm7
mulss xmm1, xmm7
mulss xmm0, xmm2
mulss xmm5, xmm2
subss xmm0, xmm6
subss xmm1, xmm5
movss dword [esp + 0x2c], xmm0
movss dword [esp + 0x28], xmm1
je 0x67181bcf
mov dword [ebp + 0xc], esi
xor edi, edi
mov esi, dword [esp + 0x40]
movss dword [esp + 0x24], xmm3
movss dword [esp + 0x20], xmm4
jmp 0x67182222
jne 0x67182233
mov edx, dword [esi + 0xc]
mov ecx, dword [esp + 0x68]
movss xmm7, dword [esp + 0x64]
imul edx, eax
add edx, edi
inc edi
movss dword [ecx + edx*4], xmm7
cmp eax, edi
jbe 0x6718236d
mov edx, dword [ebx + 0x44]
movss xmm1, dword [edx + edi*4]
ucomiss xmm1, dword [0x671862a0]
jnp 0x67182200
movss xmm0, dword [ebx + 0x40]
cvtss2sd xmm1, xmm1
movsd qword [esp], xmm1
mov dword [esp + 0x38], eax
movsd qword [esp + 0x40], xmm1
movss dword [esp + 0x3c], xmm0
call dword [sym.imp.ucrtbase.dll_cos]
movsd xmm1, qword [esp + 0x40]
pxor xmm5, xmm5
movsd qword [esp], xmm1
fstp qword [esp + 0x48]
cvtsd2ss xmm5, qword [esp + 0x48]
movss dword [esp + 0x50], xmm5
call dword [sym.imp.ucrtbase.dll_sin]
pxor xmm4, xmm4
mov eax, dword [esp + 0x68]
movss xmm0, dword [esp + 0x3c]
movss xmm1, dword [ebx + 0xc]
movss xmm2, dword [esp + 0x30]
movss xmm5, dword [esp + 0x50]
mulss xmm1, xmm0
mulss xmm2, xmm0
fstp qword [esp + 0x48]
cvtsd2ss xmm4, qword [esp + 0x48]
movss xmm3, dword [esp + 0x2c]
mulss xmm1, xmm5
mulss xmm2, xmm4
mulss xmm3, xmm0
lea edx, [esp + 0x7c]
addss xmm1, xmm2
movss xmm2, dword [ebx + 8]
subss xmm1, dword [esp + 0x60]
mulss xmm3, xmm4
mulss xmm2, xmm0
movss dword [esp + 0x78], xmm1
mulss xmm2, xmm5
addss xmm2, xmm3
movss xmm3, dword [ebx + 4]
subss xmm2, dword [esp + 0x5c]
mulss xmm3, xmm0
mulss xmm0, dword [esp + 0x28]
movss dword [esp + 0x74], xmm2
mulss xmm3, xmm5
mulss xmm0, xmm4
addss xmm0, xmm3
subss xmm0, dword [esp + 0x58]
movss dword [esp + 0x70], xmm0
movss xmm0, dword [ebx + 0x34]
mov dword [esp + 0x18], eax
mov eax, dword [esp + 0x38]
mov dword [esp + 0x10], edi
inc edi
mov dword [esp + 0x14], eax
mov eax, dword [ebp + 0x14]
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0x70]
movss xmm2, dword [esp + 0x64]
movss xmm1, dword [esp + 0x54]
mov dword [esp], eax
mov eax, dword [esp + 0x74]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x78]
mov dword [esp + 8], eax
mov eax, esi
call sym._ComputeEmitterChannelCoefficients
mov eax, dword [ebx + 0x3c]
cmp eax, edi
ja 0x67182222
mov esi, dword [ebp + 0xc]
movss xmm3, dword [esp + 0x24]
movss xmm4, dword [esp + 0x20]
jmp 0x67181bcf
mov eax, dword [ebp + 0x18]
mov edx, dword [eax + 0xc]
test edx, edx
je 0x67181d9b
mov eax, dword [eax + 4]
lea edx, [eax + edx*4]
lea esi, [esi]
mov dword [eax], 0
add eax, 4
cmp edx, eax
jne 0x671823a0
lea esp, [ebp - 0xc]
pop ebx
pop esi
pop edi
pop ebp
ret
movss xmm2, dword [esi + 0x24]
movss xmm3, dword [esi + 0x28]
movss xmm7, dword [esp + 0x58]
movss xmm5, dword [esp + 0x5c]
movss xmm6, dword [esp + 0x60]
mulss xmm2, xmm7
mov eax, dword [ebp + 0x18]
mulss xmm3, xmm5
addss xmm2, xmm3
movss xmm3, dword [esi + 0x2c]
mulss xmm3, xmm6
addss xmm2, xmm3
divss xmm2, xmm4
movss dword [eax + 0x2c], xmm2
mulss xmm7, dword [ebx + 0x28]
mulss xmm5, dword [ebx + 0x2c]
mulss xmm6, dword [ebx + 0x30]
movups xmm2, xmm7
addss xmm2, xmm5
addss xmm2, xmm6
divss xmm2, xmm4
movss dword [eax + 0x28], xmm2
jmp 0x67181dde
ucomiss xmm2, dword [0x671862a0]
jp 0x67182450
jne 0x67182450
ucomiss xmm6, dword [0x671862a0]
jp 0x67182450
je 0x6718206e
lea esi, [esi]
lea esi, [esi]
pxor xmm0, xmm0
movsd xmm1, qword [0x671862b0]
cvtss2sd xmm0, xmm4
comisd xmm1, xmm0
jae 0x6718206e
movss xmm0, dword [0x67186290]
pxor xmm1, xmm1
cvtsd2ss xmm1, qword [esp + 0x30]
xorps xmm1, xmmword [0x671862c0]
mulss xmm2, xmm0
comiss xmm2, xmm1
jae 0x6718206e
mulss xmm6, xmm0
comiss xmm6, xmm1
jb 0x6718206b
movss xmm0, dword [0x67186294]
subss xmm1, xmm2
subss xmm6, xmm2
divss xmm1, xmm6
subss xmm0, xmm1
mulss xmm1, xmm7
mulss xmm5, xmm0
addss xmm5, xmm1
jmp 0x6718206e
movss xmm0, dword [esp + 0x58]
movss xmm1, dword [esp + 0x5c]
mulss xmm0, dword [ebx + 4]
mulss xmm1, dword [ebx + 8]
addss xmm0, xmm1
movss xmm1, dword [esp + 0x60]
mulss xmm1, dword [ebx + 0xc]
addss xmm0, xmm1
divss xmm0, xmm4
cvtss2sd xmm0, xmm0
movsd qword [esp], xmm0
call dword [sym.imp.ucrtbase.dll_acos]
mov eax, dword [ebp + 0x18]
pxor xmm0, xmm0
test byte [ebp + 0x14], 2
fstp qword [esp + 0x68]
cvtsd2ss xmm0, qword [esp + 0x68]
movss dword [eax + 0x20], xmm0
je 0x67181d9b
jmp 0x67181d8f
movss xmm1, dword [edi + ecx*8 - 4]
jmp 0x67181d51
test al, 1
jne 0x67182988
test edi, 2
jne 0x67182978
test edi, 4
jne 0x67182967
mov ecx, edx
xor eax, eax
shr ecx, 2
and edx, 3
rep stosd dword es:[edi], eax
jmp 0x671820b7
movss xmm0, dword [edi + ecx*8 - 4]
jmp 0x67181cca
movss xmm0, dword [edi + ecx*8 - 4]
jmp 0x67181c4a
lea eax, [ecx + 0x67186060]
mov dword [esp + 0x40], eax
jmp 0x67181ecd
mov ecx, dword [ebx + 0x3c]
test ecx, ecx
je 0x67181bcf
mov edx, dword [ebx + 0x44]
xor eax, eax
mov edi, dword [esp + 0x68]
movss xmm1, dword [esp + 0x54]
jmp 0x671825e9
movss xmm0, dword [edx + eax*4]
ucomiss xmm0, dword [0x671862a0]
jp 0x671825f2
jne 0x671825f2
inc eax
cmp ecx, eax
je 0x67181bcf
test edx, edx
lea esi, [esi]
nop
jne 0x671825d0
movss dword [edi + eax*4], xmm1
jmp 0x671825e0
mov edx, dword [esp + 0x3c]
mov eax, dword [esp + 0x54]
movss xmm6, dword [eax + edi*8 - 4]
movss dword [esp + 0x54], xmm6
jmp 0x67181f55
movss xmm0, dword [0x67186294]
comiss xmm3, xmm0
jb 0x67182888
divss xmm0, xmm3
mov eax, dword [esp + 0x64]
test eax, eax
movss dword [esp + 0x54], xmm0
jne 0x67181f61
movss dword [esp + 0x64], xmm0
jmp 0x67181fd1
movss xmm2, dword [0x67186294]
comiss xmm3, xmm2
jb 0x67182708
divss xmm2, xmm3
movss dword [esp + 0x64], xmm2
jmp 0x67181fd1
mov eax, dword [esp + 0x64]
movss xmm7, dword [eax + ecx*8 - 4]
movss dword [esp + 0x64], xmm7
jmp 0x67181fd1
movss xmm0, dword [0x67186294]
jmp 0x67181e77
je 0x67182590
lea eax, [edi + 8]
mov edx, 1
movss xmm0, dword [edi + 8]
mov dword [esp + 0x68], eax
jmp 0x67181c19
movss xmm1, dword [edi + 4]
je 0x67181d51
lea eax, [edi + 8]
movss xmm0, dword [edi + 8]
mov dword [esp + 0x68], eax
jmp 0x67181d22
je 0x67182580
lea eax, [edi + 8]
mov edx, 1
movss xmm0, dword [edi + 8]
mov dword [esp + 0x68], eax
jmp 0x67181c99
movss dword [esp + 0x64], xmm2
jmp 0x67181fd1
movss xmm1, dword [0x67186290]
maxss xmm1, xmm0
movups xmm0, xmm1
jmp 0x67181e77
movss xmm0, dword [esp + 0x58]
movss xmm1, dword [esp + 0x5c]
mulss xmm0, dword [ebx + 4]
mulss xmm1, dword [ebx + 8]
movss dword [esp + 0x38], xmm3
movss dword [esp + 0x3c], xmm4
addss xmm0, xmm1
movss xmm1, dword [esp + 0x60]
mulss xmm1, dword [ebx + 0xc]
addss xmm0, xmm1
divss xmm0, xmm4
cvtss2sd xmm0, xmm0
movsd qword [esp], xmm0
call dword [sym.imp.ucrtbase.dll_acos]
mov eax, dword [ebx]
pxor xmm0, xmm0
movss xmm4, dword [esp + 0x3c]
movss xmm3, dword [esp + 0x38]
movss xmm2, dword [eax]
movss xmm7, dword [eax + 0xc]
movss xmm5, dword [eax + 8]
ucomiss xmm2, xmm0
movss xmm6, dword [eax + 4]
fstp qword [esp + 0x30]
jp 0x671828c8
jne 0x671828c8
ucomiss xmm6, xmm0
jp 0x671828c8
lea esi, [esi]
jne 0x671828c8
movups xmm5, xmm7
mulss xmm5, dword [esp + 0x54]
movss dword [esp + 0x54], xmm5
jmp 0x6718209a
movss xmm0, dword [0x671862c0]
mov eax, dword [esp + 0x68]
xor edx, edx
movss xmm1, dword [esp + 0x58]
movss xmm6, dword [esp + 0x60]
movss dword [esp + 0x50], xmm4
movss dword [esp + 0x48], xmm3
xorps xmm1, xmm0
movss xmm2, dword [esp + 0x64]
movss dword [esp + 0x70], xmm1
movss xmm1, dword [esp + 0x5c]
xorps xmm1, xmm0
xorps xmm0, xmm6
movss dword [esp + 0x74], xmm1
movss dword [esp + 0x78], xmm0
movss xmm0, dword [ebx + 0x34]
mov dword [esp + 0x18], eax
mov eax, 1
mov dword [esp + 0x14], eax
mov eax, dword [ebp + 0x14]
movss xmm1, dword [esp + 0x54]
mov dword [esp + 0x10], edx
lea edx, [esp + 0x7c]
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0x70]
mov dword [esp], eax
mov eax, dword [esp + 0x74]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x78]
mov dword [esp + 8], eax
mov eax, dword [esp + 0x40]
call sym._ComputeEmitterChannelCoefficients
movss xmm3, dword [esp + 0x48]
movss xmm4, dword [esp + 0x50]
jmp 0x67181bcf
movss dword [esp + 0x54], xmm0
jmp 0x67181f55
je 0x67182604
mov eax, dword [esp + 0x54]
mov ecx, edx
movss xmm0, dword [eax + 8]
lea edi, [eax + 8]
jmp 0x67181f1b
je 0x67182680
mov eax, dword [esp + 0x64]
movss xmm0, dword [eax + 8]
lea edi, [eax + 8]
jmp 0x67181f97
ucomiss xmm2, dword [0x671862a0]
jp 0x671828f0
jne 0x671828f0
ucomiss xmm6, dword [0x671862a0]
jp 0x671828f0
je 0x671827c9
lea esi, [esi]
lea esi, [esi]
pxor xmm0, xmm0
movsd xmm1, qword [0x671862b0]
cvtss2sd xmm0, xmm4
comisd xmm1, xmm0
jae 0x671827c9
movss xmm0, dword [0x67186290]
pxor xmm1, xmm1
cvtsd2ss xmm1, qword [esp + 0x30]
mulss xmm0, xmm2
comiss xmm0, xmm1
jae 0x671827c9
movss xmm2, dword [0x67186290]
mulss xmm2, xmm6
comiss xmm2, xmm1
jb 0x671827c6
subss xmm1, xmm0
subss xmm2, xmm0
movss xmm0, dword [0x67186294]
divss xmm1, xmm2
subss xmm0, xmm1
mulss xmm1, xmm7
mulss xmm5, xmm0
addss xmm5, xmm1
jmp 0x671827c9
mov dword [edi], 0
sub edx, 4
add edi, 4
jmp 0x67182568
mov word [edi], 0
sub edx, 2
add edi, 2
jmp 0x6718255c
mov byte [eax], 0
lea edi, [eax + 1]
dec edx
jmp 0x67182550
movsd qword [esp + 0x68], xmm4
movsd qword [esp], xmm0
call dword [sym.imp.ucrtbase.dll_sqrt]
fstp st(0)
movsd xmm4, qword [esp + 0x68]
jmp 0x67181baf