Function at 0x5749e4
Capabilities:
Hide graphical window

Disassembly:
push ebp
mov ebp, esp
add esp, 0xffffff68
push ebx
push esi
push edi
mov dword [ebp - 0xc], ecx
mov esi, edx
mov dword [ebp - 0x5c], eax
mov eax, dword [ebp - 0x5c]
cmp dword [eax + 0x270], 0
je 0x575327
mov eax, dword [ebp - 0x5c]
mov eax, dword [eax + 0x2cc]
call fcn.0045f528
push eax
call sub.user32.dll_IsIconic
test eax, eax
jne 0x575327
mov byte [0x630e74], 1
mov eax, dword [ebp - 0x5c]
mov eax, dword [eax + 0x2e0]
test eax, eax
je 0x574a7d
cmp dword [eax + 0x2c], 0
jne 0x574a43
call fcn.005c7534
mov eax, dword [ebp - 0x5c]
mov eax, dword [eax + 0x2e0]
mov eax, dword [eax + 0x2c]
mov dword [ebp - 0x78], eax
push 0
push 0
mov eax, dword [ebp - 0x78]
call fcn.0045f528
push eax
call sub.user32.dll_SetWindowRgn
test eax, eax
jne 0x574a6d
call fcn.00578db4
mov eax, dword [ebp - 0x5c]
mov eax, dword [eax + 0x2e0]
call fcn.005c6de4
jmp 0x574a9e
mov eax, dword [ebp - 0x5c]
call fcn.005af5b4
push 0
mov ecx, dword [0x63f124]
mov ecx, dword [ecx]
mov dl, 1
mov eax, dword [0x5a1fdc]
call fcn.00475014
mov dword [ebp - 0x78], eax
mov eax, dword [ebp - 0x5c]
mov eax, dword [eax + 0x270]
mov ebx, dword [eax + 0x5c]
test ebx, ebx
je 0x575327
mov eax, ebx
call fcn.0056f9bc
mov dword [ebp - 0x2c], eax
mov eax, dword [ebp - 0x5c]
cmp dword [eax + 0x2e0], 0
jne 0x574ad1
mov eax, dword [ebp - 0x5c]
cmp byte [eax + 0x3c], 0
jne 0x574add
mov eax, dword [ebp - 0x5c]
call fcn.005b2cd4
test al, al
je 0x574afd
push 0
lea edx, [ebp - 0x98]
mov eax, dword [ebp - 0x2c]
call fcn.0057b430
lea edx, [ebp - 0x98]
xor ecx, ecx
mov eax, dword [ebp - 0x2c]
call fcn.004ba7b8
mov eax, dword [ebp - 0x2c]
call fcn.00438268
call fcn.0043358c
push 0
mov eax, dword [ebp - 0x5c]
push eax
push 0
mov eax, dword [ebp - 0x5c]
mov edx, dword [eax + 0x2cc]
xor ecx, ecx
mov eax, dword [ebp - 0x2c]
call fcn.00573854
mov eax, dword [ebp - 0x5c]
cmp dword [eax + 0x2e0], 0
jne 0x574b6c
mov eax, dword [ebp - 0x5c]
cmp byte [eax + 0x3c], 0
je 0x574b47
mov edx, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x5c]
call fcn.005b2030
jmp 0x574b6c
push 0x1fffffff
push 0
lea edx, [ebp - 0x98]
mov eax, dword [ebp - 0x2c]
call fcn.0057b430
lea edx, [ebp - 0x98]
mov cl, 0xff
mov eax, dword [ebp - 0x2c]
call fcn.004baa68
cmp dword [ebp - 0x2c], 0
je 0x575327
mov eax, dword [ebp - 0x2c]
call fcn.00438268
call fcn.004339c4
lea edx, [ebp - 0x70]
mov eax, dword [ebp - 0x2c]
call fcn.0057b4f0
movzx eax, si
mov ecx, 0xc
xor edx, edx
div ecx
mov dword [ebp - 0x10], eax
mov dword [ebp - 0x68], 0x718
cmp dword [ebp - 0x10], 0
jle 0x574bb6
lea eax, [ebp - 0x60]
xor edx, edx
call fcn.0057be0c
jmp 0x574bc1
mov dl, byte [ebp - 0xc]
lea eax, [ebp - 0x60]
call fcn.0057be0c
xor esi, esi
xor eax, eax
mov dword [ebp - 0x74], eax
mov eax, dword [ebp - 0x5c]
cmp dword [eax + 0x2e0], 0
je 0x574cd7
lea edx, [ebp - 0x88]
mov eax, dword [ebp - 0x5c]
mov eax, dword [eax + 0x2cc]
call fcn.00456ef4
mov eax, dword [ebp - 0x5c]
mov eax, dword [eax + 0x2cc]
call fcn.0045f528
push eax
call sub.user32.dll_IsZoomed
test eax, eax
je 0x574c21
mov dl, 1
mov eax, dword [ebp - 0x5c]
call fcn.005a9684
mov ebx, eax
xor edx, edx
mov eax, dword [ebp - 0x5c]
call fcn.005a6894
add eax, 4
cmp ebx, eax
jl 0x574c25
xor ebx, ebx
jmp 0x574c27
mov bl, 1
mov eax, dword [ebp - 0x5c]
mov byte [eax + 0xe4], bl
test bl, bl
je 0x574c7c
mov eax, dword [ebp - 0x5c]
mov eax, dword [eax + 0x2cc]
call fcn.0045f528
mov edx, dword [ebp - 0x5c]
mov edx, dword [edx + 0x2e0]
xor ecx, ecx
call fcn.005a6774
mov esi, eax
lea edx, [ebp - 0x98]
mov eax, dword [ebp - 0x5c]
call fcn.005b5320
mov ebx, dword [ebp - 0x94]
mov eax, dword [ebp - 0x5c]
mov eax, dword [eax + 0x2e0]
call fcn.005a69ac
add ebx, eax
add esi, ebx
jmp 0x574c8c
mov eax, dword [ebp - 0x5c]
mov eax, dword [eax + 0x2e0]
call fcn.005c6bac
mov esi, eax
mov eax, dword [ebp - 0x5c]
mov eax, dword [eax + 0x2cc]
call fcn.0045f528
mov edx, dword [ebp - 0x5c]
mov edx, dword [edx + 0x2e0]
xor ecx, ecx
call fcn.005a6774
push eax
mov eax, dword [ebp - 0x5c]
mov eax, dword [eax + 0x2e0]
call fcn.005a6988
mov ebx, eax
pop eax
sub ebx, eax
lea edx, [ebp - 0x98]
mov eax, dword [ebp - 0x5c]
call fcn.005b5320
add ebx, dword [ebp - 0x98]
mov dword [ebp - 0x74], ebx
jmp 0x574d0b
lea eax, [ebp - 0x88]
push eax
mov eax, dword [ebp - 0x5c]
mov eax, dword [eax + 0x2cc]
call fcn.0045f528
push eax
call sub.user32.dll_GetWindowRect
mov eax, dword [ebp - 0x5c]
call fcn.005a78fc
mov eax, dword [ebp - 0x5c]
mov eax, dword [eax + 0x248]
mov edx, dword [ebp - 0x2c]
call fcn.005740b0
push 0xffffffffffffffec
mov eax, dword [ebp - 0x78]
call fcn.0045f528
push eax
call sub.user32.dll_GetWindowLongA
or eax, 0x8000000
push eax
push 0xffffffffffffffec
mov eax, dword [ebp - 0x78]
call fcn.0045f528
push eax
call sub.user32.dll_SetWindowLongA
test eax, eax
jne 0x574d3a
call fcn.00578db4
push 0xffffffffffffffec
mov eax, dword [ebp - 0x5c]
mov eax, dword [eax + 0x2cc]
call fcn.0045f528
push eax
call sub.user32.dll_GetWindowLongA
test al, 8
je 0x574da6
mov dl, 3
mov eax, dword [ebp - 0x78]
call fcn.0047729c
xor edx, edx
mov eax, dword [ebp - 0x78]
call fcn.00456ccc
xor edx, edx
mov eax, dword [ebp - 0x78]
call fcn.00456d00
push 0xffffffffffffffec
mov eax, dword [ebp - 0x78]
call fcn.0045f528
push eax
call sub.user32.dll_GetWindowLongA
or eax, 0x80000
push eax
push 0xffffffffffffffec
mov eax, dword [ebp - 0x78]
call fcn.0045f528
push eax
call sub.user32.dll_SetWindowLongA
test eax, eax
jne 0x574da1
call fcn.00578db4
or ebx, 0xffffffff
jmp 0x574dd2
mov eax, dword [ebp - 0x5c]
mov eax, dword [eax + 0x2cc]
test byte [eax + 0x358], 8
je 0x574dc2
mov dl, 3
mov eax, dword [ebp - 0x78]
call fcn.0047729c
mov eax, dword [ebp - 0x5c]
mov eax, dword [eax + 0x2cc]
call fcn.0045f528
mov ebx, eax
push 0xffffffffffffffec
mov eax, dword [ebp - 0x78]
call fcn.0045f528
push eax
call sub.user32.dll_GetWindowLongA
test eax, 0x80000
jne 0x574e18
push 0xffffffffffffffec
mov eax, dword [ebp - 0x78]
call fcn.0045f528
push eax
call sub.user32.dll_GetWindowLongA
or eax, 0x80000
push eax
push 0xffffffffffffffec
mov eax, dword [ebp - 0x78]
call fcn.0045f528
push eax
call sub.user32.dll_SetWindowLongA
test eax, eax
jne 0x574e18
call fcn.00578db4
lea eax, [ebp - 0x60]
push eax
push 0
mov eax, dword [ebp - 0x78]
call fcn.0045f528
lea ecx, [ebp - 0x70]
mov edx, dword [ebp - 0x2c]
call fcn.005639bc
mov eax, dword [ebp - 0x2c]
mov edx, dword [eax]
call dword [edx + 0x2c]
push eax
mov eax, dword [ebp - 0x2c]
mov edx, dword [eax]
call dword [edx + 0x20]
push eax
mov ecx, dword [ebp - 0x84]
sub ecx, esi
mov edx, dword [ebp - 0x88]
sub edx, dword [ebp - 0x74]
mov eax, dword [ebp - 0x78]
mov edi, dword [eax]
call dword [edi + 0x88]
push 0x65b
push 0
push 0
push 0
push 0
push 0
mov eax, dword [ebp - 0x78]
call fcn.0045f528
push eax
call sub.user32.dll_SetWindowPos
test eax, eax
jne 0x574e85
call fcn.00578db4
push 4
mov eax, dword [ebp - 0x78]
call fcn.0045f528
push eax
call sub.user32.dll_ShowWindow
mov eax, dword [ebp - 0x68]
push eax
mov eax, dword [ebp - 0x6c]
push eax
mov eax, dword [ebp - 0x70]
push eax
mov eax, dword [ebp - 0x78]
call fcn.00475c04
push eax
mov eax, dword [ebp - 0x78]
call fcn.00475be4
push eax
push ebx
mov eax, dword [ebp - 0x78]
call fcn.0045f528
push eax
call sub.user32.dll_SetWindowPos
test eax, eax
jne 0x574ecb
call fcn.00578db4
lea eax, [ebp - 0x70]
call fcn.0056f9b0
mov dword [ebp - 0x64], eax
push 0
lea edx, [ebp - 0x98]
mov eax, dword [ebp - 0x64]
call fcn.0057b430
lea eax, [ebp - 0x98]
push eax
mov eax, dword [ebp - 0x64]
call fcn.00438268
call fcn.00433af0
xor ecx, ecx
pop edx
call fcn.005686e0
push 3
mov eax, dword [ebp - 0x64]
call fcn.00438268
call fcn.00433af0
push eax
call sub.gdi32.dll_SetStretchBltMode
cmp dword [ebp - 0x10], 0
jle 0x574f7b
push ebp
call fcn.005742bc
pop ecx
xor ebx, ebx
cmp ebx, dword [ebp - 0x10]
jg 0x574f75
push ebp
call fcn.00574544
pop ecx
call sub.KERNEL32.DLL_GetTickCount
mov edi, eax
lea eax, [ebp - 0x60]
push eax
push 0
mov eax, dword [ebp - 0x78]
call fcn.0045f528
lea ecx, [ebp - 0x70]
mov edx, dword [ebp - 0x64]
call fcn.005639bc
push ebp
call fcn.0057481c
pop ecx
test al, al
je 0x574f75
inc ebx
cmp dword [ebp - 0x10], 0
jle 0x574f70
mov edx, 0xc
mov eax, edi
call fcn.0057bdc0
cmp ebx, dword [ebp - 0x10]
jle 0x574f2b
mov al, byte [ebp - 0xc]
mov byte [ebp - 0x5e], al
mov eax, dword [ebp - 0x68]
or eax, 4
push eax
mov eax, dword [ebp - 0x6c]
push eax
mov eax, dword [ebp - 0x70]
push eax
mov eax, dword [ebp - 0x84]
sub eax, esi
push eax
mov eax, dword [ebp - 0x88]
sub eax, dword [ebp - 0x74]
push eax
push 0
mov eax, dword [ebp - 0x78]
call fcn.0045f528
push eax
call sub.user32.dll_SetWindowPos
test eax, eax
jne 0x574fb6
call fcn.00578db4
lea eax, [ebp - 0x60]
push eax
push 0
mov eax, dword [ebp - 0x78]
call fcn.0045f528
lea ecx, [ebp - 0x70]
mov edx, dword [ebp - 0x2c]
call fcn.005639bc
lea eax, [ebp - 0x64]
call fcn.004126f4
cmp dword [ebp - 0x5c], 0
je 0x575327
mov eax, dword [ebp - 0x5c]
mov byte [eax + 0x2ca], 0
mov eax, dword [ebp - 0x5c]
mov eax, dword [eax + 0x2cc]
call fcn.0045f528
xor ecx, ecx
mov dl, 1
call fcn.00575d3c
mov eax, dword [ebp - 0x5c]
mov eax, dword [eax + 0x2cc]
movzx eax, byte [eax + 0x273]
mov eax, dword [eax*4 + 0x630e84]
push eax
mov eax, dword [ebp - 0x5c]
mov eax, dword [eax + 0x2cc]
call fcn.0045f528
push eax
call sub.user32.dll_ShowWindow
push 0x61b
push 0
push 0
push 0
push 0
mov eax, dword [ebp - 0x78]
call fcn.0045f528
push eax
mov eax, dword [ebp - 0x5c]
mov eax, dword [eax + 0x2cc]
call fcn.0045f528
push eax
call sub.user32.dll_SetWindowPos
test eax, eax
jne 0x575061
call fcn.00578db4
mov eax, dword [ebp - 0x5c]
cmp dword [eax + 0x2e0], 0
je 0x575079
mov cl, 1
mov dl, 1
mov eax, dword [ebp - 0x5c]
call fcn.005a7c40
mov eax, dword [0x63f290]
cmp byte [eax], 0
je 0x5750b5
call fcn.005cb32c
test al, al
jne 0x5750b5
call fcn.0057aba0
test al, al
je 0x5750b5
cmp dword [0x645528], 0
je 0x5750b5
push 0
mov eax, dword [ebp - 0x78]
call fcn.0045f528
xor ecx, ecx
xor edx, edx
call fcn.005a4e74
mov ebx, eax
jmp 0x5750b7
xor ebx, ebx
push ebp
call fcn.00574930
pop ecx
mov byte [0x630e74], 0
mov eax, dword [ebp - 0x5c]
mov eax, dword [eax + 0x2e0]
test eax, eax
je 0x5750d6
mov byte [eax + 0x26], 1
mov eax, dword [0x63f290]
cmp byte [eax], 0
je 0x5750fe
call fcn.005cb32c
test al, al
je 0x5750fe
push 0
mov eax, dword [ebp - 0x78]
call fcn.0045f528
xor ecx, ecx
xor edx, edx
call fcn.005a4e74
mov ebx, eax
mov eax, dword [ebp - 0x5c]
mov eax, dword [eax + 0x2cc]
call fcn.0045f528
mov edx, eax
mov eax, dword [ebp - 0x5c]
mov eax, dword [eax + 0x270]
call fcn.005740e4
mov eax, dword [ebp - 0x5c]
mov eax, dword [eax + 0x270]
cmp byte [eax + 0x35], 0
jne 0x575139
mov eax, dword [ebp - 0x5c]
mov eax, dword [eax + 0x2cc]
call fcn.00577068
mov eax, dword [0x63edcc]
cmp dword [eax], 6
jne 0x575188
mov eax, dword [0x63f1d0]
cmp dword [eax], 0
jne 0x575188
push 0xfffffffffffffff0
mov eax, dword [ebp - 0x5c]
mov eax, dword [eax + 0x2cc]
call fcn.0045f528
push eax
call sub.user32.dll_GetWindowLongA
or eax, 0x10000000
push eax
push 0xfffffffffffffff0
mov eax, dword [ebp - 0x5c]
mov eax, dword [eax + 0x2cc]
call fcn.0045f528
push eax
call sub.user32.dll_SetWindowLongA
test eax, eax
jne 0x575188
call fcn.00578db4
mov eax, dword [ebp - 0x5c]
cmp dword [eax + 0x2e0], 0
je 0x5751a0
mov cl, 1
mov dl, 1
mov eax, dword [ebp - 0x5c]
call fcn.005a7c40
push 0x585
push 0
push 0
mov eax, dword [ebp - 0x5c]
mov eax, dword [eax + 0x2cc]
call fcn.0045f528
push eax
call sub.user32.dll_RedrawWindow
test eax, eax
jne 0x5751c6
call fcn.00578db4
mov eax, dword [ebp - 0x5c]
mov eax, dword [eax + 0x2e0]
test eax, eax
je 0x575203
mov byte [eax + 0x26], 0
push 0
mov eax, dword [ebp - 0x5c]
mov eax, dword [eax + 0x2e0]
xor ecx, ecx
xor edx, edx
call fcn.005c72ec
push eax
mov eax, dword [ebp - 0x78]
call fcn.0045f528
push eax
call sub.user32.dll_SetWindowRgn
test eax, eax
jne 0x575203
call fcn.00578db4
mov eax, dword [ebp - 0x5c]
mov eax, dword [eax + 0x94]
cmp byte [eax + 8], 0
je 0x575227
mov ecx, 0x57427c
mov eax, dword [ebp - 0x5c]
mov eax, dword [eax + 0x2cc]
xor edx, edx
call fcn.00573310
lea eax, [ebp - 0x2c]
call fcn.004126f4
push 0x61b
push 0
push 0
push 0
push 0
mov eax, dword [ebp - 0x5c]
mov eax, dword [eax + 0x2cc]
call fcn.0045f528
push eax
mov eax, dword [ebp - 0x78]
call fcn.0045f528
push eax
call sub.user32.dll_SetWindowPos
test eax, eax
jne 0x575262
call fcn.00578db4
test ebx, ebx
je 0x575274
push 0x14
call sub.KERNEL32.DLL_Sleep_1
mov eax, ebx
call fcn.004048a4
mov eax, dword [ebp - 0x5c]
cmp dword [eax + 0x2e0], 0
jne 0x57528a
lea eax, [ebp - 0x78]
call fcn.004126f4
jmp 0x575309
push ebp
call fcn.00574930
pop ecx
push 0
mov eax, dword [ebp - 0x5c]
mov eax, dword [eax + 0x2e0]
xor ecx, ecx
xor edx, edx
call fcn.005c72ec
push eax
mov eax, dword [ebp - 0x78]
call fcn.0045f528
push eax
call sub.user32.dll_SetWindowRgn
test eax, eax
jne 0x5752bd
call fcn.00578db4
mov eax, dword [ebp - 0x5c]
mov eax, dword [eax + 0x270]
call fcn.0059bc24
cmp byte [eax + 0xa189], 0
je 0x575309
mov eax, dword [ebp - 0x5c]
mov eax, dword [eax + 0x270]
call fcn.0059bc24
mov eax, dword [eax + 0x80]
cmp byte [eax + 6], 0
je 0x575309
call fcn.005a6ae0
test al, al
je 0x575309
mov eax, dword [ebp - 0x5c]
mov eax, dword [eax + 0x2e0]
mov cl, 0xff
mov dl, 1
call fcn.005c5f10
mov eax, dword [ebp - 0x5c]
cmp word [eax + 0xc2], 0
je 0x575327
mov ebx, dword [ebp - 0x5c]
xor edx, edx
mov eax, dword [ebx + 0xc4]
call dword [ebx + 0xc0]
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4