Function at 0x420450
Capabilities:
Hide graphical window

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
sub esp, 0x20
mov eax, dword [0x4ef418]
xor eax, ebp
mov dword [ebp - 0x10], eax
xor edi, edi
cmp dword [ebp + 0x1c], 0
je 0x420481
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.0045bb2d
mov eax, edi
add esp, 0x20
pop esi
pop edi
pop ebx
pop ebp
ret 0x18
mov esi, ecx
mov ecx, dword [ebp + 0x18]
mov ebx, dword [ebp + 0x14]
mov edx, dword [ebp + 0x10]
mov eax, dword [ebp + 0xc]
cmp eax, 0x10f
jle 0x4204de
cmp eax, 0x138
je 0x420540
cmp eax, 0x113
je 0x42057c
cmp eax, 0x110
jne 0x4205c7
xor edi, edi
inc edi
mov dword [esi + 0x24], edi
sub esp, 8
mov ecx, esi
call fcn.0041f1b0
mov eax, dword [ebp + 0x18]
mov dword [eax], edi
cmp dword [esi + 0x24], 0
jne 0x42046b
xor edi, edi
jmp 0x42046b
xor edi, edi
inc edi
mov dword [esi + 0x24], edi
jmp 0x4204c7
cmp eax, 0x10
je 0x42051e
cmp eax, 0x14
je 0x4204d6
cmp eax, 0x84
jne 0x4205c7
xorps xmm0, xmm0
lea edi, [ebp - 0x20]
movups xmmword [edi], xmm0
push edi
push dword [esi + 4]
call dword [sym.imp.USER32.dll_GetWindowRect]
shr ebx, 0x10
mov eax, dword [edi + 4]
add eax, 0x37
mov ecx, dword [ebp + 0x18]
mov dword [ecx], 2
cmp ebx, eax
jge 0x4204d2
jmp 0x420538
mov dword [esi + 0x24], 1
xor edi, edi
push edi
call dword [sym.imp.USER32.dll_PostQuitMessage]
mov eax, dword [ebp + 0x18]
mov dword [eax], edi
cmp dword [esi + 0x24], edi
je 0x4204d2
xor edi, edi
inc edi
jmp 0x42046b
mov dword [ebp - 0x28], esp
xor edi, edi
inc edi
mov dword [esi + 0x24], edi
mov eax, dword [esi + 0x268]
mov dword [ebp - 0x24], eax
push edi
push edx
call dword [sym.imp.GDI32.dll_SetBkMode]
cmp dword [ebp - 0x24], ebx
je 0x420574
push 0
call dword [sym.imp.GDI32.dll_GetStockObject]
mov esp, dword [ebp - 0x28]
mov ecx, dword [ebp + 0x18]
mov dword [ecx], eax
jmp 0x4204cc
mov eax, dword [esi + 0x30c]
jmp 0x420567
mov dword [esi + 0x24], 1
cmp edx, 0x64
jne 0x4205b2
mov eax, dword [esi + 0x36c]
cmp eax, 0x63
jg 0x4205b2
cmp eax, dword [esi + 0x368]
jge 0x4205b2
inc eax
mov dword [esi + 0x36c], eax
mov edi, ecx
lea ecx, [esi + 0x330]
push eax
call fcn.00415ff0
mov ecx, edi
mov dword [ecx], 0
cmp dword [esi + 0x24], 0
jne 0x420538
jmp 0x4204d2
movzx ecx, dx
cmp eax, 0x111
jne 0x4205f1
cmp ecx, 0x8ce
jne 0x4205f1
sub esp, 8
xor edi, edi
mov ecx, esi
push edi
push edi
call fcn.00420040
mov eax, dword [ebp + 0x18]
mov dword [eax], edi
jmp 0x420538
cmp eax, 0x111
jne 0x420618
cmp ecx, 0x8cc
jne 0x420618
sub esp, 8
xor eax, eax
mov ecx, esi
push eax
push eax
call fcn.00420160
mov ecx, dword [ebp + 0x18]
mov dword [ecx], eax
jmp 0x420538
cmp eax, 0x111
jne 0x420640
cmp ecx, 0x8cd
jne 0x420640
push 6
push dword [esi + 4]
call dword [sym.imp.USER32.dll_ShowWindow]
mov eax, dword [ebp + 0x18]
mov dword [eax], 0
jmp 0x420538
cmp eax, 0x900
jle 0x420681
cmp eax, 0x901
je 0x4206e4
cmp eax, 0xb00
jne 0x42046b
sub esp, 0x10
mov ecx, esi
call fcn.0041ffd0
mov eax, dword [ebp + 0x18]
mov dword [eax], 1
jmp 0x420538
sub esp, 0x10
mov ecx, esi
call fcn.0041fc70
jmp 0x420667
cmp eax, 0xf
je 0x420675
cmp eax, 0x900
jne 0x42046b
xor eax, eax
cmp dword [esi + 0x380], 1
mov ecx, dword [ebp + 0x18]
je 0x420611
cmp byte [0x4f6c90], 0
jne 0x4206ca
mov byte [0x4f6c90], 1
push 0
push 0x1e
push 0x64
push dword [esi + 4]
mov edi, ecx
mov ebx, edx
call dword [sym.imp.USER32.dll_SetTimer]
mov edx, ebx
mov ecx, edi
xor eax, eax
inc eax
cmp dword [esi + 0x368], edx
jge 0x420611
mov dword [esi + 0x368], edx
jmp 0x420611
mov edi, 0x64
push edi
push dword [esi + 4]
call dword [sym.imp.USER32.dll_KillTimer]
lea ecx, [esi + 0x330]
push edi
call fcn.00415ff0
xor edi, edi
mov ebx, dword [sym.imp.USER32.dll_EnableWindow]
push edi
push dword [esi + 0x2c]
call ebx
push edi
push dword [esi + 0xac]
call ebx
jmp 0x420667