Function at 0x101e2f20
Capabilities:
Access peb ldr_data
Check os version
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff0
sub esp, 0x2e0
mov esi, esp
mov dword [esi + 0x2c8], ebp
mov dword [esi + 0x2cc], esp
mov dword [esi + 0x2d8], 0xffffffff
lea eax, [esi + 0x2d0]
mov dword [esi + 0x2d4], 0x10217ab0
mov edx, dword fs:[0]
mov dword [esi + 0x2d0], edx
mov dword fs:[0], eax
mov byte [ecx + 0x38], 1
mov dword [esi + 0x28], 0
mov dword [esi + 0x2c], 0
mov dword [esi + 0x30], 0
mov dword [esi + 0x3c], 0
mov dword [esi + 0x40], 0
mov dword [esi + 0x44], 0
mov dword [esi + 0xc], 0
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 0
xorps xmm0, xmm0
movaps xmmword [esi + 0xe0], xmm0
movaps xmmword [esi + 0xd0], xmm0
mov dword [esi + 0xf0], 0
movaps xmmword [esi + 0x70], xmm0
movaps xmmword [esi + 0x60], xmm0
mov dword [esi + 0x80], 0
mov edi, dword [0x1042ba24]
test edi, edi
je 0x101e303a
mov dword [esi + 4], ecx
mov ebx, dword [ecx]
mov ecx, dword [0x1042ba74]
cmp ebx, edi
je 0x101e3043
test ecx, ecx
jne 0x101e3012
mov ecx, dword [0x1042ba28]
mov eax, dword [ecx]
push 0xeff13bb8
push 0xd03da328
call dword [eax]
mov ecx, eax
mov dword [0x1042ba74], eax
add ecx, ebx
call fcn.10088750
test eax, eax
je 0x101e310f
mov edx, dword [eax]
mov dword [esi + 0x34], eax
mov ecx, eax
call dword [edx + 0x734]
test eax, eax
mov ebx, dword [esi + 4]
jne 0x101e3089
jmp 0x101e3e88
mov byte [ecx + 0x3a], 0
jmp 0x101e3e8c
test ecx, ecx
jne 0x101e3062
mov ecx, dword [0x1042ba28]
mov eax, dword [ecx]
push 0xeff13bb8
push 0xd03da328
call dword [eax]
mov ecx, eax
mov dword [0x1042ba74], eax
add ecx, edi
call fcn.10088750
test eax, eax
mov ebx, dword [esi + 4]
je 0x101e3e88
mov edx, dword [eax]
mov dword [esi + 0x34], eax
mov ecx, eax
call dword [edx + 0x734]
test eax, eax
je 0x101e3e88
movss xmm0, dword [ebx + 0x14]
movss dword [esi + 0x28], xmm0
movsd xmm1, qword [ebx + 0x18]
movss dword [esi + 0x2c], xmm1
movaps xmm2, xmm1
shufps xmm2, xmm1, 0x55
movss dword [esi + 0x30], xmm2
movsd xmm3, qword [ebx + 0xc]
subps xmm3, xmm1
movss xmm4, dword [ebx + 8]
subss xmm4, xmm0
movaps xmm0, xmm4
mulss xmm0, xmm4
movaps xmm1, xmm3
mulps xmm1, xmm3
movaps xmm2, xmm1
shufps xmm2, xmm1, 0x55
addss xmm2, xmm1
addss xmm2, xmm0
xorps xmm0, xmm0
cvtss2sd xmm0, xmm2
sqrtsd xmm0, xmm0
xorps xmm1, xmm1
cvtsd2ss xmm1, xmm0
mov ecx, dword [eax + 0xf0]
xorps xmm0, xmm0
ucomiss xmm1, xmm0
je 0x101e311b
movss xmm2, dword [0x103564b8]
divss xmm2, xmm1
mulss xmm4, xmm2
shufps xmm2, xmm2, 0
mulps xmm3, xmm2
jmp 0x101e3121
mov eax, dword [esi + 4]
mov byte [eax + 0x3a], 0
jmp 0x101e3e8c
xorps xmm3, xmm3
xorps xmm4, xmm4
movaps xmm2, xmmword [0x10358c20]
mulps xmm2, xmm3
movss xmm1, dword [0x10358874]
mulss xmm1, xmm4
movaps xmmword [esi + 0x240], xmm1
mulss xmm1, xmm1
movaps xmmword [esi + 0x250], xmm2
mulps xmm2, xmm2
addss xmm1, xmm2
shufps xmm2, xmm2, 0x55
addss xmm2, xmm1
ucomiss xmm2, xmm0
setne byte [esi + 0x1b]
test ecx, ecx
jle 0x101e3e88
movss xmm1, dword [eax + 0x100]
movss xmm2, dword [0x10358c30]
movss dword [esi + 0x4c], xmm1
divss xmm2, xmm1
movaps xmm1, xmm3
shufps xmm1, xmm3, 0x55
movss xmm5, dword [0x10357334]
movaps xmmword [esi + 0x1e0], xmm1
mulss xmm1, xmm5
movaps xmmword [esi + 0x270], xmm1
movaps xmm1, xmm3
mulss xmm1, xmm5
movaps xmmword [esi + 0x260], xmm1
mulss xmm5, xmm4
movss dword [esi + 0xb8], xmm5
movaps xmm1, xmmword [esi + 0x250]
movaps xmm5, xmm1
shufps xmm5, xmm1, 0x55
maxss xmm2, xmm0
movaps xmm0, xmmword [0x10357340]
movaps xmmword [esi + 0x2b0], xmm5
xorps xmm5, xmm0
movaps xmmword [esi + 0x290], xmm5
xorps xmm1, xmm0
movaps xmmword [esi + 0x280], xmm1
xorps xmm0, xmmword [esi + 0x240]
movaps xmmword [esi + 0x2a0], xmm0
mulss xmm2, dword [0x10358aa4]
movss dword [esi + 0xc0], xmm2
mov dword [esi + 8], 4
xorps xmm5, xmm5
cvtsi2ss xmm5, ecx
xorps xmm0, xmm0
movaps xmmword [esi + 0x50], xmm0
mov dword [esi + 0x24], eax
movaps xmmword [esi + 0x1b0], xmm3
movss dword [esi + 0x20], xmm4
movaps xmm0, xmm5
mulss xmm0, dword [0x10358874]
ucomiss xmm0, dword [ebx + 0x24]
jb 0x101e3e88
ucomiss xmm0, dword [ebx + 0x20]
jb 0x101e3e88
movss dword [esi + 0x1c], xmm5
movss xmm2, dword [eax + 0x10c]
subss xmm2, dword [esi + 0x50]
movaps xmm0, xmm2
mulss xmm0, dword [esi + 0x1e0]
movaps xmm1, xmm2
mulss xmm1, xmm3
movss dword [esi + 0x38], xmm2
mulss xmm2, xmm4
addss xmm0, dword [esi + 0x30]
addss xmm1, dword [esi + 0x2c]
addss xmm2, dword [esi + 0x28]
movss dword [esi + 0x3c], xmm2
movss dword [esi + 0x40], xmm1
movss dword [esi + 0x44], xmm0
mov ecx, dword [0x104106f8]
lea eax, [esi + 0xd0]
push eax
push 0
push dword [0x1042ba24]
push 0x4600400b
lea eax, [esi + 0x3c]
push eax
lea eax, [esi + 0x28]
push eax
call fcn.102bdfd0
movss xmm1, dword [esi + 0xfc]
movss xmm0, dword [0x103564b8]
ucomiss xmm0, xmm1
je 0x101e3e88
mov dword [esi + 0x1cc], 0x10357698
mov eax, dword [ebx]
mov dword [esi + 0x1d0], eax
cmp dword [ebx + 4], 0
je 0x101e3361
movss xmm0, dword [esi + 0x44]
addss xmm0, dword [esi + 0x270]
movss xmm1, dword [esi + 0x40]
addss xmm1, dword [esi + 0x260]
movss xmm2, dword [esi + 0x3c]
addss xmm2, dword [esi + 0xb8]
movss dword [esi + 0x1f0], xmm2
movss dword [esi + 0x1f4], xmm1
movss dword [esi + 0x1f8], xmm0
xorps xmm0, xmm0
lea ecx, [esi + 0x28]
lea edx, [esi + 0x1f0]
lea eax, [esi + 0xd0]
push eax
lea eax, [esi + 0x1cc]
push eax
call fcn.102147a0
add esp, 8
movss xmm1, dword [esi + 0xfc]
mov edi, dword [ebx + 4]
jmp 0x101e3363
xor edi, edi
mulss xmm1, dword [esi + 0x38]
addss xmm1, dword [esi + 0x50]
movss dword [esi + 0x50], xmm1
movaps xmm0, xmm1
mulss xmm0, dword [0x10357514]
mov eax, dword [esi + 0x24]
movss xmm1, dword [eax + 0x110]
cvtss2sd xmm1, xmm1
cvtss2sd xmm0, xmm0
sub esp, 0x10
movsd qword [esp], xmm1
movsd qword [esp + 8], xmm0
call sub.api_ms_win_crt_math_l1_1_0.dll_pow
add esp, 0x10
fstp dword [esi + 0xcc]
movss xmm0, dword [esi + 0x1c]
mulss xmm0, dword [esi + 0xcc]
test edi, edi
movss dword [esi + 0x1c], xmm0
je 0x101e33e4
mov eax, dword [esi + 0x11c]
test eax, eax
je 0x101e343c
cmp eax, edi
jne 0x101e343c
mov ebx, dword [esi + 0x114]
test ebx, ebx
je 0x101e343c
cmp ebx, 0xa
je 0x101e343c
jmp 0x101e3eb6
cmp dword [esi + 8], 4
setne byte [ebx + 0x39]
mov edi, dword [esi + 0x11c]
test edi, edi
je 0x101e342f
lea ebx, [edi + 8]
mov eax, dword [edi + 8]
mov ecx, ebx
call dword [eax + 0x28]
test eax, eax
je 0x101e342f
mov eax, dword [ebx]
mov ecx, ebx
call dword [eax + 0x28]
test eax, eax
jle 0x101e342f
mov eax, dword [ebx]
mov ecx, ebx
call dword [eax + 0x28]
cmp eax, 0x40
jg 0x101e342f
mov ebx, dword [esi + 0x114]
test ebx, ebx
je 0x101e342f
cmp ebx, 0xa
jne 0x101e3f09
mov eax, dword [esi + 4]
movss xmm0, dword [esi + 0x1c]
movss dword [eax + 0x30], xmm0
mov edi, dword [esi + 4]
cmp byte [edi + 0x28], 0
je 0x101e3eb0
mov ecx, dword [0x10410730]
movsx eax, word [esi + 0x110]
mov edx, dword [ecx]
push eax
call dword [edx + 0x14]
movss xmm0, dword [esi + 0x50]
ucomiss xmm0, dword [0x10358c34]
xorps xmm1, xmm1
jbe 0x101e347b
movss xmm0, dword [esi + 0x4c]
ucomiss xmm0, xmm1
jne 0x101e3eb0
movss xmm0, dword [0x103577e4]
ucomiss xmm0, dword [eax + 0x58]
ja 0x101e3eb0
mov bl, byte [esi + 0x112]
mov ecx, dword [esi + 0x100]
mov dword [esi + 0x48], ecx
movzx ecx, word [eax + 0x60]
mov edx, dword [esi + 8]
add edx, 0xffffffff
jb 0x101e34b0
test bl, bl
jns 0x101e3ea0
mov byte [esi + 0x1a], bl
movss xmm0, dword [esi + 0x4c]
ucomiss xmm0, xmm1
jbe 0x101e3eb0
cmp dword [esi + 8], 0
je 0x101e3eb0
mov dword [esi + 0xbc], eax
mov dword [esi + 0xc8], ecx
mov dword [esi + 0xc4], edx
mov ebx, edi
mov eax, dword [edi]
mov dword [esi + 0x38], eax
mov dword [esi + 0x50], 0
xorps xmm2, xmm2
lea edi, [esi + 0xc]
jmp 0x101e3518
mov ecx, edi
call dword [0x1042afb0]
test al, al
jne 0x101e3b8e
lea edi, [esi + 0xc]
movss xmm2, dword [esi + 8]
ucomiss xmm2, dword [0x10357a60]
ja 0x101e3b60
addss xmm2, dword [0x10358874]
movaps xmm0, xmm2
mulss xmm0, dword [esi + 0x1e0]
movaps xmm1, xmm2
mulss xmm1, dword [esi + 0x1b0]
movss dword [esi + 8], xmm2
addss xmm0, dword [esi + 0xe4]
addss xmm1, dword [esi + 0xe0]
mulss xmm2, dword [esi + 0x20]
addss xmm2, dword [esi + 0xdc]
movss dword [esi + 0xc], xmm2
movss dword [esi + 0x10], xmm1
movss dword [esi + 0x14], xmm0
mov dword [esi + 0x2d8], 0xffffffff
cmp dword [esi + 0x50], 0
jne 0x101e358c
mov ecx, dword [0x104106f8]
mov eax, dword [ecx]
push 0
push 0x4600400b
push edi
call dword [eax]
mov dword [esi + 0x50], eax
mov ecx, dword [0x104106f8]
mov eax, dword [ecx]
push 0
push 0x4600400b
push edi
call dword [eax]
test eax, 0x600400b
je 0x101e35b9
test eax, 0x40000000
je 0x101e3506
cmp eax, dword [esi + 0x50]
je 0x101e3506
movss xmm0, dword [esi + 0xc]
movaps xmm1, xmmword [esi + 0x2a0]
movss dword [esi + 0x200], xmm1
movaps xmm1, xmmword [esi + 0x280]
movss dword [esi + 0x204], xmm1
movaps xmm1, xmmword [esi + 0x290]
movss dword [esi + 0x208], xmm1
movzx eax, byte [esi + 0x1b]
mov byte [esi + 0x235], al
mov dword [esi + 0x220], 0
mov dword [esi + 0x224], 0
mov dword [esi + 0x228], 0
mov dword [esi + 0x230], 0
mov byte [esi + 0x234], 1
mov dword [esi + 0x210], 0
mov dword [esi + 0x214], 0
mov dword [esi + 0x218], 0
movss dword [esi + 0x1f0], xmm0
subss xmm0, dword [esi + 0x240]
movss dword [esi + 0x1d4], xmm0
movss xmm0, dword [esi + 0x10]
movss dword [esi + 0x1f4], xmm0
subss xmm0, dword [esi + 0x250]
movss dword [esi + 0x1d8], xmm0
movss xmm0, dword [esi + 0x14]
movss dword [esi + 0x1f8], xmm0
subss xmm0, dword [esi + 0x2b0]
movss dword [esi + 0x1dc], xmm0
mov ecx, dword [0x104106f8]
mov eax, dword [ecx]
lea edx, [esi + 0x60]
push edx
push 0
push 0x4600400b
lea edx, [esi + 0x1f0]
push edx
call dword [eax + 0x14]
mov eax, dword [0x1042db98]
mov ecx, dword [0x10433bc4]
mov edx, dword fs:[0x2c]
mov ecx, dword [edx + ecx*4]
cmp eax, dword [ecx + 8]
jg 0x101e39cd
mov ecx, dword [0x1042db94]
test ecx, ecx
je 0x101e3727
mov eax, dword [ecx]
mov eax, dword [eax + 0x34]
mov dword [esi + 0x2d8], 0xffffffff
call eax
test eax, eax
je 0x101e3727
mov dword [esi + 0x160], 0x10357698
mov eax, dword [esi + 0x38]
mov dword [esi + 0x164], eax
lea ecx, [esi + 0x1d4]
mov edx, edi
movss xmm0, dword [0x103590dc]
lea eax, [esi + 0x60]
push eax
lea eax, [esi + 0x160]
push eax
call fcn.102147a0
add esp, 8
cmp byte [esi + 0x97], 0
je 0x101e3890
cmp word [esi + 0xa2], 0
jns 0x101e38aa
movss xmm2, dword [esi + 0xe4]
movss xmm0, dword [esi + 0x14]
subss xmm2, xmm0
movsd xmm3, qword [esi + 0xdc]
movsd xmm1, qword [esi + 0xc]
subps xmm3, xmm1
movss dword [esi + 0x170], xmm3
movaps xmm4, xmm3
shufps xmm4, xmm3, 0x55
movss dword [esi + 0x174], xmm4
movss dword [esi + 0x178], xmm2
mulps xmm3, xmm3
mulss xmm2, xmm2
addss xmm2, xmm3
shufps xmm3, xmm3, 0x55
addss xmm3, xmm2
ucomiss xmm3, dword [0x103574f0]
setne byte [esi + 0x1a5]
mov dword [esi + 0x190], 0
mov dword [esi + 0x194], 0
mov dword [esi + 0x198], 0
mov dword [esi + 0x1a0], 0
mov byte [esi + 0x1a4], 1
mov dword [esi + 0x180], 0
mov dword [esi + 0x184], 0
mov dword [esi + 0x188], 0
movss dword [esi + 0x160], xmm1
shufps xmm1, xmm1, 0x55
movss dword [esi + 0x164], xmm1
movss dword [esi + 0x168], xmm0
mov dword [esi + 0x130], 0x10357698
mov eax, dword [esi + 0xac]
mov dword [esi + 0x134], eax
mov ecx, dword [0x104106f8]
mov eax, dword [ecx]
mov eax, dword [eax + 0x14]
mov dword [esi + 0x2d8], 0xffffffff
lea edx, [esi + 0x60]
push edx
lea edx, [esi + 0x130]
push edx
push 0x600400b
lea edx, [esi + 0x160]
push edx
call eax
movss xmm0, dword [0x103564b8]
ucomiss xmm0, dword [esi + 0x8c]
seta al
cmp byte [esi + 0x96], 0
setne cl
or cl, al
cmp cl, 1
jne 0x101e3506
cmp byte [esi + 0x97], 0
jne 0x101e3506
jmp 0x101e3ce4
movss xmm0, dword [0x103564b8]
ucomiss xmm0, dword [esi + 0x8c]
ja 0x101e3909
cmp byte [esi + 0x96], 0
jne 0x101e3909
mov ecx, dword [esi + 0x11c]
test ecx, ecx
je 0x101e3503
mov eax, dword [ecx + 8]
add ecx, 8
mov eax, dword [eax + 0x28]
mov dword [esi + 0x2d8], 0xffffffff
call eax
test eax, eax
je 0x101e3503
mov edi, dword [esi + 0x11c]
lea ecx, [edi + 8]
mov eax, dword [edi + 8]
call dword [eax + 8]
mov eax, dword [eax + 8]
cmp byte [eax], 0x43
jne 0x101e34f3
movzx eax, byte [eax + 7]
cmp al, 0x62
je 0x101e3b8e
cmp al, 0x74
jne 0x101e34f3
jmp 0x101e3b8e
mov edi, dword [esi + 0x11c]
lea ecx, [edi + 8]
mov eax, dword [edi + 8]
mov eax, dword [eax + 8]
mov dword [esi + 0x2d8], 0xffffffff
call eax
mov eax, dword [eax + 8]
cmp byte [eax], 0x43
jne 0x101e3938
movzx eax, byte [eax + 7]
cmp al, 0x62
je 0x101e3944
cmp al, 0x74
je 0x101e3944
mov ecx, edi
call dword [0x1042afb0]
test al, al
je 0x101e397f
mov edi, dword [esi + 0xac]
lea ecx, [edi + 8]
mov eax, dword [edi + 8]
call dword [eax + 8]
mov eax, dword [eax + 8]
cmp byte [eax], 0x43
jne 0x101e396f
movzx eax, byte [eax + 7]
cmp al, 0x62
je 0x101e3d02
cmp al, 0x74
je 0x101e3d02
mov ecx, edi
call dword [0x1042afb0]
test al, al
jne 0x101e3d02
cmp byte [esi + 0x112], 0
js 0x101e3c92
cmp byte [esi + 0xa2], 0
js 0x101e3503
movss xmm0, dword [esi + 0x78]
mulss xmm0, dword [esi + 0x20]
movsd xmm1, qword [esi + 0x7c]
mulps xmm1, xmmword [esi + 0x1b0]
addss xmm0, xmm1
shufps xmm1, xmm1, 0x55
addss xmm1, xmm0
ucomiss xmm1, dword [0x103564b8]
ja 0x101e3503
jmp 0x101e3c92
push 0x1042db98
call fcn.102e5455
add esp, 4
cmp dword [0x1042db98], 0xffffffff
jne 0x101e36d2
mov eax, 0x3cc5294c
mov ecx, 0xa6319a04
mov dword [esi + 0x134], ecx
mov dword [esi + 0x130], eax
mov eax, 0x636928f0
mov ecx, 0x82b89aa9
mov dword [esi + 0x13c], ecx
mov dword [esi + 0x138], eax
mov eax, 0xa39887d0
mov ecx, 0xcaeabc86
mov dword [esi + 0x144], ecx
mov dword [esi + 0x140], eax
mov eax, 0x3dfc2e8f
mov ecx, 0x11076230
mov dword [esi + 0x14c], ecx
mov dword [esi + 0x148], eax
mov eax, 0x962b5892
mov ecx, 0x2aacb2f
mov dword [esi + 0x154], ecx
mov dword [esi + 0x150], eax
mov eax, 0xbd483524
mov ecx, 0x1bec5df1
mov edx, 0x5f9a5f3f
mov edi, 0xf941f368
mov dword [esi + 0x164], edi
mov dword [esi + 0x160], edx
mov edx, 0x6074d80
mov edi, 0xf6d9e8dd
mov dword [esi + 0x16c], edi
mov dword [esi + 0x168], edx
mov edx, 0xfcf6e8b9
mov edi, 0xa98bcef2
mov dword [esi + 0x174], edi
mov dword [esi + 0x170], edx
mov edx, 0x49a35dea
mov edi, 0x7d773d5f
mov dword [esi + 0x17c], edi
mov dword [esi + 0x178], edx
mov edx, 0xe44e21f3
mov edi, 0x2aacb5c
mov dword [esi + 0x184], edi
mov dword [esi + 0x180], edx
mov dword [esi + 0x15c], ecx
mov dword [esi + 0x158], eax
mov dword [esi + 0x18c], ecx
mov dword [esi + 0x188], eax
lea eax, [esi + 0x160]
xor ecx, ecx
mov ecx, dword [0x1041071c]
movaps xmm0, xmmword [esi + 0x130]
xorps xmm0, xmmword [eax]
movaps xmmword [esi + 0x130], xmm0
movaps xmm0, xmmword [esi + 0x140]
xorps xmm0, xmmword [eax + 0x10]
movaps xmmword [esi + 0x140], xmm0
movaps xmm0, xmmword [esi + 0x150]
xorps xmm0, xmmword [eax + 0x20]
movaps xmmword [esi + 0x150], xmm0
mov eax, dword [ecx]
mov eax, dword [eax + 0x44]
mov dword [esi + 0x2d8], 0
lea edx, [esi + 0x130]
push edx
call eax
mov dword [0x1042db94], eax
push 0x1042db98
call fcn.102e54cb
add esp, 4
mov ebx, dword [esi + 4]
lea edi, [esi + 0xc]
jmp 0x101e36d2
mov ecx, dword [0x104106f8]
mov eax, dword [ecx]
mov eax, dword [eax]
mov dword [esi + 0x2d8], 0xffffffff
push 0
push 0x600400b
push edi
call eax
test eax, 0x600400b
jne 0x101e3d02
jmp 0x101e3e88
movss xmm0, dword [esi + 0xd0]
movss xmm1, dword [esi + 0xd4]
movss dword [esi + 0x60], xmm0
movss dword [esi + 0x64], xmm1
movss xmm0, dword [esi + 0xd8]
movss dword [esi + 0x68], xmm0
movss xmm0, dword [esi + 0xe8]
movss dword [esi + 0x78], xmm0
movss xmm0, dword [esi + 0xec]
movss dword [esi + 0x7c], xmm0
movss xmm0, dword [esi + 0xf0]
movss dword [esi + 0x80], xmm0
mov eax, dword [esi + 0xf4]
mov ecx, dword [esi + 0xf8]
mov dword [esi + 0x88], ecx
mov dword [esi + 0x84], eax
movss xmm0, dword [esi + 0xfc]
movss dword [esi + 0x8c], xmm0
mov eax, dword [esi + 0x100]
mov dword [esi + 0x90], eax
movzx eax, word [esi + 0x104]
mov word [esi + 0x94], ax
movzx eax, word [esi + 0x106]
mov word [esi + 0x96], ax
movss xmm0, dword [esi + 0x108]
movss dword [esi + 0x98], xmm0
movsd xmm0, qword [esi + 0x10c]
movsd qword [esi + 0x9c], xmm0
movups xmm0, xmmword [esi + 0x114]
movups xmmword [esi + 0xa4], xmm0
movss xmm0, dword [esi + 0x14]
addss xmm0, dword [esi + 0x1e0]
movss xmm1, dword [esi + 0x10]
addss xmm1, dword [esi + 0x1b0]
movss xmm2, dword [esi + 0xc]
addss xmm2, dword [esi + 0x20]
movss dword [esi + 0x6c], xmm2
movss dword [esi + 0x70], xmm1
movss dword [esi + 0x74], xmm0
jmp 0x101e3d02
movss xmm0, dword [esi + 0x8c]
mulss xmm0, dword [0x10358874]
movaps xmm1, xmm0
mulss xmm1, dword [esi + 0x1e0]
movaps xmm2, xmm0
mulss xmm2, dword [esi + 0x1b0]
mulss xmm0, dword [esi + 0x20]
movss xmm3, dword [esi + 0xc]
subss xmm3, xmm0
movss xmm0, dword [esi + 0x10]
subss xmm0, xmm2
movss dword [esi + 0xc], xmm3
movss dword [esi + 0x10], xmm0
movss xmm0, dword [esi + 0x14]
subss xmm0, xmm1
jmp 0x101e3cfd
movss xmm0, dword [esi + 0x6c]
movss xmm1, dword [esi + 0x70]
movss dword [esi + 0xc], xmm0
movss dword [esi + 0x10], xmm1
movss xmm0, dword [esi + 0x74]
movss dword [esi + 0x14], xmm0
mov ecx, dword [0x10410730]
movsx eax, word [esi + 0xa0]
mov edx, dword [ecx]
push eax
call dword [edx + 0x14]
movss xmm0, dword [0x1035752c]
movss xmm2, dword [0x10358aa4]
movaps xmm1, xmm2
mov edx, dword [esi + 0xc8]
cmp dx, 0x47
je 0x101e3da0
movss xmm0, dword [0x1035752c]
movaps xmm1, xmm2
cmp dx, 0x59
je 0x101e3da0
movss xmm0, dword [0x10358c38]
movss xmm1, dword [0x103564b8]
cmp byte [esi + 0x1a], 0
js 0x101e3da0
movss xmm0, dword [0x10358c38]
movss xmm1, dword [0x103564b8]
and dword [esi + 0x48], 8
jne 0x101e3da0
movss xmm1, dword [eax + 0x58]
mov ecx, dword [esi + 0xbc]
addss xmm1, dword [ecx + 0x58]
mulss xmm1, dword [0x103574f4]
movss xmm0, dword [0x10358c38]
nop word cs:[eax + eax]
nop dword [eax + eax]
cmp dx, word [eax + 0x60]
mov eax, dword [esi + 0x24]
jne 0x101e3dd0
mov ecx, edx
and ecx, 0xfffd
movaps xmm3, xmm2
cmp cx, 0x55
je 0x101e3dd3
movss xmm3, dword [0x1035735c]
cmp dx, 0x4c
je 0x101e3dd3
nop dword [eax + eax]
movaps xmm3, xmm1
movss xmm1, dword [esi + 0x74]
movaps xmm4, xmm1
subss xmm4, dword [esi + 0xe4]
movsd xmm2, qword [esi + 0x6c]
movsd xmm5, qword [esi + 0xdc]
movaps xmm6, xmm2
subps xmm6, xmm5
mulps xmm6, xmm6
mulss xmm4, xmm4
movaps xmm5, xmm6
shufps xmm5, xmm6, 0x55
addss xmm5, xmm4
addss xmm5, xmm6
movss xmm7, dword [0x103564b8]
movaps xmm4, xmm7
divss xmm4, xmm3
xorps xmm6, xmm6
maxss xmm4, xmm6
movaps xmmword [esi + 0x50], xmm5
movaps xmm3, xmm5
mulss xmm3, dword [0x10358c3c]
addss xmm3, dword [esi + 0xc0]
mulss xmm3, xmm4
movss xmm5, dword [esi + 0x1c]
mulss xmm0, xmm5
addss xmm0, xmm3
maxss xmm0, xmm6
subss xmm5, xmm0
ucomiss xmm5, xmm7
jb 0x101e3e88
movss dword [esi + 0x28], xmm2
shufps xmm2, xmm2, 0x55
movss dword [esi + 0x2c], xmm2
movss dword [esi + 0x30], xmm1
ucomiss xmm5, xmm6
mov ecx, dword [esi + 0xc4]
mov dword [esi + 8], ecx
movaps xmm3, xmmword [esi + 0x1b0]
movss xmm4, dword [esi + 0x20]
ja 0x101e3231
mov byte [ebx + 0x3a], 0
mov eax, dword [esi + 0x2d0]
mov dword fs:[0], eax
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
test byte [esi + 0x48], 8
jne 0x101e3eb0
cmp cx, 0x47
je 0x101e3eb0
cmp cx, 0x59
mov byte [edi + 0x3a], 0
jmp 0x101e3e8c
xor eax, eax
mov ecx, dword [esi + 0x34]
cmp word [ecx + 0x2fba], 0x1f
cmove ebx, eax
mov eax, dword [esi + 0x24]
movss xmm1, dword [eax + 0xf8]
mov ecx, edi
mov edx, ebx
call fcn.10214c80
cmp dword [esi + 8], 4
mov ecx, dword [esi + 4]
setne byte [ecx + 0x39]
mov dword [ecx + 0x34], ebx
movss dword [ecx + 0x30], xmm0
mov eax, dword [ecx + 4]
mov dword [ecx + 0x2c], eax
jne 0x101e3eff
ucomiss xmm0, dword [ecx + 0x20]
setae byte [ecx + 0x3a]
jmp 0x101e3e8c
ucomiss xmm0, dword [ecx + 0x24]
setae byte [ecx + 0x3a]
jmp 0x101e3e8c
xor eax, eax
mov ecx, dword [esi + 0x34]
cmp word [ecx + 0x2fba], 0x1f
cmove ebx, eax
mov eax, dword [esi + 0x24]
movss xmm1, dword [eax + 0xf8]
mov ecx, edi
movss xmm0, dword [esi + 0x1c]
mov edx, ebx
call fcn.10214c80
mov eax, dword [esi + 4]
mov dword [eax + 0x34], ebx
movss dword [eax + 0x30], xmm0
mov dword [eax + 0x2c], edi
cmp dword [esi + 8], 4
jne 0x101e3f53
ucomiss xmm0, dword [eax + 0x20]
setae byte [eax + 0x3a]
jmp 0x101e3e8c
ucomiss xmm0, dword [eax + 0x24]
setae byte [eax + 0x3a]
jmp 0x101e3e8c