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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x74
movss xmm0, dword [edx]
xor eax, eax
movss dword [esp + 0x20], xmm0
movss xmm0, dword [edx + 4]
push ebx
movss dword [esp + 0x28], xmm0
mov ebx, 0x2710
movss xmm0, dword [edx + 8]
push esi
movss dword [esp + 0x30], xmm0
movss xmm0, dword [0x100b11e0]
push edi
mov edi, dword [sym.imp.KERNEL32.dll_IsBadReadPtr]
mov dword [esp + 0x28], ecx
mov ecx, 0x7530
movss dword [esp + 0x20], xmm0
mov dword [esp + 0x14], eax
mov dword [esp + 0x18], 0x2710
nop dword [eax]
test bx, bx
jle 0x10011aee
mov ecx, 0xd78c98
call fcn.100173f0
mov esi, eax
test esi, esi
je 0x10011ae5
push 4
push esi
call edi
test eax, eax
jne 0x10011ae5
mov eax, dword [esp + 0x18]
mov ecx, esi
push 1
cwde
push eax
call dword [0x100b0e1c]
mov esi, eax
test esi, esi
je 0x10011ae1
lea ecx, [esi + 0x3e4]
call fcn.10017380
cmp al, 4
je 0x1001179f
cmp al, 5
je 0x1001179f
cmp al, 0xd
je 0x1001179f
xor bh, bh
jmp 0x100117a1
mov bh, 1
lea ecx, [esi + 0x6a0]
call fcn.10017380
lea ecx, [esi + 0x6d0]
mov bl, al
call fcn.10017380
cmp byte [0x100c19c2], 0
mov byte [esp + 0x12], al
mov eax, dword [0x100c19b4]
mov dword [esp + 0x1c], eax
je 0x10011815
mov ecx, 0xd78c9c
call fcn.100173f0
mov dword [esp + 0x24], eax
test eax, eax
je 0x10011811
push 4
push eax
call edi
test eax, eax
jne 0x10011811
mov eax, dword [esp + 0x24]
add eax, 0xb7c
push 4
push eax
mov dword [esp + 0x2c], eax
call edi
test eax, eax
jne 0x10011811
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x1c]
mov al, byte [eax]
mov byte [ecx + 0x3a], al
mov eax, ecx
jmp 0x10011815
mov eax, dword [esp + 0x1c]
mov al, byte [eax + 0x3a]
lea ecx, [esi + 0xaa4]
mov byte [esp + 0x13], al
call fcn.100173b0
movzx edx, ax
mov dword [esp + 0x1c], edx
test bh, bh
jne 0x10011ae1
movzx eax, bl
cmp eax, dword [esp + 0x28]
je 0x10011ae1
cmp bl, 3
je 0x10011ae1
cmp byte [esp + 0x12], 7
je 0x10011ae1
cmp byte [esp + 0x13], 0x15
jne 0x10011870
cmp bl, 1
je 0x10011ae1
cmp bl, 2
je 0x10011ae1
mov ebx, dword [0x100c19b4]
test ebx, ebx
je 0x10011a37
cmp byte [0x100c19c2], 0
je 0x100118cb
mov ecx, 0xd78c9c
call fcn.100173f0
mov dword [esp + 0x24], eax
test eax, eax
je 0x100118c7
push 4
push eax
call edi
test eax, eax
jne 0x100118c7
mov eax, dword [esp + 0x24]
add eax, 0x720
push 4
push eax
mov dword [esp + 0x2c], eax
call edi
mov edx, dword [esp + 0x1c]
test eax, eax
jne 0x100118cb
mov eax, dword [esp + 0x24]
mov al, byte [eax]
mov byte [ebx + 0x3b], al
jmp 0x100118cb
mov edx, dword [esp + 0x1c]
cmp byte [ebx + 0x3b], 0
je 0x10011a37
mov eax, dword [0x100c19b0]
test eax, eax
je 0x10011ae1
mov eax, dword [eax + 0x10]
test eax, eax
je 0x10011ae1
movzx ecx, word [eax + 0x38]
test cx, cx
jle 0x100118fb
cmp cx, dx
je 0x1001191b
movzx edx, word [eax + 0x3a]
mov ebx, dword [esp + 0x1c]
test dx, dx
jle 0x1001190d
cmp dx, bx
je 0x1001191b
movzx eax, word [eax + 0x3c]
test ax, ax
jle 0x1001196e
cmp ax, bx
jne 0x1001196e
push 4
push esi
call edi
test eax, eax
je 0x1001192c
xorps xmm1, xmm1
jmp 0x10011a0e
lea ecx, [esi + 0xd8]
call fcn.100174b0
lea ecx, [esi + 0xdc]
movss dword [esp + 0x38], xmm0
call fcn.100174b0
lea ecx, [esi + 0xe0]
movss dword [esp + 0x3c], xmm0
call fcn.100174b0
lea eax, [esp + 0x2c]
movss dword [esp + 0x40], xmm0
push eax
lea eax, [esp + 0x60]
lea ecx, [esp + 0x3c]
jmp 0x100119d7
test cx, cx
jg 0x10011ae1
test dx, dx
jg 0x10011ae1
test ax, ax
jg 0x10011ae1
push 4
push esi
call edi
test eax, eax
je 0x10011997
xorps xmm1, xmm1
jmp 0x10011a0e
lea ecx, [esi + 0xd8]
call fcn.100174b0
lea ecx, [esi + 0xdc]
movss dword [esp + 0x44], xmm0
call fcn.100174b0
lea ecx, [esi + 0xe0]
movss dword [esp + 0x48], xmm0
call fcn.100174b0
lea eax, [esp + 0x2c]
movss dword [esp + 0x4c], xmm0
push eax
lea eax, [esp + 0x6c]
lea ecx, [esp + 0x48]
push eax
call fcn.10012090
movss xmm1, dword [eax + 4]
movss xmm2, dword [eax]
movss xmm0, dword [eax + 8]
mulss xmm2, xmm2
mulss xmm1, xmm1
mulss xmm0, xmm0
addss xmm2, xmm1
addss xmm2, xmm0
cvtps2pd xmm0, xmm2
call fcn.10097b90
xorps xmm1, xmm1
cvtsd2ss xmm1, xmm0
movss xmm0, dword [esp + 0x20]
mov ecx, 0x7530
comiss xmm0, xmm1
mov ebx, dword [esp + 0x18]
jbe 0x10011aea
mov eax, esi
movss dword [esp + 0x20], xmm1
mov dword [esp + 0x14], eax
jmp 0x10011aee
push 4
push esi
call edi
test eax, eax
je 0x10011a45
xorps xmm1, xmm1
jmp 0x10011abc
lea ecx, [esi + 0xd8]
call fcn.100174b0
lea ecx, [esi + 0xdc]
movss dword [esp + 0x50], xmm0
call fcn.100174b0
lea ecx, [esi + 0xe0]
movss dword [esp + 0x54], xmm0
call fcn.100174b0
lea eax, [esp + 0x2c]
movss dword [esp + 0x58], xmm0
push eax
lea eax, [esp + 0x78]
push eax
lea ecx, [esp + 0x58]
call fcn.10012090
movss xmm1, dword [eax + 4]
movss xmm2, dword [eax]
movss xmm0, dword [eax + 8]
mulss xmm2, xmm2
mulss xmm1, xmm1
mulss xmm0, xmm0
addss xmm2, xmm1
addss xmm2, xmm0
cvtps2pd xmm0, xmm2
call fcn.10097b90
xorps xmm1, xmm1
cvtsd2ss xmm1, xmm0
movss xmm0, dword [esp + 0x20]
mov ecx, 0x7530
comiss xmm0, xmm1
mov ebx, dword [esp + 0x18]
jbe 0x10011aea
mov eax, esi
movaps xmm0, xmm1
mov dword [esp + 0x14], eax
movss dword [esp + 0x20], xmm0
jmp 0x10011aee
mov ebx, dword [esp + 0x18]
mov ecx, 0x7530
mov eax, dword [esp + 0x14]
inc ebx
mov dword [esp + 0x18], ebx
cmp bx, cx
jb 0x10011740
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret