Function at 0x4029ab
Capabilities:
Hide graphical window

Disassembly:
push ebx
push ebp
push esi
push edi
mov ebp, esp
push eax
sub esp, 4
mov eax, dword [ebp + 0x1c]
mov word [0x407784], ax
mov eax, dword [ebp + 0x18]
mov word [0x407788], ax
mov byte [0xa193fa], 0
mov byte [0xa193fb], 0
mov eax, dword [0x406b0c]
mov dword [0xa18458], eax
call fcn.004045db
push 0
call sub.KERNEL32.dll_GetModuleHandleA
mov dword [0xa18184], eax
mov eax, dword [0xa18184]
mov dword [0x407768], eax
mov eax, dword [0xa18184]
mov dword [0x407714], eax
push 0x7f00
push 0
call sub.USER32.dll_LoadCursorA
mov dword [0xa181dc], eax
mov eax, dword [0xa181dc]
mov dword [0x407770], eax
mov eax, 0x8a0000
mov dword [0xa181dc], eax
mov eax, dword [ebp + 0x14]
and eax, 4
test eax, eax
je 0x402a3d
mov eax, 0x8f0000
mov dword [0xa181dc], eax
push 0x407758
call sub.USER32.dll_RegisterClassA
push 0
push dword [0xa18184]
push 0
push 0
movzx eax, word [0x407788]
add eax, 0x19
push eax
movzx eax, word [0x407784]
add eax, 6
push eax
push 0x80000000
push 0x80000000
push dword [0xa181dc]
push dword [ebp + 0x20]
push str.nowindow
push 0
call sub.USER32.dll_CreateWindowExA
mov dword [0xa18188], eax
mov byte [0xa193fc], 0
push 1
push dword [0xa18188]
call sub.USER32.dll_ShowWindow
mov eax, dword [0xa18188]
mov dword [0x407710], eax
mov eax, dword [ebp + 0x14]
and eax, 8
test eax, eax
je 0x402acb
push 0x405945
call fcn.00405600
mov dword [0xa181d8], eax
mov byte [0x406b11], 1
mov eax, dword [ebp + 0x14]
and eax, 0x10
test eax, eax
je 0x402b60
mov eax, dword [ebp + 0x14]
and eax, 0xffffffef
mov dword [ebp + 0x14], eax
push 0x40b78
push 0
call sub.KERNEL32.dll_GlobalAlloc
mov dword [0x406b00], eax
mov eax, dword [0x406b00]
test eax, eax
je 0x402b60
push dword [0x406b00]
push 0x200
call fcn.004056fe
mov dword [ebp - 8], eax
push 0x40594f
mov eax, dword [0x406b00]
add eax, dword [ebp - 8]
push eax
xor eax, eax
mov al, 0xc
xchg ecx, eax
pop edi
pop esi
cld
rep movsb byte es:[edi], byte [esi]
push dword [0x406b00]
call fcn.0040559a
mov dword [ebp - 8], eax
mov eax, dword [ebp - 8]
cmp eax, 0xffffffff
je 0x402b60
push dword [ebp - 8]
push dword [0x406b00]
push 0x40b78
call fcn.00405638
push dword [ebp - 8]
call fcn.00405633
mov eax, dword [ebp + 0x14]
or al, 0x10
mov dword [ebp + 0x14], eax
mov eax, dword [ebp + 0x14]
mov byte [0x406b10], al
push 0x4076a4
push dword [0xa18188]
call sub.USER32.dll_GetWindowRect
push 0x4076b4
push dword [0xa18188]
call sub.USER32.dll_GetClientRect
mov eax, dword [str.dd]
sub eax, dword [0x4076b4]
mov dword [str.dd], eax
mov eax, dword [0x4076c0]
sub eax, dword [0x4076b8]
mov dword [0x4076c0], eax
mov eax, dword [0x4076ac]
sub eax, dword [0x4076a4]
mov dword [0x4076ac], eax
mov eax, dword [0x4076b0]
sub eax, dword [0x4076a8]
mov dword [0x4076b0], eax
mov eax, dword [0x4076ac]
sub eax, dword [str.dd]
mov dword [0x4076ac], eax
mov eax, dword [0x4076b0]
sub eax, dword [0x4076c0]
mov dword [0x4076b0], eax
push 6
movzx eax, word [0x407788]
add eax, dword [0x4076b0]
push eax
movzx eax, word [0x407784]
add eax, dword [0x4076ac]
push eax
push 0
push 0
push 0
push dword [0xa18188]
call sub.USER32.dll_SetWindowPos
movzx eax, word [0x407784]
mov dword [str.dd], eax
movzx eax, word [0x407788]
mov dword [0x4076c0], eax
mov eax, 0xffffffff
mov dword [0xa18440], eax
xor eax, eax
mov dword [ebp - 8], eax
mov eax, dword [ebp - 8]
mov esp, ebp
pop edi
pop esi
pop ebp
pop ebx
ret 0x10