Function at 0x1400071e0
Capabilities:
Write clipboard data

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rbp
mov qword [rsp + 0x18], rsi
push rdi
sub rsp, 0x30
cmp qword [0x14012cec8], 0
mov rbx, r8
mov rdi, rdx
jne 0x140007282
xor ebp, ebp
test rdx, rdx
je 0x140007365
mov eax, 0xffffffff
cmp rbx, rax
jne 0x14000722b
mov rax, 0xffffffffffffffff
inc rax
cmp word [rdx + rax*2], bp
jne 0x140007220
mov ebx, eax
test rbx, rbx
je 0x140007365
lea rsi, [rbx + 1]
test rsi, rsi
je 0x140007282
lea rdx, [rsi + rsi]
mov ecx, 2
call qword [sym.imp.KERNEL32.dll_GlobalAlloc]
mov qword [0x14012ceb8], rax
test rax, rax
jne 0x140007299
mov rax, qword [0x14012c4e8]
lea rdx, str.Out_of_memory.
mov qword [rsp + 0x28], rax
lea rcx, [0x14012c670]
xor r9d, r9d
mov qword [rsp + 0x20], rbp
xor r8d, r8d
call fcn.14000f460
xor eax, eax
mov rbx, qword [rsp + 0x40]
mov rbp, qword [rsp + 0x48]
mov rsi, qword [rsp + 0x50]
add rsp, 0x30
pop rdi
ret
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GlobalLock]
mov qword [0x14012cec8], rax
test rax, rax
jne 0x14000733a
mov rcx, qword [0x14012ceb8]
call qword [sym.imp.KERNEL32.dll_GlobalFree]
mov qword [0x14012ceb8], rax
mov rax, qword [0x1401241d8]
cmp dword [rax + 0x60], ebp
jne 0x14000730f
cmp dword [0x14012cd88], ebp
jne 0x14000730f
cmp byte [0x140126ada], bpl
jne 0x14000730f
mov qword [rsp + 0x28], rbp
lea r9, [0x140100be0]
xor r8d, r8d
mov qword [rsp + 0x20], rbp
lea rdx, str.An_internal_function_call_failed.
lea rcx, [0x14012c670]
call fcn.140010320
jmp 0x140007282
mov qword [rsp + 0x28], rbp
lea r8, [0x140100be0]
xor r9d, r9d
mov dword [rsp + 0x20], ebp
lea rdx, str.An_internal_function_call_failed.
lea rcx, [0x14012c670]
call fcn.14000ef70
jmp 0x140007282
mov dword [0x14012ced8], esi
mov word [rax], bp
mov rsi, qword [0x14012cec8]
test rsi, rsi
je 0x140007282
mov r8, rbx
mov rdx, rdi
mov rcx, rsi
call fcn.1400d3054
mov word [rsi + rbx*2], bp
cmp dword [0x14012cedc], ebp
jne 0x140007387
call fcn.140007710
test eax, eax
jne 0x140007387
lea rdx, str.Cant_open_clipboard_for_writing.
call fcn.1400074d0
jmp 0x140007284
call qword [sym.imp.USER32.dll_EmptyClipboard]
test eax, eax
jne 0x1400073da
cmp dword [0x14012cedc], ebp
je 0x1400073c9
cmp qword [0x14012cec0], rbp
je 0x1400073b6
mov rcx, qword [0x14012ceb0]
call qword [sym.imp.KERNEL32.dll_GlobalUnlock]
mov qword [0x14012cec0], rbp
call qword [sym.imp.USER32.dll_CloseClipboard]
mov dword [0x14012cedc], ebp
mov qword [0x14012ceb0], rbp
lea rdx, [0x140102dd8]
call fcn.1400074d0
jmp 0x140007284
mov rdx, qword [0x14012ceb8]
test rdx, rdx
je 0x140007424
mov rbx, qword [0x14012cec8]
test rbx, rbx
je 0x14000746d
movzx ebx, word [rbx]
mov rcx, rdx
call qword [sym.imp.KERNEL32.dll_GlobalUnlock]
mov qword [0x14012cec8], rbp
mov dword [0x14012ced8], ebp
test bx, bx
jne 0x140007466
mov rcx, qword [0x14012ceb8]
call qword [sym.imp.KERNEL32.dll_GlobalFree]
mov qword [0x14012ceb8], rax
cmp dword [0x14012cedc], ebp
je 0x14000745c
cmp qword [0x14012cec0], rbp
je 0x140007449
mov rcx, qword [0x14012ceb0]
call qword [sym.imp.KERNEL32.dll_GlobalUnlock]
mov qword [0x14012cec0], rbp
call qword [sym.imp.USER32.dll_CloseClipboard]
mov dword [0x14012cedc], ebp
mov qword [0x14012ceb0], rbp
mov eax, 1
jmp 0x140007284
mov rdx, qword [0x14012ceb8]
mov ecx, recv
call qword [sym.imp.USER32.dll_SetClipboardData]
test rax, rax
je 0x140007486
mov qword [0x14012ceb8], rbp
jmp 0x140007424
cmp dword [0x14012cedc], ebp
je 0x1400074be
cmp qword [0x14012cec0], rbp
je 0x1400074ab
mov rcx, qword [0x14012ceb0]
call qword [sym.imp.KERNEL32.dll_GlobalUnlock]
mov qword [0x14012cec0], rbp
call qword [sym.imp.USER32.dll_CloseClipboard]
mov dword [0x14012cedc], ebp
mov qword [0x14012ceb0], rbp
lea rdx, [0x140102df8]
call fcn.1400074d0
jmp 0x140007284