Function at 0x7ff7c00fd0a0
Capabilities:
Open clipboard
Write clipboard data

Disassembly:
push rdi
sub rsp, 0x30
mov rdi, rdx
call qword [sym.imp.USER32.dll_OpenClipboard]
test eax, eax
je 0x7ff7c00fd31a
mov qword ss:[rsp + 0x50], rsi
call qword [sym.imp.USER32.dll_EmptyClipboard]
mov ecx, dword [rdi + 0x1c]
mov esi, dword [rdi + 0x20]
cmp ecx, esi
jle 0x7ff7c00fd0dc
mov eax, esi
mov dword [rdi + 0x20], ecx
mov esi, ecx
mov dword [rdi + 0x1c], eax
mov ecx, eax
sub esi, ecx
mov qword [rsp + 0x40], rbx
cmp dword [rdi + 0x18], 1
mov ecx, 0x42
mov qword [rsp + 0x48], rbp
mov qword [rsp + 0x28], r14
mov edx, esi
je 0x7ff7c00fd205
mov ebx, esi
call qword [sym.imp.kernel32.dll_GlobalAlloc]
mov rbp, rax
test rax, rax
je 0x7ff7c00fd2fb
mov rcx, rax
call qword [sym.imp.kernel32.dll_GlobalLock]
movsxd rdx, dword [rdi + 0x1c]
mov r8d, ebx
add rdx, qword [rdi]
mov rcx, rax
call fcn.7ff7c0125120
mov rcx, rbp
call qword [sym.imp.kernel32.dll_GlobalUnlock]
lea edx, [rsi*2 + 1]
mov ecx, 0x42
add edx, esi
add rdx, rdx
call qword [sym.imp.kernel32.dll_GlobalAlloc]
mov rbx, rax
test rax, rax
je 0x7ff7c00fd1e6
mov rcx, rax
call qword [sym.imp.kernel32.dll_GlobalLock]
xor r14d, r14d
mov r8, rax
mov r9d, r14d
test esi, esi
je 0x7ff7c00fd1c5
lea r10, [0x7ff7c01d1970]
lea r11d, [r14 + 0x20]
nop
mov edx, dword [rdi + 0x1c]
mov rcx, qword [rdi]
add edx, r9d
movzx eax, byte [rdx + rcx]
shr rax, 4
movsx eax, byte [rax + r10]
mov word [r8], ax
mov ecx, dword [rdi + 0x1c]
mov rax, qword [rdi]
add ecx, r9d
inc r9d
movzx edx, byte [rcx + rax]
and edx, 0xf
movsx eax, byte [rdx + r10]
mov word [r8 + 2], ax
mov word [r8 + 4], r11w
add r8, 6
cmp r9d, esi
jb 0x7ff7c00fd180
mov rcx, rbx
mov word [r8], r14w
call qword [sym.imp.kernel32.dll_GlobalUnlock]
mov rdx, rbx
mov ecx, 0xd
call qword [sym.imp.USER32.dll_SetClipboardData]
lea rcx, [0x7ff7c018d258]
call qword [sym.imp.USER32.dll_RegisterClipboardFormatW]
mov ecx, eax
mov rdx, rbp
call qword [sym.imp.USER32.dll_SetClipboardData]
nop
jmp 0x7ff7c00fd2fb
mov qword [rsp + 0x58], r12
mov qword [rsp + 0x20], r15
mov ebp, esi
call qword [sym.imp.kernel32.dll_GlobalAlloc]
lea edx, [rsi + 1]
mov ecx, 0x42
mov r12, rax
call qword [sym.imp.kernel32.dll_GlobalAlloc]
mov r15, rax
test r12, r12
je 0x7ff7c00fd2f1
mov rcx, r12
call qword [sym.imp.kernel32.dll_GlobalLock]
movsxd rdx, dword [rdi + 0x1c]
mov r8d, ebp
add rdx, qword [rdi]
mov rcx, rax
call fcn.7ff7c0125120
mov rcx, r12
call qword [sym.imp.kernel32.dll_GlobalUnlock]
test r15, r15
je 0x7ff7c00fd2d4
mov rcx, r15
call qword [sym.imp.kernel32.dll_GlobalLock]
movsxd rdx, dword [rdi + 0x1c]
mov r8d, ebp
add rdx, qword [rdi]
mov rcx, rax
mov rbx, rax
call fcn.7ff7c0125120
test esi, esi
je 0x7ff7c00fd2b8
xor r14d, r14d
movzx eax, byte [rbx]
cmp byte [rdi + 0x2c], r14b
jge 0x7ff7c00fd29c
mov edx, 0x117
movzx ecx, ax
call fcn.7ff7c012aac8
mov ecx, eax
jmp 0x7ff7c00fd2a8
sub eax, 0x20
mov ecx, r14d
cmp eax, 0x5e
setbe cl
test ecx, ecx
jne 0x7ff7c00fd2af
mov byte [rbx], 0x2e
inc rbx
sub rbp, 1
jne 0x7ff7c00fd282
mov rcx, r15
mov byte [rbx], 0
call qword [sym.imp.kernel32.dll_GlobalUnlock]
mov rdx, r15
mov ecx, 1
call qword [sym.imp.USER32.dll_SetClipboardData]
lea rcx, [0x7ff7c018d258]
nop dword [rax + rax]
call qword [sym.imp.USER32.dll_RegisterClipboardFormatW]
mov ecx, eax
mov rdx, r12
call qword [sym.imp.USER32.dll_SetClipboardData]
mov r12, qword [rsp + 0x58]
mov r15, qword [rsp + 0x20]
nop dword [rax + rax]
call qword [sym.imp.USER32.dll_CloseClipboard]
mov r14, qword [rsp + 0x28]
mov rsi, qword [rsp + 0x50]
mov rbp, qword [rsp + 0x48]
mov rbx, qword [rsp + 0x40]
add rsp, 0x30
pop rdi
nop
ret