Function at 0x5d32ac
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 0x5d390c
test edi, edi
je 0x5d390c
mov eax, edi
call fcn.0052dcd0
test al, al
je 0x5d390c
mov eax, esi
call fcn.0052dcd0
test al, al
je 0x5d390c
mov eax, ebx
call fcn.005d327c
test al, al
je 0x5d336e
mov eax, esi
call fcn.0052d8fc
push eax
call sub.user32.dll_IsWindowVisible
test eax, eax
je 0x5d331d
push 0
mov eax, esi
call fcn.0052d8fc
push eax
call sub.user32.dll_ShowWindow
mov eax, edi
call fcn.0052d8fc
push eax
call sub.user32.dll_IsWindowVisible
test eax, eax
je 0x5d333d
push 0
mov eax, edi
call fcn.0052d8fc
push eax
call sub.user32.dll_ShowWindow
mov eax, dword [ebx + 0x94]
call fcn.0052d8fc
push eax
call sub.user32.dll_IsWindowVisible
test eax, eax
je 0x5d390c
push 0
mov eax, dword [ebx + 0x94]
call fcn.0052d8fc
push eax
call sub.user32.dll_ShowWindow
jmp 0x5d390c
mov byte [esp + 0x18], 0
lea edx, [esp + 0x24]
mov eax, ebx
call fcn.005d3ca0
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.005d3ff8
call fcn.005c4d18
dec eax
test eax, eax
jl 0x5d34ac
inc eax
mov dword [esp + 0x1c], eax
xor ebp, ebp
mov eax, ebx
call fcn.005d3ff8
mov edx, ebp
call fcn.005c4d64
cmp byte [eax + 0x69], 0
je 0x5d34a1
mov eax, ebx
call fcn.005d3ff8
mov edx, ebp
call fcn.005c4d64
call fcn.0052d8fc
cmp eax, dword [ebx + 0x3c]
je 0x5d34a1
mov eax, ebx
call fcn.005d3ff8
mov dword [esp + 0x20], eax
lea eax, [esp + 0x34]
push eax
mov edx, ebp
mov eax, dword [esp + 0x24]
call fcn.005c4d64
call fcn.0052d8fc
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.0041363c
mov eax, dword [esp + 0x34]
cmp eax, dword [esp + 4]
jge 0x5d344b
mov dword [esp + 4], eax
mov eax, dword [esp + 0x38]
cmp eax, dword [esp + 8]
jge 0x5d3459
mov dword [esp + 8], eax
lea eax, [esp + 0x34]
call fcn.00412f50
add eax, dword [esp + 0x34]
cmp eax, dword [esp + 0xc]
jle 0x5d347d
lea eax, [esp + 0x34]
call fcn.00412f50
add eax, dword [esp + 0x34]
mov dword [esp + 0xc], eax
lea eax, [esp + 0x34]
call fcn.00412f58
add eax, dword [esp + 0x38]
cmp eax, dword [esp + 0x10]
jle 0x5d34a1
lea eax, [esp + 0x34]
call fcn.00412f58
add eax, dword [esp + 0x38]
mov dword [esp + 0x10], eax
inc ebp
dec dword [esp + 0x1c]
jne 0x5d33ba
cmp dword [esp + 4], 0
jl 0x5d34c6
lea eax, [esp + 0x24]
call fcn.00412f50
cmp eax, dword [esp + 0xc]
jl 0x5d34c6
xor eax, eax
jmp 0x5d34c8
mov al, 1
mov byte [esp + 0x19], al
cmp dword [esp + 8], 0
jl 0x5d34e6
lea eax, [esp + 0x24]
call fcn.00412f58
cmp eax, dword [esp + 0x10]
jl 0x5d34e6
xor eax, eax
jmp 0x5d34e8
mov al, 1
mov byte [esp + 0x1a], al
cmp byte [esp + 0x1a], 0
je 0x5d351d
cmp byte [esp + 0x19], 0
jne 0x5d351d
cmp dword [esp + 4], 0
jl 0x5d3517
lea eax, [esp + 0x24]
call fcn.00412f50
sub eax, dword [edi + 0x58]
cmp eax, dword [esp + 0xc]
jl 0x5d3517
xor eax, eax
jmp 0x5d3519
mov al, 1
mov byte [esp + 0x19], al
cmp byte [esp + 0x19], 0
je 0x5d354e
cmp byte [esp + 0x1a], 0
jne 0x5d354e
cmp dword [esp + 8], 0
jl 0x5d3548
lea eax, [esp + 0x24]
call fcn.00412f58
sub eax, dword [esi + 0x5c]
cmp eax, dword [esp + 0x10]
jl 0x5d3548
xor eax, eax
jmp 0x5d354a
mov al, 1
mov byte [esp + 0x1a], al
cmp byte [esp + 0x19], 0
je 0x5d35a8
mov eax, esi
call fcn.0052d8fc
push eax
call sub.user32.dll_IsWindowVisible
test eax, eax
jne 0x5d35a8
push 0x40
mov eax, dword [esi + 0x5c]
push eax
lea eax, [esp + 0x2c]
call fcn.00412f50
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.0052d8fc
push eax
call sub.user32.dll_SetWindowPos
push 5
mov eax, esi
call fcn.0052d8fc
push eax
call sub.user32.dll_ShowWindow
mov byte [esp + 0x18], 1
jmp 0x5d35d4
cmp byte [esp + 0x19], 0
jne 0x5d35d4
mov eax, esi
call fcn.0052d8fc
push eax
call sub.user32.dll_IsWindowVisible
test eax, eax
je 0x5d35d4
push 0
mov eax, esi
call fcn.0052d8fc
push eax
call sub.user32.dll_ShowWindow
mov byte [esp + 0x18], 1
cmp byte [esp + 0x1a], 0
je 0x5d3668
mov eax, edi
call fcn.0052d8fc
push eax
call sub.user32.dll_IsWindowVisible
test eax, eax
jne 0x5d3668
cmp byte [esp + 0x19], 0
je 0x5d3627
push 0x40
lea eax, [esp + 0x28]
call fcn.00412f58
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.0052d8fc
push eax
call sub.user32.dll_SetWindowPos
jmp 0x5d3652
push 0x40
lea eax, [esp + 0x28]
call fcn.00412f58
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.0052d8fc
push eax
call sub.user32.dll_SetWindowPos
push 5
mov eax, edi
call fcn.0052d8fc
push eax
call sub.user32.dll_ShowWindow
mov byte [esp + 0x18], 1
jmp 0x5d3694
cmp byte [esp + 0x1a], 0
jne 0x5d3694
mov eax, edi
call fcn.0052d8fc
push eax
call sub.user32.dll_IsWindowVisible
test eax, eax
je 0x5d3694
push 0
mov eax, edi
call fcn.0052d8fc
push eax
call sub.user32.dll_ShowWindow
mov byte [esp + 0x18], 1
lea eax, [esp + 0x24]
call fcn.00412f50
mov ebp, eax
lea eax, [esp + 0x24]
call fcn.00412f58
mov dword [esp + 0x14], eax
mov eax, ebx
call fcn.005d3a80
mov eax, esi
call fcn.0052d8fc
push eax
call sub.user32.dll_IsWindowVisible
test eax, eax
je 0x5d3760
cmp dword [esp + 4], 0
jle 0x5d36d5
xor eax, eax
mov dword [esp + 4], eax
lea eax, [esp + 0x24]
call fcn.00412f50
cmp eax, dword [esp + 0xc]
jle 0x5d36f1
lea eax, [esp + 0x24]
call fcn.00412f50
mov dword [esp + 0xc], eax
cmp byte [esp], 0
je 0x5d3752
mov byte [ebx + 0x98], 1
mov eax, edi
call fcn.0052d8fc
push eax
call sub.user32.dll_IsWindowVisible
test eax, eax
je 0x5d371d
mov edx, ebp
sub edx, dword [edi + 0x58]
mov eax, esi
call fcn.0053edbc
jmp 0x5d3726
mov edx, ebp
mov eax, esi
call fcn.0053edbc
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.0053ebe8
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.0052d8fc
push eax
call sub.user32.dll_IsWindowVisible
test eax, eax
je 0x5d3811
cmp dword [esp + 8], 0
jle 0x5d3782
xor eax, eax
mov dword [esp + 8], eax
lea eax, [esp + 0x24]
call fcn.00412f58
cmp eax, dword [esp + 0x10]
jle 0x5d379e
lea eax, [esp + 0x24]
call fcn.00412f58
mov dword [esp + 0x10], eax
cmp byte [esp], 0
je 0x5d3803
mov byte [ebx + 0x99], 1
mov eax, esi
call fcn.0052d8fc
push eax
call sub.user32.dll_IsWindowVisible
test eax, eax
je 0x5d37cc
mov edx, dword [esp + 0x14]
sub edx, dword [esi + 0x5c]
mov eax, edi
call fcn.0053edbc
jmp 0x5d37d7
mov edx, dword [esp + 0x14]
mov eax, edi
call fcn.0053edbc
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.0053ebe8
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.0052d8fc
push eax
call sub.user32.dll_IsWindowVisible
test eax, eax
jne 0x5d3838
mov eax, edi
call fcn.0052d8fc
push eax
call sub.user32.dll_IsWindowVisible
test eax, eax
jne 0x5d3838
mov byte [esp + 0x18], 0
mov eax, esi
call fcn.0052d8fc
push eax
call sub.user32.dll_IsWindowVisible
test eax, eax
je 0x5d38b0
mov eax, edi
call fcn.0052d8fc
push eax
call sub.user32.dll_IsWindowVisible
test eax, eax
je 0x5d38b0
mov eax, dword [ebx + 0x94]
call fcn.0052d8fc
push eax
call sub.user32.dll_IsWindowVisible
test eax, eax
jne 0x5d38b0
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.0052d8fc
push eax
call sub.user32.dll_SetWindowPos
push 5
mov eax, dword [ebx + 0x94]
call fcn.0052d8fc
push eax
call sub.user32.dll_ShowWindow
jmp 0x5d38fa
mov eax, esi
call fcn.0052d8fc
push eax
call sub.user32.dll_IsWindowVisible
test eax, eax
je 0x5d38e7
mov eax, edi
call fcn.0052d8fc
push eax
call sub.user32.dll_IsWindowVisible
test eax, eax
jne 0x5d38fa
mov eax, dword [ebx + 0x94]
call fcn.0052d8fc
push eax
call sub.user32.dll_IsWindowVisible
test eax, eax
je 0x5d38fa
push 0
mov eax, dword [ebx + 0x94]
call fcn.0052d8fc
push eax
call sub.user32.dll_ShowWindow
cmp byte [esp + 0x18], 0
je 0x5d390c
movzx edx, byte [esp]
mov eax, ebx
call fcn.005d32ac
add esp, 0x54
pop ebp
pop edi
pop esi
pop ebx
ret