Function at 0x10149230
Capabilities:
Access peb ldr_data
Get ntdll base address

Disassembly:
push ebx
mov ebx, esp
sub esp, 8
and esp, 0xfffffff0
add esp, 4
push ebp
mov ebp, dword [ebx + 4]
mov dword [esp + 4], ebp
mov ebp, esp
push 0xfffffffffffffffe
push 0x11233b90
push 0x10425410
mov eax, dword fs:[0]
push eax
sub esp, 8
push ebx
sub esp, 0x108
mov eax, dword [0x11ad127c]
xor dword [ebp - 8], eax
xor eax, ebp
mov dword [ebp - 0x24], eax
push esi
push edi
push eax
lea eax, [ebp - 0x10]
mov dword fs:[0], eax
mov dword [ebp - 0x18], esp
mov eax, dword [ebx + 0xc]
mov ecx, dword [ebx + 0x10]
mov edi, dword [ebx + 0x14]
mov edx, dword [ebx + 0x18]
mov dword [ebp - 0xa8], edx
mov edx, dword [ebx + 0x2c]
mov dword [ebp - 0x9c], edx
mov edx, dword [ebx + 0x30]
mov dword [ebp - 0xa4], edx
wait
mov dword [ebp - 4], 0
push dword [ebx + 0x28]
push dword [ebx + 0x24]
mov esi, dword [ebx + 0x20]
push esi
push ecx
push eax
call fcn.1028bc20
mov eax, dword [ebp - 0xa8]
mov dword [eax], 0
lea ecx, [ebp - 0x80]
push ecx
push 0x1028b270
push eax
push edi
call dword [ebp - 0x9c]
add esp, 0x24
wait
mov dword [ebp - 4], 0xfffffffe
mov edi, dword [ebx + 8]
movzx eax, word [edi + 0x28ce]
mov dword [ebp - 0xb4], eax
movd xmm0, eax
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [0x1122d1e4]
movss dword [ebp - 0xa0], xmm0
movaps xmm3, xmm0
shufps xmm3, xmm3, 0
movups xmmword [ebp - 0x110], xmm3
movzx eax, word [edi + 0x28d2]
mov dword [ebp - 0xac], eax
movd xmm4, eax
cvtdq2ps xmm4, xmm4
mulss xmm4, dword [0x1122d5c4]
movss dword [ebp - 0x8c], xmm4
movaps xmm7, xmm4
shufps xmm7, xmm7, 0
movups xmmword [ebp - 0x120], xmm7
movzx eax, word [edi + 0x28cc]
mov dword [ebp - 0xb0], eax
movd xmm5, eax
cvtdq2ps xmm5, xmm5
addss xmm5, xmm0
movss dword [ebp - 0x98], xmm5
movaps xmm1, xmm5
shufps xmm1, xmm1, 0
movaps xmmword [ebp - 0xf0], xmm1
movzx eax, word [edi + 0x28d0]
mov dword [ebp - 0xb8], eax
movd xmm6, eax
cvtdq2ps xmm6, xmm6
subss xmm6, xmm4
movss dword [ebp - 0x84], xmm6
movaps xmm1, xmm6
shufps xmm1, xmm1, 0
movups xmmword [ebp - 0x100], xmm1
xor eax, eax
mov dword [ebp - 0x9c], eax
test esi, esi
je 0x1014966c
cmp esi, 8
jb 0x1014966c
mov edx, esi
and edx, 0xfffffff8
lea ecx, [ebp - 0x6c]
nop dword [eax + eax]
movss xmm2, dword [ecx + 0x20]
movss xmm0, dword [ecx + 0x10]
movss xmm1, dword [ecx]
movss xmm6, dword [ecx - 0x10]
unpcklps xmm6, xmm0
unpcklps xmm1, xmm2
unpcklps xmm6, xmm1
mulps xmm6, xmm3
addps xmm6, xmmword [ebp - 0xf0]
movaps xmm5, xmm6
shufps xmm5, xmm6, 0xe5
movaps xmm4, xmm5
unpckhps xmm4, xmm5
movss xmm2, dword [ecx + 0x24]
movss xmm0, dword [ecx + 0x14]
movss xmm1, dword [ecx + 4]
movss xmm3, dword [ecx - 0xc]
unpcklps xmm3, xmm0
unpcklps xmm1, xmm2
unpcklps xmm3, xmm1
mulps xmm3, xmm7
addps xmm3, xmmword [ebp - 0x100]
movups xmmword [ebp - 0xe0], xmm3
movaps xmm0, xmm3
shufps xmm0, xmm3, 0xe5
movups xmmword [ebp - 0xd0], xmm0
movaps xmm7, xmm0
unpckhps xmm7, xmm0
movaps xmm0, xmm4
unpckhps xmm0, xmm4
movaps xmm3, xmm0
movaps xmm0, xmm4
movaps xmm1, xmm5
movaps xmm2, xmm6
unpcklps xmm2, xmm0
unpcklps xmm1, xmm3
unpcklps xmm2, xmm1
addps xmm2, xmmword [0x1122e160]
mulps xmm2, xmmword [0x1122e390]
cvttps2dq xmm0, xmm2
cvtdq2ps xmm0, xmm0
mulps xmm0, xmmword [0x1122e170]
movss dword [ecx - 0x10], xmm0
shufps xmm0, xmm0, 0xe5
movss dword [ecx], xmm0
unpckhps xmm0, xmm0
movss dword [ecx + 0x10], xmm0
unpckhps xmm0, xmm0
movss dword [ecx + 0x20], xmm0
movaps xmm0, xmm7
unpckhps xmm0, xmm7
movaps xmm3, xmm0
movaps xmm0, xmm7
movss xmm1, dword [ebp - 0xd0]
movss xmm2, dword [ebp - 0xe0]
unpcklps xmm2, xmm0
unpcklps xmm1, xmm3
unpcklps xmm2, xmm1
addps xmm2, xmmword [0x1122e160]
mulps xmm2, xmmword [0x1122e390]
cvttps2dq xmm0, xmm2
cvtdq2ps xmm0, xmm0
mulps xmm0, xmmword [0x1122e170]
movss dword [ecx - 0xc], xmm0
shufps xmm0, xmm0, 0xe5
movss dword [ecx + 4], xmm0
unpckhps xmm0, xmm0
movss dword [ecx + 0x14], xmm0
unpckhps xmm0, xmm0
movss dword [ecx + 0x24], xmm0
movss xmm2, dword [ecx + 0x60]
movss xmm0, dword [ecx + 0x50]
movss xmm1, dword [ecx + 0x40]
movss xmm6, dword [ecx + 0x30]
unpcklps xmm6, xmm0
unpcklps xmm1, xmm2
unpcklps xmm6, xmm1
mulps xmm6, xmmword [ebp - 0x110]
addps xmm6, xmmword [ebp - 0xf0]
movaps xmm5, xmm6
shufps xmm5, xmm6, 0xe5
movaps xmm4, xmm5
unpckhps xmm4, xmm5
movss xmm2, dword [ecx + 0x64]
movss xmm0, dword [ecx + 0x54]
movss xmm1, dword [ecx + 0x44]
movss xmm3, dword [ecx + 0x34]
unpcklps xmm3, xmm0
unpcklps xmm1, xmm2
unpcklps xmm3, xmm1
mulps xmm3, xmmword [ebp - 0x120]
addps xmm3, xmmword [ebp - 0x100]
movups xmmword [ebp - 0xd0], xmm3
movaps xmm0, xmm3
shufps xmm0, xmm3, 0xe5
movups xmmword [ebp - 0xe0], xmm0
movaps xmm7, xmm0
unpckhps xmm7, xmm0
movaps xmm0, xmm4
unpckhps xmm0, xmm4
movaps xmm3, xmm0
movaps xmm0, xmm4
movaps xmm1, xmm5
movaps xmm2, xmm6
unpcklps xmm2, xmm0
unpcklps xmm1, xmm3
unpcklps xmm2, xmm1
addps xmm2, xmmword [0x1122e160]
mulps xmm2, xmmword [0x1122e390]
cvttps2dq xmm0, xmm2
cvtdq2ps xmm0, xmm0
mulps xmm0, xmmword [0x1122e170]
movss dword [ecx + 0x30], xmm0
shufps xmm0, xmm0, 0xe5
movss dword [ecx + 0x40], xmm0
unpckhps xmm0, xmm0
movss dword [ecx + 0x50], xmm0
unpckhps xmm0, xmm0
movss dword [ecx + 0x60], xmm0
movaps xmm0, xmm7
unpckhps xmm0, xmm7
movaps xmm3, xmm0
movaps xmm0, xmm7
movss xmm1, dword [ebp - 0xe0]
movss xmm2, dword [ebp - 0xd0]
unpcklps xmm2, xmm0
unpcklps xmm1, xmm3
unpcklps xmm2, xmm1
addps xmm2, xmmword [0x1122e160]
mulps xmm2, xmmword [0x1122e390]
cvttps2dq xmm0, xmm2
cvtdq2ps xmm0, xmm0
mulps xmm0, xmmword [0x1122e170]
movss dword [ecx + 0x34], xmm0
shufps xmm0, xmm0, 0xe5
movss dword [ecx + 0x44], xmm0
unpckhps xmm0, xmm0
movss dword [ecx + 0x54], xmm0
unpckhps xmm0, xmm0
movss dword [ecx + 0x64], xmm0
add eax, 8
mov dword [ebp - 0x9c], eax
sub ecx, 0xffffff80
cmp eax, edx
movups xmm3, xmmword [ebp - 0x110]
movups xmm7, xmmword [ebp - 0x120]
jb 0x101493d0
movss xmm0, dword [ebp - 0xa0]
movss xmm4, dword [ebp - 0x8c]
movss xmm5, dword [ebp - 0x98]
movss xmm6, dword [ebp - 0x84]
cmp eax, esi
jae 0x101496fb
shl eax, 4
lea ecx, [ebp - 0x78]
add ecx, eax
mov edx, esi
sub edx, dword [ebp - 0x9c]
movss xmm1, dword [0x1122d144]
movss xmm2, dword [0x1122d52c]
movss xmm3, dword [0x1122d154]
nop dword [eax]
mulss xmm0, dword [ecx - 4]
addss xmm0, xmm5
addss xmm0, xmm1
mulss xmm0, xmm2
cvttss2si eax, xmm0
xorps xmm0, xmm0
cvtsi2ss xmm0, eax
mulss xmm0, xmm3
movss dword [ecx - 4], xmm0
movaps xmm0, xmm4
mulss xmm0, dword [ecx]
addss xmm0, xmm6
addss xmm0, xmm1
mulss xmm0, xmm2
cvttss2si eax, xmm0
xorps xmm0, xmm0
cvtsi2ss xmm0, eax
mulss xmm0, xmm3
movss dword [ecx], xmm0
add ecx, 0x10
sub edx, 1
movss xmm0, dword [ebp - 0xa0]
jne 0x101496a0
mov eax, dword [edi + 0x288c]
mov edx, dword [eax + 0x20c]
test edx, edx
je 0x10149711
movzx eax, byte [edx + 0x5c]
jmp 0x10149713
xor eax, eax
lea ecx, [eax*8]
sub ecx, eax
mov eax, dword [ecx*8 + 0x10f2ce48]
mov eax, dword [eax*8 + 0x10f2cdd8]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x1122e340]
cvtpd2ps xmm0, xmm0
movss xmm1, dword [ecx*8 + 0x10f2ce38]
divss xmm1, xmm0
mov eax, dword [edx + 0xc]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x1122e340]
cvtpd2ps xmm0, xmm0
mulss xmm1, xmm0
cvttss2si eax, xmm1
mov dword [ebp - 0x94], eax
test edx, edx
je 0x10149782
movzx eax, byte [edx + 0x5c]
jmp 0x10149784
xor eax, eax
lea ecx, [eax*8]
sub ecx, eax
mov eax, dword [ecx*8 + 0x10f2ce48]
mov eax, dword [eax*8 + 0x10f2cddc]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x1122e340]
cvtpd2ps xmm0, xmm0
movss xmm1, dword [ecx*8 + 0x10f2ce3c]
divss xmm1, xmm0
mov eax, dword [edx + 0x10]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x1122e340]
cvtpd2ps xmm0, xmm0
mulss xmm1, xmm0
cvttss2si eax, xmm1
mov dword [ebp - 0x84], eax
xor ecx, ecx
mov eax, dword [ebx + 0x34]
cmp eax, 0xffffffff
je 0x101497fe
mov ecx, eax
shl ecx, 6
add ecx, dword [ebp - 0xa8]
xor dl, dl
mov byte [ebp - 0x85], dl
mov eax, dword [ebx + 0x44]
dec eax
cmp eax, 3
ja case.default.0x10149813
jmp dword [eax*4 + 0x1014a490]
movss xmm7, dword [ebp - 0x7c]
ucomiss xmm7, dword [ebp - 0x5c]
lahf
test ah, 0x44
jp case.default.0x10149813
movss xmm1, dword [ebp - 0x58]
movss xmm6, dword [ebp - 0x78]
comiss xmm1, xmm6
jb case.default.0x10149813
ucomiss xmm6, dword [ebp - 0x68]
lahf
test ah, 0x44
jp case.default.0x10149813
movss xmm0, dword [ebp - 0x6c]
comiss xmm0, xmm7
jb case.default.0x10149813
mulss xmm0, dword [0x1122d1e4]
mulss xmm1, dword [0x1122d1e4]
mov dl, 1
test ecx, ecx
je 0x10149fbc
movss xmm5, dword [ecx]
ucomiss xmm5, dword [ecx + 8]
lahf
test ah, 0x44
jp 0x10149fbc
movss xmm4, dword [ecx + 0x10]
movss xmm3, dword [ecx + 0x18]
comiss xmm3, xmm4
jb 0x10149fbc
ucomiss xmm4, dword [ecx + 0x14]
lahf
test ah, 0x44
jp 0x10149fbc
movss xmm2, dword [ecx + 4]
comiss xmm2, xmm5
jb 0x10149fbc
mulss xmm2, dword [0x1122d1e4]
mulss xmm3, dword [0x1122d1e4]
mov byte [ebp - 0x85], dl
jmp 0x10149fdc
movss xmm6, dword [ebp - 0x78]
movss xmm4, dword [ebp - 0x68]
ucomiss xmm6, xmm4
lahf
test ah, 0x44
jp case.default.0x10149813
movss xmm3, dword [ebp - 0x6c]
movss xmm7, dword [ebp - 0x7c]
comiss xmm3, xmm7
jb case.default.0x10149813
movss xmm2, dword [ebp - 0x5c]
ucomiss xmm7, xmm2
lahf
test ah, 0x44
jp case.default.0x10149813
movss xmm0, dword [ebp - 0x58]
comiss xmm0, xmm6
jb case.default.0x10149813
movss xmm1, dword [ebp - 0x48]
ucomiss xmm1, xmm0
lahf
test ah, 0x44
jp case.default.0x10149813
movss xmm0, dword [ebp - 0x4c]
comiss xmm0, xmm2
jb case.default.0x10149813
ucomiss xmm0, xmm3
lahf
test ah, 0x44
jp case.default.0x10149813
comiss xmm1, xmm4
jb case.default.0x10149813
mov dl, 1
test ecx, ecx
je 0x10149fbc
movss xmm4, dword [ecx + 0x10]
ucomiss xmm4, dword [ecx + 0x14]
lahf
test ah, 0x44
jp 0x10149fbc
movss xmm5, dword [ecx]
movss xmm2, dword [ecx + 4]
comiss xmm2, xmm5
jb 0x10149fbc
ucomiss xmm5, dword [ecx + 8]
lahf
test ah, 0x44
jp 0x10149fbc
movss xmm2, dword [ecx + 0x18]
comiss xmm2, xmm4
jb 0x10149fbc
movss xmm3, dword [ecx + 0x1c]
ucomiss xmm3, xmm2
lahf
test ah, 0x44
jp 0x10149fbc
movss xmm2, dword [ecx + 0xc]
comiss xmm2, dword [ecx + 8]
jb 0x10149fbc
ucomiss xmm2, dword [ecx + 4]
lahf
test ah, 0x44
jp 0x10149fbc
comiss xmm3, dword [ecx + 0x14]
jb 0x10149fbc
mov byte [ebp - 0x85], dl
jmp 0x10149fdc
movss xmm7, dword [ebp - 0x5c]
movss xmm5, dword [ebp - 0x4c]
ucomiss xmm7, xmm5
lahf
movss xmm4, dword [ebp - 0x48]
movss xmm6, dword [ebp - 0x58]
movss xmm3, dword [ebp - 0x78]
movss xmm2, dword [ebp - 0x7c]
movss xmm0, dword [ebp - 0x6c]
test ah, 0x44
jp 0x10149af0
comiss xmm4, xmm6
jb 0x10149af0
ucomiss xmm6, xmm3
lahf
test ah, 0x44
jp 0x10149af0
movss xmm1, dword [ebp - 0x68]
comiss xmm2, xmm7
jb 0x10149af5
ucomiss xmm0, xmm2
lahf
test ah, 0x44
jp 0x10149af5
comiss xmm1, xmm3
jb 0x10149af5
ucomiss xmm1, xmm4
lahf
test ah, 0x44
jp 0x10149af5
comiss xmm0, xmm5
jb 0x10149af5
mov dl, 1
test ecx, ecx
je 0x10149fbc
movss xmm5, dword [ecx + 8]
ucomiss xmm5, dword [ecx + 0xc]
lahf
test ah, 0x44
jp 0x10149fbc
movss xmm4, dword [ecx + 0x18]
movss xmm2, dword [ecx + 0x1c]
comiss xmm2, xmm4
jb 0x10149fbc
ucomiss xmm4, dword [ecx + 0x10]
lahf
test ah, 0x44
jp 0x10149fbc
movss xmm3, dword [ecx]
comiss xmm3, xmm5
jb 0x10149fbc
movss xmm2, dword [ecx + 4]
ucomiss xmm2, xmm3
lahf
test ah, 0x44
jp 0x10149fbc
movss xmm3, dword [ecx + 0x14]
comiss xmm3, dword [ecx + 0x10]
jb 0x10149fbc
ucomiss xmm3, dword [ecx + 0x1c]
lahf
test ah, 0x44
jp 0x10149fbc
comiss xmm2, dword [ecx + 0xc]
jb 0x10149fbc
mov byte [ebp - 0x85], dl
jmp 0x10149fdc
movss xmm1, dword [ebp - 0x68]
ucomiss xmm3, xmm1
lahf
test ah, 0x44
jp 0x10149be8
comiss xmm0, xmm2
jb 0x10149be8
ucomiss xmm2, xmm7
lahf
test ah, 0x44
jp 0x10149be8
comiss xmm6, xmm3
jb 0x10149be8
ucomiss xmm4, xmm6
lahf
test ah, 0x44
jp 0x10149be8
comiss xmm5, xmm7
jb 0x10149be8
ucomiss xmm5, xmm0
lahf
test ah, 0x44
jp 0x10149be8
comiss xmm4, xmm1
jb 0x10149be8
movaps xmm7, xmm2
movaps xmm6, xmm3
movaps xmm0, xmm5
movaps xmm1, xmm4
mov dl, 1
test ecx, ecx
je 0x10149fbc
movss xmm4, dword [ecx + 0x10]
ucomiss xmm4, dword [ecx + 0x14]
lahf
test ah, 0x44
jp 0x10149fbc
movss xmm5, dword [ecx]
movss xmm2, dword [ecx + 4]
comiss xmm2, xmm5
jb 0x10149fbc
ucomiss xmm5, dword [ecx + 8]
lahf
test ah, 0x44
jp 0x10149fbc
movss xmm2, dword [ecx + 0x18]
comiss xmm2, xmm4
jb 0x10149fbc
movss xmm3, dword [ecx + 0x1c]
ucomiss xmm3, xmm2
lahf
test ah, 0x44
jp 0x10149fbc
movss xmm2, dword [ecx + 0xc]
comiss xmm2, dword [ecx + 8]
jb 0x10149fbc
ucomiss xmm2, dword [ecx + 4]
lahf
test ah, 0x44
jp 0x10149fbc
comiss xmm3, dword [ecx + 0x14]
jb 0x10149fbc
mov byte [ebp - 0x85], dl
jmp 0x10149fdc
ucomiss xmm2, xmm0
lahf
test ah, 0x44
jp 0x10149cdb
comiss xmm1, xmm3
jb 0x10149cdb
ucomiss xmm3, xmm6
lahf
test ah, 0x44
jp 0x10149cdb
comiss xmm7, xmm2
jb 0x10149cdb
ucomiss xmm5, xmm7
lahf
test ah, 0x44
jp 0x10149cdb
comiss xmm4, xmm6
jb 0x10149cdb
ucomiss xmm4, xmm1
lahf
test ah, 0x44
jp 0x10149cdb
comiss xmm5, xmm0
jb 0x10149cdb
movaps xmm7, xmm2
movaps xmm6, xmm3
movaps xmm0, xmm5
movaps xmm1, xmm4
mov dl, 1
test ecx, ecx
je 0x10149fbc
movss xmm5, dword [ecx]
ucomiss xmm5, dword [ecx + 4]
lahf
test ah, 0x44
jp 0x10149fbc
movss xmm4, dword [ecx + 0x10]
movss xmm2, dword [ecx + 0x14]
comiss xmm2, xmm4
jb 0x10149fbc
ucomiss xmm4, dword [ecx + 0x18]
lahf
test ah, 0x44
jp 0x10149fbc
movss xmm3, dword [ecx + 8]
comiss xmm3, xmm5
jb 0x10149fbc
movss xmm2, dword [ecx + 0xc]
ucomiss xmm2, xmm3
lahf
test ah, 0x44
jp 0x10149fbc
movss xmm3, dword [ecx + 0x1c]
comiss xmm3, dword [ecx + 0x18]
jb 0x10149fbc
ucomiss xmm3, dword [ecx + 0x14]
lahf
test ah, 0x44
jp 0x10149fbc
comiss xmm2, dword [ecx + 4]
jb 0x10149fbc
mov byte [ebp - 0x85], dl
jmp 0x10149fdc
ucomiss xmm7, xmm2
lahf
test ah, 0x44
jp case.default.0x10149813
comiss xmm3, xmm6
jb case.default.0x10149813
ucomiss xmm6, xmm4
lahf
test ah, 0x44
jp case.default.0x10149813
comiss xmm5, xmm7
jb case.default.0x10149813
ucomiss xmm0, xmm5
lahf
test ah, 0x44
jp case.default.0x10149813
comiss xmm1, xmm4
jb case.default.0x10149813
ucomiss xmm1, xmm3
lahf
test ah, 0x44
jp case.default.0x10149813
comiss xmm0, xmm2
jb case.default.0x10149813
mov dl, 1
test ecx, ecx
je 0x10149fbc
movss xmm5, dword [ecx + 8]
ucomiss xmm5, dword [ecx]
lahf
test ah, 0x44
jp 0x10149fbc
movss xmm4, dword [ecx + 0x18]
movss xmm2, dword [ecx + 0x10]
comiss xmm2, xmm4
jb 0x10149fbc
ucomiss xmm4, dword [ecx + 0x1c]
lahf
test ah, 0x44
jp 0x10149fbc
movss xmm3, dword [ecx + 0xc]
comiss xmm3, xmm5
jb 0x10149fbc
movss xmm2, dword [ecx + 4]
ucomiss xmm2, xmm3
lahf
test ah, 0x44
jp 0x10149fbc
movss xmm3, dword [ecx + 0x14]
comiss xmm3, dword [ecx + 0x1c]
jb 0x10149fbc
ucomiss xmm3, dword [ecx + 0x10]
lahf
test ah, 0x44
jp 0x10149fbc
comiss xmm2, dword [ecx]
jb 0x10149fbc
mov byte [ebp - 0x85], dl
jmp 0x10149fdc
movss xmm7, dword [ebp - 0x7c]
movss xmm5, dword [ebp - 0x4c]
ucomiss xmm7, xmm5
lahf
movss xmm4, dword [ebp - 0x48]
movss xmm6, dword [ebp - 0x78]
movss xmm3, dword [ebp - 0x68]
movss xmm2, dword [ebp - 0x6c]
movss xmm0, dword [ebp - 0x5c]
test ah, 0x44
jp 0x10149ed0
comiss xmm4, xmm6
jb 0x10149ed0
ucomiss xmm6, xmm3
lahf
test ah, 0x44
jp 0x10149ed0
comiss xmm2, xmm7
jb 0x10149ed0
ucomiss xmm0, xmm2
lahf
test ah, 0x44
jp 0x10149ed0
movss xmm1, dword [ebp - 0x58]
comiss xmm1, xmm3
jb 0x10149ed0
ucomiss xmm1, xmm4
lahf
test ah, 0x44
jp 0x10149ed0
comiss xmm0, xmm5
jb 0x10149ed0
mov dl, 1
test ecx, ecx
je 0x10149fbc
movss xmm5, dword [ecx]
ucomiss xmm5, dword [ecx + 0xc]
lahf
test ah, 0x44
jp 0x10149fbc
movss xmm4, dword [ecx + 0x10]
movss xmm2, dword [ecx + 0x1c]
comiss xmm2, xmm4
jb 0x10149fbc
ucomiss xmm4, dword [ecx + 0x14]
lahf
test ah, 0x44
jp 0x10149fbc
movss xmm3, dword [ecx + 4]
comiss xmm3, xmm5
jb 0x10149fbc
movss xmm2, dword [ecx + 8]
ucomiss xmm2, xmm3
lahf
test ah, 0x44
jp 0x10149fbc
movss xmm3, dword [ecx + 0x18]
comiss xmm3, dword [ecx + 0x14]
jb 0x10149fbc
ucomiss xmm3, dword [ecx + 0x1c]
lahf
test ah, 0x44
jp 0x10149fbc
comiss xmm2, dword [ecx + 0xc]
jb 0x10149fbc
mov byte [ebp - 0x85], dl
jmp 0x10149fdc
ucomiss xmm2, xmm7
lahf
test ah, 0x44
jp case.default.0x10149813
comiss xmm6, xmm3
jb case.default.0x10149813
movss xmm1, dword [ebp - 0x58]
ucomiss xmm3, xmm1
lahf
test ah, 0x44
jp case.default.0x10149813
comiss xmm0, xmm2
jb case.default.0x10149813
ucomiss xmm5, xmm0
lahf
test ah, 0x44
jp case.default.0x10149813
comiss xmm4, xmm1
jb case.default.0x10149813
ucomiss xmm4, xmm6
lahf
test ah, 0x44
jp case.default.0x10149813
comiss xmm5, xmm7
jb case.default.0x10149813
movaps xmm7, xmm2
movaps xmm6, xmm3
movaps xmm0, xmm5
movaps xmm1, xmm4
mov dl, 1
test ecx, ecx
je 0x10149fbc
movss xmm5, dword [ecx + 4]
ucomiss xmm5, dword [ecx]
lahf
test ah, 0x44
jp 0x10149fbc
movss xmm4, dword [ecx + 0x14]
movss xmm2, dword [ecx + 0x10]
comiss xmm2, xmm4
jb 0x10149fbc
ucomiss xmm4, dword [ecx + 0x18]
lahf
test ah, 0x44
jp 0x10149fbc
movss xmm3, dword [ecx + 8]
comiss xmm3, xmm5
jb 0x10149fbc
movss xmm2, dword [ecx + 0xc]
ucomiss xmm2, xmm3
lahf
test ah, 0x44
jp 0x10149fbc
movss xmm3, dword [ecx + 0x1c]
comiss xmm3, dword [ecx + 0x18]
jb 0x10149fbc
ucomiss xmm3, dword [ecx + 0x10]
lahf
test ah, 0x44
jp 0x10149fbc
comiss xmm2, dword [ecx]
jb 0x10149fbc
mov byte [ebp - 0x85], dl
jmp 0x10149fdc
movss xmm1, dword [ebp - 0x8c]
movss xmm0, dword [ebp - 0x8c]
movss xmm6, dword [ebp - 0x8c]
movss xmm7, dword [ebp - 0x8c]
movss xmm5, dword [ebp - 0x84]
movss xmm4, dword [ebp - 0x84]
movss xmm2, dword [ebp - 0x84]
movss xmm3, dword [ebp - 0x84]
xor eax, eax
test dl, dl
je 0x1014a470
addss xmm7, dword [0x1122d1e4]
cvttss2si eax, xmm7
mov dword [ebp - 0x98], eax
movss xmm7, dword [0x1122d1e4]
addss xmm6, xmm7
cvttss2si eax, xmm6
mov dword [ebp - 0x8c], eax
addss xmm0, xmm7
cvttss2si eax, xmm0
inc eax
mov dword [ebp - 0xa0], eax
addss xmm1, xmm7
cvttss2si eax, xmm1
inc eax
mov dword [ebp - 0x9c], eax
cmp dword [edi + 0x1718], 0
je 0x1014a0c7
movzx eax, word [edi + 0x2c70]
movzx ecx, word [edi + 0x2c74]
movzx edx, word [edi + 0x2c72]
add edx, eax
movzx esi, word [edi + 0x2c76]
add esi, ecx
xor edi, edi
cmp edi, eax
sbb edi, edi
and edi, eax
xor eax, eax
cmp eax, ecx
sbb eax, eax
and eax, ecx
mov ecx, dword [ebp - 0x94]
cmp edx, ecx
cmovl ecx, edx
mov edx, dword [ebp - 0x84]
cmp esi, edx
cmovl edx, esi
cmp dword [ebp - 0x98], edi
cmovg edi, dword [ebp - 0x98]
mov dword [ebp - 0x98], edi
cvttss2si esi, xmm6
cmp esi, eax
cmovg eax, esi
mov dword [ebp - 0x8c], eax
cmp dword [ebp - 0xa0], ecx
cmovl ecx, dword [ebp - 0xa0]
mov dword [ebp - 0xa0], ecx
cmp dword [ebp - 0x9c], edx
cmovl edx, dword [ebp - 0x9c]
mov dword [ebp - 0x9c], edx
mov esi, dword [ebp - 0xb0]
mov eax, dword [ebp - 0xb4]
add eax, esi
mov edi, dword [ebp - 0xb8]
mov ecx, dword [ebp - 0xac]
add ecx, edi
xor edx, edx
cmp edx, esi
sbb edx, edx
and edx, esi
xor esi, esi
cmp esi, edi
sbb esi, esi
and esi, edi
mov edi, dword [ebp - 0x94]
cmp eax, edi
cmovl edi, eax
mov eax, dword [ebp - 0x84]
cmp ecx, eax
cmovl eax, ecx
cmp dword [ebp - 0x98], edx
cmovg edx, dword [ebp - 0x98]
mov ecx, dword [ebp - 0xa4]
mov dword [ecx], edx
mov ecx, dword [ebp - 0x8c]
cmp ecx, esi
cmovg esi, ecx
mov edx, dword [ebp - 0xa4]
mov dword [edx + 4], esi
mov esi, dword [ebp - 0xa0]
cmp esi, edi
cmovl edi, esi
mov dword [edx + 8], edi
mov edi, dword [ebp - 0x9c]
cmp edi, eax
cmovl eax, edi
mov dword [edx + 0xc], eax
mov eax, dword [ebx + 8]
mov eax, dword [eax + 0x288c]
mov eax, dword [eax + 0x80]
and eax, 0xff
mov dword [ebp - 0xac], eax
cmp dword [ebp - 0x98], 0
jg 0x1014a18c
test ecx, ecx
jg 0x1014a18c
cmp esi, dword [ebp - 0x94]
jl 0x1014a18c
cmp edi, dword [ebp - 0x84]
mov byte [ebp - 0x8e], 1
jge 0x1014a193
mov byte [ebp - 0x8e], 0
mov byte [ebp - 0x8d], 0
mov eax, dword [ebx + 0x38]
cmp eax, 0xffffffff
je 0x1014a245
mov byte [ebp - 0x8d], 1
xor edx, edx
cmp dword [ebx + 0x20], edx
jbe 0x1014a245
shl eax, 6
mov ecx, dword [ebp - 0xa8]
add ecx, 0x20
add ecx, eax
movss xmm1, dword [0x1122d240]
movss xmm0, dword [0x1122d244]
movss xmm6, dword [ecx - 0x20]
ucomiss xmm6, xmm1
lahf
test ah, 0x44
jnp 0x1014a1ed
ucomiss xmm6, xmm0
lahf
test ah, 0x44
jp 0x1014a23c
movss xmm6, dword [ecx - 0x10]
ucomiss xmm6, xmm1
lahf
test ah, 0x44
jnp 0x1014a204
ucomiss xmm6, xmm0
lahf
test ah, 0x44
jp 0x1014a23c
movss xmm6, dword [ecx]
ucomiss xmm6, xmm1
lahf
test ah, 0x44
jnp 0x1014a21a
ucomiss xmm6, xmm0
lahf
test ah, 0x44
jp 0x1014a23c
movss xmm6, dword [ecx + 0x10]
ucomiss xmm6, xmm1
lahf
test ah, 0x44
jnp 0x1014a231
ucomiss xmm6, xmm0
lahf
test ah, 0x44
jp 0x1014a23c
inc edx
add ecx, 4
cmp edx, dword [ebx + 0x20]
jb 0x1014a1d6
jmp 0x1014a24d
mov byte [ebp - 0x8d], 0
jmp 0x1014a24d
movss xmm1, dword [0x1122d240]
xor cl, cl
mov dword [ebp - 0xa4], ecx
xorps xmm6, xmm6
cmp byte [ebp - 0x85], cl
je 0x1014a2b9
ucomiss xmm5, xmm6
lahf
test ah, 0x44
jp 0x1014a2b9
ucomiss xmm4, xmm6
lahf
test ah, 0x44
jp 0x1014a2b9
movd xmm0, dword [ebp - 0x94]
cvtdq2ps xmm0, xmm0
mulss xmm0, xmm2
addss xmm0, xmm7
cvttss2si eax, xmm0
mov edx, 1
cmp eax, esi
jne 0x1014a2be
movd xmm0, dword [ebp - 0x84]
cvtdq2ps xmm0, xmm0
mulss xmm0, xmm3
addss xmm0, xmm7
cvttss2si eax, xmm0
movzx ecx, cl
cmp eax, edi
cmove ecx, edx
mov dword [ebp - 0xa4], ecx
jmp 0x1014a2be
mov edx, 1
mov ecx, dword [ebx + 0x40]
mov eax, ecx
sub eax, 2
je 0x1014a36c
sub eax, 1
jne 0x1014a37b
cmp byte [ebp - 0x8d], al
je 0x1014a37b
mov ecx, dword [0x11d0c5b8]
mov eax, dword fs:[0x2c]
mov eax, dword [eax + ecx*4]
mov eax, dword [eax + 0x10]
mov edx, dword [eax + 0x7a68]
mov eax, dword [ebx + 0x3c]
mov ecx, eax
and ecx, 0xff00ffff
shr eax, 0x10
movzx eax, al
cmp eax, dword [edx + 0x5c]
jne 0x1014a378
mov edx, dword [edx + 0x60]
cmp ecx, edx
jb 0x1014a378
lea eax, [edx + 0xe0]
cmp ecx, eax
jae 0x1014a378
sub ecx, edx
add ecx, 2
shl ecx, 4
add ecx, dword [ebx + 8]
movss xmm0, dword [ecx]
ucomiss xmm0, xmm6
lahf
test ah, 0x44
jp 0x1014a378
movss xmm0, dword [ecx + 4]
ucomiss xmm0, xmm6
lahf
test ah, 0x44
jp 0x1014a378
movss xmm0, dword [ecx + 8]
ucomiss xmm0, xmm6
lahf
test ah, 0x44
jp 0x1014a378
movss xmm0, dword [ecx + 0xc]
ucomiss xmm0, xmm1
lahf
test ah, 0x44
jp 0x1014a378
mov ecx, 1
jmp 0x1014a37b
cmp byte [ebp - 0x8d], 0
cmovne ecx, edx
jmp 0x1014a37b
mov ecx, dword [ebx + 0x40]
mov edx, dword [ebp - 0x8c]
cmp dword [ebp - 0x98], 1
jne 0x1014a3a5
cmp edx, 1
jne 0x1014a3a5
mov eax, dword [ebp - 0x94]
dec eax
cmp esi, eax
jne 0x1014a3a5
mov eax, dword [ebp - 0x84]
dec eax
cmp edi, eax
je 0x1014a3ca
mov eax, dword [ebp - 0x98]
cmp eax, 1
jne 0x1014a3da
cmp edx, eax
jne 0x1014a3da
mov eax, dword [ebp - 0x94]
inc eax
cmp esi, eax
jne 0x1014a3d4
mov eax, dword [ebp - 0x84]
inc eax
cmp edi, eax
jne 0x1014a3d4
mov eax, 2
jmp 0x1014a470
mov eax, dword [ebp - 0x98]
test eax, eax
jne 0x1014a46e
test edx, edx
jne 0x1014a3fb
cmp esi, dword [ebp - 0x94]
jle 0x1014a3fb
cmp edi, dword [ebp - 0x84]
jle 0x1014a3fb
lea eax, [edx + 1]
jmp 0x1014a470
test eax, eax
jne 0x1014a46e
test edx, edx
jne 0x1014a46e
cmp esi, dword [ebp - 0x94]
jne 0x1014a46e
mov eax, dword [ebp - 0x84]
cdq
sub eax, edx
sar eax, 1
cmp edi, eax
jl 0x1014a46e
cmp ecx, 1
jne 0x1014a436
cmp byte [ebp - 0xa4], 0
je 0x1014a436
movzx eax, byte [ebp - 0x8e]
xor eax, ecx
add eax, 3
jmp 0x1014a470
cmp ecx, 4
jne 0x1014a449
cmp dword [ebp - 0xac], 0
jne 0x1014a449
lea eax, [ecx + 1]
jmp 0x1014a470
xor eax, eax
cmp byte [ebp - 0x8e], al
sete al
inc eax
jmp 0x1014a470
xor eax, eax
mov ecx, dword [ebp - 0x10]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov ecx, dword [ebp - 0x24]
xor ecx, ebp
call fcn.1045066c
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret 0x40