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

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff0
sub esp, 0x110
mov esi, esp
mov eax, dword [0x10588520]
xor eax, ebp
mov dword [esi + 0x108], eax
cmp dword [ebp + 0x10], 0x1000000
jae 0x100b1c8e
mov ecx, dword [esi + 0x108]
xor ecx, ebp
call fcn.101ac85a
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret 0x1c
mov edi, ecx
movss xmm0, dword [ebp + 0x20]
mov edx, dword [ebp + 0x1c]
xorps xmm1, xmm1
ucomiss xmm0, xmm1
setbe al
mov ecx, edx
and ecx, 0x1f0
cmp ecx, 0x100
sete cl
or cl, al
test edx, 0x200
mov byte [esi + 0xf], cl
je 0x100b1d1d
test cl, cl
jne 0x100b1d1d
sub esp, 0x10
mov eax, dword [ebp + 0x1c]
mov dword [esp + 0xc], eax
movss dword [esp + 8], xmm0
mov eax, dword [ebp + 0xc]
mov dword [esp + 4], eax
mov eax, dword [ebp + 8]
mov dword [esp], eax
mov ebx, edi
mov ecx, edi
call fcn.100afdf0
mov eax, dword [edi + 0x54]
mov dword [esi + 0x14], eax
lea ecx, [eax*8]
mov eax, ecx
call fcn.101acca0
mov eax, esp
and eax, 0xfffffff0
mov esp, eax
push ecx
push dword [edi + 0x5c]
mov dword [esi + 0x18], eax
push eax
call fcn.10368490
add esp, 0xc
mov dword [edi + 0x54], 0
jmp 0x100b1d4d
mov dword [esi + 0x18], 0
mov dword [esi + 0x14], 0
test dword [ebp + 0x1c], 0x200
jne 0x100b1d4d
mov ecx, edi
push 0x24
push 0x36
call fcn.100adfa0
mov dword [esi + 0x18], 0
mov dword [esi + 0x14], 0
xor ecx, ecx
mov ebx, 0xc
mov dword [esi + 8], edi
jmp 0x100b1d70
inc ecx
mov ebx, dword [esi + 0x2c]
add ebx, 0x10
cmp ecx, 3
je 0x100b1c77
mov dword [esi + 0x2c], ebx
mov dword [esi + 0x28], ebx
xor edx, edx
mov dword [esi + 0x10], ecx
jmp 0x100b1de7
mov eax, dword [ebp + 0x18]
movsd xmm2, qword [eax]
unpcklps xmm4, xmm0
addps xmm4, xmm2
movlps qword [esi + 0xe8], xmm4
unpcklps xmm5, xmm1
addps xmm5, xmm2
movlps qword [esi + 0xe0], xmm5
mov ecx, edi
mov ebx, edx
lea edx, [esi + 0xe0]
push dword [ebp + 0x10]
push dword [esi + 0x14]
push dword [esi + 0x18]
lea eax, [esi + 0xf0]
push eax
lea eax, [esi + 0xf8]
push eax
lea eax, [esi + 0xe8]
push eax
call fcn.100b2530
mov edx, ebx
mov edi, dword [esi + 8]
mov ecx, dword [esi + 0x10]
add esp, 0x18
inc edx
add dword [esi + 0x28], 0x30
cmp edx, 3
je 0x100b1d60
cmp ecx, 2
je 0x100b1e80
cmp ecx, 1
je 0x100b1e20
xorps xmm4, xmm4
xorps xmm5, xmm5
test ecx, ecx
jne 0x100b1e2e
mov eax, dword [ebp + 8]
movss xmm4, dword [eax]
movaps xmm5, xmm4
subss xmm5, dword [ebp + 0x14]
cmp edx, 2
jne 0x100b1e33
jmp 0x100b1e94
mov eax, dword [ebp + 8]
movss xmm5, dword [eax]
mov eax, dword [ebp + 0xc]
movss xmm4, dword [eax]
cmp edx, 2
je 0x100b1e94
cmp edx, 1
je 0x100b1e60
xorps xmm0, xmm0
xorps xmm1, xmm1
test edx, edx
jne 0x100b1ea4
mov eax, dword [ebp + 8]
movss xmm0, dword [eax + 4]
movaps xmm1, xmm0
subss xmm1, dword [ebp + 0x14]
jmp 0x100b1ea4
mov eax, dword [ebp + 8]
movss xmm1, dword [eax + 4]
mov eax, dword [ebp + 0xc]
movss xmm0, dword [eax + 4]
jmp 0x100b1ea4
mov eax, dword [ebp + 0xc]
movss xmm5, dword [eax]
movaps xmm4, xmm5
addss xmm4, dword [ebp + 0x14]
cmp edx, 2
jne 0x100b1e33
mov eax, dword [ebp + 0xc]
movss xmm1, dword [eax + 4]
movaps xmm0, xmm1
addss xmm0, dword [ebp + 0x14]
mov eax, dword [edi + 0x2c]
mov eax, dword [eax + 0x1f8]
mov ebx, dword [esi + 0x28]
movss xmm2, dword [eax + ebx - 0xc]
movss xmm7, dword [eax + ebx - 8]
movss xmm3, dword [eax + ebx - 4]
movss xmm6, dword [eax + ebx]
movss dword [esi + 0xf8], xmm2
movss dword [esi + 0xfc], xmm7
movss dword [esi + 0xf0], xmm3
movss dword [esi + 0xf4], xmm6
test dword [ebp + 0x1c], 0x200
jne 0x100b2010
mov edi, dword [esi + 0xf0]
mov eax, dword [esi + 0xf8]
mov dword [esi + 0x30], eax
mov ebx, edx
mov eax, dword [esi + 8]
mov edx, dword [eax + 0x28]
mov eax, dword [esi + 8]
mov eax, dword [eax + 0x38]
mov ecx, dword [ebp + 0x18]
movsd xmm2, qword [ecx]
mov word [eax], dx
lea eax, [edx + 1]
mov ecx, dword [esi + 8]
mov ecx, dword [ecx + 0x38]
mov word [ecx + 2], ax
lea eax, [edx + 2]
mov ecx, dword [esi + 8]
mov ecx, dword [ecx + 0x38]
mov word [ecx + 4], ax
mov ecx, dword [esi + 8]
mov ecx, dword [ecx + 0x38]
mov word [ecx + 6], dx
mov ecx, dword [esi + 8]
mov ecx, dword [ecx + 0x38]
mov word [ecx + 8], ax
add edx, 3
mov eax, dword [esi + 8]
mov eax, dword [eax + 0x38]
mov word [eax + 0xa], dx
mov edx, ebx
mov ebx, dword [esi + 8]
unpcklps xmm5, xmm1
addps xmm5, xmm2
mov eax, dword [ebx + 0x34]
movlps qword [eax], xmm5
mov eax, dword [ebx + 0x34]
movsd xmm1, qword [esi + 0xf8]
movsd qword [eax + 8], xmm1
mov eax, dword [ebx + 0x34]
mov ecx, dword [ebp + 0x10]
mov dword [eax + 0x10], ecx
mov eax, dword [ebx + 0x34]
movaps xmm1, xmm5
shufps xmm1, xmm5, 0x55
movss dword [eax + 0x18], xmm1
unpcklps xmm4, xmm0
addps xmm4, xmm2
movss dword [eax + 0x14], xmm4
mov eax, dword [ebx + 0x34]
mov dword [eax + 0x1c], edi
movss dword [eax + 0x20], xmm7
mov eax, dword [ebx + 0x34]
mov dword [eax + 0x24], ecx
mov eax, dword [ebx + 0x34]
movlps qword [eax + 0x28], xmm4
mov eax, dword [ebx + 0x34]
movsd xmm0, qword [esi + 0xf0]
movsd qword [eax + 0x30], xmm0
mov eax, dword [ebx + 0x34]
mov dword [eax + 0x38], ecx
mov eax, dword [ebx + 0x34]
movss dword [eax + 0x3c], xmm5
shufps xmm4, xmm4, 0x55
movss dword [eax + 0x40], xmm4
mov eax, dword [ebx + 0x34]
mov edi, dword [esi + 0x30]
mov dword [eax + 0x44], edi
movss dword [eax + 0x48], xmm6
mov eax, dword [ebx + 0x34]
mov dword [eax + 0x4c], ecx
mov ecx, dword [esi + 0x10]
add dword [ebx + 0x34], 0x50
add dword [ebx + 0x28], 4
mov edi, ebx
add dword [ebx + 0x38], 0xc
jmp 0x100b1dd9
cmp byte [esi + 0xf], 0
je 0x100b1d80
movss dword [esi + 0x1c], xmm3
movss dword [esi + 0x50], xmm2
mov eax, dword [ebp + 0x18]
movsd xmm2, qword [eax]
unpcklps xmm4, xmm0
addps xmm4, xmm2
unpcklps xmm5, xmm1
addps xmm5, xmm2
ucomiss xmm5, xmm4
jae 0x100b1dd9
movaps xmm1, xmm4
shufps xmm1, xmm4, 0x55
movaps xmm0, xmm5
shufps xmm0, xmm5, 0x55
movaps xmmword [esi + 0x60], xmm0
movaps xmmword [esi + 0x30], xmm1
ucomiss xmm0, xmm1
jae 0x100b1dd9
mov eax, dword [ebp + 0xc]
movsd xmm3, qword [eax]
mov eax, dword [ebp + 8]
movsd xmm0, qword [eax]
movaps xmm1, xmm4
movlhps xmm1, xmm0
movaps xmm2, xmm3
movlhps xmm2, xmm5
cmpnleps xmm1, xmm2
pslld xmm1, 0x1f
movmskps eax, xmm1
test eax, eax
je 0x100b1dd9
movaps xmm1, xmm5
cmpleps xmm1, xmm0
andps xmm0, xmm1
andnps xmm1, xmm5
orps xmm1, xmm0
movaps xmmword [esi + 0x80], xmm3
minps xmm3, xmm4
ucomiss xmm1, xmm3
movaps xmmword [esi + 0x40], xmm4
movaps xmmword [esi + 0x70], xmm5
movaps xmmword [esi + 0xa0], xmm6
movaps xmmword [esi + 0x90], xmm7
jae 0x100b2352
pshufd xmm0, xmm1, 0x55
movaps xmm2, xmm3
shufps xmm2, xmm3, 0x55
movaps xmmword [esi + 0xd0], xmm2
ucomiss xmm0, xmm2
jae 0x100b2352
mov dword [esi + 0x1c], edx
mov ebx, edi
mov ecx, edi
push 0xc
push 0x18
movaps xmmword [esi + 0xb0], xmm1
movaps xmmword [esi + 0x50], xmm0
movaps xmmword [esi + 0xc0], xmm3
call fcn.100adfa0
movaps xmm1, xmmword [esi + 0x40]
mov eax, dword [edi + 0x38]
mov dword [esi + 0x24], eax
mov eax, dword [edi + 0x28]
mov dword [esi + 0x20], eax
mov edx, dword [edi + 0x34]
movaps xmm4, xmmword [esi + 0x70]
movlps qword [edx], xmm4
mov ecx, dword [esi + 0xf8]
mov dword [edx + 8], ecx
movdqa xmm7, xmmword [esi + 0x90]
movd dword [edx + 0xc], xmm7
mov ebx, dword [ebp + 0x10]
mov dword [edx + 0x10], ebx
movss dword [edx + 0x14], xmm1
movaps xmm5, xmmword [esi + 0x60]
movss dword [edx + 0x18], xmm5
mov eax, dword [esi + 0xf0]
mov dword [edx + 0x1c], eax
movd dword [edx + 0x20], xmm7
mov dword [edx + 0x24], ebx
movlps qword [edx + 0x28], xmm1
mov dword [edx + 0x30], eax
movd xmm0, eax
movdqa xmm3, xmmword [esi + 0xa0]
movd dword [edx + 0x34], xmm3
mov dword [edx + 0x38], ebx
movss dword [edx + 0x3c], xmm4
movaps xmm2, xmmword [esi + 0x30]
movss dword [edx + 0x40], xmm2
mov dword [edx + 0x44], ecx
movd dword [edx + 0x48], xmm3
punpcklqdq xmm3, xmm0
shufps xmm3, xmm0, 0xe2
movd xmm0, ecx
mov dword [edx + 0x4c], ebx
punpcklqdq xmm7, xmm0
shufps xmm7, xmm0, 0xe2
movaps xmm0, xmm1
subps xmm0, xmm4
subps xmm3, xmm7
divps xmm3, xmm0
divps xmm7, xmm3
subps xmm7, xmm4
movaps xmm4, xmmword [esi + 0xb0]
movaps xmm0, xmm4
addps xmm0, xmm7
mulps xmm0, xmm3
movaps xmm1, xmm4
movlhps xmm1, xmm0
movups xmmword [edx + 0x50], xmm1
mov dword [edx + 0x60], ebx
movaps xmm6, xmmword [esi + 0xc0]
movss dword [edx + 0x64], xmm6
movaps xmm1, xmmword [esi + 0x50]
movss dword [edx + 0x68], xmm1
movaps xmm1, xmm0
shufps xmm1, xmm0, 0x55
movss dword [edx + 0x70], xmm1
mov dword [edx + 0x74], ebx
movlps qword [edx + 0x78], xmm6
movaps xmm1, xmm6
addps xmm1, xmm7
mulps xmm1, xmm3
movss dword [edx + 0x6c], xmm1
movlps qword [edx + 0x80], xmm1
mov dword [edx + 0x88], ebx
movss dword [edx + 0x8c], xmm4
movaps xmm2, xmmword [esi + 0xd0]
movss dword [edx + 0x90], xmm2
movss dword [edx + 0x94], xmm0
movaps xmm2, xmm1
shufps xmm2, xmm1, 0x55
movss dword [edx + 0x98], xmm2
mov dword [edx + 0x9c], ebx
movss dword [edx + 0xa0], xmm4
movss dword [edx + 0xa4], xmm5
shufps xmm7, xmm7, 0x55
movaps xmm2, xmm5
addss xmm2, xmm7
shufps xmm3, xmm3, 0x55
mulss xmm2, xmm3
movss dword [edx + 0xa8], xmm0
movss dword [edx + 0xac], xmm2
mov dword [edx + 0xb0], ebx
movss dword [edx + 0xb4], xmm6
movss dword [edx + 0xb8], xmm5
movss dword [edx + 0xbc], xmm1
movss dword [edx + 0xc0], xmm2
mov dword [edx + 0xc4], ebx
movss dword [edx + 0xc8], xmm6
movaps xmm5, xmmword [esi + 0x30]
movaps xmm2, xmm5
addss xmm2, xmm7
mulss xmm2, xmm3
movss dword [edx + 0xcc], xmm5
movss dword [edx + 0xd0], xmm1
movss dword [edx + 0xd4], xmm2
mov dword [edx + 0xd8], ebx
movss dword [edx + 0xdc], xmm4
movss dword [edx + 0xe0], xmm5
movss dword [edx + 0xe4], xmm0
movss dword [edx + 0xe8], xmm2
mov dword [edx + 0xec], ebx
mov eax, dword [esi + 8]
add dword [eax + 0x34], 0xf0
add dword [eax + 0x28], 0xc
ucomiss xmm4, dword [esi + 0x70]
movaps xmm1, xmmword [esi + 0x50]
jbe 0x100b244e
mov edx, dword [esi + 0x24]
mov ecx, dword [esi + 0x20]
mov word [edx], cx
lea eax, [ecx + 8]
mov word [edx + 2], ax
lea eax, [ecx + 0xb]
mov word [edx + 4], ax
mov word [edx + 6], cx
mov word [edx + 8], ax
lea eax, [ecx + 3]
mov word [edx + 0xa], ax
add edx, 0xc
movaps xmm0, xmmword [esi + 0x80]
jmp 0x100b245b
mov ecx, edi
push 4
push 6
mov ebx, edx
call fcn.100adfa0
mov eax, dword [esi + 8]
mov eax, dword [eax + 0x28]
mov ecx, dword [esi + 8]
mov ecx, dword [ecx + 0x38]
mov word [ecx], ax
lea ecx, [eax + 1]
mov edx, dword [esi + 8]
mov edx, dword [edx + 0x38]
mov word [edx + 2], cx
lea ecx, [eax + 2]
mov edx, dword [esi + 8]
mov edx, dword [edx + 0x38]
mov word [edx + 4], cx
mov edx, dword [esi + 8]
mov edx, dword [edx + 0x38]
mov word [edx + 6], ax
mov edx, dword [esi + 8]
mov edx, dword [edx + 0x38]
mov word [edx + 8], cx
mov edx, ebx
mov ebx, dword [esi + 8]
add eax, 3
mov ecx, dword [ebx + 0x38]
mov word [ecx + 0xa], ax
mov eax, dword [ebx + 0x34]
movaps xmm1, xmmword [esi + 0x70]
movlps qword [eax], xmm1
mov eax, dword [ebx + 0x34]
movsd xmm0, qword [esi + 0xf8]
movsd qword [eax + 8], xmm0
mov eax, dword [ebx + 0x34]
mov ecx, dword [ebp + 0x10]
mov dword [eax + 0x10], ecx
mov eax, dword [ebx + 0x34]
movaps xmm2, xmmword [esi + 0x40]
movss dword [eax + 0x14], xmm2
movaps xmm0, xmmword [esi + 0x60]
movss dword [eax + 0x18], xmm0
mov eax, dword [ebx + 0x34]
movss xmm0, dword [esi + 0x1c]
movss dword [eax + 0x1c], xmm0
movaps xmm0, xmmword [esi + 0x90]
movss dword [eax + 0x20], xmm0
mov eax, dword [ebx + 0x34]
mov dword [eax + 0x24], ecx
mov eax, dword [ebx + 0x34]
movlps qword [eax + 0x28], xmm2
mov eax, dword [ebx + 0x34]
movsd xmm0, qword [esi + 0xf0]
movsd qword [eax + 0x30], xmm0
mov eax, dword [ebx + 0x34]
mov dword [eax + 0x38], ecx
mov eax, dword [ebx + 0x34]
movss dword [eax + 0x3c], xmm1
movaps xmm0, xmmword [esi + 0x30]
movss dword [eax + 0x40], xmm0
mov eax, dword [ebx + 0x34]
movss xmm0, dword [esi + 0x50]
movss dword [eax + 0x44], xmm0
movaps xmm0, xmmword [esi + 0xa0]
movss dword [eax + 0x48], xmm0
jmp 0x100b1fe7
movaps xmm0, xmmword [esi + 0x80]
mov edx, dword [esi + 0x24]
mov ecx, dword [esi + 0x20]
movaps xmm2, xmmword [esi + 0x60]
ucomiss xmm1, xmm2
jbe 0x100b248e
lea ebx, [ecx + 8]
mov word [edx], bx
mov eax, ecx
add ecx, 9
mov word [edx + 2], cx
lea ecx, [eax + 5]
mov word [edx + 4], cx
mov word [edx + 6], bx
mov word [edx + 8], cx
mov ecx, eax
add eax, 4
mov word [edx + 0xa], ax
add edx, 0xc
movaps xmm1, xmmword [esi + 0x40]
ucomiss xmm1, xmm0
jbe 0x100b24bf
lea ebx, [ecx + 9]
mov word [edx], bx
mov eax, ecx
inc ecx
mov word [edx + 2], cx
lea ecx, [eax + 2]
mov word [edx + 4], cx
mov word [edx + 6], bx
mov word [edx + 8], cx
mov ecx, eax
add eax, 0xa
mov word [edx + 0xa], ax
add edx, 0xc
cmpltps xmm0, xmm1
pextrw eax, xmm0, 2
test al, 1
je 0x100b24f4
lea ebx, [ecx + 7]
mov word [edx], bx
mov eax, ecx
add ecx, 6
mov word [edx + 2], cx
lea ecx, [eax + 0xa]
mov word [edx + 4], cx
mov word [edx + 6], bx
mov word [edx + 8], cx
add eax, 0xb
mov word [edx + 0xa], ax
add edx, 0xc
mov eax, edx
mov ebx, edi
sub eax, dword [edi + 0x38]
sar eax, 1
mov ecx, 0x18
sub ecx, eax
mov dword [edi + 0x38], edx
mov eax, dword [edi]
mov edx, dword [edi + 8]
lea eax, [eax + eax*4]
sub dword [edx + eax*8 - 0xc], ecx
sub dword [edi + 0xc], ecx
mov ecx, dword [esi + 0x10]
mov edx, dword [esi + 0x1c]
jmp 0x100b1dd9