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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff0
sub esp, 0x108
mov eax, dword [0x55c054]
xor eax, esp
mov dword [esp + 0x104], eax
movss xmm0, dword [0x54f438]
push esi
mov esi, ecx
lea ecx, [esp + 0x6c]
push edi
movss xmm3, dword [esi + 0xec]
movss xmm2, dword [esi + 0xe8]
movss xmm1, dword [esi + 0xe4]
mulss xmm3, xmm0
mulss xmm2, xmm0
mulss xmm1, xmm0
call fcn.004c8000
movups xmm2, xmmword [eax]
movaps xmm3, xmm2
movaps xmmword [esp + 0x50], xmm2
shufps xmm3, xmm2, 0x55
movaps xmm1, xmm2
movaps xmm0, xmm3
mulss xmm1, xmm2
mulss xmm0, xmm3
movups xmmword [esp + 0x40], xmm3
movaps xmm3, xmm2
movaps xmmword [esp + 0x20], xmm2
addss xmm1, xmm0
shufps xmm3, xmm2, 0xaa
movaps xmm0, xmm3
mulss xmm0, xmm3
movups xmmword [esp + 0x30], xmm3
addss xmm1, xmm0
movaps xmm3, xmm2
shufps xmm3, xmm2, 0xff
movaps xmm0, xmm3
mulss xmm0, xmm3
movups xmmword [esp + 0x60], xmm3
addss xmm1, xmm0
xorps xmm0, xmm0
cvtss2sd xmm0, xmm1
xorps xmm1, xmm1
ucomisd xmm1, xmm0
ja 0x411ff2
sqrtsd xmm0, xmm0
jmp 0x411ff7
call fcn.005130f0
xorps xmm1, xmm1
cvtsd2ss xmm1, xmm0
movss xmm0, dword [0x54f418]
comiss xmm0, xmm1
ja 0x41205a
movss xmm0, dword [0x54f4f4]
divss xmm0, xmm1
movaps xmm1, xmmword [esp + 0x50]
mulss xmm1, xmm0
movss dword [esp + 0x20], xmm1
movups xmm1, xmmword [esp + 0x40]
mulss xmm1, xmm0
movss dword [esp + 0x24], xmm1
movups xmm1, xmmword [esp + 0x30]
mulss xmm1, xmm0
movss dword [esp + 0x28], xmm1
movups xmm1, xmmword [esp + 0x60]
mulss xmm1, xmm0
movss dword [esp + 0x2c], xmm1
movaps xmm1, xmmword [esp + 0x20]
jmp 0x41205f
movaps xmm1, xmmword [esp + 0x50]
lea ecx, [esi + 0x20]
lea eax, [esi + 0x2c]
mov dword [esp + 0x1c], ecx
push ecx
push eax
lea edx, [esi + 0x14]
lea ecx, [esp + 0xd0]
movups xmmword [eax], xmm1
call fcn.004c7560
add esp, 8
lea ecx, [esi + 0x7c]
push eax
call fcn.004c7700
mov eax, dword [0x562820]
mov ecx, 1
mov dword [esp + 0x14], ecx
mov eax, dword [eax + 0x14]
mov edx, dword [eax + 0xc]
mov eax, dword [eax + 0x10]
sub eax, edx
sar eax, 2
cmp eax, ecx
jbe 0x412306
nop dword [eax]
mov ecx, dword [edx + ecx*4]
lea eax, [esp + 0x50]
push 2
xor esi, esi
xor edi, edi
push eax
mov dword [esp + 0x10], edi
mov dword [esp + 0x14], esi
mov dword [esp + 0x18], esi
call fcn.004ccc30
lea ecx, [esp + 8]
mov dword [esp + 0x18], eax
cmp ecx, eax
je 0x41210c
call fcn.00408410
mov ecx, dword [esp + 0x18]
mov edi, dword [ecx]
mov esi, dword [ecx + 4]
mov eax, dword [ecx + 8]
mov dword [esp + 8], edi
mov dword [esp + 0xc], esi
mov dword [esp + 0x10], eax
mov dword [ecx], 0
mov dword [ecx + 4], 0
mov dword [ecx + 8], 0
lea ecx, [esp + 0x50]
call fcn.00408410
sub esi, edi
xor eax, eax
sar esi, 2
test esi, esi
je 0x41213a
cmp esi, eax
jbe 0x41231c
mov edi, dword [edi + eax*4]
cmp dword [edi + 8], 2
je 0x41213c
mov edi, dword [esp + 8]
inc eax
cmp eax, esi
jb 0x412120
xor edi, edi
lea ecx, [esp + 8]
call fcn.00408410
push 0
push 0x561304
push 0x5612c4
push 0
push edi
call fcn.005110f2
mov esi, eax
add esp, 0x14
mov ecx, dword [esi + 0xc]
lea eax, [esi + 0x7c]
push eax
lea eax, [esp + 0x8c]
push eax
mov ecx, dword [ecx]
mov ecx, dword [ecx + 4]
add ecx, 0x3c
call fcn.004c7770
cmp byte [ebp + 8], 0
mov edx, eax
mov ecx, dword [edx]
mov dword [esi + 0x3c], ecx
mov ecx, dword [edx + 4]
mov dword [esi + 0x40], ecx
mov ecx, dword [edx + 8]
mov dword [esi + 0x44], ecx
mov ecx, dword [edx + 0xc]
mov dword [esi + 0x48], ecx
mov ecx, dword [edx + 0x10]
mov dword [esi + 0x4c], ecx
mov eax, dword [edx + 0x14]
mov dword [esi + 0x50], eax
mov eax, dword [edx + 0x18]
mov dword [esi + 0x54], eax
mov eax, dword [edx + 0x1c]
mov dword [esi + 0x58], eax
mov eax, dword [edx + 0x20]
mov dword [esi + 0x5c], eax
mov eax, dword [edx + 0x24]
mov dword [esi + 0x60], eax
mov eax, dword [edx + 0x28]
mov dword [esi + 0x64], eax
mov eax, dword [edx + 0x2c]
mov dword [esi + 0x68], eax
mov eax, dword [edx + 0x30]
mov dword [esi + 0x6c], eax
mov eax, dword [edx + 0x34]
mov dword [esi + 0x70], eax
mov eax, dword [edx + 0x38]
mov dword [esi + 0x74], eax
je 0x4122d1
mov eax, dword [edx + 0x3c]
lea ecx, [esi + 0x3c]
mov dword [esi + 0x78], eax
lea eax, [esp + 0x20]
push eax
lea eax, [esp + 0x8c]
push eax
lea eax, [esp + 0x48]
push eax
call fcn.004c7210
lea edx, [esp + 0x88]
lea ecx, [esp + 0x60]
call fcn.004c8580
mov eax, dword [esp + 0x1c]
lea edx, [esp + 0x40]
movaps xmm0, xmmword [esp + 0x60]
lea ecx, [esp + 0x88]
movss xmm1, dword [0x54f71c]
movaps xmmword [esp + 0x70], xmm0
movss xmm0, dword [eax]
mulss xmm0, xmm1
mov dword [esp + 0x48], 0
movss dword [esp + 0x30], xmm0
movss xmm0, dword [eax + 4]
mulss xmm0, xmm1
movss dword [esp + 0x34], xmm0
movss xmm0, dword [eax + 8]
lea eax, [esp + 0x30]
mulss xmm0, xmm1
push eax
lea eax, [esp + 0x74]
push eax
movss dword [esp + 0x40], xmm0
call fcn.004c7560
mov edx, eax
add esp, 8
mov ecx, dword [edx]
mov dword [esi + 0x3c], ecx
mov ecx, dword [edx + 4]
mov dword [esi + 0x40], ecx
mov ecx, dword [edx + 8]
mov dword [esi + 0x44], ecx
mov ecx, dword [edx + 0xc]
mov dword [esi + 0x48], ecx
mov ecx, dword [edx + 0x10]
mov dword [esi + 0x4c], ecx
mov eax, dword [edx + 0x14]
mov dword [esi + 0x50], eax
mov eax, dword [edx + 0x18]
mov dword [esi + 0x54], eax
mov eax, dword [edx + 0x1c]
mov dword [esi + 0x58], eax
mov eax, dword [edx + 0x20]
mov dword [esi + 0x5c], eax
mov eax, dword [edx + 0x24]
mov dword [esi + 0x60], eax
mov eax, dword [edx + 0x28]
mov dword [esi + 0x64], eax
mov eax, dword [edx + 0x2c]
mov dword [esi + 0x68], eax
mov eax, dword [edx + 0x30]
mov dword [esi + 0x6c], eax
mov eax, dword [edx + 0x34]
mov dword [esi + 0x70], eax
mov eax, dword [edx + 0x38]
mov dword [esi + 0x74], eax
movss xmm0, dword [edx + 0x3c]
mov ecx, esi
movss dword [esi + 0x78], xmm0
call fcn.00412330
mov eax, dword [0x562820]
mov ecx, dword [esp + 0x14]
inc ecx
mov dword [esp + 0x14], ecx
mov eax, dword [eax + 0x14]
mov edx, dword [eax + 0xc]
mov eax, dword [eax + 0x10]
sub eax, edx
sar eax, 2
cmp ecx, eax
jb 0x4120b0
mov ecx, dword [esp + 0x10c]
pop edi
pop esi
xor ecx, esp
call fcn.004e7a8e
mov esp, ebp
pop ebp
ret 4
call fcn.0040d520
int3