Function at 0x4890b8
Capabilities:
Get graphical window text

Disassembly:
push ebp
mov ebp, esp
add esp, 0xffffffa0
push ebx
push esi
push edi
xor ebx, ebx
mov dword [ebp - 0x60], ebx
mov dword [ebp - 0x5c], ebx
mov esi, ecx
mov edi, edx
mov dword [ebp - 0x10], eax
mov eax, dword [ebp + 0x14]
call fcn.00407088
mov eax, dword [ebp + 0x10]
call fcn.00407088
lea eax, [ebp - 0xc]
mov edx, dword [0x486ac0]
call fcn.00407d18
xor eax, eax
push ebp
push 0x489b30
push dword fs:[eax]
mov dword fs:[eax], esp
xor eax, eax
mov dword [ebp - 0x38], eax
mov eax, edi
call fcn.0040f724
dec eax
test eax, eax
jl 0x489161
inc eax
mov dword [ebp - 0x3c], eax
xor ebx, ebx
mov eax, edi
mov edx, ebx
call fcn.0040ec44
call fcn.0040eab0
push eax
mov eax, edi
mov edx, ebx
call fcn.0040ec44
call fcn.0040eb40
pop edx
add edx, eax
cmp edx, dword [ebp - 0x38]
jle 0x48915b
mov eax, edi
mov edx, ebx
call fcn.0040ec44
call fcn.0040eab0
push eax
mov eax, edi
mov edx, ebx
call fcn.0040ec44
call fcn.0040eb40
pop edx
add edx, eax
mov dword [ebp - 0x38], edx
inc ebx
dec dword [ebp - 0x3c]
jne 0x489113
mov eax, 4
call fcn.004874b8
add dword [ebp - 0x38], eax
test esi, esi
je 0x489207
mov eax, 4
call fcn.004874b8
add dword [ebp - 0x38], eax
lea eax, [ebp + 0x14]
mov edx, dword [esi + 0x28]
call fcn.004070f4
mov eax, esi
call fcn.0047e614
test eax, eax
je 0x4891a6
lea eax, [ebp + 0x10]
mov edx, dword [esi + 0x50]
call fcn.004070f4
jmp 0x4891b1
lea eax, [ebp + 0x10]
mov edx, dword [esi + 0x54]
call fcn.004070f4
lea eax, [ebp - 0xc]
xor edx, edx
call fcn.004070f4
mov eax, dword [0x4c26fc]
call fcn.004088b8
test eax, eax
jl 0x489207
inc eax
mov dword [ebp - 0x3c], eax
xor ebx, ebx
lea eax, [ebx + ebx*2]
mov edx, dword [0x4c26fc]
mov eax, dword [edx + eax*4]
mov edx, dword [esi + 4]
call fcn.00407810
jne 0x489201
lea eax, [ebp - 0xc]
lea edx, [ebx + ebx*2]
mov ecx, dword [0x4c26fc]
lea edx, [ecx + edx*4]
mov ecx, dword [0x486ac0]
call fcn.00408074
jmp 0x489207
inc ebx
dec dword [ebp - 0x3c]
jne 0x4891cf
mov dl, 2
mov eax, edi
call fcn.0040d578
mov dword [ebp - 0x14], eax
mov eax, dword [ebp - 0x14]
mov dword [ebp - 0x40], eax
push esi
push 0xffffffffffffffff
mov ecx, dword [ebp - 0x14]
mov edx, dword [0x486c14]
xor eax, eax
call fcn.00488b98
mov edi, eax
mov eax, dword [ebp - 0x40]
mov dword [eax + 0xee], edi
test esi, esi
je 0x489254
mov eax, 8
call fcn.004874b8
mov ecx, eax
mov eax, dword [ebp - 0x40]
mov edx, 1
call fcn.004100f8
mov eax, 8
call fcn.004874a4
mov ecx, eax
mov eax, dword [ebp - 0x40]
mov edx, 3
call fcn.004100f8
mov eax, 8
call fcn.004874a4
mov ecx, eax
mov eax, dword [ebp - 0x40]
mov edx, 4
call fcn.004100f8
mov eax, dword [ebp - 0x40]
mov edx, dword [ebp - 0x38]
call fcn.0040eac8
mov eax, dword [ebp - 0x40]
mov eax, dword [eax + 0x30]
call fcn.0040f198
mov edx, eax
mov eax, dword [ebp - 0x40]
call fcn.0040eb18
lea ecx, [ebp - 0x58]
mov eax, dword [ebp - 0x40]
mov eax, dword [eax + 0x30]
mov edx, 7
call fcn.0040e400
push dword [ebp - 0x54]
push dword [ebp - 0x58]
mov eax, dword [ebp - 0x40]
mov edx, 7
call fcn.0040e414
mov eax, dword [ebp - 0x40]
mov edx, dword [eax]
call dword [edx + 0x10]
mov dl, 2
mov eax, dword [ebp - 0x14]
call fcn.0040d578
call fcn.0040f55c
mov dword [ebp - 0x1c], eax
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x34], eax
mov eax, dword [ebp - 0x1c]
mov ebx, eax
mov eax, dword [ebx + 0x30]
mov edx, dword [eax + 0xa4]
mov eax, ebx
call fcn.0040eb88
mov eax, 8
call fcn.004874a4
mov edx, eax
mov eax, ebx
call fcn.0040ea7c
mov eax, dword [ebx + 0x30]
call fcn.0040f198
mov edi, eax
mov eax, ebx
call fcn.0040ea64
sub edi, eax
mov eax, 0x10
call fcn.004874a4
mov edx, edi
sub edx, eax
mov eax, ebx
call fcn.0040eb18
mov eax, ebx
mov edx, dword [eax]
call dword [edx + 0x10]
mov dl, 2
mov eax, dword [ebp - 0x1c]
call fcn.0040d578
call fcn.0040f55c
mov dword [ebp - 0x18], eax
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0x44], eax
mov eax, 8
call fcn.004874a4
mov edx, eax
mov eax, dword [ebp - 0x44]
call fcn.0040ea7c
mov eax, dword [ebp - 0x44]
mov edx, 0xfdfdfd
call fcn.0040eb88
mov eax, 0x30
call fcn.004874a4
mov edx, eax
mov eax, dword [ebp - 0x44]
call fcn.0040eb18
mov eax, 0x30
call fcn.004874b8
mov edx, eax
mov eax, dword [ebp - 0x44]
call fcn.0040eb5c
push 0
push 0xffffffffffffffff
mov ecx, dword [ebp - 0x18]
mov edx, dword [0x486c14]
xor eax, eax
call fcn.00488b98
mov edi, eax
mov eax, dword [ebp - 0x44]
mov dword [eax + 0xee], edi
test esi, esi
je 0x4893fa
cmp dword [ebp - 0xc], 0
je 0x4893e9
lea eax, [edi + 0x38]
mov edx, dword [eax]
mov dword [ebp - 0x50], edx
xor edx, edx
mov dword [eax], edx
mov eax, dword [ebp - 0x50]
call fcn.00405020
mov eax, dword [ebp - 8]
mov dword [edi + 0x38], eax
jmp 0x489414
mov dl, 1
mov eax, dword [0x486a24]
call fcn.00404ff0
mov dword [edi + 0x38], eax
jmp 0x489414
cmp dword [ebp + 8], 0
je 0x489408
mov eax, dword [ebp + 8]
mov dword [edi + 0x38], eax
jmp 0x489414
mov eax, edi
xor ecx, ecx
mov edx, dword [ebp + 0xc]
call fcn.00488c10
mov byte [edi + 0x3c], 1
mov eax, dword [ebp - 0x10]
push eax
push 0x48ee94
mov eax, dword [ebp - 0x44]
call fcn.0040f034
mov eax, dword [ebp - 0x44]
mov edx, dword [eax]
call dword [edx + 0x10]
mov dl, 2
mov eax, dword [ebp - 0x1c]
call fcn.0040d578
mov edi, eax
mov eax, dword [ebp - 0x18]
call fcn.0040ea64
push eax
mov eax, dword [ebp - 0x18]
call fcn.0040eafc
pop edx
add edx, eax
push edx
mov eax, 8
call fcn.004874a4
pop edx
add edx, eax
mov eax, edi
call fcn.0040ea7c
mov eax, edi
mov dl, 1
call fcn.0040fde8
mov eax, edi
call fcn.0040f55c
test esi, esi
je 0x4894ac
mov eax, 0x12
call fcn.004874b8
mov edx, eax
mov eax, edi
call fcn.0040eb5c
mov eax, 0x10
call fcn.004874cc
push eax
mov eax, edi
call fcn.0040f090
mov edx, 4
pop ecx
call fcn.0040c088
jmp 0x4894dc
mov eax, 0x10
call fcn.004874b8
mov edx, eax
mov eax, edi
call fcn.0040eb5c
mov eax, 0xe
call fcn.004874cc
push eax
mov eax, edi
call fcn.0040f090
mov edx, 4
pop ecx
call fcn.0040c088
mov eax, edi
call fcn.0040f090
movzx edx, byte [0x489b44]
call fcn.0040c1c4
mov eax, edi
mov edx, dword [ebp + 0x14]
call fcn.0040e5f0
mov eax, dword [edi + 0x30]
mov edx, dword [eax + 0xa4]
mov eax, edi
call fcn.0040eb88
test esi, esi
je 0x489604
mov dl, 2
mov eax, dword [ebp - 0x1c]
call fcn.0040d578
mov dword [ebp - 0x20], eax
mov eax, dword [ebp - 0x20]
mov dword [ebp - 0x48], eax
push esi
push 0xffffffffffffffff
mov ecx, dword [ebp - 0x20]
mov edx, dword [0x486c14]
xor eax, eax
call fcn.00488b98
mov edi, eax
mov eax, dword [ebp - 0x48]
mov dword [eax + 0xee], edi
mov eax, dword [ebp - 0x48]
mov eax, dword [eax + 0x30]
mov edx, dword [eax + 0xa4]
mov eax, dword [ebp - 0x48]
call fcn.0040eb88
mov eax, dword [ebp - 0x10]
push eax
push 0x48fa44
mov eax, dword [ebp - 0x48]
call fcn.0040f034
mov eax, dword [ebp - 0x18]
call fcn.0040ea64
mov edi, eax
mov eax, dword [ebp - 0x18]
call fcn.0040eafc
add edi, eax
mov eax, 8
call fcn.004874a4
add edi, eax
mov edx, edi
mov eax, dword [ebp - 0x48]
call fcn.0040ea7c
mov eax, 0x18
call fcn.004874b8
mov edx, eax
mov eax, dword [ebp - 0x48]
call fcn.0040eac8
mov eax, dword [ebp - 0x48]
mov eax, dword [eax + 0x30]
call fcn.0040f198
push eax
mov eax, dword [ebp - 0x48]
call fcn.0040ea64
pop edx
sub edx, eax
mov eax, dword [ebp - 0x48]
call fcn.0040eb18
mov eax, dword [ebp - 0x10]
mov eax, dword [eax + 0x7c]
mov edx, dword [eax + 0x1c]
mov eax, dword [ebp - 0x48]
call fcn.0040eb5c
mov eax, dword [ebp - 0x20]
call fcn.0040eab0
mov edi, eax
mov eax, dword [ebp - 0x20]
call fcn.0040eb40
add edi, eax
mov eax, 8
call fcn.004874a4
add edi, eax
mov edx, edi
mov eax, ebx
call fcn.0040f1b4
mov eax, dword [ebp - 0x14]
mov dword [ebp - 0x34], eax
mov dl, 2
mov eax, dword [ebp - 0x34]
call fcn.0040d578
mov dword [ebp - 0x24], eax
mov eax, dword [ebp - 0x24]
mov ebx, eax
mov eax, dword [ebx + 0x30]
mov edx, dword [eax + 0xa4]
mov eax, ebx
call fcn.0040eb88
test esi, esi
je 0x48965c
mov eax, 8
call fcn.004874a4
mov edx, eax
mov eax, ebx
call fcn.0040ea7c
mov eax, dword [ebp - 0x1c]
call fcn.0040eab0
mov edi, eax
mov eax, dword [ebp - 0x1c]
call fcn.0040eb40
add edi, eax
mov edx, edi
mov eax, ebx
call fcn.0040eac8
jmp 0x489698
mov eax, dword [ebp - 0x18]
call fcn.0040ea64
mov edi, eax
mov eax, dword [ebp - 0x18]
call fcn.0040eafc
add edi, eax
mov eax, 8
call fcn.004874a4
add edi, eax
mov edx, edi
mov eax, ebx
call fcn.0040ea7c
mov eax, 0x14
call fcn.004874b8
mov edx, eax
mov eax, ebx
call fcn.0040eac8
mov eax, dword [ebx + 0x30]
call fcn.0040f198
mov edi, eax
mov eax, ebx
call fcn.0040ea64
sub edi, eax
mov eax, 8
call fcn.004874a4
mov edx, edi
sub edx, eax
mov eax, ebx
call fcn.0040eb18
mov eax, ebx
call fcn.0040f55c
mov eax, ebx
mov edx, dword [eax]
call dword [edx + 0x10]
mov dl, 2
mov eax, dword [ebp - 0x24]
call fcn.0040d578
mov ebx, eax
mov eax, 0xd
call fcn.004874cc
push eax
mov eax, ebx
call fcn.0040f090
mov edx, 4
pop ecx
call fcn.0040c088
xor edx, edx
mov eax, ebx
call fcn.0040d764
mov eax, dword [ebx + 0x30]
call fcn.0040f198
mov edx, eax
mov eax, ebx
call fcn.0040eb18
mov edx, 0x40
mov eax, ebx
call fcn.0040eb5c
mov eax, dword [ebp - 0x10]
push eax
push 0x48a480
mov eax, ebx
call fcn.00410390
mov eax, ebx
call fcn.0040f55c
mov eax, ebx
mov edx, dword [eax]
call dword [edx + 0x10]
push 0x50000000
push 0
push 0
mov eax, ebx
call fcn.0040f198
push eax
mov eax, ebx
call fcn.0040f17c
push eax
mov eax, dword [ebx + 0x1c]
push eax
push 0x7a
mov eax, dword [0x4bfc38]
push eax
push 0
lea eax, [ebp - 0x5c]
push eax
xor ecx, ecx
mov edx, 0x564
mov eax, 0x489b54
call fcn.00487008
mov eax, dword [ebp - 0x5c]
call fcn.0040712c
push eax
mov eax, dword [ebp + 0x10]
call fcn.0040712c
mov ecx, eax
mov eax, 0x20
pop edx
call fcn.0040b4b4
mov edi, eax
push 1
mov eax, ebx
call fcn.0040f090
call fcn.0040c228
push eax
push 0x30
push edi
call sub.user32.dll_SendMessageW_1
push 0
mov eax, ebx
call fcn.0040eafc
push eax
push 0x701
push edi
call sub.user32.dll_SendMessageW_1
mov edx, eax
mov eax, ebx
call fcn.0040f1b4
push 0x40
mov eax, ebx
call fcn.0040f17c
push eax
mov eax, ebx
call fcn.0040f198
push eax
push 0
push 0
push 0
push edi
call sub.user32.dll_SetWindowPos
push 0
push 0
push edi
call sub.user32.dll_InvalidateRect
mov eax, ebx
call fcn.0040eab0
mov edi, eax
mov eax, ebx
call fcn.0040eb40
add edi, eax
mov edx, edi
mov eax, dword [ebx + 0x30]
call fcn.0040f1b4
test esi, esi
je 0x4899dc
mov eax, esi
call fcn.0047e614
test eax, eax
je 0x4899fa
mov eax, esi
call fcn.0047e614
dec eax
test eax, eax
jl 0x4899fa
inc eax
mov dword [ebp - 0x3c], eax
xor ebx, ebx
mov dl, 2
mov eax, dword [ebp - 0x24]
call fcn.0040d578
mov dword [ebp - 0x2c], eax
mov eax, dword [ebp - 0x2c]
mov dword [ebp - 0x4c], eax
mov eax, dword [ebp - 0x4c]
mov eax, dword [eax + 0x30]
mov edx, dword [eax + 0xa4]
mov eax, dword [ebp - 0x4c]
call fcn.0040eb88
mov eax, dword [ebp - 0x4c]
mov eax, dword [eax + 0x30]
call fcn.0040f17c
mov edx, eax
mov eax, dword [ebp - 0x4c]
call fcn.0040eac8
mov eax, 4
call fcn.004874a4
mov edx, eax
mov eax, dword [ebp - 0x10]
mov eax, dword [eax + 0x80]
add edx, dword [eax + 0x18]
mov eax, dword [ebp - 0x4c]
call fcn.0040eb18
mov eax, 4
call fcn.004874b8
mov edx, eax
mov eax, dword [ebp - 0x10]
mov eax, dword [eax + 0x80]
add edx, dword [eax + 0x1c]
mov eax, dword [ebp - 0x4c]
call fcn.0040eb5c
push esi
push 0xffffffffffffffff
mov ecx, dword [ebp - 0x2c]
mov edx, dword [0x486c14]
xor eax, eax
call fcn.00488b98
mov edi, eax
mov eax, dword [ebp - 0x4c]
mov dword [eax + 0xee], edi
mov eax, dword [ebp - 0x10]
push eax
push 0x48fbb4
mov eax, dword [ebp - 0x4c]
call fcn.0040f034
lea ecx, [ebp - 0x60]
mov edx, ebx
mov eax, esi
call fcn.004753a0
mov edx, dword [ebp - 0x60]
mov eax, dword [ebp - 0x24]
call fcn.0040cf54
mov dword [ebp - 0x30], eax
mov eax, dword [ebp - 0x30]
mov edi, eax
mov eax, dword [edi + 0x30]
mov edx, dword [eax + 0xa4]
mov eax, edi
call fcn.0040eb88
mov eax, dword [edi + 0x30]
call fcn.0040f17c
push eax
mov eax, 2
call fcn.004874b8
pop edx
add edx, eax
mov eax, edi
call fcn.0040eac8
mov eax, dword [ebp - 0x2c]
call fcn.0040ea64
push eax
mov eax, dword [ebp - 0x2c]
call fcn.0040eafc
pop edx
add edx, eax
push edx
mov eax, 4
call fcn.004874a4
pop edx
add edx, eax
mov eax, edi
call fcn.0040ea7c
mov eax, dword [edi + 0x30]
call fcn.0040f198
push eax
mov eax, edi
call fcn.0040ea64
pop edx
sub edx, eax
push edx
mov eax, 8
call fcn.004874a4
pop edx
sub edx, eax
mov eax, edi
call fcn.0040eb18
mov eax, edi
mov dl, 1
call fcn.0040fde8
mov eax, edi
mov edx, dword [eax]
call dword [edx + 0x10]
mov eax, dword [ebp - 0x30]
call fcn.0040eab0
mov edi, eax
mov eax, dword [ebp - 0x30]
call fcn.0040eb40
add edi, eax
push edi
mov eax, dword [ebp - 0x2c]
call fcn.0040eab0
mov edi, eax
mov eax, dword [ebp - 0x2c]
call fcn.0040eb40
add edi, eax
mov eax, edi
pop edx
call fcn.0040b9e4
mov edx, eax
mov eax, dword [ebp - 0x24]
call fcn.0040f1b4
inc ebx
dec dword [ebp - 0x3c]
jne 0x48983d
jmp 0x4899fa
mov eax, dword [ebp - 0x24]
call fcn.0040eab0
mov ebx, eax
mov eax, dword [ebp - 0x24]
call fcn.0040eb40
add ebx, eax
mov edx, ebx
mov eax, dword [ebp - 0x34]
call fcn.0040f1b4
test esi, esi
je 0x489a7d
push 0xfdfdfd
mov eax, dword [ebp - 0x10]
mov ecx, esi
mov edx, dword [ebp - 0x14]
call fcn.0048a3f8
mov dword [ebp - 0x28], eax
mov eax, dword [ebp - 0x28]
mov ebx, eax
mov eax, dword [ebx + 0xee]
mov eax, dword [eax + 0x38]
mov edx, dword [eax + 0x18]
mov eax, ebx
call fcn.0040eb18
mov eax, dword [ebx + 0xee]
mov eax, dword [eax + 0x38]
mov edx, dword [eax + 0x1c]
shr edx, 3
mov eax, ebx
call fcn.0040eb5c
mov eax, dword [ebx + 0x30]
call fcn.0040f198
mov edi, eax
mov eax, ebx
call fcn.0040eafc
sub edi, eax
mov eax, 8
call fcn.004874a4
mov edx, edi
sub edx, eax
mov eax, ebx
call fcn.0040ea7c
movzx edx, byte [esi + 0x5d]
mov eax, ebx
call fcn.0040f4e8
mov eax, ebx
xor edx, edx
call fcn.0040e698
mov eax, dword [ebp - 0x24]
call fcn.0040eab0
mov ebx, eax
mov eax, dword [ebp - 0x24]
call fcn.0040eb40
add ebx, eax
mov edx, ebx
mov eax, dword [ebp - 0x40]
call fcn.0040f1b4
test esi, esi
je 0x489ac4
mov eax, dword [ebp - 0x14]
call fcn.0040f17c
push eax
mov eax, dword [ebp - 0x28]
call fcn.0040eb40
pop edx
sub edx, eax
sar edx, 1
jns 0x489aba
adc edx, 0
mov eax, dword [ebp - 0x28]
call fcn.0040eac8
jmp 0x489ae7
mov eax, dword [ebp - 0x14]
call fcn.0040f17c
push eax
mov eax, dword [ebp - 0x18]
call fcn.0040eb40
pop edx
sub edx, eax
sar edx, 1
jns 0x489adf
adc edx, 0
mov eax, dword [ebp - 0x18]
call fcn.0040eac8
mov ebx, dword [ebp - 0x14]
mov eax, dword [ebp - 0x10]
push eax
push fcn.00489efc
mov eax, ebx
call fcn.0040fb28
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x489b37
lea eax, [ebp - 0x60]
mov edx, 2
call fcn.00407098
lea eax, [ebp - 0xc]
mov edx, dword [0x486ac0]
call fcn.00407de4
lea eax, [ebp + 0x10]
mov edx, 2
call fcn.00407098
ret