Function at 0x5011627d
Capabilities:
Hide graphical window

Disassembly:
push esi
push edi
push 0x38
push 0
push dword [0x50297d50]
mov esi, ecx
call dword [sym.imp.kernel32.dll_HeapAlloc]
mov edi, eax
test edi, edi
jne 0x5011629e
xor al, al
jmp 0x50116445
mov eax, dword [esp + 0xc]
mov dword [edi], eax
mov eax, dword [esp + 0x14]
push ebx
mov dword [edi + 4], eax
mov eax, dword [esp + 0x1c]
push ebp
push dword [esp + 0x18]
mov dword [edi + 8], eax
lea eax, [edi + 0xc]
push eax
call dword [sym.imp.USER32.dll_CopyRect]
mov eax, dword [esp + 0x24]
and dword [edi + 0x34], 0
dec eax
je 0x50116310
dec eax
je 0x501162ff
dec eax
je 0x501162ee
dec eax
je 0x501162dd
xor al, al
jmp 0x50116443
push dword [esi + 0x2c]
call dword [sym.imp.USER32.dll_IsWindowVisible]
mov ebx, dword [esi + 0x2c]
lea ecx, [esi + 0x7c]
jmp 0x5011631f
push dword [esi + 0x28]
call dword [sym.imp.USER32.dll_IsWindowVisible]
mov ebx, dword [esi + 0x28]
lea ecx, [esi + 0x78]
jmp 0x5011631f
push dword [esi + 0x24]
call dword [sym.imp.USER32.dll_IsWindowVisible]
mov ebx, dword [esi + 0x24]
lea ecx, [esi + 0x74]
jmp 0x5011631f
push dword [esi + 0x20]
call dword [sym.imp.USER32.dll_IsWindowVisible]
mov ebx, dword [esi + 0x20]
lea ecx, [esi + 0x70]
mov dword [esp + 0x14], eax
mov eax, dword [ecx]
mov ebp, ecx
xor ecx, ecx
cmp eax, ecx
je 0x50116387
mov dl, byte [esp + 0x28]
test dl, dl
je 0x5011635f
cmp dword [eax + 0x34], ecx
je 0x5011634a
mov ecx, dword [eax + 0x34]
cmp byte [ecx + 0x2c], dl
jae 0x5011634a
mov eax, ecx
cmp dword [eax + 0x34], 0
jne 0x5011633a
cmp eax, dword [ebp]
jne 0x50116375
cmp byte [eax + 0x2c], dl
jbe 0x50116375
mov dword [edi + 0x34], eax
mov dword [ebp], edi
jmp 0x5011637e
mov eax, dword [eax + 0x34]
cmp dword [eax + 0x34], ecx
jne 0x5011635c
mov cl, byte [eax + 0x2c]
inc cl
mov dword [eax + 0x34], edi
mov byte [esp + 0x28], cl
mov byte [edi + 0x2c], cl
jmp 0x501163a2
mov ecx, dword [eax + 0x34]
mov dword [edi + 0x34], ecx
mov dword [eax + 0x34], edi
mov byte [esp + 0x28], dl
mov byte [edi + 0x2c], dl
jmp 0x501163a2
mov al, byte [esp + 0x28]
test al, al
mov byte [esp + 0x28], al
jne 0x50116398
mov byte [esp + 0x28], 1
mov al, byte [esp + 0x28]
mov dword [ebp], edi
mov byte [edi + 0x2c], al
mov ecx, esi
call fcn.5011594f
xor edi, edi
cmp dword [esp + 0x14], edi
jne 0x5011642e
push edi
push dword [0x5029a6e4]
call fcn.501a79d8
push 1
push ebx
call dword [sym.imp.USER32.dll_ShowWindow]
push 1
push edi
push dword [esi + 0x20]
mov edi, dword [sym.imp.USER32.dll_InvalidateRect]
call edi
push dword [esi + 0x20]
mov ebp, dword [sym.imp.USER32.dll_UpdateWindow]
call ebp
push 1
push 0
push dword [esi + 0x24]
call edi
push dword [esi + 0x24]
call ebp
push 1
push 0
push dword [esi + 0x28]
call edi
push dword [esi + 0x28]
call ebp
push 1
push 0
push dword [esi + 0x2c]
call edi
push dword [esi + 0x2c]
call ebp
xor esi, esi
push esi
push esi
call fcn.501a79d8
push dword [0x5029a6e4]
call fcn.50272bbe
push esi
push 0x32
push 0x7d88
push ebx
call dword [sym.imp.USER32.dll_SetTimer]
jmp 0x5011643f
push 1
push edi
push ebx
call dword [sym.imp.USER32.dll_InvalidateRect]
push ebx
call dword [sym.imp.USER32.dll_UpdateWindow]
mov al, byte [esp + 0x28]
pop ebp
pop ebx
pop edi
pop esi
ret 0x18