Function at 0x4e98fc
Capabilities:
Get graphical window text

Disassembly:
push ebp
mov ebp, esp
push ebx
push esi
push edi
mov edi, dword [ebp + 0xc]
mov esi, dword [ebp + 8]
mov dword [0x4fdb68], 0xffffffff
push esi
call fcn.004eae80
mov ebx, eax
test ebx, ebx
je 0x4ea114
cmp edi, 0xffffffff
jne 0x4e9949
mov eax, dword [ebx]
push eax
call fcn.004e8a90
test eax, eax
je 0x4e993d
xor edx, edx
mov dword [0x4fdb68], edx
jmp 0x4e996d
mov dword [0x4fdb68], 1
jmp 0x4e996d
mov ecx, dword [ebx]
push ecx
call fcn.004e8a90
test eax, eax
je 0x4e995f
test edi, edi
jne 0x4ea114
jmp 0x4e9967
test edi, edi
je 0x4ea114
mov dword [0x4fdb68], edi
mov eax, 0x80000000
mov dword [0x524200], eax
mov dword [0x524204], eax
mov dword [0x5241f8], eax
mov dword [0x5241fc], eax
push esi
call sub.USER32.dll_IsIconic
test eax, eax
jne 0x4e999a
push esi
call sub.USER32.dll_IsWindowVisible
test eax, eax
jne 0x4e99a6
mov dword [0x4fdb64], 0x20000000
jmp 0x4e99ae
xor edx, edx
mov dword [0x4fdb64], edx
mov dword [0x523f90], 0x2c
push 0x523f90
push esi
call sub.USER32.dll_GetWindowPlacement
mov eax, dword [0x523fb0]
mov dword [0x5241fc], eax
mov edx, dword [0x523fac]
mov dword [0x5241f8], edx
mov ecx, dword [0x523fb8]
sub ecx, eax
mov dword [0x524204], ecx
mov eax, dword [0x523fb4]
sub eax, edx
mov dword [0x524200], eax
mov edx, dword [0x5241f8]
mov dword [0x523fbc], edx
mov ecx, dword [0x5241fc]
mov dword [0x523fc0], ecx
cmp dword [0x4fdb68], 1
jne 0x4e9a26
push 0x523fbc
mov eax, dword [0x4fd9f0]
push eax
call sub.USER32.dll_ScreenToClient
jmp 0x4e9a37
push 0x523fbc
mov edx, dword [0x4fd9f0]
push edx
call sub.USER32.dll_ClientToScreen
mov ecx, dword [0x523fbc]
mov dword [0x5241f8], ecx
mov eax, dword [0x523fc0]
mov dword [0x5241fc], eax
mov edx, dword [0x4fccb4]
mov dword [0x523fc4], edx
xor ecx, ecx
mov dword [0x4fccb4], ecx
push 0
mov al, byte [ebx + 0x4cd]
push eax
mov dl, byte [ebx + 0x4cc]
push edx
lea ecx, [ebx + 4]
push ecx
call fcn.004ee374
mov edi, eax
mov dword [0x523f84], edi
push edi
call fcn.004eae80
mov edi, eax
test edi, edi
jne 0x4e9aa7
mov dword [0x4fdb68], 0xffffffff
mov eax, dword [0x523fc4]
mov dword [0x4fccb4], eax
jmp 0x4ea114
mov edx, dword [0x523f84]
mov dword [ebx], edx
mov byte [edi + 0x4cc], 0xff
xor ecx, ecx
mov dword [edi], ecx
mov eax, dword [ebx + 0x600]
push eax
call sub.GDI32.dll_DeleteObject
mov edx, dword [edi + 0x600]
mov dword [ebx + 0x600], edx
xor ecx, ecx
mov dword [edi + 0x600], ecx
lea eax, [ebx + 0x604]
lea edx, [edi + 0x604]
push esi
push edi
mov esi, eax
mov edi, edx
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
mov eax, dword [edi + 0x668]
mov dword [ebx + 0x668], eax
mov edx, dword [edi + 0x66c]
mov dword [ebx + 0x66c], edx
mov ecx, dword [edi + 0x674]
mov dword [ebx + 0x674], ecx
mov eax, dword [edi + 0x678]
mov dword [ebx + 0x678], eax
mov edx, dword [edi + 0x4f4]
mov dword [ebx + 0x4f4], edx
mov ecx, dword [ebx + 0x5d4]
mov dword [0x523f88], ecx
mov eax, dword [ebx + 0x5d0]
mov dword [0x523f8c], eax
mov edx, dword [edi + 0x5d0]
mov dword [ebx + 0x5d0], edx
mov ecx, dword [edi + 0x5d4]
mov dword [ebx + 0x5d4], ecx
mov eax, dword [edi + 0x5d8]
mov dword [ebx + 0x5d8], eax
push edi
call fcn.004e88c4
push 0x180
push 0x515718
push esi
call sub.USER32.dll_GetWindowTextA
push 0x515718
mov edx, dword [0x523f84]
push edx
call sub.USER32.dll_SetWindowTextA
cmp byte [ebx + 0x4cc], 0
jne 0x4e9bcd
mov ecx, dword [0x523f84]
mov dword [0x4fd9fc], ecx
mov eax, dword [0x4fdb68]
mov dword [0x4fda18], eax
jmp 0x4e9c89
mov al, byte [ebx + 0x4cc]
cmp al, 2
jne 0x4e9bfd
cmp byte [ebx + 0x4cd], 2
jne 0x4e9bfd
mov edx, dword [0x523f84]
mov dword [0x4fda14], edx
mov ecx, dword [0x4fdb68]
mov dword [0x4fda20], ecx
jmp 0x4e9c89
cmp al, 4
jne 0x4e9c19
mov eax, dword [0x523f84]
mov dword [0x4fda00], eax
mov edx, dword [0x4fdb68]
mov dword [0x4fda38], edx
jmp 0x4e9c89
cmp al, 5
jne 0x4e9c35
mov ecx, dword [0x523f84]
mov dword [0x4fda10], ecx
mov eax, dword [0x4fdb68]
mov dword [0x4fda2c], eax
jmp 0x4e9c89
cmp al, 6
jne 0x4e9c53
mov edx, dword [0x523f84]
mov dword [0x4fda04], edx
mov ecx, dword [0x4fdb68]
mov dword [0x4fda34], ecx
jmp 0x4e9c89
cmp al, 7
jne 0x4e9c6f
mov eax, dword [0x523f84]
mov dword [0x4fda08], eax
mov edx, dword [0x4fdb68]
mov dword [0x4fda30], edx
jmp 0x4e9c89
cmp al, 8
jne 0x4e9c89
mov ecx, dword [0x523f84]
mov dword [0x4fda0c], ecx
mov eax, dword [0x4fdb68]
mov dword [0x4fda3c], eax
mov eax, dword [0x523f8c]
test eax, eax
je 0x4e9d20
push 0x515718
push 0x3e7
push 0xd
push eax
call sub.USER32.dll_SendMessageA
cmp byte [0x515718], 0
je 0x4e9d20
push 0x515718
push 0x3e7
push 0xc
mov edx, dword [ebx + 0x5d0]
push edx
call sub.USER32.dll_SendMessageA
push 0
push 0
push 0xb0
mov ecx, dword [0x523f8c]
push ecx
call sub.USER32.dll_SendMessageA
mov edi, eax
mov dword [0x523fc8], edi
shr edi, 0x10
and di, 0xffff
movzx eax, di
push eax
movzx edx, word [0x523fc8]
push edx
push 0xb1
mov ecx, dword [ebx + 0x5d0]
push ecx
call sub.USER32.dll_SendMessageA
push 0
push 0
push 0xb7
mov eax, dword [ebx + 0x5d0]
push eax
call sub.USER32.dll_SendMessageA
cmp dword [0x523f88], 0
je 0x4e9fc2
push 0
push 0
push 0x184
push 0x425
mov edx, dword [0x523f84]
push edx
call sub.USER32.dll_SendDlgItemMessageA
push 0
push 0
push 0x18b
mov ecx, dword [0x523f88]
push ecx
call sub.USER32.dll_SendMessageA
mov edi, eax
mov dword [0x523fcc], edi
inc edi
je 0x4e9f39
xor eax, eax
mov dword [0x523fe0], eax
jmp 0x4e9eb9
cmp byte [ebx + 0x4cc], 4
jne 0x4e9dd2
push 0x523fdc
push eax
push 0x189
mov edx, dword [0x523f88]
push edx
call sub.USER32.dll_SendMessageA
mov edi, dword [0x523fdc]
test edi, edi
je 0x4e9dc9
push esi
push edi
mov esi, 0x515718
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
jmp 0x4e9dee
mov byte [0x515718], 0
jmp 0x4e9dee
push 0x515718
mov eax, dword [0x523fe0]
push eax
push 0x189
mov edx, dword [0x523f88]
push edx
call sub.USER32.dll_SendMessageA
cmp byte [0x515718], 0
je 0x4e9eb3
push 0
mov ecx, dword [0x523fe0]
push ecx
push 0x199
mov eax, dword [0x523f88]
push eax
call sub.USER32.dll_SendMessageA
mov dword [0x523fd8], eax
push 0x515718
push 0xffffffffffffffff
push 0x181
push 0x425
mov edx, dword [0x523f84]
push edx
call sub.USER32.dll_SendDlgItemMessageA
mov edi, eax
mov dword [0x523fd4], edi
inc edi
je 0x4e9e6a
mov eax, dword [0x523fd8]
push eax
mov edx, dword [0x523fd4]
push edx
push 0x19a
push 0x425
mov ecx, dword [0x523f84]
push ecx
call sub.USER32.dll_GetDlgItem
push eax
call sub.USER32.dll_SendMessageA
push 0
mov eax, dword [0x523fe0]
push eax
push 0x187
mov edx, dword [0x523f88]
push edx
call sub.USER32.dll_SendMessageA
mov dword [0x523fd0], eax
mov eax, dword [0x523fd0]
test eax, eax
je 0x4e9eb3
inc eax
je 0x4e9eb3
mov edx, dword [0x523fe0]
push edx
push 1
push 0x185
push 0x425
mov ecx, dword [0x523f84]
push ecx
call sub.USER32.dll_SendDlgItemMessageA
inc dword [0x523fe0]
mov eax, dword [0x523fe0]
cmp eax, dword [0x523fcc]
jl 0x4e9d77
push 0
push 0
push 0x18e
mov edx, dword [0x523f88]
push edx
call sub.USER32.dll_SendMessageA
mov edi, eax
mov dword [0x523fcc], edi
push 0
push edi
push 0x197
push 0x425
mov eax, dword [0x523f84]
push eax
call sub.USER32.dll_SendDlgItemMessageA
push 0
push 0
push 0x19f
mov edx, dword [0x523f88]
push edx
call sub.USER32.dll_SendMessageA
mov edi, eax
mov dword [0x523fcc], edi
cmp edi, 0xffffffff
je 0x4e9f39
push 0
push edi
push 0x19e
push 0x425
mov eax, dword [0x523f84]
push eax
call sub.USER32.dll_SendDlgItemMessageA
cmp byte [ebx + 0x4cc], 4
jne 0x4e9f5c
push 0
push 0x4fddfa
push 0x425
mov edx, dword [0x4fda00]
push edx
call fcn.004ea900
jmp 0x4e9fc2
cmp byte [ebx + 0x4cc], 6
jne 0x4e9f7f
push 3
push 0x4fddfe
push 0x425
mov ecx, dword [0x4fda04]
push ecx
call fcn.004ea900
jmp 0x4e9fc2
cmp byte [ebx + 0x4cc], 7
jne 0x4e9fa1
push 1
push 0x4fde05
push 0x425
mov eax, dword [0x4fda08]
push eax
call fcn.004ea900
jmp 0x4e9fc2
cmp byte [ebx + 0x4cc], 8
jne 0x4e9fc2
push 2
push 0x4fde09
push 0x425
mov edx, dword [0x4fda0c]
push edx
call fcn.004ea900
mov eax, dword [0x4fd8a4]
test eax, eax
je 0x4e9fe9
cmp esi, dword [eax + 0x484]
jne 0x4e9fdf
mov edx, dword [0x523f84]
mov dword [eax + 0x484], edx
mov eax, dword [eax + 0x49c]
test eax, eax
jne 0x4e9fcb
mov eax, dword [0x4fcecc]
test eax, eax
je 0x4ea010
cmp esi, dword [eax + 0x88]
jne 0x4ea006
mov edx, dword [0x523f84]
mov dword [eax + 0x88], edx
mov eax, dword [eax + 0x480]
test eax, eax
jne 0x4e9ff2
mov eax, dword [0x4fb6f0]
test eax, eax
je 0x4ea02f
cmp esi, dword [eax]
jne 0x4ea025
mov edx, dword [0x523f84]
mov dword [eax], edx
mov eax, dword [eax + 0x1f0]
test eax, eax
jne 0x4ea019
mov eax, dword [0x4f6954]
test eax, eax
je 0x4ea050
cmp esi, dword [eax]
jne 0x4ea046
mov edx, dword [0x523f84]
mov dword [eax], edx
jmp 0x4ea050
mov eax, dword [eax + 0x43c]
test eax, eax
jne 0x4ea038
mov eax, dword [0x4fc1a4]
test eax, eax
je 0x4ea071
cmp esi, dword [eax]
jne 0x4ea067
mov edx, dword [0x523f84]
mov dword [eax], edx
jmp 0x4ea071
mov eax, dword [eax + 0x450]
test eax, eax
jne 0x4ea059
mov eax, dword [0x4f2764]
test eax, eax
je 0x4ea092
cmp esi, dword [eax]
jne 0x4ea088
mov edx, dword [0x523f84]
mov dword [eax], edx
jmp 0x4ea092
mov eax, dword [eax + 0x870]
test eax, eax
jne 0x4ea07a
push 0
push 0
push 0x10
push esi
call sub.USER32.dll_SendMessageA
push 0
mov ecx, dword [0x523f84]
push ecx
call fcn.004eb4c8
push 1
push 0
mov eax, dword [0x523f84]
push eax
call sub.USER32.dll_InvalidateRect
mov edx, dword [0x523f84]
push edx
call sub.USER32.dll_UpdateWindow
mov ecx, dword [0x523fc4]
mov dword [0x4fccb4], ecx
mov edi, dword [0x4fdb68]
mov dword [0x4fdb68], 0xffffffff
test edi, edi
je 0x4ea0fe
mov eax, dword [0x4fd9ec]
push eax
call sub.USER32.dll_BringWindowToTop
mov edx, dword [0x4fd9ec]
push edx
call sub.USER32.dll_SetForegroundWindow
push ebx
call fcn.004ecb44
cmp dword [0x4fccb4], 0
je 0x4ea114
push 0
call fcn.004d9d04
pop edi
pop esi
pop ebx
pop ebp
ret 8