Function at 0x4286fc
Capabilities:
Hide graphical window

Disassembly:
push ebp
mov ebp, esp
add esp, 0xffffff74
push ebx
push esi
push edi
xor eax, eax
mov dword [ebp - 0x8c], eax
mov dword [ebp - 0x88], eax
mov dword [ebp - 0x7c], eax
mov dword [ebp - 0x80], eax
mov dword [ebp - 0x84], eax
mov dword [ebp - 0x78], eax
mov dword [ebp - 0x74], eax
mov dword [ebp - 0x60], eax
mov dword [ebp - 0x5c], eax
mov dword [ebp - 0x10], eax
xor eax, eax
push ebp
push 0x428d24
push dword fs:[eax]
mov dword fs:[eax], esp
xor ecx, ecx
mov dl, 1
mov eax, dword [0x427f00]
call fcn.0041709c
mov dword [ebp - 0xc], eax
xor eax, eax
push ebp
push 0x428cea
push dword fs:[eax]
mov dword fs:[eax], esp
xor ecx, ecx
mov dl, 1
mov eax, dword [0x41cde8]
call fcn.004219f8
mov dword [ebp - 4], eax
xor eax, eax
push ebp
push 0x428ccd
push dword fs:[eax]
mov dword fs:[eax], esp
xor eax, eax
push ebp
push 0x428c43
push dword fs:[eax]
mov dword fs:[eax], esp
xor eax, eax
mov dword [0x42d8a8], eax
xor eax, eax
mov dword [0x42d8ac], eax
xor eax, eax
mov dword [ebp - 8], eax
xor ebx, ebx
mov word [0x42e936], 0
mov word [0x42e934], 0
xor eax, eax
mov dword [0x42d8b0], eax
mov eax, dword [ebp - 4]
add eax, 0x44
mov edx, dword [0x42d8a4]
call fcn.00404420
mov eax, dword [ebp - 4]
mov byte [eax + 0x39], 1
mov eax, dword [ebp - 4]
mov byte [eax + 0x3a], 1
mov eax, dword [ebp - 4]
mov byte [eax + 0x40], 1
mov edx, dword [0x42e900]
mov eax, dword [ebp - 4]
call fcn.00421fc8
mov edx, dword [0x42e8fc]
mov eax, dword [ebp - 4]
mov ecx, dword [eax]
call dword [ecx + 0x30]
push 0xffffffffffffffff
push 0xffffffffffffffff
push 0xffffffffffffffff
lea eax, [ebp - 0x5c]
push eax
mov cl, 1
xor edx, edx
mov eax, dword [0x42d8a4]
call fcn.0042728c
mov edx, dword [ebp - 0x5c]
mov eax, 0x42d8a4
call fcn.00404420
mov eax, dword [ebp - 4]
add eax, 0x44
mov edx, dword [0x42d8a4]
call fcn.00404420
mov eax, dword [ebp - 4]
mov edx, dword [ebp - 0xc]
mov dword [eax + 0xcc], edx
mov dword [eax + 0xc8], 0x427fa8
mov eax, dword [ebp - 4]
mov edx, dword [ebp - 0xc]
mov dword [eax + 0x9c], edx
mov dword [eax + 0x98], 0x4280c8
lea ecx, [ebp - 0x60]
mov edx, dword [0x42d8a4]
mov eax, 0x428d3c
call fcn.00427178
mov edx, dword [ebp - 0x60]
mov eax, dword [ebp - 4]
add eax, 0x44
call fcn.00404420
test byte [0x42d8a0], 2
jne 0x428a7d
push 0x428d60
mov eax, dword [0x42d958]
mov eax, dword [eax]
push eax
call sub.user32.dll_LoadIconA
mov dword [0x42d8b0], eax
lea eax, [ebp - 0x38]
mov edx, 0x28
call fcn.00406624
mov dword [ebp - 0x34], 0x428114
mov eax, dword [0x42e660]
mov dword [ebp - 0x28], eax
mov dword [ebp - 0x1c], 0x10
mov eax, 0x428d6c
mov dword [ebp - 0x14], eax
push 0x7f00
push 0
call sub.user32.dll_LoadCursorA
mov dword [ebp - 0x20], eax
lea eax, [ebp - 0x38]
push eax
call sub.user32.dll_RegisterClassA
push 0x4e
lea eax, [ebp - 0x48]
push eax
mov ecx, 0x152
xor edx, edx
xor eax, eax
call fcn.00411b04
push 0
call sub.user32.dll_GetSystemMetrics
sub eax, dword [ebp - 0x40]
sar eax, 1
jns 0x42890a
adc eax, 0
mov dword [ebp - 0x48], eax
push 1
call sub.user32.dll_GetSystemMetrics
mov esi, eax
sub esi, dword [ebp - 0x3c]
sar esi, 1
jns 0x428920
adc esi, 0
mov dword [ebp - 0x44], esi
push 0x80000000
mov eax, dword [ebp - 0x48]
push eax
push esi
mov eax, dword [ebp - 0x40]
push eax
mov eax, dword [ebp - 0x3c]
push eax
push 0
push 0
mov eax, dword [0x42e660]
push eax
push 0
mov ecx, 0x428d7c
mov edx, dword [ebp - 0x14]
mov eax, 0x101
call fcn.00406678
mov dword [0x42d8a8], eax
push 0x42e914
mov eax, dword [0x42d8a8]
push eax
call sub.user32.dll_GetClientRect
mov eax, dword [0x42e920]
sub eax, 0x12
sub eax, 5
push eax
lea eax, [ebp - 0x58]
push eax
mov ecx, dword [0x42e91c]
sub ecx, 0x40
mov edx, 5
mov eax, 0x40
call fcn.00411b04
mov esi, dword [0x42e920]
push esi
lea eax, [ebp - 0x70]
push eax
mov edx, esi
sub edx, 0x12
mov ecx, dword [0x42e91c]
xor eax, eax
call fcn.00411b04
lea esi, [ebp - 0x70]
mov edi, 0x42e924
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x58]
push eax
mov eax, dword [ebp - 0x54]
push eax
mov eax, dword [ebp - 0x50]
push eax
mov eax, dword [ebp - 0x4c]
push eax
mov eax, dword [0x42d8a8]
push eax
push 0
mov eax, dword [0x42e660]
push eax
push 0
push 0x428d94
push dword [0x42e908]
push 0x428dac
push 0x428dc8
lea eax, [ebp - 0x74]
mov edx, 4
call fcn.0040474c
mov eax, dword [ebp - 0x74]
call fcn.0040488c
mov edx, eax
mov eax, 0x428ddc
mov ecx, 0x50000000
call fcn.004066d0
mov dword [0x42d8ac], eax
push 0x428de4
push 0
push 0
push 0
push 0
push 1
push 0
push 0
push 0
push 0x2bc
push 0
push 0
push 0
push 0xfffffffffffffff5
call sub.gdi32.dll_CreateFontA
mov dword [ebp - 8], eax
push 0
mov esi, dword [ebp - 8]
push esi
push 0x30
mov eax, dword [0x42d8a8]
push eax
call sub.user32.dll_SendMessageA
push 0
push esi
push 0x30
mov eax, dword [0x42d8ac]
push eax
call sub.user32.dll_SendMessageA
push 1
mov eax, dword [0x42d8a8]
push eax
call sub.user32.dll_ShowWindow
mov eax, 0xc8
call fcn.00427070
mov eax, dword [ebp - 4]
call fcn.00422784
test eax, eax
jle 0x428c0a
cmp dword [0x42d8a8], 0
je 0x428aa3
push 0
mov eax, dword [0x42d8a8]
push eax
call sub.user32.dll_ShowWindow
test byte [0x42d8a0], 8
jne 0x428b01
call fcn.00402e64
test eax, eax
jle 0x428b01
mov eax, 0x42e910
mov edx, 0x428dfc
call fcn.00404420
call fcn.00402e64
mov esi, eax
test esi, esi
jle 0x428b0b
mov edi, 1
push dword [0x42e910]
push 0x428dfc
lea edx, [ebp - 0x78]
mov eax, edi
call fcn.00402ecc
push dword [ebp - 0x78]
mov eax, 0x42e910
mov edx, 3
call fcn.0040474c
inc edi
dec esi
jne 0x428ad4
jmp 0x428b0b
mov eax, 0x42e910
call fcn.004043cc
test byte [0x42d8a0], 4
je 0x428b93
lea edx, [ebp - 0x84]
xor eax, eax
call fcn.00402ecc
mov eax, dword [ebp - 0x84]
lea edx, [ebp - 0x80]
call fcn.00408128
mov eax, dword [ebp - 0x80]
lea edx, [ebp - 0x7c]
call fcn.004278a4
mov edx, dword [ebp - 0x7c]
lea eax, [ebp - 0x10]
mov ecx, 0x428e08
call fcn.004046d8
mov eax, dword [ebp - 0x10]
call fcn.00407f38
test al, al
je 0x428b7f
mov eax, 0x42e910
mov edx, 0x428e20
call fcn.00404420
mov eax, dword [ebp - 0x10]
push eax
mov ecx, 0x428e38
mov edx, 0x428e50
mov eax, 0x80000001
call fcn.0042757c
jmp 0x428b93
mov ecx, 0x428e38
mov edx, 0x428e50
mov eax, 0x80000001
call fcn.0042762c
test byte [0x42d8a0], 1
je 0x428c20
test byte [0x42d8a0], 0x10
je 0x428bd4
lea eax, [ebp - 0x88]
mov ecx, dword [0x42e910]
mov edx, dword [0x42e90c]
call fcn.004046d8
mov eax, dword [ebp - 0x88]
mov edx, 1
call fcn.004277a4
mov ebx, eax
jmp 0x428c20
push dword [0x42e900]
push dword [0x42e90c]
push dword [0x42e910]
lea eax, [ebp - 0x8c]
mov edx, 3
call fcn.0040474c
mov eax, dword [ebp - 0x8c]
mov edx, 1
call fcn.004277a4
mov ebx, eax
jmp 0x428c20
mov ecx, 0x428e68
mov dl, 1
mov eax, dword [0x406ab8]
call fcn.0040b348
call fcn.00403e04
call fcn.00428674
cmp ebx, 0x3e8
jb 0x428c39
mov eax, ebx
sub eax, 0x3e8
call fcn.00427c64
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x428c80
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x428cd4
mov eax, dword [ebp - 4]
call fcn.0040367c
cmp dword [0x42d8ac], 0
je 0x428ca9
mov eax, dword [0x42d8ac]
push eax
call sub.user32.dll_DestroyWindow
cmp dword [0x42d8a8], 0
je 0x428cbd
mov eax, dword [0x42d8a8]
push eax
call sub.user32.dll_DestroyWindow
cmp dword [ebp - 8], 0
je 0x428ccc
mov eax, dword [ebp - 8]
push eax
call sub.gdi32.dll_DeleteObject
ret