Function at 0x402683
Capabilities:
Hide graphical window

Disassembly:
push ebp
mov ebp, esp
add esp, 0xffffffcc
push ecx
push edi
cmp dword [0x44f3b1], 0
je 0x4029d8
push 0x45ff32
push 0
push 0x434
push dword [ebp + 8]
call sub.user32.dll_SendMessageA
push dword [0x45ff32]
push 0
push 0x436
push dword [ebp + 8]
call sub.user32.dll_SendMessageA
push 0
push eax
push 0xbb
push dword [ebp + 8]
call sub.user32.dll_SendMessageA
mov dword [0x45ff32], eax
sub eax, dword [0x45ff36]
neg eax
push eax
push dword [ebp + 8]
call fcn.00402089
or eax, eax
je 0x4029bb
call fcn.00402505
cmp dword [0x44f399], 6
je 0x402718
cmp dword [0x44f399], 7
je 0x402718
cmp dword [0x44f399], 8
je 0x402718
cmp dword [0x44f399], 9
jne 0x40274c
cmp eax, 0xffffffff
jne 0x40274c
push dword [0x46392e]
call fcn.0040264e
cmp byte [eax], 0
je 0x402747
mov dword [0x46392e], eax
sub eax, 0x467936
add eax, dword [0x45ff32]
cmp eax, dword [0x45ff36]
jae 0x402747
jmp 0x4026ef
jmp 0x4029d8
cmp eax, 0xffffffff
je 0x4029d8
cmp al, 0x2c
jne 0x4029b9
lea eax, [ebp - 8]
push eax
call sub.user32.dll_GetCaretPos
lea eax, [ebp - 0x20]
push eax
push 0
push 0xb2
push dword [ebp + 8]
call sub.user32.dll_SendMessageA
lea eax, [ebp - 0x20]
push eax
push dword [ebp + 8]
call sub.user32.dll_ClientToScreen
push 0
push dword [ebp + 8]
call sub.user32.dll_GetWindowLongA
mov edx, dword [eax + 0x1b8]
add edx, dword [eax + 0x1cc]
add edx, 3
mov dword [ebp - 0x34], edx
mov eax, dword [ebp - 8]
add dword [ebp - 0x20], eax
mov eax, dword [ebp - 4]
add eax, dword [ebp - 0x34]
add dword [ebp - 0x1c], eax
push dword [0x453900]
call sub.user32.dll_GetDC
mov dword [ebp - 0x24], eax
push dword [0x453974]
push dword [ebp - 0x24]
call sub.gdi32.dll_SelectObject
mov dword [ebp - 0x30], eax
push dword [0x45ffae]
call fcn.004010ef
mov ecx, eax
mov edi, dword [0x45ffae]
mov dword [0x4777a2], edi
call fcn.004025d0
mov ah, al
jmp 0x4027f2
inc edi
cmp byte [edi], 0
je 0x402801
cmp byte [edi], 0x2c
je 0x402801
cmp byte [edi], 0x28
jne 0x4027f1
cmp byte [edi], 0x2c
je 0x40280b
cmp byte [edi], 0x28
jne 0x40280c
inc edi
mov ecx, 0x2c
jmp 0x40283a
mov al, byte [edi]
inc edi
cmp al, 0x28
jne 0x40281f
shl ecx, 8
mov cl, 0x29
or al, al
je 0x40283e
cmp al, cl
je 0x40282d
cmp al, 0x29
jne 0x40282d
jmp 0x40283e
cmp al, cl
jne 0x402813
cmp cl, 0x2c
je 0x40283a
shr ecx, 8
inc edi
dec ah
jne 0x402813
sub edi, dword [0x45ffae]
mov dword [ebp - 0x2c], edi
lea eax, [ebp - 0x10]
push eax
push dword [ebp - 0x2c]
push dword [0x45ffae]
push dword [ebp - 0x24]
call sub.gdi32.dll_GetTextExtentPoint32A
mov eax, dword [ebp - 0x10]
sub dword [ebp - 0x20], eax
sub dword [ebp - 0x20], 2
push dword [0x45ffae]
call fcn.004010ef
mov dword [ebp - 0x28], eax
lea eax, [ebp - 8]
push eax
push dword [ebp - 0x28]
push dword [0x45ffae]
push dword [ebp - 0x24]
call sub.gdi32.dll_GetTextExtentPoint32A
add dword [ebp - 8], 4
add dword [ebp - 4], 3
push dword [0x45ffae]
push dword [0x453900]
call sub.user32.dll_SetWindowTextA
push 0x54
push dword [ebp - 4]
push dword [ebp - 8]
push dword [ebp - 0x1c]
push dword [ebp - 0x20]
push 0
push dword [0x453900]
call sub.user32.dll_SetWindowPos
push dword [0x453900]
call sub.user32.dll_UpdateWindow
mov edi, dword [0x45ffae]
add edi, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x20], eax
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x18], 0x63
mov dword [ebp - 0x14], 0x10
push 1
push dword [ebp - 0x24]
call sub.gdi32.dll_SetBkMode
push 0xd00000
push dword [ebp - 0x24]
call sub.gdi32.dll_SetTextColor
mov dword [0x45ffae], edi
dec edi
mov ah, 0x2c
inc edi
mov al, byte [edi]
cmp al, 0x28
jne 0x402932
lea eax, [ebp - 8]
push eax
push 1
push edi
push dword [ebp - 0x24]
call sub.gdi32.dll_GetTextExtentPoint32A
mov eax, dword [ebp - 8]
add dword [ebp - 0x20], eax
inc dword [0x45ffae]
mov ah, 0x29
jmp 0x40290c
dec edi
inc edi
mov al, byte [edi]
or al, al
je 0x402942
cmp al, 0x29
je 0x402942
cmp al, ah
jne 0x402933
sub edi, dword [0x45ffae]
push 0x104
lea eax, [ebp - 0x20]
push eax
push edi
push dword [0x45ffae]
push dword [ebp - 0x24]
call sub.user32.dll_DrawTextA
add edi, 2
push edi
push dword [0x45ffae]
push 0x45c4dc
call sub.kernel32.dll_lstrcpynA
push dword [ebp + 8]
pop dword [0x44f3b9]
push dword [0x45c6be]
pop dword [0x45ffa6]
push dword [ebp - 0x30]
push dword [ebp - 0x24]
call sub.gdi32.dll_SelectObject
push dword [ebp - 0x24]
push dword [0x453900]
call sub.user32.dll_ReleaseDC
push dword [0x4777a6]
push dword [0x4777a2]
call fcn.00403230
pop edi
pop ecx
leave
ret 4
jmp 0x4029d8
mov eax, dword [0x44f399]
cmp eax, 1
je 0x4029ca
cmp eax, 2
jne 0x4029d8
call fcn.00403ca5
cmp eax, 0xffffffff
jne 0x40275d
cmp dword [0x44f3b9], 0
je 0x4029f8
mov dword [0x44f3b9], 0
push 0
push dword [0x453900]
call sub.user32.dll_ShowWindow
pop edi
pop ecx
leave
ret 4