Function at 0x405889
Capabilities:
Create thread
Hide graphical window

Disassembly:
enter 0x50, 0
push ebx
push esi
push edi
push 0x40aa94
push 0x405b66
call fcn.00407f14
and dword [ebp - 0x44], 0
mov eax, sym.V.DLL_Ordinal_1
mov dword [ebp - 0x40], eax
and dword [ebp - 0x3c], 0
and dword [ebp - 0x38], 0
mov eax, dword [0x40b214]
mov dword [ebp - 0x34], eax
and dword [ebp - 0x30], 0
and dword [ebp - 0x2c], 0
and dword [ebp - 0x28], 0
and dword [ebp - 0x24], 0
mov eax, dword [0x40b520]
mov eax, dword [eax + 4]
mov dword [ebp - 0x20], eax
lea eax, [ebp - 0x44]
push eax
call sub.user32.dll_RegisterClassA
test ax, ax
jne 0x4058e9
jmp 0x405b4e
push 0
push dword [0x40b214]
push 0
push 0
push 0x80000000
push 0x80000000
push 0x80000000
push 0x80000000
push 0xcf0000
push 0
mov eax, dword [0x40b520]
push dword [eax + 4]
call fcn.00407067
mov dword [0x40b53c], eax
cmp dword [0x40b53c], 0
jne 0x405930
jmp 0x405b4e
push 0
push dword [0x40b53c]
call sub.user32.dll_ShowWindow
push dword [0x40b53c]
call sub.user32.dll_UpdateWindow
mov dword [0x40b568], 0x1e00
mov eax, dword [0x40b520]
push dword [eax + 8]
mov eax, dword [0x40b520]
push dword [eax + 4]
call sub.user32.dll_FindWindowA
test eax, eax
je 0x405a1e
mov eax, dword [0x40b715]
test eax, eax
je 0x40597b
mov eax, dword [eax - 4]
cmp eax, 1
jle 0x405a14
push 0x40b715
lea eax, [ebp - 0x48]
push eax
push dword [0x40b715]
call fcn.00407960
push 0x40aa7d
call fcn.004079c4
pop eax
push dword [eax]
call fcn.00407928
mov eax, dword [0x40b715]
test eax, eax
je 0x4059b6
mov eax, dword [eax - 4]
mov ecx, 4
cdq
idiv ecx
test edx, edx
je 0x4059ea
push 0x40b715
lea eax, [ebp - 0x4c]
push eax
push dword [0x40b715]
call fcn.00407960
push 0x40aa87
call fcn.004079c4
pop eax
push dword [eax]
call fcn.00407928
jmp 0x4059aa
push dword [0x40b53c]
push 0x7b
push 0xdead
mov eax, dword [0x40b520]
push dword [eax + 8]
mov eax, dword [0x40b520]
push dword [eax + 4]
call sub.user32.dll_FindWindowA
push eax
call sub.user32.dll_PostMessageA
jmp 0x405a19
jmp 0x405b4e
jmp 0x405b08
mov eax, dword [0x40b520]
push dword [eax + 8]
push dword [0x40b53c]
call sub.user32.dll_SetWindowTextA
push 0xfffffffffffffffe
push 0x40b560
push 0
push 0
push 0x40437d
push 0
push 0
call sub.kernel32.dll_CreateThread
push eax
call sub.kernel32.dll_SetThreadPriority
push dword [0x40b568]
push 0
call fcn.00406ffb
mov dword [0x40b702], eax
mov eax, dword [0x40b715]
test eax, eax
je 0x405a6e
mov eax, dword [eax - 4]
cmp eax, 1
jle 0x405acd
push 0x40b715
lea eax, [ebp - 0x50]
push eax
push dword [0x40b715]
call fcn.00407960
push 0x40aa91
call fcn.004079c4
pop eax
push dword [eax]
call fcn.00407928
push dword [0x40b702]
mov eax, dword [0x40b715]
push eax
call fcn.00406f06
push 0x404f0a
push 0x15b3
push 0x29a
push dword [0x40b53c]
call sub.user32.dll_SetTimer
mov byte [0x40b0d5], 1
jmp 0x405add
push dword [0x40b702]
push 0x40aa93
call fcn.00406f06
mov byte [0x40b0d4], 1
call fcn.004050a1
push 0xfffffffffffffffe
push 0x40b560
push 0
push 0
push 0x404572
push 0
push 0
call sub.kernel32.dll_CreateThread
push eax
call sub.kernel32.dll_SetThreadPriority
push 0
push 0
push 0
lea eax, [ebp - 0x1c]
push eax
call sub.user32.dll_GetMessageA
test eax, eax
je 0x405b2f
lea eax, [ebp - 0x1c]
push eax
call sub.user32.dll_TranslateMessage
lea eax, [ebp - 0x1c]
push eax
call sub.user32.dll_DispatchMessageA
jmp 0x405b08
cmp byte [0x40b0d4], 0
je 0x405b4e
push dword [0x40b702]
call fcn.0040703e
push dword [0x40fd2d]
call sub.user32.dll_UnhookWindowsHookEx
xor eax, eax
pop dword fs:[eax]
add esp, 8
push 0x405b6d
push 0x40aa94
call fcn.00407f68
ret