Function at 0x52082f
Capabilities:
Get graphical window text

Disassembly:
push ebp
mov ebp, esp
add esp, 0xffffff80
push ebx
push esi
push edi
mov edi, dword [ebp + 0xc]
mov esi, dword [ebp + 8]
mov dword [0x56f180], 0xffffffff
push esi
call fcn.0051fafa
mov ebx, eax
test ebx, ebx
jne 0x52085b
mov eax, esi
jmp 0x521015
cmp edi, 0xffffffff
jne 0x520881
push dword [ebx]
call fcn.0051fe9d
test eax, eax
je 0x520875
xor edx, edx
mov dword [0x56f180], edx
jmp 0x5208a8
mov dword [0x56f180], 1
jmp 0x5208a8
push dword [ebx]
call fcn.0051fe9d
test eax, eax
je 0x520897
test edi, edi
je 0x5208a2
mov eax, dword [ebx]
jmp 0x521015
test edi, edi
jne 0x5208a2
mov eax, dword [ebx]
jmp 0x521015
mov dword [0x56f180], edi
mov edx, 0x80000000
mov dword [0x589c60], edx
mov dword [0x589c64], edx
mov dword [0x589c58], edx
mov dword [0x589c5c], edx
push esi
call sub.USER32.dll_IsIconic
test eax, eax
jne 0x5208d9
push esi
call sub.USER32.dll_IsWindowVisible
test eax, eax
jne 0x5208e5
mov dword [0x56f17c], 0x20000000
jmp 0x5208ec
xor eax, eax
mov dword [0x56f17c], eax
mov dword [ebp - 0x60], 0x2c
lea ecx, [ebp - 0x60]
push ecx
push esi
call sub.USER32.dll_GetWindowPlacement
mov eax, dword [ebp - 0x40]
mov dword [0x589c5c], eax
mov edx, dword [ebp - 0x44]
mov dword [0x589c58], edx
mov ecx, dword [ebp - 0x38]
sub ecx, eax
mov dword [0x589c64], ecx
mov eax, dword [ebp - 0x3c]
sub eax, edx
mov dword [0x589c60], eax
push esi
call fcn.0051fe9d
test eax, eax
jne 0x520985
mov edx, dword [0x589c58]
mov dword [ebp - 0x24], edx
mov ecx, dword [0x589c5c]
mov dword [ebp - 0x20], ecx
push 0
lea eax, [ebp - 0x70]
push eax
lea edx, [ebp - 0x24]
push edx
push 0
call fcn.004d56b4
push 1
lea ecx, [ebp - 0x80]
push ecx
lea eax, [ebp - 0x24]
push eax
push 0
call fcn.004d56b4
mov edx, dword [ebp - 0x80]
mov eax, dword [ebp - 0x70]
cmp edx, eax
je 0x520973
sub eax, edx
add dword [0x589c58], eax
mov edx, dword [ebp - 0x7c]
mov eax, dword [ebp - 0x6c]
cmp edx, eax
je 0x520985
sub eax, edx
add dword [0x589c5c], eax
mov edx, dword [0x589c58]
mov dword [ebp - 0x18], edx
mov ecx, dword [0x589c5c]
mov dword [ebp - 0x14], ecx
cmp dword [0x56f180], 1
jne 0x5209b1
lea eax, [ebp - 0x18]
push eax
push dword [0x56f01c]
call sub.USER32.dll_ScreenToClient
jmp 0x5209c0
lea edx, [ebp - 0x18]
push edx
push dword [0x56f01c]
call sub.USER32.dll_ClientToScreen
mov ecx, dword [ebp - 0x18]
mov dword [0x589c58], ecx
mov eax, dword [ebp - 0x14]
mov dword [0x589c5c], eax
mov edx, dword [0x55f2c4]
mov dword [ebp - 0x1c], edx
xor ecx, ecx
mov dword [0x55f2c4], ecx
push dword [ebx + 0xb6c]
push 0
push dword [ebx + 0x6c0]
push dword [ebx + 0x6bc]
lea eax, [ebx + 8]
push eax
call fcn.0052637f
mov edi, eax
push edi
call fcn.0051fafa
mov dword [ebp - 4], eax
cmp dword [ebp - 4], 0
jne 0x520a29
mov dword [0x56f180], 0xffffffff
mov eax, dword [ebp - 0x1c]
mov dword [0x55f2c4], eax
mov eax, esi
jmp 0x521015
mov dword [ebx], edi
mov edx, dword [ebp - 4]
mov dword [edx + 0x6bc], 0xffffffff
mov ecx, dword [ebp - 4]
xor eax, eax
mov dword [ecx], eax
mov edx, dword [ebp - 4]
xor ecx, ecx
mov dword [edx + 0xb6c], ecx
push edi
push esi
call fcn.00413069
push dword [ebx + 0x924]
call sub.GDI32.dll_DeleteObject
mov eax, dword [ebp - 4]
mov edx, dword [eax + 0x924]
mov dword [ebx + 0x924], edx
mov ecx, dword [ebp - 4]
xor eax, eax
mov dword [ecx + 0x924], eax
lea edx, [ebx + 0x928]
mov ecx, dword [ebp - 4]
add ecx, 0x928
push esi
push edi
mov esi, edx
mov edi, ecx
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 [ebp - 4]
mov edx, dword [eax + 0x98c]
mov dword [ebx + 0x98c], edx
mov ecx, dword [ebp - 4]
mov eax, dword [ecx + 0x990]
mov dword [ebx + 0x990], eax
mov edx, dword [ebp - 4]
mov ecx, dword [edx + 0x998]
mov dword [ebx + 0x998], ecx
mov eax, dword [ebp - 4]
mov edx, dword [eax + 0x99c]
mov dword [ebx + 0x99c], edx
mov ecx, dword [ebp - 4]
mov eax, dword [ecx + 0x70c]
mov dword [ebx + 0x70c], eax
mov eax, dword [ebx + 0x820]
test eax, eax
je 0x520b16
cmp dword [ebx + 0x838], 0
je 0x520b16
push dword [ebx + 0x838]
push 0xfffffffffffffffc
push eax
call sub.USER32.dll_SetWindowLongA
mov edx, dword [ebp - 4]
mov ecx, dword [edx + 0x838]
mov dword [ebx + 0x838], ecx
mov eax, dword [ebp - 4]
xor edx, edx
mov dword [eax + 0x838], edx
mov eax, dword [ebx + 0x818]
test eax, eax
je 0x520b51
cmp dword [ebx + 0x830], 0
je 0x520b51
push dword [ebx + 0x830]
push 0xfffffffffffffffc
push eax
call sub.USER32.dll_SetWindowLongA
mov edx, dword [ebp - 4]
mov ecx, dword [edx + 0x830]
mov dword [ebx + 0x830], ecx
mov eax, dword [ebp - 4]
xor edx, edx
mov dword [eax + 0x830], edx
mov eax, dword [ebx + 0x81c]
test eax, eax
je 0x520b8c
cmp dword [ebx + 0x834], 0
je 0x520b8c
push dword [ebx + 0x834]
push 0xfffffffffffffffc
push eax
call sub.USER32.dll_SetWindowLongA
mov edx, dword [ebp - 4]
mov ecx, dword [edx + 0x834]
mov dword [ebx + 0x834], ecx
mov eax, dword [ebp - 4]
xor edx, edx
mov dword [eax + 0x834], edx
mov eax, dword [ebx + 0x810]
test eax, eax
je 0x520bc7
cmp dword [ebx + 0x82c], 0
je 0x520bc7
push dword [ebx + 0x82c]
push 0xfffffffffffffffc
push eax
call sub.USER32.dll_SetWindowLongA
mov edx, dword [ebp - 4]
mov ecx, dword [edx + 0x82c]
mov dword [ebx + 0x82c], ecx
mov eax, dword [ebp - 4]
xor edx, edx
mov dword [eax + 0x82c], edx
mov ecx, dword [ebx + 0x820]
mov dword [ebp - 8], ecx
mov eax, dword [ebx + 0x818]
mov dword [ebp - 0xc], eax
mov edx, dword [ebx + 0x81c]
mov dword [ebp - 0x10], edx
mov ecx, dword [ebp - 4]
mov eax, dword [ecx + 0x810]
mov dword [ebx + 0x810], eax
mov edx, dword [ebp - 4]
mov ecx, dword [edx + 0x814]
mov dword [ebx + 0x814], ecx
mov eax, dword [ebp - 4]
mov edx, dword [eax + 0x818]
mov dword [ebx + 0x818], edx
mov ecx, dword [ebp - 4]
mov eax, dword [ecx + 0x81c]
mov dword [ebx + 0x81c], eax
mov edx, dword [ebp - 4]
mov ecx, dword [edx + 0x820]
mov dword [ebx + 0x820], ecx
mov eax, dword [ebp - 4]
mov edx, dword [eax + 0x824]
mov dword [ebx + 0x824], edx
mov ecx, dword [ebp - 4]
mov eax, dword [ecx + 0x840]
mov dword [ebx + 0x840], eax
mov edx, dword [ebp - 4]
mov ecx, dword [edx + 0x844]
mov dword [ebx + 0x844], ecx
mov eax, dword [ebp - 4]
mov edx, dword [eax + 0x848]
mov dword [ebx + 0x848], edx
mov ecx, dword [ebp - 4]
mov eax, dword [ecx + 0x84c]
mov dword [ebx + 0x84c], eax
xor edx, edx
mov dword [ebx + 0x83c], edx
push dword [ebp - 4]
call fcn.0051f860
push 0x3b5
push 0x579f7a
push esi
call sub.USER32.dll_GetWindowTextA
push 0x579f7a
push edi
call sub.USER32.dll_SetWindowTextA
push ebx
call fcn.00524e64
cmp dword [ebx + 0x6bc], 0
jne 0x520cdd
mov ecx, dword [0x56f180]
mov dword [0x56f034], ecx
jmp 0x520d6a
mov eax, dword [ebx + 0x6bc]
cmp eax, 2
jne 0x520cff
cmp dword [ebx + 0x6c0], 2
jne 0x520cff
mov edx, dword [0x56f180]
mov dword [0x56f03c], edx
jmp 0x520d6a
cmp eax, 4
jne 0x520d12
mov ecx, dword [0x56f180]
mov dword [0x56f054], ecx
jmp 0x520d6a
cmp eax, 5
jne 0x520d29
mov dword [0x56f030], edi
mov eax, dword [0x56f180]
mov dword [0x56f048], eax
jmp 0x520d6a
cmp eax, 6
jne 0x520d42
mov dword [0x56f028], edi
mov edx, dword [0x56f180]
mov dword [0x56f050], edx
jmp 0x520d6a
cmp eax, 7
jne 0x520d5b
mov dword [0x56f02c], edi
mov ecx, dword [0x56f180]
mov dword [0x56f04c], ecx
jmp 0x520d6a
cmp eax, 8
jne 0x520d6a
mov eax, dword [0x56f180]
mov dword [0x56f058], eax
cmp dword [ebx + 0x6bc], 3
jne 0x520daa
push 0x579f7a
push 0x3e7
push 0xd
push 0x76
push esi
call sub.USER32.dll_SendDlgItemMessageA
cmp byte [0x579f7a], 0
je 0x520da4
push 0x579f7a
push 0x3e7
push 0xc
push 0x76
push edi
call sub.USER32.dll_SendDlgItemMessageA
push edi
call fcn.0051884c
cmp dword [ebp - 0xc], 0
je 0x520e09
push 0x579f7a
push 0x3e7
push 0xd
push dword [ebp - 0xc]
call sub.USER32.dll_SendMessageA
cmp byte [0x579f7a], 0
je 0x520e09
push 0x579f7a
push 0x3e7
push 0xc
push dword [ebx + 0x818]
call sub.USER32.dll_SendMessageA
lea edx, [ebp - 0x2c]
push edx
lea ecx, [ebp - 0x28]
push ecx
push 1
push dword [ebp - 0xc]
call fcn.00478569
push dword [ebp - 0x2c]
push dword [ebp - 0x28]
push 1
push dword [ebx + 0x818]
call fcn.00478480
cmp dword [ebp - 0x10], 0
je 0x520e68
push 0x579f7a
push 0x3e7
push 0xd
push dword [ebp - 0x10]
call sub.USER32.dll_SendMessageA
cmp byte [0x579f7a], 0
je 0x520e68
push 0x579f7a
push 0x3e7
push 0xc
push dword [ebx + 0x81c]
call sub.USER32.dll_SendMessageA
lea eax, [ebp - 0x34]
push eax
lea edx, [ebp - 0x30]
push edx
push 1
push dword [ebp - 0x10]
call fcn.00478569
push dword [ebp - 0x34]
push dword [ebp - 0x30]
push 1
push dword [ebx + 0x81c]
call fcn.00478480
cmp dword [ebp - 8], 0
je 0x520e77
push dword [ebp - 8]
push ebx
call fcn.0052060c
mov edx, dword [0x55f25c]
test edx, edx
je 0x520ec7
mov eax, dword [edx + 0x12b4]
test eax, eax
je 0x520ea3
cmp esi, dword [eax + 0x310]
jne 0x520e99
mov dword [eax + 0x310], edi
mov eax, dword [eax + 0x428]
test eax, eax
jne 0x520e8b
mov eax, dword [edx + 0x1c90]
test eax, eax
je 0x520ebd
cmp esi, dword [eax]
jne 0x520eb3
mov dword [eax], edi
mov eax, dword [eax + 0x200]
test eax, eax
jne 0x520ead
mov edx, dword [edx + 0x1e28]
test edx, edx
jne 0x520e81
mov eax, dword [0x56e970]
test eax, eax
je 0x520ee8
cmp esi, dword [eax + 0x90]
jne 0x520ede
mov dword [eax + 0x90], edi
mov eax, dword [eax + 0x494]
test eax, eax
jne 0x520ed0
mov eax, dword [0x566350]
test eax, eax
je 0x520f03
cmp esi, dword [eax]
jne 0x520ef9
mov dword [eax], edi
jmp 0x520f03
mov eax, dword [eax + 0x3b4]
test eax, eax
jne 0x520ef1
mov eax, dword [0x56d9cc]
test eax, eax
je 0x520f1e
cmp esi, dword [eax]
jne 0x520f14
mov dword [eax], edi
jmp 0x520f1e
mov eax, dword [eax + 0x3cc]
test eax, eax
jne 0x520f0c
mov eax, dword [0x561210]
test eax, eax
je 0x520f39
cmp esi, dword [eax]
jne 0x520f2f
mov dword [eax], edi
jmp 0x520f39
mov eax, dword [eax + 0x88c]
test eax, eax
jne 0x520f27
mov eax, dword [0x5645f0]
test eax, eax
je 0x520f5a
cmp esi, dword [eax + 0x134]
jne 0x520f50
mov dword [eax + 0x134], edi
mov eax, dword [eax + 0x544]
test eax, eax
jne 0x520f42
mov eax, dword [0x566050]
test eax, eax
je 0x520f73
cmp esi, dword [eax]
jne 0x520f69
mov dword [eax], edi
mov eax, dword [eax + 0x218]
test eax, eax
jne 0x520f63
push 0
push 0
push 0x10
push esi
call sub.USER32.dll_SendMessageA
cmp dword [ebx + 0x818], 0
je 0x520f90
push 2
push ebx
call fcn.0052466f
cmp dword [ebx + 0x6bc], 3
jne 0x520fbe
cmp dword [ebx + 0x6c0], 1
jne 0x520fb1
push dword [ebx]
call fcn.0050366f
push eax
call fcn.0051698e
jmp 0x520fbe
push dword [ebx]
call fcn.0048ba7c
push eax
call fcn.00516a61
push 0x80b8
push edi
call fcn.005225d7
push 1
push ebx
call fcn.0051fe59
mov edx, dword [ebp - 0x1c]
mov dword [0x55f2c4], edx
mov edi, dword [0x56f180]
mov dword [0x56f180], 0xffffffff
test edi, edi
je 0x521004
push dword [0x56f018]
call sub.USER32.dll_BringWindowToTop
push dword [0x56f018]
call sub.USER32.dll_SetForegroundWindow
push 0
push ebx
call fcn.0052416a
push 0
call fcn.004172e2
mov eax, dword [ebx]
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 8