Function at 0x14015a3e0
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 0x14015a65a
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 0x14015a41c
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 0x14015a545
mov ebx, esi
call qword [sym.imp.KERNEL32.dll_GlobalAlloc]
mov rbp, rax
test rax, rax
je 0x14015a63b
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.140188690
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 0x14015a526
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GlobalLock]
xor r14d, r14d
mov r8, rax
mov r9d, r14d
test esi, esi
je 0x14015a505
lea r10, str.0123456789abcdefghijklmnopqrstuvwxyz_________._:_________
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 0x14015a4c0
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, str.BinaryData
call qword [sym.imp.USER32.dll_RegisterClipboardFormatW]
mov ecx, eax
mov rdx, rbp
call qword [sym.imp.USER32.dll_SetClipboardData]
nop
jmp 0x14015a63b
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 0x14015a631
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.140188690
mov rcx, r12
call qword [sym.imp.KERNEL32.dll_GlobalUnlock]
test r15, r15
je 0x14015a614
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.140188690
test esi, esi
je 0x14015a5f8
xor r14d, r14d
movzx eax, byte [rbx]
cmp byte [rdi + 0x2c], r14b
jge 0x14015a5dc
mov edx, 0x117
movzx ecx, ax
call fcn.14019011c
mov ecx, eax
jmp 0x14015a5e8
sub eax, 0x20
mov ecx, r14d
cmp eax, 0x5e
setbe cl
test ecx, ecx
jne 0x14015a5ef
mov byte [rbx], 0x2e
inc rbx
sub rbp, 1
jne 0x14015a5c2
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, str.BinaryData
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
ret