Function at 0x14005c220
Capabilities:
Hide graphical window

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0xc8
movaps xmmword [rsp + 0xb0], xmm6
mov rsi, r9
mov rbx, r8
mov r14, rdx
mov r15, rcx
mov rax, qword [0x14022f038]
xor rax, rsp
mov qword [rsp + 0xa8], rax
xor edi, edi
lea r12, [rsp + 0x80]
mov qword [r12], rdi
mov rax, qword [rdx]
mov rax, qword [rax + 0xa0]
mov rcx, rdx
mov rdx, r12
call qword [case.0x1401b58f0.0]
mov rcx, qword [r12]
mov rax, qword [rcx]
mov rax, qword [rax + 0x18]
mov edx, 0x7544
call qword [case.0x1401b58f0.0]
lea r13, [rsp + 0x60]
mov qword [r13], rdi
mov rdx, qword [r12]
mov rax, qword [rbx]
mov rax, qword [rax + 0x48]
mov rcx, rbx
mov r8, r13
call qword [case.0x1401b58f0.0]
mov rcx, qword [r13]
test rcx, rcx
je 0x14005c2c9
mov edx, 0x7544
call fcn.14005b0d0
movsxd rdi, eax
mov rcx, qword [rsp + 0x80]
test rcx, rcx
je 0x14005c2ef
mov qword [rsp + 0x80], 0
mov rax, qword [rcx]
mov rax, qword [rax + 0x10]
call qword [case.0x1401b58f0.0]
test rdi, rdi
je 0x14005c5d3
movaps xmm6, xmmword [0x14020b860]
lea r12, [rsp + 0x40]
movaps xmmword [r12], xmm6
call qword [sym.imp.USER32.dll_GetDesktopWindow]
mov rcx, rax
mov rdx, r12
call qword [sym.imp.USER32.dll_GetWindowRect]
test eax, eax
je 0x14005c5e2
mov r8d, dword [rsp + 0x48]
mov r9d, dword [rsp + 0x4c]
xor ebp, ebp
mov dword [rsp + 0x28], ebp
mov dword [rsp + 0x20], ebp
mov dword [rsp + 0x30], 5
mov rcx, rdi
xor edx, edx
call qword [sym.imp.USER32.dll_SetWindowPos]
lea r12, [rsp + 0xa0]
mov qword [r12], rbp
mov rax, qword [r14]
mov rax, qword [rax + 0xa0]
mov rcx, r14
mov rdx, r12
call qword [case.0x1401b58f0.0]
mov r13, qword [r12]
mov rax, qword [r13]
mov rax, qword [rax + 0x18]
mov rcx, r13
mov edx, 0x753b
call qword [case.0x1401b58f0.0]
mov rax, qword [r13]
mov rax, qword [rax + 0x18]
mov rcx, r13
mov edx, 0x7535
call qword [case.0x1401b58f0.0]
mov rax, qword [r13]
mov rax, qword [rax + 0x18]
mov rcx, r13
mov edx, 0x753c
call qword [case.0x1401b58f0.0]
mov rax, qword [r13]
mov rax, qword [rax + 0x20]
mov rcx, r13
mov edx, 0x2710
call qword [case.0x1401b58f0.0]
mov rcx, qword [r12]
mov rax, qword [rcx]
mov rax, qword [rax + 0x18]
mov edx, 0x7531
call qword [case.0x1401b58f0.0]
movabs rax, 0xaaaaaaaaaaaaaaaa
mov qword [rsp + 0x90], rax
movaps xmmword [rsp + 0x80], xmm6
cmp byte [r15 + 0x47], 0
jns 0x14005c405
mov r15, qword [r15 + 0x30]
jmp 0x14005c409
add r15, 0x30
lea r12, [rsp + 0x80]
mov rcx, r12
mov rdx, r15
call fcn.1401b5b30
lea r15, [rsp + 0x78]
mov qword [r15], rbp
movaps xmm0, xmmword [r12]
lea r8, [rsp + 0x60]
movaps xmmword [r8], xmm0
mov rax, qword [r12 + 0x10]
mov qword [r8 + 0x10], rax
mov rax, qword [r14]
mov rax, qword [rax + 0xb8]
mov rcx, r14
mov edx, 0x7535
mov r9, r15
call qword [case.0x1401b58f0.0]
lea r14, [rsp + 0x58]
mov qword [r14], rbp
mov r9, qword [rsp + 0xa0]
mov r8, qword [r15]
mov rax, qword [rbx]
mov rax, qword [rax + 0x38]
mov qword [rsp + 0x20], r14
mov rcx, rbx
mov edx, 4
call qword [case.0x1401b58f0.0]
mov rbx, qword [r14]
mov rcx, qword [r15]
test rcx, rcx
je 0x14005c4a4
mov qword [rsp + 0x78], 0
mov rax, qword [rcx]
mov rax, qword [rax + 0x10]
call qword [case.0x1401b58f0.0]
lea rcx, [rsp + 0x80]
call sub.OLEAUT32.dll_VariantCopy
mov rcx, qword [rsp + 0xa0]
test rcx, rcx
je 0x14005c4d7
mov qword [rsp + 0xa0], 0
mov rax, qword [rcx]
mov rax, qword [rax + 0x10]
call qword [case.0x1401b58f0.0]
test rbx, rbx
je 0x14005c627
lea rdx, [rsp + 0x80]
movaps xmmword [rdx], xmm6
mov rax, qword [rbx]
mov rax, qword [rax + 0x258]
mov rcx, rbx
call qword [case.0x1401b58f0.0]
test eax, eax
js 0x14005c597
mov eax, dword [rsp + 0x84]
mov ecx, dword [rsp + 0x88]
add ecx, dword [rsp + 0x80]
mov edx, ecx
shr edx, 0x1f
add edx, ecx
add eax, dword [rsp + 0x8c]
shr edx, 1
mov ecx, eax
shr ecx, 0x1f
add ecx, eax
and ecx, 0xfffffffe
shl ecx, 0xf
movzx ebx, dx
or ebx, ecx
mov rcx, rdi
mov edx, 0x201
xor r8d, r8d
mov r9, rbx
call qword [sym.imp.USER32.dll_PostMessageW]
test eax, eax
je 0x14005c573
mov rcx, rdi
mov edx, 0x202
xor r8d, r8d
mov r9, rbx
call qword [sym.imp.USER32.dll_PostMessageW]
mov bl, 1
test eax, eax
jne 0x14005c5f9
lea rdx, str.Could_not_activate_the_menu_item.
mov r8d, 0x21
mov rcx, rsi
call fcn.1400fd1d0
xor ebx, ebx
mov rcx, rdi
xor edx, edx
call qword [sym.imp.USER32.dll_ShowWindow]
jmp 0x14005c5f9
mov rcx, rdi
xor edx, edx
call qword [sym.imp.USER32.dll_ShowWindow]
cmp byte [rsi + 0x17], 0
js 0x14005c5ae
mov byte [rsi + 0x17], SafeArrayDestroy
jmp 0x14005c5b9
mov qword [rsi + 8], SafeArrayDestroy
mov rsi, qword [rsi]
movabs rax, 0x6174636572206f4e
mov qword [rsi], rax
mov dword [rsi + 8], 0x656c676e
mov byte [rsi + 0xc], 0
jmp 0x14005c5f7
lea rdx, str.Cannot_get_native_menu_handle.
mov r8d, 0x1e
jmp 0x14005c5ef
lea rdx, str.Cannot_get_desktop_rect.
mov r8d, SafeArrayCopy
mov rcx, rsi
call fcn.1400fd1d0
xor ebx, ebx
mov rcx, qword [rsp + 0xa8]
xor rcx, rsp
call fcn.14014ced0
mov eax, ebx
movaps xmm6, xmmword [rsp + 0xb0]
add rsp, 0xc8
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
xor ebx, ebx
mov rcx, rdi
xor edx, edx
call qword [sym.imp.USER32.dll_ShowWindow]
lea rdx, str.Cannot_find_pin_menu_element.
mov r8d, 0x1d
mov rcx, rsi
call fcn.1400fd1d0
jmp 0x14005c5f9