Function at 0x42d640
Capabilities:
Get graphical window text

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x4c675d
mov eax, dword fs:[0]
push eax
mov eax, 0x1014
call fcn.004b81c0
mov eax, dword [0x4ff94c]
xor eax, ebp
mov dword [ebp - 0x10], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov eax, dword [ebp + 8]
mov esi, ecx
cmp dword [esi + 0x78], 0
mov dword [ebp - 0x1018], eax
jne 0x42d68b
or eax, 0xffffffff
jmp 0x42de67
mov ecx, dword [esi + 0x7c]
mov ebx, dword [ecx + 8]
mov dword [0x5096e8], ebx
mov ecx, dword [ebx + 0x64]
mov dword [ebp - 0x1014], ebx
mov dword [ebp - 0x1020], ecx
test ecx, ecx
je 0x42d683
push 1
call fcn.00451070
call fcn.00449080
cmp ebx, dword [0x5096e4]
je 0x42d6c9
push 0
push ebx
call fcn.0040c5b0
add esp, 8
mov eax, dword [esi + 0x7c]
test dword [eax + 0x40], 0x1000000
mov edi, dword [sym.imp.USER32.dll_SendMessageW]
je 0x42d6f1
and dword [eax + 0x40], 0xfeffffff
mov edx, dword [esi + 0x20]
push 0
push 0
push 0xcf
push edx
call edi
mov eax, dword [esi + 0x7c]
push 1
mov dword [ebx + 0x18], eax
call fcn.0040d200
add esp, 4
test eax, eax
je 0x42d729
mov ecx, dword [0x50af1c]
push 0
call fcn.00433f70
mov ecx, dword [esi + 0x20]
push ecx
call dword [sym.imp.USER32.dll_SetActiveWindow]
push eax
call sub.mfc100u.dll_CWnd::FromHandle
mov ecx, esi
call sub.mfc100u.dll_CWnd::SetFocus
mov dword [0x513238], 0x1a
mov dword [0x51323c], 0
mov eax, dword [esi + 0x7c]
xor edx, edx
mov ebx, 1
mov word [ebp - 0x810], dx
cmp word [eax + 0x16], bx
ja 0x42d780
push 0x3ff
lea ecx, [ebp - 0x810]
push ecx
mov ecx, esi
call sub.mfc100u.dll_CWnd::GetWindowTextW_1
test eax, eax
jle 0x42d780
test byte [ebp + 0x10], 0x10
jne 0x42d780
mov edx, dword [esi + 0x20]
push 0xffffffffffffffff
push 0
push 0xb1
push edx
call edi
mov eax, dword [ebp + 0xc]
mov ecx, dword [esi + 0x20]
push 0
push eax
push 0xc5
push ecx
call edi
mov ecx, dword [0x50184c]
test ecx, ecx
je 0x42d80c
movzx eax, word [ecx]
test ax, ax
je 0x42d805
cmp ax, 0x20
jb 0x42d7c2
mov edx, dword [esi + 0x20]
movzx eax, ax
push 0
push eax
push 0x102
push edx
call edi
mov ecx, dword [0x50184c]
jmp 0x42d7d7
mov edx, dword [esi + 0x7c]
cmp word [edx + 0x16], bx
ja 0x42d7d7
cmp ax, 0xa
je 0x42d7ef
cmp ax, 9
je 0x42d7ef
add ecx, 2
mov dword [0x50184c], ecx
movzx eax, word [ecx]
test ax, ax
jne 0x42d7a3
call fcn.0040a330
jmp 0x42d821
or dword [0x51323c], 2
add ecx, 2
mov dword [0x50184c], ecx
cmp word [ecx], 0
jne 0x42d821
call fcn.0040a330
jmp 0x42d821
cmp dword [0x50eaac], 0
je 0x42d821
push 0
push 0xffffffffffffffe8
call fcn.004909d0
add esp, 8
mov eax, dword [0x4fac2c]
cmp eax, dword [0x4fac30]
je 0x42d89a
mov edi, dword [sym.imp.USER32.dll_SendMessageW]
cmp dword [0x513238], 0
je 0x42d89a
cmp dword [0x51323c], 0
jne 0x42d89a
mov eax, dword [eax]
test eax, eax
jle 0x42d86e
call fcn.004908b0
push 0
push eax
mov eax, dword [esi + 0x20]
push 0x102
push eax
call edi
mov eax, dword [0x4fac2c]
cmp eax, dword [0x4fac30]
jne 0x42d834
jmp 0x42d89a
jne 0x42d890
call fcn.004908b0
push 0
push 0xd
mov dword [0x51323c], 0
mov ecx, dword [esi + 0x20]
push 0x102
push ecx
call edi
jmp 0x42d89a
mov dword [0x51323c], 8
mov eax, dword [ebp - 0x1020]
xor edx, edx
mov word [ebp - 0x12], dx
mov ecx, dword [eax + 0x9c]
xor edi, edi
cmp ecx, edi
je 0x42d8b9
push 1
call fcn.004490d0
mov ecx, dword [0x50a414]
cmp ecx, edi
je 0x42d8d2
mov edx, dword [ecx]
mov eax, dword [edx + 4]
push 1
call eax
mov dword [0x50a414], edi
mov ecx, dword [esi + 0x7c]
test dword [ecx + 0x40], 0x300000
je 0x42d91b
push 0x9c
call sub.MSVCR100.dll_void____cdecl_operator_new_unsigned_int_
add esp, 4
mov dword [ebp - 0x101c], eax
mov dword [ebp - 4], edi
cmp eax, edi
je 0x42d901
mov ecx, eax
call fcn.0041ff80
jmp 0x42d903
xor eax, eax
mov dword [ebp - 4], 0xffffffff
mov dword [0x50a414], eax
cmp eax, edi
je 0x42d91b
push esi
mov ecx, eax
call fcn.00420060
mov edx, dword [ebp + 0x10]
shr edx, 5
and dl, 1
mov byte [esi + 0x80], dl
cmp dword [0x50e358], edi
jne 0x42d944
mov eax, dword [esi + 0x7c]
mov ecx, dword [eax + 0x4c]
push 1
push edi
push ecx
call fcn.0040ddf0
add esp, 0xc
mov edx, dword [esi + 0x20]
push 1
push 0
push edx
call dword [sym.imp.USER32.dll_InvalidateRect]
mov eax, dword [0x513240]
mov ecx, dword [0x51323c]
mov edi, dword [ebp - 0x1014]
inc eax
mov dword [0x513240], eax
mov ebx, eax
test ecx, ecx
jne 0x42d9d5
nop
mov ecx, 0x50a900
mov dword [0x50a410], esi
call fcn.0043e020
test eax, eax
je 0x42d683
cmp ebx, dword [0x513240]
je 0x42d99a
or dword [0x51323c], 0x8000
mov ecx, dword [0x51323c]
test ecx, 0x8000
jne 0x42d9d1
mov dword [0x5096e8], edi
cmp edi, dword [0x5096e4]
je 0x42d9c1
push 0
push edi
call fcn.0040c5b0
add esp, 8
mov ecx, dword [0x51323c]
mov dword [0x513238], 0x1a
test ecx, ecx
je 0x42d970
xor eax, eax
mov ebx, ecx
mov dword [0x513238], eax
mov dword [ebp - 0x101c], ebx
mov dword [0x51323c], eax
mov dword [0x50a410], eax
mov word [0x509714], ax
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov ecx, dword [0x50a414]
mov dword [0x513244], eax
test ecx, ecx
je 0x42da1c
mov edx, dword [ecx]
mov eax, dword [edx + 4]
push 1
call eax
mov dword [0x50a414], 0
test ebx, 0x8000
je 0x42da2e
mov eax, 0xffffffe4
jmp 0x42de67
mov ecx, 0x50a900
call fcn.0043e0a0
push 0
push 0
push 0x4cbbf0
call fcn.0040ddf0
mov ecx, dword [esi + 0x7c]
push ecx
call fcn.0044ad50
mov ebx, dword [edi + 0x18]
push 0
mov dword [edi + 0x18], 0
call fcn.0040d200
add esp, 0x14
test eax, eax
je 0x42da84
mov edi, dword [ebp - 0x1020]
mov edx, dword [edi + 0x20]
push edx
call dword [sym.imp.USER32.dll_SetActiveWindow]
push eax
call sub.mfc100u.dll_CWnd::FromHandle
mov ecx, edi
call sub.mfc100u.dll_CWnd::SetFocus
mov al, byte [ebp - 0x101c]
test al, 0x20
je 0x42da98
mov eax, 0xffffffe6
jmp 0x42de67
xor edi, edi
test al, 0x11
je 0x42db61
cmp ebx, dword [esi + 0x7c]
je 0x42db61
movzx edx, word [ebx + 0x1a]
mov ecx, dword [ebp - 0x1014]
movzx edi, word [ecx + 0x26]
add edx, edi
mov dword [0x5014d8], edx
movzx edx, word [ebx + 0x18]
movzx edi, word [ecx + 0x24]
add edx, edi
mov dword [0x5014d4], edx
mov edx, dword [ebx + 0xc]
mov dword [0x5269a4], edx
mov bl, byte [ebx + 0x56]
cmp bl, 3
je 0x42daec
mov edi, 0xffffffec
cmp bl, 0xf
jne 0x42daf1
mov edi, 0xffffffe6
test dword [ecx + 0x10], 0x40000
jne 0x42db61
cmp edi, 0xffffffe6
jne 0x42db07
cmp edx, 0x7f000001
je 0x42db61
mov eax, dword [esi + 0x7c]
cmp byte [eax + 0x56], 1
jne 0x42db5a
mov ecx, dword [esi + 0x20]
mov ebx, dword [sym.imp.USER32.dll_SendMessageW]
push 0
push 0xffffffffffffffff
push 0xb1
push ecx
call ebx
mov edx, dword [esi + 0x20]
push 0
push 0
push 0xb7
push edx
call ebx
mov eax, dword [esi + 0x7c]
cmp word [eax + 0x16], 1
ja 0x42db4c
lea ecx, [ebp - 0x810]
push ecx
mov ecx, esi
call sub.mfc100u.dll_CWnd::SetWindowTextW
mov edx, dword [esi + 0x20]
push 1
push 0
push edx
call dword [sym.imp.USER32.dll_InvalidateRect]
mov eax, edi
jmp 0x42de67
mov ecx, dword [esi + 0x7c]
cmp byte [ecx + 0x56], 1
jne 0x42dba2
mov edx, dword [esi + 0x20]
mov ebx, dword [sym.imp.USER32.dll_SendMessageW]
push 0
push 0xffffffffffffffff
push 0xb1
push edx
call ebx
mov eax, dword [esi + 0x20]
push 0
push 0
push 0xb7
push eax
call ebx
mov ecx, dword [esi + 0x20]
push 1
push 0
push ecx
call dword [sym.imp.USER32.dll_InvalidateRect]
mov al, byte [ebp - 0x101c]
test al, 8
je 0x42dc3a
call fcn.004908b0
mov edi, eax
cmp edi, 0xfffffffc
je 0x42dc3a
cmp edi, 0xfffffffd
je 0x42dc3a
cmp edi, 0xfffffff8
je 0x42dc3a
mov edx, edi
and edx, 0xffffc000
cmp edx, 0xffff8000
je 0x42dc3a
mov eax, dword [ebp - 0x1014]
test dword [eax + 0x10], 0x40000
je 0x42dbf7
cmp edi, 0xfffffff6
je 0x42dc3a
cmp edi, 0xfffffff7
je 0x42dc3a
cmp edi, 0xfffffff9
je 0x42dc3a
cmp edi, 0xffffffe7
je 0x42dc3a
mov eax, dword [esi + 0x7c]
cmp byte [eax + 0x56], 1
jne 0x42dc33
cmp word [eax + 0x16], 1
ja 0x42dc33
cmp edi, 0xffffffff
je 0x42dc25
cmp edi, 0xfffffffe
je 0x42dc25
cmp edi, 0xfffffff6
je 0x42dc25
cmp edi, 0xfffffff7
je 0x42dc25
cmp edi, 0xfffffff9
je 0x42dc25
cmp edi, 0xffffffe7
jne 0x42dc33
lea ecx, [ebp - 0x810]
push ecx
mov ecx, esi
call sub.mfc100u.dll_CWnd::SetWindowTextW
mov eax, edi
jmp 0x42de67
mov eax, dword [ebp + 0xc]
cmp eax, 0x400
jb 0x42dc4c
mov ebx, dword [ebp - 0x1018]
jmp 0x42dc53
lea ebx, [ebp - 0x1010]
inc eax
push eax
push ebx
mov ecx, esi
call sub.mfc100u.dll_CWnd::GetWindowTextW_1
mov dword [ebp + 0xc], eax
test eax, eax
jg 0x42dcdc
xor eax, eax
cmp word [ebp - 0x810], ax
jne 0x42dcb0
test byte [ebp + 0x10], 1
je 0x42dd78
cmp byte [esi + 0x80], al
je 0x42dc92
cmp edi, 0xfffffff8
je 0x42dc8a
cmp edi, 0xfffffff9
jne 0x42dc92
mov dword [ebp + 0xc], eax
jmp 0x42dd78
mov edx, dword [esi + 0x7c]
test dword [edx + 0x40], 0x10000000
je 0x42dcb0
cmp edi, 0xfffffff6
je 0x42dca8
cmp edi, 0xfffffff7
jne 0x42dcb0
mov dword [ebp + 0xc], eax
jmp 0x42dd78
test byte [ebp + 0x10], 0x40
je 0x42dcc2
mov dword [ebp + 0xc], 0xffffffce
jmp 0x42dd78
mov ecx, dword [ebp - 0x1018]
mov eax, 0x20
mov word [ecx], ax
mov dword [ebp + 0xc], 1
jmp 0x42dd78
lea ecx, [ebp - 0x810]
mov eax, ebx
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x42dd0c
test dx, dx
je 0x42dd06
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x42dd0c
add eax, 4
add ecx, 4
test dx, dx
jne 0x42dce4
xor ecx, ecx
xor eax, eax
jmp 0x42dd13
sbb eax, eax
sbb eax, 0xffffffff
xor ecx, ecx
cmp eax, ecx
jne 0x42dd55
test byte [ebp + 0x10], 1
jne 0x42dd22
mov dword [ebp + 0xc], ecx
jmp 0x42dd78
cmp byte [esi + 0x80], 0
je 0x42dd3a
cmp edi, 0xfffffff8
je 0x42dd35
cmp edi, 0xfffffff9
jne 0x42dd3a
mov dword [ebp + 0xc], ecx
jmp 0x42dd78
mov edx, dword [esi + 0x7c]
test dword [edx + 0x40], 0x10000000
je 0x42dd55
cmp edi, 0xfffffff6
je 0x42dd50
cmp edi, 0xfffffff7
jne 0x42dd55
mov dword [ebp + 0xc], ecx
jmp 0x42dd78
cmp ebx, dword [ebp - 0x1018]
je 0x42dd78
mov eax, dword [ebp + 0xc]
mov edx, dword [ebp - 0x1018]
push eax
lea ecx, [ebp - 0x1010]
push ecx
push edx
call dword [sym.imp.MSVCR100.dll_wcsncpy]
add esp, 0xc
test edi, edi
je 0x42de64
cmp dword [ebp + 0xc], 0
je 0x42db5a
cmp edi, 0xfffffffc
je 0x42de58
cmp edi, 0xfffffffd
je 0x42de58
cmp edi, 0xfffffff8
jne 0x42ddb1
mov eax, 4
mov word [0x509714], ax
jmp 0x42de64
cmp edi, 0xfffffff9
jne 0x42ddbe
lea ecx, [edi + 0xf]
jmp 0x42de5d
cmp edi, 0xfffffff6
jne 0x42ddd4
mov edx, 0x10
mov word [0x509714], dx
jmp 0x42de64
cmp edi, 0xfffffff7
jne 0x42dde6
mov eax, 0x20
mov word [0x509714], ax
jmp 0x42de64
cmp edi, 0xffffffe7
jne 0x42ddf2
mov ecx, 0x100
jmp 0x42de5d
cmp edi, 0xffffffec
jne 0x42de05
mov edx, 0x40
mov word [0x509714], dx
jmp 0x42de64
cmp edi, 0xffffffe6
jne 0x42de35
mov eax, dword [0x5269a4]
cmp eax, 0x7f000001
jne 0x42de23
mov eax, 2
mov word [0x509714], ax
jmp 0x42de64
cmp eax, 0x7f000002
je 0x42d683
mov ecx, 0x80
jmp 0x42de5d
mov edx, edi
and edx, 0xffffc000
cmp edx, 0xffff8000
jne 0x42de64
mov eax, 0x200
mov dword [0x509718], edi
mov word [0x509714], ax
jmp 0x42de64
mov ecx, 1
mov word [0x509714], cx
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.004b7f56
mov esp, ebp
pop ebp
ret 0xc