Function at 0x4e67d0
Capabilities:
Hide graphical window

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff0
sub esp, 0x88
mov eax, dword [0x6ddc7c]
xor eax, esp
mov dword [esp + 0x84], eax
push esi
mov esi, dword [ebp + 8]
mov dword [ecx + 0x258], esi
push edi
mov dword [esp + 0x10], ecx
mov eax, dword [esi + 0x244]
mov dword [ecx + 0x25c], eax
lea ecx, [esp + 0x40]
mov eax, dword [esi + 0x24c]
mov dword [esp + 0x14], eax
mov eax, dword [esi + 0x250]
mov dword [esp + 0xc], eax
mov eax, dword [esi]
push 1
push ecx
mov ecx, esi
mov dword [esp + 0x2c], esi
call dword [eax + 0x1c]
lea eax, [esp + 0x18]
mov ecx, esi
push eax
call fcn.004d6480
mov eax, dword [esp + 0x1c]
neg eax
push eax
mov eax, dword [esp + 0x1c]
neg eax
push eax
lea eax, [esp + 0x48]
push eax
call dword [sym.imp.USER32.dll_OffsetRect]
movaps xmm0, xmmword [esp + 0x40]
mov edx, dword [esp + 0xc]
mov eax, dword [esp + 0x14]
movaps xmmword [esp + 0x30], xmm0
mov ecx, dword [esp + 0x30]
psrldq xmm0, 0xc
movd edi, xmm0
inc edi
add edx, edi
mov dword [esp + 0x34], edi
mov dword [esp + 0x3c], edx
test eax, eax
jle 0x4e6886
add eax, ecx
mov dword [esp + 0x38], eax
jmp 0x4e688a
mov eax, dword [esp + 0x38]
sub edx, edi
sub eax, ecx
mov dword [esp + 0x18], edx
xor edx, edx
mov dword [esp + 0x20], eax
xor edi, edi
mov dword [esp + 8], edx
nop
mov ecx, dword [esi + 0x240]
mov eax, dword [ecx]
mov eax, dword [eax + 0x130]
cmp eax, method.ui::ButtonTemplate_class_ui::Box_.virtual_304
jne 0x4e6ac1
mov eax, dword [ecx + 0x22c]
sub eax, dword [ecx + 0x228]
sar eax, 2
cmp edi, eax
jge 0x4e6954
mov ecx, dword [esi + 0x240]
mov eax, dword [ecx]
mov eax, dword [eax + 0x124]
cmp eax, method.ui::ButtonTemplate_class_ui::Box_.virtual_292
jne 0x4e6acc
mov eax, dword [ecx + 0x22c]
mov esi, dword [ecx + 0x228]
sub eax, esi
sar eax, 2
cmp edi, eax
jae 0x4e6903
mov esi, dword [esi + edi*4]
jmp 0x4e6905
xor esi, esi
mov eax, dword [esi]
mov ecx, esi
mov eax, dword [eax + 0x14]
call eax
test al, al
je 0x4e6946
mov ecx, dword [esp + 0x20]
sub esp, 8
mov eax, esp
mov dword [eax], ecx
mov ecx, dword [esp + 0x20]
mov dword [eax + 4], ecx
lea ecx, [esp + 0x30]
mov eax, dword [esi]
push ecx
mov ecx, esi
call dword [eax + 0x18]
mov edx, dword [esp + 8]
add edx, dword [esp + 0x2c]
inc edi
mov esi, dword [esp + 0x24]
mov dword [esp + 8], edx
jmp 0x4e68a0
mov edx, dword [esp + 8]
inc edi
mov esi, dword [esp + 0x24]
jmp 0x4e68a0
mov ecx, dword [esp + 0xc]
add edx, 2
mov eax, dword [esp + 0x34]
cmp edx, ecx
cmovl ecx, edx
add eax, ecx
mov dword [esp + 0xc], ecx
mov dword [esp + 0x3c], eax
mov eax, dword [esi]
mov eax, dword [eax]
cmp eax, method.ui::ButtonTemplate_class_ui::Box_.virtual_0
jne 0x4e6ad6
mov eax, dword [esi + 0x20]
mov edi, dword [sym.imp.USER32.dll_MapWindowPoints]
lea ecx, [esp + 0x30]
push 2
push ecx
push 0
push dword [eax + 0x10]
call edi
lea eax, [esp + 0x50]
xorps xmm0, xmm0
push eax
mov eax, dword [esp + 0x14]
push 1
movaps xmmword [esp + 0x58], xmm0
movaps xmmword [esp + 0x68], xmm0
push dword [eax + 0x10]
movq qword [esp + 0x7c], xmm0
mov dword [esp + 0x5c], 0x28
call dword [sym.imp.USER32.dll_MonitorFromWindow]
push eax
call dword [sym.imp.USER32.dll_GetMonitorInfoW]
mov eax, dword [esp + 0x3c]
cmp eax, dword [esp + 0x70]
jg 0x4e69e7
mov eax, dword [esp + 0x10]
mov eax, dword [eax + 0x258]
cmp byte [eax + 0x26c], 0
je 0x4e6a37
mov eax, dword [esp + 0x48]
mov ecx, dword [esp + 0x40]
mov dword [esp + 0x38], eax
mov eax, dword [esp + 0x14]
mov dword [esp + 0x30], ecx
test eax, eax
jle 0x4e6a05
add eax, ecx
mov dword [esp + 0x38], eax
mov ecx, dword [esp + 0x44]
mov eax, ecx
sub eax, dword [esp + 0xc]
mov dword [esp + 0x34], eax
mov eax, dword [esi]
mov dword [esp + 0x3c], ecx
mov eax, dword [eax]
cmp eax, method.ui::ButtonTemplate_class_ui::Box_.virtual_0
jne 0x4e6adf
mov eax, dword [esi + 0x20]
push 2
lea ecx, [esp + 0x34]
push ecx
push 0
push dword [eax + 0x10]
call edi
mov eax, dword [esi]
mov eax, dword [eax]
cmp eax, method.ui::ButtonTemplate_class_ui::Box_.virtual_0
jne 0x4e6ae8
mov eax, dword [esi + 0x20]
mov esi, dword [esp + 0x10]
lea ecx, [esp + 0x30]
push ecx
push 1
push 0x80
mov edx, dword [esi]
mov ecx, esi
push bind
push 0
push dword [eax + 0x10]
call dword [edx + 0xc]
mov esi, dword [esi + 0x10]
mov edi, dword [sym.imp.USER32.dll_GetParent]
push esi
call edi
test eax, eax
je 0x4e6a8c
nop word [eax + eax]
push esi
call edi
mov esi, eax
push esi
call edi
test eax, eax
jne 0x4e6a80
mov eax, dword [esp + 0x10]
push 5
push dword [eax + 0x10]
call dword [sym.imp.USER32.dll_ShowWindow]
push 0
push 1
push 0x86
push esi
call dword [sym.imp.USER32.dll_SendMessageW]
mov ecx, dword [esp + 0x8c]
pop edi
pop esi
xor ecx, esp
call fcn.005ff7bd
mov esp, ebp
pop ebp
ret 4
call eax
mov edx, dword [esp + 8]
jmp 0x4e68c8
push edi
call eax
mov esi, eax
jmp 0x4e6905
mov ecx, esi
call eax
jmp 0x4e6980
mov ecx, esi
call eax
jmp 0x4e6a29
mov ecx, esi
call eax
jmp 0x4e6a49