Function at 0x401000
Capabilities:
Allocate or change rwx memory
Hide graphical window
Terminate process

Disassembly:
push 0
call dword [sym.imp.KERNEL32_GetModuleHandleA]
mov dword [0x452dd4], eax
push 0x7f00
push 0
call dword [sym.imp.USER32_LoadIconA]
mov dword [0x452dd8], eax
push 0x7f00
push 0
call dword [sym.imp.USER32_LoadCursorA]
mov dword [0x452ddc], eax
rdtsc
mov word [0x40304e], ax
push 0
call dword [sym.imp.USER32_GetSystemMetrics]
sub eax, 0xa
and eax, 0xfffffffe
push eax
mov word [0x47a01c], ax
shr eax, 1
mov word [0x40307a], ax
push 1
call dword [sym.imp.USER32_GetSystemMetrics]
sub eax, 0xa
and eax, 0xfffffffe
push eax
mov word [0x47a01e], ax
mov ecx, eax
shr ecx, 1
mov word [0x40307c], cx
movzx eax, word [0x47a01c]
movzx ebx, word [0x47a01e]
imul eax, ebx
shl eax, 2
mov dword [0x40304a], eax
pop eax
pop ebx
mov dword [0x47a058], 0x28
mov dword [0x47a05c], ebx
neg eax
mov dword [0x47a060], eax
mov word [0x47a064], 1
mov word [0x47a066], 0x20
mov dword [0x47a068], 0
mov dword [0x47a06c], 0
mov dword [0x47a070], 0
mov dword [0x47a074], 0
mov dword [0x47a078], 0
mov dword [0x47a07c], 0
mov dword [0x452db4], 0
mov dword [0x452db8], 0
mov dword [0x452dbc], ebx
neg eax
mov dword [0x452dc0], eax
push 0
push 0x80c80000
push 0x452db4
call dword [sym.imp.USER32_AdjustWindowRect]
push 0x452dc4
call dword [sym.imp.USER32_RegisterClassA]
mov ecx, dword [0x452dc0]
mov eax, dword [0x452dbc]
sub ecx, dword [0x452db8]
sub eax, dword [0x452db4]
push 0
push 0
push 0
push 0
push ecx
push eax
push 0
push 0
push 0xca0000
push str.Jezu_Ufam_Tobie__press_space____speed___full_idle
push str.grtest
push 0
call dword [sym.imp.USER32_CreateWindowExA]
mov dword [0x47a050], eax
push dword [0x47a050]
call dword [sym.imp.USER32_GetDC]
mov dword [0x47a054], eax
push 5
push dword [0x47a050]
call dword [sym.imp.USER32_ShowWindow]
movzx eax, word [0x47a01c]
movzx ebx, word [0x47a01e]
mul ebx
shl eax, 2
mov ebx, eax
push 0x40
push 0x3000
push eax
push 0
call dword [sym.imp.KERNEL32_VirtualAlloc]
or eax, eax
jne 0x4011be
int3
add eax, 0x10
and eax, 0xfffffff0
mov dword [0x47a00c], eax
push 0x40
push 0x3000
push ebx
push 0
call dword [sym.imp.KERNEL32_VirtualAlloc]
or eax, eax
jne 0x4011de
int3
add eax, 0x10
and eax, 0xfffffff0
mov dword [0x47a018], eax
call fcn.0040199b
push ebp
push 0x452dec
movzx eax, word [0x47a01e]
shr eax, 2
cvtsi2ss xmm0, eax
movss dword [0x403076], xmm0
mov esi, str.eff_ghaiibjf_gefefeff_glemjckg_hlckkhkhkhkhnakm_jfYckhj_gj_gi_fj_gkhi_fi_fm_jpcmm_jkhpcmrhqmfnngopiqpiqngoqjrvowxqywvmlrkjptsytrvt
mov edi, 0x47a080
mov ecx, 0x1a900
mov eax, dword [esi]
mov dword [edi], eax
add edi, 4
add esi, 3
sub ecx, 1
jne 0x401219
mov edi, 0x403150
mov ecx, 3
call fcn.00401950
pushal
push 0x452dec
movzx ecx, word [0x403210]
add cx, word [0x403214]
push ecx
call fcn.0040170e
popal
call fcn.0040181a
call fcn.00401891
call fcn.0040139b
add dword [0x403050], 1
cmp dword [0x403050], 0x1ff
movzx eax, word [0x47a01c]
movzx ebx, word [0x47a01e]
push 0xcc0020
push 0
push 0x47a058
push dword [0x47a00c]
push ebx
push eax
push 0
push 0
push ebx
push eax
push 0
push 0
push dword [0x47a054]
call dword [sym.imp.GDI32_StretchDIBits]
cmp byte [0x40306a], 1
je 0x4012bb
push 3
call dword [sym.imp.KERNEL32_Sleep]
push 0
push 0
push 0
push 0
push 0x452d98
call dword [sym.imp.USER32_PeekMessageA]
or eax, eax
je 0x40125c
push 0
push 0
push 0
push 0x452d98
call dword [sym.imp.USER32_GetMessageA]
or eax, eax
je 0x401313
push 0x452d98
call dword [sym.imp.USER32_TranslateMessage]
push 0x452d98
call dword [sym.imp.USER32_DispatchMessageA]
jmp 0x40125c
push dword [0x47a054]
push dword [0x47a050]
call dword [sym.imp.USER32_ReleaseDC]
push dword [0x47a050]
call dword [sym.imp.USER32_DestroyWindow]
push dword [0x452da0]
call dword [sym.imp.KERNEL32_ExitProcess]