Function at 0x180005f70
Capabilities:
Open clipboard

Disassembly:
test rdx, rdx
je 0x1800064c4
mov rax, rsp
push rbp
push rsi
push rdi
mov rbp, rsp
sub rsp, 0x80
mov rdi, rdx
mov qword [rax + 8], rbx
mov rsi, rcx
mov qword [rax + 0x20], r14
mov rcx, qword [rcx + 0x20]
lea r9, [rbp + 0x28]
mov edx, 0x434
xor r8d, r8d
call qword [sym.imp.USER32.dll_SendMessageA]
mov eax, dword [rbp + 0x2c]
mov edx, 0x9cb0
mov rcx, rdi
cmp dword [rbp + 0x28], eax
jne 0x180005fd1
mov r8d, 1
call qword [sym.imp.USER32.dll_EnableMenuItem]
mov r8d, 1
jmp 0x180005fdd
xor r8d, r8d
call qword [sym.imp.USER32.dll_EnableMenuItem]
xor r8d, r8d
mov edx, 0x9caf
mov rcx, rdi
call qword [sym.imp.USER32.dll_EnableMenuItem]
mov rcx, qword [rsi + 0x20]
xor r9d, r9d
xor r8d, r8d
mov edx, 0xb8
call qword [sym.imp.USER32.dll_SendMessageA]
mov edx, 0x9cb1
mov rcx, rdi
test rax, rax
je 0x180006012
xor r8d, r8d
jmp 0x180006018
mov r8d, 1
call qword [sym.imp.USER32.dll_EnableMenuItem]
mov edx, 0x9caa
mov r8d, 1
mov rcx, rdi
call qword [sym.imp.USER32.dll_EnableMenuItem]
call qword [sym.imp.USER32.dll_CountClipboardFormats]
test eax, eax
je 0x18000608a
xor ecx, ecx
call qword [sym.imp.USER32.dll_OpenClipboard]
test eax, eax
je 0x18000608a
xor ecx, ecx
call qword [sym.imp.USER32.dll_EnumClipboardFormats]
mov ebx, eax
cmp eax, 1
jne 0x180006084
nop word [rax + rax]
xor r8d, r8d
mov edx, 0x9caa
mov rcx, rdi
call qword [sym.imp.USER32.dll_EnableMenuItem]
test ebx, ebx
je 0x180006084
mov ecx, ebx
call qword [sym.imp.USER32.dll_EnumClipboardFormats]
mov ebx, eax
cmp eax, 1
je 0x180006060
call qword [sym.imp.USER32.dll_CloseClipboard]
lea rax, [rbp + 0x30]
mov r9d, 0xf003f
xor r8d, r8d
mov qword [rsp + 0x20], rax
lea rdx, str.SoftwareNanoCraftDebugWin
mov rcx, 0xffffffff80000001
call qword [sym.imp.ADVAPI32.dll_RegOpenKeyExA]
test eax, eax
jne 0x1800060c3
mov rcx, qword [rbp + 0x30]
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
xor r8d, r8d
jmp 0x1800060c9
mov r8d, 1
mov edx, 0x9cb7
mov rcx, rdi
call qword [sym.imp.USER32.dll_EnableMenuItem]
mov eax, dword [rsi]
lea r9, [rbp - 0x50]
xorps xmm0, xmm0
mov qword [rbp - 0x4c], 1
xorps xmm1, xmm1
movdqa xmmword [rbp - 0x40], xmm0
and eax, 4
movdqa xmmword [rbp - 0x30], xmm1
add eax, eax
movdqa xmmword [rbp - 0x20], xmm0
xor r8d, r8d
mov dword [rbp - 0x44], eax
mov edx, 0x9cab
movdqa xmmword [rbp - 0x10], xmm1
mov rcx, rdi
mov dword [rbp - 0x50], 0x50
xor ebx, ebx
call qword [sym.imp.USER32.dll_SetMenuItemInfoA]
mov eax, dword [rsi]
lea r9, [rbp - 0x50]
xorps xmm0, xmm0
mov qword [rbp - 0x4c], 1
xorps xmm1, xmm1
movdqa xmmword [rbp - 0x40], xmm0
and eax, 2
movdqa xmmword [rbp - 0x30], xmm1
shl eax, 2
xor r8d, r8d
mov edx, 0x9ca7
mov dword [rbp - 0x44], eax
mov rcx, rdi
movdqa xmmword [rbp - 0x20], xmm0
movdqa xmmword [rbp - 0x10], xmm1
mov dword [rbp - 0x50], 0x50
call qword [sym.imp.USER32.dll_SetMenuItemInfoA]
mov eax, dword [rsi]
lea r9, [rbp - 0x50]
xorps xmm0, xmm0
shr eax, 4
xorps xmm1, xmm1
mov qword [rbp - 0x4c], 1
and eax, 8
movdqa xmmword [rbp - 0x40], xmm0
xor r8d, r8d
mov dword [rbp - 0x44], eax
mov edx, 0x9cb4
movdqa xmmword [rbp - 0x30], xmm1
mov rcx, rdi
movdqa xmmword [rbp - 0x20], xmm0
movdqa xmmword [rbp - 0x10], xmm1
mov dword [rbp - 0x50], 0x50
call qword [sym.imp.USER32.dll_SetMenuItemInfoA]
mov eax, dword [rsi]
lea r9, [rbp - 0x50]
xorps xmm0, xmm0
shr eax, 5
xorps xmm1, xmm1
mov qword [rbp - 0x4c], 1
and eax, 8
movdqa xmmword [rbp - 0x40], xmm0
xor r8d, r8d
mov dword [rbp - 0x44], eax
mov edx, 0x9cb5
movdqa xmmword [rbp - 0x30], xmm1
mov rcx, rdi
movdqa xmmword [rbp - 0x20], xmm0
movdqa xmmword [rbp - 0x10], xmm1
mov dword [rbp - 0x50], 0x50
call qword [sym.imp.USER32.dll_SetMenuItemInfoA]
mov eax, dword [rsi]
xorps xmm0, xmm0
xorps xmm1, xmm1
movdqa xmmword [rbp - 0x40], xmm0
movdqa xmmword [rbp - 0x30], xmm1
movdqa xmmword [rbp - 0x20], xmm0
movdqa xmmword [rbp - 0x10], xmm1
mov qword [rbp - 0x4c], 1
mov dword [rbp - 0x50], 0x50
and eax, 8
lea r9, [rbp - 0x50]
xor r8d, r8d
mov dword [rbp - 0x44], eax
mov edx, 0x9cac
mov rcx, rdi
call qword [sym.imp.USER32.dll_SetMenuItemInfoA]
mov eax, dword [rsi]
lea r9, [rbp - 0x50]
xorps xmm0, xmm0
shr eax, 1
xorps xmm1, xmm1
mov qword [rbp - 0x4c], 1
and eax, 8
movdqa xmmword [rbp - 0x40], xmm0
xor r8d, r8d
mov dword [rbp - 0x44], eax
mov edx, 0x9cb2
movdqa xmmword [rbp - 0x30], xmm1
mov rcx, rdi
movdqa xmmword [rbp - 0x20], xmm0
movdqa xmmword [rbp - 0x10], xmm1
mov dword [rbp - 0x50], 0x50
call qword [sym.imp.USER32.dll_SetMenuItemInfoA]
mov eax, dword [rsi]
lea r9, [rbp - 0x50]
xorps xmm0, xmm0
shr eax, 7
xorps xmm1, xmm1
mov qword [rbp - 0x4c], 1
and eax, 8
movdqa xmmword [rbp - 0x40], xmm0
xor r8d, r8d
mov dword [rbp - 0x44], eax
mov edx, 0x9cb8
movdqa xmmword [rbp - 0x30], xmm1
mov rcx, rdi
movdqa xmmword [rbp - 0x20], xmm0
movdqa xmmword [rbp - 0x10], xmm1
mov dword [rbp - 0x50], 0x50
call qword [sym.imp.USER32.dll_SetMenuItemInfoA]
cmp dword [rsi + 0x194], ebx
lea r9, [rbp - 0x50]
xorps xmm0, xmm0
mov qword [rbp - 0x4c], 1
xorps xmm1, xmm1
movdqa xmmword [rbp - 0x40], xmm0
mov eax, ebx
movdqa xmmword [rbp - 0x30], xmm1
mov r14d, 8
movdqa xmmword [rbp - 0x20], xmm0
cmove eax, r14d
movdqa xmmword [rbp - 0x10], xmm1
xor r8d, r8d
mov dword [rbp - 0x44], eax
mov edx, 0x9cb9
mov dword [rbp - 0x50], 0x50
mov rcx, rdi
call qword [sym.imp.USER32.dll_SetMenuItemInfoA]
cmp dword [rsi + 0x194], 1
lea r9, [rbp - 0x50]
xorps xmm0, xmm0
mov qword [rbp - 0x4c], 1
xorps xmm1, xmm1
movdqa xmmword [rbp - 0x40], xmm0
mov eax, ebx
movdqa xmmword [rbp - 0x30], xmm1
cmove eax, r14d
movdqa xmmword [rbp - 0x20], xmm0
xor r8d, r8d
mov dword [rbp - 0x44], eax
mov edx, 0x9cba
movdqa xmmword [rbp - 0x10], xmm1
mov rcx, rdi
mov dword [rbp - 0x50], 0x50
call qword [sym.imp.USER32.dll_SetMenuItemInfoA]
xorps xmm0, xmm0
mov qword [rbp - 0x4c], 1
xorps xmm1, xmm1
movdqa xmmword [rbp - 0x40], xmm0
movdqa xmmword [rbp - 0x30], xmm1
cmp dword [rsi + 0x194], 2
lea r9, [rbp - 0x50]
mov eax, ebx
movdqa xmmword [rbp - 0x20], xmm0
cmove eax, r14d
movdqa xmmword [rbp - 0x10], xmm1
xor r8d, r8d
mov dword [rbp - 0x44], eax
mov edx, 0x9cbb
mov dword [rbp - 0x50], 0x50
mov rcx, rdi
call qword [sym.imp.USER32.dll_SetMenuItemInfoA]
cmp dword [rsi + 0x194], 3
lea r9, [rbp - 0x50]
xorps xmm0, xmm0
mov qword [rbp - 0x4c], 1
xorps xmm1, xmm1
movdqa xmmword [rbp - 0x40], xmm0
mov eax, ebx
movdqa xmmword [rbp - 0x30], xmm1
cmove eax, r14d
movdqa xmmword [rbp - 0x20], xmm0
xor r8d, r8d
mov dword [rbp - 0x44], eax
mov edx, 0x9cbc
movdqa xmmword [rbp - 0x10], xmm1
mov rcx, rdi
mov dword [rbp - 0x50], 0x50
call qword [sym.imp.USER32.dll_SetMenuItemInfoA]
cmp dword [rsi + 0x194], 4
lea r9, [rbp - 0x50]
xorps xmm0, xmm0
mov qword [rbp - 0x4c], 1
xorps xmm1, xmm1
movdqa xmmword [rbp - 0x40], xmm0
mov eax, ebx
movdqa xmmword [rbp - 0x30], xmm1
cmove eax, r14d
movdqa xmmword [rbp - 0x20], xmm0
xor r8d, r8d
mov dword [rbp - 0x44], eax
mov edx, 0x9cbd
movdqa xmmword [rbp - 0x10], xmm1
mov rcx, rdi
mov dword [rbp - 0x50], 0x50
call qword [sym.imp.USER32.dll_SetMenuItemInfoA]
cmp dword [rsi + 0x194], 5
lea r9, [rbp - 0x50]
xorps xmm0, xmm0
mov qword [rbp - 0x4c], 1
cmove ebx, r14d
movdqa xmmword [rbp - 0x40], xmm0
xorps xmm1, xmm1
mov dword [rbp - 0x44], ebx
xor r8d, r8d
movdqa xmmword [rbp - 0x30], xmm1
mov edx, 0x9cbe
movdqa xmmword [rbp - 0x20], xmm0
mov rcx, rdi
movdqa xmmword [rbp - 0x10], xmm1
mov dword [rbp - 0x50], 0x50
call qword [sym.imp.USER32.dll_SetMenuItemInfoA]
mov r14, qword [rsp + 0xb8]
mov rbx, qword [rsp + 0xa0]
add rsp, 0x80
pop rdi
pop rsi
pop rbp
ret