Function at 0x492c40
Capabilities:
Check for unmoving mouse cursor

Disassembly:
push 0x34
mov eax, 0x57c7c7
call fcn.00525310
mov esi, ecx
mov edi, dword [ebp + 8]
mov eax, dword [edi + 4]
mov ebx, 0x104
mov ecx, 0x200
cmp eax, ebx
ja 0x492c9f
je 0x492cc4
cmp eax, 0xa1
jb 0x492d0d
cmp eax, 0xa2
jbe 0x492cc4
cmp eax, 0xa3
jbe 0x492d0d
cmp eax, 0xa5
jbe 0x492cc4
cmp eax, 0xa6
jbe 0x492d0d
cmp eax, 0xa8
jbe 0x492cc4
cmp eax, 0x100
je 0x492cc4
jmp 0x492d0d
cmp eax, ecx
je 0x492cda
jbe 0x492d0d
cmp eax, 0x202
jbe 0x492cc4
cmp eax, 0x203
jbe 0x492d0d
cmp eax, 0x205
jbe 0x492cc4
add eax, 0xfffffdf9
cmp eax, 1
ja 0x492d0d
push edi
lea ecx, [esi + 0x54]
call fcn.0041c885
lea ecx, [esi + 0x150]
call fcn.004bb2f5
jmp 0x492d0d
push edi
lea ecx, [esi + 0x54]
call fcn.0041c885
cmp dword [edi + 8], 0
jne 0x492d0d
lea eax, [ebp - 0x1c]
push eax
call dword [sym.imp.USER32.dll_GetCursorPos]
lea eax, [ebp - 0x1c]
push eax
push dword [esi + 0x20]
call dword [sym.imp.USER32.dll_ScreenToClient]
push dword [ebp - 0x18]
mov ecx, esi
push dword [ebp - 0x1c]
call fcn.004928c3
cmp dword [edi + 4], 0x100
jne 0x492d3f
cmp dword [edi + 8], 9
jne 0x492d3f
lea eax, [esi + 0x2f8]
cmp dword [eax], 0
je 0x492d3f
mov eax, dword [eax]
mov edx, dword [eax]
mov ecx, eax
call dword [edx + 0xa8]
test eax, eax
je 0x492d3f
xor eax, eax
inc eax
jmp 0x49329a
cmp dword [edi + 4], ebx
jne 0x492e19
mov eax, dword [edi + 8]
cmp eax, 0x28
je 0x492d59
cmp eax, 0x27
jne 0x492e19
mov eax, dword [esi + 0x2f8]
test eax, eax
je 0x492e19
cmp dword [eax + 0x60], 0
je 0x492e19
test byte [eax + 0x28], 2
je 0x492e19
mov edx, dword [esi]
push 0
push eax
mov ecx, esi
call dword [edx + 0x158]
test eax, eax
je 0x492e19
mov ecx, dword [esi + 0x2f8]
mov eax, dword [ecx]
lea edx, [ebp - 0x10]
push edx
call dword [eax + 0x24]
and dword [ebp - 4], 0
lea ecx, [ebp + 0xb]
call fcn.00406680
mov ecx, dword [esi + 0x2f8]
mov edi, dword [ecx]
or edx, 0xffffffff
mov eax, edx
push edx
push eax
mov byte [ebp - 4], 1
call dword [edi + 0x3c]
mov ecx, dword [esi + 0x2f8]
mov eax, dword [ecx]
lea edx, [ebp - 0x14]
push edx
call dword [eax + 0x24]
push eax
lea eax, [ebp - 0x10]
push eax
call fcn.0040ebaa
pop ecx
pop ecx
mov ecx, dword [ebp - 0x14]
add ecx, 0xfffffff0
mov bl, al
call fcn.00402b90
test bl, bl
je 0x492dfd
push dword [esi + 0x2f8]
mov eax, dword [esi]
mov ecx, esi
call dword [eax + 0x14c]
mov byte [ebp - 4], 0
lea ecx, [ebp + 0xb]
call fcn.00406570
mov ecx, dword [ebp - 0x10]
add ecx, 0xfffffff0
call fcn.00402b90
jmp 0x492d37
mov ebx, dword [edi + 4]
mov edx, 0x100
cmp ebx, edx
jne 0x492e54
cmp dword [edi + 8], 0xd
jne 0x492e54
mov ecx, dword [esi + 0x2f8]
test ecx, ecx
je 0x492e54
cmp dword [ecx + 0x58], 0
je 0x492e54
cmp dword [ecx + 0x54], 0
jne 0x492e54
xor eax, eax
cmp dword [ecx + 0x5c], eax
sete al
push eax
call fcn.0048d6aa
jmp 0x492d37
mov eax, dword [esi + 0x2f8]
test eax, eax
je 0x493292
cmp dword [eax + 0x54], 0
je 0x493292
cmp dword [eax + 0x60], 0
je 0x493292
cmp ebx, edx
jne 0x493050
mov edx, dword [edi + 8]
mov ecx, edx
sub ecx, 0xd
je 0x492f5d
sub ecx, 0xe
je 0x492f4c
sub ecx, 0xb
je 0x492ec8
dec ecx
dec ecx
je 0x492ec8
cmp dword [eax + 0x64], 0
push edx
jne 0x492eb3
mov esi, eax
mov eax, dword [esi]
mov ecx, esi
call dword [eax + 0x54]
jmp 0x492d37
mov eax, dword [esi]
mov ecx, esi
call dword [eax + 0x184]
neg eax
sbb eax, eax
neg eax
jmp 0x49329a
cmp dword [eax + 0xa4], 1
jle 0x492f05
mov eax, dword [eax + 0xb8]
test eax, eax
je 0x492ee6
mov ecx, eax
call fcn.0048d4c3
test eax, eax
jne 0x492f05
mov esi, dword [esi + 0x2f8]
mov eax, dword [esi]
xor ecx, ecx
cmp dword [edi + 8], 0x26
setne cl
push ecx
mov ecx, esi
call dword [eax + 0xac]
jmp 0x492d37
mov eax, dword [esi + 0x2f8]
mov eax, dword [eax + 0xb4]
test eax, eax
je 0x492f18
mov eax, dword [eax + 0x20]
push eax
call dword [sym.imp.USER32.dll_IsWindow]
test eax, eax
je 0x492d37
push dword [edi + 0xc]
mov eax, dword [esi + 0x2f8]
push dword [edi + 8]
mov eax, dword [eax + 0xb4]
push 0x100
push dword [eax + 0x20]
call dword [sym.imp.USER32.dll_SendMessageA]
jmp 0x492d37
mov eax, dword [esi]
push 0
mov ecx, esi
call dword [eax + 0x160]
jmp 0x49304c
cmp dword [eax + 0x50], 0
je 0x492fd8
mov ecx, eax
mov eax, dword [ecx]
lea edx, [ebp - 0x10]
push edx
call dword [eax + 0x24]
lea ecx, [ebp + 0xb]
mov dword [ebp - 4], 2
call fcn.00406680
mov ecx, dword [esi + 0x2f8]
mov edi, dword [ecx]
or edx, 0xffffffff
mov eax, edx
push edx
push eax
mov byte [ebp - 4], 3
call dword [edi + 0x3c]
mov ecx, dword [esi + 0x2f8]
mov eax, dword [ecx]
lea edx, [ebp - 0x18]
push edx
call dword [eax + 0x24]
push eax
lea eax, [ebp - 0x10]
push eax
call fcn.0040ebaa
pop ecx
pop ecx
mov ecx, dword [ebp - 0x18]
add ecx, 0xfffffff0
mov bl, al
call fcn.00402b90
test bl, bl
je 0x492fcf
push dword [esi + 0x2f8]
mov eax, dword [esi]
mov ecx, esi
call dword [eax + 0x14c]
mov byte [ebp - 4], 2
jmp 0x492e01
mov eax, dword [eax + 0xb8]
test eax, eax
je 0x493034
mov ecx, eax
call fcn.0048d4c3
test eax, eax
je 0x493034
mov eax, dword [esi + 0x2f8]
mov eax, dword [eax + 0xb4]
test eax, eax
jne 0x493001
xor edi, edi
jmp 0x493004
mov edi, dword [eax + 0x20]
mov ecx, dword [esi + 0x2f8]
mov eax, dword [ecx]
call dword [eax + 0x48]
push edi
call dword [sym.imp.USER32.dll_IsWindow]
test eax, eax
je 0x492d37
mov eax, dword [esi + 0x2f8]
mov ecx, dword [eax + 0xb4]
call fcn.0041a14c
jmp 0x492d37
mov eax, dword [esi]
push 1
mov ecx, esi
call dword [eax + 0x160]
test eax, eax
jne 0x49304c
push 0xffffffffffffffff
call dword [sym.imp.USER32.dll_MessageBeep]
mov ecx, esi
jmp 0x49302a
cmp ebx, 0x200
jb 0x4932c8
cmp ebx, 0x20e
ja 0x4932c8
lea eax, [ebp - 0x30]
push eax
call dword [sym.imp.USER32.dll_GetCursorPos]
lea eax, [ebp - 0x30]
push eax
push dword [esi + 0x20]
call dword [sym.imp.USER32.dll_ScreenToClient]
mov eax, dword [esi + 0x2f8]
mov ebx, dword [sym.imp.USER32.dll_PtInRect]
add eax, 0xbc
cmp dword [eax], 0
je 0x49310d
mov eax, dword [eax]
lea ecx, [ebp - 0x24]
push ecx
push dword [eax + 0x20]
call dword [sym.imp.USER32.dll_GetClientRect]
lea eax, [ebp - 0x24]
push eax
mov eax, dword [esi + 0x2f8]
mov ecx, dword [eax + 0xbc]
push esi
call fcn.0043a271
push dword [ebp - 0x2c]
lea eax, [ebp - 0x24]
push dword [ebp - 0x30]
push eax
call ebx
test eax, eax
je 0x49310d
push 1
lea eax, [ebp - 0x30]
push eax
mov eax, dword [esi + 0x2f8]
push dword [eax + 0xbc]
mov ecx, esi
call fcn.00442510
movzx eax, word [ebp - 0x2c]
movzx ecx, word [ebp - 0x30]
shl eax, 0x10
or eax, ecx
push eax
mov eax, dword [esi + 0x2f8]
mov ecx, dword [eax + 0xbc]
push dword [edi + 8]
push dword [edi + 4]
call fcn.0040d9c4
jmp 0x492d37
mov eax, dword [esi + 0x2f8]
cmp dword [eax + 0x64], 0
mov ecx, dword [eax + 0xb4]
mov dword [ebp + 8], ecx
jne 0x493131
mov eax, dword [eax + 0xb4]
push dword [eax + 0x20]
call dword [sym.imp.USER32.dll_HideCaret]
lea eax, [ebp - 0x40]
push eax
mov eax, dword [ebp + 8]
push dword [eax + 0x20]
call dword [sym.imp.USER32.dll_GetClientRect]
mov ecx, dword [ebp + 8]
lea eax, [ebp - 0x40]
push eax
push esi
call fcn.0043a271
push dword [ebp - 0x2c]
lea eax, [ebp - 0x40]
push dword [ebp - 0x30]
push eax
call ebx
test eax, eax
je 0x493180
cmp dword [edi + 4], 0x203
jne 0x493180
push dword [ebp - 0x2c]
mov ecx, dword [esi + 0x2f8]
push dword [ebp - 0x30]
mov eax, dword [ecx]
call dword [eax + 0x44]
test eax, eax
jne 0x492d37
push dword [ebp - 0x2c]
lea eax, [ebp - 0x40]
push dword [ebp - 0x30]
push eax
call ebx
test eax, eax
je 0x4931a9
cmp dword [edi + 4], 0x204
jne 0x4931a9
mov eax, dword [esi + 0x2f8]
cmp dword [eax + 0x64], 0
je 0x492d37
push dword [ebp - 0x2c]
lea eax, [ebp - 0x40]
push dword [ebp - 0x30]
push eax
call ebx
test eax, eax
jne 0x4932a2
mov eax, dword [edi + 4]
cmp eax, 0x201
je 0x4931e0
cmp eax, 0xa1
je 0x4931e0
cmp eax, 0x204
je 0x4931e0
cmp eax, 0x207
jne 0x4932a2
push dword [ebp - 0x2c]
mov ecx, dword [esi + 0x2f8]
push dword [ebp - 0x30]
add ecx, 0x3c
call fcn.00412f8e
test eax, eax
je 0x49327e
mov ecx, dword [esi + 0x2f8]
mov eax, dword [ecx]
lea edx, [ebp - 0x14]
push edx
call dword [eax + 0x24]
lea ecx, [ebp + 0xb]
mov dword [ebp - 4], 4
call fcn.00406680
push dword [ebp - 0x2c]
mov eax, dword [esi]
push dword [ebp - 0x30]
mov ecx, esi
mov byte [ebp - 4], 5
call dword [eax + 0x15c]
mov ecx, dword [esi + 0x2f8]
mov eax, dword [ecx]
lea edx, [ebp - 0x28]
push edx
call dword [eax + 0x24]
push eax
lea eax, [ebp - 0x14]
push eax
call fcn.0040ebaa
pop ecx
pop ecx
mov ecx, dword [ebp - 0x28]
add ecx, 0xfffffff0
mov bl, al
call fcn.00402b90
test bl, bl
je 0x49326a
push dword [esi + 0x2f8]
mov eax, dword [esi]
mov ecx, esi
call dword [eax + 0x14c]
lea ecx, [ebp + 0xb]
mov byte [ebp - 4], 4
call fcn.00406570
mov ecx, dword [ebp - 0x14]
jmp 0x492e0c
mov eax, dword [esi]
push 1
mov ecx, esi
call dword [eax + 0x160]
test eax, eax
je 0x492d37
push edi
mov ecx, esi
call fcn.00412ff1
call fcn.005253e8
ret 4
push 1
lea eax, [ebp - 0x30]
push eax
push dword [ebp + 8]
mov ecx, esi
call fcn.00442510
movzx eax, word [ebp - 0x2c]
movzx ecx, word [ebp - 0x30]
shl eax, 0x10
or eax, ecx
mov ecx, dword [ebp + 8]
push eax
jmp 0x4930fd
xor eax, eax
jmp 0x49329a