Function at 0x869a98
Capabilities:
Hide graphical window

Disassembly:
push ebp
mov ebp, esp
add esp, 0xffffffa4
push ebx
push esi
push edi
xor ecx, ecx
mov dword [ebp - 0x3c], ecx
mov dword [ebp - 0x44], ecx
mov dword [ebp - 0x40], ecx
mov dword [ebp - 0x18], ecx
mov dword [ebp - 0x20], ecx
mov dword [ebp - 0x1c], ecx
mov dword [ebp - 8], edx
mov dword [ebp - 4], eax
xor eax, eax
push ebp
push 0x86a058
push dword fs:[eax]
mov dword fs:[eax], esp
xor eax, eax
push ebp
push 0x869d05
push dword fs:[eax]
mov dword fs:[eax], esp
cmp byte [0x892150], 0
je 0x869aed
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x86a030
cmp dword [0x152a6d4], 0
jne 0x869b03
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x86a030
mov eax, dword [0x893464]
cmp dword [eax], 0
jne 0x869b1a
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x86a030
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x2f8]
cmp byte [eax + 0x40], 0
jne 0x869b45
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x33c]
cmp byte [eax + 0x40], 0
jne 0x869b45
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x86a030
mov byte [ebp - 9], 0
cmp dword [ebp - 8], 2
jl 0x869b5d
cmp dword [ebp - 8], 5
jg 0x869b5d
mov eax, dword [ebp - 8]
call fcn.0081a2e8
mov eax, dword [0x893464]
mov eax, dword [eax]
cmp dword [eax + 0x44c], 0
jne 0x869b7a
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x86a030
mov eax, dword [0x893464]
mov eax, dword [eax]
mov eax, dword [eax + 0x44c]
mov edx, dword [eax]
call dword [edx + 0xc8]
test al, al
je 0x869c0f
mov eax, dword [0x893464]
mov eax, dword [eax]
mov al, byte [eax + 0x57]
mov byte [ebp - 0xb], al
cmp dword [ebp - 8], 2
jne 0x869baa
mov byte [ebp - 0xb], 0
mov eax, dword [0x892de4]
cmp dword [eax], 0
je 0x869bcd
mov eax, dword [0x892de4]
mov eax, dword [eax]
mov al, byte [eax + 0x57]
mov byte [ebp - 0xc], al
cmp dword [ebp - 8], 3
jne 0x869bd1
mov byte [ebp - 0xc], 0
jmp 0x869bd1
mov byte [ebp - 0xc], 0
mov eax, dword [0x89316c]
cmp dword [eax], 0
je 0x869bf4
mov eax, dword [0x89316c]
mov eax, dword [eax]
mov al, byte [eax + 0x57]
mov byte [ebp - 0xa], al
cmp dword [ebp - 8], 5
jne 0x869bf8
mov byte [ebp - 0xa], 0
jmp 0x869bf8
mov byte [ebp - 0xa], 0
mov al, byte [ebp - 0xb]
or al, byte [ebp - 0xc]
jne 0x869c0a
cmp byte [ebp - 0xa], 0
jne 0x869c0a
xor eax, eax
jmp 0x869c0c
mov al, 1
mov byte [ebp - 9], al
xor eax, eax
push ebp
push 0x869c5c
push dword fs:[eax]
mov dword fs:[eax], esp
cmp byte [ebp - 9], 0
jne 0x869c52
mov eax, dword [ebp - 4]
cmp byte [eax + 0x57], 0
je 0x869c52
cmp byte [0x892078], 0
jne 0x869c52
mov eax, dword [0x893464]
mov eax, dword [eax]
mov eax, dword [eax + 0x44c]
mov edx, dword [eax]
call dword [edx + 0xc8]
test al, al
je 0x869c52
mov byte [ebp - 9], 1
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x869c66
cmp byte [ebp - 9], 0
je 0x869cb2
push 0
mov eax, dword [0x892f24]
mov eax, dword [eax]
mov eax, dword [eax + 0x30]
push eax
call sub.user32.dll_ShowWindow
mov eax, dword [0x893464]
mov eax, dword [eax]
mov eax, dword [eax + 0x1224]
push eax
push 0xffffffffffffffec
mov eax, dword [0x892f24]
mov eax, dword [eax]
mov eax, dword [eax + 0x30]
push eax
call sub.user32.dll_SetWindowLongA
push 5
mov eax, dword [0x892f24]
mov eax, dword [eax]
mov eax, dword [eax + 0x30]
push eax
call sub.user32.dll_ShowWindow
jmp 0x869cfb
push 0
mov eax, dword [0x892f24]
mov eax, dword [eax]
mov eax, dword [eax + 0x30]
push eax
call sub.user32.dll_ShowWindow
mov eax, dword [0x893464]
mov eax, dword [eax]
mov eax, dword [eax + 0x1224]
or eax, 0x80
push eax
push 0xffffffffffffffec
mov eax, dword [0x892f24]
mov eax, dword [eax]
mov eax, dword [eax + 0x30]
push eax
call sub.user32.dll_SetWindowLongA
push 5
mov eax, dword [0x892f24]
mov eax, dword [eax]
mov eax, dword [eax + 0x30]
push eax
call sub.user32.dll_ShowWindow
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x869d7d
xor eax, eax
push ebp
push 0x869fb8
push dword fs:[eax]
mov dword fs:[eax], esp
cmp dword [0x152a6d4], 0
je 0x869e5b
mov eax, dword [0x152a6d4]
cmp byte [eax + 0x57], 0
je 0x869e20
cmp byte [0x892078], 0
jne 0x869de6
push 1
mov eax, dword [0x152a6d4]
mov eax, dword [eax + 0x4c]
push eax
mov eax, dword [0x152a6d4]
mov eax, dword [eax + 0x48]
push eax
mov eax, dword [0x152a6d4]
mov eax, dword [eax + 0x44]
push eax
mov eax, dword [0x152a6d4]
mov eax, dword [eax + 0x40]
push eax
push 0
mov eax, dword [0x152a6d4]
call fcn.0047a720
push eax
call sub.user32.dll_SetWindowPos
jmp 0x869e5b
push 1
mov eax, dword [0x152a6d4]
mov eax, dword [eax + 0x4c]
push eax
mov eax, dword [0x152a6d4]
mov eax, dword [eax + 0x48]
push eax
mov eax, dword [0x152a6d4]
mov eax, dword [eax + 0x44]
push eax
mov eax, dword [0x152a6d4]
mov eax, dword [eax + 0x40]
push eax
push 0xffffffffffffffff
mov eax, dword [0x152a6d4]
call fcn.0047a720
push eax
call sub.user32.dll_SetWindowPos
jmp 0x869e5b
push 0x80
mov eax, dword [0x152a6d4]
mov eax, dword [eax + 0x4c]
push eax
mov eax, dword [0x152a6d4]
mov eax, dword [eax + 0x48]
push eax
mov eax, dword [0x152a6d4]
mov eax, dword [eax + 0x44]
push eax
mov eax, dword [0x152a6d4]
mov eax, dword [eax + 0x40]
push eax
push 1
mov eax, dword [0x152a6d4]
call fcn.0047a720
push eax
call sub.user32.dll_SetWindowPos
call fcn.0081a35c
sub eax, 2
je 0x869e76
dec eax
je 0x869ec0
sub eax, 2
je 0x869f14
jmp 0x869f56
mov eax, dword [0x893464]
cmp dword [eax], 0
je 0x869eb1
mov eax, dword [0x893464]
mov eax, dword [eax]
mov edx, dword [eax]
call dword [edx + 0x50]
test al, al
je 0x869eb1
mov eax, dword [0x893464]
mov eax, dword [eax]
cmp byte [eax + 0x57], 0
je 0x869eb1
mov eax, dword [0x893464]
mov eax, dword [eax]
mov edx, dword [eax]
call dword [edx + 0xc4]
jmp 0x869f56
mov eax, 2
call fcn.0081a2e8
jmp 0x869f56
mov eax, dword [0x892de4]
cmp dword [eax], 0
je 0x869f08
mov eax, dword [0x892de4]
mov eax, dword [eax]
mov edx, dword [eax]
call dword [edx + 0x50]
test al, al
je 0x869f08
mov eax, dword [0x892de4]
mov eax, dword [eax]
cmp byte [eax + 0x57], 0
je 0x869f08
mov eax, dword [0x892bac]
mov byte [eax], 1
mov eax, dword [0x892de4]
mov eax, dword [eax]
mov edx, dword [eax]
call dword [edx + 0xc4]
mov eax, dword [0x892bac]
mov byte [eax], 0
jmp 0x869f56
mov eax, 3
call fcn.0081a2e8
jmp 0x869f56
mov eax, dword [0x89316c]
cmp dword [eax], 0
je 0x869f4c
mov eax, dword [0x89316c]
mov eax, dword [eax]
mov edx, dword [eax]
call dword [edx + 0x50]
test al, al
je 0x869f4c
mov eax, dword [0x89316c]
mov eax, dword [eax]
cmp byte [eax + 0x57], 0
je 0x869f4c
mov eax, dword [0x89316c]
mov eax, dword [eax]
mov edx, dword [eax]
call dword [edx + 0xc4]
jmp 0x869f56
mov eax, 5
call fcn.0081a2e8
mov eax, dword [0x89297c]
mov eax, dword [eax]
mov edx, 0x86a088
mov ecx, dword [eax]
call dword [ecx + 0x54]
inc eax
jle 0x869fae
mov eax, dword [0x893464]
mov eax, dword [eax]
mov edx, dword [eax]
call dword [edx + 0x50]
test al, al
je 0x869fa4
mov eax, dword [0x893464]
mov eax, dword [eax]
cmp byte [eax + 0x57], 0
je 0x869fa4
mov eax, dword [0x893464]
mov eax, dword [eax]
call fcn.00473ffc
mov eax, dword [0x893464]
mov eax, dword [eax]
mov edx, dword [eax]
call dword [edx + 0xc4]
jmp 0x869fae
mov eax, 2
call fcn.0081a2e8
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x86a030
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x86a05f
lea eax, [ebp - 0x44]
mov edx, 3
call fcn.004052b0
lea eax, [ebp - 0x20]
mov edx, 3
call fcn.004052b0
ret