Function at 0x140007270
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 [0x14012ded8], 0
mov rbx, r8
mov rdi, rdx
jne 0x140007312
xor ebp, ebp
test rdx, rdx
je 0x1400073f5
mov eax, 0xffffffff
cmp rbx, rax
jne 0x1400072bb
mov rax, 0xffffffffffffffff
inc rax
cmp word [rdx + rax*2], bp
jne 0x1400072b0
mov ebx, eax
test rbx, rbx
je 0x1400073f5
lea rsi, [rbx + 1]
test rsi, rsi
je 0x140007312
lea rdx, [rsi + rsi]
mov ecx, 2
call qword [sym.imp.KERNEL32.dll_GlobalAlloc]
mov qword [0x14012dec8], rax
test rax, rax
jne 0x140007329
mov rax, qword [0x14012d4f8]
lea rdx, str.Out_of_memory.
mov qword [rsp + 0x28], rax
lea rcx, [0x14012d680]
xor r9d, r9d
mov qword [rsp + 0x20], rbp
xor r8d, r8d
call fcn.14000f470
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 [0x14012ded8], rax
test rax, rax
jne 0x1400073ca
mov rcx, qword [0x14012dec8]
call qword [sym.imp.KERNEL32.dll_GlobalFree]
mov qword [0x14012dec8], rax
mov rax, qword [0x1401251d8]
cmp dword [rax + 0x60], ebp
jne 0x14000739f
cmp dword [0x14012dd98], ebp
jne 0x14000739f
cmp byte [0x140127ada], bpl
jne 0x14000739f
mov qword [rsp + 0x28], rbp
lea r9, [0x140101bd0]
xor r8d, r8d
mov qword [rsp + 0x20], rbp
lea rdx, str.An_internal_function_call_failed.
lea rcx, [0x14012d680]
call fcn.140010340
jmp 0x140007312
mov qword [rsp + 0x28], rbp
lea r8, [0x140101bd0]
xor r9d, r9d
mov dword [rsp + 0x20], ebp
lea rdx, str.An_internal_function_call_failed.
lea rcx, [0x14012d680]
call fcn.14000ef80
jmp 0x140007312
mov dword [0x14012dee8], esi
mov word [rax], bp
mov rsi, qword [0x14012ded8]
test rsi, rsi
je 0x140007312
mov r8, rbx
mov rdx, rdi
mov rcx, rsi
call fcn.1400d42d4
mov word [rsi + rbx*2], bp
cmp dword [0x14012deec], ebp
jne 0x140007417
call fcn.1400077a0
test eax, eax
jne 0x140007417
lea rdx, str.Cant_open_clipboard_for_writing.
call fcn.140007560
jmp 0x140007314
call qword [sym.imp.USER32.dll_EmptyClipboard]
test eax, eax
jne 0x14000746a
cmp dword [0x14012deec], ebp
je 0x140007459
cmp qword [0x14012ded0], rbp
je 0x140007446
mov rcx, qword [0x14012dec0]
call qword [sym.imp.KERNEL32.dll_GlobalUnlock]
mov qword [0x14012ded0], rbp
call qword [sym.imp.USER32.dll_CloseClipboard]
mov dword [0x14012deec], ebp
mov qword [0x14012dec0], rbp
lea rdx, [0x140103dc8]
call fcn.140007560
jmp 0x140007314
mov rdx, qword [0x14012dec8]
test rdx, rdx
je 0x1400074b4
mov rbx, qword [0x14012ded8]
test rbx, rbx
je 0x1400074fd
movzx ebx, word [rbx]
mov rcx, rdx
call qword [sym.imp.KERNEL32.dll_GlobalUnlock]
mov qword [0x14012ded8], rbp
mov dword [0x14012dee8], ebp
test bx, bx
jne 0x1400074f6
mov rcx, qword [0x14012dec8]
call qword [sym.imp.KERNEL32.dll_GlobalFree]
mov qword [0x14012dec8], rax
cmp dword [0x14012deec], ebp
je 0x1400074ec
cmp qword [0x14012ded0], rbp
je 0x1400074d9
mov rcx, qword [0x14012dec0]
call qword [sym.imp.KERNEL32.dll_GlobalUnlock]
mov qword [0x14012ded0], rbp
call qword [sym.imp.USER32.dll_CloseClipboard]
mov dword [0x14012deec], ebp
mov qword [0x14012dec0], rbp
mov eax, 1
jmp 0x140007314
mov rdx, qword [0x14012dec8]
mov ecx, recv
call qword [sym.imp.USER32.dll_SetClipboardData]
test rax, rax
je 0x140007516
mov qword [0x14012dec8], rbp
jmp 0x1400074b4
cmp dword [0x14012deec], ebp
je 0x14000754e
cmp qword [0x14012ded0], rbp
je 0x14000753b
mov rcx, qword [0x14012dec0]
call qword [sym.imp.KERNEL32.dll_GlobalUnlock]
mov qword [0x14012ded0], rbp
call qword [sym.imp.USER32.dll_CloseClipboard]
mov dword [0x14012deec], ebp
mov qword [0x14012dec0], rbp
lea rdx, [0x140103de8]
call fcn.140007560
jmp 0x140007314