Function at 0x5684b0
Capabilities:
Get graphical window text

Disassembly:
sub esp, 0x84c
mov eax, ecx
test eax, eax
push ebp
push esi
mov esi, edx
mov dword [esp + 8], eax
mov dword [0x5c0288], 0xffffffff
je 0x568e49
mov ebp, dword [0x5f92e4]
test ebp, ebp
je 0x568e49
cmp dword [ebp], eax
je 0x5684f8
mov ebp, dword [ebp + 0xe08]
test ebp, ebp
jne 0x5684e0
pop esi
pop ebp
add esp, 0x84c
ret
cmp esi, 0xffffffff
mov eax, dword [ebp]
push ebx
push edi
mov edi, dword [sym.imp.USER32.dll_GetParent]
jne 0x56852f
test eax, eax
je 0x568523
push eax
call edi
cmp eax, dword [0x5f92f0]
jne 0x568523
mov dword [0x5c0288], 0
jmp 0x56855e
mov dword [0x5c0288], 1
jmp 0x56855e
test eax, eax
je 0x568550
push eax
call edi
cmp eax, dword [0x5f92f0]
jne 0x568550
test esi, esi
je 0x568558
mov eax, dword [ebp]
pop edi
pop ebx
pop esi
pop ebp
add esp, 0x84c
ret
test esi, esi
je 0x568e44
mov dword [0x5c0288], esi
mov esi, dword [esp + 0x10]
mov ebx, dword [sym.imp.USER32.dll_IsIconic]
mov eax, bind
push esi
mov dword [0x5f9110], eax
mov dword [0x5f9114], eax
mov dword [0x5f9108], eax
mov dword [0x5f910c], eax
call ebx
test eax, eax
jne 0x56859d
push esi
call dword [sym.imp.USER32.dll_IsWindowVisible]
test eax, eax
mov dword [0x5f930c], 0
jne 0x5685a7
mov dword [0x5f930c], 0x20000000
lea eax, [esp + 0x60]
push eax
push esi
mov dword [esp + 0x68], 0x2c
call dword [sym.imp.USER32.dll_GetWindowPlacement]
mov eax, dword [esp + 0x80]
mov edx, dword [esp + 0x88]
mov ecx, dword [esp + 0x7c]
sub edx, eax
mov dword [0x5f910c], eax
mov eax, dword [esp + 0x84]
sub eax, ecx
push esi
mov dword [0x5f9108], ecx
mov dword [0x5f9114], edx
mov dword [0x5f9110], eax
call edi
mov ecx, dword [0x5f92f0]
xor esi, esi
cmp eax, ecx
je 0x56865c
mov ecx, dword [0x5f9108]
mov edx, dword [0x5f910c]
push esi
lea eax, [esp + 0x44]
mov dword [esp + 0x38], ecx
mov dword [esp + 0x3c], edx
push eax
lea edx, [esp + 0x3c]
xor ecx, ecx
call fcn.004f0910
push 1
lea ecx, [esp + 0x54]
push ecx
lea edx, [esp + 0x3c]
xor ecx, ecx
call fcn.004f0910
mov eax, dword [esp + 0x40]
mov ecx, dword [esp + 0x50]
cmp eax, ecx
je 0x568648
sub eax, ecx
add dword [0x5f9108], eax
mov eax, dword [esp + 0x44]
mov ecx, dword [esp + 0x54]
cmp eax, ecx
je 0x56865c
sub eax, ecx
add dword [0x5f910c], eax
mov eax, dword [0x5f910c]
mov edx, dword [0x5f9108]
mov dword [esp + 0x28], eax
mov eax, dword [0x5c0288]
mov edi, 1
cmp eax, edi
mov dword [esp + 0x24], edx
jne 0x568691
mov edx, dword [0x5f92f0]
lea ecx, [esp + 0x24]
push ecx
push edx
call dword [sym.imp.USER32.dll_ScreenToClient]
jmp 0x5686a3
mov ecx, dword [0x5f92f0]
lea eax, [esp + 0x24]
push eax
push ecx
call dword [sym.imp.USER32.dll_ClientToScreen]
mov edx, dword [esp + 0x24]
mov eax, dword [esp + 0x28]
mov dword [0x5f9108], edx
mov edx, 0x3e7
lea ecx, [esp + 0x8c]
mov dword [0x5f910c], eax
mov dword [esp + 0x1c], esi
mov dword [esp + 0x2c], esi
call fcn.00420e60
mov ecx, dword [ebp + 0x884]
cmp ecx, esi
je 0x56870c
push 0x3b5
lea edx, [esp + 0x90]
push edx
mov edx, dword [ebp + 0x8b4]
call fcn.0047e1e0
mov edx, dword [ebp + 0x8b4]
lea eax, [esp + 0x2c]
push eax
lea ecx, [esp + 0x20]
push ecx
mov ecx, dword [ebp + 0x884]
call fcn.0047e430
mov edx, 0x3e7
lea ecx, [esp + 0x474]
mov dword [esp + 0x14], esi
mov dword [esp + 0x30], esi
call fcn.00420e60
mov ecx, dword [ebp + 0x888]
cmp ecx, esi
je 0x568762
push 0x3b5
lea edx, [esp + 0x478]
push edx
mov edx, dword [ebp + 0x8b4]
call fcn.0047e1e0
mov edx, dword [ebp + 0x8b4]
lea eax, [esp + 0x30]
push eax
lea ecx, [esp + 0x18]
push ecx
mov ecx, dword [ebp + 0x888]
call fcn.0047e430
mov eax, dword [0x5f8b8c]
mov edx, dword [0x5bfdbc]
mov dword [0x5bfdbc], esi
mov dword [0x5f8b8c], esi
mov dword [esp + 0x20], eax
cmp dword [ebp + 0x71c], 9
mov dword [esp + 0x18], edx
mov dword [ebp + 0xe04], edi
jne 0x56881c
xor eax, eax
lea esi, [ebp + 0xc00]
mov ecx, 0x69
mov edi, 0x5f9140
rep movsd dword es:[edi], dword [esi]
mov esi, dword [0x5c0288]
xor ecx, ecx
cmp esi, eax
sete cl
mov dword [0x5f91b4], 1
mov dword [0x5f9150], ecx
mov edx, dword [ebp + 0xa40]
mov dword [0x5f9168], edx
mov dword [0x5f9164], eax
mov dword [0x5f9160], eax
mov dword [0x5f9194], eax
mov eax, dword [ebp]
push eax
call ebx
test eax, eax
jne 0x568812
mov ecx, dword [ebp]
push ecx
call dword [sym.imp.USER32.dll_IsWindowVisible]
test eax, eax
je 0x568812
mov edx, dword [ebp]
push edx
call dword [sym.imp.USER32.dll_IsZoomed]
test eax, eax
je 0x56881c
mov dword [0x5f9164], 1
jmp 0x56881c
mov dword [0x5f9160], 1
mov eax, dword [ebp + 0xbe8]
mov ecx, dword [ebp + 0x720]
mov edx, dword [ebp + 0x71c]
xor edi, edi
push edi
push eax
push edi
push ecx
lea ecx, [ebp + 8]
call fcn.005677e0
mov ebx, eax
cmp ebx, edi
je 0x56885e
mov esi, dword [0x5f92e4]
cmp esi, edi
je 0x56885e
lea esp, [esp]
cmp dword [esi], ebx
je 0x56888a
mov esi, dword [esi + 0xe08]
cmp esi, edi
jne 0x568850
mov eax, dword [esp + 0x20]
mov edx, dword [esp + 0x18]
pop edi
pop ebx
pop esi
mov dword [0x5f8b8c], eax
mov eax, dword [esp + 4]
mov dword [0x5c0288], 0xffffffff
mov dword [0x5bfdbc], edx
pop ebp
add esp, 0x84c
ret
mov ecx, dword [esp + 0x10]
mov dword [ebp], ebx
mov edx, ebx
mov dword [esi + 0x71c], 0xffffffff
mov dword [esi], edi
mov dword [esi + 0xbe8], edi
call fcn.004f1610
mov ecx, dword [ebp + 0x98c]
push ecx
call dword [sym.imp.GDI32.dll_DeleteObject]
mov edx, dword [esi + 0x98c]
mov dword [ebp + 0x98c], edx
lea eax, [esi + 0x990]
lea edx, [ebp + 0x990]
mov dword [esi + 0x98c], edi
sub edx, eax
mov cl, byte [eax]
mov byte [edx + eax], cl
inc eax
test cl, cl
jne 0x5688d7
mov eax, dword [esi + 0x9f4]
mov edi, dword [sym.imp.USER32.dll_SetWindowLongA]
mov dword [ebp + 0x9f4], eax
mov ecx, dword [esi + 0x9f8]
mov dword [ebp + 0x9f8], ecx
mov edx, dword [esi + 0xa00]
mov dword [ebp + 0xa00], edx
mov eax, dword [esi + 0xa04]
mov dword [ebp + 0xa04], eax
mov eax, dword [ebp + 0x88c]
test eax, eax
mov ecx, dword [esi + 0x76c]
mov dword [ebp + 0x76c], ecx
je 0x56893d
mov ecx, dword [ebp + 0x8a4]
test ecx, ecx
je 0x56893d
push ecx
push 0xfffffffffffffffc
push eax
call edi
mov edx, dword [esi + 0x8a4]
mov dword [ebp + 0x8a4], edx
mov dword [esi + 0x8a4], 0
mov eax, dword [ebp + 0x884]
test eax, eax
je 0x56896d
mov ecx, dword [ebp + 0x89c]
test ecx, ecx
je 0x56896d
push ecx
push 0xfffffffffffffffc
push eax
call edi
mov eax, dword [esi + 0x89c]
mov dword [ebp + 0x89c], eax
mov dword [esi + 0x89c], 0
mov eax, dword [ebp + 0x888]
test eax, eax
je 0x56899d
mov ecx, dword [ebp + 0x8a0]
test ecx, ecx
je 0x56899d
push ecx
push 0xfffffffffffffffc
push eax
call edi
mov ecx, dword [esi + 0x8a0]
mov dword [ebp + 0x8a0], ecx
mov dword [esi + 0x8a0], 0
mov eax, dword [ebp + 0x87c]
test eax, eax
je 0x5689cd
mov ecx, dword [ebp + 0x898]
test ecx, ecx
je 0x5689cd
push ecx
push 0xfffffffffffffffc
push eax
call edi
mov edx, dword [esi + 0x898]
mov dword [ebp + 0x898], edx
xor eax, eax
mov dword [esi + 0x898], eax
mov ecx, dword [ebp + 0x884]
mov edx, dword [ebp + 0x888]
mov edi, dword [ebp + 0x88c]
mov dword [esp + 0x3c], ecx
mov ecx, dword [esi + 0x87c]
mov dword [ebp + 0x87c], ecx
mov dword [esp + 0x34], edx
mov edx, dword [esi + 0x880]
mov dword [ebp + 0x880], edx
mov ecx, dword [esi + 0x884]
mov dword [ebp + 0x884], ecx
mov edx, dword [esi + 0x888]
mov dword [ebp + 0x888], edx
mov ecx, dword [esi + 0x88c]
mov dword [ebp + 0x88c], ecx
mov edx, dword [esi + 0x890]
mov dword [ebp + 0x890], edx
mov ecx, dword [esi + 0x8ac]
mov dword [ebp + 0x8ac], ecx
mov edx, dword [esi + 0x8b0]
mov dword [ebp + 0x8b0], edx
mov ecx, dword [esi + 0x8b4]
mov dword [ebp + 0x8b4], ecx
mov edx, dword [esi + 0x8b8]
mov ecx, esi
mov dword [ebp + 0x8b8], edx
mov dword [ebp + 0x8a8], eax
call fcn.00560d90
mov eax, dword [esp + 0x10]
push 0x3b5
push 0x5eef00
push eax
call dword [sym.imp.USER32.dll_GetWindowTextA]
push 0x5eef00
push ebx
call dword [sym.imp.USER32.dll_SetWindowTextA]
mov ecx, ebp
call fcn.00565d70
mov eax, dword [ebp + 0x71c]
test eax, eax
jne 0x568ac3
mov ecx, dword [0x5c0288]
mov dword [0x5c0144], ecx
jmp 0x568b49
cmp eax, 2
jne 0x568ade
cmp dword [ebp + 0x720], eax
jne 0x568ade
mov edx, dword [0x5c0288]
mov dword [0x5c014c], edx
jmp 0x568b49
cmp eax, 4
jne 0x568aef
mov eax, dword [0x5c0288]
mov dword [0x5c0164], eax
jmp 0x568b49
cmp eax, 5
jne 0x568b08
mov ecx, dword [0x5c0288]
mov dword [0x5f9304], ebx
mov dword [0x5c0158], ecx
jmp 0x568b49
cmp eax, 6
jne 0x568b21
mov edx, dword [0x5c0288]
mov dword [0x5f92fc], ebx
mov dword [0x5c0160], edx
jmp 0x568b49
cmp eax, 7
jne 0x568b38
mov eax, dword [0x5c0288]
mov dword [0x5f9300], ebx
mov dword [0x5c015c], eax
jmp 0x568b49
cmp eax, 8
jne 0x568b49
mov ecx, dword [0x5c0288]
mov dword [0x5c0168], ecx
cmp dword [ebp + 0x71c], 3
jne 0x568b8b
mov edx, dword [esp + 0x10]
mov esi, dword [sym.imp.USER32.dll_SendDlgItemMessageA]
push 0x5eef00
push 0x3e7
push 0xd
push 0x76
push edx
call esi
mov al, byte [0x5eef00]
test al, al
je 0x568b84
push 0x5eef00
push 0
push 0xc
push 0x76
push ebx
call esi
mov ecx, ebx
call fcn.0054b980
test edi, edi
je 0x568b98
mov edx, edi
mov ecx, ebp
call fcn.00561c70
mov ecx, dword [0x5f002c]
test ecx, ecx
mov edx, dword [esp + 0x10]
je 0x568bec
mov eax, dword [ecx + 0x1720]
test eax, eax
je 0x568bc8
cmp dword [eax + 0x310], edx
jne 0x568bbe
mov dword [eax + 0x310], ebx
mov eax, dword [eax + 0x428]
test eax, eax
jne 0x568bb0
mov eax, dword [ecx + 0x2258]
test eax, eax
je 0x568be2
cmp dword [eax], edx
jne 0x568bd8
mov dword [eax], ebx
mov eax, dword [eax + 0x264]
test eax, eax
jne 0x568bd2
mov ecx, dword [ecx + 0x2500]
test ecx, ecx
jne 0x568ba6
mov eax, dword [0x5f7f64]
test eax, eax
je 0x568c0d
cmp dword [eax + 0x90], edx
jne 0x568c03
mov dword [eax + 0x90], ebx
mov eax, dword [eax + 0x494]
test eax, eax
jne 0x568bf5
mov eax, dword [0x5ed44c]
test eax, eax
je 0x568c28
cmp dword [eax], edx
je 0x568c26
mov eax, dword [eax + 0x4bc]
test eax, eax
jne 0x568c16
jmp 0x568c28
mov dword [eax], ebx
mov eax, dword [0x5f4f78]
test eax, eax
je 0x568c43
cmp dword [eax], edx
je 0x568c41
mov eax, dword [eax + 0x3d4]
test eax, eax
jne 0x568c31
jmp 0x568c43
mov dword [eax], ebx
mov eax, dword [0x5c81a0]
test eax, eax
je 0x568c62
lea esp, [esp]
cmp dword [eax], edx
je 0x568c60
mov eax, dword [eax + 0x890]
test eax, eax
jne 0x568c50
jmp 0x568c62
mov dword [eax], ebx
mov eax, dword [0x5cb9dc]
test eax, eax
je 0x568c88
jmp 0x568c70
cmp dword [eax + 0x134], edx
jne 0x568c7e
mov dword [eax + 0x134], ebx
mov eax, dword [eax + 0x544]
test eax, eax
jne 0x568c70
mov eax, dword [0x5cd3f0]
test eax, eax
je 0x568ca1
cmp dword [eax], edx
jne 0x568c97
mov dword [eax], ebx
mov eax, dword [eax + 0x21c]
test eax, eax
jne 0x568c91
mov eax, dword [0x5cb9d4]
test eax, eax
je 0x568cc8
lea ebx, [ebx]
cmp dword [eax + 0x18c], edx
jne 0x568cbe
mov dword [eax + 0x18c], ebx
mov eax, dword [eax + 0x9d0]
test eax, eax
jne 0x568cb0
mov eax, dword [0x5c9f3c]
test eax, eax
je 0x568ce9
cmp dword [eax + 0xc8], edx
jne 0x568cdf
mov dword [eax + 0xc8], ebx
mov eax, dword [eax + 0x13b0]
test eax, eax
jne 0x568cd1
push 0
push 0
push 0x10
push edx
call dword [sym.imp.USER32.dll_SendMessageA]
mov eax, dword [ebp + 0x884]
test eax, eax
je 0x568d0c
mov edx, 2
mov ecx, ebp
call fcn.00565480
cmp dword [ebp + 0x71c], 3
jne 0x568d3b
cmp dword [ebp + 0x720], 1
mov ecx, dword [ebp]
jne 0x568d2f
call fcn.005261e0
mov ecx, eax
call fcn.00549a20
jmp 0x568d3b
call fcn.00491c00
mov ecx, eax
call fcn.00549b00
mov eax, dword [esp + 0x3c]
test eax, eax
je 0x568d76
mov edx, dword [ebp + 0x8b4]
mov ecx, dword [ebp + 0x884]
lea eax, [esp + 0x8c]
push eax
call fcn.0047e680
mov ecx, dword [esp + 0x2c]
mov edx, dword [esp + 0x1c]
push ecx
mov ecx, dword [ebp + 0x884]
push edx
mov edx, 1
call fcn.0047e370
mov eax, dword [esp + 0x34]
test eax, eax
je 0x568db1
mov edx, dword [ebp + 0x8b4]
mov ecx, dword [ebp + 0x888]
lea eax, [esp + 0x474]
push eax
call fcn.0047e680
mov ecx, dword [esp + 0x30]
mov edx, dword [esp + 0x14]
push ecx
mov ecx, dword [ebp + 0x888]
push edx
mov edx, 1
call fcn.0047e370
mov edx, 0x80b8
mov ecx, ebx
call fcn.00563590
mov edx, 1
mov ecx, ebp
call fcn.005613a0
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x20]
mov dword [0x5bfdbc], eax
mov eax, dword [0x5c0288]
test eax, eax
mov dword [0x5f8b8c], ecx
mov dword [0x5c0288], 0xffffffff
je 0x568e08
mov edx, dword [0x5f92ec]
push edx
call dword [sym.imp.USER32.dll_BringWindowToTop]
mov eax, dword [0x5f92ec]
push eax
call dword [sym.imp.USER32.dll_SetForegroundWindow]
xor edx, edx
mov ecx, ebp
call fcn.00564f70
mov eax, dword [ebp + 0xdd8]
test eax, eax
je 0x568e2a
mov ecx, dword [ebp]
push 0
mov edx, 0x8098
call fcn.005625c0
mov ecx, dword [ebp]
push 0x601
push 0
push 0
push ecx
call dword [sym.imp.USER32.dll_RedrawWindow]
xor ecx, ecx
call fcn.0053b590
mov eax, dword [ebp]
pop edi
pop ebx
pop esi
pop ebp
add esp, 0x84c
ret