Function at 0x408610
Capabilities:
Get graphical window text

Disassembly:
sub esp, 0x6c
mov eax, dword [0x4b77c0]
xor eax, esp
mov dword [esp + 0x68], eax
push ebx
mov ebx, dword [sym.imp.USER32.dll_GetDlgItem]
push ebp
push esi
push edi
push 0x32
lea eax, [esp + 0x48]
push eax
mov edi, ecx
push 0x40e
mov ebp, 1
push edi
mov dword [esp + 0x30], edi
mov dword [esp + 0x20], ebp
call ebx
push eax
call dword [sym.imp.USER32.dll_GetWindowTextA]
lea eax, [esp + 0x44]
xor edx, edx
lea esi, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x408656
sub eax, esi
je 0x40868d
mov al, byte [esp + edx + 0x44]
cmp al, 0x30
jl 0x408685
cmp al, 0x39
jg 0x408685
lea eax, [esp + 0x44]
add edx, ebp
lea esi, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x408676
sub eax, esi
cmp edx, eax
jb 0x408661
jmp 0x40868d
mov dword [esp + 0x10], 0
push 0x3f3
push edi
call ebx
push eax
call fcn.00430c80
add esp, 4
test eax, eax
je 0x4086a9
mov eax, 0x400
jmp 0x4086c8
push 0x3f5
push edi
call ebx
push eax
call fcn.00430c80
add esp, 4
neg eax
sbb eax, eax
and eax, 0xc0100000
add eax, 0x40000000
cmp dword [0x4b94a4], 0
mov dword [0x4b215c], eax
je 0x408704
mov ecx, dword [0x4b9448]
test ecx, ecx
je 0x4086ea
mov edx, dword [0x4b944c]
test edx, edx
je 0x4086ff
mov edi, dword [0x4b9468]
mov ebx, dword [0x4b946c]
mov dword [esp + 0x14], ebp
jmp 0x4087a7
mov eax, dword [0x4b215c]
mov dword [esp + 0x14], eax
lea eax, [esp + 0x44]
push eax
call fcn.0046d309
add esp, 4
cmp dword [0x4b94a4], 0
mov edi, eax
mov ebx, edx
jne 0x408729
mov esi, 0x200
jmp 0x408757
lea ecx, [esp + 0x2c]
push ecx
push 0x4b8fd8
call fcn.00433420
add esp, 8
test eax, eax
jne 0x408753
mov edx, dword [0x4dce6c]
push edx
call fcn.00434ad0
add esp, 4
call fcn.00430640
mov esi, dword [esp + 0x40]
mov eax, dword [0x4b215c]
push ebx
cdq
push edi
mov ebp, eax
push edx
push ebp
mov dword [esp + 0x38], edx
call fcn.0046bca0
mov ecx, eax
mov dword [esp + 0x1c], edx
mov eax, esi
cdq
push edx
push eax
mov eax, dword [esp + 0x24]
push eax
push ecx
mov dword [esp + 0x28], ecx
call fcn.0046d1c0
test eax, eax
je 0x4087a7
mov edx, dword [esp + 0x28]
sub esi, eax
xor ecx, ecx
add esi, dword [esp + 0x18]
push edx
adc ecx, dword [esp + 0x20]
push ebp
push ecx
push esi
call fcn.0046bbf0
mov edi, eax
mov ebx, edx
cmp dword [esp + 0x10], 0
je 0x408851
mov eax, dword [0x4b944c]
test eax, eax
je 0x4087c2
mov esi, 0x55000
jmp 0x4087d8
mov esi, dword [0x4b9448]
neg esi
sbb esi, esi
and esi, 0xfffc1000
add esi, 0x49000
mov ecx, dword [esp + 0x14]
push ebx
push edi
push 0
push ecx
call fcn.0046bca0
mov ebp, eax
mov ecx, edx
mov eax, esi
cdq
cmp ecx, edx
jg 0x4087ff
jl 0x4087f7
cmp ebp, eax
jae 0x4087ff
xor esi, esi
mov dword [esp + 0x10], esi
jmp 0x408801
xor esi, esi
mov edx, dword [0x4b944c]
test edx, edx
jne 0x408826
mov eax, dword [0x4b9448]
test eax, eax
je 0x408826
cmp ecx, dword [0x4b947c]
jl 0x408851
jg 0x40884d
cmp ebp, dword [0x4b9478]
jmp 0x40884b
mov edx, dword [0x4b944c]
test edx, edx
je 0x40883c
mov edx, 0xfffc0000
mov eax, 0x7fff
jmp 0x408843
xor edx, edx
mov eax, 0x40000
cmp ecx, eax
jl 0x408851
jg 0x40884d
cmp ebp, edx
jbe 0x408851
mov dword [esp + 0x10], esi
cmp dword [esp + 0x80], 0
je 0x40889c
cmp dword [0x4b94a4], 0
mov dword [0x4b9460], edi
mov dword [0x4b9464], ebx
je 0x408883
mov eax, dword [0x4b9448]
test eax, eax
je 0x40889c
mov ecx, dword [0x4b944c]
test ecx, ecx
jne 0x40889c
mov edx, dword [esp + 0x14]
push ebx
push edi
push 0
push edx
call fcn.0046bca0
mov dword [0x4b9468], eax
mov dword [0x4b946c], edx
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x20]
push eax
push 0x410
push ecx
call dword [sym.imp.USER32.dll_GetParent]
push eax
call dword [sym.imp.USER32.dll_GetDlgItem]
push eax
call dword [sym.imp.USER32.dll_EnableWindow]
mov eax, dword [0x4b9468]
mov ecx, dword [0x4b946c]
pop edi
pop esi
pop ebp
pop ebx
cmp eax, dword [0x4b95d0]
jne 0x4088de
cmp ecx, dword [0x4b95d4]
je 0x4088f3
mov dword [0x4b94e0], 0
mov dword [0x4b95d0], eax
mov dword [0x4b95d4], ecx
mov ecx, dword [esp + 0x68]
xor ecx, esp
call fcn.0046be7b
add esp, 0x6c
ret