Function at 0x405850
Capabilities:
Get graphical window text

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x51c
mov eax, dword [0x4130f0]
xor eax, ebp
mov dword [ebp - 4], eax
push ebx
push edi
xor ebx, ebx
cmp dword [ebp + 8], 0x87d0
mov edi, ecx
mov dword [ebp - 0x51c], edi
mov dword [ebp - 0x510], ebx
jne case.default.0x405890
mov eax, dword [ebp + 0xc]
dec eax
cmp eax, 4
ja case.default.0x405890
push esi
jmp dword [eax*4 + 0x405ca4]
push 0x104
lea eax, [ebp - 0x108]
push ebx
push eax
call sub.MSVCR100.dll_memset
push 0x200
push ebx
push 0x41fd68
call sub.MSVCR100.dll_memset
mov edx, dword [0x41396c]
add esp, 0x18
push 0x104
lea ecx, [ebp - 0x108]
push ecx
push edx
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameA]
lea eax, [ebp - 0x40c]
push eax
lea ecx, [ebp - 0x50c]
push ecx
lea edx, [ebp - 0x208]
push edx
lea eax, [ebp - 0x514]
push eax
lea ecx, [ebp - 0x108]
push ecx
call dword [sym.imp.MSVCR100.dll__splitpath]
push str.mxadclient.dll
lea edx, [ebp - 0x208]
push edx
lea eax, [ebp - 0x514]
push eax
lea ecx, [ebp - 0x30c]
push str._s_s_s
push ecx
call dword [sym.imp.MSVCR100.dll_sprintf]
mov eax, dword [0x41fd58]
add esp, 0x28
cmp eax, ebx
je 0x4059b4
mov ecx, dword [0x41fd5c]
cmp ecx, ebx
je 0x4059ce
mov esi, dword [0x41ff6c]
mov dword [ebp - 0x510], ecx
mov ecx, esi
call fcn.00402740
cmp eax, ebx
je 0x405964
mov edx, dword [eax + 0xdbc]
mov dword [0x41fd64], edx
cmp esi, ebx
jl 0x405c8c
mov eax, dword [0x413970]
push ebx
push esi
mov esi, dword [sym.imp.USER32.dll_SendMessageA]
push 0x8042
push eax
call esi
push 1
push 3
push 0x87d1
push 1
call fcn.00405240
mov ecx, dword [eax + 0xdc0]
add esp, 4
push ecx
call esi
mov eax, dword [ebp - 0x510]
pop esi
pop edi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.0040e620
mov esp, ebp
pop ebp
ret
lea edx, [ebp - 0x30c]
push edx
call dword [sym.imp.KERNEL32.dll_LoadLibraryA]
mov dword [0x41fd58], eax
cmp eax, ebx
je 0x405a84
inc dword [0x41fd60]
push str.Avviamxadclient
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov esi, eax
cmp esi, ebx
je 0x405c8c
push 1
call fcn.00405240
mov eax, dword [eax + 0xdc0]
mov ecx, dword [0x413970]
mov edx, dword [0x41396c]
add esp, 4
push edi
push eax
push ecx
push edx
call esi
mov esi, dword [0x41ff6c]
mov ecx, esi
mov dword [0x41fd5c], eax
mov dword [ebp - 0x510], eax
call fcn.00402740
cmp eax, ebx
je 0x405a33
mov eax, dword [eax + 0xdbc]
mov dword [0x41fd64], eax
cmp esi, ebx
jl 0x405c8c
mov ecx, dword [0x413970]
push ebx
push esi
mov esi, dword [sym.imp.USER32.dll_SendMessageA]
push 0x8042
push ecx
call esi
push 1
call fcn.00405240
mov edx, dword [eax + 0xdc0]
add esp, 4
push 1
push 3
push 0x87d1
push edx
call esi
mov eax, dword [ebp - 0x510]
pop esi
pop edi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.0040e620
mov esp, ebp
pop ebp
ret
call dword [sym.imp.KERNEL32.dll_GetLastError]
push ebx
push ebx
lea edx, [ebp - 0x518]
push edx
push ebx
push eax
movzx ecx, ax
push ebx
push 0x11ff
mov dword [ebp - 0x510], ecx
call dword [sym.imp.KERNEL32.dll_FormatMessageA]
test eax, eax
je 0x405ad1
mov esi, dword [ebp - 0x518]
mov edx, 0x41fd68
mov eax, esi
sub edx, esi
lea ecx, [ecx]
mov cl, byte [eax]
mov byte [edx + eax], cl
inc eax
test cl, cl
jne 0x405ac0
push esi
call dword [sym.imp.KERNEL32.dll_LocalFree]
mov eax, dword [ebp - 0x510]
pop esi
pop edi
mov dword [0x41fd5c], ebx
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.0040e620
mov esp, ebp
pop ebp
ret
push 0x413148
call fcn.0040e410
mov eax, dword [0x413974]
mov edi, dword [sym.imp.USER32.dll_SendMessageA]
add esp, 4
push ebx
push ebx
push 0x1304
push eax
call edi
xor esi, esi
mov dword [ebp - 0x518], eax
mov dword [ebp - 0x514], ebx
test eax, eax
jle 0x405b68
mov ecx, ebx
call fcn.00402740
mov esi, eax
test esi, esi
je 0x405b57
mov ecx, dword [esi + 0xdc0]
push ecx
call dword [sym.imp.USER32.dll_IsWindow]
test eax, eax
je 0x405b57
mov edx, dword [esi + 0xdc0]
push 0
push 8
push 0x87d1
push edx
call edi
cmp eax, 1
je 0x405b62
inc ebx
cmp ebx, dword [ebp - 0x518]
jl 0x405b22
jmp 0x405b68
mov dword [ebp - 0x514], ebx
push 0x413148
call fcn.0040e420
mov eax, dword [ebp - 0x514]
mov ecx, dword [0x413970]
add esp, 4
push 0
push eax
push 0x8042
push ecx
call edi
mov edx, dword [esi + 0xdc0]
push 1
push 3
push 0x87d1
push edx
call edi
mov eax, dword [0x41fd58]
dec dword [0x41fd60]
test eax, eax
je 0x405c8c
push str.Fermamxadclient
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
test eax, eax
je 0x405c8c
mov ecx, dword [ebp - 0x51c]
push ecx
call eax
test eax, eax
jne 0x405bd7
mov dword [0x41fd5c], eax
pop esi
pop edi
mov dword [ebp - 0x510], eax
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.0040e620
mov esp, ebp
pop ebp
ret
push 1
call fcn.00405240
mov esi, eax
add esp, 4
cmp esi, ebx
je 0x405c8c
mov edx, dword [esi + 0xdc0]
push edx
call dword [sym.imp.USER32.dll_IsWindow]
test eax, eax
je 0x405c8c
mov eax, dword [esi + 0xdc0]
push ebx
push 1
push 0x87d1
push eax
jmp 0x405c86
push 1
call fcn.00405240
mov esi, eax
add esp, 4
cmp esi, ebx
je 0x405c8c
mov ecx, dword [esi + 0xdc0]
push ecx
call dword [sym.imp.USER32.dll_IsWindow]
test eax, eax
je 0x405c8c
mov edx, dword [esi + 0xdc0]
push edi
push 0xd
push 0x87d1
push edx
jmp 0x405c86
push 1
call fcn.00405240
mov esi, eax
add esp, 4
cmp esi, ebx
je 0x405c8c
mov eax, dword [esi + 0xdc0]
push eax
call dword [sym.imp.USER32.dll_IsWindow]
test eax, eax
je 0x405c8c
mov ecx, dword [esi + 0xdc0]
push edi
push 0xe
push 0x87d1
push ecx
call dword [sym.imp.USER32.dll_SendMessageA]
pop esi
mov ecx, dword [ebp - 4]
mov eax, dword [ebp - 0x510]
pop edi
xor ecx, ebp
pop ebx
call fcn.0040e620
mov esp, ebp
pop ebp
ret