Function at 0x4ad49c
Capabilities:
Get graphical window text

Disassembly:
push ebp
mov ebp, esp
push ecx
movzx eax, word [ebp + 0xc]
mov ecx, 0x612
push ebx
push edi
push 1
pop ebx
sub eax, ecx
je 0x4ad5ae
sub eax, 0x34c
je 0x4ad589
sub eax, ebx
je 0x4ad549
dec eax
sub eax, ebx
je 0x4ad524
sub eax, ebx
jne 0x4ad6fe
xor edi, edi
push edi
push edi
push 0x147
push 0x962
push dword [ebp + 8]
call dword [sym.imp.USER32.dll_SendDlgItemMessageW]
mov ecx, dword [0x5a23ec]
mov byte [ecx + 0xb79], al
mov ecx, dword [0x5a23ec]
mov al, byte [ecx + 0xb78]
cmp al, byte [ecx + 0xb79]
je 0x4ad6fe
push edi
push ebx
push edi
mov ecx, dword [0x5a23f0]
call fcn.0046f058
jmp 0x4ad6fe
xor edi, edi
push edi
push edi
push 0x147
push 0x961
push dword [ebp + 8]
call dword [sym.imp.USER32.dll_SendDlgItemMessageW]
mov ecx, dword [0x5a23ec]
mov byte [ecx + 0xb78], al
jmp 0x4ad4f9
xor edi, edi
push edi
push edi
push 0x147
push 0x95f
push dword [ebp + 8]
call dword [sym.imp.USER32.dll_SendDlgItemMessageW]
mov ecx, dword [0x5a23ec]
mov byte [ecx + 0xb77], al
mov ecx, dword [0x5a23ec]
mov al, byte [ecx + 0xb76]
cmp al, byte [ecx + 0xb77]
je 0x4ad6fe
push edi
push edi
push ebx
jmp 0x4ad514
xor edi, edi
push edi
push edi
push 0x147
push 0x95e
push dword [ebp + 8]
call dword [sym.imp.USER32.dll_SendDlgItemMessageW]
mov ecx, dword [0x5a23ec]
mov byte [ecx + 0xb76], al
jmp 0x4ad56c
push esi
push ecx
push dword [ebp + 8]
call dword [sym.imp.USER32.dll_GetDlgItem]
xor edi, edi
mov esi, eax
push edi
push edi
push 0x147
push esi
call dword [sym.imp.USER32.dll_SendMessageW]
cmp word [ebp + 0x10], 5
mov ebx, eax
mov dword [ebp - 4], ebx
jne 0x4ad619
push esi
call dword [sym.imp.USER32.dll_GetWindowTextLengthW]
mov ecx, eax
mov dword [ebp + 0xc], ecx
test ecx, ecx
jle 0x4ad5fc
lea ecx, [ecx*2 + 2]
push ecx
call fcn.004e1c0a
pop ecx
mov ecx, dword [ebp + 0xc]
mov ebx, eax
jmp 0x4ad5fe
mov ebx, edi
mov eax, edi
mov dword [ebp + 0xc], eax
test ebx, ebx
je 0x4ad68d
lea eax, [ecx + 1]
push eax
push ebx
push esi
call dword [sym.imp.USER32.dll_GetWindowTextW]
jmp 0x4ad66d
xor ecx, ecx
mov eax, edi
inc ecx
mov dword [ebp + 0xc], eax
cmp word [ebp + 0x10], cx
jne 0x4ad690
mov dword [ebp + 0xc], eax
test ebx, ebx
jle 0x4ad690
push edi
push ebx
push 0x149
push esi
call dword [sym.imp.USER32.dll_SendMessageW]
test eax, eax
jle 0x4ad652
lea eax, [eax*2 + 2]
push eax
call fcn.004e1c0a
pop ecx
mov ebx, eax
jmp 0x4ad654
mov ebx, edi
mov eax, edi
mov dword [ebp + 0xc], eax
test ebx, ebx
je 0x4ad68d
push ebx
push dword [ebp - 4]
push 0x148
push esi
call dword [sym.imp.USER32.dll_SendMessageW]
push 0x54aa84
push ebx
call fcn.004fd1eb
push ebx
mov esi, eax
call fcn.004e1bea
xor eax, eax
add esp, 0xc
test esi, esi
sete al
mov dword [ebp + 0xc], eax
mov ebx, dword [ebp - 4]
push eax
push 0x84b
push dword [ebp + 8]
call dword [sym.imp.USER32.dll_GetDlgItem]
mov esi, dword [sym.imp.USER32.dll_EnableWindow]
push eax
call esi
push dword [ebp + 0xc]
push 0x84d
push dword [ebp + 8]
call dword [sym.imp.USER32.dll_GetDlgItem]
push eax
call esi
xor eax, eax
inc eax
pop esi
cmp word [ebp + 0x10], ax
jne 0x4ad6fb
cmp dword [0x5a4f78], edi
je 0x4ad6fb
test ebx, ebx
jne 0x4ad6d9
mov eax, 0x5a4f80
jmp 0x4ad6ec
mov ecx, dword [0x5a23ec]
lea eax, [ebx - 1]
push eax
call fcn.00463add
test eax, eax
je 0x4ad70a
mov ecx, dword [0x5a23f0]
push edi
push eax
call fcn.00467dab
jmp 0x4ad70a
xor ebx, ebx
inc ebx
mov ecx, dword [0x5a22a0]
push ebx
call fcn.0041c50d
pop edi
xor eax, eax
pop ebx
leave
ret 0xc