Function at 0x42f440
Capabilities:
Get graphical window text

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x5b5550
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0xfd4
push ebx
push esi
push edi
xor esi, esi
mov dword [ebp - 0x10], esp
mov edi, ecx
push esi
mov dword [ebp - 0x40], edi
mov dword [ebp - 4], esi
call fcn.005a035a
mov eax, dword [edi + 0x90]
cmp eax, esi
jne 0x42f484
lea eax, [edi + 0x94]
push eax
lea ecx, [ebp - 0x1c]
mov dword [ebp - 0x1c], esi
mov dword [ebp - 0x14], esi
mov word [ebp - 0x18], si
call fcn.00401ee0
mov eax, dword [ebp - 0x1c]
mov byte [ebp - 4], 1
cmp eax, esi
jne 0x42f4a5
lea eax, [ebp - 0x18]
push 0x3a
push eax
call fcn.00584c8f
mov ebx, eax
add esp, 8
cmp ebx, esi
je 0x42f5e3
add ebx, 2
push 0x3a
push ebx
call fcn.00584c8f
add esp, 8
test eax, eax
je 0x42f5e3
push ebx
lea ecx, [ebp - 0x30]
mov dword [ebp - 0x30], esi
mov dword [ebp - 0x28], esi
mov word [ebp - 0x2c], si
call fcn.00401ee0
mov esi, dword [ebp - 0x30]
mov byte [ebp - 4], 2
test esi, esi
je 0x42f50e
push esi
call fcn.00584816
add esp, 4
lea eax, [esi + eax*2]
cmp esi, eax
jae 0x42f50e
cmp word [esi], 0x3a
jne 0x42f509
mov word [esi], 0x2d
add esi, 2
jmp 0x42f4fa
mov word [ebx], 0
mov eax, dword [ebp - 0x1c]
test eax, eax
jne 0x42f51d
lea eax, [ebp - 0x18]
xor esi, esi
push eax
lea ecx, [ebp - 0x3c]
mov dword [ebp - 0x3c], esi
mov dword [ebp - 0x34], esi
mov word [ebp - 0x38], si
call fcn.00401ee0
mov ebx, dword [ebp - 0x30]
mov byte [ebp - 4], 3
cmp ebx, esi
jne 0x42f544
lea ebx, [ebp - 0x2c]
cmp ebx, esi
je 0x42f5bd
push ebx
call fcn.00584816
add esp, 4
test eax, eax
je 0x42f5bd
mov eax, dword [ebp - 0x3c]
cmp eax, esi
je 0x42f565
push eax
call fcn.00584816
add esp, 4
mov esi, eax
jmp 0x42f567
xor esi, esi
push ebx
call fcn.00584816
add eax, esi
lea eax, [eax + eax + 2]
push eax
call fcn.0059cff9
mov esi, eax
add esp, 8
test esi, esi
je 0x42f5bd
mov eax, dword [ebp - 0x3c]
test eax, eax
je 0x42f59c
push eax
push esi
call fcn.005849ba
push ebx
push esi
call fcn.00584990
add esp, 0x10
jmp 0x42f5a6
push ebx
push esi
call fcn.005849ba
add esp, 8
lea ecx, [ebp - 0x3c]
call fcn.00401070
push esi
mov dword [ebp - 0x3c], esi
call fcn.00584816
add esp, 4
mov dword [ebp - 0x34], eax
mov ecx, dword [ebp - 0x3c]
push ecx
lea ecx, [ebp - 0x1c]
call fcn.00401ee0
lea ecx, [ebp - 0x3c]
mov byte [ebp - 4], 2
call fcn.00401070
lea ecx, [ebp - 0x30]
mov byte [ebp - 4], 1
call fcn.00401070
xor esi, esi
mov eax, dword [ebp - 0x1c]
cmp eax, esi
je 0x42f715
push eax
mov esi, eax
call fcn.00584816
add esp, 4
lea eax, [esi + eax*2]
cmp esi, eax
jae 0x42f610
cmp word [esi], 0x2a
jne 0x42f60b
mov word [esi], 0x2d
add esi, 2
jmp 0x42f5fc
mov eax, dword [ebp - 0x1c]
test eax, eax
je 0x42f715
push eax
mov esi, eax
call fcn.00584816
add esp, 4
lea eax, [esi + eax*2]
cmp esi, eax
jae 0x42f63d
cmp word [esi], 0x3f
jne 0x42f638
mov word [esi], 0x2d
add esi, 2
jmp 0x42f629
mov eax, dword [ebp - 0x1c]
test eax, eax
je 0x42f715
push eax
mov esi, eax
call fcn.00584816
add esp, 4
lea eax, [esi + eax*2]
cmp esi, eax
jae 0x42f66a
cmp word [esi], 0x7c
jne 0x42f665
mov word [esi], 0x2d
add esi, 2
jmp 0x42f656
mov eax, dword [ebp - 0x1c]
test eax, eax
je 0x42f715
push eax
mov esi, eax
call fcn.00584816
add esp, 4
lea eax, [esi + eax*2]
cmp esi, eax
jae 0x42f697
cmp word [esi], 0x3c
jne 0x42f692
mov word [esi], 0x2d
add esi, 2
jmp 0x42f683
mov eax, dword [ebp - 0x1c]
test eax, eax
je 0x42f715
push eax
mov esi, eax
call fcn.00584816
add esp, 4
lea eax, [esi + eax*2]
cmp esi, eax
jae 0x42f6c0
cmp word [esi], 0x3e
jne 0x42f6bb
mov word [esi], 0x2d
add esi, 2
jmp 0x42f6ac
mov eax, dword [ebp - 0x1c]
test eax, eax
je 0x42f715
push eax
mov esi, eax
call fcn.00584816
add esp, 4
lea eax, [esi + eax*2]
cmp esi, eax
jae 0x42f6e9
cmp word [esi], 0x22
jne 0x42f6e4
mov word [esi], 0x27
add esi, 2
jmp 0x42f6d5
mov eax, dword [ebp - 0x1c]
test eax, eax
je 0x42f715
push eax
mov esi, eax
call fcn.00584816
add esp, 4
lea eax, [esi + eax*2]
cmp esi, eax
jae 0x42f712
cmp word [esi], 0x2f
jne 0x42f70d
mov word [esi], 0x5c
add esi, 2
jmp 0x42f6fe
mov eax, dword [ebp - 0x1c]
mov ecx, dword [0x6825c0]
test ecx, ecx
jne 0x42fb59
test eax, eax
jne 0x42f72a
lea eax, [ebp - 0x18]
push 0x202a
push eax
call fcn.00584c8f
add esp, 8
test eax, eax
jne 0x42f75c
mov eax, dword [ebp - 0x1c]
test eax, eax
jne 0x42f746
lea eax, [ebp - 0x18]
push 0x202d
push eax
call fcn.00584c8f
add esp, 8
test eax, eax
je 0x42fafd
mov edx, 0x65a408
test edx, edx
je 0x42f922
mov eax, 0x681f7c
test eax, eax
je 0x42f922
push eax
push edx
call fcn.00584d2f
add esp, 8
test eax, eax
je 0x42f922
mov ecx, dword [ebp - 0x1c]
push 0x65a408
push ecx
call fcn.00585047
add esp, 8
mov esi, eax
xor ebx, ebx
test esi, esi
je 0x42f7c1
push 0x65a408
inc ebx
call fcn.00584816
lea eax, [esi + eax*2]
push 0x65a408
push eax
call fcn.00585047
add esp, 0xc
mov esi, eax
jmp 0x42f79d
test ebx, ebx
je 0x42f922
mov edx, dword [ebp - 0x1c]
lea ecx, [ebp - 0x30]
push edx
call fcn.00403ad0
push 0x65a408
mov byte [ebp - 4], 4
call fcn.00584816
push 0x681f7c
mov esi, eax
call fcn.00584816
add esp, 8
cmp eax, esi
jbe 0x42f846
lea ecx, [ebp - 0x1c]
call fcn.00401070
lea ecx, [ebp - 0x30]
call fcn.00401ed0
push eax
call fcn.00584816
push 0x65a408
mov esi, eax
call fcn.00584816
push 0x681f7c
mov edi, eax
call fcn.00584816
sub eax, edi
imul eax, ebx
add esi, eax
lea eax, [esi + esi + 2]
push eax
call fcn.0059cff9
mov ebx, eax
add esp, 0x10
test ebx, ebx
mov dword [ebp - 0x1c], ebx
jne 0x42f849
jmp 0x42f916
mov ebx, dword [ebp - 0x1c]
lea ecx, [ebp - 0x30]
call fcn.00401ed0
push 0x65a408
push eax
mov dword [ebp - 0x20], eax
call fcn.00585047
add esp, 8
test eax, eax
mov dword [ebp - 0x24], eax
je 0x42f8d9
mov esi, dword [ebp - 0x20]
mov edi, ebx
sub eax, esi
push 0x681f7c
sar eax, 1
shl eax, 1
mov ecx, eax
add ebx, eax
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]
call fcn.00584816
mov ecx, eax
mov esi, 0x681f7c
shl ecx, 1
mov eax, ecx
mov edi, ebx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
push 0x681f7c
and ecx, 3
rep movsb byte es:[edi], byte [esi]
call fcn.00584816
push 0x65a408
lea ebx, [ebx + eax*2]
call fcn.00584816
mov ecx, dword [ebp - 0x24]
push 0x65a408
lea eax, [ecx + eax*2]
push eax
mov dword [ebp - 0x20], eax
call fcn.00585047
add esp, 0x14
jmp 0x42f862
mov esi, dword [ebp - 0x20]
push esi
call fcn.00584816
mov ecx, eax
mov edi, ebx
shl ecx, 1
mov edx, ecx
mov eax, dword [ebp - 0x20]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
push eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
call fcn.00584816
lea ebx, [ebx + eax*2]
mov word [ebx], 0
mov ecx, dword [ebp - 0x1c]
push ecx
call fcn.00584816
add esp, 0xc
mov dword [ebp - 0x14], eax
lea ecx, [ebp - 0x30]
mov byte [ebp - 4], 1
call fcn.00401070
mov edx, 0x65a404
test edx, edx
je 0x42fae8
mov eax, 0x681f7c
test eax, eax
je 0x42fae8
push eax
push edx
call fcn.00584d2f
add esp, 8
test eax, eax
je 0x42fae8
mov ecx, dword [ebp - 0x1c]
push 0x65a404
push ecx
call fcn.00585047
add esp, 8
mov esi, eax
xor edi, edi
test esi, esi
je 0x42f987
push 0x65a404
inc edi
call fcn.00584816
lea eax, [esi + eax*2]
push 0x65a404
push eax
call fcn.00585047
add esp, 0xc
mov esi, eax
jmp 0x42f963
test edi, edi
je 0x42fae8
mov edx, dword [ebp - 0x1c]
lea ecx, [ebp - 0x30]
push edx
call fcn.00403ad0
push 0x65a404
mov byte [ebp - 4], 5
call fcn.00584816
push 0x681f7c
mov esi, eax
call fcn.00584816
add esp, 8
cmp eax, esi
jbe 0x42fa0c
lea ecx, [ebp - 0x1c]
call fcn.00401070
lea ecx, [ebp - 0x30]
call fcn.00401ed0
push eax
call fcn.00584816
push 0x65a404
mov esi, eax
call fcn.00584816
push 0x681f7c
mov ebx, eax
call fcn.00584816
sub eax, ebx
imul eax, edi
add esi, eax
lea eax, [esi + esi + 2]
push eax
call fcn.0059cff9
mov ebx, eax
add esp, 0x10
test ebx, ebx
mov dword [ebp - 0x1c], ebx
jne 0x42fa0f
jmp 0x42fadc
mov ebx, dword [ebp - 0x1c]
lea ecx, [ebp - 0x30]
call fcn.00401ed0
push 0x65a404
push eax
mov dword [ebp - 0x24], eax
call fcn.00585047
add esp, 8
test eax, eax
mov dword [ebp - 0x20], eax
je 0x42fa9f
mov esi, dword [ebp - 0x24]
mov edi, ebx
sub eax, esi
push 0x681f7c
sar eax, 1
shl eax, 1
mov ecx, eax
add ebx, eax
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]
call fcn.00584816
mov ecx, eax
mov esi, 0x681f7c
shl ecx, 1
mov eax, ecx
mov edi, ebx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
push 0x681f7c
and ecx, 3
rep movsb byte es:[edi], byte [esi]
call fcn.00584816
push 0x65a404
lea ebx, [ebx + eax*2]
call fcn.00584816
mov ecx, dword [ebp - 0x20]
push 0x65a404
lea eax, [ecx + eax*2]
push eax
mov dword [ebp - 0x24], eax
call fcn.00585047
add esp, 0x14
jmp 0x42fa28
mov esi, dword [ebp - 0x24]
push esi
call fcn.00584816
mov ecx, eax
mov edi, ebx
shl ecx, 1
mov edx, ecx
mov eax, dword [ebp - 0x24]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
push eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
call fcn.00584816
lea ebx, [ebx + eax*2]
mov word [ebx], 0
mov ecx, dword [ebp - 0x1c]
push ecx
call fcn.00584816
add esp, 0xc
mov dword [ebp - 0x14], eax
lea ecx, [ebp - 0x30]
mov byte [ebp - 4], 1
call fcn.00401070
push 0x681f7c
push 0x65a400
lea ecx, [ebp - 0x1c]
call fcn.0042fdf0
mov edi, dword [ebp - 0x40]
mov eax, dword [ebp - 0x1c]
test eax, eax
jne 0x42fb07
lea eax, [ebp - 0x18]
push 0x200e
push eax
call fcn.00584c8f
add esp, 8
test eax, eax
je 0x42fb2b
push 0x681f7c
push 0x65a3fc
lea ecx, [ebp - 0x1c]
call fcn.0042fdf0
mov eax, dword [ebp - 0x1c]
test eax, eax
jne 0x42fb35
lea eax, [ebp - 0x18]
push 0x200f
push eax
call fcn.00584c8f
add esp, 8
test eax, eax
je 0x42fb59
push 0x681f7c
push 0x65a3f8
lea ecx, [ebp - 0x1c]
call fcn.0042fdf0
mov eax, dword [edi + 0x70]
mov ecx, dword [edi + 0x68]
lea edx, [ebp - 0x1c]
push 0
push edx
push eax
call fcn.00465f90
cmp eax, 2
jne 0x42fb94
mov byte [edi + 0x428], 1
lea ecx, [ebp - 0x1c]
mov byte [ebp - 4], 0
call fcn.00401070
mov ecx, dword [ebp - 0xc]
pop edi
pop esi
mov dword fs:[0], ecx
pop ebx
mov esp, ebp
pop ebp
ret
lea ecx, [ebp - 0x1c]
call fcn.00401ed0
mov ecx, dword [edi + 0x70]
push eax
call fcn.00554a10
mov eax, dword [edi + 0x43c]
push 0x7d0
test eax, eax
je 0x42fc68
mov edx, dword [edi + 0x430]
lea ecx, [ebp - 0xfe0]
push ecx
push edx
call dword [sym.imp.USER32.dll_GetWindowTextW]
test eax, eax
je 0x42fc5c
mov eax, dword [0x67da2c]
mov dword [ebp - 0x20], eax
mov ebx, dword [sym.imp.KERNEL32.dll_WideCharToMultiByte]
push 0
push 0
push 0
push 0
lea ecx, [ebp - 0xfe0]
push 0xffffffffffffffff
push ecx
push 0
push 0xfde9
mov byte [ebp - 4], 6
call ebx
mov esi, eax
test esi, esi
jle 0x42fc3a
push esi
lea ecx, [ebp - 0x20]
call fcn.005a102a
push 0
push 0
push esi
push eax
lea edx, [ebp - 0xfe0]
push 0xffffffffffffffff
push edx
push 0
push 0xfde9
call ebx
mov eax, dword [edi + 0x70]
mov byte [eax + 0x2ce], 1
mov ecx, dword [ebp - 0x20]
push ecx
mov ecx, dword [edi + 0x70]
jmp 0x42fc49
mov ecx, dword [edi + 0x70]
mov eax, dword [ecx + 0x60]
test eax, eax
je 0x42fc4e
push 0x681f78
call fcn.0054f980
lea ecx, [ebp - 0x20]
mov byte [ebp - 4], 1
call fcn.005a0c5d
jmp 0x42fca0
mov ecx, dword [edi + 0x70]
mov eax, dword [ecx + 0x60]
test eax, eax
je 0x42fca0
jmp 0x42fc96
mov eax, dword [edi + 0x430]
lea edx, [ebp - 0x810]
push edx
push eax
call dword [sym.imp.USER32.dll_GetWindowTextA]
test eax, eax
je 0x42fc8c
lea ecx, [ebp - 0x810]
push ecx
mov ecx, dword [edi + 0x70]
jmp 0x42fc9b
mov ecx, dword [edi + 0x70]
mov eax, dword [ecx + 0x60]
test eax, eax
je 0x42fca0
push 0x681f78
call fcn.0054f980
mov edx, dword [edi + 0x70]
mov eax, dword [edx + 0x848]
test eax, eax
je 0x42fcc8
cmp eax, 3
je 0x42fcc8
mov eax, dword [edi + 0x6c]
push 0
push 0x2721
push 0x111
push eax
call dword [sym.imp.USER32.dll_SendMessageA]
mov ecx, dword [edi + 0x70]
mov ecx, dword [ecx + 0x3c4]
test ecx, ecx
je 0x42fcf3
mov al, byte [ecx + 8]
test al, al
je 0x42fcf3
test ecx, ecx
je 0x42fce6
mov edx, dword [ecx]
push 1
call dword [edx]
mov eax, dword [edi + 0x70]
mov dword [eax + 0x3c4], 0
mov ecx, dword [edi + 0x70]
mov edx, dword [ecx + 0x2c4]
push edx
call fcn.0054fb10
mov ecx, edi
call fcn.00431b10
mov eax, dword [edi + 0x70]
mov ecx, dword [eax + 0x400]
push ecx
lea ecx, [eax + 0x20]
call fcn.00560880
mov ecx, dword [edi + 0x70]
push 0
call fcn.005570e0
mov ecx, dword [edi + 0x64]
test ecx, ecx
je 0x42fd65
mov edx, dword [edi + 0x70]
push 1
push 1
push edx
call fcn.0048adf0
mov eax, dword [edi + 0x6c]
push eax
call dword [sym.imp.USER32.dll_IsWindow]
test eax, eax
je 0x42fd65
mov ecx, dword [edi + 0x70]
mov eax, dword [edi + 0x6c]
mov edx, dword [ecx + 0x400]
push edx
push 0x144d
push 0x111
push eax
call dword [sym.imp.USER32.dll_PostMessageA]
mov ecx, dword [0x6826f0]
push ecx
call dword [sym.imp.USER32.dll_IsWindow]
test eax, eax
je 0x42fd97
mov edx, dword [edi + 0x70]
mov ecx, dword [0x6826f0]
mov eax, dword [edx + 0x400]
push eax
push 0x1395
push 0x111
push ecx
call dword [sym.imp.USER32.dll_PostMessageA]
push 1
mov ecx, edi
call fcn.00430030
mov eax, dword [edi + 0x60]
push 0
test eax, eax
je 0x42fdbc
push 0xc8
push 1
mov ecx, edi
call fcn.00430010
jmp 0x42fb77
mov ecx, edi
call fcn.0059cd53
jmp 0x42fb77