Function at 0x4018eb
Capabilities:
Hide graphical window

Disassembly:
push ebp
mov ebp, esp
add esp, 0xffffff90
push ebx
push esi
push edi
mov edi, dword [ebp + 8]
xor ebx, ebx
push 1
call fcn.00401770
pop ecx
mov dword [0x40ace4], 1
mov dword [0x40a970], edi
xor eax, eax
mov dword [0x40ab9c], eax
push 0x154
push 0
push 0x40a978
call sub.CC32100.DLL__memset
add esp, 0xc
mov dword [0x40a978], 0x154
push 0
push 0x40a978
push dword [0x40a978]
push 0x29
call sub.USER32.DLL_SystemParametersInfoA
test eax, eax
jne 0x401968
push 0
push 0x40a59d
push str.Error_retrieving_system_params.
push 0
call sub.USER32.DLL_MessageBoxA
mov eax, ebx
jmp 0x401c30
push str.CadIS.mnu
call fcn.00404877
pop ecx
test eax, eax
jne 0x401c01
mov edx, dword [0x40aba0]
mov ecx, dword [edx + 0x2c]
push dword [ecx + 0x18]
call fcn.00404c98
pop ecx
mov dword [ebp - 4], eax
test eax, eax
je 0x401c01
push 0
call sub.USER32.DLL_GetDC
mov esi, eax
push 8
push esi
call sub.GDI32.DLL_GetDeviceCaps
mov dword [0x40abc0], eax
push 0xa
push esi
call sub.GDI32.DLL_GetDeviceCaps
mov dword [0x40abc4], eax
push 0x58
push esi
call sub.GDI32.DLL_GetDeviceCaps
mov dword [0x40abc8], eax
push 0x5a
push esi
call sub.GDI32.DLL_GetDeviceCaps
mov dword [0x40abcc], eax
push esi
push 0
call sub.USER32.DLL_ReleaseDC
mov eax, dword [0x40aba0]
push dword [eax + 0x28]
push 0x40abe0
call sub.CC32100.DLL__strcpy
add esp, 8
push 0
push edi
push dword [ebp - 4]
push 0
push dword [0x40abc4]
push dword [0x40abc0]
push 0
push 0
push 0x3cf0000
push 0x40abe0
push str.CadIS6MainWndClass
push 0
call sub.USER32.DLL_CreateWindowExA
mov dword [0x40a974], eax
cmp dword [0x40a974], 0
je 0x401c01
lea edx, [ebp - 0x14]
push edx
push dword [0x40a974]
call sub.USER32.DLL_GetClientRect
mov ecx, 0x40aad0
mov eax, dword [0x40a974]
mov dword [ecx], eax
xor edx, edx
mov dword [0x40aad4], edx
xor ecx, ecx
mov dword [0x40aad8], ecx
mov eax, dword [0x40abc0]
mov dword [0x40aadc], eax
mov edx, dword [0x40abc4]
mov dword [0x40aae0], edx
mov ecx, dword [ebp - 0xc]
mov dword [0x40aae4], ecx
mov eax, dword [ebp - 8]
mov dword [0x40aae8], eax
push dword [0x40a974]
push dword [0x40a970]
call dword [0x40a2c8]
add esp, 8
test eax, eax
jne 0x401c01
push 0x40a2bc
call fcn.004026d5
pop ecx
call fcn.00405004
test eax, eax
jne 0x401c01
mov edx, dword [0x40aba0]
mov ecx, dword [0x40a974]
mov dword [edx + 4], ecx
mov eax, dword [0x40aba0]
xor edx, edx
mov dword [eax + 8], edx
mov ecx, dword [0x40aba0]
xor eax, eax
mov dword [ecx + 0xc], eax
mov edx, dword [0x40aba0]
mov ecx, dword [0x40abc0]
mov dword [edx + 0x10], ecx
mov eax, dword [0x40aba0]
mov edx, dword [0x40abc4]
mov dword [eax + 0x14], edx
call fcn.00409249
test eax, eax
jne 0x401c01
call fcn.0040344a
test eax, eax
jne 0x401c01
push 1
push 0x40ab61
call fcn.004018cc
add esp, 8
call fcn.0040511c
test eax, eax
jne 0x401c01
push 1
push 0
push dword [0x40a974]
call sub.USER32.DLL_InvalidateRect
push dword [ebp + 0xc]
push dword [0x40a974]
call sub.USER32.DLL_ShowWindow
push dword [0x40a974]
call sub.USER32.DLL_UpdateWindow
push 0
call fcn.00401721
pop ecx
call fcn.00409431
call fcn.0040121b
push 0
call sub.OLE32.DLL_CoInitialize
mov dword [0x40a2c4], eax
cmp dword [0x40a2c4], 0
je 0x401b9b
cmp dword [0x40a2c4], 1
je 0x401b9b
push 0
push 0x40a5fe
push str.COM
push 0
call sub.USER32.DLL_MessageBoxA
call dword [0x40b198]
mov dword [0x40ab9c], eax
push 0x59
push 0
lea ecx, [ebp - 0x70]
push ecx
call sub.CC32100.DLL__memset
add esp, 0xc
mov eax, dword [0x40a970]
mov dword [ebp - 0x70], eax
mov edx, dword [0x40a974]
mov dword [ebp - 0x6c], edx
mov ecx, 0x40ab61
mov eax, dword [ecx]
mov dword [ebp - 0x68], eax
mov edx, 0x40ab7e
mov ecx, dword [edx]
mov dword [ebp - 0x64], ecx
lea eax, [ebp - 0x70]
push eax
call dword [0x40b16c]
pop ecx
push dword [ebp + 0x10]
call dword [0x40b174]
pop ecx
test eax, eax
je 0x401bfc
call dword [0x40b170]
jmp 0x401c01
mov ebx, 1
test ebx, ebx
jne 0x401c17
push 0
call fcn.00404804
pop ecx
call fcn.004034ef
call fcn.004051ea
xor eax, eax
mov dword [0x40ace4], eax
push 0
call fcn.00401770
pop ecx
push 0xa
call fcn.004059a3
pop ecx
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret