Function at 0x5128dc
Capabilities:
Hide graphical window

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x1c
mov eax, dword [0x5f4274]
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 [0x59ca78]
mov ecx, ebx
call esi
test eax, eax
je 0x512c1d
mov eax, dword [ebx + 0x300]
push edi
lea edi, [ebx + 0x20]
test eax, eax
je 0x512926
push eax
push dword [edi]
call dword [sym.imp.USER32.dll_KillTimer]
mov eax, dword [ebx + 0x2fc]
xor esi, esi
test eax, eax
je 0x512941
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 0x512973
cmp dword [0x5fce1c], esi
jne 0x512973
call fcn.0044430b
cmp dword [eax + 0x180], esi
je 0x51299f
mov eax, dword [ebx]
mov esi, dword [eax + 0x164]
mov ecx, esi
call dword [0x59ca78]
mov ecx, ebx
call esi
test eax, eax
je 0x512993
mov eax, dword [ebp - 8]
sub eax, dword [ebp - 0x10]
jmp 0x512999
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 0x5129e3
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 [0x59ca78]
mov ecx, ebx
call esi
push edi
mov ecx, ebx
call fcn.00424960
push edi
push dword [ebx + 0x350]
call dword [sym.imp.USER32.dll_ShowWindow]
jmp 0x512c1c
mov esi, dword [eax + 0x19c]
mov ecx, esi
call dword [0x59ca78]
mov ecx, ebx
call esi
push eax
mov ecx, 0x5f3bdc
call fcn.004db259
mov esi, dword [ebp + 8]
mov dword [ebp - 0x18], eax
test esi, esi
je 0x512a3d
push 0
push ebx
mov ecx, eax
call fcn.004c80b4
push 0
mov ecx, ebx
call fcn.0050f9ec
mov ecx, dword [ebp - 0x18]
push eax
call fcn.004c63e3
push 5
mov ecx, ebx
call fcn.00424960
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 0x512a66
mov ecx, dword [ebp - 0x18]
push 1
push 0
call fcn.004c6a3d
xor eax, eax
test esi, esi
push 0
push dword [0x5f3e40]
setne al
add eax, 0xec01
push eax
push dword [edi]
call dword [sym.imp.USER32.dll_SetTimer]
mov dword [ebx + 0x300], eax
cmp dword [0x5fce1c], 0
jne 0x512c0b
call fcn.0044430b
cmp dword [eax + 0x180], 0
jne 0x512c0b
mov eax, dword [ebx + 0x328]
cmp eax, 1
jne 0x512b3f
mov eax, dword [ebx]
mov esi, dword [eax + 0x19c]
mov ecx, esi
call dword [0x59ca78]
mov ecx, ebx
call esi
lea ecx, [ebp - 0x14]
push ecx
mov ecx, eax
call fcn.0042bb67
mov eax, dword [ebx]
mov esi, dword [eax + 0x194]
mov ecx, esi
call dword [0x59ca78]
mov ecx, ebx
call esi
mov edi, 0xa000
test edi, eax
je 0x512afb
mov eax, dword [ebp - 8]
sub eax, dword [ebp - 0x10]
jmp 0x512b01
mov eax, dword [ebp - 0xc]
sub eax, dword [ebp - 0x14]
cdq
idiv dword [0x5f3e3c]
cmp eax, 1
jl 0x512bc7
mov eax, dword [ebx]
mov esi, dword [eax + 0x194]
mov ecx, esi
call dword [0x59ca78]
mov ecx, ebx
call esi
test edi, eax
je 0x512b34
mov eax, dword [ebp - 8]
sub eax, dword [ebp - 0x10]
jmp 0x512bfe
mov eax, dword [ebp - 0xc]
sub eax, dword [ebp - 0x14]
jmp 0x512bfe
cmp eax, 2
jne 0x512c0b
test esi, esi
jne 0x512b84
cmp dword [ebx + 0x31c], esi
jne 0x512b84
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 [0x59ca78]
mov ecx, edi
call esi
push ebx
mov ecx, eax
call fcn.0042bb67
mov ebx, edi
mov eax, dword [ebx]
mov esi, dword [eax + 0x194]
mov ecx, esi
call dword [0x59ca78]
mov ecx, ebx
call esi
mov edi, 0xa000
test edi, eax
je 0x512baf
mov eax, dword [ebx + 0x318]
sub eax, dword [ebx + 0x310]
jmp 0x512bbb
mov eax, dword [ebx + 0x314]
sub eax, dword [ebx + 0x30c]
cdq
idiv dword [0x5f3e3c]
cmp eax, 1
jge 0x512bcc
xor eax, eax
inc eax
jmp 0x512c05
mov eax, dword [ebx]
mov esi, dword [eax + 0x194]
mov ecx, esi
call dword [0x59ca78]
mov ecx, ebx
call esi
test edi, eax
je 0x512bf2
mov eax, dword [ebx + 0x318]
sub eax, dword [ebx + 0x310]
jmp 0x512bfe
mov eax, dword [ebx + 0x314]
sub eax, dword [ebx + 0x30c]
cdq
idiv dword [0x5f3e3c]
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.0055f63b
leave
ret 8