Function at 0x41b660
Capabilities:
Hide graphical window

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x48e658
mov eax, dword fs:[0]
push eax
sub esp, 0x2c
push ebx
push esi
push edi
mov eax, dword [0x4bf454]
xor eax, ebp
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov edi, ecx
cmp byte [edi + 0x2b8], 0
je 0x41b8e7
mov esi, dword [edi + 0x58]
lea ecx, [ebp - 0x18]
lea eax, [esi + 0x28]
push eax
call fcn.0044c870
lea ecx, [ebp - 0x18]
mov byte [esi + 0xe], 0
call fcn.0044c890
mov ecx, dword [edi + 0x58]
lea eax, [edi + 0x50]
push eax
call fcn.0041d510
push 0xd7
lea ecx, [edi + 0x27c]
call fcn.00426f10
mov ebx, dword [sym.imp.USER32.dll_CheckMenuItem]
cmp eax, 0xffffffff
je 0x41b6e7
push 0x400
push eax
push dword [edi + 0x280]
call ebx
mov al, byte [edi + 0x2fd]
lea ecx, [edi + 0x27c]
push 0x81
mov byte [ebp - 0xd], al
call fcn.00426f10
cmp eax, 0xffffffff
je 0x41b71e
xor ecx, ecx
cmp byte [ebp - 0xd], cl
setne cl
lea ecx, [ecx*8 + 0x400]
push ecx
push eax
push dword [edi + 0x280]
call ebx
cmp byte [edi + 0x2fd], 0
je 0x41b72b
push 5
jmp 0x41b72d
push 0
push dword [edi + 0x270]
call dword [sym.imp.USER32.dll_ShowWindow]
mov esi, dword [edi + 0x58]
lea ecx, [ebp - 0x18]
lea eax, [esi + 0x28]
push eax
call fcn.0044c870
mov bl, byte [esi + 0xc]
lea ecx, [ebp - 0x18]
call fcn.0044c890
movzx eax, bl
push eax
push 0x81
push dword [edi + 0x280]
call dword [sym.imp.USER32.dll_EnableMenuItem]
mov ebx, dword [sym.imp.USER32.dll_GetWindowLongW]
push 0xfffffffffffffff0
push dword [edi + 4]
call ebx
mov esi, dword [sym.imp.USER32.dll_SetWindowLongW]
or eax, 0xc50000
push eax
push 0xfffffffffffffff0
push dword [edi + 4]
call esi
push 0xffffffffffffffec
push dword [edi + 4]
call ebx
and eax, 0xfffffff7
push eax
push 0xffffffffffffffec
push dword [edi + 4]
call esi
mov dword [ebp - 0x34], vtable.Rect.0
mov dword [ebp - 4], 0
mov eax, dword [edi + 0x2dc]
mov ecx, dword [edi + 0x2e4]
mov esi, dword [edi + 0x2d8]
mov edx, dword [edi + 0x2e0]
mov dword [ebp - 0x2c], eax
mov dword [ebp - 0x24], ecx
sub ecx, eax
mov eax, dword [edi + 0x2f8]
sub eax, dword [edi + 0x2f0]
mov dword [ebp - 0x30], esi
mov dword [ebp - 0x28], edx
cmp eax, ecx
je 0x41b850
mov eax, dword [edi + 0x2f4]
sub edx, esi
sub eax, dword [edi + 0x2ec]
cmp eax, edx
je 0x41b850
push 0xfffffffffffffff0
push dword [edi + 4]
call ebx
and eax, 0xfeffffff
push eax
push 0xfffffffffffffff0
push dword [edi + 4]
call dword [sym.imp.USER32.dll_SetWindowLongW]
mov esi, dword [sym.imp.USER32.dll_SetWindowPos]
push 0x15
push 0
push 0
push dword [edi + 0x2f0]
push dword [edi + 0x2ec]
push 0
push dword [edi + 4]
call esi
mov eax, dword [edi + 0x2f8]
sub eax, dword [edi + 0x2f0]
push 0x16
push eax
mov eax, dword [edi + 0x2f4]
sub eax, dword [edi + 0x2ec]
push eax
push 0
push 0
push 0
push dword [edi + 4]
call esi
jmp 0x41b860
lea eax, [edi + 0x2bc]
push eax
push dword [edi + 4]
call dword [sym.imp.USER32.dll_SetWindowPlacement]
mov esi, dword [edi + 0x300]
lea eax, [edi + 0x1a0]
push eax
lea ecx, [ebp - 0x20]
call fcn.0044c870
push dword [edi + 0x164]
lea ecx, [edi + 0x130]
mov dword [ecx + 0x48], esi
push dword [ecx + 0x30]
call fcn.00414bf0
mov eax, dword [edi + 0x70]
mov esi, dword [sym.imp.USER32.dll_InvalidateRect]
mov byte [edi + 0x12c], 1
test eax, eax
je 0x41b8a7
push 1
push 0
push eax
call esi
lea ecx, [ebp - 0x20]
call fcn.0044c890
push 0
push 0
push 5
push dword [edi + 4]
mov byte [edi + 0x2b8], 0
call dword [sym.imp.USER32.dll_PostMessageW]
push 1
push 0
push dword [edi + 4]
call esi
lea eax, [edi + 0x34]
push eax
call fcn.00461bb0
mov ecx, dword [edi + 0xf0]
add esp, 4
push 1
call fcn.0044a4c0
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret