Function at 0x45ccee
Capabilities:
Get graphical window text

Disassembly:
push ebp
lea ebp, [esp - 0xa38]
sub esp, 0xab8
mov eax, dword [0x488548]
xor eax, ebp
mov dword [ebp + 0xa34], eax
and dword [ebp - 0x80], 0
push ebx
push esi
mov esi, dword [ebp + 0xa48]
xor eax, eax
push edi
mov word [ebp + 0x4a0], ax
lea eax, [ebp + 0x4a0]
push eax
push 0x28a
push 0xd
push esi
mov dword [ebp - 0x7c], esi
call dword [sym.imp.USER32.dll_SendMessageW]
cmp esi, dword [0x489764]
jne 0x45cd52
lea eax, [ebp + 0x4a0]
push eax
push dword [0x48a220]
call dword [sym.imp.USER32.dll_SetWindowTextW]
push esi
call fcn.0045bd78
test eax, eax
jl 0x45cde3
mov ecx, dword [0x48a23c]
imul eax, eax, 0x18
mov ebx, dword [eax + ecx + 4]
test ebx, ebx
je 0x45cde3
mov eax, dword [ebx + 0x3104]
mov dword [ebp - 0x80], eax
lea eax, [ebx + 0x42]
push eax
lea eax, [ebp + 0x9b4]
push str.__s_
push eax
call dword [sym.imp.USER32.dll_wsprintfW]
add esp, 0xc
cmp dword [ebx + 0x1d20], 4
jne 0x45cda8
lea eax, [ebx + 0x1870]
cmp word [eax], 0
jne 0x45cdae
lea eax, [ebx + 0x584]
mov edi, eax
mov dword [ebp - 0x78], eax
lea eax, [edi + 6]
push eax
call dword [sym.imp.PPLIB32W.DLL__VFSFindLastEntry_4]
mov esi, eax
movzx eax, word [esi]
test ax, ax
je 0x45cddc
cmp ax, 0x5c
jne 0x45ce63
cmp word [esi + 2], 0
jne 0x45ce63
mov esi, edi
jmp 0x45ce63
xor eax, eax
mov word [ebp + 0x9b4], ax
lea eax, [ebp + 0x4a0]
push 0x5d
push eax
xor ebx, ebx
call fcn.0046891a
mov esi, eax
pop ecx
pop ecx
test esi, esi
je 0x45ce30
lea ecx, [ebp + 0x4a0]
sub eax, ecx
and eax, 0xfffffffe
cmp eax, 0x14
jg 0x45ce30
mov eax, ecx
push 0x5b
push eax
call fcn.0046891a
pop ecx
pop ecx
test eax, eax
je 0x45ce30
add esi, 2
cmp eax, esi
jae 0x45ce30
xor ecx, ecx
mov word [eax], cx
mov edi, dword [sym.imp.PPLIB32W.DLL__VFSFindLastEntry_4]
lea eax, [ebp + 0x4a0]
push eax
mov dword [ebp - 0x78], eax
call edi
cmp dword [0x4895a4], 0
mov esi, eax
je 0x45ce63
cmp word [esi], 0x5c
jne 0x45ce63
xor eax, eax
mov word [esi], ax
lea eax, [ebp + 0x4a0]
push eax
call edi
mov esi, eax
mov eax, dword [ebp - 0x7c]
cmp eax, dword [0x489764]
jne 0x45ce76
push dword [ebp - 0x78]
call fcn.004651e9
xor edx, edx
cmp dword [0x48a234], edx
je 0x45cf71
lea ecx, [ebp - 0x74]
cmp dword [ebp - 0x80], edx
je 0x45cea9
mov eax, dword [0x4871f0]
mov word [ebp - 0x74], ax
lea ecx, [ebp - 0x72]
cmp eax, 0x10000
jb 0x45cea9
shr eax, 0x10
mov word [ebp - 0x72], ax
lea ecx, [ebp - 0x70]
mov eax, dword [0x48a3a4]
cmp eax, edx
je 0x45cec8
cmp ebx, edx
je 0x45cec8
push 0x20000
push ecx
push eax
push edx
push ebx
push edx
call dword [sym.imp.PPLIB32W.DLL__PP_ExtractMacro_24]
jmp 0x45cf2f
cmp dword [0x48a3a0], 1
jne 0x45cf01
lea eax, [ebp + 0x9b4]
mov edi, ecx
mov edx, eax
sub edi, edx
movzx edx, word [eax]
mov word [edi + eax], dx
inc eax
inc eax
test dx, dx
jne 0x45cedd
mov eax, ecx
lea edi, [eax + 2]
mov dx, word [eax]
inc eax
inc eax
test dx, dx
jne 0x45cef0
sub eax, edi
sar eax, 1
lea ecx, [ecx + eax*2]
cmp word [esi], 0x5c
je 0x45cf1c
mov eax, dword [ebp - 0x78]
sub ecx, eax
movzx edx, word [eax]
mov word [ecx + eax], dx
inc eax
inc eax
test dx, dx
jne 0x45cf0c
jmp 0x45cf2f
lea eax, [esi + 2]
sub ecx, eax
movzx edx, word [eax]
mov word [ecx + eax], dx
inc eax
inc eax
test dx, dx
jne 0x45cf21
mov eax, dword [0x4870e0]
and eax, 0x141
cmp eax, 0x100
jne 0x45cf59
lea edi, [ebp - 0x74]
dec edi
dec edi
mov ax, word [edi + 2]
inc edi
inc edi
test ax, ax
jne 0x45cf45
mov esi, 0x4802b0
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
lea eax, [ebp - 0x74]
push eax
push dword [ebp - 0x7c]
push dword [ebp + 0xa44]
push dword [ebp + 0xa40]
call fcn.0045ca18
mov ecx, dword [ebp + 0xa34]
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.0046890b
add ebp, 0xa38
leave
ret 0xc