Function at 0x140001950
Capabilities:
Open clipboard
Read clipboard data

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rsi
mov qword [rsp + 0x20], rdi
push rbp
push r12
push r13
push r14
push r15
mov rbp, rsp
sub rsp, 0x80
mov rax, qword [0x14000a040]
xor rax, rsp
mov qword [rbp - 0x10], rax
mov rdi, rcx
mov qword [rbp - 0x58], rcx
xor r13d, r13d
mov ecx, 0xd
call qword [sym.imp.USER32.dll_IsClipboardFormatAvailable]
test eax, eax
je 0x140001c7a
xor ecx, ecx
call qword [sym.imp.USER32.dll_OpenClipboard]
test eax, eax
je 0x140001ce8
mov ecx, 0xd
call qword [sym.imp.USER32.dll_GetClipboardData]
mov r12, rax
test rax, rax
je 0x140001ce2
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GlobalLock]
mov r14, rax
test rax, rax
je 0x140001ce2
xorps xmm0, xmm0
movups xmmword [rbp - 0x50], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp - 0x40], xmm1
mov rbx, 0xffffffffffffffff
nop
inc rbx
cmp word [rax + rbx*2], r13w
jne 0x1400019f0
movabs r15, 0x7ffffffffffffffe
cmp rbx, r15
ja 0x140001d3a
movabs rdx, 0x7fffffffffffffff
cmp rbx, 7
ja 0x140001a46
mov qword [rbp - 0x40], rbx
mov qword [rbp - 0x38], 7
add rbx, rbx
mov r8, rbx
mov rdx, r14
lea rcx, [rbp - 0x50]
call sub.VCRUNTIME140.dll_memcpy
mov word [rbp + rbx - 0x50], r13w
jmp 0x140001adb
mov rax, rbx
or rax, 7
cmp rax, r15
jbe 0x140001a8b
lea rcx, [rdx + rdx]
cmp rcx, 0x1000
jb 0x140001ab1
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x140001d2e
mov rcx, rax
call fcn.1400050b0
test rax, rax
je 0x140001c66
lea rsi, [rax + 0x27]
and rsi, 0xffffffffffffffe0
mov qword [rsi - 8], rax
jmp 0x140001ab9
mov r15, rax
mov ecx, 0xa
cmp rax, rcx
cmovb r15, rcx
lea rcx, [r15 + 1]
cmp rcx, rdx
ja 0x140001d2e
add rcx, rcx
jne 0x140001a56
mov rsi, r13
jmp 0x140001ab9
call fcn.1400050b0
mov rsi, rax
mov qword [rbp - 0x50], rsi
mov qword [rbp - 0x40], rbx
mov qword [rbp - 0x38], r15
add rbx, rbx
mov r8, rbx
mov rdx, r14
mov rcx, rsi
call sub.VCRUNTIME140.dll_memcpy
mov word [rbx + rsi], r13w
mov rcx, r12
call qword [sym.imp.KERNEL32.dll_GlobalUnlock]
call qword [sym.imp.USER32.dll_CloseClipboard]
lea rcx, [rbp - 0x50]
mov r8, qword [rbp - 0x50]
mov rdx, qword [rbp - 0x38]
cmp rdx, 7
cmova rcx, r8
mov rax, qword [rbp - 0x40]
lea r14, [rcx + rax*2]
lea rsi, [rbp - 0x50]
cmova rsi, r8
xorps xmm0, xmm0
movups xmmword [rbp - 0x30], xmm0
mov ebx, 0xf
mov qword [rbp - 0x18], rbx
cmp rsi, r14
jne 0x140001b30
mov qword [rbp - 0x20], r13
mov byte [rbp - 0x30], 0
jmp 0x140001c24
sub r14, rsi
sar r14, 1
movabs rax, 0x7fffffffffffffff
cmp r14, rax
ja 0x140001d40
cmp r14, rbx
jbe 0x140001be5
mov rbx, r14
or rbx, 0xf
cmp rbx, rax
jbe 0x140001b95
mov rbx, rax
movabs rax, 0x8000000000000000
add rax, 0x27
mov rcx, rax
call fcn.1400050b0
mov rcx, rax
test rax, rax
je 0x140001bcf
add rax, 0x27
and rax, 0xffffffffffffffe0
mov qword [rax - 8], rcx
mov qword [rbp - 0x30], rax
mov qword [rbp - 0x18], rbx
jmp 0x140001be9
mov eax, 0x16
cmp rbx, rax
cmovb rbx, rax
lea rcx, [rbx + 1]
test rcx, rcx
jne 0x140001bb7
mov rax, r13
mov qword [rbp - 0x30], rax
mov qword [rbp - 0x18], rbx
jmp 0x140001be9
cmp rcx, 0x1000
jb 0x140001bd6
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x140001d34
jmp 0x140001b6f
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.1400050b0
mov qword [rbp - 0x30], rax
mov qword [rbp - 0x18], rbx
jmp 0x140001be9
mov rax, qword [rbp - 0x30]
lea r8, [rbp - 0x30]
cmp rbx, 0xf
cmova r8, rax
mov rcx, r8
mov rdx, r14
test r14, r14
je 0x140001c13
movzx eax, byte [rsi]
mov byte [rcx], al
lea rcx, [rcx + 1]
lea rsi, [rsi + 2]
sub rdx, 1
jne 0x140001c00
mov qword [rbp - 0x20], r14
mov byte [r8 + r14], 0
mov rdx, qword [rbp - 0x38]
mov r8, qword [rbp - 0x50]
movups xmm0, xmmword [rbp - 0x30]
movups xmmword [rdi], xmm0
movups xmm1, xmmword [rbp - 0x20]
movups xmmword [rdi + 0x10], xmm1
cmp rdx, 7
jbe 0x140001cfe
lea rdx, [rdx*2 + 2]
mov rax, r8
cmp rdx, 0x1000
jb 0x140001c6d
add rdx, 0x27
mov r8, qword [r8 - 8]
sub rax, r8
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x140001c6d
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
mov rcx, r8
call fcn.14000532c
jmp 0x140001cfe
mov ecx, 1
call qword [sym.imp.USER32.dll_IsClipboardFormatAvailable]
test eax, eax
je 0x140001ce8
xor ecx, ecx
call qword [sym.imp.USER32.dll_OpenClipboard]
test eax, eax
je 0x140001ce8
mov ecx, 1
call qword [sym.imp.USER32.dll_GetClipboardData]
mov rbx, rax
test rax, rax
je 0x140001ce2
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GlobalLock]
test rax, rax
je 0x140001ce2
mov rdx, rax
lea rcx, [rbp - 0x30]
call fcn.1400037a0
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_GlobalUnlock]
call qword [sym.imp.USER32.dll_CloseClipboard]
movups xmm0, xmmword [rbp - 0x30]
movups xmmword [rdi], xmm0
movups xmm1, xmmword [rbp - 0x20]
movups xmmword [rdi + 0x10], xmm1
jmp 0x140001cfe
call qword [sym.imp.USER32.dll_CloseClipboard]
xorps xmm0, xmm0
movups xmmword [rdi], xmm0
mov qword [rdi + 0x10], r13
mov ebx, 0xf
mov qword [rdi + 0x18], rbx
mov byte [rdi], r13b
mov rax, rdi
mov rcx, qword [rbp - 0x10]
xor rcx, rsp
call fcn.140005090
lea r11, [rsp + 0x80]
mov rbx, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x40]
mov rdi, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret
call fcn.1400011b0
nop
call fcn.1400011b0
nop
call fcn.140001250
nop
call fcn.140001250
int3