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

Disassembly:
mov ecx, dword [0x10185028]
sub esp, 0x5c
mov eax, dword [ecx + 0x3e40]
push ebx
push ebp
push esi
mov byte [eax + 0xac], 1
mov esi, dword [ecx + 0x3e40]
push edi
cmp byte [esi + 0xaf], 0
jne 0x1006880c
mov ebx, dword [esp + 0x70]
mov ecx, esi
mov edi, dword [0x10185028]
push 0
push ebx
call fcn.10017eb0
push ecx
mov dword [esp], 0xbf800000
push 1
push 0
mov dword [esp + 0x24], eax
lea eax, [esp + 0x40]
push ebx
push eax
call fcn.100136f0
mov ebp, dword [esp + 0x90]
add esp, 0x14
xorps xmm0, xmm0
movss xmm2, dword [ebp + 4]
ucomiss xmm2, xmm0
lahf
test ah, 0x44
jp 0x1006831d
movss xmm2, dword [esp + 0x38]
movss xmm1, dword [ebp]
ucomiss xmm1, xmm0
lahf
test ah, 0x44
jp 0x10068331
movss xmm1, dword [esp + 0x34]
movss dword [esp + 0x2c], xmm1
lea eax, [esp + 0x2c]
movss dword [esp + 0x30], xmm2
movss xmm0, dword [esi + 0xf0]
movss dword [esp + 0x14], xmm0
movss xmm0, dword [esi + 0xf4]
addss xmm0, dword [esi + 0x128]
push ecx
mov dword [esp], 0
push eax
movss dword [esp + 0x28], xmm0
call fcn.1001ad60
mov ecx, dword [esp + 0x80]
add esp, 8
movss xmm1, dword [esp + 0x14]
mov ebx, ecx
shr ebx, 1
and bl, 1
mov dword [esp + 0x1c], ebx
je 0x100683a2
movss xmm6, dword [esi + 0x200]
movss xmm4, dword [esi + 0x208]
jmp 0x100683ad
movss xmm4, dword [esi + 0x1f8]
movaps xmm6, xmm1
movss xmm0, dword [ebp]
xorps xmm5, xmm5
ucomiss xmm0, xmm5
lahf
test ah, 0x44
jnp 0x100683ce
test ecx, 0x1000000
jne 0x100683ce
movss xmm4, dword [esp + 0x2c]
jmp 0x100683de
subss xmm4, xmm6
maxss xmm4, dword [esp + 0x34]
movss dword [esp + 0x2c], xmm4
movss xmm7, dword [esp + 0x20]
addss xmm4, xmm6
movss dword [esp + 0x44], xmm1
movaps xmm0, xmm7
movss dword [esp + 0x48], xmm7
movss dword [esp + 0x4c], xmm6
movss dword [esp + 0x50], xmm7
movss dword [esp + 0x3c], xmm4
movss dword [esp + 0x54], xmm4
addss xmm0, dword [esp + 0x30]
movss dword [esp + 0x20], xmm0
movss dword [esp + 0x40], xmm0
movss dword [esp + 0x58], xmm0
test ecx, 0x4000000
jne 0x100684a1
test bl, bl
jne 0x1006843b
movss xmm5, dword [edi + 0x37ec]
movss xmm3, dword [edi + 0x37f0]
movaps xmm0, xmm5
mulss xmm0, dword [0x100d5910]
cvttss2si eax, xmm0
movaps xmm0, xmm3
mulss xmm0, dword [0x100d5910]
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 + 0x20]
movss dword [esp + 0x4c], xmm6
movss dword [esp + 0x50], xmm7
movss dword [esp + 0x54], xmm5
movss dword [esp + 0x58], xmm3
movss xmm0, dword [esi + 0x210]
movss dword [esp + 0x20], xmm0
movss xmm0, dword [esi + 0x218]
movss dword [esp + 0x24], xmm0
test bl, bl
je 0x100684d9
mov eax, dword [esi + 0x200]
mov dword [esi + 0x210], eax
mov eax, dword [esi + 0x208]
mov dword [esi + 0x218], eax
mov eax, ecx
shr eax, 3
and eax, 0xffffff01
mov dword [esp + 0x14], eax
movzx eax, al
shl eax, 2
push eax
push 0
push dword [esp + 0x20]
lea eax, [esp + 0x58]
push eax
call fcn.1001aec0
add esp, 0x10
test bl, bl
je 0x10068521
movss xmm0, dword [esp + 0x20]
movss dword [esi + 0x210], xmm0
movss xmm0, dword [esp + 0x24]
movss dword [esi + 0x218], xmm0
test al, al
je 0x1006880c
mov ebx, dword [edi + 0x4698]
shr ebx, 2
and bl, 1
cmp byte [esp + 0x14], 0
je 0x1006854a
test bl, bl
jne 0x1006854a
push 1
call fcn.10012af0
add esp, 4
cmp byte [esp + 0x1c], 0
je 0x1006856f
cmp dword [esi + 0x190], 0
je 0x10068561
call fcn.1005a3e0
jmp 0x1006856f
cmp dword [edi + 0x49e4], 0
je 0x1006856f
call fcn.1005a970
mov ecx, dword [esp + 0x78]
mov ebp, dword [esp + 0x78]
mov eax, ebp
shr ecx, 3
and ecx, 0x20000
mov edx, ecx
or edx, 0x100000
test dword [esp + 0x78], 0x8000000
cmove edx, ecx
mov ecx, edx
or ecx, 0x10
test ebp, 0x400000
cmove ecx, edx
mov edx, ecx
or edx, 0x80
test ebp, 0x800000
cmove edx, ecx
mov ecx, edx
or ecx, 0x120
test al, 4
cmove ecx, edx
mov dl, byte [esp + 0x74]
and ebp, 0x10
mov byte [esp + 0x12], dl
mov eax, ecx
mov dword [esp + 0x24], ebp
or eax, 0x1000
test ebp, ebp
mov ebp, dword [esp + 0x18]
cmove eax, ecx
push eax
lea eax, [esp + 0x17]
push eax
lea eax, [esp + 0x19]
push eax
lea eax, [esp + 0x58]
push ebp
push eax
call fcn.1006ec70
mov ecx, dword [esp + 0x8c]
add esp, 0x14
mov byte [esp + 0x10], al
test ecx, 0x200000
je 0x10068638
mov edx, dword [edi + 0x47dc]
test edx, edx
je 0x10068638
mov ecx, dword [edi + 0x47e0]
cmp ecx, dword [edi + 0x4694]
jne 0x10068634
cmp edx, ebp
jne 0x10068634
mov al, 1
mov byte [esp + 0x10], al
mov byte [esp + 0x74], al
jmp 0x10068652
mov ecx, dword [esp + 0x78]
test al, al
jne 0x10068652
cmp byte [esp + 0x11], al
je 0x100686f2
test ecx, 0x2000000
je 0x100686f2
cmp byte [edi + 0x47fb], 0
jne 0x100686e5
cmp dword [edi + 0x47c0], esi
jne 0x100686e5
mov ecx, dword [esi + 0x148]
cmp dword [edi + 0x47f4], ecx
jne 0x100686e5
movss xmm1, dword [esi + 0x100]
lea eax, [esp + 0x5c]
movss xmm0, dword [esp + 0x4c]
movss xmm2, dword [esi + 0x104]
subss xmm0, xmm1
push eax
push dword [edi + 0x4694]
push ecx
movss dword [esp + 0x68], xmm0
movss xmm0, dword [esp + 0x5c]
subss xmm0, xmm2
push ebp
movss dword [esp + 0x70], xmm0
movss xmm0, dword [esp + 0x64]
subss xmm0, xmm1
movss dword [esp + 0x74], xmm0
movss xmm0, dword [esp + 0x68]
subss xmm0, xmm2
movss dword [esp + 0x78], xmm0
call fcn.1001ce20
mov al, byte [esp + 0x20]
add esp, 0x10
mov byte [edi + 0x47fa], 1
test al, al
je 0x100686f2
push ebp
call fcn.1001ac70
add esp, 4
cmp dword [esp + 0x24], 0
je 0x100686fe
call fcn.10013250
mov al, byte [esp + 0x74]
cmp al, byte [esp + 0x12]
je 0x1006870f
or dword [edi + 0x46bc], 8
mov cl, byte [esp + 0x11]
test cl, cl
jne 0x1006871b
test al, al
je 0x1006876a
cmp byte [esp + 0x13], 0
je 0x1006872d
test cl, cl
je 0x1006872d
mov eax, 0x1a
jmp 0x10068737
xor eax, eax
test cl, cl
setne al
add eax, 0x18
push ecx
mov dword [esp], 0x3f800000
push eax
call fcn.10011380
add esp, 4
mov dword [esp], 0
push 0
push eax
push dword [esp + 0x64]
push dword [esp + 0x64]
push dword [esp + 0x64]
push dword [esp + 0x64]
call fcn.1001e1b0
add esp, 0x1c
push 0xa
lea eax, [esp + 0x50]
push ebp
push eax
call fcn.1001e3e0
add esp, 0xc
cmp byte [esp + 0x1c], 0
je 0x1006879f
cmp dword [esi + 0x190], 0
je 0x10068791
call fcn.1005a430
jmp 0x1006879f
cmp dword [edi + 0x49e4], 0
je 0x1006879f
call fcn.1005a9c0
lea eax, [esp + 0x4c]
push eax
lea eax, [edi + 0x3840]
push eax
lea eax, [esp + 0x3c]
push eax
push 0
push dword [esp + 0x80]
lea eax, [esp + 0x50]
push eax
lea eax, [esp + 0x5c]
push eax
call fcn.1001dc70
add esp, 0x1c
cmp byte [esp + 0x10], 0
je 0x100687f0
test dword [esi + 0xc], 0x4000000
je 0x100687f0
test byte [esp + 0x78], 1
jne 0x100687f0
test byte [edi + 0x46b8], 0x20
jne 0x100687f0
call fcn.10011ff0
cmp byte [esp + 0x14], 0
je 0x10068800
test bl, bl
jne 0x10068800
call fcn.10012b50
mov al, byte [esp + 0x10]
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x5c
ret
pop edi
pop esi
pop ebp
xor al, al
pop ebx
add esp, 0x5c
ret