Function at 0x511b59
Capabilities:
Hide graphical window

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x1c
mov eax, dword [0x5f3e24]
xor eax, ebp
mov dword [ebp - 4], eax
push ebx
mov ebx, ecx
push esi
mov dword [ebp - 0x1c], ebx
mov eax, dword [ebx]
mov esi, dword [eax + 0x1dc]
mov ecx, esi
call dword [0x5a0a04]
mov ecx, ebx
call esi
test eax, eax
je 0x511e9a
mov eax, dword [ebx + 0x300]
push edi
lea edi, [ebx + 0x20]
test eax, eax
je 0x511ba3
push eax
push dword [edi]
call dword [sym.imp.USER32.dll_KillTimer]
mov eax, dword [ebx + 0x2fc]
xor esi, esi
test eax, eax
je 0x511bbe
push eax
push dword [edi]
call dword [sym.imp.USER32.dll_KillTimer]
mov dword [ebx + 0x2fc], esi
lea eax, [ebp - 0x14]
mov dword [ebp - 0x14], esi
push eax
push dword [edi]
mov dword [ebp - 0x10], esi
mov dword [ebp - 0xc], esi
mov dword [ebp - 8], esi
call dword [sym.imp.USER32.dll_GetWindowRect]
cmp dword [ebp + 0xc], esi
je 0x511bf0
cmp dword [0x5fc93c], esi
jne 0x511bf0
call fcn.00449012
cmp dword [eax + 0x180], esi
je 0x511c1c
mov eax, dword [ebx]
mov esi, dword [eax + 0x164]
mov ecx, esi
call dword [0x5a0a04]
mov ecx, ebx
call esi
test eax, eax
je 0x511c10
mov eax, dword [ebp - 8]
sub eax, dword [ebp - 0x10]
jmp 0x511c16
mov eax, dword [ebp - 0xc]
sub eax, dword [ebp - 0x14]
mov dword [ebx + 0x308], eax
cmp dword [ebp + 0xc], 0
mov eax, dword [ebx]
jne 0x511c60
lea edi, [ebx + 0x30c]
lea esi, [ebp - 0x14]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov esi, dword [eax + 0x39c]
xor edi, edi
push edi
mov ecx, esi
call dword [0x5a0a04]
mov ecx, ebx
call esi
push edi
mov ecx, ebx
call fcn.00436aca
push edi
push dword [ebx + 0x350]
call dword [sym.imp.USER32.dll_ShowWindow]
jmp 0x511e99
mov esi, dword [eax + 0x19c]
mov ecx, esi
call dword [0x5a0a04]
mov ecx, ebx
call esi
push eax
mov ecx, 0x5f377c
call fcn.004d9448
mov esi, dword [ebp + 8]
mov dword [ebp - 0x18], eax
test esi, esi
je 0x511cba
push 0
push ebx
mov ecx, eax
call fcn.004c620e
push 0
mov ecx, ebx
call fcn.0050ec69
mov ecx, dword [ebp - 0x18]
push eax
call fcn.004c453d
push 5
mov ecx, ebx
call fcn.00436aca
push 5
push dword [ebx + 0x350]
call dword [sym.imp.USER32.dll_ShowWindow]
push dword [edi]
call dword [sym.imp.USER32.dll_BringWindowToTop]
push dword [ebx + 0x350]
call dword [sym.imp.USER32.dll_BringWindowToTop]
cmp dword [ebx + 0x328], 1
jne 0x511ce3
mov ecx, dword [ebp - 0x18]
push 1
push 0
call fcn.004c4b97
xor eax, eax
test esi, esi
push 0
push dword [0x5f39e0]
setne al
add eax, 0xec01
push eax
push dword [edi]
call dword [sym.imp.USER32.dll_SetTimer]
mov dword [ebx + 0x300], eax
cmp dword [0x5fc93c], 0
jne 0x511e88
call fcn.00449012
cmp dword [eax + 0x180], 0
jne 0x511e88
mov eax, dword [ebx + 0x328]
cmp eax, 1
jne 0x511dbc
mov eax, dword [ebx]
mov esi, dword [eax + 0x19c]
mov ecx, esi
call dword [0x5a0a04]
mov ecx, ebx
call esi
lea ecx, [ebp - 0x14]
push ecx
mov ecx, eax
call fcn.00437d2b
mov eax, dword [ebx]
mov esi, dword [eax + 0x194]
mov ecx, esi
call dword [0x5a0a04]
mov ecx, ebx
call esi
mov edi, 0xa000
test edi, eax
je 0x511d78
mov eax, dword [ebp - 8]
sub eax, dword [ebp - 0x10]
jmp 0x511d7e
mov eax, dword [ebp - 0xc]
sub eax, dword [ebp - 0x14]
cdq
idiv dword [0x5f39dc]
cmp eax, 1
jl 0x511e44
mov eax, dword [ebx]
mov esi, dword [eax + 0x194]
mov ecx, esi
call dword [0x5a0a04]
mov ecx, ebx
call esi
test edi, eax
je 0x511db1
mov eax, dword [ebp - 8]
sub eax, dword [ebp - 0x10]
jmp 0x511e7b
mov eax, dword [ebp - 0xc]
sub eax, dword [ebp - 0x14]
jmp 0x511e7b
cmp eax, 2
jne 0x511e88
test esi, esi
jne 0x511e01
cmp dword [ebx + 0x31c], esi
jne 0x511e01
add ebx, 0x30c
lea esi, [ebp - 0x14]
mov edi, ebx
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov edi, dword [ebp - 0x1c]
mov eax, dword [edi]
mov esi, dword [eax + 0x19c]
mov ecx, esi
call dword [0x5a0a04]
mov ecx, edi
call esi
push ebx
mov ecx, eax
call fcn.00437d2b
mov ebx, edi
mov eax, dword [ebx]
mov esi, dword [eax + 0x194]
mov ecx, esi
call dword [0x5a0a04]
mov ecx, ebx
call esi
mov edi, 0xa000
test edi, eax
je 0x511e2c
mov eax, dword [ebx + 0x318]
sub eax, dword [ebx + 0x310]
jmp 0x511e38
mov eax, dword [ebx + 0x314]
sub eax, dword [ebx + 0x30c]
cdq
idiv dword [0x5f39dc]
cmp eax, 1
jge 0x511e49
xor eax, eax
inc eax
jmp 0x511e82
mov eax, dword [ebx]
mov esi, dword [eax + 0x194]
mov ecx, esi
call dword [0x5a0a04]
mov ecx, ebx
call esi
test edi, eax
je 0x511e6f
mov eax, dword [ebx + 0x318]
sub eax, dword [ebx + 0x310]
jmp 0x511e7b
mov eax, dword [ebx + 0x314]
sub eax, dword [ebx + 0x30c]
cdq
idiv dword [0x5f39dc]
mov dword [ebx + 0x308], eax
and dword [ebx + 0x304], 0
mov dword [ebx + 0x31c], 1
pop edi
mov ecx, dword [ebp - 4]
pop esi
xor ecx, ebp
pop ebx
call fcn.00562bba
leave
ret 8