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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x64
push ebx
push esi
push edi
mov edi, dword [0x100da7d8]
mov ebx, ecx
mov dword [esp + 0x14], edx
mov eax, dword [edi + 0x1928]
mov byte [eax + 0x78], 1
mov esi, dword [edi + 0x1928]
mov dword [esp + 0x1c], esi
cmp byte [esi + 0x7b], 0
jne 0x10007d24
mov ecx, dword [esi + 0x1c8]
xor edx, edx
mov eax, dword [esi + 0x1d0]
push dword [eax + ecx*4 - 4]
mov ecx, ebx
call fcn.1000f620
add esp, 4
mov dword [esp + 0x38], eax
cmp dword [edi + 0x1944], eax
jne 0x10007925
mov byte [edi + 0x1950], 1
cmp dword [edi + 0x1948], eax
jne 0x10007934
mov byte [edi + 0x1954], 1
mov ecx, ebx
cmp ebx, 0xffffffff
jae 0x10007956
nop dword [eax + eax]
mov dl, byte [ecx]
test dl, dl
je 0x10007956
cmp dl, 0x23
jne 0x10007950
cmp byte [ecx + 1], dl
je 0x10007956
inc ecx
cmp ecx, 0xffffffff
jb 0x10007940
movss xmm4, dword [edi + 0x1854]
mov eax, dword [edi + 0x1850]
mov dword [esp + 0x30], eax
movss dword [esp + 0x34], xmm4
cmp ebx, ecx
jne 0x1000797a
xorps xmm1, xmm1
xorps xmm7, xmm7
jmp 0x100079d5
movss xmm3, dword [0x100a0ac4]
movaps xmm2, xmm4
push ecx
push ecx
push ebx
push ecx
lea ecx, [esp + 0x38]
mov dword [esp], 0xbf800000
push ecx
mov ecx, eax
call fcn.10046a00
movss xmm0, dword [esp + 0x28]
xorps xmm1, xmm1
comiss xmm0, xmm1
jbe 0x100079bc
mov eax, dword [esp + 0x30]
movss xmm2, dword [esp + 0x34]
divss xmm2, dword [eax]
subss xmm0, xmm2
addss xmm0, dword [0x100a0968]
movss xmm4, dword [esp + 0x2c]
cvttss2si eax, xmm0
movd xmm7, eax
cvtdq2ps xmm7, xmm7
comiss xmm7, xmm1
movss xmm2, dword [edi + 0x1540]
movss xmm6, dword [esi + 0xc8]
movaps xmm0, xmm2
addss xmm0, xmm2
movss dword [esp + 0x30], xmm7
movss xmm2, dword [esi + 0xcc]
movaps xmm3, xmm2
movss dword [esp + 0x20], xmm6
addss xmm3, xmm4
movss dword [esp + 0x18], xmm2
movaps xmm5, xmm0
addss xmm5, dword [edi + 0x1854]
addss xmm3, xmm0
movss dword [esp + 0x28], xmm5
jbe 0x10007a32
movaps xmm1, xmm7
addss xmm1, dword [edi + 0x1554]
movaps xmm0, xmm6
movss dword [esp + 0x5c], xmm3
addss xmm0, xmm5
movss dword [esp + 0x50], xmm6
subss xmm3, xmm2
movss dword [esp + 0x54], xmm2
lea ecx, [esp + 0x40]
movss dword [esp + 0x34], xmm0
addss xmm0, xmm1
movss xmm1, dword [edi + 0x1540]
movss dword [esp + 0x44], xmm3
movss dword [esp + 0x58], xmm0
subss xmm0, xmm6
movss dword [esp + 0x40], xmm0
call fcn.100111b0
mov esi, dword [esp + 0x38]
lea ecx, [esp + 0x50]
push 0
mov edx, esi
call fcn.10011aa0
add esp, 4
test al, al
je 0x10007d24
push 0
lea eax, [esp + 0x16]
mov edx, esi
push eax
lea eax, [esp + 0x1b]
push eax
lea ecx, [esp + 0x5c]
call fcn.1001f180
mov esi, dword [0x100da7d8]
add esp, 0xc
mov byte [esp + 0x12], al
test al, al
je 0x10007ae6
mov eax, dword [esp + 0x14]
cmp byte [eax], 0
sete cl
mov byte [eax], cl
mov eax, dword [esi + 0x1928]
mov word [esi + 0x1939], 0x101
or dword [eax + 0x108], 4
movss xmm1, dword [esp + 0x18]
mov eax, dword [esp + 0x14]
movaps xmm0, xmm1
addss xmm0, dword [esp + 0x28]
movss xmm2, dword [esp + 0x20]
movss xmm3, dword [0x100a096c]
cmp byte [eax], 0
movss dword [esp + 0x44], xmm1
movss xmm1, dword [esp + 0x34]
movss dword [esp + 0x48], xmm1
xorps xmm1, xmm1
movss dword [esp + 0x40], xmm2
movss dword [esp + 0x4c], xmm0
je 0x10007b32
movaps xmm7, xmm3
jmp 0x10007b35
xorps xmm7, xmm7
mov eax, dword [edi + 0x1928]
xor edx, edx
mov ecx, dword [eax + 0x1c8]
mov eax, dword [eax + 0x1d0]
push dword [eax + ecx*4 - 4]
mov ecx, ebx
call fcn.1000f620
add esp, 4
cmp dword [esi + 0x1944], eax
jne 0x10007b66
mov byte [esi + 0x1950], 1
cmp dword [esi + 0x1948], eax
jne 0x10007b75
mov byte [esi + 0x1954], 1
movss xmm2, dword [edi + 0x1974]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x100a0d20]
cvtpd2ps xmm0, xmm0
ucomiss xmm2, xmm0
lahf
test ah, 0x44
jp 0x10007bc7
divss xmm2, dword [0x100a0914]
comiss xmm1, xmm2
jbe 0x10007bb0
xorps xmm7, xmm7
jmp 0x10007bb7
movaps xmm7, xmm3
minss xmm7, xmm2
mov eax, dword [esp + 0x14]
cmp byte [eax], 0
jne 0x10007bc7
subss xmm3, xmm7
movaps xmm7, xmm3
movaps xmm1, xmmword [0x100a0d10]
lea ecx, [esp + 0x50]
movaps xmm0, xmmword [0x100a0cb0]
shufps xmm7, xmm7, 0
mulps xmm1, xmm7
movups xmmword [esp + 0x60], xmm0
addps xmm1, xmmword [0x100a0b40]
movups xmmword [esp + 0x50], xmm1
call fcn.1000fc80
movaps xmm1, xmmword [0x100a0d30]
lea ecx, [esp + 0x50]
mulps xmm1, xmm7
mov esi, eax
addps xmm1, xmmword [0x100a0b40]
movups xmmword [esp + 0x50], xmm1
call fcn.1000fc80
push ecx
mov dword [esp], 0x40000000
lea ecx, [esp + 0x64]
push 0xf
sub esp, 8
mov dword [esp + 0x48], eax
mov dword [esp + 4], 0x40800000
call fcn.1000fc80
mov ecx, dword [esp + 0x2c]
add esp, 4
mov ecx, dword [ecx + 0x27c]
push eax
lea eax, [esp + 0x58]
push eax
lea eax, [esp + 0x54]
push eax
call fcn.10044210
push 0xf
push ecx
mov dword [esp], 0x40800000
lea eax, [esp + 0x50]
push esi
push eax
lea eax, [esp + 0x50]
push eax
mov eax, dword [esp + 0x30]
mov ecx, dword [eax + 0x27c]
call fcn.10044320
mov eax, dword [esp + 0x14]
cmp byte [eax], 0
je 0x10007ccd
movss xmm0, dword [esp + 0x20]
addss xmm0, dword [0x100a09e4]
movss xmm1, dword [esp + 0x28]
subss xmm1, dword [0x100a09f8]
mov ecx, dword [esp + 0x38]
movss dword [esp + 0x20], xmm0
movss xmm0, dword [esp + 0x18]
addss xmm0, dword [0x100a09e4]
movss dword [esp + 0x24], xmm0
push dword [esp + 0x24]
push dword [esp + 0x24]
call fcn.100076b0
add esp, 8
movss xmm0, dword [esp + 0x30]
xorps xmm1, xmm1
comiss xmm0, xmm1
jbe 0x10007d19
movss xmm0, dword [esp + 0x34]
xor edx, edx
addss xmm0, dword [edi + 0x1554]
mov ecx, ebx
movss dword [esp + 0x38], xmm0
movss xmm0, dword [esp + 0x18]
addss xmm0, dword [edi + 0x1540]
movss dword [esp + 0x3c], xmm0
push dword [esp + 0x3c]
push dword [esp + 0x3c]
push 1
call fcn.10017260
add esp, 0xc
mov al, byte [esp + 0x12]
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
pop edi
pop esi
xor al, al
pop ebx
mov esp, ebp
pop ebp
ret