Function at 0x402f70
Capabilities:
Get graphical window text

Disassembly:
push ebp
mov ebp, esp
push ecx
push ebx
push esi
push edi
mov edi, ecx
jnp 0x402f92
jp 0x402f92
jns 0x403000
jns 0x403002
jns 0x403004
jns 0x403006
jns 0x403008
jns 0x40300a
jns 0x402ffd
push 0
call dword [sym.imp.MSVCRT.dll_time]
add bh, bh
adc eax, sym.imp.MSVCRT.dll_time
push eax
call dword [sym.imp.MSVCRT.dll_srand]
mov esi, dword [sym.imp.MSVCRT.dll_rand]
add esp, 8
call esi
cdq
mov ecx, 0x1a
idiv ecx
add dl, 0x41
mov byte [ebp - 1], dl
call esi
cdq
mov ecx, 0x1a
push 0x4e20
idiv ecx
add dl, 0x61
mov byte [ebp - 2], dl
call dword [sym.imp.KERNEL32.dll_GetCurrentThread]
push eax
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
jnp 0x402ffc
jp 0x402ffc
jns 0x403063
jns 0x403065
jns 0x403067
jns 0x403069
jns 0x40306b
jns 0x40306d
jns 0x40306f
jns 0x403071
jns 0x403073
jns 0x403075
mov edx, dword [edi + 0x80]
xchg edi, eax
add byte [eax], 0
add byte [ebx + 0x4042a835], cl
add byte [eax], al
mov esi, dword [sym.imp.USER32.dll_GetWindow]
test al, 0x42
inc eax
add byte [edx + 5], ch
push 5
push edx
call esi
push eax
call sub.MFC42.DLL_CWnd::FromHandle
mov eax, dword [eax + 0x20]
push 5
push eax
call esi
push eax
call sub.MFC42.DLL_CWnd::FromHandle
mov ecx, dword [eax + 0x20]
mov ebx, dword [sym.imp.USER32.dll_SendMessageA]
push 0x1c0001
push 0xd
push 0x100
push ecx
call ebx
mov edx, dword [edi + 0x80]
push 5
push edx
call esi
push eax
call sub.MFC42.DLL_CWnd::FromHandle
mov eax, dword [eax + 0x20]
push 5
push eax
call esi
push eax
call sub.MFC42.DLL_CWnd::FromHandle
movsx ecx, byte [ebp - 1]
mov edx, dword [eax + 0x20]
push 0x1c0001
push ecx
add byte [ecx + 0x68], dl
add al, byte [ecx]
add byte [eax], al
push 0x102
add dword [eax], eax
add byte [edx - 1], dl
ror dword [ebx + 0x8087], cl
push edx
call ebx
mov eax, dword [edi + 0x80]
add byte [eax], 0
add byte [eax], al
add byte [edx + 5], ch
push 5
push eax
call esi
push eax
call sub.MFC42.DLL_CWnd::FromHandle
mov ecx, dword [eax + 0x20]
push 5
push ecx
call esi
push eax
call sub.MFC42.DLL_CWnd::FromHandle
push 0xc01c0001
push 0xd
mov edx, dword [eax + 0x20]
push 0x101
push edx
call ebx
push 0x32
call dword [sym.imp.KERNEL32.dll_GetCurrentThread]
push eax
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
mov eax, dword [edi + 0x80]
push 5
push eax
call esi
push eax
call sub.MFC42.DLL_CWnd::FromHandle
mov ecx, dword [eax + 0x20]
push 5
push ecx
call esi
push eax
call sub.MFC42.DLL_CWnd::FromHandle
mov edx, dword [eax + 0x20]
push 0x1c0001
push 0xd
push 0x100
push edx
call ebx
mov eax, dword [edi + 0x80]
push 5
push eax
call esi
push eax
call sub.MFC42.DLL_CWnd::FromHandle
mov ecx, dword [eax + 0x20]
push 5
push ecx
call esi
push eax
call sub.MFC42.DLL_CWnd::FromHandle
movsx edx, byte [ebp - 2]
mov eax, dword [eax + 0x20]
push 0x1c0001
push edx
push 0x102
push eax
call ebx
mov ecx, dword [edi + 0x80]
push 5
push ecx
call esi
push eax
call sub.MFC42.DLL_CWnd::FromHandle
mov edx, dword [eax + 0x20]
push 5
push edx
call esi
push eax
call sub.MFC42.DLL_CWnd::FromHandle
mov eax, dword [eax + 0x20]
push 0xc01c0001
push 0xd
push 0x101
push eax
call ebx
jnp 0x403161
jp 0x403161
jns 0x4031ca
jns 0x4031cc
jns 0x4031ce
jns 0x4031d0
jns 0x4031d2
jns 0x4031d4
jns 0x4031d6
jns 0x4031d8
jns 0x4031da
push 0x32
call dword [sym.imp.KERNEL32.dll_GetCurrentThread]
push eax
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
mov ecx, dword [edi + 0x80]
push 5
push ecx
call esi
push eax
call sub.MFC42.DLL_CWnd::FromHandle
mov edx, dword [eax + 0x20]
push 5
push edx
call esi
push eax
call sub.MFC42.DLL_CWnd::FromHandle
push 0x1c0001
mov eax, dword [eax + 0x20]
push 0xd
push 0x100
push eax
call ebx
mov ecx, dword [edi + 0x80]
push 5
push ecx
call esi
push eax
call sub.MFC42.DLL_CWnd::FromHandle
mov edx, dword [eax + 0x20]
push 5
push edx
call esi
push eax
call sub.MFC42.DLL_CWnd::FromHandle
mov eax, dword [eax + 0x20]
push 0x1c0001
push 0xd
push 0x102
push eax
add dword [eax], eax
add byte [eax - 1], dl
ror dword [ebx + 0x808f], cl
call ebx
mov ecx, dword [edi + 0x80]
add byte [eax], 0
add byte [eax], al
add byte [edx + 5], ch
push 5
push ecx
call esi
push eax
call sub.MFC42.DLL_CWnd::FromHandle
mov edx, dword [eax + 0x20]
push 5
push edx
call esi
push eax
call sub.MFC42.DLL_CWnd::FromHandle
mov eax, dword [eax + 0x20]
push 0xc01c0001
push 0xd
push 0x101
push eax
call ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret