Function at 0x40ca01
Capabilities:
Get graphical window text

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x1c0
mov dword [0x57bc15], ecx
test dword [0x57c0ef], eax
je 0x40ca1e
xor dword [ebp - 0x174], ecx
mov dword [ebp - 0x16d], eax
test dword [0x57b01d], edx
je 0x40cabf
xor eax, dword [ebp - 0x152]
add eax, eax
mov ecx, eax
mov dword [ebp - 0xdd], eax
mov dword [ebp - 0x6a], ecx
cmp eax, eax
jae 0x40ca6c
mov dword [0x57bbfe], eax
mov dword [ebp - 0x16], eax
xor dword [ebp - 0x17c], edx
mov dword [ebp - 0x1bc], edx
or ah, cl
mov dword [ebp - 0x196], eax
or ecx, dword [ebp - 0x94]
mov ecx, dword [ebp - 0x6e]
xor ecx, dword [ebp - 0xce]
mov ecx, dword [ebp - 0x9c]
xor edx, 0x6d0f
mov dword [ebp - 0x1b3], ecx
sub dword [ebp - 0x122], edx
lea edx, [ebp - 0x11c]
mov dword [0x57bf1e], ecx
mov ecx, dword [ebp - 0xbe]
mov eax, dword [ebp - 0x143]
lea edx, [ebp - 0x18f]
add ax, word [ebp - 0xb1]
and eax, 0x21d9
mov edx, dword [ebp - 0x8d]
mov edx, 0xa078
mov eax, dword [ebp - 0xed]
mov eax, dword [ebp - 0x63]
mov eax, dword [ebp - 0xe5]
sub dword [ebp - 0x60], eax
mov dword [ebp - 0x26], ecx
mov edx, eax
movzx ecx, ch
xor ecx, eax
cmp ecx, dword [0x57b64a]
je 0x40cae3
cmp eax, 0xc31ef7c2
jne 0x40cb2e
mov eax, dword [ebp - 0xc9]
mov dword [0x57c126], eax
mov ecx, dword [ebp - 0xe6]
cmp ecx, 0x6ff2e173
je 0x40cb2b
sub dword [ebp - 0xef], ecx
sub ecx, dword [ebp - 0xce]
mov eax, dword [ebp - 0x41]
mov dword [ebp - 0x66], ecx
mov dword [ebp - 0x16f], edx
add ecx, eax
mov eax, eax
mov edx, dword [ebp - 0x199]
sub ecx, 0x3662
movzx ecx, dx
mov dword [ebp - 0x147], edx
movzx edx, ch
mov dword [ebp - 0x13], ecx
lea eax, [0x57bf47]
lea edx, [ebp - 0xf9]
cmp edx, edx
jno 0x40cb53
mov dword [ebp - 0x24], edx
add dword [ebp - 0x81], eax
mov dword [ebp - 0x36], ecx
mov edx, eax
sub edx, dword [ebp - 0xa4]
mov edx, edx
movzx ecx, byte [ebp - 0xb1]
add eax, 0xe85e
mov dword [ebp - 0x2b], eax
mov dword [ebp - 0xb7], edx
mov eax, dword [ebp - 0xb]
mov ax, word [ebp - 0x13c]
mov edx, dword [ebp - 0x41]
mov cl, dh
mov ecx, 0x825e
cmp eax, ecx
je 0x40cbd3
mov dword [0x57bcab], eax
mov dx, word [ebp - 0xdc]
mov eax, 0xca1b
mov edx, dword [0x57bfcd]
or ecx, 0x61a2
mov dword [ebp - 0x1af], ecx
mov ecx, dword [ebp - 0x127]
mov ecx, ecx
mov dword [ebp - 0xde], eax
xor edx, dword [ebp - 0x1e]
lea ecx, [0x57c147]
add edx, dword [ebp - 0x17c]
mov dword [ebp - 0xb6], ecx
lea eax, [ebp - 0x160]
mov dword [ebp - 0xe], edx
call fcn.0040d1ed
mov dword [ebp - 0x112], ecx
mov dword [ebp - 0xcc], eax
mov eax, edx
movzx eax, ax
or edx, 0xe1d
mov cx, word [ebp - 0x171]
mov dword [0x57b3e9], edx
xor edx, eax
movzx eax, ch
call fcn.0040cdde
add dword [ebp - 0xb2], eax
mov dword [ebp - 0x4f], edx
mov dword [ebp - 0x165], ecx
mov ecx, edx
mov eax, edx
cmp eax, dword [0x57bf34]
jb 0x40cc43
mov ecx, dword [ebp - 0x1ae]
mov dword [ebp - 0x174], eax
mov ecx, dword [ebp - 0x84]
add eax, ecx
mov dword [str.RYD9UXLrMy9aHXHLYKfTZBHI2Y3E2FMMxnrdZZzRjihI8XvZdSE3YIMwtWXIPUDXCDAR2ZIIWBxFTpNk4z], eax
mov ecx, 0x91b7
mov edx, eax
and edx, 0xcdd6
mov byte [ebp - 0x10], ch
mov ecx, ecx
mov word [ebp - 0xfd], cx
mov edx, edx
mov ecx, 0xdff0
mov edx, 0x1594
mov edx, eax
mov dword [ebp - 0x35], edx
mov dword [ebp - 0x62], edx
movzx edx, ax
mov ecx, dword [ebp - 0xf8]
cmp edx, dword [0x57b718]
jo 0x40ccc2
or eax, 0xa6bd
add edx, 0x8ffc
cmp ecx, 0xea1783b0
jno 0x40ccae
mov edx, dword [ebp - 0x41]
sub ecx, dword [ebp - 0x7e]
movzx edx, ch
and ecx, 0x1fc2
mov ecx, dword [ebp - 0x10d]
sub eax, 0xa530
mov ecx, dword [ebp - 0xa1]
sub edx, eax
mov eax, dword [ebp - 0x154]
or dword [ebp - 0x194], ecx
xor dword [ebp - 0x30], ecx
sub edx, 0xc210
mov dword [ebp - 0x1a9], edx
call sub.USER32.dll_GetWindowTextA
test edx, eax
jne 0x40cd30
or eax, eax
mov edx, dword [ebp - 0x185]
mov edx, eax
xor dword [ebp - 0x11f], ecx
mov eax, dword [ebp - 0x180]
mov eax, dword [ebp - 0xa0]
mov dword [ebp - 0xc9], eax
mov eax, dword [ebp - 0xf7]
movzx ecx, dh
mov ecx, 0xfc44
mov dword [ebp - 0x4e], edx
mov eax, dword [ebp - 0xcd]
mov eax, dword [ebp - 0x1e]
sub ecx, 0xdee0
sub dword [ebp - 0x113], ecx
and dword [ebp - 0x12], eax
mov dword [ebp - 0x50], eax
mov edx, dword [ebp - 0x183]
mov eax, edx
or eax, eax
mov edx, dword [ebp - 0xed]
mov dword [0x57b360], edx
sub eax, eax
mov edx, edx
mov eax, dword [ebp - 0xf]
sub eax, dword [ebp - 0xaa]
sub ecx, dword [ebp - 0xc1]
mov eax, dword [ebp - 0x1b3]
xor eax, dword [ebp - 0xa]
mov dword [ebp - 0x18a], edx
add dword [ebp - 0x188], edx
mov dword [ebp - 0x7a], ecx
push eax
pop ecx
mov dword [ebp - 0x1a2], edx
cmp edx, dword [0x57bcbc]
js 0x40cd9d
mov dword [ebp - 0x17], ecx
mov dword [ebp - 0x14d], edx
movzx edx, ah
and ecx, dword [ebp - 0x7e]
cmp ecx, dword [0x57c2ee]
jae 0x40cd95
call sub.GDI32.dll_DeleteEnhMetaFile
mov edx, edx
sub dword [ebp - 0xf7], ecx
cmp ecx, edx
jne 0x40cda1
mov edx, eax
mov ecx, dword [0x57b15b]
add dword [ebp - 0x1ad], eax
mov eax, edx
cmp ecx, dword [0x57bada]
jae 0x40cdb9
xor edx, dword [0x57b93d]
mov eax, dword [0x57bca5]
mov dword [ebp - 0x52], eax
mov dword [ebp - 7], edx
movzx edx, ah
cmp ecx, dword [0x57bdb2]
jno 0x40cddc
mov eax, 0x2157
mov edx, edx
leave
ret