Function at 0x416820
Capabilities:
Hide graphical window

Disassembly:
sub esp, 0x74
push ebx
push esi
push edi
mov edi, dword [esp + 0x84]
mov eax, dword [edi + 0x614]
test eax, eax
je 0x416911
cmp byte [eax], 0
je 0x416911
push 0x2c
lea eax, [esp + 0x18]
push 0
push eax
call fcn.00490360
mov ecx, dword [0x4ac2c4]
add esp, 0xc
push 0
push 0
push 0
push 0xffffff61
push 0
mov dword [esp + 0x24], 0x30
mov dword [esp + 0x4c], 0x49a904
mov dword [esp + 0x38], ecx
mov dword [esp + 0x2c], 0x439bf0
call fcn.00475a80
add esp, 0x14
push 0
push 0
push 0x31
mov dword [0x4ab078], eax
call dword [sym.imp.USER32.DLL_GetSystemMetrics]
push eax
push 0xffffff61
push 0
call fcn.00475a80
mov edx, dword [0x4ab078]
add esp, 0x14
push 0x7f00
push 0
mov dword [0x4ab07c], eax
mov dword [esp + 0x30], edx
mov dword [esp + 0x44], eax
call dword [sym.imp.USER32.DLL_LoadCursorA]
mov esi, dword [sym.imp.USER32.DLL_RegisterClassExA]
mov dword [esp + 0x2c], eax
lea eax, [esp + 0x10]
push eax
mov dword [esp + 0x34], 0x10
mov dword [esp + 0x38], 0xd3
call esi
test ax, ax
jne 0x41691c
fldz
sub esp, 8
fstp qword [esp]
push 0
push 0
push 0x10000
push 0x49d174
call fcn.00478840
add esp, 0x18
xor eax, eax
pop edi
pop esi
pop ebx
add esp, 0x74
ret 4
lea ecx, [esp + 0x10]
push ecx
mov dword [esp + 0x3c], 0x49d180
mov dword [esp + 0x38], 0
call esi
test ax, ax
je 0x4168f3
call dword [sym.imp.USER32.DLL_GetForegroundWindow]
test eax, eax
je 0x416971
push 0x40
lea edx, [esp + 0x44]
push edx
push eax
call dword [sym.imp.USER32.DLL_GetClassNameA]
test eax, eax
je 0x41696a
lea eax, [esp + 0x40]
push 0x49d18c
push eax
call fcn.00486ea1
add esp, 8
test eax, eax
je 0x416971
mov byte [esp + 0xf], 0
jmp 0x416976
mov byte [esp + 0xf], 1
mov ecx, dword [0x4ac2c4]
movzx eax, byte [esp + 0xf]
mov edx, dword [edi + 0x614]
push 0
mov ebx, dword [sym.imp.USER32.DLL_CreateWindowExA]
push ecx
push 0
push 0
push SysReAllocString
push SysReAllocString
push SysReAllocString
push SysReAllocString
push 0xcf0000
neg eax
push edx
sbb eax, eax
push 0x49a904
and eax, 0x80
push eax
call ebx
mov dword [0x4ac2cc], eax
test eax, eax
jne 0x4169f1
fldz
sub esp, 8
fstp qword [esp]
push 0
push 0
push 0x10000
push 0x49d19c
call fcn.00478840
add esp, 0x18
xor eax, eax
pop edi
pop esi
pop ebx
add esp, 0x74
ret 4
push eax
call dword [sym.imp.USER32.DLL_GetMenu]
push 3
mov edi, eax
push 0xff79
push edi
call dword [sym.imp.USER32.DLL_EnableMenuItem]
mov esi, 3
call fcn.00416c20
mov ecx, dword [0x4ac2c4]
mov edx, dword [0x4ac2cc]
push 0
push ecx
push 1
push edx
push 0
push 0
push 0
push 0
push 0x50a00804
push 0
push 0x49d1ac
push 0
call ebx
mov dword [0x4ac2d0], eax
test eax, eax
je 0x4169c8
push eax
call dword [sym.imp.USER32.DLL_GetDC]
cmp byte [0x4ada46], 0
mov esi, eax
mov eax, 0x49d1b4
jne 0x416a61
mov eax, 0x49d1c0
push eax
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x48
push 0x5a
push esi
call dword [sym.imp.GDI32.DLL_GetDeviceCaps]
push eax
push 0xa
call dword [sym.imp.KERNEL32.DLL_MulDiv]
neg eax
push eax
call dword [sym.imp.GDI32.DLL_CreateFontA]
mov dword [0x4ac2d8], eax
mov eax, dword [0x4ac2d0]
push esi
push eax
call dword [sym.imp.USER32.DLL_ReleaseDC]
mov ecx, dword [0x4ac2d8]
mov edx, dword [0x4ac2d0]
mov esi, dword [sym.imp.USER32.DLL_SendMessageA]
push 0
push ecx
push 0x30
push edx
call esi
mov eax, dword [0x4ac2d0]
push 0
push 0
push 0xc5
push eax
call esi
mov ecx, dword [0x4ac2cc]
mov esi, dword [sym.imp.USER32.DLL_ShowWindow]
push 0
push ecx
call esi
mov edx, dword [0x4ac2cc]
push 0
push edx
call esi
cmp byte [esp + 0xf], 0
je 0x416b12
mov eax, dword [0x4ac2cc]
push 6
push eax
call esi
mov ecx, dword [0x4ac2cc]
push 0
push 0xffffffffffffffec
push ecx
call dword [sym.imp.USER32.DLL_SetWindowLongA]
mov edx, dword [0x4ac2c4]
push 0xd4
push edx
call dword [sym.imp.USER32.DLL_LoadAcceleratorsA]
cmp byte [0x4ac40b], 0
mov esi, dword [esp + 0x84]
mov dword [0x4ac2e0], eax
je 0x416b45
mov dword [esi + 0x17e], 0
jmp 0x416b4a
call fcn.00416c50
cmp dword [esi + 0x5c4], 0
je 0x416b5a
mov bl, 1
call fcn.00416b70
pop edi
pop esi
mov eax, 1
pop ebx
add esp, 0x74
ret 4