Function at 0x414980
Capabilities:
Check for unmoving mouse cursor
Get graphical window text
Resolve function by parsing pe exports

Disassembly:
push 0xffffffffffffffff
push 0x56540d
mov eax, dword fs:[0]
push eax
sub esp, 0x11c
mov eax, dword [0x5d72e0]
xor eax, esp
mov dword [esp + 0x118], eax
push ebx
push ebp
push esi
push edi
mov eax, dword [0x5d72e0]
xor eax, esp
push eax
lea eax, [esp + 0x130]
mov dword fs:[0], eax
mov edi, dword [esp + 0x140]
mov esi, dword [esp + 0x144]
mov dword [esp + 0x28], ecx
push edi
mov ecx, esi
call fcn.00519e77
cmp eax, 0x40
je 0x415379
push edi
mov ecx, esi
call fcn.00519e77
mov ebp, eax
xor ebx, ebx
cmp ebp, ebx
je 0x415379
mov eax, dword [ebp]
sub eax, ebx
je 0x41516a
sub eax, 1
je 0x414e03
sub eax, 1
jne 0x415379
mov ebp, vtable.CMenu.0
mov dword [esp + 0x18], ebp
mov dword [esp + 0x1c], ebx
mov ebx, 0xd
mov dword [esp + 0x138], ebx
call dword [sym.imp.USER32.dll_CreatePopupMenu]
push eax
lea ecx, [esp + 0x1c]
call fcn.0051cc8e
mov eax, dword [esi + 0x20]
push edi
push 3
push 0x110a
push eax
call dword [sym.imp.USER32.dll_SendMessageA]
push eax
mov ecx, esi
call fcn.00519e77
test eax, eax
je 0x414df6
cmp dword [eax], 1
jne 0x414df6
mov ebp, dword [eax + 4]
test ebp, ebp
je 0x414de5
cmp dword [ebp + 0x5b8], 0
je 0x414de5
push edi
mov ecx, esi
call fcn.00519e77
test eax, eax
je 0x414de5
cmp dword [eax], 2
jne 0x414de5
mov edi, dword [eax + 4]
imul edi, edi, 0x64
add edi, dword [ebp + 0x5b8]
je 0x414de5
mov ecx, dword [0x5d95ac]
test ecx, ecx
mov esi, dword [sym.imp.USER32.dll_AppendMenuA]
je 0x414d73
mov edx, dword [ebp]
push edx
call fcn.00408550
test eax, eax
je 0x414d73
cmp dword [edi + 0x40], 0
jne 0x414b7d
cmp dword [ebp + 0x1cc], 0xffffd2a7
je 0x414b32
push ecx
mov ecx, esp
mov dword [esp + 0x18], esp
push str.Desktop.MainStream
call fcn.004019c0
lea eax, [esp + 0x84]
push eax
mov byte [esp + 0x140], 0xe
call fcn.004ea360
mov ecx, eax
mov byte [esp + 0x140], bl
call fcn.004ea820
mov eax, dword [eax]
mov ecx, dword [esp + 0x1c]
push eax
push 0x681
push 0
push ecx
call esi
lea ecx, [esp + 0x80]
call fcn.004015d0
push ecx
mov ecx, esp
mov dword [esp + 0x18], esp
push str.Desktop.ExtStream
call fcn.004019c0
lea edx, [esp + 0x68]
push edx
mov byte [esp + 0x140], 0xf
call fcn.004ea360
mov ecx, eax
mov byte [esp + 0x140], bl
call fcn.004ea820
mov eax, dword [eax]
push eax
mov eax, dword [esp + 0x20]
push 0x680
push 0
push eax
call esi
lea ecx, [esp + 0x64]
jmp 0x414d6e
mov edi, dword [edi + 0x54]
cmp edi, 1
jne 0x414c2b
cmp dword [ebp + 0x1cc], 0xffffd2a7
je 0x414be0
push ecx
mov ecx, esp
mov dword [esp + 0x18], esp
push str.Desktop.MainStream
call fcn.004019c0
lea ecx, [esp + 0x70]
push ecx
mov byte [esp + 0x140], 0x10
call fcn.004ea360
mov ecx, eax
mov byte [esp + 0x140], bl
call fcn.004ea820
mov eax, dword [eax]
mov edx, dword [esp + 0x1c]
push eax
push 0x681
push 8
push edx
call esi
lea ecx, [esp + 0x6c]
call fcn.004015d0
push ecx
mov ecx, esp
mov dword [esp + 0x18], esp
push str.Desktop.ExtStream
call fcn.004019c0
lea eax, [esp + 0x78]
push eax
mov byte [esp + 0x140], 0x11
call fcn.004ea360
mov ecx, eax
mov byte [esp + 0x140], bl
call fcn.004ea820
mov eax, dword [eax]
mov ecx, dword [esp + 0x1c]
push eax
push 0x680
push 0
push ecx
call esi
lea ecx, [esp + 0x74]
jmp 0x414d6e
test edi, edi
jne 0x414cd7
cmp dword [ebp + 0x1cc], 0xffffd2a7
je 0x414c8c
push ecx
mov ecx, esp
mov dword [esp + 0x18], esp
push str.Desktop.MainStream
call fcn.004019c0
lea edx, [esp + 0x80]
push edx
mov byte [esp + 0x140], 0x12
call fcn.004ea360
mov ecx, eax
mov byte [esp + 0x140], bl
call fcn.004ea820
mov eax, dword [eax]
push eax
mov eax, dword [esp + 0x20]
push 0x681
push edi
push eax
call esi
lea ecx, [esp + 0x7c]
call fcn.004015d0
push ecx
mov ecx, esp
mov dword [esp + 0x18], esp
push str.Desktop.ExtStream
call fcn.004019c0
lea ecx, [esp + 0x6c]
push ecx
mov byte [esp + 0x140], 0x13
call fcn.004ea360
mov ecx, eax
mov byte [esp + 0x140], bl
call fcn.004ea820
mov eax, dword [eax]
mov edx, dword [esp + 0x1c]
push eax
push 0x680
push 8
push edx
call esi
lea ecx, [esp + 0x68]
jmp 0x414d6e
push ecx
mov ecx, esp
mov dword [esp + 0x18], esp
push str.Desktop.MainStream
call fcn.004019c0
lea eax, [esp + 0x4c]
push eax
mov byte [esp + 0x140], 0x14
call fcn.004ea360
mov ecx, eax
mov byte [esp + 0x140], bl
call fcn.004ea820
mov eax, dword [eax]
mov ecx, dword [esp + 0x1c]
push eax
push 0x681
push 0
push ecx
call esi
lea ecx, [esp + 0x48]
call fcn.004015d0
push ecx
mov ecx, esp
mov dword [esp + 0x18], esp
push str.Desktop.ExtStream
call fcn.004019c0
lea edx, [esp + 0x88]
push edx
mov byte [esp + 0x140], 0x15
call fcn.004ea360
mov ecx, eax
mov byte [esp + 0x140], bl
call fcn.004ea820
mov eax, dword [eax]
push eax
mov eax, dword [esp + 0x20]
push 0x680
push 0
push eax
call esi
lea ecx, [esp + 0x84]
call fcn.004015d0
push ecx
mov ecx, esp
mov dword [esp + 0x18], esp
push str.OneClick.ReName
call fcn.004019c0
lea ecx, [esp + 0x54]
push ecx
mov byte [esp + 0x140], 0x16
call fcn.004ea360
mov ecx, eax
mov byte [esp + 0x140], bl
call fcn.004ea820
mov eax, dword [eax]
mov edx, dword [esp + 0x1c]
push eax
push 0x69d
push 0
push edx
call esi
lea ecx, [esp + 0x50]
call fcn.004015d0
lea eax, [esp + 0x34]
push eax
call dword [sym.imp.USER32.dll_GetCursorPos]
mov ecx, dword [esp + 0x28]
mov edx, dword [esp + 0x38]
mov eax, dword [esp + 0x34]
push 0
push ecx
push edx
push eax
push 0
lea ecx, [esp + 0x2c]
call fcn.00512436
mov dword [esp + 0x18], vtable.CMenu.0
lea ecx, [esp + 0x18]
jmp 0x415369
mov dword [esp + 0x18], ebp
lea ecx, [esp + 0x18]
jmp 0x415369
mov esi, vtable.CMenu.0
mov dword [esp + 0x20], esi
mov dword [esp + 0x24], ebx
mov ebx, 4
mov dword [esp + 0x138], ebx
call dword [sym.imp.USER32.dll_CreatePopupMenu]
push eax
lea ecx, [esp + 0x24]
call fcn.0051cc8e
mov edi, dword [ebp + 4]
test edi, edi
jne 0x414e40
mov dword [esp + 0x20], esi
lea ecx, [esp + 0x20]
jmp 0x415369
cmp dword [edi + 0x1e4], 0
mov esi, dword [sym.imp.USER32.dll_AppendMenuA]
jbe 0x4150e7
cmp dword [edi + 0x5b8], 0
je 0x4150e7
cmp dword [edi + 0x1cc], 0xffffd2a7
je 0x414eb7
push ecx
mov ecx, esp
mov dword [esp + 0x18], esp
push str.Desktop.ConnAllMainStream
call fcn.004019c0
lea ecx, [esp + 0x74]
push ecx
mov byte [esp + 0x140], 5
call fcn.004ea360
mov ecx, eax
mov byte [esp + 0x140], bl
call fcn.004ea820
mov eax, dword [eax]
mov edx, dword [esp + 0x24]
push eax
push 0x695
push 0
push edx
call esi
lea ecx, [esp + 0x70]
call fcn.004015d0
mov ecx, dword [0x5d95ac]
test ecx, ecx
je 0x414f18
mov eax, dword [edi]
push eax
call fcn.00408550
test eax, eax
je 0x414f18
push ecx
mov ecx, esp
mov dword [esp + 0x18], esp
push str.Desktop.ConnAllSubStream
call fcn.004019c0
lea ecx, [esp + 0x5c]
push ecx
mov byte [esp + 0x140], 6
call fcn.004ea360
mov ecx, eax
mov byte [esp + 0x140], bl
call fcn.004ea820
mov eax, dword [eax]
mov edx, dword [esp + 0x24]
push eax
push 0x699
push 0
push edx
call esi
lea ecx, [esp + 0x58]
call fcn.004015d0
push ecx
mov ecx, esp
mov dword [esp + 0x18], esp
push str.Desktop.DisconnAll
call fcn.004019c0
lea eax, [esp + 0x40]
push eax
mov byte [esp + 0x140], 7
call fcn.004ea360
mov ecx, eax
mov byte [esp + 0x140], bl
call fcn.004ea820
mov eax, dword [eax]
mov ecx, dword [esp + 0x24]
push eax
push 0x697
push 0
push ecx
call esi
lea ecx, [esp + 0x3c]
call fcn.004015d0
cmp dword [edi + 0x528], 0
jne 0x4150e7
push ecx
mov ecx, esp
mov dword [esp + 0x18], esp
push str.Desktop.RemoteCfg
call fcn.004019c0
lea edx, [esp + 0x64]
push edx
mov byte [esp + 0x140], 8
call fcn.004ea360
mov ecx, eax
mov byte [esp + 0x140], bl
call fcn.004ea820
mov eax, dword [eax]
push eax
mov eax, dword [esp + 0x28]
push 0x669
push 0
push eax
call esi
lea ecx, [esp + 0x60]
call fcn.004015d0
push ecx
mov ecx, esp
mov dword [esp + 0x18], esp
push str.Desktop.RefushName
call fcn.004019c0
lea ecx, [esp + 0x7c]
push ecx
mov byte [esp + 0x140], 9
call fcn.004ea360
mov ecx, eax
mov byte [esp + 0x140], bl
call fcn.004ea820
mov eax, dword [eax]
mov edx, dword [esp + 0x24]
push eax
push 0x66a
push 0
push edx
call esi
lea ecx, [esp + 0x78]
call fcn.004015d0
push ecx
mov ecx, esp
mov dword [esp + 0x18], esp
push str.Desktop.TimeSync
call fcn.004019c0
lea eax, [esp + 0x44]
push eax
mov byte [esp + 0x140], 0xa
call fcn.004ea360
mov ecx, eax
mov byte [esp + 0x140], bl
call fcn.004ea820
mov eax, dword [eax]
mov ecx, dword [esp + 0x24]
push eax
push 0x698
push 0
push ecx
call esi
lea ecx, [esp + 0x40]
call fcn.004015d0
mov edx, dword [edi + 0x528]
push edx
call fcn.004fb9f0
add esp, 4
test eax, eax
je 0x415159
mov edx, dword [eax]
mov edx, dword [edx + 0x3c]
push 0
push 0x9a
lea ecx, [esp + 0x98]
push ecx
mov ecx, dword [edi]
push 0xffffffffffffffff
push 9
push ecx
mov ecx, dword [edi + 0x1e4]
push ecx
mov ecx, eax
call edx
test eax, eax
jle 0x4150e7
cmp byte [esp + 0xfd], 0
je 0x4150e7
push ecx
mov ecx, esp
mov dword [esp + 0x18], esp
push str.Desktop.PlayMusic
call fcn.004019c0
lea eax, [esp + 0x48]
push eax
mov byte [esp + 0x140], 0xb
call fcn.004ea360
mov ecx, eax
mov byte [esp + 0x140], bl
call fcn.004ea820
mov eax, dword [eax]
mov ecx, dword [esp + 0x24]
push eax
push 0x678
push 0
push ecx
call esi
lea ecx, [esp + 0x44]
call fcn.004015d0
push ecx
mov ecx, esp
mov dword [esp + 0x18], esp
push str.OneClick.ReName
call fcn.004019c0
lea edx, [esp + 0x50]
push edx
mov byte [esp + 0x140], 0xc
call fcn.004ea360
mov ecx, eax
mov byte [esp + 0x140], bl
call fcn.004ea820
mov eax, dword [eax]
push eax
mov eax, dword [esp + 0x28]
push 0x69d
push 0
push eax
call esi
lea ecx, [esp + 0x4c]
call fcn.004015d0
lea ecx, [esp + 0x2c]
push ecx
call dword [sym.imp.USER32.dll_GetCursorPos]
mov edx, dword [esp + 0x28]
mov eax, dword [esp + 0x30]
mov ecx, dword [esp + 0x2c]
push 0
push edx
push eax
push ecx
push 0
lea ecx, [esp + 0x34]
call fcn.00512436
mov dword [esp + 0x20], vtable.CMenu.0
lea ecx, [esp + 0x20]
jmp 0x415369
mov edi, vtable.CMenu.0
mov dword [esp + 0x2c], edi
mov dword [esp + 0x30], ebx
mov esi, dword [sym.imp.USER32.dll_CreatePopupMenu]
mov dword [esp + 0x138], ebx
call esi
push eax
lea ecx, [esp + 0x30]
call fcn.0051cc8e
push ecx
mov ecx, esp
mov dword [esp + 0x18], esp
push str.Title.AutoConnectVideo
call fcn.004019c0
lea edx, [esp + 0x58]
push edx
mov byte [esp + 0x140], 1
call fcn.004ea360
mov ecx, eax
mov byte [esp + 0x140], 0
call fcn.004ea820
mov eax, dword [eax]
mov ebp, dword [sym.imp.USER32.dll_AppendMenuA]
push eax
mov eax, dword [esp + 0x34]
push 0x916
push ebx
push eax
call ebp
lea ecx, [esp + 0x54]
call fcn.004015d0
mov dword [esp + 0x20], edi
mov dword [esp + 0x24], ebx
mov byte [esp + 0x138], 2
call esi
push eax
lea ecx, [esp + 0x24]
call fcn.0051cc8e
test eax, eax
je 0x415319
mov edi, dword [esp + 0x28]
mov eax, dword [edi + 0x2080]
add edi, 0x207c
mov dword [esp + 0x14], ebx
mov ebx, dword [eax]
mov dword [esp + 0x1c], ebx
mov dword [esp + 0x18], edi
mov esi, 0x720
jmp 0x415230
mov eax, dword [esp + 0x28]
mov ecx, dword [eax + 0x2080]
add eax, 0x207c
test edi, edi
mov dword [esp + 0x38], ecx
je 0x41524b
cmp edi, eax
je 0x415250
call fcn.0053123f
cmp ebx, dword [esp + 0x38]
je 0x4152ad
test edi, edi
jne 0x41525f
call fcn.0053123f
cmp ebx, dword [edi + 4]
jne 0x415269
call fcn.0053123f
mov ecx, dword [ebx + 0x10]
mov eax, dword [ebx + 0x14]
mov edi, 1
cmp ecx, edi
jne 0x415286
mov edx, dword [eax + 4]
mov eax, dword [esp + 0x24]
push edx
push esi
push 8
push eax
jmp 0x415292
mov ecx, dword [eax + 4]
mov edx, dword [esp + 0x24]
push ecx
push esi
push 0
push edx
call ebp
add dword [esp + 0x14], edi
lea ecx, [esp + 0x18]
add esi, edi
call fcn.004fc8b0
mov ebx, dword [esp + 0x1c]
mov edi, dword [esp + 0x18]
jmp 0x415230
cmp dword [esp + 0x14], 0
je 0x415317
push ecx
mov ecx, esp
mov dword [esp + 0x18], esp
push str.Task.Task
call fcn.004019c0
lea eax, [esp + 0x60]
push eax
mov byte [esp + 0x140], 3
call fcn.004ea360
mov ecx, eax
mov byte [esp + 0x140], 2
call fcn.004ea820
mov eax, dword [eax]
mov ecx, dword [esp + 0x24]
mov edx, dword [esp + 0x30]
push eax
push ecx
push 0x10
push edx
call ebp
mov eax, dword [esp + 0x5c]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x415317
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
xor ebx, ebx
lea ecx, [esp + 0x88]
push ecx
call dword [sym.imp.USER32.dll_GetCursorPos]
mov edx, dword [esp + 0x28]
mov eax, dword [esp + 0x8c]
mov ecx, dword [esp + 0x88]
push ebx
push edx
push eax
push ecx
push ebx
lea ecx, [esp + 0x40]
call fcn.00512436
mov esi, vtable.CMenu.0
lea ecx, [esp + 0x20]
mov byte [esp + 0x138], 0
mov dword [esp + 0x20], esi
call fcn.0051cce1
mov dword [esp + 0x2c], esi
lea ecx, [esp + 0x2c]
mov dword [esp + 0x138], 0xffffffff
call fcn.0051cce1
mov ecx, dword [esp + 0x130]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
pop ebx
mov ecx, dword [esp + 0x118]
xor ecx, esp
call fcn.0053042b
add esp, 0x128
ret 8