Function at 0x140043970
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 [0x1401ee038]
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 [0x14021c008]
mov rcx, qword [r12]
mov rax, qword [rcx]
mov rax, qword [rax + 0x18]
mov edx, 0x7544
call qword [0x14021c008]
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 [0x14021c008]
mov rcx, qword [r13]
test rcx, rcx
je 0x140043a19
mov edx, 0x7544
call fcn.140042520
movsxd rdi, eax
mov rcx, qword [rsp + 0x80]
test rcx, rcx
je 0x140043a3f
mov qword [rsp + 0x80], 0
mov rax, qword [rcx]
mov rax, qword [rax + 0x10]
call qword [0x14021c008]
test rdi, rdi
je 0x140043bf6
movaps xmm6, xmmword [0x1401c1a60]
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 0x140043b5c
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 [0x14021c008]
mov r13, qword [r12]
mov rax, qword [r13]
mov rax, qword [rax + 0x18]
mov rcx, r13
mov edx, 0x753b
call qword [0x14021c008]
mov rax, qword [r13]
mov rax, qword [rax + 0x18]
mov rcx, r13
mov edx, 0x7535
call qword [0x14021c008]
mov rax, qword [r13]
mov rax, qword [rax + 0x18]
mov rcx, r13
mov edx, 0x753c
call qword [0x14021c008]
mov rax, qword [r13]
mov rax, qword [rax + 0x20]
mov rcx, r13
mov edx, 0x2710
call qword [0x14021c008]
mov rcx, qword [r12]
mov rax, qword [rcx]
mov rax, qword [rax + 0x18]
mov edx, 0x7531
call qword [0x14021c008]
movabs rax, 0xaaaaaaaaaaaaaaaa
mov qword [rsp + 0x90], rax
movaps xmmword [rsp + 0x80], xmm6
cmp byte [r15 + 0x47], 0
js 0x140043cfa
add r15, 0x30
jmp 0x140043cfe
movabs r15, 0x7fffffffffffffff
mov r12d, reloc.WS2_32.dll_shutdown
cmp byte [rsi + 0x17], 0
mov rdi, rsi
js 0x14004408a
lea rax, [r12 + r12]
cmp rax, 0x19
mov ebx, SafeArrayCopy
cmovae rbx, rax
or rbx, 0xf
inc rbx
mov rcx, rbx
call fcn.14012a8b0
mov r14, rax
lea rax, str.Cannot_get_desktop_rect.
lea r13, [r14 + 0x18]
cmp r14, rax
ja 0x140043bb5
cmp r13, rax
ja 0x1400440f7
movups xmm0, xmmword [str.Cannot_get_desktop_rect.]
movups xmmword [r14], xmm0
movabs rax, 0x2e7463657220706f
mov qword [r14 + 0x10], rax
cmp r12, 0x16
je 0x140043bdc
mov rcx, rdi
call fcn.14012a8ec
mov qword [rsi], r14
inc r15
or rbx, r15
mov qword [rsi + 0x10], rbx
mov qword [rsi + 8], SafeArrayCopy
jmp 0x140043c89
movabs r15, 0x7fffffffffffffff
mov r12d, reloc.WS2_32.dll_shutdown
cmp byte [rsi + 0x17], 0
mov rdi, rsi
js 0x140044048
lea rax, [r12 + r12]
cmp rax, 0x1f
mov ebx, 0x1e
cmovae rbx, rax
or rbx, 0xf
inc rbx
mov rcx, rbx
call fcn.14012a8b0
mov r14, rax
lea rax, str.Cannot_get_native_menu_handle.
lea r13, [r14 + 0x1e]
cmp r14, rax
ja 0x140043c4f
cmp r13, rax
ja 0x1400440f7
movups xmm0, xmmword [0x1401cbad1]
movups xmmword [r14 + 0xe], xmm0
movups xmm0, xmmword [str.Cannot_get_native_menu_handle.]
movups xmmword [r14], xmm0
cmp r12, 0x16
je 0x140043c74
mov rcx, rdi
call fcn.14012a8ec
mov qword [rsi], r14
inc r15
or rbx, r15
mov qword [rsi + 0x10], rbx
mov qword [rsi + 8], 0x1e
mov byte [r13], 0
xor ebx, ebx
mov rcx, qword [rsp + 0xa8]
xor rcx, rsp
call fcn.14012b460
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
mov qword [rsi + 8], SafeArrayDestroy
mov rsi, qword [rsi]
jmp 0x140043ce0
mov rcx, rdi
xor edx, edx
call qword [sym.imp.USER32.dll_ShowWindow]
cmp byte [rsi + 0x17], 0
js 0x140043cbe
mov byte [rsi + 0x17], SafeArrayDestroy
movabs rax, 0x6174636572206f4e
mov qword [rsi], rax
mov dword [rsi + 8], 0x656c676e
mov byte [rsi + 0xc], 0
jmp 0x140043c8e
mov r15, qword [r15 + 0x30]
lea r12, [rsp + 0x80]
mov rcx, r12
mov rdx, r15
call fcn.14018f3a0
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 [0x14021c008]
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 [0x14021c008]
mov rbx, qword [r14]
mov rcx, qword [r15]
test rcx, rcx
je 0x140043d99
mov qword [rsp + 0x78], 0
mov rax, qword [rcx]
mov rax, qword [rax + 0x10]
call qword [0x14021c008]
lea rcx, [rsp + 0x80]
call sub.OLEAUT32.dll_VariantCopy
mov rcx, qword [rsp + 0xa0]
test rcx, rcx
je 0x140043dcc
mov qword [rsp + 0xa0], 0
mov rax, qword [rcx]
mov rax, qword [rax + 0x10]
call qword [0x14021c008]
test rbx, rbx
je 0x140043f1b
lea rdx, [rsp + 0x80]
movaps xmmword [rdx], xmm6
mov rax, qword [rbx]
mov rax, qword [rax + 0x258]
mov rcx, rbx
call qword [0x14021c008]
test eax, eax
js 0x140043ccb
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 0x140043e68
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 0x140043c90
movabs r12, 0x7fffffffffffffff
mov r13d, reloc.WS2_32.dll_shutdown
cmp byte [rsi + 0x17], 0
mov rbx, rsi
js 0x140043fbe
lea rax, [r13*2]
cmp rax, 0x22
mov r14d, 0x21
cmovae r14, rax
or r14, 0xf
inc r14
mov rcx, r14
call fcn.14012a8b0
mov r15, rax
lea rax, str.Could_not_activate_the_menu_item.
lea rbp, [r15 + 0x21]
cmp r15, rax
ja 0x140043ec6
cmp rbp, rax
ja 0x1400440f7
movups xmm0, xmmword [0x1401cbb29]
movups xmmword [r15 + 0x10], xmm0
movups xmm0, xmmword [str.Could_not_activate_the_menu_item.]
movups xmmword [r15], xmm0
mov byte [r15 + 0x20], 0x2e
cmp r13, 0x16
je 0x140043ef0
mov rcx, rbx
call fcn.14012a8ec
mov qword [rsi], r15
inc r12
or r14, r12
mov qword [rsi + 0x10], r14
mov qword [rsi + 8], 0x21
mov byte [rbp], 0
xor ebx, ebx
mov rcx, rdi
xor edx, edx
call qword [sym.imp.USER32.dll_ShowWindow]
jmp 0x140043c90
movabs r15, 0x7fffffffffffffff
mov rcx, rdi
xor edx, edx
call qword [sym.imp.USER32.dll_ShowWindow]
mov r12d, reloc.WS2_32.dll_shutdown
cmp byte [rsi + 0x17], 0
mov rdi, rsi
js 0x140044008
lea rax, [r12 + r12]
cmp rax, 0x1e
mov ebx, 0x1d
cmovae rbx, rax
or rbx, 0xf
inc rbx
mov rcx, rbx
call fcn.14012a8b0
mov r14, rax
lea rax, str.Cannot_find_pin_menu_element.
lea r13, [r14 + 0x1d]
cmp r14, rax
ja 0x140043f7f
cmp r13, rax
ja 0x1400440f7
movups xmm0, xmmword [0x1401cbb08]
movups xmmword [r14 + 0xd], xmm0
movups xmm0, xmmword [str.Cannot_find_pin_menu_element.]
movups xmmword [r14], xmm0
cmp r12, 0x16
je 0x140043fa4
mov rcx, rdi
call fcn.14012a8ec
mov qword [rsi], r14
inc r15
or rbx, r15
mov qword [rsi + 0x10], rbx
mov qword [rsi + 8], 0x1d
jmp 0x140043c89
mov r13, qword [rsi + 0x10]
and r13, r12
dec r13
mov rbx, qword [rsi]
cmp r13, 0x21
jb 0x140043e85
movups xmm0, xmmword [0x1401cbb29]
movups xmmword [rbx + 0x10], xmm0
movups xmm0, xmmword [str.Could_not_activate_the_menu_item.]
movups xmmword [rbx], xmm0
mov byte [rbx + 0x20], 0x2e
cmp byte [rsi + 0x17], 0
js 0x1400440ea
mov byte [rsi + 0x17], 0x21
add rbx, 0x21
mov rbp, rbx
jmp 0x140043f05
mov r12, qword [rsi + 0x10]
and r12, r15
dec r12
mov rdi, qword [rsi]
cmp r12, 0x1d
jb 0x140043f43
movups xmm0, xmmword [0x1401cbb08]
movups xmmword [rdi + 0xd], xmm0
movups xmm0, xmmword [str.Cannot_find_pin_menu_element.]
movups xmmword [rdi], xmm0
cmp byte [rsi + 0x17], 0
js 0x1400440dd
mov byte [rsi + 0x17], 0x1d
add rdi, 0x1d
jmp 0x140044082
mov r12, qword [rsi + 0x10]
and r12, r15
dec r12
mov rdi, qword [rsi]
cmp r12, 0x1e
jb 0x140043c13
movups xmm0, xmmword [0x1401cbad1]
movups xmmword [rdi + 0xe], xmm0
movups xmm0, xmmword [str.Cannot_get_native_menu_handle.]
movups xmmword [rdi], xmm0
cmp byte [rsi + 0x17], 0
js 0x1400440c9
mov byte [rsi + 0x17], 0x1e
add rdi, 0x1e
mov r13, rdi
jmp 0x140043c89
mov r12, qword [rsi + 0x10]
and r12, r15
dec r12
mov rdi, qword [rsi]
cmp r12, 0x18
jb 0x140043b79
movups xmm0, xmmword [str.Cannot_get_desktop_rect.]
movups xmmword [rdi], xmm0
movabs rax, 0x2e7463657220706f
mov qword [rdi + 0x10], rax
cmp byte [rsi + 0x17], 0
js 0x1400440d3
mov byte [rsi + 0x17], SafeArrayCopy
add rdi, 0x18
jmp 0x140044082
mov qword [rsi + 8], 0x1e
jmp 0x14004407e
mov qword [rsi + 8], SafeArrayCopy
jmp 0x1400440c3
mov qword [rsi + 8], 0x1d
jmp 0x140044042
mov qword [rsi + 8], 0x21
jmp 0x140043ffc
lea rax, str.char_traits::copy_overlapped_range
mov qword [rsp + 0x20], rax
lea rcx, str._s:_d:_assertion__s_failed:__s_n
lea rdx, str....._third_partylibc_srcinclude__stringchar_traits.h
lea r9, str.__s2_____s1____s2_____s1____n
mov r8d, 0xf3
call fcn.140166ee0
int3