Function at 0x62a648
Capabilities:
Hide graphical window

Disassembly:
push ebx
push esi
push edi
push ebp
add esp, 0xffffffac
mov byte [esp], dl
mov ebx, eax
mov esi, dword [ebx + 0x90]
mov edi, dword [ebx + 0xa0]
test esi, esi
je 0x62aca8
test edi, edi
je 0x62aca8
mov eax, edi
call fcn.0056ec94
test al, al
je 0x62aca8
mov eax, esi
call fcn.0056ec94
test al, al
je 0x62aca8
mov eax, ebx
call fcn.0062a618
test al, al
je 0x62a70a
mov eax, esi
call fcn.0056e8c0
push eax
call sub.user32.dll_IsWindowVisible
test eax, eax
je 0x62a6b9
push 0
mov eax, esi
call fcn.0056e8c0
push eax
call sub.user32.dll_ShowWindow
mov eax, edi
call fcn.0056e8c0
push eax
call sub.user32.dll_IsWindowVisible
test eax, eax
je 0x62a6d9
push 0
mov eax, edi
call fcn.0056e8c0
push eax
call sub.user32.dll_ShowWindow
mov eax, dword [ebx + 0x98]
call fcn.0056e8c0
push eax
call sub.user32.dll_IsWindowVisible
test eax, eax
je 0x62aca8
push 0
mov eax, dword [ebx + 0x98]
call fcn.0056e8c0
push eax
call sub.user32.dll_ShowWindow
jmp 0x62aca8
mov byte [esp + 0x18], 0
lea edx, [esp + 0x24]
mov eax, ebx
call fcn.0062b05c
mov dword [esp + 4], 0x7fffffff
mov dword [esp + 8], 0x7fffffff
mov dword [esp + 0xc], 0x80000001
mov dword [esp + 0x10], 0x80000001
mov eax, ebx
call fcn.0062b5e8
call fcn.00617a9c
dec eax
test eax, eax
jl 0x62a848
inc eax
mov dword [esp + 0x1c], eax
xor ebp, ebp
mov eax, ebx
call fcn.0062b5e8
mov edx, ebp
call fcn.00617ae8
cmp byte [eax + 0x69], 0
je 0x62a83d
mov eax, ebx
call fcn.0062b5e8
mov edx, ebp
call fcn.00617ae8
call fcn.0056e8c0
cmp eax, dword [ebx + 0x40]
je 0x62a83d
mov eax, ebx
call fcn.0062b5e8
mov dword [esp + 0x20], eax
lea eax, [esp + 0x34]
push eax
mov edx, ebp
mov eax, dword [esp + 0x24]
call fcn.00617ae8
call fcn.0056e8c0
push eax
call sub.user32.dll_GetWindowRect
lea eax, [esp + 0x44]
push eax
mov eax, dword [ebx + 8]
mov eax, dword [eax + 0x3d0]
push eax
call sub.user32.dll_GetWindowRect
mov ecx, dword [esp + 0x48]
neg ecx
mov edx, dword [esp + 0x44]
neg edx
lea eax, [esp + 0x34]
call fcn.00413bf8
mov eax, dword [esp + 0x34]
cmp eax, dword [esp + 4]
jge 0x62a7e7
mov dword [esp + 4], eax
mov eax, dword [esp + 0x38]
cmp eax, dword [esp + 8]
jge 0x62a7f5
mov dword [esp + 8], eax
lea eax, [esp + 0x34]
call fcn.004134d0
add eax, dword [esp + 0x34]
cmp eax, dword [esp + 0xc]
jle 0x62a819
lea eax, [esp + 0x34]
call fcn.004134d0
add eax, dword [esp + 0x34]
mov dword [esp + 0xc], eax
lea eax, [esp + 0x34]
call fcn.004134e0
add eax, dword [esp + 0x38]
cmp eax, dword [esp + 0x10]
jle 0x62a83d
lea eax, [esp + 0x34]
call fcn.004134e0
add eax, dword [esp + 0x38]
mov dword [esp + 0x10], eax
inc ebp
dec dword [esp + 0x1c]
jne 0x62a756
cmp dword [esp + 4], 0
jl 0x62a862
lea eax, [esp + 0x24]
call fcn.004134d0
cmp eax, dword [esp + 0xc]
jl 0x62a862
xor eax, eax
jmp 0x62a864
mov al, 1
mov byte [esp + 0x19], al
cmp dword [esp + 8], 0
jl 0x62a882
lea eax, [esp + 0x24]
call fcn.004134e0
cmp eax, dword [esp + 0x10]
jl 0x62a882
xor eax, eax
jmp 0x62a884
mov al, 1
mov byte [esp + 0x1a], al
cmp byte [esp + 0x1a], 0
je 0x62a8b9
cmp byte [esp + 0x19], 0
jne 0x62a8b9
cmp dword [esp + 4], 0
jl 0x62a8b3
lea eax, [esp + 0x24]
call fcn.004134d0
sub eax, dword [edi + 0x58]
cmp eax, dword [esp + 0xc]
jl 0x62a8b3
xor eax, eax
jmp 0x62a8b5
mov al, 1
mov byte [esp + 0x19], al
cmp byte [esp + 0x19], 0
je 0x62a8ea
cmp byte [esp + 0x1a], 0
jne 0x62a8ea
cmp dword [esp + 8], 0
jl 0x62a8e4
lea eax, [esp + 0x24]
call fcn.004134e0
sub eax, dword [esi + 0x5c]
cmp eax, dword [esp + 0x10]
jl 0x62a8e4
xor eax, eax
jmp 0x62a8e6
mov al, 1
mov byte [esp + 0x1a], al
cmp byte [esp + 0x19], 0
je 0x62a944
mov eax, esi
call fcn.0056e8c0
push eax
call sub.user32.dll_IsWindowVisible
test eax, eax
jne 0x62a944
push 0x40
mov eax, dword [esi + 0x5c]
push eax
lea eax, [esp + 0x2c]
call fcn.004134d0
push eax
mov eax, dword [esp + 0x3c]
sub eax, dword [esi + 0x5c]
push eax
mov eax, dword [esp + 0x34]
push eax
push 0
mov eax, esi
call fcn.0056e8c0
push eax
call sub.user32.dll_SetWindowPos
push 5
mov eax, esi
call fcn.0056e8c0
push eax
call sub.user32.dll_ShowWindow
mov byte [esp + 0x18], 1
jmp 0x62a970
cmp byte [esp + 0x19], 0
jne 0x62a970
mov eax, esi
call fcn.0056e8c0
push eax
call sub.user32.dll_IsWindowVisible
test eax, eax
je 0x62a970
push 0
mov eax, esi
call fcn.0056e8c0
push eax
call sub.user32.dll_ShowWindow
mov byte [esp + 0x18], 1
cmp byte [esp + 0x1a], 0
je 0x62aa04
mov eax, edi
call fcn.0056e8c0
push eax
call sub.user32.dll_IsWindowVisible
test eax, eax
jne 0x62aa04
cmp byte [esp + 0x19], 0
je 0x62a9c3
push 0x40
lea eax, [esp + 0x28]
call fcn.004134e0
sub eax, dword [esi + 0x5c]
push eax
mov ebp, dword [edi + 0x58]
push ebp
mov eax, dword [esp + 0x34]
push eax
mov eax, dword [esp + 0x3c]
sub eax, ebp
push eax
push 0
mov eax, edi
call fcn.0056e8c0
push eax
call sub.user32.dll_SetWindowPos
jmp 0x62a9ee
push 0x40
lea eax, [esp + 0x28]
call fcn.004134e0
push eax
mov ebp, dword [edi + 0x58]
push ebp
mov eax, dword [esp + 0x34]
push eax
mov eax, dword [esp + 0x3c]
sub eax, ebp
push eax
push 0
mov eax, edi
call fcn.0056e8c0
push eax
call sub.user32.dll_SetWindowPos
push 5
mov eax, edi
call fcn.0056e8c0
push eax
call sub.user32.dll_ShowWindow
mov byte [esp + 0x18], 1
jmp 0x62aa30
cmp byte [esp + 0x1a], 0
jne 0x62aa30
mov eax, edi
call fcn.0056e8c0
push eax
call sub.user32.dll_IsWindowVisible
test eax, eax
je 0x62aa30
push 0
mov eax, edi
call fcn.0056e8c0
push eax
call sub.user32.dll_ShowWindow
mov byte [esp + 0x18], 1
lea eax, [esp + 0x24]
call fcn.004134d0
mov ebp, eax
lea eax, [esp + 0x24]
call fcn.004134e0
mov dword [esp + 0x14], eax
mov eax, ebx
call fcn.0062ae3c
mov eax, esi
call fcn.0056e8c0
push eax
call sub.user32.dll_IsWindowVisible
test eax, eax
je 0x62aafc
cmp dword [esp + 4], 0
jle 0x62aa71
xor eax, eax
mov dword [esp + 4], eax
lea eax, [esp + 0x24]
call fcn.004134d0
cmp eax, dword [esp + 0xc]
jle 0x62aa8d
lea eax, [esp + 0x24]
call fcn.004134d0
mov dword [esp + 0xc], eax
cmp byte [esp], 0
je 0x62aaee
mov byte [ebx + 0x9c], 1
mov eax, edi
call fcn.0056e8c0
push eax
call sub.user32.dll_IsWindowVisible
test eax, eax
je 0x62aab9
mov edx, ebp
sub edx, dword [edi + 0x58]
mov eax, esi
call fcn.00582bf0
jmp 0x62aac2
mov edx, ebp
mov eax, esi
call fcn.00582bf0
mov eax, dword [esp + 0xc]
sub eax, dword [esp + 4]
dec eax
push eax
mov edx, dword [esp + 8]
neg edx
xor ecx, ecx
mov eax, esi
call fcn.00582a1c
mov eax, dword [esi + 0x2ac]
mov dword [ebx + 0xbc], eax
mov byte [ebx + 0x9c], 0
movzx eax, word [esi + 0x2b8]
mov word [esi + 0x2c2], ax
mov eax, edi
call fcn.0056e8c0
push eax
call sub.user32.dll_IsWindowVisible
test eax, eax
je 0x62abad
cmp dword [esp + 8], 0
jle 0x62ab1e
xor eax, eax
mov dword [esp + 8], eax
lea eax, [esp + 0x24]
call fcn.004134e0
cmp eax, dword [esp + 0x10]
jle 0x62ab3a
lea eax, [esp + 0x24]
call fcn.004134e0
mov dword [esp + 0x10], eax
cmp byte [esp], 0
je 0x62ab9f
mov byte [ebx + 0x9d], 1
mov eax, esi
call fcn.0056e8c0
push eax
call sub.user32.dll_IsWindowVisible
test eax, eax
je 0x62ab68
mov edx, dword [esp + 0x14]
sub edx, dword [esi + 0x5c]
mov eax, edi
call fcn.00582bf0
jmp 0x62ab73
mov edx, dword [esp + 0x14]
mov eax, edi
call fcn.00582bf0
mov eax, dword [esp + 0x10]
sub eax, dword [esp + 8]
dec eax
push eax
mov edx, dword [esp + 0xc]
neg edx
xor ecx, ecx
mov eax, edi
call fcn.00582a1c
mov eax, dword [edi + 0x2ac]
mov dword [ebx + 0xc0], eax
mov byte [ebx + 0x9d], 0
movzx eax, word [edi + 0x2b8]
mov word [edi + 0x2c2], ax
mov eax, esi
call fcn.0056e8c0
push eax
call sub.user32.dll_IsWindowVisible
test eax, eax
jne 0x62abd4
mov eax, edi
call fcn.0056e8c0
push eax
call sub.user32.dll_IsWindowVisible
test eax, eax
jne 0x62abd4
mov byte [esp + 0x18], 0
mov eax, esi
call fcn.0056e8c0
push eax
call sub.user32.dll_IsWindowVisible
test eax, eax
je 0x62ac4c
mov eax, edi
call fcn.0056e8c0
push eax
call sub.user32.dll_IsWindowVisible
test eax, eax
je 0x62ac4c
mov eax, dword [ebx + 0x98]
call fcn.0056e8c0
push eax
call sub.user32.dll_IsWindowVisible
test eax, eax
jne 0x62ac4c
push 0x40
mov eax, dword [esi + 0x5c]
push eax
mov ebp, dword [edi + 0x58]
push ebp
mov eax, dword [esp + 0x3c]
sub eax, dword [esi + 0x5c]
push eax
mov eax, dword [esp + 0x3c]
sub eax, ebp
push eax
push 0
mov eax, dword [ebx + 0x98]
call fcn.0056e8c0
push eax
call sub.user32.dll_SetWindowPos
push 5
mov eax, dword [ebx + 0x98]
call fcn.0056e8c0
push eax
call sub.user32.dll_ShowWindow
jmp 0x62ac96
mov eax, esi
call fcn.0056e8c0
push eax
call sub.user32.dll_IsWindowVisible
test eax, eax
je 0x62ac83
mov eax, edi
call fcn.0056e8c0
push eax
call sub.user32.dll_IsWindowVisible
test eax, eax
jne 0x62ac96
mov eax, dword [ebx + 0x98]
call fcn.0056e8c0
push eax
call sub.user32.dll_IsWindowVisible
test eax, eax
je 0x62ac96
push 0
mov eax, dword [ebx + 0x98]
call fcn.0056e8c0
push eax
call sub.user32.dll_ShowWindow
cmp byte [esp + 0x18], 0
je 0x62aca8
movzx edx, byte [esp]
mov eax, ebx
call fcn.0062a648
add esp, 0x54
pop ebp
pop edi
pop esi
pop ebx
ret