Function at 0x402c5c
Capabilities:
Get graphical window text
Hide graphical window

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x170
mov eax, dword [ebp + 0xc]
push ebx
push esi
sub eax, 0xf
push edi
je 0x402ffa
sub eax, 0x101
je 0x402ddb
dec eax
je 0x402cfc
dec eax
dec eax
je 0x402cbb
sub eax, 0x25
jne 0x4032a1
push 0x3f3
push dword [ebp + 8]
call dword [sym.imp.USER32.dll_GetDlgItem]
cmp dword [ebp + 0x14], eax
jne 0x4032a1
push 1
push dword [ebp + 0x10]
call dword [sym.imp.GDI32.dll_SetBkMode]
mov eax, dword [0x417808]
jmp 0x4032a3
cmp dword [ebp + 0x10], 0x19
jne 0x4032a1
inc dword [0x414060]
cmp dword [0x414060], 0x19
jle 0x402cde
mov dword [0x414060], 1
push 0
push 0x417bb0
push dword [ebp + 8]
call dword [sym.imp.USER32.dll_InvalidateRect]
push dword [ebp + 8]
call dword [sym.imp.USER32.dll_UpdateWindow]
jmp 0x4032a1
mov eax, dword [ebp + 0x10]
cmp eax, 2
jne 0x402d66
mov esi, dword [ebp + 8]
xor edi, edi
cmp dword [0x417bd0], edi
je 0x402d1a
push 0x19
push esi
call dword [sym.imp.USER32.dll_KillTimer]
push 4
push dword [0x417be0]
push dword [0x4178b4]
push esi
call dword [sym.imp.USER32.dll_MessageBoxA]
cmp eax, 6
jne 0x402d47
push 2
push esi
mov dword [0x417874], 1
call dword [sym.imp.USER32.dll_EndDialog]
cmp dword [0x417bd0], edi
je 0x402d5e
push edi
push 0x96
push 0x19
push esi
call dword [sym.imp.USER32.dll_SetTimer]
push 1
pop eax
jmp 0x4032a3
push 1
pop esi
cmp eax, esi
jne 0x402d9b
cmp byte [0x417ba0], 0xb
jne 0x402d81
mov dword [0x4177ec], esi
jmp 0x4032a1
push dword [ebp + 8]
call fcn.004033e1
push esi
call fcn.004032aa
pop ecx
pop ecx
call fcn.004035ef
jmp 0x4032a1
cmp eax, 5
jne 0x402dac
push dword [ebp + 8]
call fcn.004033e1
push 0
jmp 0x402d8a
cmp eax, 3
jne 0x402db6
push 0xffffffffffffffff
push esi
jmp 0x402dc3
cmp eax, 4
jne 0x4032a1
push 0xffffffffffffffff
push 0
push 0x185
push 0x3eb
push dword [ebp + 8]
call dword [sym.imp.USER32.dll_SendDlgItemMessageA]
jmp 0x4032a1
mov ebx, dword [ebp + 8]
push ebx
call fcn.0040b283
mov dword [esp], 0x3f3
push ebx
call dword [sym.imp.USER32.dll_GetDlgItem]
test eax, eax
je 0x402e0c
mov ecx, dword [0x417870]
test ecx, ecx
je 0x402e0c
push 0
push ecx
push 0x30
push eax
call dword [sym.imp.USER32.dll_SendMessageA]
mov esi, 0x100
lea eax, [ebp - 0x130]
push esi
push eax
push 0x2f
push dword [0x417bd4]
call fcn.0040b454
mov edi, dword [sym.imp.USER32.dll_SetDlgItemTextA]
add esp, 0x10
lea eax, [ebp - 0x130]
push eax
push 5
push ebx
call edi
lea eax, [ebp - 0x130]
push esi
push eax
push 0x30
push dword [0x417bd4]
call fcn.0040b454
add esp, 0x10
lea eax, [ebp - 0x130]
push eax
push 2
push ebx
call edi
lea eax, [ebp - 0x130]
push esi
push eax
push 0x31
push dword [0x417bd4]
call fcn.0040b454
add esp, 0x10
lea eax, [ebp - 0x130]
push eax
push 3
push ebx
call edi
lea eax, [ebp - 0x130]
push esi
push eax
push 0x32
push dword [0x417bd4]
call fcn.0040b454
add esp, 0x10
lea eax, [ebp - 0x130]
push eax
push 4
push ebx
call edi
lea eax, [ebp - 0x130]
push esi
push eax
push dword [0x4177d0]
call dword [sym.imp.USER32.dll_GetWindowTextA]
lea eax, [ebp - 0x130]
push eax
push ebx
call dword [sym.imp.USER32.dll_SetWindowTextA]
lea eax, [ebp - 0x10]
push eax
push ebx
call dword [sym.imp.USER32.dll_GetWindowRect]
mov edx, dword [ebp - 4]
mov eax, dword [0x4178f4]
sub edx, dword [ebp - 0xc]
mov ecx, dword [ebp - 8]
sub ecx, dword [ebp - 0x10]
xor esi, esi
push esi
sub eax, edx
push edx
push ecx
cdq
sub eax, edx
sar eax, 1
push eax
mov eax, dword [0x4178f0]
sub eax, ecx
cdq
sub eax, edx
sar eax, 1
push eax
push ebx
call dword [sym.imp.USER32.dll_MoveWindow]
cmp byte [0x417ba0], 0xb
mov edi, dword [sym.imp.USER32.dll_ShowWindow]
mov dword [0x4177c8], ebx
jne 0x402f43
cmp dword [0x417c44], esi
je 0x402f43
push esi
mov esi, dword [sym.imp.USER32.dll_GetDlgItem]
push 1
push ebx
call esi
push eax
call edi
push 0
push 5
push dword [0x4177c8]
call esi
push eax
call edi
jmp 0x402f49
mov esi, dword [sym.imp.USER32.dll_GetDlgItem]
call fcn.004035ef
push 0
push 0xef6
push dword [0x4177c8]
call esi
push eax
call edi
push 0xef6
push ebx
call esi
test eax, eax
mov dword [ebp + 8], eax
je 0x402fb6
lea ecx, [ebp - 0x10]
push ecx
push eax
call dword [sym.imp.USER32.dll_GetWindowRect]
mov eax, dword [ebp - 0x10]
push 0x417908
inc eax
push ebx
mov dword [0x417908], eax
mov eax, dword [ebp - 0xc]
inc eax
mov dword [0x41790c], eax
call dword [sym.imp.USER32.dll_ScreenToClient]
mov eax, dword [ebp - 8]
push 0x4177c0
dec eax
push ebx
mov dword [0x4177c0], eax
mov eax, dword [ebp - 4]
dec eax
mov dword [0x4177c4], eax
call dword [sym.imp.USER32.dll_ScreenToClient]
xor eax, eax
cmp dword [0x4178d0], eax
jne 0x402d5e
cmp dword [ebp + 8], eax
je 0x402fcf
push eax
push dword [ebp + 8]
call edi
push 0x3f0
push ebx
call esi
test eax, eax
je 0x402fe0
push 0
push eax
call edi
push 0x3f2
push ebx
call esi
test eax, eax
je 0x402d5e
push 0
push eax
call edi
jmp 0x402d5e
cmp dword [0x417604], 0
jne 0x40301f
push 0
push 0x96
push 0x19
push dword [ebp + 8]
call dword [sym.imp.USER32.dll_SetTimer]
mov dword [0x417604], 1
lea eax, [ebp - 0x170]
push eax
push dword [ebp + 8]
call dword [sym.imp.USER32.dll_BeginPaint]
mov ebx, eax
push ebx
call dword [sym.imp.GDI32.dll_CreateCompatibleDC]
push dword [0x417c0c]
mov esi, dword [sym.imp.GDI32.dll_SelectObject]
mov dword [ebp + 0x10], eax
push eax
call esi
mov edi, dword [sym.imp.USER32.dll_GetDlgItem]
push 0x3f2
push dword [ebp + 8]
mov dword [ebp + 0xc], eax
call edi
test eax, eax
je 0x4030b4
lea ecx, [ebp - 0x30]
push ecx
push eax
call dword [sym.imp.USER32.dll_GetWindowRect]
mov eax, dword [ebp - 0x2c]
mov dword [ebp - 0x14], eax
lea eax, [ebp - 0x30]
push eax
push dword [ebp + 8]
call dword [sym.imp.USER32.dll_GetWindowRect]
mov eax, dword [ebp - 0x28]
mov dword [ebp - 0x18], eax
lea eax, [ebp - 0x18]
push eax
push dword [ebp + 8]
call dword [sym.imp.USER32.dll_ScreenToClient]
push 0xcc0020
push 0x3f
xor eax, eax
push 0x1f4
push eax
push eax
push dword [ebp + 0x10]
push dword [ebp - 0x14]
push dword [ebp - 0x18]
push eax
push eax
push ebx
call dword [sym.imp.GDI32.dll_StretchBlt]
push dword [ebp + 0xc]
push dword [ebp + 0x10]
call esi
push dword [ebp + 0x10]
call dword [sym.imp.GDI32.dll_DeleteDC]
cmp dword [0x4178d0], 0
jne 0x4030fc
push 0x3f0
push dword [ebp + 8]
call edi
push eax
push ebx
push dword [ebp + 8]
call fcn.0040c637
add esp, 0xc
push 0x3f2
push dword [ebp + 8]
call edi
push eax
push ebx
push dword [ebp + 8]
call fcn.0040c637
add esp, 0xc
cmp dword [0x417bd0], 0
je 0x403291
push dword [ebp + 8]
push ebx
call fcn.0040c11b
mov eax, dword [0x4177c4]
pop ecx
sub eax, dword [0x41790c]
pop ecx
push 3
movzx eax, ax
shl eax, 1
cdq
pop ecx
idiv ecx
push 0x7f0000
push ebx
mov edi, eax
mov eax, dword [0x4177c0]
sub eax, dword [0x417908]
movzx eax, ax
imul eax, dword [0x417844]
cdq
idiv dword [0x417c38]
movzx eax, ax
mov dword [ebp + 0xc], eax
call dword [sym.imp.GDI32.dll_SetBkColor]
mov eax, dword [0x41790c]
and dword [ebp + 0x10], 0
inc eax
mov dword [ebp - 0xc], eax
mov eax, dword [0x4177c4]
dec eax
cmp dword [ebp + 0xc], 0
mov dword [ebp - 4], eax
mov eax, dword [0x417908]
mov dword [ebp - 0x10], eax
jle 0x4031b0
mov eax, dword [ebp - 0x10]
push 0
push 0
push 0x417600
lea ecx, [edi + eax - 3]
mov dword [ebp - 8], ecx
lea ecx, [ebp - 0x10]
push ecx
push 6
push dword [ebp - 0xc]
push eax
push ebx
call dword [sym.imp.GDI32.dll_ExtTextOutA]
add dword [ebp + 0x10], edi
add dword [ebp - 0x10], edi
mov eax, dword [ebp + 0x10]
cmp eax, dword [ebp + 0xc]
jl 0x40317e
cmp dword [0x4178d0], 0
jne 0x403291
mov eax, dword [0x4177c4]
inc eax
push eax
mov eax, dword [0x4177c0]
inc eax
push eax
mov eax, dword [0x41790c]
dec eax
push eax
mov eax, dword [0x417908]
dec eax
push eax
lea eax, [ebp - 0x20]
push eax
call dword [sym.imp.USER32.dll_SetRect]
push 0x10
call dword [sym.imp.USER32.dll_GetSysColor]
push eax
push 1
push 0
call dword [sym.imp.GDI32.dll_CreatePen]
push eax
push ebx
mov dword [ebp + 0xc], eax
call esi
mov dword [ebp + 0x10], eax
mov eax, dword [ebp - 0x14]
dec eax
push 0
push eax
push dword [ebp - 0x20]
push ebx
call dword [sym.imp.GDI32.dll_MoveToEx]
push dword [ebp - 0x1c]
mov edi, dword [sym.imp.GDI32.dll_LineTo]
push dword [ebp - 0x20]
push ebx
call edi
mov eax, dword [ebp - 0x18]
push dword [ebp - 0x1c]
dec eax
push eax
push ebx
call edi
push dword [ebp + 0x10]
push ebx
call esi
push dword [ebp + 0xc]
call dword [sym.imp.GDI32.dll_DeleteObject]
push 5
call dword [sym.imp.USER32.dll_GetSysColor]
push eax
push 1
push 0
call dword [sym.imp.GDI32.dll_CreatePen]
push eax
push ebx
mov dword [ebp + 0xc], eax
call esi
mov dword [ebp + 0x10], eax
mov eax, dword [ebp - 0x18]
push 0
dec eax
push dword [ebp - 0x1c]
push eax
push ebx
call dword [sym.imp.GDI32.dll_MoveToEx]
mov eax, dword [ebp - 0x14]
dec eax
push eax
mov eax, dword [ebp - 0x18]
dec eax
push eax
push ebx
call edi
mov eax, dword [ebp - 0x14]
dec eax
push eax
mov eax, dword [ebp - 0x20]
dec eax
push eax
push ebx
call edi
push dword [ebp + 0x10]
push ebx
call esi
push dword [ebp + 0xc]
call dword [sym.imp.GDI32.dll_DeleteObject]
lea eax, [ebp - 0x170]
push eax
push dword [ebp + 8]
call dword [sym.imp.USER32.dll_EndPaint]
xor eax, eax
pop edi
pop esi
pop ebx
leave
ret 0x10