Function at 0x40a8b5
Capabilities:
Hide graphical window

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x58
push ebx
push esi
push edi
mov edi, dword [ebp + 8]
push 0x200
call sub.CRTDLL.DLL_malloc
add esp, 4
mov esi, eax
or esi, esi
jne 0x40a8e1
push 0
push edi
call sub.USER32.DLL_EndDialog
jmp 0x40b181
push edi
call fcn.0040b76c
push 0
push edi
call sub.USER32.DLL_GetSystemMenu
push 0
push 0
push 0x800
push eax
call sub.USER32.DLL_AppendMenuA
push dword [0x413154]
push str._s...
push esi
call sub.CRTDLL.DLL_sprintf
push 0
push edi
call sub.USER32.DLL_GetSystemMenu
push esi
push 0xdc
push 0
push eax
call sub.USER32.DLL_AppendMenuA
push edi
call fcn.0040a6ee
add esp, 0x14
mov eax, dword [0x420318]
cmp byte [eax + 0x223], 0
je 0x40aa73
cmp byte [eax + 0x224], 0
je 0x40a95c
push 0x3ef
push edi
call sub.USER32.DLL_GetDlgItem
push 1
push eax
call sub.USER32.DLL_EnableWindow
push dword [0x4131a8]
push esi
call fcn.00411b78
push 0x4214fc
push esi
call sub.CRTDLL.DLL_strcat
push 0x4214f7
mov eax, dword [0x420318]
push dword [eax + 0x110]
call fcn.00410e38
add esp, 0x10
or eax, eax
je 0x40a9a0
push dword [0x413188]
push esi
call sub.CRTDLL.DLL_strcat
add esp, 8
jmp 0x40a9af
push dword [0x4131c0]
push esi
call sub.CRTDLL.DLL_strcat
add esp, 8
push 0x4214fc
push esi
call sub.CRTDLL.DLL_strcat
mov eax, dword [0x420318]
push dword [eax + 0x110]
push esi
call sub.CRTDLL.DLL_strcat
push 0x7c
push esi
call sub.CRTDLL.DLL_strchr
add esp, 0x18
or eax, eax
je 0x40a9e8
push 0x7c
push esi
call sub.CRTDLL.DLL_strchr
add esp, 8
mov byte [eax], 0
push 0
push 0x200
push 0x4214f2
push 0x4214f3
push esi
call fcn.00410f00
push 0
push 0x200
push 0x4214f2
push 0x4214ef
push esi
call fcn.00410f00
push 0
push 0x200
push 0x4214f2
push str.P_
push esi
call fcn.00410f00
push 0
push 0x200
push 0x4214f2
push 0x4214e6
push esi
call fcn.00410f00
add esp, 0x50
push 0x3ef
push edi
call sub.USER32.DLL_GetDlgItem
push esi
push eax
call sub.USER32.DLL_SetWindowTextA
push 0x3ef
push edi
call sub.USER32.DLL_GetDlgItem
push 0
push 1
push 0xf1
push eax
call sub.USER32.DLL_SendMessageA
push 0x65
push edi
call sub.USER32.DLL_GetDlgItem
mov edx, dword [0x420318]
add edx, 0x114
push edx
push eax
call sub.USER32.DLL_SetWindowTextA
mov eax, dword [0x420318]
cmp byte [eax + 0x22a], 0
je 0x40ab79
push 0x12e
push edi
call sub.USER32.DLL_GetDlgItem
push 0
push eax
call sub.USER32.DLL_ShowWindow
push 0x12d
push edi
call sub.USER32.DLL_GetDlgItem
push 0
push eax
call sub.USER32.DLL_ShowWindow
push 0x68
push edi
call sub.USER32.DLL_GetDlgItem
push 0
push eax
call sub.USER32.DLL_ShowWindow
push 0x12f
push edi
call sub.USER32.DLL_GetDlgItem
push 1
push eax
call sub.USER32.DLL_ShowWindow
push 0x12f
push edi
call sub.USER32.DLL_GetDlgItem
mov dword [ebp - 0x28], eax
push 0xf
call sub.USER32.DLL_GetSysColor
push eax
push 0
push 0x443
mov edx, dword [ebp - 0x28]
push edx
call sub.USER32.DLL_SendMessageA
push 0x12f
push edi
call sub.USER32.DLL_GetDlgItem
mov dword [ebp - 0x34], eax
mov edx, dword [0x420318]
cmp byte [edx + 0x222], 0
je 0x40ab34
mov edx, dword [edx + 0xc]
mov dword [ebp - 0x2c], edx
jmp 0x40ab6b
mov edx, dword [0x420318]
mov edx, dword [edx + 4]
mov ecx, edx
or eax, 0xffffffff
inc eax
cmp byte [ecx + eax], 0
jne 0x40ab42
cmp eax, 0
je 0x40ab5c
mov edx, dword [0x420318]
mov edx, dword [edx + 4]
mov dword [ebp - 0x30], edx
jmp 0x40ab65
mov edx, dword [0x4131a0]
mov dword [ebp - 0x30], edx
mov edx, dword [ebp - 0x30]
mov dword [ebp - 0x2c], edx
push dword [ebp - 0x2c]
mov edx, dword [ebp - 0x34]
push edx
call sub.USER32.DLL_SetWindowTextA
jmp 0x40abe5
mov eax, dword [0x420318]
cmp byte [eax + 0x226], 0
setne al
and eax, 1
mov dword [ebp - 0x28], eax
or eax, eax
je 0x40abbf
cmp eax, 1
jne 0x40abe5
push 0x12d
push edi
call sub.USER32.DLL_GetDlgItem
push 1
push eax
call sub.USER32.DLL_ShowWindow
push 0x12e
push edi
call sub.USER32.DLL_GetDlgItem
push 0
push eax
call sub.USER32.DLL_ShowWindow
jmp 0x40abe5
push 0x12e
push edi
call sub.USER32.DLL_GetDlgItem
push 5
push eax
call sub.USER32.DLL_ShowWindow
push 0x12d
push edi
call sub.USER32.DLL_GetDlgItem
push 0
push eax
call sub.USER32.DLL_ShowWindow
mov eax, dword [0x420318]
movzx eax, byte [eax + 0x227]
mov dword [ebp - 0x28], eax
cmp eax, 8
je 0x40ac25
jg 0x40ac01
or eax, eax
je 0x40ac09
jmp 0x40ac5b
cmp dword [ebp - 0x28], 0x10
je 0x40ac41
jmp 0x40ac5b
push 0x1f7
push edi
call sub.USER32.DLL_GetDlgItem
push 0
push 1
push 0xf1
push eax
call sub.USER32.DLL_SendMessageA
jmp 0x40ac5b
push 0x1f5
push edi
call sub.USER32.DLL_GetDlgItem
push 0
push 1
push 0xf1
push eax
call sub.USER32.DLL_SendMessageA
jmp 0x40ac5b
push 0x1f6
push edi
call sub.USER32.DLL_GetDlgItem
push 0
push 1
push 0xf1
push eax
call sub.USER32.DLL_SendMessageA
mov eax, dword [0x420318]
cmp byte [eax + 0x224], 0
jne 0x40ac7c
push 0x3ef
push edi
call sub.USER32.DLL_GetDlgItem
push 0
push eax
call sub.USER32.DLL_ShowWindow
mov eax, dword [0x420318]
cmp byte [eax + 0x225], 0
jne 0x40acd6
push 0x1fd
push edi
call sub.USER32.DLL_GetDlgItem
push 0
push eax
call sub.USER32.DLL_ShowWindow
push 0x1f7
push edi
call sub.USER32.DLL_GetDlgItem
push 0
push eax
call sub.USER32.DLL_ShowWindow
push 0x1f5
push edi
call sub.USER32.DLL_GetDlgItem
push 0
push eax
call sub.USER32.DLL_ShowWindow
push 0x1f6
push edi
call sub.USER32.DLL_GetDlgItem
push 0
push eax
call sub.USER32.DLL_ShowWindow
push 0
push 0
push 0x200
push esi
call fcn.00410b10
add esp, 0x10
or eax, eax
je 0x40ad0d
mov edx, dword [0x420318]
cmp byte [edx + 0x22b], 0
jne 0x40ad0d
push 0xa
push edi
call sub.USER32.DLL_GetDlgItem
push 1
push eax
call sub.USER32.DLL_ShowWindow
jmp 0x40ad1d
push 0xa
push edi
call sub.USER32.DLL_GetDlgItem
push 0
push eax
call sub.USER32.DLL_ShowWindow
mov eax, dword [0x420318]
cmp byte [eax + 0x224], 0
jne 0x40af2d
cmp byte [eax + 0x225], 0
je 0x40af2d
lea eax, [ebp - 0x20]
push eax
push edi
call sub.USER32.DLL_GetWindowRect
push 0x3ef
push edi
call sub.USER32.DLL_GetDlgItem
lea edx, [ebp - 0x10]
push edx
push eax
call sub.USER32.DLL_GetWindowRect
mov ebx, dword [ebp - 4]
push 0x1fd
push edi
call sub.USER32.DLL_GetDlgItem
lea edx, [ebp - 0x10]
push edx
push eax
call sub.USER32.DLL_GetWindowRect
sub ebx, dword [ebp - 4]
push 0x1fd
push edi
call sub.USER32.DLL_GetDlgItem
mov dword [ebp - 0x2c], eax
push 8
call sub.USER32.DLL_GetSystemMetrics
mov dword [ebp - 0x30], eax
push 7
call sub.USER32.DLL_GetSystemMetrics
mov dword [ebp - 0x34], eax
push 4
call sub.USER32.DLL_GetSystemMetrics
push 1
mov edx, dword [ebp - 4]
sub edx, dword [ebp - 0xc]
push edx
mov edx, dword [ebp - 8]
sub edx, dword [ebp - 0x10]
push edx
mov edx, dword [ebp - 0xc]
sub edx, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x34]
sub edx, ecx
sub edx, eax
add edx, ebx
push edx
mov edx, dword [ebp - 0x10]
sub edx, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x30]
sub edx, ecx
push edx
mov edx, dword [ebp - 0x2c]
push edx
call sub.USER32.DLL_MoveWindow
push 0x1f7
push edi
call sub.USER32.DLL_GetDlgItem
lea edx, [ebp - 0x10]
push edx
push eax
call sub.USER32.DLL_GetWindowRect
push 0x1f7
push edi
call sub.USER32.DLL_GetDlgItem
mov dword [ebp - 0x38], eax
push 8
call sub.USER32.DLL_GetSystemMetrics
mov dword [ebp - 0x3c], eax
push 7
call sub.USER32.DLL_GetSystemMetrics
mov dword [ebp - 0x40], eax
push 4
call sub.USER32.DLL_GetSystemMetrics
push 1
mov edx, dword [ebp - 4]
sub edx, dword [ebp - 0xc]
push edx
mov edx, dword [ebp - 8]
sub edx, dword [ebp - 0x10]
push edx
mov edx, dword [ebp - 0xc]
sub edx, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x40]
sub edx, ecx
sub edx, eax
add edx, ebx
push edx
mov edx, dword [ebp - 0x10]
sub edx, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x3c]
sub edx, ecx
push edx
mov edx, dword [ebp - 0x38]
push edx
call sub.USER32.DLL_MoveWindow
push 0x1f5
push edi
call sub.USER32.DLL_GetDlgItem
lea edx, [ebp - 0x10]
push edx
push eax
call sub.USER32.DLL_GetWindowRect
push 0x1f5
push edi
call sub.USER32.DLL_GetDlgItem
mov dword [ebp - 0x44], eax
push 8
call sub.USER32.DLL_GetSystemMetrics
mov dword [ebp - 0x48], eax
push 7
call sub.USER32.DLL_GetSystemMetrics
mov dword [ebp - 0x4c], eax
push 4
call sub.USER32.DLL_GetSystemMetrics
push 1
mov edx, dword [ebp - 4]
sub edx, dword [ebp - 0xc]
push edx
mov edx, dword [ebp - 8]
sub edx, dword [ebp - 0x10]
push edx
mov edx, dword [ebp - 0xc]
sub edx, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x4c]
sub edx, ecx
sub edx, eax
add edx, ebx
push edx
mov edx, dword [ebp - 0x10]
sub edx, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x48]
sub edx, ecx
push edx
mov edx, dword [ebp - 0x44]
push edx
call sub.USER32.DLL_MoveWindow
push 0x1f6
push edi
call sub.USER32.DLL_GetDlgItem
lea edx, [ebp - 0x10]
push edx
push eax
call sub.USER32.DLL_GetWindowRect
push 0x1f6
push edi
call sub.USER32.DLL_GetDlgItem
mov dword [ebp - 0x50], eax
push 8
call sub.USER32.DLL_GetSystemMetrics
mov dword [ebp - 0x54], eax
push 7
call sub.USER32.DLL_GetSystemMetrics
mov dword [ebp - 0x58], eax
push 4
call sub.USER32.DLL_GetSystemMetrics
push 1
mov edx, dword [ebp - 4]
sub edx, dword [ebp - 0xc]
push edx
mov edx, dword [ebp - 8]
sub edx, dword [ebp - 0x10]
push edx
mov edx, dword [ebp - 0xc]
sub edx, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x58]
sub edx, ecx
sub edx, eax
add edx, ebx
push edx
mov edx, dword [ebp - 0x10]
sub edx, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x54]
sub edx, ecx
push edx
mov edx, dword [ebp - 0x50]
push edx
call sub.USER32.DLL_MoveWindow
mov eax, dword [0x420318]
cmp byte [eax + 0x224], 0
je 0x40af48
cmp byte [eax + 0x225], 0
jne 0x40b17a
lea eax, [ebp - 0x20]
push eax
push edi
call sub.USER32.DLL_GetWindowRect
mov eax, dword [0x420318]
cmp byte [eax + 0x225], 0
je 0x40af7d
push 0x1fd
push edi
call sub.USER32.DLL_GetDlgItem
lea edx, [ebp - 0x10]
push edx
push eax
call sub.USER32.DLL_GetWindowRect
mov ebx, dword [ebp - 0xc]
sub ebx, 3
jmp 0x40afae
push 0x3ef
push edi
call sub.USER32.DLL_GetDlgItem
lea edx, [ebp - 0x10]
push edx
push eax
call sub.USER32.DLL_GetWindowRect
mov eax, dword [0x420318]
cmp byte [eax + 0x224], 0
je 0x40afa8
mov ebx, dword [ebp - 0xc]
sub ebx, 3
jmp 0x40afae
mov ebx, dword [ebp - 4]
sub ebx, 3
mov eax, dword [0x420318]
cmp byte [eax + 0x22a], 0
je 0x40afd3
push 0x12f
push edi
call sub.USER32.DLL_GetDlgItem
lea edx, [ebp - 0x10]
push edx
push eax
call sub.USER32.DLL_GetWindowRect
jmp 0x40afe8
push 0x12e
push edi
call sub.USER32.DLL_GetDlgItem
lea edx, [ebp - 0x10]
push edx
push eax
call sub.USER32.DLL_GetWindowRect
sub ebx, dword [ebp - 4]
mov eax, dword [0x420318]
cmp byte [eax + 0x22a], 0
je 0x40b0be
push 0x12f
push edi
call sub.USER32.DLL_GetDlgItem
mov dword [ebp - 0x2c], eax
push 8
call sub.USER32.DLL_GetSystemMetrics
mov dword [ebp - 0x30], eax
push 7
call sub.USER32.DLL_GetSystemMetrics
mov dword [ebp - 0x34], eax
push 4
call sub.USER32.DLL_GetSystemMetrics
push 1
mov edx, dword [ebp - 4]
sub edx, dword [ebp - 0xc]
add edx, ebx
push edx
mov edx, dword [ebp - 8]
sub edx, dword [ebp - 0x10]
push edx
mov edx, dword [ebp - 0xc]
sub edx, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x34]
sub edx, ecx
sub edx, eax
push edx
mov edx, dword [ebp - 0x10]
sub edx, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x30]
sub edx, ecx
push edx
mov edx, dword [ebp - 0x2c]
push edx
call sub.USER32.DLL_MoveWindow
push 0x12f
push edi
call sub.USER32.DLL_GetDlgItem
mov dword [ebp - 0x38], eax
push 8
call sub.USER32.DLL_GetSystemMetrics
mov dword [ebp - 0x3c], eax
push 7
call sub.USER32.DLL_GetSystemMetrics
mov dword [ebp - 0x40], eax
push 4
call sub.USER32.DLL_GetSystemMetrics
push 1
mov edx, dword [ebp - 4]
sub edx, dword [ebp - 0xc]
add edx, ebx
push edx
mov edx, dword [ebp - 8]
sub edx, dword [ebp - 0x10]
push edx
mov edx, dword [ebp - 0xc]
sub edx, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x40]
sub edx, ecx
sub edx, eax
push edx
mov edx, dword [ebp - 0x10]
sub edx, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x3c]
sub edx, ecx
push edx
mov edx, dword [ebp - 0x38]
push edx
call sub.USER32.DLL_MoveWindow
jmp 0x40b17a
push 0x12e
push edi
call sub.USER32.DLL_GetDlgItem
mov dword [ebp - 0x2c], eax
push 8
call sub.USER32.DLL_GetSystemMetrics
mov dword [ebp - 0x30], eax
push 7
call sub.USER32.DLL_GetSystemMetrics
mov dword [ebp - 0x34], eax
push 4
call sub.USER32.DLL_GetSystemMetrics
push 1
mov edx, dword [ebp - 4]
sub edx, dword [ebp - 0xc]
add edx, ebx
push edx
mov edx, dword [ebp - 8]
sub edx, dword [ebp - 0x10]
push edx
mov edx, dword [ebp - 0xc]
sub edx, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x34]
sub edx, ecx
sub edx, eax
push edx
mov edx, dword [ebp - 0x10]
sub edx, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x30]
sub edx, ecx
push edx
mov edx, dword [ebp - 0x2c]
push edx
call sub.USER32.DLL_MoveWindow
push 0x12d
push edi
call sub.USER32.DLL_GetDlgItem
mov dword [ebp - 0x38], eax
push 8
call sub.USER32.DLL_GetSystemMetrics
mov dword [ebp - 0x3c], eax
push 7
call sub.USER32.DLL_GetSystemMetrics
mov dword [ebp - 0x40], eax
push 4
call sub.USER32.DLL_GetSystemMetrics
push 1
mov edx, dword [ebp - 4]
sub edx, dword [ebp - 0xc]
add edx, ebx
push edx
mov edx, dword [ebp - 8]
sub edx, dword [ebp - 0x10]
push edx
mov edx, dword [ebp - 0xc]
sub edx, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x40]
sub edx, ecx
sub edx, eax
push edx
mov edx, dword [ebp - 0x10]
sub edx, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x3c]
sub edx, ecx
push edx
mov edx, dword [ebp - 0x38]
push edx
call sub.USER32.DLL_MoveWindow
push esi
call sub.CRTDLL.DLL_free
pop ecx
pop edi
pop esi
pop ebx
leave
ret