Function at 0x1400d1ae0
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 0x1400d1d28
call qword [sym.imp.USER32.dll_EmptyClipboard]
mov eax, dword [rdi + 0x1c]
mov ecx, dword [rdi + 0x20]
cmp eax, ecx
jle 0x1400d1b0d
mov dword [rdi + 0x20], eax
mov dword [rdi + 0x1c], ecx
cmp dword [rdi + 0x18], 1
mov ecx, 0x42
mov qword [rsp + 0x40], rbx
mov qword [rsp + 0x48], rbp
mov qword [rsp + 0x50], rsi
mov qword [rsp + 0x28], r14
je 0x1400d1c3d
mov ebx, dword [rdi + 0x20]
sub ebx, dword [rdi + 0x1c]
mov edx, ebx
mov esi, ebx
call qword [sym.imp.KERNEL32.dll_GlobalAlloc]
mov rbp, rax
test rax, rax
je 0x1400d1d0e
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GlobalLock]
movsxd rdx, dword [rdi + 0x1c]
mov r8d, esi
add rdx, qword [rdi]
mov rcx, rax
call fcn.1400e31d0
mov rcx, rbp
call qword [sym.imp.KERNEL32.dll_GlobalUnlock]
lea edx, [rbx*2 + 1]
mov ecx, 0x42
add edx, ebx
add rdx, rdx
call qword [sym.imp.KERNEL32.dll_GlobalAlloc]
mov rsi, rax
test rax, rax
je 0x1400d1c20
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GlobalLock]
xor r11d, r11d
mov r8, rax
mov r9d, r11d
test ebx, ebx
je 0x1400d1c05
lea r10, str.0123456789abcdefghijklmnopqrstuvwxyz_________._:_________
lea r14d, [r11 + 0x20]
nop dword [rax]
nop dword [rax + rax]
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], r14w
add r8, 6
cmp r9d, ebx
jb 0x1400d1bc0
mov rcx, rsi
mov word [r8], r11w
call qword [sym.imp.KERNEL32.dll_GlobalUnlock]
mov rdx, rsi
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]
jmp 0x1400d1d0e
mov r14d, dword [rdi + 0x20]
sub r14d, dword [rdi + 0x1c]
mov edx, r14d
mov qword [rsp + 0x20], r15
mov esi, r14d
call qword [sym.imp.KERNEL32.dll_GlobalAlloc]
lea edx, [r14 + 1]
mov ecx, 0x42
mov r15, rax
call qword [sym.imp.KERNEL32.dll_GlobalAlloc]
mov rbp, rax
test r15, r15
je 0x1400d1d09
mov rcx, r15
call qword [sym.imp.KERNEL32.dll_GlobalLock]
movsxd rdx, dword [rdi + 0x1c]
mov r8d, esi
add rdx, qword [rdi]
mov rcx, rax
call fcn.1400e31d0
mov rcx, r15
call qword [sym.imp.KERNEL32.dll_GlobalUnlock]
test rbp, rbp
je 0x1400d1cf1
mov rcx, rbp
call qword [sym.imp.KERNEL32.dll_GlobalLock]
movsxd rdx, dword [rdi + 0x1c]
mov r8d, esi
add rdx, qword [rdi]
mov rcx, rax
mov rbx, rax
call fcn.1400e31d0
test r14d, r14d
je 0x1400d1cd7
movzx ecx, byte [rbx]
sub ecx, 0x20
cmp ecx, 0x5e
jbe 0x1400d1cce
mov byte [rbx], 0x2e
inc rbx
sub rsi, 1
jne 0x1400d1cc0
mov rcx, rbp
mov byte [rbx], 0
call qword [sym.imp.KERNEL32.dll_GlobalUnlock]
mov rdx, rbp
mov ecx, 1
call qword [sym.imp.USER32.dll_SetClipboardData]
lea rcx, str.BinaryData
call qword [sym.imp.USER32.dll_RegisterClipboardFormatW]
mov ecx, eax
mov rdx, r15
call qword [sym.imp.USER32.dll_SetClipboardData]
mov r15, qword [rsp + 0x20]
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