Function at 0x514a2d
Capabilities:
Get graphical window text

Disassembly:
push ebp
mov ebp, esp
add esp, 0xffffffd8
push ebx
push esi
push edi
mov edi, dword [ebp + 0xc]
mov esi, dword [ebp + 8]
mov dword [0x55b540], 0xffffffff
push esi
call fcn.00516145
mov ebx, eax
test ebx, ebx
je 0x515366
cmp edi, 0xffffffff
jne 0x514a7b
push dword [ebx]
call fcn.00514192
test eax, eax
je 0x514a6f
xor eax, eax
mov dword [0x55b540], eax
jmp 0x514a9e
mov dword [0x55b540], 1
jmp 0x514a9e
push dword [ebx]
call fcn.00514192
test eax, eax
je 0x514a90
test edi, edi
jne 0x515366
jmp 0x514a98
test edi, edi
je 0x515366
mov dword [0x55b540], edi
mov edx, 0x80000000
mov dword [0x58cbf0], edx
mov dword [0x58cbf4], edx
mov dword [0x58cbe8], edx
mov dword [0x58cbec], edx
push esi
call sub.USER32.dll_IsIconic
test eax, eax
jne 0x514acf
push esi
call sub.USER32.dll_IsWindowVisible
test eax, eax
jne 0x514adb
mov dword [0x55b53c], 0x20000000
jmp 0x514ae2
xor eax, eax
mov dword [0x55b53c], eax
mov dword [0x58c95c], 0x2c
push 0x58c95c
push esi
call sub.USER32.dll_GetWindowPlacement
mov eax, dword [0x58c97c]
mov dword [0x58cbec], eax
mov edx, dword [0x58c978]
mov dword [0x58cbe8], edx
mov ecx, dword [0x58c984]
sub ecx, eax
mov dword [0x58cbf4], ecx
mov eax, dword [0x58c980]
sub eax, edx
mov dword [0x58cbf0], eax
cmp dword [0x556164], 0
je 0x514b95
push esi
call fcn.00514192
test eax, eax
jne 0x514b95
mov edx, dword [0x58cbe8]
mov dword [ebp - 8], edx
mov ecx, dword [0x58cbec]
mov dword [ebp - 4], ecx
push 0
lea eax, [ebp - 0x18]
push eax
lea edx, [ebp - 8]
push edx
push 0
call fcn.004c6b38
push 1
lea ecx, [ebp - 0x28]
push ecx
lea eax, [ebp - 8]
push eax
push 0
call fcn.004c6b38
mov edx, dword [ebp - 0x28]
mov eax, dword [ebp - 0x18]
cmp edx, eax
je 0x514b81
sub eax, dword [ebp - 0x28]
add dword [0x58cbe8], eax
mov edx, dword [ebp - 0x24]
cmp edx, dword [ebp - 0x14]
je 0x514b95
mov ecx, dword [ebp - 0x14]
sub ecx, dword [ebp - 0x24]
add dword [0x58cbec], ecx
mov eax, dword [0x58cbe8]
mov dword [0x58c988], eax
mov edx, dword [0x58cbec]
mov dword [0x58c98c], edx
cmp dword [0x55b540], 1
jne 0x514bc6
push 0x58c988
push dword [0x55b3cc]
call sub.USER32.dll_ScreenToClient
jmp 0x514bd6
push 0x58c988
push dword [0x55b3cc]
call sub.USER32.dll_ClientToScreen
mov ecx, dword [0x58c988]
mov dword [0x58cbe8], ecx
mov eax, dword [0x58c98c]
mov dword [0x58cbec], eax
mov edx, dword [0x55a3c0]
mov dword [0x58c990], edx
xor ecx, ecx
mov dword [0x55a3c0], ecx
push 0
mov al, byte [ebx + 0x64d]
push eax
mov dl, byte [ebx + 0x64c]
push edx
lea ecx, [ebx + 4]
push ecx
call fcn.00519cb1
mov edi, eax
mov dword [0x58c950], edi
push edi
call fcn.00516145
mov edi, eax
test edi, edi
jne 0x514c46
mov dword [0x55b540], 0xffffffff
mov eax, dword [0x58c990]
mov dword [0x55a3c0], eax
jmp 0x515366
mov edx, dword [0x58c950]
mov dword [ebx], edx
mov byte [edi + 0x64c], 0xff
xor ecx, ecx
mov dword [edi], ecx
push dword [ebx + 0x7a0]
call sub.GDI32.dll_DeleteObject
mov eax, dword [edi + 0x7a0]
mov dword [ebx + 0x7a0], eax
xor edx, edx
mov dword [edi + 0x7a0], edx
lea ecx, [ebx + 0x7a4]
lea eax, [edi + 0x7a4]
push esi
push edi
mov esi, ecx
mov edi, eax
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 + 0x808]
mov dword [ebx + 0x808], eax
mov edx, dword [edi + 0x80c]
mov dword [ebx + 0x80c], edx
mov ecx, dword [edi + 0x814]
mov dword [ebx + 0x814], ecx
mov eax, dword [edi + 0x818]
mov dword [ebx + 0x818], eax
mov edx, dword [edi + 0x670]
mov dword [ebx + 0x670], edx
mov eax, dword [ebx + 0x758]
test eax, eax
je 0x514d06
cmp dword [ebx + 0x778], 0
je 0x514d06
push dword [ebx + 0x778]
push 0xfffffffffffffffc
push eax
call sub.USER32.dll_SetWindowLongA
mov edx, dword [edi + 0x778]
mov dword [ebx + 0x778], edx
xor ecx, ecx
mov dword [edi + 0x778], ecx
mov eax, dword [ebx + 0x75c]
mov dword [0x58c954], eax
mov edx, dword [ebx + 0x758]
mov dword [0x58c958], edx
mov ecx, dword [edi + 0x758]
mov dword [ebx + 0x758], ecx
mov eax, dword [edi + 0x75c]
mov dword [ebx + 0x75c], eax
mov edx, dword [edi + 0x760]
mov dword [ebx + 0x760], edx
mov ecx, dword [edi + 0x764]
mov dword [ebx + 0x764], ecx
mov eax, dword [edi + 0x768]
mov dword [ebx + 0x768], eax
mov edx, dword [edi + 0x76c]
mov dword [ebx + 0x76c], edx
mov ecx, dword [edi + 0x770]
mov dword [ebx + 0x770], ecx
mov eax, dword [edi + 0x774]
mov dword [ebx + 0x774], eax
push edi
call fcn.00513f34
push 0x3b5
push 0x57c4a0
push esi
call sub.USER32.dll_GetWindowTextA
push 0x57c4a0
push dword [0x58c950]
call sub.USER32.dll_SetWindowTextA
cmp byte [ebx + 0x64c], 0
jne 0x514ddd
mov edx, dword [0x58c950]
mov dword [0x55b3d8], edx
mov ecx, dword [0x55b540]
mov dword [0x55b3f4], ecx
jmp 0x514e99
mov al, byte [ebx + 0x64c]
cmp al, 2
jne 0x514e0d
cmp byte [ebx + 0x64d], 2
jne 0x514e0d
mov edx, dword [0x58c950]
mov dword [0x55b3f0], edx
mov ecx, dword [0x55b540]
mov dword [0x55b3fc], ecx
jmp 0x514e99
cmp al, 4
jne 0x514e29
mov eax, dword [0x58c950]
mov dword [0x55b3dc], eax
mov edx, dword [0x55b540]
mov dword [0x55b414], edx
jmp 0x514e99
cmp al, 5
jne 0x514e45
mov ecx, dword [0x58c950]
mov dword [0x55b3ec], ecx
mov eax, dword [0x55b540]
mov dword [0x55b408], eax
jmp 0x514e99
cmp al, 6
jne 0x514e63
mov edx, dword [0x58c950]
mov dword [0x55b3e0], edx
mov ecx, dword [0x55b540]
mov dword [0x55b410], ecx
jmp 0x514e99
cmp al, 7
jne 0x514e7f
mov eax, dword [0x58c950]
mov dword [0x55b3e4], eax
mov edx, dword [0x55b540]
mov dword [0x55b40c], edx
jmp 0x514e99
cmp al, 8
jne 0x514e99
mov ecx, dword [0x58c950]
mov dword [0x55b3e8], ecx
mov eax, dword [0x55b540]
mov dword [0x55b418], eax
cmp byte [ebx + 0x64c], 3
jne 0x514ee3
push 0x57c4a0
push 0x3e7
push 0xd
push 0x76
push esi
call sub.USER32.dll_SendDlgItemMessageA
cmp byte [0x57c4a0], 0
je 0x514ed8
push 0x57c4a0
push 0x3e7
push 0xc
push 0x76
push dword [0x58c950]
call sub.USER32.dll_SendDlgItemMessageA
push dword [0x58c950]
call fcn.0050b8c8
mov eax, dword [0x58c958]
test eax, eax
je 0x514f79
push 0x57c4a0
push 0x3e7
push 0xd
push eax
call sub.USER32.dll_SendMessageA
cmp byte [0x57c4a0], 0
je 0x514f79
push 0x57c4a0
push 0x3e7
push 0xc
push dword [ebx + 0x758]
call sub.USER32.dll_SendMessageA
push 0
push 0
push 0xb0
push dword [0x58c958]
call sub.USER32.dll_SendMessageA
mov dword [0x58c994], eax
mov edx, dword [0x58c994]
shr edx, 0x10
and dx, 0xffff
movzx ecx, dx
push ecx
movzx eax, word [0x58c994]
push eax
push 0xb1
push dword [ebx + 0x758]
call sub.USER32.dll_SendMessageA
push 0
push 0
push 0xb7
push dword [ebx + 0x758]
call sub.USER32.dll_SendMessageA
cmp dword [0x58c954], 0
je 0x51520b
push 0
push 0
push 0x184
push 0x425
push dword [0x58c950]
call sub.USER32.dll_SendDlgItemMessageA
push 0
push 0
push 0x18b
push dword [0x58c954]
call sub.USER32.dll_SendMessageA
mov edi, eax
mov dword [0x58c998], edi
inc edi
je 0x515185
xor eax, eax
mov dword [0x58c9ac], eax
jmp 0x515107
cmp byte [ebx + 0x64c], 4
jne 0x515028
push 0x58c9a8
push eax
push 0x189
push dword [0x58c954]
call sub.USER32.dll_SendMessageA
mov edi, dword [0x58c9a8]
test edi, edi
je 0x51501f
push esi
push edi
mov esi, 0x57c4a0
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 0x515043
mov byte [0x57c4a0], 0
jmp 0x515043
push 0x57c4a0
push dword [0x58c9ac]
push 0x189
push dword [0x58c954]
call sub.USER32.dll_SendMessageA
cmp byte [0x57c4a0], 0
je 0x515101
push 0
push dword [0x58c9ac]
push 0x199
push dword [0x58c954]
call sub.USER32.dll_SendMessageA
mov dword [0x58c9a4], eax
push 0x57c4a0
push 0xffffffffffffffff
push 0x181
push 0x425
push dword [0x58c950]
call sub.USER32.dll_SendDlgItemMessageA
mov edi, eax
mov dword [0x58c9a0], edi
inc edi
je 0x5150bb
push dword [0x58c9a4]
push dword [0x58c9a0]
push 0x19a
push 0x425
push dword [0x58c950]
call sub.USER32.dll_GetDlgItem
push eax
call sub.USER32.dll_SendMessageA
push 0
push dword [0x58c9ac]
push 0x187
push dword [0x58c954]
call sub.USER32.dll_SendMessageA
mov dword [0x58c99c], eax
mov eax, dword [0x58c99c]
test eax, eax
je 0x515101
inc eax
je 0x515101
push dword [0x58c9ac]
push 1
push 0x185
push 0x425
push dword [0x58c950]
call sub.USER32.dll_SendDlgItemMessageA
inc dword [0x58c9ac]
mov eax, dword [0x58c9ac]
cmp eax, dword [0x58c998]
jl 0x514fce
push 0
push 0
push 0x18e
push dword [0x58c954]
call sub.USER32.dll_SendMessageA
mov edi, eax
mov dword [0x58c998], edi
push 0
push edi
push 0x197
push 0x425
push dword [0x58c950]
call sub.USER32.dll_SendDlgItemMessageA
push 0
push 0
push 0x19f
push dword [0x58c954]
call sub.USER32.dll_SendMessageA
mov edi, eax
mov dword [0x58c998], edi
cmp edi, 0xffffffff
je 0x515185
push 0
push edi
push 0x19e
push 0x425
push dword [0x58c950]
call sub.USER32.dll_SendDlgItemMessageA
cmp byte [ebx + 0x64c], 4
jne 0x5151a7
push 0
push 0x55b699
push 0x425
push dword [0x55b3dc]
call fcn.00515b46
jmp 0x51520b
cmp byte [ebx + 0x64c], 6
jne 0x5151c9
push 3
push str._tURL:
push 0x425
push dword [0x55b3e0]
call fcn.00515b46
jmp 0x51520b
cmp byte [ebx + 0x64c], 7
jne 0x5151eb
push 1
push 0x55b6a4
push 0x425
push dword [0x55b3e4]
call fcn.00515b46
jmp 0x51520b
cmp byte [ebx + 0x64c], 8
jne 0x51520b
push 2
push 0x55b6a8
push 0x425
push dword [0x55b3e8]
call fcn.00515b46
mov eax, dword [0x55b190]
test eax, eax
je 0x515232
cmp esi, dword [eax + 0x484]
jne 0x515228
mov edx, dword [0x58c950]
mov dword [eax + 0x484], edx
mov eax, dword [eax + 0x49c]
test eax, eax
jne 0x515214
mov eax, dword [0x55a630]
test eax, eax
je 0x515259
cmp esi, dword [eax + 0x8c]
jne 0x51524f
mov edx, dword [0x58c950]
mov dword [eax + 0x8c], edx
mov eax, dword [eax + 0x488]
test eax, eax
jne 0x51523b
mov eax, dword [0x5583d8]
test eax, eax
je 0x515278
cmp esi, dword [eax]
jne 0x51526e
mov edx, dword [0x58c950]
mov dword [eax], edx
mov eax, dword [eax + 0x1fc]
test eax, eax
jne 0x515262
mov eax, dword [0x551b48]
test eax, eax
je 0x515299
cmp esi, dword [eax]
jne 0x51528f
mov edx, dword [0x58c950]
mov dword [eax], edx
jmp 0x515299
mov eax, dword [eax + 0x39c]
test eax, eax
jne 0x515281
mov eax, dword [0x559644]
test eax, eax
je 0x5152ba
cmp esi, dword [eax]
jne 0x5152b0
mov edx, dword [0x58c950]
mov dword [eax], edx
jmp 0x5152ba
mov eax, dword [eax + 0x3b4]
test eax, eax
jne 0x5152a2
mov eax, dword [0x54cbf4]
test eax, eax
je 0x5152db
cmp esi, dword [eax]
jne 0x5152d1
mov edx, dword [0x58c950]
mov dword [eax], edx
jmp 0x5152db
mov eax, dword [eax + 0x87c]
test eax, eax
jne 0x5152c3
push 0
push 0
push 0x10
push esi
call sub.USER32.dll_SendMessageA
push 0
push dword [0x58c950]
call fcn.00516816
push 1
push 0
push dword [0x58c950]
call sub.USER32.dll_InvalidateRect
push dword [0x58c950]
call sub.USER32.dll_UpdateWindow
mov ecx, dword [0x58c990]
mov dword [0x55a3c0], ecx
mov edi, dword [0x55b540]
mov dword [0x55b540], 0xffffffff
test edi, edi
je 0x515344
push dword [0x55b3c8]
call sub.USER32.dll_BringWindowToTop
push dword [0x55b3c8]
call sub.USER32.dll_SetForegroundWindow
push ebx
call fcn.005181c3
push 0
push edi
push 0
push dword [ebx]
call fcn.004de669
cmp dword [0x55a3c0], 0
je 0x515366
push 0
call fcn.005010e4
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 8