Function at 0x40b259
Capabilities:
Check for foreground window switch
Hide graphical window

Disassembly:
add byte [edi + edi*8 + 0x30], ah
mov dword fs:[eax], esp
xor esi, esi
call fcn.0040afac
mov eax, 0x41ab68
mov edx, 0x40b44c
call fcn.0040325c
push 0
mov eax, dword [0x41adf4]
call fcn.0040358c
push eax
push 0
call sub.user32.dll_FindWindowA
push eax
call sub.user32.dll_ShowWindow
cmp dword [0x41aba0], 0x26be
je 0x40b384
push 0x190
call sub.kernel32.dll_Sleep
cmp dword [0x41aba0], 0x26be
jne 0x40b169
jmp 0x40b384
call fcn.0040afac
mov eax, dword [0x41adf4]
call fcn.0040358c
push eax
push 0
mov eax, dword [0x4192c4]
mov eax, dword [eax]
call eax
mov ebx, eax
test ebx, ebx
je 0x40b279
mov eax, 0x41ab68
mov edx, 0x40b510
call fcn.0040325c
xor eax, eax
mov dword [ebp - 0xc], eax
xor eax, eax
mov dword [ebp - 8], eax
lea eax, [ebp - 0x14]
push eax
push ebx
call sub.user32.dll_GetClientRect
mov eax, 0x41ab68
mov edx, 0x40b5c0
call fcn.0040325c
mov eax, dword [ebp - 0xc]
cmp eax, 0x14a
je 0x40b1f0
cmp eax, 0x15f
jne 0x40b271
cmp dword [ebp - 8], 0xc1
jne 0x40b271
push 0x40b654
push 0
push 0
push ebx
call sub.user32.dll_FindWindowExA
mov edi, eax
test edi, edi
je 0x40b243
push 0
push 0
push 0x201
push edi
mov eax, dword [0x4192b8]
mov eax, dword [eax]
call eax
push 0
push 0
push 0x202
push edi
mov eax, dword [0x4192b8]
mov eax, dword [eax]
call eax
mov eax, 0x41ab68
mov edx, 0x40b664
call fcn.0040325c
push ebx
call sub.user32.dll_SetForegroundWindow
test eax, eax
je 0x40b279
push 0
push 0
push 0
push 0xd
mov eax, dword [0x4192dc]
add byte [ebx + 0x6ad0ff00], cl
add byte [edx + 2], ch
push 0
push 0xd
mov eax, dword [0x4192dc]
inc ecx
add byte [ebx - 0x142f0100], cl
invalid
push 0
push ebx
call sub.user32.dll_ShowWindow
call sub.user32.dll_GetForegroundWindow
mov ebx, eax
mov eax, 0x41ab68
mov edx, 0x40b69c
call fcn.0040325c
push 0x1e
lea eax, [ebp - 0x33]
push eax
push ebx
mov eax, dword [0x4192a8]
mov eax, dword [eax]
call eax
lea eax, [ebp - 4]
lea edx, [ebp - 0x33]
mov ecx, 0x1f
call fcn.00403374
mov eax, dword [ebp - 4]
call fcn.0040338c
test eax, eax
jle 0x40b379
mov edx, dword [ebp - 4]
mov eax, 0x40b6d4
call fcn.00403624
test eax, eax
jne 0x40b371
mov edx, dword [ebp - 4]
mov eax, dword [0x41adf8]
call fcn.00403624
test eax, eax
jne 0x40b371
mov edx, dword [ebp - 4]
mov eax, dword [0x41adfc]
call fcn.00403624
test eax, eax
jne 0x40b371
mov edx, dword [ebp - 4]
mov eax, dword [0x41ae00]
call fcn.00403624
test eax, eax
jne 0x40b371
mov edx, dword [ebp - 4]
mov eax, 0x40b6e4
call fcn.00403624
test eax, eax
jne 0x40b371
mov edx, dword [ebp - 4]
mov eax, 0x40b6f4
call fcn.00403624
test eax, eax
jne 0x40b371
mov edx, dword [ebp - 4]
mov eax, 0x40b704
call fcn.00403624
test eax, eax
jne 0x40b371
mov edx, dword [ebp - 4]
mov eax, 0x40b714
call fcn.00403624
test eax, eax
jne 0x40b371
mov edx, dword [ebp - 4]
mov eax, 0x40b724
call fcn.00403624
test eax, eax
jne 0x40b371
mov edx, dword [ebp - 4]
mov eax, dword [0x41ae04]
call fcn.00403624
test eax, eax
je 0x40b379
push 0
push ebx
call sub.user32.dll_ShowWindow
push 0x320
call sub.kernel32.dll_Sleep
inc esi
cmp dword [0x41aba0], 0x1d9e2
je 0x40b399
cmp esi, 0x4b
jl 0x40b184
push 0x927c0
call sub.kernel32.dll_Sleep
lea eax, [ebp - 0x38]
mov ecx, 0x40b730
mov edx, dword [0x41ae08]
call fcn.004033d8
mov eax, dword [ebp - 0x38]
call fcn.00405130
mov ecx, 0x40b730
lea eax, [ebp - 0x3c]
mov edx, dword [0x41ae0c]
call fcn.004033d8
mov eax, dword [ebp - 0x3c]
call fcn.00405130
mov eax, 0x41ab68
mov edx, 0x40b740
call fcn.0040325c
mov ecx, 0x40b730
lea eax, [ebp - 0x40]
mov edx, dword [0x41ae10]
call fcn.004033d8
mov eax, dword [ebp - 0x40]
call fcn.00405130
mov eax, 0x41ab68
mov edx, 0x40b7e4
call fcn.0040325c
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x40b43c
lea eax, [ebp - 0x40]
mov edx, 3
call fcn.0040322c
lea eax, [ebp - 4]
call fcn.00403208
ret