Function at 0x4610cb
Capabilities:
Check for unmoving mouse cursor

Disassembly:
push ebp
mov ebp, esp
add esp, 0xfffff77c
push ebx
push esi
push edi
mov esi, dword [ebp + 0x18]
push dword [ebp + 8]
call fcn.0045d5fc
mov ebx, eax
test ebx, ebx
jne 0x4610ef
xor eax, eax
jmp 0x4619f6
cmp dword [ebx + 0x164], 0
je 0x4610ff
xor eax, eax
jmp 0x4619f6
xor edx, edx
mov dword [ebp - 0x10], edx
mov dword [ebp - 0x14], edx
cmp dword [ebp + 0x1c], 1
je 0x46111d
cmp dword [ebp + 0x1c], 3
je 0x46111d
cmp dword [ebp + 0x1c], 4
jne 0x4612a3
movzx eax, si
mov dword [ebp - 0x14], eax
shr esi, 0x10
and si, 0xffff
movzx ecx, si
mov dword [ebp - 0x10], ecx
mov esi, dword [ebx + 0x1000]
test esi, esi
je 0x461235
push dword [esi + 0xc]
push dword [ebp + 8]
call sub.USER32.dll_GetDlgItem
mov edi, eax
test edi, edi
je 0x461227
cmp dword [esi + 0x11c], 0
je 0x461227
push edi
call sub.USER32.dll_IsWindowEnabled
test eax, eax
je 0x461227
push edi
push ebx
call fcn.0045d661
test eax, eax
je 0x461227
lea eax, [ebp - 0x40]
push eax
push edi
call sub.USER32.dll_GetWindowRect
push 2
lea edx, [ebp - 0x40]
push edx
push dword [ebx + 0xc8]
push 0
call sub.USER32.dll_MapWindowPoints
cmp dword [esi + 4], 0
je 0x46120c
mov eax, dword [ebp - 0x40]
mov dword [ebp - 0x18], eax
mov edx, dword [ebp - 0x3c]
mov dword [ebp - 0x1c], edx
mov ecx, dword [ebp - 0x38]
sub ecx, eax
mov dword [ebp - 0x20], ecx
mov eax, dword [ebp - 0x34]
sub eax, edx
mov dword [ebp - 0x24], eax
lea edx, [ebp - 0x58]
push edx
push 0x18
push dword [esi + 4]
call sub.GDI32.dll_GetObjectA
push dword [esi + 0x120]
lea ecx, [ebp - 0x24]
push ecx
lea eax, [ebp - 0x20]
push eax
lea edx, [ebp - 0x1c]
push edx
lea ecx, [ebp - 0x18]
push ecx
lea eax, [ebp - 0x40]
push eax
lea edx, [ebp - 0x58]
push edx
call fcn.0042f959
mov ecx, dword [ebp - 0x18]
mov dword [ebp - 0x40], ecx
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x3c], eax
mov edx, dword [ebp - 0x18]
add edx, dword [ebp - 0x20]
mov dword [ebp - 0x38], edx
mov ecx, dword [ebp - 0x1c]
add ecx, dword [ebp - 0x24]
mov dword [ebp - 0x34], ecx
push dword [ebp - 0x10]
push dword [ebp - 0x14]
lea edx, [ebp - 0x40]
push edx
call sub.USER32.dll_PtInRect
test eax, eax
je 0x461227
mov ecx, dword [esi + 0xc]
mov dword [ebp + 0x10], ecx
jmp 0x461235
mov esi, dword [esi + 0x124]
test esi, esi
jne 0x46113f
test esi, esi
jne 0x4612a3
mov esi, dword [ebx + 0xfe8]
test esi, esi
je 0x46125d
cmp dword [esi + 0x1c], 0
je 0x461256
push dword [esi + 0xc]
call sub.USER32.dll_GetDlgCtrlID
mov dword [ebp + 0x10], eax
jmp 0x46125d
mov esi, dword [esi + 0x40]
test esi, esi
jne 0x461243
test esi, esi
jne 0x46126e
cmp dword [ebp + 0x1c], 1
jne 0x46126e
xor eax, eax
jmp 0x4619f6
test esi, esi
jne 0x4612a3
cmp dword [ebp + 0x1c], 3
jne 0x4612a3
cmp dword [ebp + 0xc], 0x200
jne 0x4612a3
push 1
push dword [ebp - 0x10]
push dword [ebp - 0x14]
push dword [ebx + 0xc8]
call sub.USER32.dll_ChildWindowFromPointEx
mov edi, eax
test edi, edi
je 0x4612a3
push edi
call sub.USER32.dll_GetDlgCtrlID
mov dword [ebp + 0x10], eax
xor eax, eax
mov dword [ebp - 0xc], eax
mov dword [ebp - 4], 1
cmp dword [0x56cdd8], 0
je 0x461942
xor edx, edx
mov dword [ebp - 8], edx
cmp dword [ebp + 0x1c], 6
jne 0x4612f0
cmp dword [ebp + 0xc], 6
jne 0x4618a6
lea ecx, [ebx + 0xf0]
mov edi, ecx
mov esi, 0x5636f3
mov eax, edi
movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
movsb byte es:[edi], byte [esi]
mov dword [ebp - 8], 1
jmp 0x4618a6
cmp dword [ebp + 0x1c], 3
jne 0x461419
cmp dword [ebp + 0xc], 0x200
jne 0x461321
lea edx, [ebx + 0xf0]
mov edi, edx
mov esi, 0x5636fb
mov eax, edi
movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
mov dword [ebp - 8], 1
jmp 0x4618a6
cmp dword [ebp + 0xc], 0x201
jne 0x461373
lea edx, [ebp - 0x14]
push edx
call sub.USER32.dll_GetCursorPos
lea ecx, [ebp - 0x14]
push ecx
push dword [ebx + 0xc8]
call sub.USER32.dll_ScreenToClient
mov eax, dword [ebp - 0x14]
mov dword [ebx + 0xff4], eax
mov edx, dword [ebp - 0x10]
mov dword [ebx + 0xff8], edx
lea ecx, [ebx + 0xf0]
mov edi, ecx
mov esi, 0x563702
mov eax, edi
movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
movsb byte es:[edi], byte [esi]
mov dword [ebp - 8], 1
jmp 0x4618a6
cmp dword [ebp + 0xc], 0x203
jne 0x4613c5
lea edx, [ebp - 0x14]
push edx
call sub.USER32.dll_GetCursorPos
lea ecx, [ebp - 0x14]
push ecx
push dword [ebx + 0xc8]
call sub.USER32.dll_ScreenToClient
mov eax, dword [ebp - 0x14]
mov dword [ebx + 0xff4], eax
mov edx, dword [ebp - 0x10]
mov dword [ebx + 0xff8], edx
lea ecx, [ebx + 0xf0]
mov edi, ecx
mov esi, 0x56370a
mov eax, edi
movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
movsb byte es:[edi], byte [esi]
mov dword [ebp - 8], 1
jmp 0x4618a6
cmp dword [ebp + 0xc], 0x202
jne 0x4613ed
lea edx, [ebx + 0xf0]
mov edi, edx
mov esi, 0x563712
mov eax, edi
movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
movsb byte es:[edi], byte [esi]
mov dword [ebp - 8], 1
jmp 0x4618a6
cmp dword [ebp + 0xc], 0x204
jne 0x4618a6
lea edx, [ebx + 0xf0]
mov edi, edx
mov esi, 0x56371a
mov eax, edi
movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
movsb byte es:[edi], byte [esi]
mov dword [ebp - 8], 1
jmp 0x4618a6
cmp dword [ebp + 0x1c], 4
jne 0x461473
cmp dword [ebp + 0xc], 0x202
jne 0x4618a6
mov edx, dword [ebx + 0xff4]
cmp edx, dword [ebp - 0x14]
jne 0x461442
mov ecx, dword [ebx + 0xff8]
cmp ecx, dword [ebp - 0x10]
je 0x46145a
lea eax, [ebx + 0xf0]
mov edi, eax
mov esi, 0x563722
mov eax, edi
movsd dword es:[edi], dword [esi]
movsb byte es:[edi], byte [esi]
mov dword [ebp - 8], 1
mov dword [ebx + 0xff4], 0xffffffff
mov dword [ebx + 0xff8], 0xffffffff
jmp 0x4618a6
cmp dword [ebp + 0x1c], 5
jne 0x461497
lea edx, [ebx + 0xf0]
mov edi, edx
mov esi, 0x563728
mov eax, edi
movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
mov dword [ebp - 8], 1
jmp 0x4618a6
push dword [ebp + 0x10]
push dword [ebp + 8]
call sub.USER32.dll_GetDlgItem
mov edi, eax
test edi, edi
je 0x461870
push 0x32
lea eax, [ebp - 0x8c]
push eax
call fcn.0042e6b1
push 0x28
lea edx, [ebp - 0x8c]
push edx
push edi
call sub.USER32.dll_GetClassNameA
cmp dword [ebp + 0x1c], 0
jle 0x4614ee
lea ecx, [ebx + 0xf0]
mov edi, ecx
mov esi, 0x56372f
mov eax, edi
movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
movsb byte es:[edi], byte [esi]
mov dword [ebp - 8], 1
jmp 0x4618a6
lea edx, [ebp - 0x8c]
push edx
call fcn.0047880e
test eax, eax
je 0x461528
cmp dword [ebp + 0xc], 0x300
jne 0x4618a6
lea ecx, [ebx + 0xf0]
mov edi, ecx
mov esi, 0x563737
mov eax, edi
movsd dword es:[edi], dword [esi]
movsb byte es:[edi], byte [esi]
mov dword [ebp - 8], 1
jmp 0x4618a6
push 0x56373d
lea edx, [ebp - 0x8c]
push edx
call fcn.0054e450
add esp, 8
test eax, eax
jne 0x46158e
cmp dword [ebp + 0xc], 2
jne 0x461565
lea ecx, [ebx + 0xf0]
mov edi, ecx
mov esi, 0x563746
mov eax, edi
movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
movsb byte es:[edi], byte [esi]
mov dword [ebp - 8], 1
jmp 0x4618a6
cmp dword [ebp + 0xc], 1
jne 0x4618a6
lea edx, [ebx + 0xf0]
mov edi, edx
mov esi, 0x56374e
mov eax, edi
movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
movsb byte es:[edi], byte [esi]
mov dword [ebp - 8], 1
jmp 0x4618a6
push 0x563756
lea edx, [ebp - 0x8c]
push edx
call fcn.0054e450
add esp, 8
test eax, eax
jne 0x461682
push 0xfffffffffffffff0
push edi
call sub.USER32.dll_GetWindowLongA
movzx eax, ax
test al, 1
je 0x4615c4
test al, 2
jne 0x4615c4
mov eax, 1
jmp 0x4615d5
test al, 1
jne 0x4615d3
test al, 2
je 0x4615d3
mov eax, 1
jmp 0x4615d5
xor eax, eax
cmp dword [ebp + 0xc], 2
jne 0x4615fa
lea edx, [ebx + 0xf0]
mov edi, edx
mov esi, 0x563760
mov eax, edi
movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
movsb byte es:[edi], byte [esi]
mov dword [ebp - 8], 1
jmp 0x4618a6
cmp dword [ebp + 0xc], 1
jne 0x46165b
test eax, eax
je 0x46163c
push 0
push 0
push 0x147
push edi
call sub.USER32.dll_SendMessageA
cmp eax, 0xffffffff
je 0x46163c
mov esi, dword [ebx + 0x164]
mov dword [ebx + 0x164], 1
push 0
push eax
push 0x14e
push edi
call sub.USER32.dll_SendMessageA
mov dword [ebx + 0x164], esi
lea eax, [ebx + 0xf0]
mov edi, eax
mov esi, 0x563768
mov eax, edi
movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
movsb byte es:[edi], byte [esi]
mov dword [ebp - 8], 1
jmp 0x4618a6
cmp dword [ebp + 0xc], 5
jne 0x4618a6
lea edx, [ebx + 0xf0]
mov edi, edx
mov esi, 0x563770
mov eax, edi
movsd dword es:[edi], dword [esi]
movsb byte es:[edi], byte [esi]
mov dword [ebp - 8], 1
jmp 0x4618a6
push 0x563776
lea edx, [ebp - 0x8c]
push edx
call fcn.0054e450
add esp, 8
test eax, eax
jne 0x46174d
cmp dword [ebp + 0xc], 0
jne 0x4618a6
push 0xfffffffffffffff0
push edi
call sub.USER32.dll_GetWindowLongA
movzx eax, ax
test al, 0x20
je 0x4616ba
and eax, 0xffffffdf
test ah, 0x10
je 0x4616c4
and eax, 0xffffefff
test ah, 0x20
je 0x4616ce
and eax, 0xffffdfff
test ah, 0x80
je 0x4616d8
and eax, 0xffff7fff
cmp eax, 9
jle 0x4616e2
lea edx, [eax - 9]
sub eax, edx
sub eax, 4
jb 0x4616f9
je 0x461718
dec eax
sub eax, 2
jb 0x4616f9
sub eax, 2
je 0x461718
jmp 0x4618a6
lea ecx, [ebx + 0xf0]
mov edi, ecx
mov esi, 0x56377e
mov eax, edi
movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
movsb byte es:[edi], byte [esi]
mov dword [ebp - 8], 1
jmp 0x4618a6
push dword [ebp + 0x10]
push dword [ebx + 0xc8]
call sub.USER32.dll_IsDlgButtonChecked
test eax, eax
je 0x4618a6
lea edx, [ebx + 0xf0]
mov edi, edx
mov esi, 0x563786
mov eax, edi
movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
movsb byte es:[edi], byte [esi]
mov dword [ebp - 8], 1
jmp 0x4618a6
push 0x56378e
lea edx, [ebp - 0x8c]
push edx
call fcn.0054e450
add esp, 8
test eax, eax
jne 0x4618a6
push 2
push edi
call sub.USER32.dll_GetScrollPos
mov dword [ebp - 0x28], eax
lea ecx, [ebp - 0x30]
push ecx
lea eax, [ebp - 0x2c]
push eax
push 2
push edi
call sub.USER32.dll_GetScrollRange
xor esi, esi
movzx eax, word [ebp + 0x14]
cmp eax, 7
ja case.default.0x46178f
jmp dword [eax*4 + 0x461796]
mov esi, 0xffff0600
jmp case.default.0x46178f
mov esi, 0xfa00
jmp case.default.0x46178f
or esi, 0xffffffff
jmp case.default.0x46178f
mov esi, 1
jmp case.default.0x46178f
mov esi, 0xfffffffb
jmp case.default.0x46178f
mov esi, 5
jmp case.default.0x46178f
mov esi, dword [ebp + 0x14]
shr esi, 0x10
and si, 0xffff
movzx esi, si
sub esi, dword [ebp - 0x28]
jmp case.default.0x46178f
mov esi, dword [ebp + 0x14]
shr esi, 0x10
and si, 0xffff
movzx esi, si
sub esi, dword [ebp - 0x28]
mov eax, dword [ebp - 0x28]
neg eax
mov edx, dword [ebp - 0x30]
sub edx, dword [ebp - 0x28]
cmp esi, edx
jge 0x461815
mov ecx, esi
jmp 0x46181b
mov ecx, dword [ebp - 0x30]
sub ecx, dword [ebp - 0x28]
cmp eax, ecx
jle 0x461826
mov eax, dword [ebp - 0x28]
neg eax
jmp 0x46183a
mov edx, dword [ebp - 0x30]
sub edx, dword [ebp - 0x28]
cmp esi, edx
jge 0x461834
mov eax, esi
jmp 0x46183a
mov eax, dword [ebp - 0x30]
sub eax, dword [ebp - 0x28]
mov esi, eax
test esi, esi
je 0x4618a6
lea edx, [ebx + 0xf0]
push esi
push edi
mov edi, edx
mov esi, 0x563799
mov eax, edi
movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
movsb byte es:[edi], byte [esi]
pop edi
pop esi
mov dword [ebp - 8], 1
add dword [ebp - 0x28], esi
push 1
push dword [ebp - 0x28]
push 2
push edi
call sub.USER32.dll_SetScrollPos
jmp 0x4618a6
push dword [ebx + 0xc8]
call sub.USER32.dll_GetMenu
push 0
push 0
push 0
push dword [ebp + 0x10]
push eax
call sub.USER32.dll_GetMenuStringA
test eax, eax
jle 0x4618a6
lea edx, [ebx + 0xf0]
mov edi, edx
mov esi, 0x5637a1
mov eax, edi
movsd dword es:[edi], dword [esi]
movsb byte es:[edi], byte [esi]
mov dword [ebp - 8], 1
cmp dword [ebp - 8], 0
je 0x461942
cmp dword [ebp + 0x10], 0x1770
jl 0x4618ca
mov edx, dword [ebp + 0x10]
add edx, 0xffffe890
mov dword [ebx + 0x154], edx
jmp 0x4618d2
xor ecx, ecx
mov dword [ebx + 0x154], ecx
push 0x7f8
push 0
lea eax, [ebp - 0x884]
push eax
call fcn.0054e10c
add esp, 0xc
mov dword [ebp - 0x870], ebx
lea edx, [ebp - 0x884]
push edx
push 0
push 0
push 0x14
push 0x5637a7
push 0
push 0
push dword [ebx + 0x1004]
call fcn.004fecf0
test eax, eax
jne 0x461918
xor ecx, ecx
mov dword [ebp - 4], ecx
push ebx
call fcn.0045d5d2
test eax, eax
jne 0x46192c
mov eax, 1
jmp 0x4619f6
mov byte [ebx + 0xf0], 0
xor edx, edx
mov dword [ebx + 0x154], edx
mov dword [ebp - 0xc], 1
cmp dword [ebp + 0x1c], 3
jne 0x461956
cmp dword [ebp + 0xc], 0x200
jne 0x461956
xor ecx, ecx
mov dword [ebp + 0x10], ecx
cmp dword [ebp + 0x10], 0
je 0x4619f3
cmp dword [ebp - 4], 0
je 0x4619c2
mov eax, dword [ebp + 0x10]
cmp eax, dword [ebx + 0xe0]
jne 0x4619c2
mov eax, dword [ebx + 0xe8]
test eax, eax
je 0x46199a
cmp dword [ebx + 0xec], 0
je 0x46199a
push dword [ebx + 0xec]
push 0x3b5
push 0xd
push eax
push dword [ebp + 8]
call sub.USER32.dll_SendDlgItemMessageA
cmp dword [ebx + 0x158], 0
je 0x4619af
push 1
push dword [ebp + 8]
call sub.USER32.dll_EndDialog
jmp 0x4619f3
push 0
push 0
push 0x8096
push dword [ebp + 8]
call sub.USER32.dll_PostMessageA
jmp 0x4619f3
mov edx, dword [ebp + 0x10]
cmp edx, dword [ebx + 0xe4]
jne 0x4619f3
cmp dword [ebx + 0x158], 0
je 0x4619e2
push 1
push dword [ebp + 8]
call sub.USER32.dll_EndDialog
jmp 0x4619f3
push 0
push 0
push 0x8096
push dword [ebp + 8]
call sub.USER32.dll_PostMessageA
mov eax, dword [ebp - 0xc]
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0x18