Function at 0x10089b80
Capabilities:
Open clipboard
Read clipboard data
Write clipboard data

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
sub esp, 0x108
mov eax, dword [0x103090f4]
xor eax, ebp
mov dword [ebp - 4], eax
push esi
mov esi, dword [ebx + 8]
push edi
mov edi, dword [ebx + 0xc]
mov dword [ebp - 0xc8], ecx
mov dword [ebp - 0xd8], esi
mov dword [ebp - 0xf0], edi
call fcn.10094920
mov eax, dword [ebp - 0xc8]
xor edx, edx
add eax, 0x48
mov dword [ebp - 0xb0], eax
mov ah, byte [esi]
fstp dword [ebp - 0xcc]
test ah, ah
je 0x10089be9
inc edx
cmp byte [esi + edx], 0
jne 0x10089be2
mov cl, ah
mov al, ah
add al, 0x20
sub cl, 0x41
movzx edi, al
cmp cl, 0x19
movzx eax, ah
mov ecx, edi
cmova ecx, eax
mov dword [ebp - 0xb4], edi
test edx, edx
jne 0x10089c11
mov eax, 0x84222325
jmp 0x10089c2c
push 1
lea eax, [edx - 1]
push eax
lea eax, [esi + 1]
push eax
movsx eax, cl
xor eax, 0x8601b7df
push eax
call fcn.10062120
add esp, 0x10
mov ecx, dword [ebp - 0xb0]
mov dword [ebp - 0xb4], eax
lea eax, [ebp - 0xb4]
push eax
call fcn.100880f0
mov esi, dword [0x10309a50]
mov edi, dword [ebp - 0xf0]
movss xmm0, dword [eax + 8]
mov eax, dword [esi + 0x19b0]
movss dword [ebp - 0xe8], xmm0
mov dword [ebp - 0xb4], esi
mov byte [eax + 0x8c], 1
mov eax, dword [esi + 0x19b0]
mov dword [ebp - 0xdc], eax
cmp byte [eax + 0x8f], 0
je 0x10089c8c
xor al, al
jmp 0x1008ba15
mov ecx, dword [ebx + 0x10]
mov edx, ecx
mov eax, dword [eax + 0x284]
or edx, 0x10
test ecx, 0x100
mov dword [ebp - 0xd4], eax
mov dword [esi + 0x1a8c], 0
cmovne edx, ecx
mov dword [ebp - 0x94], edx
test dl, 8
jne 0x10089cce
push edx
push edi
call fcn.1003a850
mov edx, dword [ebp - 0x94]
add esp, 8
test edx, 0x6000000
jne 0x10089cf3
mov eax, dword [esi + 0x2cdc]
mov ecx, 0xa900000
test eax, 0x6000000
cmovne ecx, eax
and ecx, 0x6000000
or ecx, edx
jmp 0x10089cf5
mov ecx, edx
mov dword [ebp - 0x54], ecx
test ecx, 0x18000000
jne 0x10089d1e
mov eax, dword [esi + 0x2cdc]
mov edx, 0xa900000
test eax, 0x18000000
cmovne edx, eax
and edx, 0x18000000
or ecx, edx
mov dword [ebp - 0x54], ecx
test cl, 8
jne 0x10089d33
mov eax, dword [esi + 0x2cdc]
and eax, 0x10000
or ecx, eax
mov dword [ebp - 0x54], ecx
mov eax, dword [ebp - 0xdc]
mov edx, ecx
movss xmm4, dword [0x101466c0]
and edx, 0x10002
mov dword [ebp - 0xa8], edx
movss xmm0, dword [eax + 0xdc]
movss xmm2, dword [eax + 0xd8]
xor eax, eax
addss xmm0, dword [0x10146694]
addss xmm2, dword [0x101466b0]
cmp edx, 0x10000
sete al
inc eax
movss dword [ebp - 0xb8], xmm0
movss dword [ebp - 0xbc], xmm2
test cl, 2
movss xmm3, dword [esi + 0x1560]
movaps xmm0, xmm3
movd xmm1, eax
addss xmm0, xmm4
cvtdq2ps xmm1, xmm1
mov eax, 0
sete al
mulss xmm1, xmm0
lea eax, [eax*4 + 0xc]
push eax
movss xmm0, dword [0x1015070c]
mov dword [ebp - 0xfc], eax
lea eax, [ebp - 0x30]
subss xmm0, xmm1
push edi
push eax
maxss xmm0, xmm4
addss xmm2, xmm0
movss dword [ebp - 0xac], xmm0
addss xmm2, xmm3
movaps xmm0, xmm2
movss dword [ebp - 0xe4], xmm2
addss xmm0, xmm4
addss xmm3, xmm0
movss dword [ebp - 0x94], xmm0
movss dword [ebp - 0xe0], xmm3
call sub.VCRUNTIME140.dll_memcpy
mov eax, dword [ebp - 0x54]
add esp, 0xc
movss xmm0, dword [edi]
mov ecx, eax
movss xmm1, dword [edi + 4]
and ecx, 0x8000000
movss xmm2, dword [edi + 8]
movss dword [ebp - 0xa0], xmm0
movss dword [ebp - 0xc0], xmm1
movss dword [ebp - 0xd0], xmm2
movss dword [ebp - 0xf4], xmm0
movss dword [ebp - 0xf8], xmm1
movss dword [ebp - 0xec], xmm2
mov dword [ebp - 0xc4], ecx
je 0x10089ed7
lea eax, [ebp - 0xd0]
push eax
lea eax, [ebp - 0xc0]
push eax
lea eax, [ebp - 0xa0]
push eax
sub esp, 0xc
movss dword [esp + 8], xmm2
movss dword [esp + 4], xmm1
movss dword [esp], xmm0
call fcn.10011810
movss xmm0, dword [ebp - 0xc0]
add esp, 0x18
ucomiss xmm0, dword [0x1014662c]
lahf
test ah, 0x44
jp 0x10089f0f
mov eax, dword [esi + 0x2ce4]
cmp eax, dword [edi]
jne 0x10089f0f
mov eax, dword [esi + 0x2ce8]
cmp eax, dword [edi + 4]
jne 0x10089f0f
mov eax, dword [esi + 0x2cec]
cmp eax, dword [edi + 8]
jne 0x10089f0f
movss xmm0, dword [esi + 0x2ce0]
movss dword [ebp - 0xa0], xmm0
jmp 0x10089f0f
test eax, 0x10000000
je 0x10089f0f
lea eax, [ebp - 0xec]
push eax
lea eax, [ebp - 0xf8]
push eax
lea eax, [ebp - 0xf4]
push eax
sub esp, 0xc
movss dword [esp + 8], xmm2
movss dword [esp + 4], xmm1
movss dword [esp], xmm0
call fcn.100116b0
add esp, 0x18
push dword [ebp - 0xd8]
mov byte [ebp - 0x69], 0
mov byte [ebp - 0x6a], 0
mov byte [ebp - 0x79], 0
call fcn.1001a5e0
call fcn.100105d0
push 1
push 8
call fcn.1001a660
mov eax, dword [ebp - 0x54]
add esp, 0xc
and eax, 0x2000000
mov dword [ebp - 0x74], eax
je 0x1008a0c4
movss xmm0, dword [ebp - 0xac]
lea eax, [ebp - 0x88]
push eax
push 0x1014a6d8
movss dword [ebp - 0x88], xmm0
movss dword [ebp - 0x84], xmm0
call fcn.1003f0b0
movss xmm0, dword [ebp - 0xac]
add esp, 8
subss xmm0, dword [0x10146694]
movss dword [ebp - 0x9c], xmm0
call fcn.10015540
movss xmm3, dword [ebp - 0xb8]
test al, al
je 0x1008a000
movss xmm2, dword [0x10146694]
divss xmm2, dword [ebp - 0x9c]
push ecx
movss xmm0, dword [esi + 0xe8]
subss xmm0, dword [ebp - 0xbc]
mulss xmm0, xmm2
movss dword [esp], xmm0
call fcn.1003c350
fstp dword [ebp - 0xc0]
movss xmm0, dword [esi + 0xec]
subss xmm0, xmm3
mulss xmm0, xmm2
movss dword [esp], xmm0
call fcn.1003c350
fld1
mov al, 1
fsubrp st(1)
mov byte [ebp - 0x69], al
add esp, 4
fstp dword [ebp - 0xd0]
jmp 0x1008a003
mov al, byte [ebp - 0x69]
test byte [ebp - 0x54], 8
mov byte [ebp - 0x7a], al
jne 0x1008a023
push 1
push str.context
call fcn.10019fc0
movss xmm3, dword [ebp - 0xb8]
add esp, 8
movss xmm0, dword [ebp - 0xe4]
lea eax, [ebp - 0x88]
push eax
movss dword [ebp - 0x88], xmm0
movss dword [ebp - 0x84], xmm3
call fcn.1001cf80
movss xmm0, dword [ebp - 0xac]
lea eax, [ebp - 0x88]
push eax
push 0x1014a6dc
mov dword [ebp - 0x88], 0x41400000
movss dword [ebp - 0x84], xmm0
call fcn.1003f0b0
mov al, byte [ebp - 0x69]
add esp, 0xc
mov byte [ebp - 0x79], al
call fcn.10015540
test al, al
je 0x1008a0c4
movss xmm0, dword [esi + 0xec]
movss xmm2, dword [ebp - 0xb8]
subss xmm0, xmm2
push ecx
divss xmm0, dword [ebp - 0x9c]
movss dword [esp], xmm0
call fcn.1003c350
mov al, byte [ebp - 0x7a]
add esp, 4
fstp dword [ebp - 0xa0]
mov byte [ebp - 0x6a], 1
mov byte [ebp - 0x69], 1
mov byte [ebp - 0x79], al
jmp 0x1008a0cc
movss xmm2, dword [ebp - 0xb8]
cmp dword [ebp - 0xa8], 0x10000
jne 0x1008a174
movss xmm0, dword [ebp - 0xe0]
lea eax, [ebp - 0x88]
push eax
movss dword [ebp - 0x88], xmm0
movss dword [ebp - 0x84], xmm2
call fcn.1001cf80
movss xmm0, dword [ebp - 0xac]
lea eax, [ebp - 0x88]
push eax
push 0x1014a6e0
mov dword [ebp - 0x88], 0x41400000
movss dword [ebp - 0x84], xmm0
call fcn.1003f0b0
add esp, 0xc
call fcn.10015540
test al, al
je 0x1008a174
movss xmm1, dword [esi + 0xec]
movss xmm0, dword [ebp - 0xac]
subss xmm1, dword [ebp - 0xb8]
subss xmm0, dword [0x10146694]
push ecx
divss xmm1, xmm0
movss dword [esp], xmm1
call fcn.1003c350
fld1
add esp, 4
fsubrp st(1)
mov byte [ebp - 0x69], 1
fstp dword [edi + 0xc]
call fcn.1001a220
mov eax, dword [ebp - 0x54]
mov ecx, eax
and ecx, 0x100
mov dword [ebp - 0x9c], ecx
jne 0x1008a1b4
movss xmm0, dword [esi + 0x1560]
sub esp, 8
movss dword [esp + 4], xmm0
mov dword [esp], 0
call fcn.1001c790
add esp, 8
call fcn.100105d0
mov eax, dword [ebp - 0x54]
test al, al
js 0x1008a21e
push 0
push dword [ebp - 0xd8]
call fcn.10012ef0
mov ecx, eax
add esp, 8
mov eax, dword [ebp - 0xd8]
mov dword [ebp - 0xa4], ecx
cmp eax, ecx
je 0x1008a21b
cmp dword [ebp - 0x9c], 0
je 0x1008a20f
movss xmm0, dword [esi + 0x1560]
sub esp, 8
movss dword [esp + 4], xmm0
mov dword [esp], 0
call fcn.1001c790
mov eax, dword [ebp - 0xd8]
add esp, 8
mov ecx, dword [ebp - 0xa4]
push 0
push ecx
push eax
call fcn.10041390
add esp, 0xc
mov eax, dword [ebp - 0x54]
cmp byte [ebp - 0x6a], 0
jne 0x1008a22e
cmp byte [ebp - 0x79], 0
je 0x1008a2f9
cmp dword [ebp - 0xc4], 0
je 0x1008a2cc
movss xmm2, dword [ebp - 0xd0]
xorps xmm0, xmm0
comiss xmm2, xmm0
ja 0x1008a253
movss xmm2, dword [0x1014a8d4]
movss xmm1, dword [ebp - 0xc0]
comiss xmm1, xmm0
movss xmm3, dword [0x10146634]
ja 0x1008a26b
movaps xmm1, xmm3
movss xmm0, dword [ebp - 0xa0]
comiss xmm0, dword [0x10146694]
jb 0x1008a280
subss xmm0, xmm3
lea eax, [edi + 8]
push eax
lea eax, [edi + 4]
push eax
push edi
sub esp, 0xc
movss dword [esp + 8], xmm2
movss dword [esp + 4], xmm1
movss dword [esp], xmm0
call fcn.100116b0
movss xmm0, dword [ebp - 0xa0]
add esp, 0x18
movss dword [esi + 0x2ce0], xmm0
movq xmm0, qword [edi]
movq qword [esi + 0x2ce4], xmm0
mov eax, dword [edi + 8]
mov dword [esi + 0x2cec], eax
jmp 0x1008a2f9
test eax, 0x10000000
je 0x1008a2f9
movss xmm0, dword [ebp - 0xa0]
movss dword [edi], xmm0
movss xmm0, dword [ebp - 0xc0]
movss dword [edi + 4], xmm0
movss xmm0, dword [ebp - 0xd0]
movss dword [edi + 8], xmm0
mov eax, dword [ebp - 0x54]
mov byte [ebp - 0x79], 0
test al, 0x20
jne 0x1008a4fa
cmp dword [ebp - 0xa8], 0x10000
jne 0x1008a31e
movss xmm0, dword [ebp - 0xe0]
jmp 0x1008a326
movss xmm0, dword [ebp - 0xe4]
addss xmm0, dword [0x101466c0]
push ecx
subss xmm0, dword [ebp - 0xbc]
movss dword [esp], xmm0
call fcn.1001a6f0
mov eax, dword [ebp - 0x54]
add esp, 4
mov edx, eax
and edx, 0x198e001a
mov dword [ebp - 0x9c], edx
test eax, 0x100000
jne 0x1008a374
mov ecx, eax
and ecx, 0x700000
mov dword [ebp - 0xa4], ecx
jne 0x1008a3d3
mov dword [ebp - 0xa4], ecx
jmp 0x1008a37f
and eax, 0x700000
mov dword [ebp - 0xa4], eax
or edx, 0x100004
push edx
push edi
push str.rgb
call fcn.10037a80
add esp, 0xc
test al, al
je 0x1008a3c4
cmp dword [esi + 0x19ec], 0
je 0x1008a3ae
cmp byte [esi + 0x19f9], 0
mov byte [ebp - 0x79], 1
je 0x1008a3b2
mov byte [ebp - 0x79], 0
mov ecx, dword [ebp - 0xa4]
mov byte [ebp - 0x69], 1
mov dword [ebp - 0xa4], ecx
jmp 0x1008a3ca
mov ecx, dword [ebp - 0xa4]
mov edx, dword [ebp - 0x9c]
mov eax, dword [ebp - 0x54]
test eax, 0x200000
jne 0x1008a3de
test ecx, ecx
jne 0x1008a3ff
or edx, 0x200004
push edx
push edi
push str.hsv
call fcn.10037a80
mov ecx, dword [ebp - 0xa4]
add esp, 0xc
or byte [ebp - 0x69], al
mov eax, dword [ebp - 0x54]
test eax, 0x400000
jne 0x1008a40a
test ecx, ecx
jne 0x1008a427
mov eax, dword [ebp - 0x9c]
or eax, 0x400004
push eax
push edi
push str.hex
call fcn.10037a80
add esp, 0xc
or byte [ebp - 0x69], al
call fcn.1001a270
cmp byte [ebp - 0x79], 0
mov ecx, dword [ebp - 0xc4]
je 0x1008a60a
test ecx, ecx
je 0x1008a60a
movss xmm0, dword [edi + 8]
lea eax, [ebp - 0xa4]
push eax
lea eax, [ebp - 0x84]
push eax
lea eax, [ebp - 0x9c]
push eax
sub esp, 0xc
movss dword [esp + 8], xmm0
movss xmm0, dword [edi + 4]
movss dword [esp + 4], xmm0
movss xmm0, dword [edi]
movss dword [esp], xmm0
call fcn.10011810
xorps xmm0, xmm0
add esp, 0x18
comiss xmm0, dword [ebp - 0x9c]
jb 0x1008a4f7
movss xmm3, dword [ebp - 0xa0]
comiss xmm3, xmm0
jbe 0x1008a4f7
movss xmm2, dword [ebp - 0xa4]
comiss xmm0, xmm2
jb 0x1008a5c3
movss xmm1, dword [ebp - 0xd0]
ucomiss xmm1, xmm2
lahf
test ah, 0x44
jnp 0x1008a5c3
mulss xmm1, dword [0x10146668]
lea eax, [edi + 8]
push eax
movss xmm0, dword [ebp - 0xc0]
lea eax, [edi + 4]
push eax
push edi
sub esp, 0xc
movss dword [esp + 8], xmm1
movss dword [esp + 4], xmm0
movss dword [esp], xmm3
call fcn.100116b0
add esp, 0x18
mov eax, dword [ebp - 0x54]
mov ecx, dword [ebp - 0xc4]
cmp byte [ebp - 0x69], 0
je 0x1008a670
test ecx, ecx
je 0x1008a612
movss xmm0, dword [edi + 8]
lea eax, [ebp - 0xd0]
movss xmm1, dword [edi + 4]
movss xmm2, dword [edi]
push eax
lea eax, [ebp - 0xc0]
movss dword [ebp - 0xf4], xmm2
push eax
lea eax, [ebp - 0xa0]
movss dword [ebp - 0xf8], xmm1
push eax
sub esp, 0xc
movss dword [ebp - 0xec], xmm0
movss dword [esp + 8], xmm0
movss dword [esp + 4], xmm1
movss dword [esp], xmm2
call fcn.10011810
movss xmm0, dword [ebp - 0xc0]
add esp, 0x18
ucomiss xmm0, dword [0x1014662c]
lahf
test ah, 0x44
jp 0x1008a670
mov eax, dword [esi + 0x2ce4]
cmp eax, dword [edi]
jne 0x1008a670
mov eax, dword [esi + 0x2ce8]
cmp eax, dword [edi + 4]
jne 0x1008a670
mov eax, dword [esi + 0x2cec]
cmp eax, dword [edi + 8]
jne 0x1008a670
movss xmm0, dword [esi + 0x2ce0]
movss dword [ebp - 0xa0], xmm0
jmp 0x1008a670
comiss xmm0, dword [ebp - 0x84]
jb 0x1008a4f7
movss xmm0, dword [ebp - 0xc0]
lea eax, [edi + 8]
mulss xmm0, dword [0x10146668]
push eax
lea eax, [edi + 4]
push eax
push edi
sub esp, 0xc
movss dword [esp + 8], xmm2
movss dword [esp + 4], xmm0
movss xmm0, dword [ebp - 0xa0]
movss dword [esp], xmm0
jmp 0x1008a4ef
mov eax, dword [ebp - 0x54]
jmp 0x1008a500
test eax, 0x10000000
je 0x1008a670
movss xmm0, dword [edi + 8]
lea eax, [ebp - 0xec]
movss xmm1, dword [edi + 4]
movss xmm2, dword [edi]
push eax
lea eax, [ebp - 0xf8]
movss dword [ebp - 0xa0], xmm2
push eax
lea eax, [ebp - 0xf4]
movss dword [ebp - 0xc0], xmm1
push eax
sub esp, 0xc
movss dword [ebp - 0xd0], xmm0
movss dword [esp + 8], xmm0
movss dword [esp + 4], xmm1
movss dword [esp], xmm2
call fcn.100116b0
add esp, 0x18
movss xmm1, dword [ebp - 0xcc]
xorps xmm0, xmm0
mulss xmm1, dword [esi + 0x1510]
mulss xmm1, dword [ebp - 0xe8]
comiss xmm0, xmm1
ja 0x1008a69b
movaps xmm0, xmm1
minss xmm0, dword [0x10146694]
mulss xmm0, dword [0x101466e0]
mov dword [ebp - 0x48], 0x3f800000
mov dword [ebp - 0x44], 0x3f800000
mov dword [ebp - 0x40], 0x3f800000
addss xmm0, dword [0x10146668]
movss dword [ebp - 0x3c], xmm1
cvttss2si edx, xmm0
movss xmm0, dword [ebp - 0xa0]
shl edx, 0x18
mov eax, edx
mov dword [ebp - 0xa4], edx
or eax, 0xffffff
mov ecx, edx
mov dword [ebp - 0x9c], eax
or ecx, 0xff0000
mov eax, edx
mov dword [ebp - 0x20], ecx
or eax, 0xffff00
mov dword [ebp - 8], ecx
mov dword [ebp - 0x1c], eax
mov eax, edx
or eax, 0xff00
mov dword [ebp - 0x18], eax
mov eax, edx
or eax, 0xffff
mov dword [ebp - 0x14], eax
mov eax, edx
or eax, 0xff
mov dword [ebp - 0x10], eax
mov eax, edx
or eax, 0xff00ff
mov dword [ebp - 0xc], eax
lea eax, [ebp - 0x40]
push eax
lea eax, [ebp - 0x44]
push eax
lea eax, [ebp - 0x48]
push eax
sub esp, 0xc
mov dword [esp + 8], 0x3f800000
mov dword [esp + 4], 0x3f800000
movss dword [esp], xmm0
call fcn.100116b0
lea eax, [ebp - 0x48]
push eax
call fcn.10011600
movss xmm0, dword [ebp - 0xf4]
movss dword [ebp - 0x60], xmm0
movss xmm0, dword [ebp - 0xf8]
movss dword [ebp - 0x5c], xmm0
movss xmm0, dword [ebp - 0xec]
movss dword [ebp - 0x58], xmm0
movss xmm0, dword [ebp - 0xcc]
mulss xmm0, dword [esi + 0x1510]
mov dword [ebp - 0x84], eax
lea eax, [ebp - 0x60]
push eax
mulss xmm0, dword [ebp - 0xe8]
movss dword [ebp - 0x54], xmm0
call fcn.10011600
add esp, 0x20
mov dword [ebp - 0xc4], eax
cmp dword [ebp - 0x74], 0
mov dword [ebp - 0x8c], 0
mov dword [ebp - 0x90], 0
je 0x1008ab53
movss xmm0, dword [ebp - 0xbc]
addss xmm0, dword [ebp - 0xac]
mov eax, dword [ebp - 0x9c]
mov ecx, dword [ebp - 0x84]
push eax
push ecx
push ecx
mov ecx, dword [ebp - 0xd4]
movss dword [ebp - 0x78], xmm0
movss xmm0, dword [ebp - 0xb8]
addss xmm0, dword [ebp - 0xac]
push eax
lea eax, [ebp - 0x78]
push eax
lea eax, [ebp - 0xbc]
push eax
movss dword [ebp - 0x74], xmm0
call fcn.10022070
movss xmm0, dword [ebp - 0xbc]
addss xmm0, dword [ebp - 0xac]
mov eax, dword [ebp - 0xa4]
mov ecx, dword [ebp - 0xd4]
push eax
push eax
movss dword [ebp - 0x78], xmm0
lea eax, [ebp - 0x78]
movss xmm0, dword [ebp - 0xb8]
addss xmm0, dword [ebp - 0xac]
push 0
push 0
push eax
lea eax, [ebp - 0xbc]
push eax
movss dword [ebp - 0x74], xmm0
call fcn.10022070
movss xmm0, dword [ebp - 0xb8]
addss xmm0, dword [ebp - 0xac]
movss xmm1, dword [ebp - 0xbc]
addss xmm1, dword [ebp - 0xac]
push ecx
mov dword [esp], 0
movss dword [ebp - 0x74], xmm0
push dword [ebp - 0x74]
movss dword [ebp - 0x78], xmm1
push dword [ebp - 0x78]
push dword [ebp - 0xb8]
push dword [ebp - 0xbc]
call fcn.1001b030
movss xmm2, dword [ebp - 0xc0]
xorps xmm0, xmm0
movss xmm4, dword [0x10146694]
add esp, 0x14
comiss xmm0, xmm2
jbe 0x1008a8d8
xorps xmm2, xmm2
jmp 0x1008a8dc
minss xmm2, xmm4
movss xmm1, dword [ebp - 0xac]
movss xmm3, dword [ebp - 0xbc]
movss xmm6, dword [0x10146668]
mulss xmm2, xmm1
movss xmm7, dword [0x101466a0]
addss xmm2, xmm3
addss xmm2, xmm6
cvttss2si eax, xmm2
movaps xmm2, xmm3
addss xmm3, xmm1
addss xmm2, xmm7
movd xmm5, eax
cvtdq2ps xmm5, xmm5
subss xmm3, xmm7
comiss xmm2, xmm5
jbe 0x1008a931
movss dword [ebp - 0x90], xmm2
jmp 0x1008a948
comiss xmm5, xmm3
jbe 0x1008a940
movss dword [ebp - 0x90], xmm3
jmp 0x1008a948
movss dword [ebp - 0x90], xmm5
movaps xmm3, xmm4
subss xmm3, dword [ebp - 0xd0]
comiss xmm0, xmm3
jbe 0x1008a95d
xorps xmm3, xmm3
jmp 0x1008a961
minss xmm3, xmm4
movss xmm2, dword [ebp - 0xb8]
mulss xmm3, xmm1
movaps xmm0, xmm2
addss xmm0, xmm1
addss xmm3, xmm2
subss xmm0, xmm7
addss xmm3, xmm6
cvttss2si eax, xmm3
movaps xmm3, xmm2
addss xmm3, xmm7
movd xmm4, eax
cvtdq2ps xmm4, xmm4
comiss xmm3, xmm4
jbe 0x1008a9a1
movss dword [ebp - 0x8c], xmm3
jmp 0x1008a9b8
comiss xmm4, xmm0
jbe 0x1008a9b0
movss dword [ebp - 0x8c], xmm0
jmp 0x1008a9b8
movss dword [ebp - 0x8c], xmm4
mulss xmm1, dword [0x1014a8e8]
xor ecx, ecx
mov edi, dword [ebp - 0xd4]
movss dword [ebp - 0x74], xmm1
nop dword [eax]
movss xmm0, dword [ebp - 0x94]
lea esi, [ecx + 1]
movss dword [ebp - 0x88], xmm0
mov eax, dword [ebp + ecx*4 - 0x1c]
movd xmm0, esi
cvtdq2ps xmm0, xmm0
push eax
push eax
lea eax, [ebp - 0x88]
mulss xmm0, xmm1
addss xmm0, xmm2
movss dword [ebp - 0x84], xmm0
movss xmm0, dword [ebp - 0xe4]
movss dword [ebp - 0x58], xmm0
movd xmm0, ecx
mov ecx, dword [ebp + ecx*4 - 0x20]
cvtdq2ps xmm0, xmm0
push ecx
push ecx
push eax
lea eax, [ebp - 0x58]
mov ecx, edi
push eax
mulss xmm0, xmm1
addss xmm0, xmm2
movss dword [ebp - 0x54], xmm0
call fcn.10022070
mov ecx, esi
cmp ecx, 6
jge 0x1008aa4f
movss xmm2, dword [ebp - 0xb8]
movss xmm1, dword [ebp - 0x74]
jmp 0x1008a9d0
movss xmm0, dword [ebp - 0xa0]
mulss xmm0, dword [ebp - 0xac]
push ecx
movss xmm1, dword [ebp - 0xb8]
movss xmm2, dword [ebp - 0x94]
addss xmm0, xmm1
mov dword [esp], 0
movss dword [ebp - 0x78], xmm2
movss dword [ebp - 0x84], xmm1
addss xmm0, dword [0x10146668]
cvttss2si esi, xmm0
movaps xmm0, xmm1
addss xmm0, dword [ebp - 0xac]
movss dword [ebp - 0x74], xmm0
push dword [ebp - 0x74]
movss xmm0, dword [ebp - 0xe4]
push dword [ebp - 0x78]
movss dword [ebp - 0x88], xmm0
push dword [ebp - 0x84]
push dword [ebp - 0x88]
call fcn.1001b030
movss xmm0, dword [ebp - 0xe4]
add esp, 0xc
subss xmm0, dword [0x10146694]
mov eax, dword [ebp - 0xb4]
mov dword [ebp - 0x74], 0x40000000
mov dword [ebp - 0x78], 0x40400000
movss dword [ebp - 0x88], xmm0
movd xmm0, esi
mov esi, edi
cvtdq2ps xmm0, xmm0
movss dword [ebp - 0x84], xmm0
movss xmm0, dword [ebp - 0xcc]
mulss xmm0, dword [eax + 0x1510]
mulss xmm0, dword [ebp - 0xe8]
movss dword [esp + 4], xmm0
mov dword [esp], 0x41600000
push dword [ebp - 0x74]
push dword [ebp - 0x78]
push dword [ebp - 0x84]
push dword [ebp - 0x88]
push esi
call fcn.1003f920
mov edi, dword [ebp - 0xf0]
add esp, 0x1c
jmp 0x1008ab59
mov esi, dword [ebp - 0xd4]
push 0xf
push dword [ebp - 0x9c]
lea eax, [ebp - 0x90]
push ecx
mov dword [esp], 0x40400000
mov ecx, esi
push eax
call fcn.1001ff10
push ecx
mov dword [esp], 0x3f800000
lea eax, [ebp - 0x90]
push 0xf
push dword [ebp - 0xa4]
push ecx
mov dword [esp], 0x40800000
mov ecx, esi
push eax
call fcn.1001fe80
cmp dword [ebp - 0xa8], 0x10000
jne 0x1008acf1
movss xmm1, dword [edi + 0xc]
xorps xmm0, xmm0
comiss xmm0, xmm1
jbe 0x1008abc4
movss dword [ebp - 0x94], xmm0
jmp 0x1008abd4
minss xmm1, dword [0x10146694]
movss dword [ebp - 0x94], xmm1
mov ecx, dword [ebp - 0xc4]
mov eax, ecx
movss xmm0, dword [ebp - 0xe0]
and eax, 0xffffff
movss xmm1, dword [ebp - 0xb8]
push eax
push eax
push ecx
push ecx
movss dword [ebp - 0x60], xmm0
lea eax, [ebp - 0x58]
addss xmm0, dword [0x101466c0]
movss dword [ebp - 0x5c], xmm1
mov ecx, esi
addss xmm1, dword [ebp - 0xac]
push eax
lea eax, [ebp - 0x60]
push eax
movss dword [ebp - 0x58], xmm0
movss dword [ebp - 0x54], xmm1
call fcn.10022070
movss xmm0, dword [0x10146694]
subss xmm0, dword [ebp - 0x94]
push ecx
mov dword [esp], 0
push dword [ebp - 0x54]
mulss xmm0, dword [ebp - 0xac]
push dword [ebp - 0x58]
addss xmm0, dword [ebp - 0xb8]
push dword [ebp - 0x5c]
push dword [ebp - 0x60]
addss xmm0, dword [0x10146668]
cvttss2si esi, xmm0
call fcn.1001b030
add esp, 0xc
mov eax, dword [ebp - 0xb4]
mov dword [ebp - 0x74], 0x40000000
mov dword [ebp - 0x78], 0x40400000
movss xmm0, dword [ebp - 0xe0]
subss xmm0, dword [0x10146694]
movss dword [ebp - 0x88], xmm0
movd xmm0, esi
cvtdq2ps xmm0, xmm0
mov esi, dword [ebp - 0xd4]
movss dword [ebp - 0x84], xmm0
movss xmm0, dword [ebp - 0xcc]
mulss xmm0, dword [eax + 0x1510]
mulss xmm0, dword [ebp - 0xe8]
movss dword [esp + 4], xmm0
mov dword [esp], 0x41600000
push dword [ebp - 0x74]
push dword [ebp - 0x78]
push dword [ebp - 0x84]
push dword [ebp - 0x88]
push esi
call fcn.1003f920
add esp, 0x1c
call fcn.10012350
call fcn.100105d0
mov eax, dword [esi + 0x24]
mov dword [ebp - 0xe0], eax
or eax, 3
mov dword [esi + 0x24], eax
call fcn.100105d0
mov ecx, dword [ebp - 0xd8]
xor edx, edx
mov ah, byte [ecx]
test ah, ah
je 0x1008ad27
nop dword [eax]
inc edx
cmp byte [edx + ecx], 0
jne 0x1008ad20
mov al, ah
sub al, 0x41
cmp al, 0x19
ja 0x1008ad32
add ah, 0x20
mov byte [ebp - 0x6a], ah
test edx, edx
jne 0x1008ad40
mov eax, 0x84222325
jmp 0x1008ad5c
push 1
lea eax, [edx - 1]
push eax
lea eax, [ecx + 1]
push eax
movsx eax, byte [ebp - 0x6a]
xor eax, 0x8601b7df
push eax
call fcn.10062120
add esp, 0x10
mov ecx, dword [ebp - 0xb0]
add eax, 0xf114c11a
mov dword [ebp - 0x74], eax
lea eax, [ebp - 0x74]
push eax
call fcn.100880f0
mov esi, eax
mov byte [ebp - 0xb4], 0
lea eax, [ebp - 0xb4]
mov dword [ebp - 0x90], 0x42980000
push eax
push 0
lea eax, [ebp - 0x90]
mov dword [ebp - 0x8c], 0x41c00000
push eax
push 0x10150694
call fcn.10036b80
add esp, 0x10
mov byte [ebp - 0x6a], al
add esi, 4
push 4
push ecx
mov ecx, dword [ebp - 0xc8]
mov dword [esp], 0x3f800000
push dword [ebp - 0xb4]
push esi
call fcn.10092410
movss xmm0, dword [esi]
mov cl, 0x23
movss dword [ebp - 0x74], xmm0
mulss xmm0, dword [0x10150718]
cvttss2si eax, xmm0
sub cl, al
mov byte [ebp - 0x7a], cl
mov ecx, dword [ebp - 0xc8]
call fcn.10094920
movss xmm0, dword [ebp - 0x74]
lea eax, [ebp - 0x84]
mulss xmm0, dword [0x1014a938]
lea ecx, [ebp - 0x74]
mov dword [ebp - 0x94], 0xff
addss xmm0, dword [0x10150688]
movss dword [ebp - 0x74], xmm0
fmul dword [ebp - 0x74]
fstp dword [ebp - 0x74]
cvttss2si edx, dword [ebp - 0x74]
mov dword [ebp - 0x74], 0
test edx, edx
mov dword [ebp - 0x84], edx
cmovns ecx, eax
cmp edx, 0xff
lea eax, [ebp - 0x94]
cmovle eax, ecx
mov cl, byte [eax]
movzx eax, byte [ebp - 0x7a]
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movzx eax, cl
mulss xmm0, dword [0x10146640]
movss dword [ebp - 0x48], xmm0
movss dword [ebp - 0x44], xmm0
movss dword [ebp - 0x40], xmm0
movd xmm0, eax
lea eax, [ebp - 0x48]
cvtdq2ps xmm0, xmm0
push eax
mulss xmm0, dword [0x10146640]
movss dword [ebp - 0x3c], xmm0
call fcn.10011600
mov ecx, dword [ebp - 0xdc]
add esp, 4
movss xmm2, dword [ecx + 0xc]
movss xmm1, dword [ecx + 0x18]
movaps xmm0, xmm2
addss xmm0, dword [0x10150700]
addss xmm1, dword [ecx + 0x10]
addss xmm2, dword [0x1015066c]
movss dword [ebp - 0x90], xmm0
movaps xmm0, xmm1
subss xmm0, dword [0x101466b4]
movss dword [ebp - 0x8c], xmm0
subss xmm1, dword [0x1014a938]
push 0xf
push ecx
mov ecx, dword [ebp - 0xd4]
mov dword [esp], 0x40000000
push eax
lea eax, [ebp - 0x90]
movss dword [ebp - 0x78], xmm2
push eax
lea eax, [ebp - 0x78]
movss dword [ebp - 0x74], xmm1
push eax
call fcn.10021d40
movss xmm0, dword [ebp - 0xe8]
mulss xmm0, dword [0x101466e0]
mov dword [ebp - 0x48], 0x3f800000
mov dword [ebp - 0x44], 0x3f800000
mov dword [ebp - 0x40], 0x3f800000
cvttss2si eax, xmm0
movzx eax, al
movd xmm0, eax
lea eax, [ebp - 0x48]
cvtdq2ps xmm0, xmm0
push eax
mulss xmm0, dword [0x10146640]
movss dword [ebp - 0xa8], xmm0
movss dword [ebp - 0x3c], xmm0
call fcn.10011600
mov ecx, dword [ebp - 0xdc]
add esp, 4
movss xmm0, dword [ecx + 0xc]
addss xmm0, dword [0x1014be24]
push 0
push str.Copy
push eax
lea eax, [ebp - 0x90]
movss dword [ebp - 0x90], xmm0
movss xmm0, dword [ecx + 0x18]
addss xmm0, dword [ecx + 0x10]
mov ecx, dword [ebp - 0xd4]
push eax
subss xmm0, dword [0x101506f4]
movss dword [ebp - 0x8c], xmm0
call fcn.100221f0
cmp byte [ebp - 0x6a], 0
je 0x1008b0d3
movss xmm1, dword [0x101466e0]
movss xmm0, dword [edi + 0xc]
mulss xmm0, xmm1
cvttss2si eax, xmm0
movss xmm0, dword [edi + 8]
mulss xmm0, xmm1
mov dword [ebp - 0x74], eax
cvttss2si edx, xmm0
movss xmm0, dword [edi + 4]
mulss xmm0, xmm1
mov byte [ebp - 0xca], dl
cvttss2si ecx, xmm0
movss xmm0, dword [edi]
mulss xmm0, xmm1
mov byte [ebp - 0xcb], cl
cvttss2si eax, xmm0
mov byte [ebp - 0xcc], al
mov eax, dword [ebp - 0x74]
mov byte [ebp - 0xc9], al
lea eax, [ebp - 0x3b]
push dword [ebp - 0xcc]
push eax
call fcn.10076710
add esp, 8
lea ecx, [ebp - 0x7a]
push ecx
lea ecx, [ebp - 0x3b]
push ecx
push eax
lea ecx, [ebp - 0x68]
call fcn.10076240
cmp dword [ebp - 0x54], 0x10
lea eax, [ebp - 0x68]
push 0
cmovae eax, dword [ebp - 0x68]
mov dword [ebp - 0x74], eax
call dword [sym.imp.USER32.dll_OpenClipboard]
test eax, eax
je 0x1008b098
call dword [sym.imp.USER32.dll_EmptyClipboard]
mov edi, dword [sym.imp.KERNEL32.dll_GlobalAlloc]
push 0x104
push 0
call edi
push dword [ebp - 0x74]
mov esi, eax
push esi
call dword [sym.imp.KERNEL32.dll_lstrcpyA]
push esi
mov esi, dword [sym.imp.USER32.dll_SetClipboardData]
push 1
call esi
push 4
push 0
call edi
push eax
push 0x10
mov dword [eax], 0x19
call esi
call dword [sym.imp.USER32.dll_CloseClipboard]
mov edi, dword [ebp - 0xf0]
call fcn.10011400
mov ecx, dword [ebp - 0x54]
cmp ecx, 0x10
jb 0x1008b0d3
mov edx, dword [ebp - 0x68]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1008b0c9
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x1008b0c9
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push ecx
push edx
call fcn.100e100a
add esp, 8
call fcn.10012350
sub esp, 8
mov dword [esp + 4], 0xbf800000
mov dword [esp], 0
call fcn.1001c790
add esp, 8
call fcn.100105d0
mov ecx, dword [ebp - 0xd8]
xor edx, edx
mov ah, byte [ecx]
test ah, ah
je 0x1008b10c
inc edx
cmp byte [edx + ecx], 0
jne 0x1008b105
mov al, ah
sub al, 0x41
cmp al, 0x19
ja 0x1008b117
add ah, 0x20
mov byte [ebp - 0x6a], ah
test edx, edx
jne 0x1008b125
mov eax, 0x84222325
jmp 0x1008b141
push 1
lea eax, [edx - 1]
push eax
lea eax, [ecx + 1]
push eax
movsx eax, byte [ebp - 0x6a]
xor eax, 0x8601b7df
push eax
call fcn.10062120
add esp, 0x10
mov ecx, dword [ebp - 0xb0]
add eax, 0x57f57286
mov dword [ebp - 0x74], eax
lea eax, [ebp - 0x74]
push eax
call fcn.100880f0
mov esi, eax
mov byte [ebp - 0xb4], 0
lea eax, [ebp - 0xb4]
mov dword [ebp - 0x90], 0x42980000
push eax
push 0
lea eax, [ebp - 0x90]
mov dword [ebp - 0x8c], 0x41c00000
push eax
push str.pastebutton
call fcn.10036b80
add esp, 0x10
mov byte [ebp - 0x6a], al
add esi, 4
push 4
push ecx
mov ecx, dword [ebp - 0xc8]
mov dword [esp], 0x3f800000
push dword [ebp - 0xb4]
push esi
call fcn.10092410
movss xmm0, dword [esi]
mov cl, 0x23
movss dword [ebp - 0x74], xmm0
mulss xmm0, dword [0x10150718]
cvttss2si eax, xmm0
sub cl, al
mov byte [ebp - 0x7a], cl
mov ecx, dword [ebp - 0xc8]
call fcn.10094920
movss xmm0, dword [ebp - 0x74]
lea eax, [ebp - 0x84]
mulss xmm0, dword [0x1014a938]
lea ecx, [ebp - 0x74]
mov esi, dword [ebp - 0xdc]
mov dword [ebp - 0x94], 0xff
addss xmm0, dword [0x10150688]
movss dword [ebp - 0x74], xmm0
fmul dword [ebp - 0x74]
movss xmm0, dword [esi + 0xc]
fstp dword [ebp - 0x74]
cvttss2si edx, dword [ebp - 0x74]
mov dword [ebp - 0x74], 0
test edx, edx
mov dword [ebp - 0x84], edx
cmovns ecx, eax
cmp edx, 0xff
lea eax, [ebp - 0x94]
cmovle eax, ecx
mov cl, byte [eax]
movzx eax, byte [ebp - 0x7a]
movss dword [ebp - 0x94], xmm0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movzx eax, cl
mulss xmm0, dword [0x10146640]
movss dword [ebp - 0x48], xmm0
movss dword [ebp - 0x44], xmm0
movss dword [ebp - 0x40], xmm0
movd xmm0, eax
lea eax, [ebp - 0x48]
cvtdq2ps xmm0, xmm0
push eax
mulss xmm0, dword [0x10146640]
movss dword [ebp - 0x3c], xmm0
call fcn.10011600
movss xmm0, dword [ebp - 0x94]
add esp, 4
addss xmm0, dword [0x10150710]
movss xmm1, dword [esi + 0x18]
addss xmm1, dword [esi + 0x10]
movss dword [ebp - 0x90], xmm0
movaps xmm0, xmm1
subss xmm0, dword [0x101466b4]
movss dword [ebp - 0x8c], xmm0
movss xmm0, dword [ebp - 0x94]
addss xmm0, dword [0x10150704]
subss xmm1, dword [0x1014a938]
mov esi, dword [ebp - 0xd4]
push 0xf
push ecx
mov dword [esp], 0x40000000
mov ecx, esi
push eax
lea eax, [ebp - 0x90]
movss dword [ebp - 0x78], xmm0
push eax
lea eax, [ebp - 0x78]
movss dword [ebp - 0x74], xmm1
push eax
call fcn.10021d40
movss xmm0, dword [ebp - 0xa8]
lea eax, [ebp - 0x48]
push eax
mov dword [ebp - 0x48], 0x3f800000
mov dword [ebp - 0x44], 0x3f800000
mov dword [ebp - 0x40], 0x3f800000
movss dword [ebp - 0x3c], xmm0
call fcn.10011600
movss xmm0, dword [ebp - 0x94]
add esp, 4
addss xmm0, dword [0x10150708]
mov ecx, dword [ebp - 0xdc]
push 0
push str.Paste
movss dword [ebp - 0x90], xmm0
movss xmm0, dword [ecx + 0x18]
addss xmm0, dword [ecx + 0x10]
push eax
lea eax, [ebp - 0x90]
mov ecx, esi
push eax
subss xmm0, dword [0x101506f4]
movss dword [ebp - 0x8c], xmm0
call fcn.100221f0
cmp byte [ebp - 0x6a], 0
je 0x1008b982
xorps xmm0, xmm0
mov dword [ebp - 0x40], 0
movaps xmmword [ebp - 0x50], xmm0
push 0
mov dword [ebp - 0x3c], 0xf
mov byte [ebp - 0x50], 0
call dword [sym.imp.USER32.dll_OpenClipboard]
test eax, eax
je 0x1008b4fc
push 1
call dword [sym.imp.USER32.dll_GetClipboardData]
push eax
mov dword [ebp - 0x84], eax
call dword [sym.imp.KERNEL32.dll_GlobalLock]
mov esi, eax
mov dword [ebp - 0xa8], eax
lea eax, [esi + 1]
mov cl, byte [esi]
inc esi
test cl, cl
jne 0x1008b3d7
mov edx, dword [ebp - 0x3c]
sub esi, eax
mov dword [ebp - 0x94], esi
mov dword [ebp - 0x74], edx
cmp esi, edx
ja 0x1008b422
mov eax, dword [ebp - 0x94]
lea esi, [ebp - 0x50]
push eax
push dword [ebp - 0xa8]
cmp edx, 0x10
mov dword [ebp - 0x40], eax
cmovae esi, dword [ebp - 0x50]
push esi
call sub.VCRUNTIME140.dll_memmove
mov eax, dword [ebp - 0x94]
add esp, 0xc
mov byte [esi + eax], 0
jmp 0x1008b4ea
cmp esi, 0x7fffffff
ja 0x1008ba2a
mov ecx, esi
or ecx, 0xf
cmp ecx, 0x7fffffff
jbe 0x1008b442
mov ecx, 0x7fffffff
jmp 0x1008b46f
mov eax, edx
shr eax, 1
mov dword [ebp - 0x94], eax
mov eax, 0x7fffffff
sub eax, dword [ebp - 0x94]
cmp edx, eax
jbe 0x1008b462
mov ecx, 0x7fffffff
jmp 0x1008b46f
mov eax, dword [ebp - 0x94]
add eax, edx
cmp ecx, eax
cmovb ecx, eax
lea eax, [ecx + 1]
mov dword [ebp - 0xb0], ecx
push eax
lea ecx, [ebp - 0x50]
call fcn.10045ed0
mov ecx, dword [ebp - 0xb0]
push esi
push dword [ebp - 0xa8]
mov dword [ebp - 0x94], eax
push eax
mov dword [ebp - 0x40], esi
mov dword [ebp - 0x3c], ecx
call sub.VCRUNTIME140.dll_memcpy
mov eax, dword [ebp - 0x94]
add esp, 0xc
mov ecx, dword [ebp - 0x74]
mov byte [eax + esi], 0
cmp ecx, 0x10
jb 0x1008b4e7
mov edx, dword [ebp - 0x50]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1008b4d7
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1008b0c3
push ecx
push edx
call fcn.100e100a
mov eax, dword [ebp - 0x94]
add esp, 8
mov dword [ebp - 0x50], eax
push dword [ebp - 0x84]
call dword [sym.imp.KERNEL32.dll_GlobalUnlock]
call dword [sym.imp.USER32.dll_CloseClipboard]
cmp dword [ebp - 0x3c], 0x10
lea eax, [ebp - 0x50]
cmovae eax, dword [ebp - 0x50]
push eax
call dword [sym.imp.api_ms_win_crt_convert_l1_1_0.dll_atoll]
mov esi, dword [ebp - 0x3c]
mov ecx, eax
mov edx, eax
shr eax, 8
shr edx, 0x10
add esp, 4
mov dword [ebp - 0xb0], ecx
mov dword [ebp - 0x9c], ecx
mov dword [ebp - 0xa8], edx
mov dword [ebp - 0xc8], eax
cmp esi, 0x10
jb 0x1008b5ac
mov eax, dword [ebp - 0x50]
inc esi
mov dword [ebp - 0x94], eax
cmp esi, 0x1000
jb 0x1008b585
mov edi, dword [eax - 4]
add esi, 0x23
sub eax, edi
mov dword [ebp - 0x94], edi
mov edi, dword [ebp - 0xf0]
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1008b0c3
mov eax, dword [ebp - 0xc8]
mov dword [ebp - 0xb0], ecx
mov dword [ebp - 0xc8], eax
mov dword [ebp - 0xa8], edx
push esi
push dword [ebp - 0x94]
call fcn.100e100a
mov eax, dword [ebp - 0xc8]
add esp, 8
mov ecx, dword [ebp - 0xb0]
mov edx, dword [ebp - 0xa8]
mov dword [ebp - 0xc8], eax
movss xmm7, dword [0x10146640]
xorps xmm5, xmm5
movzx eax, cl
lea ecx, [ebp - 0x78]
movd xmm0, eax
mov eax, dword [ebp - 0xc8]
cvtdq2ps xmm0, xmm0
movzx eax, al
mulss xmm0, xmm7
cvtps2pd xmm2, xmm0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movzx eax, dl
mulss xmm0, xmm7
cvtps2pd xmm1, xmm0
movd xmm0, eax
lea eax, [ebp - 0x90]
cvtdq2ps xmm0, xmm0
movsd qword [ebp - 0x78], xmm1
mulss xmm0, xmm7
cvtps2pd xmm3, xmm0
comisd xmm3, xmm1
movsd qword [ebp - 0x90], xmm3
cmovbe eax, ecx
lea ecx, [ebp - 0x78]
movsd xmm0, qword [eax]
lea eax, [ebp - 0x90]
cmovbe eax, ecx
movsd qword [ebp - 0x78], xmm1
comisd xmm1, xmm3
maxsd xmm0, xmm2
movsd qword [ebp - 0x90], xmm3
movsd xmm6, qword [eax]
lea eax, [ebp - 0x90]
maxsd xmm6, xmm2
cmovbe eax, ecx
cvtpd2ps xmm0, xmm0
ucomisd xmm6, xmm5
movss dword [ebp - 0x84], xmm0
movaps xmm4, xmm6
movsd xmm0, qword [eax]
minsd xmm0, xmm2
lahf
subsd xmm4, xmm0
test ah, 0x44
jnp 0x1008b66c
divsd xmm4, xmm6
comisd xmm3, xmm1
lea eax, [ebp - 0x90]
lea ecx, [ebp - 0x98]
cvtpd2ps xmm0, xmm4
cmovbe eax, ecx
movsd qword [ebp - 0x98], xmm1
movss dword [ebp - 0x74], xmm0
movsd qword [ebp - 0x90], xmm3
movsd xmm0, qword [eax]
comisd xmm0, xmm2
ja 0x1008b6a8
movsd xmm6, xmm2
jmp 0x1008b6ac
movsd xmm6, xmm0
lea eax, [ebp - 0x90]
comisd xmm1, xmm3
cmovbe eax, ecx
movsd xmm0, qword [eax]
comisd xmm2, xmm0
ja 0x1008b6c9
movsd xmm4, xmm2
jmp 0x1008b6cd
movsd xmm4, xmm0
ucomisd xmm6, xmm4
lahf
test ah, 0x44
jnp 0x1008b755
ucomisd xmm6, xmm2
movaps xmm0, xmm6
subsd xmm0, xmm4
movsd xmm4, qword [0x1014a918]
lahf
divsd xmm4, xmm0
test ah, 0x44
jp 0x1008b702
subsd xmm1, xmm3
mulsd xmm1, xmm4
jmp 0x1008b734
ucomisd xmm6, xmm1
lahf
test ah, 0x44
jp 0x1008b721
movaps xmm1, xmm3
subsd xmm1, xmm2
mulsd xmm1, xmm4
addsd xmm1, qword [0x101506d0]
jmp 0x1008b734
subsd xmm2, xmm1
mulsd xmm2, xmm4
addsd xmm2, qword [0x101506d8]
movaps xmm1, xmm2
mulsd xmm1, qword [0x101506e0]
comisd xmm5, xmm1
jbe 0x1008b74a
addsd xmm1, qword [0x101506e8]
movaps xmm5, xmm1
mulsd xmm5, qword [0x101506c8]
movss xmm1, dword [ebp - 0x74]
lea eax, [ebp - 0x94]
cvtpd2ps xmm0, xmm5
lea ecx, [ebp - 0x74]
mov dword [ebp - 0x74], 0
movss xmm5, dword [0x10146694]
xorps xmm2, xmm2
comiss xmm0, xmm2
movss xmm3, dword [ebp - 0x84]
mov dword [ebp - 0x84], 0x3f800000
cmovae ecx, eax
movss dword [ebp - 0x94], xmm0
comiss xmm5, xmm0
lea eax, [ebp - 0x84]
movss dword [ebp - 0xb0], xmm1
movss dword [ebp - 0xa8], xmm3
cmovae eax, ecx
lea ecx, [ebp - 0x74]
comiss xmm1, xmm2
movss xmm0, dword [eax]
lea eax, [ebp - 0xb0]
mov dword [ebp - 0x84], 0x3f800000
cmovae ecx, eax
mov dword [ebp - 0x74], 0
comiss xmm5, xmm1
lea eax, [ebp - 0x84]
cmovae eax, ecx
lea ecx, [ebp - 0x74]
comiss xmm3, xmm2
movss xmm6, dword [eax]
lea eax, [ebp - 0xa8]
mov dword [ebp - 0x84], 0x3f800000
cmovae ecx, eax
mov dword [ebp - 0x74], 0
comiss xmm5, xmm3
lea eax, [ebp - 0x84]
cmovae eax, ecx
ucomiss xmm0, xmm5
movss xmm4, dword [eax]
lahf
test ah, 0x44
jnp 0x1008b82d
movaps xmm2, xmm0
mulss xmm2, dword [0x101466b4]
comiss xmm5, xmm2
cvttss2si eax, xmm2
xorps xmm0, xmm0
movaps xmm1, xmm2
movaps xmm3, xmm5
cvtsi2ss xmm0, eax
subss xmm1, xmm0
movaps xmm0, xmm1
mulss xmm0, xmm6
subss xmm3, xmm0
movaps xmm0, xmm5
subss xmm0, xmm1
movaps xmm1, xmm5
mulss xmm3, xmm4
mulss xmm0, xmm6
subss xmm1, xmm0
movaps xmm0, xmm5
subss xmm0, xmm6
movss xmm6, dword [0x101466e0]
mulss xmm1, xmm4
mulss xmm0, xmm4
mulss xmm4, xmm6
mulss xmm0, xmm6
cvttss2si ecx, xmm0
jbe 0x1008b898
mulss xmm1, xmm6
cvttss2si edx, xmm1
jmp 0x1008b924
movss xmm0, dword [0x101466a0]
comiss xmm0, xmm2
jbe 0x1008b8b3
mulss xmm3, xmm6
cvttss2si edx, xmm4
cvttss2si eax, xmm3
jmp 0x1008b928
movss xmm0, dword [0x101466a8]
comiss xmm0, xmm2
mov dword [ebp - 0x94], ecx
jbe 0x1008b8da
mov al, byte [ebp - 0x94]
mulss xmm1, xmm6
cvttss2si edx, xmm4
cvttss2si ecx, xmm1
jmp 0x1008b928
movss xmm0, dword [0x101466b0]
comiss xmm0, xmm2
jbe 0x1008b8fb
mov al, byte [ebp - 0x94]
mulss xmm3, xmm6
cvttss2si ecx, xmm4
cvttss2si edx, xmm3
jmp 0x1008b928
movss xmm0, dword [0x1014a930]
mov dl, cl
comiss xmm0, xmm2
cvttss2si eax, xmm4
jbe 0x1008b91a
mulss xmm1, xmm6
mov cl, al
cvttss2si eax, xmm1
jmp 0x1008b928
mulss xmm3, xmm6
cvttss2si eax, xmm3
mov cl, al
cvttss2si eax, xmm4
movzx eax, al
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movzx eax, dl
mulss xmm0, xmm7
movss dword [edi], xmm0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movzx eax, cl
mulss xmm0, xmm7
movss dword [edi + 4], xmm0
movd xmm0, eax
movzx eax, byte [ebp - 0x99]
cvtdq2ps xmm0, xmm0
mulss xmm0, xmm7
movss dword [edi + 8], xmm0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
mulss xmm0, xmm7
movss dword [edi + 0xc], xmm0
call fcn.10011400
mov esi, dword [ebp - 0xd4]
call fcn.10012350
mov eax, dword [ebp - 0xe0]
mov dword [esi + 0x24], eax
call fcn.10012350
cmp byte [ebp - 0x69], 0
je 0x1008ba0d
mov edx, dword [ebp - 0xfc]
lea ecx, [ebp - 0x30]
sub edx, 4
jb 0x1008b9c1
nop dword [eax]
mov eax, dword [ecx]
cmp eax, dword [edi]
jne 0x1008b9c6
add ecx, 4
add edi, 4
sub edx, 4
jae 0x1008b9b0
cmp edx, 0xfffffffc
je 0x1008ba09
mov al, byte [ecx]
cmp al, byte [edi]
jne 0x1008b9f3
cmp edx, 0xfffffffd
je 0x1008ba09
mov al, byte [ecx + 1]
cmp al, byte [edi + 1]
jne 0x1008b9f3
cmp edx, 0xfffffffe
je 0x1008ba09
mov al, byte [ecx + 2]
cmp al, byte [edi + 2]
jne 0x1008b9f3
cmp edx, 0xffffffff
je 0x1008ba09
mov al, byte [ecx + 3]
cmp al, byte [edi + 3]
je 0x1008ba09
mov eax, dword [ebp - 0xdc]
push dword [eax + 0x118]
call fcn.100162e0
add esp, 4
jmp 0x1008ba0d
mov byte [ebp - 0x69], 0
call fcn.1001a200
mov al, byte [ebp - 0x69]
mov ecx, dword [ebp - 4]
pop edi
xor ecx, ebp
pop esi
call fcn.100e1332
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret 0x10
call fcn.10045df0
int3