Function at 0x401560
Capabilities:
Hide graphical window

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x4312f0
mov eax, dword fs:[0]
push eax
sub esp, 0xa8
mov eax, dword [0x447050]
xor eax, ebp
mov dword [ebp - 0x10], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov edx, dword [ebp + 0x10]
mov ecx, edx
mov edi, dword [ebp + 8]
lea esi, [ecx + 2]
nop dword [eax]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x4015a0
sub ecx, esi
sar ecx, 1
push ecx
push edx
mov ecx, 0x447b78
call fcn.004022a0
mov esi, dword [sym.imp.USER32.dll_LoadIconW]
push 0x65
push edi
mov dword [ebp - 0x5c], 0x30
mov dword [ebp - 0x58], 3
mov dword [ebp - 0x54], 0x401d80
mov dword [ebp - 0x50], 0
mov dword [ebp - 0x4c], 0
mov dword [ebp - 0x48], edi
call esi
push 0x7f00
push 0
mov dword [ebp - 0x44], eax
call dword [sym.imp.USER32.dll_LoadCursorW]
push 0x65
push dword [ebp - 0x48]
mov dword [ebp - 0x40], eax
mov dword [ebp - 0x3c], 6
mov dword [ebp - 0x38], 0
mov dword [ebp - 0x34], str.xsDfggUiokjhm5
call esi
mov dword [ebp - 0x30], eax
lea eax, [ebp - 0x5c]
push eax
call dword [sym.imp.USER32.dll_RegisterClassExW]
mov esi, dword [sym.imp.USER32.dll_GetSystemMetrics]
push 0
call esi
push 1
mov dword [0x449e60], eax
call esi
push 0x4e
mov dword [0x449e64], eax
call esi
push 0x4f
mov dword [0x449e68], eax
call esi
mov dword [0x449e6c], eax
push 1
mov dword [ebp - 4], 0
call fcn.00412750
add esp, 4
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x74]
mov dword [ebp - 0x78], eax
mov dword [ebp - 0x74], 0
mov dword [ebp - 0x64], 0
push 0x2a
push str._g__NW_5D__NZ9_z_d_ybbXY_ga__jNgcTZ2y
mov dword [ebp - 0x60], 0xf
call fcn.004023c0
lea eax, [ebp - 0x7c]
push eax
lea edx, [ebp - 0x74]
lea ecx, [ebp - 0x44]
call fcn.00402c00
add esp, 4
lea eax, [ebp - 0x44]
push eax
call fcn.00401f20
mov edx, dword [ebp - 0x30]
cmp edx, 0x10
jb 0x4016e0
mov ecx, dword [ebp - 0x44]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x4016d6
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x401d51
push edx
push ecx
call fcn.0041a612
add esp, 8
mov edx, dword [ebp - 0x60]
mov dword [ebp - 0x34], 0
mov dword [ebp - 0x30], 0xf
mov byte [ebp - 0x44], 0
cmp edx, 0x10
jb 0x401726
mov ecx, dword [ebp - 0x74]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x40171c
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x401d51
push edx
push ecx
call fcn.0041a612
add esp, 8
mov ecx, dword [ebp - 0x78]
mov dword [ebp - 0x64], 0
mov dword [ebp - 0x60], 0xf
mov byte [ebp - 0x74], 0
test ecx, ecx
je 0x401752
mov eax, dword [ecx]
call dword [eax + 8]
test eax, eax
je 0x401752
mov ecx, dword [eax]
push 1
mov edx, dword [ecx]
mov ecx, eax
call edx
push 1
mov dword [ebp - 4], 1
call fcn.00412750
add esp, 4
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x74]
mov dword [ebp - 0x78], eax
mov dword [ebp - 0x74], 0
mov dword [ebp - 0x64], 0
push 0x1e
push str.5tw5JVey_xxOWN_OrqVQ
mov dword [ebp - 0x60], 0xf
call fcn.004023c0
lea eax, [ebp - 0x7c]
push eax
lea edx, [ebp - 0x74]
lea ecx, [ebp - 0x44]
call fcn.00402760
add esp, 4
push eax
call fcn.00401f20
mov edx, dword [ebp - 0x30]
cmp edx, 0x10
jb 0x4017dd
mov ecx, dword [ebp - 0x44]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x4017d3
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x401d56
push edx
push ecx
call fcn.0041a612
add esp, 8
mov edx, dword [ebp - 0x60]
mov dword [ebp - 0x34], 0
mov dword [ebp - 0x30], 0xf
mov byte [ebp - 0x44], 0
cmp edx, 0x10
jb 0x401823
mov ecx, dword [ebp - 0x74]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x401819
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x401d56
push edx
push ecx
call fcn.0041a612
add esp, 8
mov ecx, dword [ebp - 0x78]
mov dword [ebp - 0x64], 0
mov dword [ebp - 0x60], 0xf
mov byte [ebp - 0x74], 0
test ecx, ecx
je 0x40184f
mov eax, dword [ecx]
call dword [eax + 8]
test eax, eax
je 0x40184f
mov ecx, dword [eax]
push 1
mov edx, dword [ecx]
mov ecx, eax
call edx
push 1
mov dword [ebp - 4], 2
call fcn.00412750
add esp, 4
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x74]
mov dword [ebp - 0x78], eax
mov dword [ebp - 0x74], 0
mov dword [ebp - 0x64], 0
push 0xd
push str._Ek46i
mov dword [ebp - 0x60], 0xf
call fcn.004023c0
lea eax, [ebp - 0x7c]
push eax
lea edx, [ebp - 0x74]
lea ecx, [ebp - 0x44]
call fcn.00402c00
add esp, 4
lea eax, [ebp - 0x44]
push eax
call fcn.00401f20
mov edx, dword [ebp - 0x30]
cmp edx, 0x10
jb 0x4018dd
mov ecx, dword [ebp - 0x44]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x4018d3
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x401d5b
push edx
push ecx
call fcn.0041a612
add esp, 8
mov edx, dword [ebp - 0x60]
mov dword [ebp - 0x34], 0
mov dword [ebp - 0x30], 0xf
mov byte [ebp - 0x44], 0
cmp edx, 0x10
jb 0x401923
mov ecx, dword [ebp - 0x74]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x401919
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x401d5b
push edx
push ecx
call fcn.0041a612
add esp, 8
mov ecx, dword [ebp - 0x78]
mov dword [ebp - 0x64], 0
mov dword [ebp - 0x60], 0xf
mov byte [ebp - 0x74], 0
test ecx, ecx
je 0x40194f
mov eax, dword [ecx]
call dword [eax + 8]
test eax, eax
je 0x40194f
mov ecx, dword [eax]
push 1
mov edx, dword [ecx]
mov ecx, eax
call edx
push 1
mov dword [ebp - 4], 3
call fcn.00412750
add esp, 4
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x74]
mov dword [ebp - 0x78], eax
mov dword [ebp - 0x74], 0
mov dword [ebp - 0x64], 0
push 0x21
push str.wiC_n_h_5J_W7l_n_bb0___Mi9g09_
mov dword [ebp - 0x60], 0xf
call fcn.004023c0
lea eax, [ebp - 0x7c]
push eax
lea edx, [ebp - 0x74]
lea ecx, [ebp - 0x44]
call fcn.00402760
add esp, 4
push eax
call fcn.00401f20
mov edx, dword [ebp - 0x30]
cmp edx, 0x10
jb 0x4019da
mov ecx, dword [ebp - 0x44]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x4019d0
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x401d60
push edx
push ecx
call fcn.0041a612
add esp, 8
mov edx, dword [ebp - 0x60]
mov dword [ebp - 0x34], 0
mov dword [ebp - 0x30], 0xf
mov byte [ebp - 0x44], 0
cmp edx, 0x10
jb 0x401a20
mov ecx, dword [ebp - 0x74]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x401a16
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x401d60
push edx
push ecx
call fcn.0041a612
add esp, 8
mov ecx, dword [ebp - 0x78]
mov dword [ebp - 0x64], 0
mov dword [ebp - 0x60], 0xf
mov byte [ebp - 0x74], 0
test ecx, ecx
je 0x401a4c
mov eax, dword [ecx]
call dword [eax + 8]
test eax, eax
je 0x401a4c
mov ecx, dword [eax]
push 1
mov edx, dword [ecx]
mov ecx, eax
call edx
push 1
mov dword [ebp - 4], 4
call fcn.00412750
add esp, 4
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x74]
mov dword [ebp - 0x78], eax
mov dword [ebp - 0x74], 0
mov dword [ebp - 0x64], 0
push 0x1a
push str.M7f8_H7kYNtE_9_Z_ooA_j4tc
mov dword [ebp - 0x60], 0xf
call fcn.004023c0
lea eax, [ebp - 0x7c]
push eax
lea edx, [ebp - 0x74]
lea ecx, [ebp - 0x44]
call fcn.00402c00
add esp, 4
lea eax, [ebp - 0x44]
push eax
call fcn.00401f20
mov edx, dword [ebp - 0x30]
cmp edx, 0x10
jb 0x401ada
mov ecx, dword [ebp - 0x44]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x401ad0
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x401d65
push edx
push ecx
call fcn.0041a612
add esp, 8
mov edx, dword [ebp - 0x60]
mov dword [ebp - 0x34], 0
mov dword [ebp - 0x30], 0xf
mov byte [ebp - 0x44], 0
cmp edx, 0x10
jb 0x401b20
mov ecx, dword [ebp - 0x74]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x401b16
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x401d65
push edx
push ecx
call fcn.0041a612
add esp, 8
mov ecx, dword [ebp - 0x78]
mov dword [ebp - 0x64], 0
mov dword [ebp - 0x60], 0xf
mov byte [ebp - 0x74], 0
test ecx, ecx
je 0x401b4c
mov eax, dword [ecx]
call dword [eax + 8]
test eax, eax
je 0x401b4c
mov ecx, dword [eax]
push 1
mov edx, dword [ecx]
mov ecx, eax
call edx
push 1
mov dword [ebp - 4], 5
call fcn.00412750
add esp, 4
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x94]
mov dword [ebp - 0x98], eax
mov dword [ebp - 0x94], 0
mov dword [ebp - 0x84], 0
push 0x30
push str.muCi_M.Y_xkRC__l_1L___nvKfIphvFiW0y2U_G6q__6Wg3
mov dword [ebp - 0x80], 0xf
call fcn.004023c0
lea eax, [ebp - 0x9c]
push eax
lea edx, [ebp - 0x94]
lea ecx, [ebp - 0xb4]
call fcn.00402760
add esp, 4
push eax
call fcn.00401f20
mov edx, dword [ebp - 0xa0]
cmp edx, 0x10
jb 0x401bf2
mov ecx, dword [ebp - 0xb4]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x401be8
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x401d6a
push edx
push ecx
call fcn.0041a612
add esp, 8
mov edx, dword [ebp - 0x80]
mov dword [ebp - 0xa4], 0
mov dword [ebp - 0xa0], 0xf
mov byte [ebp - 0xb4], 0
cmp edx, 0x10
jb 0x401c44
mov ecx, dword [ebp - 0x94]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x401c3a
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x401d6a
push edx
push ecx
call fcn.0041a612
add esp, 8
mov ecx, dword [ebp - 0x98]
mov dword [ebp - 0x84], 0
mov dword [ebp - 0x80], 0xf
mov byte [ebp - 0x94], 0
test ecx, ecx
je 0x401c77
mov eax, dword [ecx]
call dword [eax + 8]
test eax, eax
je 0x401c77
mov edx, dword [eax]
mov ecx, eax
push 1
call dword [edx]
mov eax, dword [0x449e64]
push 0
push edi
push 0
push 0
push 1
push 1
add eax, 0xfffffffe
push eax
mov eax, dword [0x449e60]
add eax, 0xfffffffe
push eax
push 0x90000000
push 0x441370
push str.xsDfggUiokjhm5
push 0x80
call dword [sym.imp.USER32.dll_CreateWindowExW]
mov esi, eax
test esi, esi
je 0x401d31
push 0xffffffffffffffec
push esi
call dword [sym.imp.USER32.dll_GetWindowLongW]
or eax, 0x80000
push eax
push 0xffffffffffffffec
push esi
call dword [sym.imp.USER32.dll_SetWindowLongW]
push 2
push 0
push 0x800000
push esi
call dword [sym.imp.USER32.dll_SetLayeredWindowAttributes]
push dword [ebp + 0x14]
push esi
call dword [sym.imp.USER32.dll_ShowWindow]
push esi
call dword [sym.imp.USER32.dll_UpdateWindow]
mov esi, dword [sym.imp.USER32.dll_GetMessageW]
lea eax, [ebp - 0x2c]
push 0
push 0
push 0
push eax
call esi
test eax, eax
je 0x401d2c
mov edi, dword [sym.imp.USER32.dll_TranslateMessage]
mov ebx, dword [sym.imp.USER32.dll_DispatchMessageW]
nop
lea eax, [ebp - 0x2c]
push eax
call edi
lea eax, [ebp - 0x2c]
push eax
call ebx
push 0
push 0
push 0
lea eax, [ebp - 0x2c]
push eax
call esi
test eax, eax
jne 0x401d10
mov eax, dword [ebp - 0x24]
jmp 0x401d33
xor eax, eax
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.0041a37e
mov esp, ebp
pop ebp
ret 0x10
call fcn.0041e53a
call fcn.0041e53a
call fcn.0041e53a
call fcn.0041e53a
call fcn.0041e53a
call fcn.0041e53a
int3