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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x64
mov eax, dword [0x100250b4]
xor eax, esp
mov dword [esp + 0x60], eax
mov eax, dword [0x100266f0]
push ebx
push esi
push edi
test eax, eax
je 0x10004f5e
cmp eax, 1
jne 0x10004f5e
mov ecx, dword [0x10026678]
xor edi, edi
movss xmm0, dword [0x10021fc0]
xor esi, esi
mov dword [esp + 0x10], edi
movss dword [esp + 0x18], xmm0
mov eax, dword [ecx + 0x2c]
xor eax, 0x13855c
jbe 0x10004f65
mov ebx, dword [esp + 0x14]
mov edx, dword [0x100285e8]
mov eax, dword [ecx + 0x2c]
xor eax, 0x13855c
cmp eax, esi
jbe 0x10004f47
test esi, esi
jle 0x10004f47
mov eax, dword [ecx + 0x44]
xor eax, 0x30fd16
mov edi, dword [eax + esi*4]
test edi, edi
je 0x10004f47
mov eax, dword [edi + 0x210]
cmp eax, 0x20
je 0x10004de0
cmp eax, 0x21
jne 0x10004f47
cmp edi, edx
je 0x10004f47
mov eax, edi
shr eax, 0x10
test eax, eax
je 0x10004f47
mov eax, dword [0x100266f8]
sub eax, 0
je 0x10004e09
sub eax, 1
jne 0x10004e0e
lea ebx, [eax + 4]
jmp 0x10004e0e
mov ebx, 6
lea eax, [esp + 0x24]
mov edx, edi
push eax
push ebx
lea ecx, [esp + 0x38]
call fcn.10003630
mov eax, dword [0x100285e8]
add esp, 8
movss xmm3, dword [esp + 0x2c]
movss dword [esp + 0x14], xmm3
movq xmm0, qword [eax + 0x24]
mov eax, dword [eax + 0x2c]
movq qword [esp + 0x3c], xmm0
movss xmm0, dword [esp + 0x28]
movss xmm2, dword [esp + 0x40]
movss xmm1, dword [esp + 0x3c]
subss xmm2, xmm0
movss dword [esp + 0x1c], xmm0
movss xmm0, dword [esp + 0x24]
subss xmm1, xmm0
movss dword [esp + 0x20], xmm0
mov dword [esp + 0x44], eax
movss xmm0, dword [esp + 0x44]
subss xmm0, xmm3
mulss xmm2, xmm2
mulss xmm1, xmm1
mulss xmm0, xmm0
addss xmm1, xmm2
addss xmm1, xmm0
cvtps2pd xmm0, xmm1
xorps xmm1, xmm1
ucomisd xmm1, xmm0
ja 0x10004ea1
sqrtsd xmm0, xmm0
jmp 0x10004ea6
call fcn.10019b50
movss xmm1, dword [esp + 0x18]
cvtsd2ss xmm0, xmm0
comiss xmm1, xmm0
jbe 0x10004f3b
mov eax, dword [0x100285e8]
movss xmm1, dword [esp + 0x20]
movss xmm2, dword [esp + 0x14]
movq xmm0, qword [eax + 0x24]
mov eax, dword [eax + 0x2c]
movq qword [esp + 0x48], xmm0
movss xmm0, dword [esp + 0x1c]
subss xmm0, dword [esp + 0x4c]
subss xmm1, dword [esp + 0x48]
mov dword [esp + 0x50], eax
subss xmm2, dword [esp + 0x50]
mulss xmm0, xmm0
mulss xmm1, xmm1
mulss xmm2, xmm2
addss xmm0, xmm1
xorps xmm1, xmm1
addss xmm0, xmm2
cvtps2pd xmm0, xmm0
ucomisd xmm1, xmm0
ja 0x10004f1a
sqrtsd xmm0, xmm0
jmp 0x10004f1f
call fcn.10019b50
mov ecx, dword [0x10026678]
mov edx, dword [0x100285e8]
cvtsd2ss xmm0, xmm0
mov dword [esp + 0x10], edi
movss dword [esp + 0x18], xmm0
jmp 0x10004f4b
mov ecx, dword [0x10026678]
mov edx, dword [0x100285e8]
mov edi, dword [esp + 0x10]
mov eax, dword [ecx + 0x2c]
inc esi
xor eax, 0x13855c
cmp esi, eax
jb 0x10004da1
jmp 0x10004f65
call fcn.10004b40
mov edi, eax
mov eax, dword [0x10028610]
mov eax, dword [eax + 0xd2b40]
xor eax, 0x11f1b0
mov ecx, dword [eax + 0x44c]
test edi, edi
je 0x10005078
movss xmm0, dword [edi + 0x4ec]
comiss xmm0, dword [0x10021f80]
jbe 0x10005078
cmp dword [0x100285fc], 0
je 0x10004fc7
mov eax, dword [eax + 0x3fc]
test eax, eax
je 0x10004fb7
cmp dword [edi + 0x3fc], eax
je 0x10005078
test ecx, ecx
je 0x10004fc7
cmp dword [edi + 0x44c], ecx
je 0x10005078
mov eax, dword [0x100266f8]
sub eax, 0
je 0x10004fe3
sub eax, 1
jne 0x10004fdd
mov eax, 4
jmp 0x10004fe8
mov eax, dword [esp + 0x14]
jmp 0x10004fe8
mov eax, 6
lea ecx, [esp + 0x60]
mov edx, edi
push ecx
push eax
lea ecx, [esp + 0x38]
call fcn.10003630
mov eax, dword [0x1002667c]
add esp, 8
push dword [eax + 0x50]
lea eax, [esp + 0x58]
push eax
lea eax, [esp + 0x68]
push eax
call fcn.10003260
test al, al
je 0x10005078
cmp dword [0x100266ec], 1
jne 0x10005078
cmp dword [0x10026700], 0
je 0x10005067
mov eax, dword [0x100285e8]
sub esp, 0xc
mov ecx, esp
sub esp, 0xc
movq xmm0, qword [eax + 0x24]
mov eax, dword [eax + 0x2c]
movq qword [ecx], xmm0
movq xmm0, qword [esp + 0x78]
mov dword [ecx + 8], eax
mov ecx, esp
mov eax, dword [esp + 0x80]
movq qword [ecx], xmm0
mov dword [ecx + 8], eax
call fcn.100033c0
add esp, 0x18
test al, al
je 0x10005078
movss xmm1, dword [esp + 0x58]
movss xmm0, dword [esp + 0x54]
call fcn.10004930
mov ecx, dword [esp + 0x6c]
pop edi
pop esi
pop ebx
xor ecx, esp
call fcn.100058bd
mov esp, ebp
pop ebp
ret