Function at 0x4143c0
Capabilities:
Hide graphical window

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x4ec8fb
mov eax, dword fs:[0]
push eax
sub esp, 0xc
push ebx
push esi
push edi
mov eax, dword [0x53e01c]
xor eax, ebp
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov edi, ecx
mov eax, dword [edi + 0x6a0]
cmp eax, 3
je 0x4144bb
cmp eax, 4
je 0x4144bb
cmp eax, 5
je 0x4144bb
push 0x100
call fcn.004c1f39
mov ebx, eax
add esp, 4
test ebx, ebx
je 0x414675
mov dword [ebp - 0x14], ebx
mov dword [ebp - 4], 0
lea esi, [ebx + 0x20]
mov eax, dword [sym.imp.USER32.dll_DefWindowProcW]
mov dword [ebx + 4], 0
mov dword [ebx + 0x14], 0
mov dword [ebx + 0x18], 0
mov dword [ebx + 0x1c], 0
mov dword [esi], eax
mov byte [ebp - 4], 1
push ecx
lea ecx, [ebx + 0x28]
mov dword [ebx], vtable.AnimationWindow.0
mov dword [ebx + 0x24], 0
call fcn.004084e0
mov dword [ebp - 4], 0xffffffff
push dword [ebp - 0x14]
mov dword [ebx + 0xf8], 0
push esi
push 0x53fa00
mov dword [ebx + 0xfc], 0
call fcn.004092f0
add esp, 8
movzx eax, ax
mov ecx, ebx
push eax
push 0
push 0x80088
push 0x80000000
push 0
push 0
push 0
call fcn.004091a0
mov ebx, eax
xor esi, esi
jmp 0x4144c3
mov ebx, dword [edi + 4]
mov esi, 1
mov eax, dword [0x5552f8]
mov dword [edi + 0x7e8], 0
test al, 1
jne 0x414503
or eax, 1
mov dword [0x5552f8], eax
mov dword [ebp - 4], 2
call fcn.00442480
push 0x4f1ff0
call fcn.0045b82b
mov dword [ebp - 4], 0xffffffff
add esp, 4
mov eax, dword [0x5552f8]
mov dword [0x555454], ebx
test al, 1
jne 0x414535
or eax, 1
mov dword [0x5552f8], eax
mov dword [ebp - 4], 3
call fcn.00442480
push 0x4f1ff0
call fcn.0045b82b
add esp, 4
mov dword [ebp - 4], 0xffffffff
push 2
mov ecx, 0x555300
call fcn.00446510
test eax, eax
je 0x41463f
mov dword [edi + 0x7ec], 0x32
test esi, esi
je 0x4145e3
mov esi, dword [edi + 0x690]
test esi, esi
je 0x4145c8
mov ecx, dword [esi + 0x60]
cmp ecx, 0x32
je 0x4145c8
mov ebx, dword [esi + 0x5c]
mov eax, 0x32
sub eax, ecx
mov byte [esi + 0x69], 1
mov edx, eax
shr edx, 0x1f
mov dword [ebp - 0x14], edx
mov byte [esi + 0x68], dl
cdq
xor eax, edx
sub eax, edx
cdq
idiv ebx
mov dword [esi + 0x64], eax
test edx, edx
je 0x414599
inc eax
mov dword [esi + 0x64], eax
mov eax, dword [esi + 0x58]
mov edx, ebx
neg edx
cmp byte [ebp - 0x14], 0
cmove edx, ebx
add edx, ecx
mov dword [esi + 0x60], edx
cmp edx, eax
jg 0x4145b9
cmp edx, dword [esi + 0x54]
mov eax, edx
cmovl eax, dword [esi + 0x54]
mov dword [esi + 0x60], eax
mov ecx, esi
mov eax, dword [esi]
push 0
call dword [eax + 0x24]
dec dword [esi + 0x64]
push 6
mov ecx, edi
call fcn.00412160
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
cmp dword [edi + 0x6a0], 2
jne 0x4145fb
push dword [edi + 4]
call dword [sym.imp.USER32.dll_GetParent]
push eax
call fcn.00414690
mov esi, dword [sym.imp.USER32.dll_ShowWindow]
push 0
push dword [edi + 4]
call esi
push 5
push ebx
call esi
mov esi, dword [edi + 0x7e8]
push ebx
call dword [sym.imp.USER32.dll_IsWindow]
test eax, eax
je 0x414663
push 0
push esi
push 0x464
push ebx
call dword [sym.imp.USER32.dll_PostMessageW]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov ecx, edi
test esi, esi
je 0x41465e
push 7
call fcn.00412160
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
call fcn.00414890
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
push 0x53ab50
lea eax, [ebp - 0xd]
push eax
call fcn.004bf594
int3