Function at 0x40163e
Capabilities:
Hide graphical window

Disassembly:
push ebp
mov ecx, 0x22
push edi
push esi
mov esi, 0x40413a
push ebx
sub esp, 0x11c
lea edi, [esp + 0x5a]
mov ebx, dword [esp + 0x130]
mov dword [esp + 0x7c], 0x30
rep movsb byte es:[edi], byte [esi]
lea edi, [esp + 0x88]
mov dword [esp + 0x80], 3
mov ebp, dword [esp + 0x138]
mov dword [esp + 0x84], 0x401450
mov eax, ecx
mov ecx, 9
rep stosd dword es:[edi], eax
mov dword [esp + 0x90], ebx
mov dword [esp + 4], 0x7f00
mov dword [esp], 0
call dword [0x40c2ac]
mov edi, dword [0x40c2b0]
push edx
push edx
lea esi, [esp + 0x5a]
mov dword [esp], ebx
mov dword [esp + 0x98], eax
mov dword [esp + 0x9c], 6
mov dword [esp + 0xa0], 0
mov dword [esp + 0xa4], esi
mov dword [esp + 4], 0x65
call edi
push ecx
push ecx
mov dword [esp + 0xa8], eax
mov dword [esp + 4], 0x65
mov dword [esp], ebx
call edi
push edi
push edi
mov dword [esp + 0x94], eax
lea eax, [esp + 0x7c]
mov dword [esp], eax
call dword [sym.imp.user32.dll_RegisterClassExW]
push edx
test ax, ax
jne 0x40173c
mov dword [esp + 0xc], 0x30
mov dword [esp + 8], 0x404022
mov dword [esp + 4], 0x40402e
jmp 0x4017bc
mov dword [esp + 0x2c], 0
mov dword [esp + 0x28], ebx
mov dword [esp + 0x24], 0
mov dword [esp + 0x20], 0
mov dword [esp + 0x1c], 0xd4
mov dword [esp + 0x18], 0x219
mov dword [esp + 0x14], 0x32
mov dword [esp + 0x10], 0x46
mov dword [esp + 0xc], 0xca0000
mov dword [esp + 8], 0x404066
mov dword [esp + 4], esi
mov dword [esp], 0x208
call dword [0x40c288]
sub esp, 0x30
mov dword [esp + 0x48], eax
test eax, eax
jne 0x4017d1
mov dword [esp + 0xc], 0x30
mov dword [esp + 8], 0x404022
mov dword [esp + 4], 0x4040a8
mov dword [esp], 0
call dword [sym.imp.user32.dll_MessageBoxW]
sub esp, 0x10
jmp 0x401b97
mov dword [esp + 4], 0x3a7e
mov dword [esp], 0x4034a0
call fcn.00401618
mov dword [esp + 4], 0x4a1b
mov dword [esp], 0x403460
call fcn.00401618
mov dword [esp + 4], 0xa26b
mov dword [esp], 0x403440
call fcn.00401618
mov dword [esp + 4], 0x5b2c
mov dword [esp], 0x403428
call fcn.00401618
mov dword [esp + 0x10], 0x408320
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
mov dword [esp + 4], 0x801a
mov dword [esp], 0
call dword [0x40c27c]
sub esp, 0x14
mov dword [esp + 4], 0x403460
mov dword [esp], 0x408320
call fcn.00402d28
mov eax, dword [sym.imp.user32.dll_wsprintfW]
mov dword [esp + 0x54], 0
mov word [esp + 0x58], 0
mov dword [esp + 0xc], 0x403440
mov dword [esp + 8], 0x408320
mov dword [esp + 4], 0x4040d8
mov dword [esp], 0x405040
mov dword [esp + 0x4c], eax
call eax
mov dword [esp], 0x405040
mov esi, dword [0x40c22c]
mov dword [esp + 4], 0x4040e2
call esi
mov ebx, eax
test eax, eax
je 0x4018e3
mov dword [esp + 0xc], eax
lea eax, [esp + 0x54]
mov dword [esp + 8], 3
mov dword [esp + 4], 2
mov dword [esp], eax
call fcn.00402ce0
mov dword [esp], ebx
call fcn.00402cc8
mov dword [esp + 0xc], 0x403428
mov eax, dword [esp + 0x4c]
mov dword [esp + 8], 0x408320
mov dword [esp + 4], 0x4040d8
mov dword [esp], 0x405040
call eax
mov dword [esp + 4], 0x4040e6
mov dword [esp], 0x405040
call esi
mov ebx, eax
test eax, eax
jne 0x40193c
mov dword [esp + 0xc], 0x30
mov dword [esp + 8], 0x4040ec
mov dword [esp + 4], 0x4040fa
jmp 0x4017bc
mov dword [esp + 0xc], eax
mov dword [esp + 8], 0x10a
mov dword [esp + 4], 4
mov dword [esp], section.________
call fcn.00402cf0
mov dword [esp], ebx
mov esi, eax
call fcn.00402cd0
mov dword [esp], ebx
call fcn.00402cc8
cmp esi, 0x10a
jne 0x40191f
test ebp, ebp
lea ebx, [esp + 0xac]
je 0x401a2a
mov esi, 0x40415c
mov ecx, 3
mov edi, ebx
rep movsd dword es:[edi], dword [esi]
cmp word [ebp], 0
je 0x401a2a
cmp word [ebp], 0x20
jne 0x4019aa
add ebp, 2
jmp 0x40199e
mov dword [esp], ebx
call fcn.00402d30
mov dword [esp + 4], ebx
mov dword [esp + 8], eax
mov dword [esp], ebp
call fcn.00402d38
test eax, eax
jne 0x401a19
mov dword [esp], ebx
call fcn.00402d30
cmp word [ebp + eax*2], 0
jne 0x401a09
mov eax, dword [0x4034d4]
mov dword [esp + 4], 0x40411a
mov dword [esp], ebx
mov dword [esp + 8], eax
mov eax, dword [esp + 0x4c]
call eax
mov dword [esp + 0xc], 0x30
mov dword [esp + 8], 0x404126
mov dword [esp + 4], ebx
jmp 0x4017bc
mov dword [esp], ebx
call fcn.00402d30
cmp word [ebp + eax*2], 0x20
je 0x4019d6
test word [ebp], 0xffdf
je 0x401993
add ebp, 2
jmp 0x401a19
mov eax, dword [esp + 0x48]
mov dword [esp], eax
call dword [0x40c2a4]
push edi
mov esi, eax
mov dword [esp], 0x585858
call dword [0x40c1ac]
push ebp
mov dword [0x405024], eax
mov dword [esp], esi
mov dword [esp + 4], 0x5a
call dword [0x40c1b4]
push edx
push edx
mov dword [esp + 8], 0x48
mov dword [esp + 4], eax
mov dword [esp], 0x1a
call dword [0x40c1e0]
sub esp, 0xc
neg eax
mov dword [esp + 0x34], 0x40412e
mov dword [esp + 0x30], 0
mov dword [esp + 0x2c], 0
mov dword [esp + 0x28], 0
mov dword [esp + 0x24], 0
mov dword [esp + 0x20], 1
mov dword [esp + 0x1c], 0
mov dword [esp + 0x18], 0
mov dword [esp + 0x14], 0
mov dword [esp + 0x10], 0x190
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
mov dword [esp + 4], 0
mov dword [esp], eax
call dword [0x40c1a8]
sub esp, 0x38
mov dword [0x405020], eax
mov eax, dword [esp + 0x48]
mov dword [esp + 4], esi
mov dword [esp], eax
call dword [sym.imp.user32.dll_ReleaseDC]
push ecx
push ecx
mov eax, dword [esp + 0x13c]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x48]
mov dword [esp], eax
call dword [sym.imp.user32.dll_ShowWindow]
push esi
push esi
mov eax, dword [esp + 0x48]
mov dword [esp], eax
call dword [sym.imp.user32.dll_UpdateWindow]
mov ecx, 7
xor eax, eax
push edi
mov edi, ebx
rep stosd dword es:[edi], eax
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
mov dword [esp + 4], 0
mov dword [esp], ebx
call dword [0x40c2a8]
sub esp, 0x10
test eax, eax
jle 0x401b7b
mov dword [esp], ebx
call dword [sym.imp.user32.dll_TranslateMessage]
push ecx
mov dword [esp], ebx
call dword [0x40c290]
push esi
jmp 0x401b3d
mov eax, dword [0x405024]
mov ebx, dword [0x40c1b0]
mov dword [esp], eax
call ebx
push eax
mov eax, dword [0x405020]
mov dword [esp], eax
call ebx
push edx
add esp, 0x11c
xor eax, eax
pop ebx
pop esi
pop edi
pop ebp
ret 0x10