Function at 0x10090cbf
Capabilities:
Hide graphical window

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x24
mov eax, dword [0x103680b4]
xor eax, esp
mov dword [esp + 0x20], eax
mov eax, dword [ebp + 8]
push ebx
push esi
mov dword [esp + 8], eax
lea eax, [esp + 8]
push edi
push eax
lea eax, [esp + 0x18]
push eax
call fcn.1009210d
mov eax, dword [esp + 0x14]
mov edi, dword [ebp + 0xc]
mov esi, dword [eax + 0x14]
mov ebx, dword [esi + 8]
mov dword [esp + 0x14], ebx
mov ebx, dword [ebp + 0x14]
cmp edi, 0x18
ja 0x10090e7c
je 0x10090e33
lea eax, [edi - 1]
sub eax, 1
je 0x10090e25
sub eax, 1
je 0x10090ddd
dec eax
sub eax, 1
je 0x10090d50
sub eax, 0xa
jne 0x10090ee4
cmp byte [esi + 0x18], al
je 0x10090ee4
push dword [esp + 0xc]
mov ecx, esi
call sym.nsDui.dll_protected:_void___thiscall_CWndShadow::Update_struct_HWND____
mov byte [esi + 0x18], 0
jmp 0x10090ee4
mov al, byte [esi + 0xc]
and al, 9
cmp al, 1
jne 0x10090ee4
cmp dword [ebp + 0x10], 2
je 0x10090dc6
cmp dword [ebp + 0x10], 1
je 0x10090dc6
push 0xfffffffffffffff0
push dword [esp + 0x10]
call dword [sym.imp.USER32.dll_GetWindowLongW]
test eax, 0x10000000
je 0x10090dd5
or byte [esi + 0xc], 4
mov al, byte [esi + 0xc]
test al, 2
jne 0x10090da8
or al, 2
mov ecx, esi
mov byte [esi + 0xc], al
push dword [esp + 0xc]
call sym.nsDui.dll_protected:_void___thiscall_CWndShadow::Update_struct_HWND____
push 8
push dword [esi + 4]
call dword [sym.imp.USER32.dll_ShowWindow]
mov byte [esi + 0x18], 1
jmp 0x10090dd5
cmp bx, word [esi + 0x14]
ja 0x10090da2
mov eax, ebx
shr eax, 0x10
cmp ax, word [esi + 0x16]
ja 0x10090da2
push dword [esp + 0xc]
mov ecx, esi
call sym.nsDui.dll_protected:_void___thiscall_CWndShadow::Update_struct_HWND____
jmp 0x10090dd5
push 0
push dword [esi + 4]
call dword [sym.imp.USER32.dll_ShowWindow]
and byte [esi + 0xc], 0xfd
mov dword [esi + 0x14], ebx
jmp 0x10090ee4
test byte [esi + 0xc], 2
je 0x10090ee4
lea eax, [esp + 0x1c]
push eax
push dword [esp + 0x10]
call dword [sym.imp.USER32.dll_GetWindowRect]
movsx ecx, byte [esi + 0xf]
xor edx, edx
movsx eax, byte [esi + 0x11]
push 0x11
push edx
sub eax, ecx
add eax, dword [esp + 0x28]
push edx
push eax
movsx eax, byte [esi + 0x10]
sub eax, ecx
add eax, dword [esp + 0x2c]
push eax
push edx
push dword [esi + 4]
call dword [sym.imp.USER32.dll_SetWindowPos]
jmp 0x10090ee4
push dword [esi + 4]
call dword [sym.imp.USER32.dll_DestroyWindow]
jmp 0x10090ee4
mov al, byte [esi + 0xc]
and al, 9
cmp al, 1
jne 0x10090ee4
push dword [ebp + 0x14]
push dword [ebp + 0x10]
push 0x18
push dword [esp + 0x18]
call dword [esp + 0x24]
cmp dword [ebp + 0x10], 0
mov edi, eax
jne 0x10090e69
push 0
push dword [esi + 4]
call dword [sym.imp.USER32.dll_ShowWindow]
and byte [esi + 0xc], 0xf9
jmp 0x10090e78
mov byte [esi + 0x18], 1
mov ecx, esi
push dword [esp + 0xc]
call sym.nsDui.dll_protected:_void___thiscall_CWndShadow::Show_struct_HWND____
mov eax, edi
jmp 0x10090ef1
cmp edi, 0x82
je 0x10090eda
cmp edi, 0x232
je 0x10090ec7
cmp edi, 0x31e
jne 0x10090ee4
and dword [esp + 0x10], 0
mov eax, dword [sym.nsDui.dll_long_int____stdcall___int___CWndShadow::s_DwmIsCompositionEnabled]
test eax, eax
je 0x10090eb6
lea ecx, [esp + 0x10]
push ecx
call eax
cmp dword [esp + 0x10], 0
je 0x10090eb6
or byte [esi + 0xc], 8
jmp 0x10090eba
and byte [esi + 0xc], 0xf7
push dword [esp + 0xc]
mov ecx, esi
call sym.nsDui.dll_protected:_void___thiscall_CWndShadow::Show_struct_HWND____
jmp 0x10090ee4
test byte [esi + 0xc], 2
je 0x10090ee4
push dword [esp + 0xc]
mov ecx, esi
call sym.nsDui.dll_protected:_void___thiscall_CWndShadow::Update_struct_HWND____
jmp 0x10090ee4
lea eax, [esp + 0xc]
push eax
call fcn.10091a4a
push ebx
push dword [ebp + 0x10]
push edi
push dword [esp + 0x18]
call dword [esp + 0x24]
mov ecx, dword [esp + 0x2c]
pop edi
pop esi
pop ebx
xor ecx, esp
call fcn.100ff9df
mov esp, ebp
pop ebp
ret 0x10