Function at 0x41549c
Capabilities:
Check for unmoving mouse cursor
Hide graphical window

Disassembly:
push ebp
mov ebp, esp
add esp, 0xffffffe8
push ebx
push esi
push edi
cmp dword [0x55d438], 0
jne 0x415985
mov dword [0x55d438], 1
mov eax, dword [0x55d434]
test eax, eax
je 0x4154d7
push eax
call fcn.0051df69
test eax, eax
jne 0x4154d7
xor edx, edx
mov dword [0x55d434], edx
xor esi, esi
xor ebx, ebx
lea eax, [ebp - 8]
push eax
call sub.USER32.dll_GetCursorPos
cmp dword [0x56cef0], 0
je 0x415500
push dword [ebp - 4]
push dword [ebp - 8]
call sub.USER32.dll_WindowFromPoint
cmp eax, dword [0x55d2f8]
je 0x415505
mov ebx, 1
lea eax, [ebp - 8]
push eax
call sub.USER32.dll_GetCursorPos
lea edx, [ebp - 8]
push edx
push dword [0x55d2f8]
call sub.USER32.dll_ScreenToClient
test ebx, ebx
jne 0x415584
mov ebx, dword [0x56cee0]
test ebx, ebx
je 0x415584
push esi
lea esi, [ebx + 0x9dc]
lea edi, [ebp - 0x18]
mov ecx, 4
rep movsd dword es:[edi], dword [esi]
pop esi
inc dword [ebp - 0x10]
add dword [ebp - 0xc], 2
cmp dword [ebx + 0x9d0], 0
je 0x41557a
push dword [ebp - 4]
push dword [ebp - 8]
lea edx, [ebp - 0x18]
push edx
call sub.USER32.dll_PtInRect
test eax, eax
je 0x41557a
push ebx
call fcn.00416b1f
mov edi, eax
test edi, edi
je 0x41557a
mov dword [ebx + 0x9f0], 1
mov esi, ebx
jmp 0x415584
mov ebx, dword [ebx + 0xd18]
test ebx, ebx
jne 0x41552b
mov ebx, dword [0x56cee0]
test ebx, ebx
je 0x4155bc
cmp dword [ebx + 0x9d0], 0
je 0x4155b2
cmp dword [ebx + 0x9f0], 0
je 0x4155b2
cmp esi, ebx
je 0x4155b2
xor eax, eax
mov dword [ebx + 0x9f0], eax
push ebx
call fcn.00417312
mov ebx, dword [ebx + 0xd18]
test ebx, ebx
jne 0x41558e
mov ebx, esi
push ebx
call fcn.0051df69
test eax, eax
jne 0x4155ca
xor ebx, ebx
cmp dword [0x56cef0], 0
je 0x415927
test ebx, ebx
je 0x415927
cmp dword [0x55d304], 0
jne 0x415927
cmp dword [0x56c904], 0
je 0x415927
mov eax, dword [ebx]
cmp eax, dword [0x56cef4]
jne 0x41561d
push dword [ebx]
call sub.USER32.dll_IsIconic
test eax, eax
jne 0x41561d
push dword [ebx]
call sub.USER32.dll_IsWindowVisible
test eax, eax
jne 0x415927
cmp dword [ebx + 0x9f4], 0
jne 0x41568e
cmp dword [0x56c8fc], 0
je 0x415634
call fcn.00513f38
cmp ebx, dword [0x55d434]
je 0x41565c
cmp dword [0x55d428], 0
je 0x41567b
xor edx, edx
mov dword [0x55d428], edx
push 0x7e
push dword [0x55d2f8]
call sub.USER32.dll_KillTimer
jmp 0x41567b
cmp dword [0x55d428], 0
jne 0x41567b
push 0
push 0x32
push 0x7e
push dword [0x55d2f8]
call sub.USER32.dll_SetTimer
mov dword [0x55d428], eax
mov dword [0x55d434], ebx
xor ecx, ecx
mov dword [0x55d438], ecx
jmp 0x415985
cmp dword [0x56c8fc], 0
je 0x4156ca
cmp ebx, dword [0x55d434]
jne 0x4156ca
cmp dword [0x55d428], 0
jne 0x4156be
push 0
push 0x32
push 0x7e
push dword [0x55d2f8]
call sub.USER32.dll_SetTimer
mov dword [0x55d428], eax
xor eax, eax
mov dword [0x55d438], eax
jmp 0x415985
cmp dword [0x55d428], 0
je 0x4156e8
xor edx, edx
mov dword [0x55d428], edx
push 0x7e
push dword [0x55d2f8]
call sub.USER32.dll_KillTimer
cmp dword [0x55d42c], 0
je 0x415706
xor ecx, ecx
mov dword [0x55d42c], ecx
push 0x7f
push dword [0x55d2f8]
call sub.USER32.dll_KillTimer
cmp dword [ebp + 8], 0
jne 0x415740
mov eax, dword [0x56c8fc]
test eax, eax
je 0x41571d
push 0
push eax
call sub.USER32.dll_ShowWindow
push 0
push 0x32
push 0x7f
push dword [0x55d2f8]
call sub.USER32.dll_SetTimer
mov dword [0x55d42c], eax
xor edx, edx
mov dword [0x55d438], edx
jmp 0x415985
mov dword [0x55d434], ebx
push 0
push 0x64
push 0x7f
push dword [0x55d2f8]
call sub.USER32.dll_SetTimer
mov dword [0x55d42c], eax
mov eax, dword [0x55d2ec]
cmp eax, 3
jne 0x415786
add dword [ebp - 8], 0xa
add dword [ebp - 4], 0xf
mov eax, dword [ebx + 0x9e0]
cmp eax, dword [ebp - 4]
jl 0x415809
inc eax
mov dword [ebp - 4], eax
jmp 0x415809
cmp eax, 2
jne 0x4157d1
add dword [ebp - 8], 0xa
add dword [ebp - 4], 0xa
mov eax, dword [ebx + 0x9dc]
cmp eax, dword [ebp - 8]
jl 0x4157a2
inc eax
mov dword [ebp - 8], eax
mov eax, dword [ebx + 0x9e4]
cmp eax, dword [ebp - 8]
jg 0x4157b1
dec eax
mov dword [ebp - 8], eax
mov eax, dword [ebx + 0x9e0]
cmp eax, dword [ebp - 4]
jl 0x4157c0
inc eax
mov dword [ebp - 4], eax
mov eax, dword [ebx + 0x9e8]
cmp eax, dword [ebp - 4]
jg 0x415809
dec eax
mov dword [ebp - 4], eax
jmp 0x415809
dec eax
jne 0x4157ed
add dword [ebp - 8], 0xa
add dword [ebp - 4], 8
mov eax, dword [ebx + 0x9e4]
cmp eax, dword [ebp - 8]
jg 0x415809
dec eax
mov dword [ebp - 8], eax
jmp 0x415809
sub dword [ebp - 8], 5
mov edx, dword [0x55d2c8]
sub dword [ebp - 4], edx
mov eax, dword [ebx + 0x9dc]
cmp eax, dword [ebp - 8]
jl 0x415809
inc eax
mov dword [ebp - 8], eax
lea edx, [ebp - 8]
push edx
push dword [0x55d2f8]
call sub.USER32.dll_ClientToScreen
push ebx
call fcn.00416b1f
mov edi, eax
test edi, edi
je 0x41591d
push 0x3e7
push 0x578620
call fcn.0042e3f0
mov eax, dword [ebx + 0x6bc]
sub eax, 1
jb 0x41584c
sub eax, 2
je 0x415881
jmp 0x4158d4
push dword [ebx + 0xb6c]
push 1
call fcn.004bd4a6
push edi
mov edi, eax
mov esi, 0x578620
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
pop edi
jmp 0x4158d4
cmp dword [ebx + 0x6c0], 1
jne 0x4158b0
push dword [ebx]
call fcn.00501b23
test eax, eax
je 0x4158d4
push dword [eax + 0x35c]
push edi
push 0x55d46c
push 0x578620
call sub.USER32.dll_wsprintfA
add esp, 0x10
jmp 0x4158d4
push dword [ebx]
call fcn.0048bf7c
test eax, eax
je 0x4158d4
push dword [eax + 0x358]
push edi
push str._s__lu__
push 0x578620
call sub.USER32.dll_wsprintfA
add esp, 0x10
cmp byte [0x578620], 0
jne 0x415901
push edi
mov esi, 0x578620
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
pop edi
push 0x578620
push 2
push 0
movzx eax, word [ebp - 8]
movzx edx, word [ebp - 4]
shl edx, 0x10
or eax, edx
push eax
call fcn.00513f7c
xor ecx, ecx
mov dword [0x55d438], ecx
jmp 0x415985
cmp dword [ebp + 8], 2
jne 0x41594a
cmp dword [0x55d428], 0
je 0x41594a
xor eax, eax
mov dword [0x55d428], eax
push 0x7e
push dword [0x55d2f8]
call sub.USER32.dll_KillTimer
cmp dword [0x56c8fc], 0
je 0x415958
call fcn.00513f38
xor edx, edx
mov dword [0x55d434], edx
cmp dword [0x55d42c], 0
je 0x41597e
xor ecx, ecx
mov dword [0x55d42c], ecx
push 0x7f
push dword [0x55d2f8]
call sub.USER32.dll_KillTimer
xor eax, eax
mov dword [0x55d438], eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4