Function at 0x506dc6
Capabilities:
Hide graphical window

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x18
mov eax, dword [0x5e5044]
xor eax, ebp
mov dword [ebp - 4], eax
push ebx
mov ebx, ecx
mov eax, dword [ebx]
call dword [eax + 0x1dc]
test eax, eax
je 0x507093
mov eax, dword [ebx + 0x300]
push esi
mov esi, dword [sym.imp.USER32.dll_KillTimer]
test eax, eax
je 0x506e00
push eax
push dword [ebx + 0x20]
call esi
mov eax, dword [ebx + 0x2fc]
push edi
xor edi, edi
test eax, eax
je 0x506e19
push eax
push dword [ebx + 0x20]
call esi
mov dword [ebx + 0x2fc], edi
lea eax, [ebp - 0x14]
mov dword [ebp - 0x14], edi
push eax
push dword [ebx + 0x20]
mov dword [ebp - 0x10], edi
mov dword [ebp - 0xc], edi
mov dword [ebp - 8], edi
call dword [sym.imp.USER32.dll_GetWindowRect]
mov esi, dword [ebp + 0xc]
test esi, esi
je 0x506e4e
cmp dword [0x5ef590], edi
jne 0x506e4e
call fcn.0042f126
cmp dword [eax + 0x180], edi
je 0x506e70
mov eax, dword [ebx]
mov ecx, ebx
call dword [eax + 0x164]
test eax, eax
je 0x506e64
mov eax, dword [ebp - 8]
sub eax, dword [ebp - 0x10]
jmp 0x506e6a
mov eax, dword [ebp - 0xc]
sub eax, dword [ebp - 0x14]
mov dword [ebx + 0x308], eax
mov eax, dword [ebx]
mov ecx, ebx
test esi, esi
jne 0x506ea8
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]
xor esi, esi
push esi
call dword [eax + 0x39c]
push esi
mov ecx, ebx
call fcn.004238e2
push esi
push dword [ebx + 0x350]
call dword [sym.imp.USER32.dll_ShowWindow]
jmp 0x507091
call dword [eax + 0x19c]
push eax
mov ecx, 0x5e4b38
call fcn.004eae51
mov edi, dword [ebp + 8]
mov esi, eax
mov dword [ebp - 0x18], esi
test edi, edi
je 0x506ef7
push 0
push ebx
mov ecx, esi
call fcn.004da2e1
push 0
mov ecx, ebx
call fcn.005045b6
push eax
mov ecx, esi
call fcn.004d89b7
push 5
mov ecx, ebx
call fcn.004238e2
push 5
push dword [ebx + 0x350]
call dword [sym.imp.USER32.dll_ShowWindow]
push dword [ebx + 0x20]
mov esi, dword [sym.imp.USER32.dll_BringWindowToTop]
call esi
push dword [ebx + 0x350]
call esi
cmp dword [ebx + 0x328], 1
jne 0x506f1f
mov ecx, dword [ebp - 0x18]
push 1
push 0
call fcn.004d8f24
xor eax, eax
test edi, edi
push 0
push dword [0x5e4c18]
setne al
add eax, 0xec01
push eax
push dword [ebx + 0x20]
call dword [sym.imp.USER32.dll_SetTimer]
mov dword [ebx + 0x300], eax
cmp dword [0x5ef590], 0
jne 0x507080
call fcn.0042f126
cmp dword [eax + 0x180], 0
jne 0x507080
mov eax, dword [ebx + 0x328]
cmp eax, 1
jne 0x506fd7
lea eax, [ebp - 0x14]
mov ecx, ebx
push eax
mov eax, dword [ebx]
call dword [eax + 0x19c]
mov ecx, eax
call fcn.00425256
mov eax, dword [ebx]
mov ecx, ebx
call dword [eax + 0x194]
mov esi, 0xa000
test esi, eax
je 0x506f9d
mov eax, dword [ebp - 8]
sub eax, dword [ebp - 0x10]
jmp 0x506fa3
mov eax, dword [ebp - 0xc]
sub eax, dword [ebp - 0x14]
cdq
idiv dword [0x5e4c14]
cmp eax, 1
jl 0x507046
mov eax, dword [ebx]
mov ecx, ebx
call dword [eax + 0x194]
test esi, eax
je 0x506fcc
mov eax, dword [ebp - 8]
sub eax, dword [ebp - 0x10]
jmp 0x507073
mov eax, dword [ebp - 0xc]
sub eax, dword [ebp - 0x14]
jmp 0x507073
cmp eax, 2
jne 0x507080
test edi, edi
jne 0x50700d
cmp dword [ebx + 0x31c], edi
jne 0x50700d
lea eax, [ebx + 0x30c]
mov ecx, ebx
mov edi, eax
lea esi, [ebp - 0x14]
push eax
mov eax, dword [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]
call dword [eax + 0x19c]
mov ecx, eax
call fcn.00425256
mov eax, dword [ebx]
mov ecx, ebx
call dword [eax + 0x194]
mov esi, 0xa000
test esi, eax
je 0x50702e
mov eax, dword [ebx + 0x318]
sub eax, dword [ebx + 0x310]
jmp 0x50703a
mov eax, dword [ebx + 0x314]
sub eax, dword [ebx + 0x30c]
cdq
idiv dword [0x5e4c14]
cmp eax, 1
jge 0x50704b
xor eax, eax
inc eax
jmp 0x50707a
mov eax, dword [ebx]
mov ecx, ebx
call dword [eax + 0x194]
test esi, eax
je 0x507067
mov eax, dword [ebx + 0x318]
sub eax, dword [ebx + 0x310]
jmp 0x507073
mov eax, dword [ebx + 0x314]
sub eax, dword [ebx + 0x30c]
cdq
idiv dword [0x5e4c14]
mov dword [ebx + 0x308], eax
and dword [ebx + 0x304], 0
mov dword [ebx + 0x31c], 1
pop edi
pop esi
mov ecx, dword [ebp - 4]
xor ecx, ebp
pop ebx
call fcn.0054c90d
mov esp, ebp
pop ebp
ret 8