Function at 0x41f2a0
Capabilities:
Check for unmoving mouse cursor

Disassembly:
push ebp
mov ebp, esp
sub esp, 0xc
push ebx
mov ebx, dword [ebp + 8]
push esi
push edi
mov esi, edx
cmp esi, 0x10f
mov edi, ecx
mov dword [ebp - 4], edi
ja 0x41f4db
je 0x41f4ab
cmp esi, 0x7e
ja 0x41f337
je case.0x41f2df.5
lea eax, [esi - 5]
cmp eax, 0x4c
ja case.0x41f62c.525
movzx eax, byte [eax + 0x41f7bc]
jmp dword [eax*4 + 0x41f7a4]
mov dword [0x45375c], ebx
jmp case.0x41f62c.525
xor edx, edx
test bx, bx
push 0
setne dl
push 0
push 0
mov ecx, 6
mov dword [0x45cb4c], 0
call fcn.0041f9d0
jmp case.0x41f62c.525
mov eax, dword [0x453758]
test eax, eax
jne 0x41f32a
cmp esi, 0x7e
je case.0x41f62c.525
mov eax, dword [ebp + 0xc]
mov dword [0x45cb70], eax
jmp case.0x41f62c.525
lea eax, [esi - 0x100]
cmp eax, 0xe
ja case.0x41f62c.525
movzx ecx, byte [eax + 0x41f820]
jmp dword [ecx*4 + 0x41f80c]
mov eax, dword [0x45cb8c]
test eax, eax
je 0x41f388
mov edx, dword [ebp + 0xc]
mov eax, dword [ebp + 8]
push 0
push edx
push eax
jmp 0x41f37c
mov eax, dword [0x45cb8c]
test eax, eax
je 0x41f388
mov ecx, dword [ebp + 0xc]
mov edx, dword [ebp + 8]
push 0
push ecx
push edx
mov edx, esi
mov ecx, 3
call fcn.0041f9d0
pop edi
pop esi
mov eax, 1
pop ebx
mov esp, ebp
pop ebp
ret 8
cmp ebx, 0x20
jb case.0x41f62c.525
mov esi, ebx
and esi, 0xff
cmp esi, 0x80
jb 0x41f40f
call sym.War3.exe_Gw
cmp eax, 0x4e3
ja 0x41f3e6
je 0x41f3dd
cmp eax, 0x36a
je 0x41f3d4
cmp eax, 0x4e2
jne 0x41f40f
mov edx, dword [esi*4 + 0x4537e0]
jmp 0x41f411
mov edx, dword [esi*4 + 0x4543e0]
jmp 0x41f411
mov edx, dword [esi*4 + 0x453be0]
jmp 0x41f411
sub eax, 0x4e4
je 0x41f3fb
sub eax, 2
jne 0x41f40f
mov edx, dword [esi*4 + 0x453fe0]
jmp 0x41f411
cmp esi, 0xa0
jae 0x41f40f
and ebx, 0x7f
mov edx, dword [ebx*4 + 0x453760]
jmp 0x41f411
mov edx, ebx
movsx eax, word [ebp + 0xc]
push 0
push 0
push eax
mov ecx, 1
call fcn.0041f9d0
pop edi
pop esi
xor eax, eax
pop ebx
mov esp, ebp
pop ebp
ret 8
lea edx, [ebp + 8]
mov ecx, ebx
call fcn.0041fa40
test eax, eax
je case.0x41f62c.525
cmp esi, 0x100
je 0x41f455
cmp esi, 0x104
je 0x41f455
xor ecx, ecx
jmp 0x41f45a
mov ecx, 1
movzx edx, word [ebp + 0xc]
push 0
neg ecx
push 0
sbb ecx, ecx
push edx
mov edx, dword [ebp + 8]
add ecx, 8
call fcn.0041f9d0
cmp dword [ebp + 8], 0x303
jne 0x41f48d
mov ecx, 2
call sym.War3.exe_Gb
test eax, eax
jne case.0x41f62c.525
cmp dword [ebp + 8], 2
jne 0x41f4a0
mov eax, dword [0x45cb90]
test eax, eax
jne 0x41f55f
pop edi
pop esi
xor eax, eax
pop ebx
mov esp, ebp
pop ebp
ret 8
mov eax, dword [0x45cb8c]
test eax, eax
je 0x41f4cd
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp + 8]
push 0
push eax
push ecx
mov edx, 0x10f
mov ecx, 3
call fcn.0041f9d0
pop edi
pop esi
mov eax, 1
pop ebx
mov esp, ebp
pop ebp
ret 8
cmp esi, 0x20a
ja 0x41f616
je 0x41f5e6
lea eax, [esi - 0x112]
cmp eax, 0xf6
ja case.0x41f62c.525
movzx edx, byte [eax + 0x41f840]
jmp dword [edx*4 + 0x41f830]
lea eax, [ebp - 0xc]
push eax
call dword [sym.imp.user32.dll_GetCursorPos]
mov eax, dword [0x45cb88]
sub eax, 0
je 0x41f573
mov eax, dword [ebp - 0xc]
mov edx, dword [0x45cb68]
cmp eax, edx
mov ecx, dword [ebp - 8]
mov edi, dword [0x45cb6c]
jne 0x41f536
cmp ecx, edi
je 0x41f54f
push 0
sub ecx, edi
push ecx
sub eax, edx
push eax
xor edx, edx
mov ecx, 0xc
call fcn.0041f9d0
call fcn.0041f080
mov edi, dword [ebp - 4]
mov eax, dword [0x45cb90]
test eax, eax
je 0x41f78e
mov ecx, dword [ebp + 0xc]
push ecx
push ebx
mov edx, esi
mov ecx, edi
call eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 8
lea ecx, [ebp - 0xc]
push ecx
push edi
call dword [sym.imp.user32.dll_ScreenToClient]
mov edx, dword [ebp - 8]
mov eax, dword [ebp - 0xc]
push 0
push edx
push eax
xor edx, edx
mov ecx, 0xa
call fcn.0041f9d0
lea edx, [ebp - 0xc]
mov ecx, edi
call fcn.0041f160
jmp case.0x41f62c.525
mov ebx, dword [ebp + 8]
cmp ebx, 0xf060
jne 0x41f5c8
push 0
push 0
push 0
xor edx, edx
mov ecx, 5
call fcn.0041f9d0
pop edi
pop esi
xor eax, eax
pop ebx
mov esp, ebp
pop ebp
ret 8
mov eax, dword [0x45cb90]
test eax, eax
jne 0x41f55f
cmp ebx, 0xf100
jne 0x41f78e
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 8
mov eax, dword [ebp + 0xc]
mov ecx, eax
shr ecx, 0x10
movsx edx, cx
mov ecx, dword [ebp + 8]
push 0
shr ecx, 0x10
push edx
movsx eax, ax
movsx edx, cx
push eax
mov ecx, 0xb
call fcn.0041f9d0
pop edi
pop esi
xor eax, eax
pop ebx
mov esp, ebp
pop ebp
ret 8
lea eax, [esi - 0x20b]
cmp eax, 0x7a
ja case.0x41f62c.525
movzx edx, byte [eax + 0x41f950]
jmp dword [edx*4 + 0x41f938]
pop edi
pop esi
xor eax, eax
pop ebx
mov esp, ebp
pop ebp
ret 8
mov eax, dword [0x45cb8c]
test eax, eax
je 0x41f65a
mov eax, dword [ebp + 0xc]
push 0
push eax
push ebx
mov edx, esi
mov ecx, 3
call fcn.0041f9d0
mov dword [ebp + 0xc], 0
jmp case.0x41f62c.525
mov eax, dword [0x45cb60]
test eax, eax
jne case.0x41f62c.525
lea eax, [ebp - 0xc]
push eax
mov dword [0x45cb4c], 0
call dword [sym.imp.user32.dll_GetCursorPos]
lea ecx, [ebp - 0xc]
push ecx
push edi
call dword [sym.imp.user32.dll_ScreenToClient]
mov edx, dword [ebp - 8]
mov eax, dword [ebp - 0xc]
push 0
push edx
push eax
xor edx, edx
xor ecx, ecx
call fcn.0041f9d0
pop edi
pop esi
xor eax, eax
pop ebx
mov esp, ebp
pop ebp
ret 8
lea ecx, [ebp + 8]
push ecx
mov edx, ebx
mov ecx, esi
call fcn.0041fe90
test eax, eax
je case.0x41f62c.525
cmp esi, 0x201
je 0x41f763
cmp esi, 0x207
je 0x41f763
cmp esi, 0x204
je 0x41f763
cmp esi, 0x20b
je 0x41f763
mov ecx, dword [ebp + 8]
mov eax, dword [0x45cb4c]
not ecx
xor edi, edi
and eax, ecx
mov dword [0x45cb4c], eax
jne 0x41f718
mov dword [0x45cb60], 1
call dword [sym.imp.user32.dll_ReleaseCapture]
mov dword [0x45cb60], edi
mov eax, dword [ebp + 0xc]
mov edx, eax
shr edx, 0x10
movsx ecx, dx
push 0
push ecx
xor ecx, ecx
test edi, edi
sete cl
movsx edx, ax
push edx
mov edx, dword [ebp + 8]
lea ecx, [ecx*4 + 9]
call fcn.0041f9d0
cmp esi, 0x20b
je 0x41f4cd
cmp esi, 0x20c
je 0x41f4cd
pop edi
pop esi
xor eax, eax
pop ebx
mov esp, ebp
pop ebp
ret 8
mov eax, dword [0x45cb4c]
test eax, eax
mov edi, 1
jne 0x41f77b
mov edx, dword [ebp - 4]
push edx
call dword [sym.imp.user32.dll_SetCapture]
mov ecx, dword [0x45cb4c]
mov eax, dword [ebp + 8]
or ecx, eax
mov dword [0x45cb4c], ecx
jmp 0x41f718
mov edx, dword [ebp + 0xc]
push edx
push ebx
push esi
push edi
call dword [sym.imp.user32.dll_DefWindowProcA]
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 8