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

Disassembly:
sub esp, 0x68
mov eax, dword [0x100b7d54]
movaps xmm5, xmm3
push ebx
push ebp
push esi
push edi
mov edi, dword [esp + 0x84]
mov esi, edx
movss dword [esp + 0x1c], xmm5
mov ebp, ecx
mov dword [esp + 0x14], esi
mov ebx, edi
mov dword [esp + 0x18], ebp
mov dword [esp + 0x44], eax
mov dword [esp + 0x30], edi
cmp edi, 0xffffffff
jae 0x1001abc1
mov cl, byte [ebx]
test cl, cl
je 0x1001abbd
cmp cl, 0x23
jne 0x1001abb7
cmp byte [ebx + 1], cl
je 0x1001abbd
inc ebx
cmp ebx, 0xffffffff
jb 0x1001aba7
mov dword [esp + 0x30], ebx
mov ecx, dword [esp + 0x8c]
test ecx, ecx
je 0x1001abdb
mov eax, dword [ecx]
mov ecx, dword [ecx + 4]
mov dword [esp + 0x48], eax
mov dword [esp + 0x4c], ecx
jmp 0x1001ac52
mov ecx, dword [0x100b7d54]
movss xmm2, dword [ecx + 0xfb4]
cmp edi, ebx
jne 0x1001abfd
mov dword [esp + 0x48], 0
movss dword [esp + 0x4c], xmm2
jmp 0x1001ac52
movss xmm3, dword [0x100a7114]
lea eax, [esp + 0x3c]
push 0
push ebx
push edi
push ecx
mov ecx, dword [ecx + 0xfb0]
mov dword [esp], 0
push eax
call fcn.1003c390
movss xmm0, dword [esp + 0x3c]
addss xmm0, dword [0x100a6fc0]
movss xmm5, dword [esp + 0x1c]
cvttss2si eax, xmm0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [esp + 0x48], xmm0
movss xmm0, dword [esp + 0x40]
movss dword [esp + 0x4c], xmm0
movss xmm4, dword [esi]
lea eax, [esp + 0x48]
movss xmm2, dword [eax]
movss xmm1, dword [eax + 4]
mov dword [esp + 0x2c], eax
mov eax, dword [esp + 0x7c]
movss xmm3, dword [eax]
movaps xmm0, xmm3
subss xmm0, xmm4
comiss xmm2, xmm0
jbe 0x1001b202
mov eax, dword [ebp + 0x2c]
maxss xmm3, dword [esp + 0x80]
mov dword [esp + 0x24], 0
mov ebp, dword [eax + 8]
movss xmm1, dword [eax + 0xc]
lea eax, [esp + 0x24]
movaps xmm0, xmm1
movss dword [esp + 0x20], xmm1
push eax
divss xmm0, dword [ebp + 0x10]
push ebx
push edi
push ecx
lea eax, [esp + 0x68]
mov dword [esp], 0
push eax
mov ecx, ebp
movaps xmm2, xmm1
movss dword [esp + 0x50], xmm0
mulss xmm0, dword [ebp + 0x40]
subss xmm3, xmm0
movss dword [esp + 0x48], xmm0
subss xmm3, xmm4
maxss xmm3, dword [0x100a6fc8]
call fcn.1003c390
mov esi, dword [esp + 0x24]
movss xmm0, dword [eax]
movss dword [esp + 0x8c], xmm0
cmp esi, edi
jne 0x1001ad56
cmp esi, ebx
jae 0x1001ad54
push ebx
mov edx, edi
mov dword [esp + 0x90], 0
lea ecx, [esp + 0x90]
call fcn.10019a60
movss xmm3, dword [0x100a7114]
add esp, 4
movss xmm2, dword [esp + 0x20]
lea esi, [edi + eax]
push 0
push esi
push edi
push ecx
lea eax, [esp + 0x68]
mov dword [esp], 0
push eax
mov ecx, ebp
call fcn.1003c390
movss xmm0, dword [eax]
movss dword [esp + 0x8c], xmm0
cmp esi, edi
jbe 0x1001adb7
mov al, byte [esi - 1]
lea edi, [esi - 1]
cmp al, 0x20
je 0x1001ad66
cmp al, 9
jne 0x1001adb0
movss xmm3, dword [0x100a7114]
lea eax, [edi + 1]
movss xmm2, dword [esp + 0x20]
mov esi, edi
push 0
push eax
push esi
push ecx
lea eax, [esp + 0x68]
mov dword [esp], 0
push eax
mov ecx, ebp
call fcn.1003c390
movss xmm0, dword [esp + 0x8c]
subss xmm0, dword [eax]
movss dword [esp + 0x8c], xmm0
cmp edi, dword [esp + 0x84]
ja 0x1001ad58
mov edi, dword [esp + 0x84]
mov eax, dword [esp + 0x14]
movss xmm0, dword [eax]
movss xmm2, dword [eax + 4]
mov eax, dword [esp + 0x2c]
movss dword [esp + 0x24], xmm0
movss dword [esp + 0x28], xmm2
movss xmm1, dword [eax]
addss xmm1, xmm0
comiss xmm1, dword [esp + 0x1c]
jae 0x1001ae67
movss xmm0, dword [eax + 4]
mov eax, dword [esp + 0x7c]
addss xmm0, xmm2
comiss xmm0, dword [eax + 4]
jae 0x1001ae67
movss xmm7, dword [0x100a6fc8]
xor ecx, ecx
movaps xmm1, xmm7
call fcn.1001a410
mov edx, eax
test edx, 0xff000000
je 0x1001af38
test esi, esi
jne 0x1001ae2f
mov ecx, edi
lea esi, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1001ae23
sub ecx, esi
lea esi, [ecx + edi]
cmp edi, esi
je 0x1001af38
mov ecx, dword [esp + 0x18]
push 0
push ecx
mov dword [esp], 0
movups xmm0, xmmword [ecx + 0x60]
mov eax, dword [ecx + 0x2c]
push esi
push edi
lea esi, [esp + 0x78]
push esi
push edx
lea edx, [esp + 0x3c]
push edx
movups xmmword [esp + 0x84], xmm0
push ecx
jmp 0x1001af23
movss xmm7, dword [0x100a6fc8]
xor ecx, ecx
movaps xmm1, xmm7
call fcn.1001a410
mov edx, eax
mov dword [esp + 0x2c], edx
test edx, 0xff000000
je 0x1001af38
test esi, esi
jne 0x1001aea4
mov ecx, edi
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1001ae94
sub ecx, edx
mov edx, dword [esp + 0x2c]
lea esi, [ecx + edi]
cmp edi, esi
je 0x1001af38
mov ecx, dword [esp + 0x18]
push 1
movups xmm0, xmmword [ecx + 0x60]
mov eax, dword [ecx + 0x2c]
mov ecx, dword [esp + 0x18]
movups xmmword [esp + 0x5c], xmm0
maxss xmm0, dword [ecx]
movss dword [esp + 0x5c], xmm0
movss xmm0, dword [esp + 0x60]
maxss xmm0, dword [ecx + 4]
mov ecx, dword [esp + 0x80]
push ecx
mov dword [esp], 0
push esi
movss dword [esp + 0x68], xmm0
movss xmm0, dword [esp + 0x6c]
minss xmm0, dword [esp + 0x28]
push edi
movss dword [esp + 0x70], xmm0
movss xmm0, dword [esp + 0x74]
minss xmm0, dword [ecx + 4]
lea ecx, [esp + 0x68]
push ecx
push edx
lea ecx, [esp + 0x3c]
push ecx
push dword [esp + 0x34]
movss dword [esp + 0x84], xmm0
movss xmm2, dword [eax + 0xc]
mov ecx, dword [eax + 8]
call fcn.1003c560
movss xmm7, dword [0x100a6fc8]
mov ecx, dword [esp + 0x14]
movss xmm0, dword [esp + 0x8c]
movss xmm1, dword [esp + 0x80]
addss xmm0, dword [ecx]
cvttss2si esi, dword [ecx + 4]
cvttss2si eax, xmm0
movd xmm6, eax
cvtdq2ps xmm6, xmm6
movaps xmm0, xmm6
movss dword [esp + 0x1c], xmm6
addss xmm0, dword [esp + 0x34]
comiss xmm1, xmm0
jb 0x1001b36a
xor eax, eax
mov dword [esp + 0x24], 0
cmp ax, word [ebp + 0x3e]
jge 0x1001b36a
movss xmm4, dword [0x100a70c0]
mov ebx, 0xffff
movss xmm5, dword [0x100a6f8c]
xorps xmm1, xmm1
nop word [eax + eax]
mov eax, dword [0x100b7d54]
movzx edi, word [ebp + 0x3c]
movups xmm2, xmmword [eax + 0xc4c]
comiss xmm1, xmm2
movaps xmm3, xmm2
shufps xmm3, xmm2, 0xff
mulss xmm3, dword [eax + 0xb68]
movups xmmword [esp + 0x68], xmm2
jbe 0x1001afde
movaps xmm0, xmm1
jmp 0x1001afe5
movaps xmm0, xmm7
minss xmm0, xmm2
movss xmm2, dword [esp + 0x6c]
comiss xmm1, xmm2
mulss xmm0, xmm4
addss xmm0, xmm5
cvttss2si edx, xmm0
jbe 0x1001b001
movaps xmm0, xmm1
jmp 0x1001b008
movaps xmm0, xmm7
minss xmm0, xmm2
movss xmm2, dword [esp + 0x70]
mulss xmm0, xmm4
addss xmm0, xmm5
cvttss2si eax, xmm0
shl eax, 8
or edx, eax
comiss xmm1, xmm2
jbe 0x1001b029
movaps xmm0, xmm1
jmp 0x1001b030
movaps xmm0, xmm7
minss xmm0, xmm2
mulss xmm0, xmm4
addss xmm0, xmm5
cvttss2si eax, xmm0
shl eax, 0x10
or edx, eax
comiss xmm1, xmm3
jbe 0x1001b04b
movaps xmm0, xmm1
jmp 0x1001b052
movaps xmm0, xmm7
minss xmm0, xmm3
mulss xmm0, xmm4
addss xmm0, xmm5
cvttss2si ecx, xmm0
shl ecx, 0x18
or ecx, edx
mov edx, edi
mov dword [esp + 0x8c], ecx
cmp edx, dword [ebp + 0x14]
jb 0x1001b076
mov eax, dword [ebp + 0x2c]
jmp 0x1001b097
mov eax, dword [ebp + 0x1c]
movzx eax, word [eax + edx*2]
cmp ax, bx
jne 0x1001b087
mov eax, dword [ebp + 0x2c]
jmp 0x1001b097
lea ecx, [eax + eax*4]
mov eax, dword [ebp + 0x28]
lea eax, [eax + ecx*8]
mov ecx, dword [esp + 0x8c]
mov dword [esp + 0x7c], eax
test eax, eax
je 0x1001b1c3
mov eax, dword [eax]
test al, 2
je 0x1001b1c3
test al, 1
je 0x1001b0be
or ecx, 0xffffff
mov dword [esp + 0x8c], ecx
movss xmm0, dword [esp + 0x20]
comiss xmm0, xmm1
jb 0x1001b0d6
divss xmm0, dword [ebp + 0x10]
movss dword [esp + 0x2c], xmm0
jmp 0x1001b0dc
movss dword [esp + 0x2c], xmm7
mov ecx, dword [esp + 0x18]
movd xmm0, esi
cvtdq2ps xmm0, xmm0
push 4
push 6
cvttss2si edi, xmm6
cvttss2si ebx, xmm0
call fcn.10036b60
mov eax, dword [esp + 0x7c]
mov ecx, dword [esp + 0x18]
movss xmm0, dword [eax + 0x20]
movss xmm3, dword [esp + 0x2c]
movss dword [esp + 0x48], xmm0
movss xmm0, dword [eax + 0x24]
movss dword [esp + 0x4c], xmm0
movss xmm0, dword [eax + 0x18]
movss dword [esp + 0x34], xmm0
movss xmm0, dword [eax + 0x1c]
movss dword [esp + 0x38], xmm0
movaps xmm0, xmm3
mulss xmm0, dword [eax + 0x10]
push dword [esp + 0x8c]
movd xmm1, edi
cvtdq2ps xmm1, xmm1
movd xmm2, ebx
addss xmm0, xmm1
cvtdq2ps xmm2, xmm2
movss dword [esp + 0x54], xmm0
movaps xmm0, xmm3
mulss xmm0, dword [eax + 0x14]
addss xmm0, xmm2
movss dword [esp + 0x58], xmm0
movaps xmm0, xmm3
mulss xmm0, dword [eax + 8]
mulss xmm3, dword [eax + 0xc]
lea eax, [esp + 0x4c]
push eax
lea eax, [esp + 0x3c]
push eax
addss xmm0, xmm1
addss xmm3, xmm2
lea eax, [esp + 0x5c]
push eax
lea eax, [esp + 0x68]
push eax
movss dword [esp + 0x6c], xmm0
movss dword [esp + 0x70], xmm3
call fcn.10036c40
movss xmm4, dword [0x100a70c0]
xorps xmm1, xmm1
movss xmm5, dword [0x100a6f8c]
mov ebx, 0xffff
movss xmm6, dword [esp + 0x1c]
movss xmm0, dword [esp + 0x3c]
mulss xmm0, dword [ebp + 0x44]
mov ecx, dword [esp + 0x24]
movsx eax, word [ebp + 0x3e]
inc ecx
movss xmm7, dword [0x100a6fc8]
mov dword [esp + 0x24], ecx
addss xmm6, xmm0
movss dword [esp + 0x1c], xmm6
cmp ecx, eax
jl 0x1001afb0
mov ebx, dword [esp + 0x30]
mov ecx, dword [esp + 0x14]
jmp 0x1001b36a
movss xmm3, dword [esi + 4]
movaps xmm0, xmm4
movss xmm7, dword [eax + 4]
addss xmm2, xmm0
movss dword [esp + 0x48], xmm0
movss dword [esp + 0x4c], xmm3
comiss xmm2, xmm5
jae 0x1001b2ac
addss xmm1, xmm3
comiss xmm1, xmm7
jae 0x1001b2ac
movss xmm1, dword [0x100a6fc8]
xor ecx, ecx
call fcn.1001a410
mov edx, eax
mov ecx, ebx
test edx, 0xff000000
je 0x1001b368
test ebx, ebx
jne 0x1001b26b
mov ecx, edi
lea esi, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1001b260
sub ecx, esi
add ecx, edi
cmp edi, ecx
je 0x1001b1f9
mov eax, dword [ebp + 0x2c]
movups xmm0, xmmword [ebp + 0x60]
push 0
push ecx
movss xmm2, dword [eax + 0xc]
mov dword [esp], 0
push ecx
push edi
lea ecx, [esp + 0x78]
push ecx
push edx
lea ecx, [esp + 0x60]
push ecx
mov ecx, dword [eax + 8]
push ebp
movups xmmword [esp + 0x88], xmm0
call fcn.1003c560
mov ecx, dword [esp + 0x14]
jmp 0x1001b36a
movss xmm1, dword [0x100a6fc8]
xor ecx, ecx
call fcn.1001a410
mov edx, eax
mov ecx, ebx
test edx, 0xff000000
je 0x1001b368
test ebx, ebx
jne 0x1001b2e3
mov ecx, edi
lea esi, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1001b2d4
sub ecx, esi
mov esi, dword [esp + 0x14]
add ecx, edi
cmp edi, ecx
je 0x1001b1f9
movups xmm0, xmmword [ebp + 0x60]
mov eax, dword [ebp + 0x2c]
push 1
movups xmmword [esp + 0x5c], xmm0
push ecx
maxss xmm0, dword [esi]
movss xmm2, dword [eax + 0xc]
mov dword [esp], 0
push ecx
push edi
movss dword [esp + 0x68], xmm0
lea ecx, [esp + 0x68]
movss xmm0, dword [esp + 0x6c]
maxss xmm0, dword [esi + 4]
push ecx
push edx
lea ecx, [esp + 0x60]
push ecx
mov ecx, dword [eax + 8]
movss dword [esp + 0x78], xmm0
movss xmm0, dword [esp + 0x7c]
minss xmm0, dword [esp + 0x38]
push ebp
movss dword [esp + 0x80], xmm0
movss xmm0, dword [esp + 0x84]
minss xmm0, xmm7
movss dword [esp + 0x84], xmm0
call fcn.1003c560
mov ecx, dword [esp + 0x14]
jmp 0x1001b36a
mov ecx, esi
mov eax, dword [esp + 0x44]
cmp byte [eax + 0x30dc], 0
je 0x1001b387
mov edx, dword [esp + 0x84]
push ebx
call fcn.1002ce40
add esp, 4
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x68
ret