Function at 0x401d80
Capabilities:
Hide graphical window

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x25c
mov eax, dword [0x521e28]
xor eax, ebp
mov dword [ebp - 4], eax
mov dword [ebp - 0x238], 3
mov dword [ebp - 0x234], 0x4020c0
mov dword [ebp - 0x230], 0
mov dword [ebp - 0x22c], 0
mov eax, dword [ebp + 8]
mov dword [ebp - 0x228], eax
push 0x7f00
push 0
call dword [sym.imp.USER32.dll_LoadIconW]
mov dword [ebp - 0x224], eax
push 0x7f00
push 0
call dword [sym.imp.USER32.dll_LoadCursorW]
mov dword [ebp - 0x220], eax
push 0
call dword [sym.imp.GDI32.dll_GetStockObject]
mov dword [ebp - 0x21c], eax
mov dword [ebp - 0x218], 0
mov dword [ebp - 0x214], 0x4e967c
lea ecx, [ebp - 0x238]
push ecx
call dword [sym.imp.USER32.dll_RegisterClassW]
movzx edx, ax
test edx, edx
jne 0x401e3b
push 0x10
push 0x4e9690
push str.This_program_requires_Windows_
push 0
call dword [sym.imp.USER32.dll_MessageBoxW]
xor eax, eax
jmp 0x4020a3
push 0
mov eax, dword [ebp + 8]
push eax
push 0
push 0
push 0
push 0
push 0
push 0
push 0xcf0000
push 0x4e96e4
push 0x4e9708
push 0
call dword [sym.imp.USER32.dll_CreateWindowExW]
mov dword [ebp - 0x258], eax
push 0
mov ecx, dword [ebp - 0x258]
push ecx
call dword [sym.imp.USER32.dll_ShowWindow]
mov edx, dword [ebp - 0x258]
push edx
call dword [sym.imp.USER32.dll_UpdateWindow]
mov word [ebp - 0x210], 0
push 0x206
push 0
lea eax, [ebp - 0x20e]
push eax
call fcn.004ad2c0
add esp, 0xc
push 0x208
lea ecx, [ebp - 0x210]
push ecx
push 0xa
call fcn.00451e60
mov ecx, eax
call fcn.00452a00
test eax, eax
jne 0x401eca
xor eax, eax
jmp 0x4020a3
push 0x4e971c
push 0x104
lea edx, [ebp - 0x210]
push edx
call fcn.00402280
push 0x4e972c
push 0x104
lea eax, [ebp - 0x210]
push eax
call fcn.00402280
push 0x4e9730
push 0x104
lea ecx, [ebp - 0x210]
push ecx
call fcn.00402280
push 0x4e9748
push 0x4e975c
push 0x4e977c
push 0x4e9794
push 0x4e97a4
push 0xa
push 1
push 1
push 1
push 1
push 1
push 1
lea edx, [ebp - 0x210]
push edx
call fcn.00442530
mov ecx, eax
call fcn.004425e0
movzx eax, al
test eax, eax
jne 0x401f54
xor eax, eax
jmp 0x4020a3
call fcn.0042d8b0
cmp eax, 4
jne 0x401fa6
call dword [sym.imp.KERNEL32.dll_GetCurrentProcessId]
push eax
call fcn.0042daa0
add esp, 4
test eax, eax
jne 0x401f8f
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
push 0x4e97b0
push 1
call fcn.00442530
push eax
call fcn.00442bb0
add esp, 0x10
jmp 0x401fa4
push 0x4e97f8
push 3
call fcn.00442530
push eax
call fcn.00442bb0
add esp, 0xc
jmp 0x401fbb
push 0x4e9840
push 3
call fcn.00442530
push eax
call fcn.00442bb0
add esp, 0xc
call fcn.004066d0
mov dword [ebp - 0x25c], eax
push 0x4e98c0
mov ecx, dword [ebp - 0x25c]
mov edx, dword [ecx]
mov ecx, dword [ebp - 0x25c]
mov eax, dword [edx + 4]
call eax
test eax, eax
jne 0x401fef
push 0x4e9914
call fcn.00405640
add esp, 4
push 0x7530
push 0xa
push 0x32
mov ecx, 0x523460
call fcn.004323e0
test eax, eax
jne 0x402025
push 1
push 0x4e98bc
push str.Failure_initialized_update_scheduler
push 0x4e9984
push 1
call fcn.00442530
mov ecx, eax
call fcn.00442990
push 1
push 0x4e999c
push 0x4e99a0
push 0x4e99ec
push 3
call fcn.00442530
mov ecx, eax
call fcn.00442990
push 0
push 0
push 0
lea ecx, [ebp - 0x254]
push ecx
call dword [sym.imp.USER32.dll_GetMessageW]
test eax, eax
je 0x402077
lea edx, [ebp - 0x254]
push edx
call dword [sym.imp.USER32.dll_TranslateMessage]
lea eax, [ebp - 0x254]
push eax
call dword [sym.imp.USER32.dll_DispatchMessageW]
jmp 0x402044
mov ecx, 0x523460
call fcn.004324f0
call dword [sym.imp.KERNEL32.dll_GetCurrentProcessId]
push eax
call fcn.0042dcb0
add esp, 4
push str.Server
call fcn.00405640
add esp, 4
mov eax, dword [ebp - 0x24c]
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004ad2aa
mov esp, ebp
pop ebp
ret 0x10