Function at 0x620f38
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 + 0x8c]
mov edi, dword [ebx + 0x9c]
test esi, esi
je 0x621598
test edi, edi
je 0x621598
mov eax, edi
call fcn.0055b590
test al, al
je 0x621598
mov eax, esi
call fcn.0055b590
test al, al
je 0x621598
mov eax, ebx
call fcn.00620f08
test al, al
je 0x620ffa
mov eax, esi
call fcn.0055b1bc
push eax
call sub.user32.dll_IsWindowVisible
test eax, eax
je 0x620fa9
push 0
mov eax, esi
call fcn.0055b1bc
push eax
call sub.user32.dll_ShowWindow
mov eax, edi
call fcn.0055b1bc
push eax
call sub.user32.dll_IsWindowVisible
test eax, eax
je 0x620fc9
push 0
mov eax, edi
call fcn.0055b1bc
push eax
call sub.user32.dll_ShowWindow
mov eax, dword [ebx + 0x94]
call fcn.0055b1bc
push eax
call sub.user32.dll_IsWindowVisible
test eax, eax
je 0x621598
push 0
mov eax, dword [ebx + 0x94]
call fcn.0055b1bc
push eax
call sub.user32.dll_ShowWindow
jmp 0x621598
mov byte [esp + 0x18], 0
lea edx, [esp + 0x24]
mov eax, ebx
call fcn.0062194c
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.00621cf4
call fcn.0060fcd4
dec eax
test eax, eax
jl 0x621138
inc eax
mov dword [esp + 0x1c], eax
xor ebp, ebp
mov eax, ebx
call fcn.00621cf4
mov edx, ebp
call fcn.0060fd20
cmp byte [eax + 0x69], 0
je 0x62112d
mov eax, ebx
call fcn.00621cf4
mov edx, ebp
call fcn.0060fd20
call fcn.0055b1bc
cmp eax, dword [ebx + 0x3c]
je 0x62112d
mov eax, ebx
call fcn.00621cf4
mov dword [esp + 0x20], eax
lea eax, [esp + 0x34]
push eax
mov edx, ebp
mov eax, dword [esp + 0x24]
call fcn.0060fd20
call fcn.0055b1bc
push eax
call sub.user32.dll_GetWindowRect
lea eax, [esp + 0x44]
push eax
mov eax, dword [ebx + 8]
mov eax, dword [eax + 0x3c4]
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.00413f94
mov eax, dword [esp + 0x34]
cmp eax, dword [esp + 4]
jge 0x6210d7
mov dword [esp + 4], eax
mov eax, dword [esp + 0x38]
cmp eax, dword [esp + 8]
jge 0x6210e5
mov dword [esp + 8], eax
lea eax, [esp + 0x34]
call fcn.004137dc
add eax, dword [esp + 0x34]
cmp eax, dword [esp + 0xc]
jle 0x621109
lea eax, [esp + 0x34]
call fcn.004137dc
add eax, dword [esp + 0x34]
mov dword [esp + 0xc], eax
lea eax, [esp + 0x34]
call fcn.004137e4
add eax, dword [esp + 0x38]
cmp eax, dword [esp + 0x10]
jle 0x62112d
lea eax, [esp + 0x34]
call fcn.004137e4
add eax, dword [esp + 0x38]
mov dword [esp + 0x10], eax
inc ebp
dec dword [esp + 0x1c]
jne 0x621046
cmp dword [esp + 4], 0
jl 0x621152
lea eax, [esp + 0x24]
call fcn.004137dc
cmp eax, dword [esp + 0xc]
jl 0x621152
xor eax, eax
jmp 0x621154
mov al, 1
mov byte [esp + 0x19], al
cmp dword [esp + 8], 0
jl 0x621172
lea eax, [esp + 0x24]
call fcn.004137e4
cmp eax, dword [esp + 0x10]
jl 0x621172
xor eax, eax
jmp 0x621174
mov al, 1
mov byte [esp + 0x1a], al
cmp byte [esp + 0x1a], 0
je 0x6211a9
cmp byte [esp + 0x19], 0
jne 0x6211a9
cmp dword [esp + 4], 0
jl 0x6211a3
lea eax, [esp + 0x24]
call fcn.004137dc
sub eax, dword [edi + 0x58]
cmp eax, dword [esp + 0xc]
jl 0x6211a3
xor eax, eax
jmp 0x6211a5
mov al, 1
mov byte [esp + 0x19], al
cmp byte [esp + 0x19], 0
je 0x6211da
cmp byte [esp + 0x1a], 0
jne 0x6211da
cmp dword [esp + 8], 0
jl 0x6211d4
lea eax, [esp + 0x24]
call fcn.004137e4
sub eax, dword [esi + 0x5c]
cmp eax, dword [esp + 0x10]
jl 0x6211d4
xor eax, eax
jmp 0x6211d6
mov al, 1
mov byte [esp + 0x1a], al
cmp byte [esp + 0x19], 0
je 0x621234
mov eax, esi
call fcn.0055b1bc
push eax
call sub.user32.dll_IsWindowVisible
test eax, eax
jne 0x621234
push 0x40
mov eax, dword [esi + 0x5c]
push eax
lea eax, [esp + 0x2c]
call fcn.004137dc
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.0055b1bc
push eax
call sub.user32.dll_SetWindowPos
push 5
mov eax, esi
call fcn.0055b1bc
push eax
call sub.user32.dll_ShowWindow
mov byte [esp + 0x18], 1
jmp 0x621260
cmp byte [esp + 0x19], 0
jne 0x621260
mov eax, esi
call fcn.0055b1bc
push eax
call sub.user32.dll_IsWindowVisible
test eax, eax
je 0x621260
push 0
mov eax, esi
call fcn.0055b1bc
push eax
call sub.user32.dll_ShowWindow
mov byte [esp + 0x18], 1
cmp byte [esp + 0x1a], 0
je 0x6212f4
mov eax, edi
call fcn.0055b1bc
push eax
call sub.user32.dll_IsWindowVisible
test eax, eax
jne 0x6212f4
cmp byte [esp + 0x19], 0
je 0x6212b3
push 0x40
lea eax, [esp + 0x28]
call fcn.004137e4
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.0055b1bc
push eax
call sub.user32.dll_SetWindowPos
jmp 0x6212de
push 0x40
lea eax, [esp + 0x28]
call fcn.004137e4
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.0055b1bc
push eax
call sub.user32.dll_SetWindowPos
push 5
mov eax, edi
call fcn.0055b1bc
push eax
call sub.user32.dll_ShowWindow
mov byte [esp + 0x18], 1
jmp 0x621320
cmp byte [esp + 0x1a], 0
jne 0x621320
mov eax, edi
call fcn.0055b1bc
push eax
call sub.user32.dll_IsWindowVisible
test eax, eax
je 0x621320
push 0
mov eax, edi
call fcn.0055b1bc
push eax
call sub.user32.dll_ShowWindow
mov byte [esp + 0x18], 1
lea eax, [esp + 0x24]
call fcn.004137dc
mov ebp, eax
lea eax, [esp + 0x24]
call fcn.004137e4
mov dword [esp + 0x14], eax
mov eax, ebx
call fcn.0062172c
mov eax, esi
call fcn.0055b1bc
push eax
call sub.user32.dll_IsWindowVisible
test eax, eax
je 0x6213ec
cmp dword [esp + 4], 0
jle 0x621361
xor eax, eax
mov dword [esp + 4], eax
lea eax, [esp + 0x24]
call fcn.004137dc
cmp eax, dword [esp + 0xc]
jle 0x62137d
lea eax, [esp + 0x24]
call fcn.004137dc
mov dword [esp + 0xc], eax
cmp byte [esp], 0
je 0x6213de
mov byte [ebx + 0x98], 1
mov eax, edi
call fcn.0055b1bc
push eax
call sub.user32.dll_IsWindowVisible
test eax, eax
je 0x6213a9
mov edx, ebp
sub edx, dword [edi + 0x58]
mov eax, esi
call fcn.0057591c
jmp 0x6213b2
mov edx, ebp
mov eax, esi
call fcn.0057591c
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.00575748
mov eax, dword [esi + 0x2a4]
mov dword [ebx + 0xb8], eax
mov byte [ebx + 0x98], 0
movzx eax, word [esi + 0x2b0]
mov word [esi + 0x2ba], ax
mov eax, edi
call fcn.0055b1bc
push eax
call sub.user32.dll_IsWindowVisible
test eax, eax
je 0x62149d
cmp dword [esp + 8], 0
jle 0x62140e
xor eax, eax
mov dword [esp + 8], eax
lea eax, [esp + 0x24]
call fcn.004137e4
cmp eax, dword [esp + 0x10]
jle 0x62142a
lea eax, [esp + 0x24]
call fcn.004137e4
mov dword [esp + 0x10], eax
cmp byte [esp], 0
je 0x62148f
mov byte [ebx + 0x99], 1
mov eax, esi
call fcn.0055b1bc
push eax
call sub.user32.dll_IsWindowVisible
test eax, eax
je 0x621458
mov edx, dword [esp + 0x14]
sub edx, dword [esi + 0x5c]
mov eax, edi
call fcn.0057591c
jmp 0x621463
mov edx, dword [esp + 0x14]
mov eax, edi
call fcn.0057591c
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.00575748
mov eax, dword [edi + 0x2a4]
mov dword [ebx + 0xbc], eax
mov byte [ebx + 0x99], 0
movzx eax, word [edi + 0x2b0]
mov word [edi + 0x2ba], ax
mov eax, esi
call fcn.0055b1bc
push eax
call sub.user32.dll_IsWindowVisible
test eax, eax
jne 0x6214c4
mov eax, edi
call fcn.0055b1bc
push eax
call sub.user32.dll_IsWindowVisible
test eax, eax
jne 0x6214c4
mov byte [esp + 0x18], 0
mov eax, esi
call fcn.0055b1bc
push eax
call sub.user32.dll_IsWindowVisible
test eax, eax
je 0x62153c
mov eax, edi
call fcn.0055b1bc
push eax
call sub.user32.dll_IsWindowVisible
test eax, eax
je 0x62153c
mov eax, dword [ebx + 0x94]
call fcn.0055b1bc
push eax
call sub.user32.dll_IsWindowVisible
test eax, eax
jne 0x62153c
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 + 0x94]
call fcn.0055b1bc
push eax
call sub.user32.dll_SetWindowPos
push 5
mov eax, dword [ebx + 0x94]
call fcn.0055b1bc
push eax
call sub.user32.dll_ShowWindow
jmp 0x621586
mov eax, esi
call fcn.0055b1bc
push eax
call sub.user32.dll_IsWindowVisible
test eax, eax
je 0x621573
mov eax, edi
call fcn.0055b1bc
push eax
call sub.user32.dll_IsWindowVisible
test eax, eax
jne 0x621586
mov eax, dword [ebx + 0x94]
call fcn.0055b1bc
push eax
call sub.user32.dll_IsWindowVisible
test eax, eax
je 0x621586
push 0
mov eax, dword [ebx + 0x94]
call fcn.0055b1bc
push eax
call sub.user32.dll_ShowWindow
cmp byte [esp + 0x18], 0
je 0x621598
movzx edx, byte [esp]
mov eax, ebx
call fcn.00620f38
add esp, 0x54
pop ebp
pop edi
pop esi
pop ebx
ret