Function at 0x10002650
Capabilities:
Hide graphical window

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff0
sub esp, 0x28
mov eax, dword [0x10016008]
xor eax, esp
mov dword [esp + 0x24], eax
push esi
mov esi, edx
push edi
mov edi, ecx
cmp esi, 0x111
ja 0x1000275e
je 0x100027a2
mov eax, esi
sub eax, 0x7b
je 0x10002776
sub eax, 0x2d
jne 0x100027da
cmp dword [ebp + 8], 2
jne 0x10002902
lea eax, [esp + 0x10]
xorps xmm0, xmm0
push eax
push edi
movaps xmmword [esp + 0x18], xmm0
call dword [sym.imp.USER32.dll_GetWindowRect]
test eax, eax
je 0x10002715
mov eax, dword [esp + 0x1c]
mov esi, dword [esp + 0x18]
sub eax, dword [esp + 0x14]
sub esi, dword [esp + 0x10]
push 0x23
mov dword [esp + 0x10], eax
call dword [sym.imp.USER32.dll_GetSystemMetrics]
mov ecx, dword [esp + 0xc]
cmp ecx, eax
je 0x100026e4
mov dword [0x10016874], esi
mov dword [0x10016870], ecx
jmp 0x100026e9
mov eax, dword [0x10016870]
push 0x406
push eax
push esi
push 0
push 0
push 0
push edi
call dword [sym.imp.USER32.dll_SetWindowPos]
mov eax, 1
pop edi
pop esi
mov ecx, dword [esp + 0x24]
xor ecx, esp
call fcn.10002a12
mov esp, ebp
pop ebp
ret 8
mov eax, dword [0x10016874]
cmp eax, 0xffffffff
je 0x10002902
mov ecx, dword [0x10016870]
cmp ecx, 0xffffffff
je 0x10002902
push 0x406
push ecx
push eax
push 0
push 0
push 0
push edi
call dword [sym.imp.USER32.dll_SetWindowPos]
mov eax, 1
pop edi
pop esi
mov ecx, dword [esp + 0x24]
xor ecx, esp
call fcn.10002a12
mov esp, ebp
pop ebp
ret 8
cmp esi, 0x117
ja 0x100027c6
je 0x10002776
mov eax, esi
sub eax, 0x112
je 0x100027a2
sub eax, 4
jne 0x100027da
call fcn.10001180
test eax, eax
je 0x1000291a
mov ecx, edi
call fcn.10001650
mov eax, 1
pop edi
pop esi
mov ecx, dword [esp + 0x24]
xor ecx, esp
call fcn.10002a12
mov esp, ebp
pop ebp
ret 8
mov edx, dword [ebp + 8]
push ecx
call fcn.100017c0
add esp, 4
mov eax, 1
pop edi
pop esi
mov ecx, dword [esp + 0x24]
xor ecx, esp
call fcn.10002a12
mov esp, ebp
pop ebp
ret 8
cmp esi, 0x313
je 0x10002776
cmp esi, 0x610
je 0x100028be
push str.MenuToolsQuit
call dword [sym.imp.USER32.dll_RegisterWindowMessageW]
cmp esi, eax
jne 0x1000291a
mov eax, dword [0x10017388]
mov esi, dword [eax]
cmp esi, eax
je 0x10002854
nop dword [eax + eax]
push 5
push dword [esi + 0x10]
call dword [sym.imp.USER32.dll_ShowWindow]
mov eax, dword [esi + 8]
cmp byte [eax + 0xd], 0
je 0x10002834
mov eax, dword [esi + 4]
cmp byte [eax + 0xd], 0
jne 0x10002830
nop dword [eax]
cmp esi, dword [eax + 8]
jne 0x10002830
mov esi, eax
mov eax, dword [eax + 4]
cmp byte [eax + 0xd], 0
je 0x10002820
mov esi, eax
jmp 0x1000284c
mov esi, eax
mov ecx, dword [esi]
cmp byte [ecx + 0xd], 0
jne 0x1000284c
nop
mov eax, dword [ecx]
mov esi, ecx
mov ecx, eax
cmp byte [eax + 0xd], 0
je 0x10002840
cmp esi, dword [0x10017388]
jne 0x10002800
call fcn.10001ef0
push 0
push edi
call dword [sym.imp.USER32.dll_GetSystemMenu]
mov esi, dword [sym.imp.USER32.dll_DeleteMenu]
mov edi, eax
push 0
push 0x2500
push edi
call esi
push 0
push 0x2600
push edi
call esi
push 0
push 0x2410
push edi
call esi
push 0
push 0x2420
push edi
call esi
push 0
push 0x2430
push edi
call esi
push 0
push 0x2440
push edi
call esi
mov eax, 1
pop edi
pop esi
mov ecx, dword [esp + 0x24]
xor ecx, esp
call fcn.10002a12
mov esp, ebp
pop ebp
ret 8
cmp dword [ebp + 0xc], 0x203
mov dword [esp + 0xc], edi
jne 0x10002902
lea eax, [esp + 0xc]
push eax
lea eax, [esp + 0x14]
push eax
call fcn.10002390
mov eax, dword [eax + 8]
cmp byte [eax + 0xd], 0
jne 0x100028f2
cmp edi, dword [eax + 0x10]
jb 0x100028f2
lea eax, [esp + 0xc]
push eax
call fcn.10001d10
push 5
push edi
call dword [sym.imp.USER32.dll_ShowWindow]
push edi
call dword [sym.imp.USER32.dll_SetForegroundWindow]
mov eax, 1
pop edi
pop esi
mov ecx, dword [esp + 0x24]
xor ecx, esp
call fcn.10002a12
mov esp, ebp
pop ebp
ret 8
mov ecx, dword [esp + 0x2c]
xor eax, eax
pop edi
pop esi
xor ecx, esp
call fcn.10002a12
mov esp, ebp
pop ebp
ret 8