Function at 0x49d13f
Capabilities:
Hide graphical window

Disassembly:
mov eax, 0x4a78a6
call fcn.0049e6bc
sub esp, 0x1c
push ebx
mov eax, ecx
xor ebx, ebx
push esi
push edi
mov dword [ebp - 0x10], esp
lea esi, [eax + 0x38]
mov dword [ebp - 0x20], eax
mov edi, dword [esi]
mov ecx, esi
push ebx
mov dword [ebp - 0x1c], esi
call fcn.004347c6
push ebx
push ebx
mov ecx, esi
call fcn.004347c6
mov ecx, eax
call fcn.004347c6
push 0x13
push ebx
push ebx
mov eax, dword [eax]
push ebx
push ebx
mov dword [ebp - 4], ebx
mov eax, dword [eax]
push 0xffffffffffffffff
push eax
mov byte [0x52ff61], bl
mov dword [ebp - 0x24], eax
call dword [sym.imp.USER32.dll_SetWindowPos]
mov eax, dword [esi]
add edi, 0xc
cmp eax, dword [esi + 4]
je 0x49d22b
push 5
pop ebx
push ebx
mov ecx, esi
call fcn.004347c6
mov ecx, dword [eax]
cmp ecx, dword [eax + 4]
je 0x49d22b
push ebx
mov ecx, esi
call fcn.004347c6
push 0
mov ecx, eax
call fcn.004347c6
mov ecx, dword [eax]
cmp ecx, dword [eax + 4]
je 0x49d22b
push ebx
mov ecx, esi
call fcn.004347c6
push 0
mov ecx, eax
call fcn.004347c6
mov eax, dword [eax]
push dword [eax]
call dword [sym.imp.USER32.dll_IsIconic]
test eax, eax
jne 0x49d339
push ebx
mov ecx, esi
call fcn.004347c6
push 0
mov ecx, eax
call fcn.004347c6
mov eax, dword [eax]
push dword [eax]
call dword [sym.imp.USER32.dll_IsWindowVisible]
test eax, eax
je 0x49d339
cmp byte [0x52ff5d], 0
mov byte [0x52ff5d], 0
setne byte [0x52ff5f]
xor ebx, ebx
inc ebx
mov eax, ebx
mov dword [ebp - 0x14], ebx
mov ebx, dword [ebp - 0x20]
mov ecx, esi
cmp edi, dword [ebx + 0x3c]
je 0x49d850
push eax
call fcn.004347c6
and dword [ebp - 0x18], 0
mov ebx, dword [eax]
mov eax, dword [ebp - 0x14]
push eax
mov ecx, esi
call fcn.004347c6
cmp ebx, dword [eax + 4]
je 0x49d841
cmp dword [ebp - 0x18], 0
mov ecx, esi
jne 0x49d392
push dword [ebp - 0x14]
xor eax, eax
mov dword [ebp - 0x28], eax
call fcn.004347c6
push 0
mov ecx, eax
call fcn.004347c6
mov esi, dword [eax]
mov eax, dword [ebp - 0x14]
mov ecx, dword [ebp - 0x1c]
push eax
call fcn.004347c6
push dword [ebp - 0x18]
mov ecx, eax
call fcn.004347c6
cmp esi, dword [eax + 4]
je 0x49d82c
push dword [ebp - 0x14]
mov ecx, dword [ebp - 0x1c]
inc dword [ebp - 0x28]
call fcn.004347c6
push 0
mov ecx, eax
call fcn.004347c6
mov ecx, dword [eax + 4]
sub ecx, dword [eax]
sar ecx, 2
cmp dword [ebp - 0x28], ecx
jg 0x49d82c
cmp dword [esi], 0
je 0x49d355
push dword [esi]
call dword [sym.imp.USER32.dll_IsWindow]
test eax, eax
je 0x49d355
mov ecx, dword [ebp - 0x20]
mov eax, dword [esi]
cmp eax, dword [ecx + 0x68]
jne 0x49d355
push 0x13
xor ecx, ecx
push ecx
push ecx
push ecx
push ecx
push dword [ebp - 0x24]
push eax
call dword [sym.imp.USER32.dll_SetWindowPos]
push 0x13
xor eax, eax
push eax
push eax
push eax
push eax
push 0xfffffffffffffffe
push dword [esi]
call dword [sym.imp.USER32.dll_SetWindowPos]
cmp byte [0x52ff5f], 0
mov ecx, dword [esi]
mov dword [ebp - 0x24], ecx
je 0x49d387
xor eax, eax
cmp byte [0x52ff5d], al
push 0
sete al
push eax
push 0x47b
push ecx
call dword [sym.imp.USER32.dll_PostMessageW]
jmp 0x49d387
cmp byte [0x52ff5d], 0
sete byte [0x52ff5f]
xor ebx, ebx
inc ebx
mov byte [0x52ff5d], bl
jmp 0x49d22e
mov eax, dword [ebp - 0x14]
cmp eax, 5
jne 0x49d38a
push 0x13
xor eax, eax
push eax
push eax
push eax
push eax
push dword [ebp - 0x24]
push dword [esi]
call dword [sym.imp.USER32.dll_SetWindowPos]
push 0x13
xor eax, eax
push eax
push eax
push eax
push eax
push 0xfffffffffffffffe
push dword [esi]
call dword [sym.imp.USER32.dll_SetWindowPos]
mov eax, dword [esi]
mov dword [ebp - 0x24], eax
mov eax, dword [ebp - 0x14]
add esi, 4
jmp 0x49d288
push 3
call fcn.004347c6
push 3
mov ecx, eax
call fcn.004347c6
mov ecx, dword [eax + 4]
sub ecx, dword [eax]
mov eax, dword [ebp - 0x14]
test ecx, 0xfffffffc
mov ecx, dword [ebp - 0x18]
jne 0x49d835
cmp eax, 3
jne 0x49d835
cmp ecx, 2
jne 0x49d622
push eax
mov ecx, esi
call fcn.004347c6
push 2
mov ecx, eax
call fcn.004347c6
mov ecx, dword [eax + 4]
sub ecx, dword [eax]
test ecx, 0xfffffffc
je 0x49d82f
push 3
mov ecx, esi
call fcn.004347c6
push 2
mov ecx, eax
call fcn.004347c6
mov esi, dword [eax]
push dword [ebp - 0x14]
mov ecx, dword [ebp - 0x1c]
call fcn.004347c6
push dword [ebp - 0x18]
mov ecx, eax
call fcn.004347c6
cmp esi, dword [eax + 4]
je 0x49d4f8
mov ecx, dword [ebp - 0x20]
add esi, 4
mov eax, dword [esi]
cmp eax, dword [ecx + 0x68]
jne 0x49d4a0
sub esi, 4
cmp dword [esi], 0
je 0x49d4ba
push dword [esi]
call dword [sym.imp.USER32.dll_IsWindow]
test eax, eax
je 0x49d4ba
push 1
push dword [esi]
call dword [sym.imp.USER32.dll_EnableWindow]
push 0x13
xor eax, eax
push eax
push eax
push eax
push eax
mov eax, dword [ebp - 0x20]
push dword [eax + 0x68]
push dword [esi]
call dword [sym.imp.USER32.dll_SetWindowPos]
push 0x13
xor eax, eax
push eax
push eax
push eax
push eax
push 0xfffffffffffffffe
push dword [esi]
call dword [sym.imp.USER32.dll_SetWindowPos]
cmp byte [0x52ff5f], 0
mov ecx, dword [esi]
mov dword [ebp - 0x24], ecx
je 0x49d4ba
xor eax, eax
cmp byte [0x52ff5d], al
push 0
sete al
push eax
push 0x47b
push ecx
call dword [sym.imp.USER32.dll_PostMessageW]
jmp 0x49d4ba
push 0
push 0
push 0x47b
push eax
call dword [sym.imp.USER32.dll_PostMessageW]
push 0
push dword [esi]
call dword [sym.imp.USER32.dll_EnableWindow]
push dword [ebp - 0x14]
mov ecx, dword [ebp - 0x1c]
add esi, 4
call fcn.004347c6
push dword [ebp - 0x18]
mov ecx, eax
call fcn.004347c6
cmp esi, dword [eax + 4]
je 0x49d4f8
push dword [ebp - 0x14]
mov ecx, dword [ebp - 0x1c]
add esi, 4
call fcn.004347c6
push dword [ebp - 0x18]
mov ecx, eax
call fcn.004347c6
cmp esi, dword [eax + 4]
jne 0x49d401
mov ecx, dword [ebp - 0x1c]
push 3
call fcn.004347c6
push 1
mov ecx, eax
call fcn.004347c6
mov esi, dword [eax]
xor eax, eax
mov dword [ebp - 0x28], eax
mov ecx, dword [ebp - 0x1c]
push 3
call fcn.004347c6
push 1
mov ecx, eax
call fcn.004347c6
cmp esi, dword [eax + 4]
je 0x49d5a1
mov ecx, dword [ebp - 0x1c]
inc dword [ebp - 0x28]
push 3
call fcn.004347c6
push 1
mov ecx, eax
call fcn.004347c6
mov ecx, dword [eax + 4]
sub ecx, dword [eax]
sar ecx, 2
cmp dword [ebp - 0x28], ecx
jg 0x49d5a1
mov ecx, dword [ebp - 0x20]
add esi, 4
mov eax, dword [esi]
cmp eax, dword [ecx + 0x68]
jne 0x49d512
sub esi, 4
cmp dword [esi], 0
je 0x49d512
push dword [esi]
call dword [sym.imp.USER32.dll_IsWindow]
test eax, eax
je 0x49d512
push 0
push dword [esi]
call dword [sym.imp.USER32.dll_EnableWindow]
cmp byte [0x52ff5f], 0
je 0x49d512
xor eax, eax
cmp byte [0x52ff5d], al
push 0
sete al
push eax
push 0x47b
push dword [esi]
call dword [sym.imp.USER32.dll_PostMessageW]
jmp 0x49d512
push dword [ebp - 0x14]
mov ecx, dword [ebp - 0x1c]
call fcn.004347c6
push dword [ebp - 0x18]
mov ecx, eax
call fcn.004347c6
push dword [ebp - 0x14]
mov ecx, dword [ebp - 0x1c]
mov esi, dword [eax + 4]
call fcn.004347c6
push dword [ebp - 0x18]
mov ecx, eax
call fcn.004347c6
mov eax, dword [eax]
mov dword [ebp - 0x28], eax
cmp eax, esi
je 0x49d5eb
mov ecx, dword [ebp - 0x20]
mov ecx, dword [ecx + 0x68]
cmp dword [eax], ecx
je 0x49d5eb
add eax, 4
mov dword [ebp - 0x28], eax
cmp eax, esi
jne 0x49d5dd
push dword [ebp - 0x14]
mov esi, dword [ebp - 0x1c]
mov ecx, esi
call fcn.004347c6
push dword [ebp - 0x18]
mov ecx, eax
call fcn.004347c6
mov ecx, eax
mov eax, dword [ebp - 0x28]
cmp dword [ecx + 4], eax
mov eax, dword [ebp - 0x14]
mov ecx, dword [ebp - 0x18]
je 0x49d835
mov byte [0x52ff61], 1
jmp 0x49d835
cmp ecx, 1
jne 0x49d835
push 3
mov ecx, esi
call fcn.004347c6
push 1
mov ecx, eax
call fcn.004347c6
mov ecx, dword [eax + 4]
sub ecx, dword [eax]
test ecx, 0xfffffffc
je 0x49d82f
and dword [ebp - 0x28], 0
mov ecx, esi
push 3
call fcn.004347c6
push 1
mov ecx, eax
call fcn.004347c6
mov esi, dword [eax]
push dword [ebp - 0x14]
mov ecx, dword [ebp - 0x1c]
call fcn.004347c6
push dword [ebp - 0x18]
mov ecx, eax
call fcn.004347c6
cmp esi, dword [eax + 4]
je 0x49d7ae
push dword [ebp - 0x14]
mov ecx, dword [ebp - 0x1c]
inc dword [ebp - 0x28]
call fcn.004347c6
push dword [ebp - 0x18]
mov ecx, eax
call fcn.004347c6
mov ecx, dword [eax + 4]
sub ecx, dword [eax]
sar ecx, 2
cmp dword [ebp - 0x28], ecx
jg 0x49d7ae
push dword [ebp - 0x14]
mov ecx, dword [ebp - 0x1c]
call fcn.004347c6
push dword [ebp - 0x18]
mov ecx, eax
call fcn.004347c6
mov ecx, dword [eax + 4]
sub ecx, dword [eax]
sar ecx, 2
cmp dword [ebp - 0x28], ecx
je 0x49d666
mov ecx, dword [ebp - 0x20]
add esi, 4
mov eax, dword [esi]
cmp eax, dword [ecx + 0x68]
jne 0x49d756
sub esi, 4
cmp dword [esi], 0
je 0x49d770
push dword [esi]
call dword [sym.imp.USER32.dll_IsWindow]
test eax, eax
je 0x49d770
push 1
push dword [esi]
call dword [sym.imp.USER32.dll_EnableWindow]
call dword [sym.imp.KERNEL32.dll_GetLastError]
push 0x13
xor eax, eax
push eax
push eax
push eax
push eax
mov eax, dword [ebp - 0x20]
push dword [eax + 0x68]
push dword [esi]
call dword [sym.imp.USER32.dll_SetWindowPos]
push 0x13
xor eax, eax
push eax
push eax
push eax
push eax
push 0xfffffffffffffffe
push dword [esi]
call dword [sym.imp.USER32.dll_SetWindowPos]
cmp byte [0x52ff5f], 0
mov ecx, dword [esi]
mov dword [ebp - 0x24], ecx
je 0x49d770
xor eax, eax
cmp byte [0x52ff5d], al
push 0
sete al
push eax
push 0x47b
push ecx
call dword [sym.imp.USER32.dll_PostMessageW]
jmp 0x49d770
push 0
push 0
push 0x47b
push eax
call dword [sym.imp.USER32.dll_PostMessageW]
push 0
push dword [esi]
call dword [sym.imp.USER32.dll_EnableWindow]
push dword [ebp - 0x14]
mov ecx, dword [ebp - 0x1c]
add esi, 4
call fcn.004347c6
push dword [ebp - 0x18]
mov ecx, eax
call fcn.004347c6
cmp esi, dword [eax + 4]
je 0x49d7ae
push dword [ebp - 0x14]
mov ecx, dword [ebp - 0x1c]
add esi, 4
call fcn.004347c6
push dword [ebp - 0x18]
mov ecx, eax
call fcn.004347c6
cmp esi, dword [eax + 4]
jne 0x49d666
push dword [ebp - 0x14]
mov ecx, dword [ebp - 0x1c]
call fcn.004347c6
push dword [ebp - 0x18]
mov ecx, eax
call fcn.004347c6
push dword [ebp - 0x14]
mov ecx, dword [ebp - 0x1c]
mov esi, dword [eax + 4]
call fcn.004347c6
push dword [ebp - 0x18]
mov ecx, eax
call fcn.004347c6
mov eax, dword [eax]
mov dword [ebp - 0x28], eax
cmp eax, esi
je 0x49d7f8
mov ecx, dword [ebp - 0x20]
mov ecx, dword [ecx + 0x68]
cmp dword [eax], ecx
je 0x49d7f8
add eax, 4
mov dword [ebp - 0x28], eax
cmp eax, esi
jne 0x49d7ea
push dword [ebp - 0x14]
mov esi, dword [ebp - 0x1c]
mov ecx, esi
call fcn.004347c6
push dword [ebp - 0x18]
mov ecx, eax
call fcn.004347c6
movzx ecx, byte [0x52ff61]
mov edx, eax
mov eax, dword [ebp - 0x28]
push 1
cmp dword [edx + 4], eax
pop eax
cmovne ecx, eax
mov byte [0x52ff61], cl
jmp 0x49d82f
mov esi, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x18]
mov eax, dword [ebp - 0x14]
add ebx, 0xc
inc ecx
mov dword [ebp - 0x18], ecx
jmp 0x49d250
mov eax, dword [ebp - 0x14]
add edi, 0xc
inc eax
mov dword [ebp - 0x14], eax
jmp 0x49d233
push 0
call fcn.004347c6
push 0
mov ecx, eax
call fcn.004347c6
push 0x13
xor ecx, ecx
push ecx
mov eax, dword [eax]
push ecx
push ecx
push ecx
push 0xfffffffffffffffe
push dword [eax]
call dword [sym.imp.USER32.dll_SetWindowPos]
cmp byte [0x52ff61], 0
mov eax, dword [esi]
je 0x49d991
cmp eax, dword [esi + 4]
je 0x49d8dd
push 5
mov ecx, esi
call fcn.004347c6
mov ecx, dword [eax]
cmp ecx, dword [eax + 4]
je 0x49d8dd
push 5
mov ecx, esi
call fcn.004347c6
xor edi, edi
mov ecx, eax
push edi
call fcn.004347c6
mov ecx, dword [eax]
cmp ecx, dword [eax + 4]
je 0x49d8dd
push 5
mov ecx, esi
call fcn.004347c6
push edi
mov ecx, eax
call fcn.004347c6
push edi
push 0x457f2c
mov eax, dword [eax]
push dword [eax]
call dword [sym.imp.USER32.dll_EnumChildWindows]
push edi
push dword [ebx + 0x68]
call dword [sym.imp.USER32.dll_EnableWindow]
xor ebx, ebx
inc ebx
mov eax, dword [esi]
push 3
pop edi
cmp eax, dword [esi + 4]
je 0x49d910
push edi
mov ecx, esi
call fcn.004347c6
mov ecx, dword [eax]
cmp ecx, dword [eax + 4]
je 0x49d910
push edi
mov ecx, esi
call fcn.004347c6
push ebx
mov ecx, eax
call fcn.004347c6
mov ecx, dword [eax]
cmp ecx, dword [eax + 4]
jne 0x49d977
mov eax, dword [esi]
cmp eax, dword [esi + 4]
je 0x49d93e
push edi
mov ecx, esi
call fcn.004347c6
mov ecx, dword [eax]
cmp ecx, dword [eax + 4]
je 0x49d93e
push edi
mov ecx, esi
call fcn.004347c6
push 2
mov ecx, eax
call fcn.004347c6
mov ecx, dword [eax]
cmp ecx, dword [eax + 4]
jne 0x49d977
mov eax, dword [esi]
cmp eax, dword [esi + 4]
je 0x49da02
push edi
mov ecx, esi
call fcn.004347c6
mov edx, dword [eax]
cmp edx, dword [eax + 4]
je 0x49da02
push edi
mov ecx, esi
call fcn.004347c6
push edi
mov ecx, eax
call fcn.004347c6
mov ecx, dword [eax]
cmp ecx, dword [eax + 4]
je 0x49da02
call fcn.0041e77e
mov ecx, dword [eax]
call fcn.00476edb
push 0
push 0
push 0x869
jmp 0x49da17
cmp eax, dword [esi + 4]
je 0x49d8dd
push 5
mov ecx, esi
call fcn.004347c6
mov ecx, dword [eax]
cmp ecx, dword [eax + 4]
je 0x49d8dd
push 5
mov ecx, esi
call fcn.004347c6
push 0
mov ecx, eax
call fcn.004347c6
mov ecx, dword [eax]
cmp ecx, dword [eax + 4]
je 0x49d8dd
push 5
mov ecx, esi
call fcn.004347c6
push 0
mov ecx, eax
call fcn.004347c6
xor ebx, ebx
inc ebx
push ebx
mov eax, dword [eax]
push 0x457f2c
push dword [eax]
call dword [sym.imp.USER32.dll_EnumChildWindows]
mov eax, dword [ebp - 0x20]
push ebx
push dword [eax + 0x68]
call dword [sym.imp.USER32.dll_EnableWindow]
jmp 0x49d8e0
call fcn.0041e77e
mov ecx, dword [eax]
call fcn.00476edb
push 0
push 0
push 0x86a
push eax
call dword [sym.imp.USER32.dll_PostMessageW]
call fcn.0041e77e
mov ecx, dword [eax]
call fcn.00476edb
mov edi, dword [sym.imp.USER32.dll_IsIconic]
push eax
call edi
test eax, eax
jne 0x49da95
call fcn.0041e77e
mov ecx, dword [eax]
call fcn.00476edb
mov ebx, dword [sym.imp.USER32.dll_IsWindowVisible]
push eax
call ebx
test eax, eax
je 0x49da9b
mov eax, dword [0x52fa60]
test eax, eax
je 0x49db20
push eax
call edi
test eax, eax
jne 0x49da74
push dword [0x52fa60]
call ebx
test eax, eax
jne 0x49db20
push 5
push dword [0x52fa60]
call dword [sym.imp.USER32.dll_ShowWindow]
call fcn.0041e77e
mov ecx, dword [eax]
call fcn.00476edb
push 0x460
jmp 0x49db0f
mov ebx, dword [sym.imp.USER32.dll_IsWindowVisible]
call fcn.0041e77e
mov ecx, dword [eax]
call fcn.00476edb
push eax
call edi
test eax, eax
jne 0x49dac1
call fcn.0041e77e
mov ecx, dword [eax]
call fcn.00476edb
push eax
call ebx
test eax, eax
jne 0x49db20
mov esi, dword [0x52fa60]
test esi, esi
je 0x49db20
call fcn.0041e77e
mov eax, dword [eax + 0xc]
cmp dword [eax + 0x48], esi
je 0x49db20
push dword [0x52fa60]
call edi
test eax, eax
jne 0x49db20
push dword [0x52fa60]
call ebx
test eax, eax
je 0x49db20
push 0
push dword [0x52fa60]
call dword [sym.imp.USER32.dll_ShowWindow]
call fcn.0041e77e
mov ecx, dword [eax]
call fcn.00476edb
push 0x45f
push 0xc8
push 0x867
push eax
call dword [sym.imp.USER32.dll_PostMessageW]
mov ecx, dword [ebp - 0xc]
pop edi
pop esi
mov dword fs:[0], ecx
pop ebx
mov esp, ebp
pop ebp
ret