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

Disassembly:
mov ecx, dword [0x10125f20]
sub esp, 0x54
mov eax, dword [ecx + 0x3e48]
push ebx
push ebp
push esi
mov byte [eax + 0xac], 1
push edi
mov edi, dword [ecx + 0x3e48]
cmp byte [edi + 0xaf], 0
jne 0x1005f31a
mov ebx, dword [0x10125f20]
mov ecx, edi
push 0
push dword [esp + 0x6c]
call fcn.100114bd
push ecx
mov dword [esp], 0xbf800000
mov ebp, eax
push 1
push 0
push dword [esp + 0x74]
lea eax, [esp + 0x3c]
push eax
call fcn.1000d3bb
mov esi, dword [esp + 0x88]
add esp, 0x14
xorps xmm0, xmm0
movss xmm2, dword [esi + 4]
ucomiss xmm2, xmm0
lahf
test ah, 0x44
jp 0x1005ee41
movss xmm2, dword [esp + 0x30]
movss xmm1, dword [esi]
ucomiss xmm1, xmm0
lahf
test ah, 0x44
jp 0x1005ee54
movss xmm1, dword [esp + 0x2c]
movss dword [esp + 0x24], xmm1
lea eax, [esp + 0x24]
movss dword [esp + 0x28], xmm2
movss xmm0, dword [edi + 0xf0]
movss dword [esp + 0x18], xmm0
movss xmm0, dword [edi + 0xf4]
addss xmm0, dword [edi + 0x128]
push ecx
and dword [esp], 0
push eax
movss dword [esp + 0x24], xmm0
call fcn.10013aea
mov edx, dword [esp + 0x78]
movss xmm1, dword [esp + 0x20]
pop ecx
pop ecx
mov ecx, edx
shr ecx, 1
and cl, 1
mov dword [esp + 0x14], ecx
je 0x1005eebe
movss xmm6, dword [edi + 0x200]
movss xmm4, dword [edi + 0x208]
jmp 0x1005eec9
movss xmm4, dword [edi + 0x1f8]
movaps xmm6, xmm1
movss xmm0, dword [esi]
xorps xmm5, xmm5
ucomiss xmm0, xmm5
lahf
test ah, 0x44
jnp 0x1005eee9
test edx, 0x1000000
jne 0x1005eee9
movss xmm4, dword [esp + 0x24]
jmp 0x1005eef9
subss xmm4, xmm6
maxss xmm4, dword [esp + 0x2c]
movss dword [esp + 0x24], xmm4
movss xmm7, dword [esp + 0x1c]
addss xmm4, xmm6
movss dword [esp + 0x3c], xmm1
movaps xmm0, xmm7
movss dword [esp + 0x40], xmm7
movss dword [esp + 0x44], xmm6
movss dword [esp + 0x48], xmm7
movss dword [esp + 0x34], xmm4
movss dword [esp + 0x4c], xmm4
addss xmm0, dword [esp + 0x28]
movss dword [esp + 0x1c], xmm0
movss dword [esp + 0x38], xmm0
movss dword [esp + 0x50], xmm0
test edx, 0x4000000
jne 0x1005efbc
test cl, cl
jne 0x1005ef56
movss xmm5, dword [ebx + 0x37d4]
movss xmm3, dword [ebx + 0x37d8]
movaps xmm0, xmm5
mulss xmm0, dword [0x100c34b0]
cvttss2si eax, xmm0
movaps xmm0, xmm3
mulss xmm0, dword [0x100c34b0]
movd xmm2, eax
cvttss2si eax, xmm0
cvtdq2ps xmm2, xmm2
movd xmm0, eax
cvtdq2ps xmm0, xmm0
subss xmm5, xmm2
subss xmm3, xmm0
subss xmm6, xmm2
subss xmm7, xmm0
addss xmm5, xmm4
addss xmm3, dword [esp + 0x1c]
movss dword [esp + 0x44], xmm6
movss dword [esp + 0x48], xmm7
movss dword [esp + 0x4c], xmm5
movss dword [esp + 0x50], xmm3
movss xmm0, dword [edi + 0x210]
movss dword [esp + 0x1c], xmm0
movss xmm0, dword [edi + 0x218]
movss dword [esp + 0x20], xmm0
test cl, cl
je 0x1005eff4
mov eax, dword [edi + 0x200]
mov dword [edi + 0x210], eax
mov eax, dword [edi + 0x208]
mov dword [edi + 0x218], eax
mov eax, edx
xor esi, esi
shr eax, 3
and eax, 0xffffff01
mov dword [esp + 0x18], eax
movzx eax, al
shl eax, 2
push eax
push esi
lea eax, [esp + 0x4c]
push ebp
push eax
call fcn.10013c3b
add esp, 0x10
cmp byte [esp + 0x14], 0
je 0x1005f03d
movss xmm0, dword [esp + 0x1c]
movss dword [edi + 0x210], xmm0
movss xmm0, dword [esp + 0x20]
movss dword [edi + 0x218], xmm0
test al, al
je 0x1005f31a
mov eax, dword [ebx + 0x46a0]
shr eax, 2
and eax, 0xffffff01
cmp byte [esp + 0x18], 0
mov dword [esp + 0x20], eax
je 0x1005f06a
test al, al
jne 0x1005f06a
push 1
call fcn.1000c8b3
pop ecx
cmp byte [esp + 0x14], 0
je 0x1005f08d
cmp dword [edi + 0x190], esi
je 0x1005f080
call fcn.1005126d
jmp 0x1005f08d
cmp dword [ebx + 0x4a04], esi
je 0x1005f08d
call fcn.10051838
mov ecx, dword [esp + 0x70]
shr ecx, 3
and ecx, 0x20000
mov edx, ecx
or edx, 0x100000
test dword [esp + 0x70], 0x8000000
cmove edx, ecx
mov esi, edx
or esi, 0x10
test dword [esp + 0x70], 0x400000
cmove esi, edx
mov ecx, esi
or ecx, 0x80
test dword [esp + 0x70], 0x800000
cmove ecx, esi
mov esi, dword [esp + 0x70]
mov edx, ecx
or edx, 0x120
test byte [esp + 0x70], 4
cmove edx, ecx
mov eax, edx
or eax, 0x1000
and esi, 0x10
cmove eax, edx
push eax
lea eax, [esp + 0x17]
push eax
lea eax, [esp + 0x1a]
push eax
lea eax, [esp + 0x50]
push ebp
push eax
call fcn.100652ec
add esp, 0x14
mov byte [esp + 0x11], al
test dword [esp + 0x70], 0x200000
je 0x1005f140
mov edx, dword [ebx + 0x47e4]
test edx, edx
je 0x1005f140
mov ecx, dword [ebx + 0x47e8]
cmp ecx, dword [ebx + 0x469c]
jne 0x1005f140
cmp edx, ebp
jne 0x1005f140
mov al, 1
mov byte [esp + 0x11], al
mov byte [esp + 0x10], al
jmp 0x1005f170
mov cl, byte [esp + 0x6c]
mov byte [esp + 0x10], cl
test al, al
jne 0x1005f170
mov byte [esp + 0x10], cl
cmp byte [esp + 0x12], al
je 0x1005f20e
test dword [esp + 0x70], 0x2000000
mov byte [esp + 0x6c], cl
mov byte [esp + 0x10], cl
je 0x1005f20e
cmp byte [ebx + 0x4803], 0
jne 0x1005f203
cmp dword [ebx + 0x47c8], edi
jne 0x1005f203
mov ecx, dword [edi + 0x148]
cmp dword [ebx + 0x47fc], ecx
jne 0x1005f203
movss xmm1, dword [edi + 0x100]
lea eax, [esp + 0x54]
movss xmm0, dword [esp + 0x44]
movss xmm2, dword [edi + 0x104]
subss xmm0, xmm1
push eax
push dword [ebx + 0x469c]
push ecx
movss dword [esp + 0x60], xmm0
movss xmm0, dword [esp + 0x54]
subss xmm0, xmm2
push ebp
movss dword [esp + 0x68], xmm0
movss xmm0, dword [esp + 0x5c]
subss xmm0, xmm1
movss dword [esp + 0x6c], xmm0
movss xmm0, dword [esp + 0x60]
subss xmm0, xmm2
movss dword [esp + 0x70], xmm0
call fcn.10015c2f
mov al, byte [esp + 0x21]
add esp, 0x10
mov byte [ebx + 0x4802], 1
test al, al
je 0x1005f20e
push ebp
call fcn.100139d6
pop ecx
test esi, esi
je 0x1005f217
call fcn.1000cf42
mov al, byte [esp + 0x10]
cmp al, byte [esp + 0x6c]
je 0x1005f228
or dword [ebx + 0x46c4], 8
mov cl, byte [esp + 0x12]
test cl, cl
jne 0x1005f234
test al, al
je 0x1005f27e
cmp byte [esp + 0x13], 0
je 0x1005f244
test cl, cl
je 0x1005f244
push 0x1a
pop eax
jmp 0x1005f24e
xor eax, eax
test cl, cl
setne al
add eax, 0x18
push ecx
mov dword [esp], 0x3f800000
push eax
call fcn.1000b051
add esp, 4
and dword [esp], 0
push 0
push eax
push dword [esp + 0x5c]
push dword [esp + 0x5c]
push dword [esp + 0x5c]
push dword [esp + 0x5c]
call fcn.1001716c
add esp, 0x1c
push 0xa
lea eax, [esp + 0x48]
push ebp
push eax
call fcn.100173d9
add esp, 0xc
cmp byte [esp + 0x14], 0
je 0x1005f2b3
cmp dword [edi + 0x190], 0
je 0x1005f2a5
call fcn.100512b6
jmp 0x1005f2b3
cmp dword [ebx + 0x4a04], 0
je 0x1005f2b3
call fcn.1005188a
lea eax, [esp + 0x44]
push eax
lea eax, [ebx + 0x3828]
push eax
lea eax, [esp + 0x34]
push eax
push 0
push dword [esp + 0x78]
lea eax, [esp + 0x48]
push eax
lea eax, [esp + 0x54]
push eax
call fcn.10016c01
add esp, 0x1c
cmp byte [esp + 0x11], 0
je 0x1005f301
test dword [edi + 0xc], 0x4000000
je 0x1005f301
test byte [esp + 0x70], 1
jne 0x1005f301
test byte [ebx + 0x46c0], 0x20
jne 0x1005f301
call fcn.1000bc1e
cmp byte [esp + 0x18], 0
je 0x1005f314
cmp byte [esp + 0x20], 0
jne 0x1005f314
call fcn.1000c910
mov al, byte [esp + 0x11]
jmp 0x1005f31c
xor al, al
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x54
ret