Function at 0x140322110
Capabilities:
Open clipboard
Write clipboard data

Disassembly:
push rbx
push rbp
push r12
push r13
push r15
sub rsp, 0x50
xor r12d, r12d
mov ebp, 1
mov r15d, r12d
mov dword [rcx + 4], ebp
mov r13, rcx
call fcn.140065ae0
mov dword [r13 + 4], r12d
mov ebx, r12d
mov r9, qword [0x140463b30]
test r9, r9
je 0x140322552
movsxd r8, dword [0x140463b38]
mov qword [rsp + 0x88], rsi
mov qword [rsp + 0x90], rdi
lea rdi, [rbp - 2]
test r8, r8
jle 0x14032218f
mov edx, r12d
nop dword [rax]
mov rcx, qword [r9 + rdx*8]
mov rax, rdi
inc rax
cmp byte [rcx + rax], r12b
jne 0x140322177
add rbx, 2
inc rdx
add rbx, rax
cmp rdx, r8
jl 0x140322170
cmp byte [0x140463b3c], r12b
jne 0x1403221a2
cmp rbx, 2
jb 0x1403221a2
sub rbx, 2
mov edx, ebp
lea rcx, [rbx + 1]
call fcn.140032b90
mov rbp, rax
test rax, rax
je 0x140322542
mov qword [rsp + 0x98], r14
mov r8d, r12d
test ebx, ebx
jle 0x140322222
mov r9, r12
mov rdx, rax
mov r10, r12
nop dword [rax]
nop word [rax + rax]
mov rax, qword [0x140463b30]
mov rcx, qword [r10 + rax]
movzx eax, byte [r9 + rcx]
cmp al, 0xa
jne 0x1403221f9
mov byte [rdx], r12b
jmp 0x140322214
test al, al
jne 0x140322212
mov byte [rdx], 0xd
inc r8d
inc rdx
mov r9, rdi
add r10, 8
mov byte [rdx], 0xa
jmp 0x140322214
mov byte [rdx], al
inc r8d
inc rdx
inc r9
cmp r8d, ebx
jl 0x1403221e0
movzx eax, byte [0x140463b3c]
mov rcx, qword [0x14046a0e8]
mov dword [rsp + 0x40], eax
mov rax, rdi
mov dword [rsp + 0x44], ebx
mov dword [rsp + 0x48], r12d
inc rax
cmp byte [rcx + rax], r12b
jne 0x140322240
inc eax
mov ecx, 0x2002
add eax, ebx
mov dword [rsp + 0x4c], eax
inc eax
movsxd rdx, eax
call qword [sym.imp.KERNEL32.dll_GlobalAlloc]
mov rcx, rax
mov r14, rax
call qword [sym.imp.KERNEL32.dll_GlobalLock]
mov r9, rax
test rax, rax
je 0x1403222c7
mov rcx, qword [0x14046a0e8]
mov rdx, rax
nop
movzx eax, byte [rcx]
lea rcx, [rcx + 1]
mov byte [rdx], al
lea rdx, [rdx + 1]
test al, al
jne 0x140322280
mov rax, qword [0x14046a0e8]
nop dword [rax + rax]
inc rdi
cmp byte [rax + rdi], r12b
jne 0x1403222a0
lea rcx, [r9 + 1]
mov rdx, rbp
add rcx, rdi
lea r8, [rbx + 1]
call fcn.140003740
mov rcx, r14
call qword [sym.imp.KERNEL32.dll_GlobalUnlock]
jmp 0x1403222cc
mov dword [rsp + 0x4c], r12d
lea rdx, [rsp + 0x80]
mov dword [rsp + 0x80], ebx
mov rcx, rbp
call fcn.140321ad0
mov rdi, rax
test rax, rax
je 0x140322411
call qword [sym.imp.KERNEL32.dll_GetACP]
mov r9d, dword [rsp + 0x80]
mov r8, rdi
mov qword [rsp + 0x38], r12
mov ecx, eax
mov qword [rsp + 0x30], r12
xor edx, edx
mov dword [rsp + 0x28], r12d
mov qword [rsp + 0x20], r12
call qword [sym.imp.KERNEL32.dll_WideCharToMultiByte]
cmp dword [0x14045b3f8], r12d
mov esi, eax
mov ebx, eax
mov dword [rsp + 0x44], eax
jne 0x140322337
mov rcx, rbp
call fcn.140005660
mov eax, 1
test esi, esi
mov edx, eax
cmove esi, eax
movsxd rcx, esi
call fcn.140032b90
mov rbp, rax
test rax, rax
jne 0x14032236d
cmp dword [0x14045b3f8], r12d
jne 0x14032253a
mov rcx, rdi
call fcn.140005660
jmp 0x14032253a
call qword [sym.imp.KERNEL32.dll_GetACP]
mov r9d, dword [rsp + 0x80]
mov r8, rdi
mov qword [rsp + 0x38], r12
mov ecx, eax
mov qword [rsp + 0x30], r12
xor edx, edx
mov dword [rsp + 0x28], ebx
mov qword [rsp + 0x20], rbp
call qword [sym.imp.KERNEL32.dll_WideCharToMultiByte]
mov eax, dword [rsp + 0x80]
mov ecx, 0x2002
inc eax
movsxd rdx, eax
add rdx, rdx
call qword [sym.imp.KERNEL32.dll_GlobalAlloc]
mov rcx, rax
mov r15, rax
call qword [sym.imp.KERNEL32.dll_GlobalLock]
mov rsi, rax
test rax, rax
je 0x1403223f5
movsxd r8, dword [rsp + 0x80]
mov rdx, rdi
add r8, r8
mov rcx, rax
call fcn.140003740
movsxd rcx, dword [rsp + 0x80]
mov word [rsi + rcx*2], r12w
mov rcx, r15
call qword [sym.imp.KERNEL32.dll_GlobalUnlock]
cmp dword [0x14045b3f8], r12d
jne 0x140322406
mov rcx, rdi
call fcn.140005660
mov eax, dword [rsp + 0x80]
mov dword [rsp + 0x48], eax
lea eax, [rbx + 1]
mov ecx, 0x2002
movsxd rdx, eax
call qword [sym.imp.KERNEL32.dll_GlobalAlloc]
mov rcx, rax
mov rdi, rax
call qword [sym.imp.KERNEL32.dll_GlobalLock]
test rax, rax
je 0x14032244a
movsxd r8, ebx
mov rdx, rbp
mov rcx, rax
call fcn.140003740
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_GlobalUnlock]
mov edx, reloc.WSOCK32.dll_recv
mov ecx, 0x2002
call qword [sym.imp.KERNEL32.dll_GlobalAlloc]
mov rcx, rax
mov rsi, rax
call qword [sym.imp.KERNEL32.dll_GlobalLock]
movups xmm0, xmmword [rsp + 0x40]
mov rcx, rsi
movups xmmword [rax], xmm0
call qword [sym.imp.KERNEL32.dll_GlobalUnlock]
xor ecx, ecx
mov ebx, 0xa
call qword [sym.imp.USER32.dll_OpenClipboard]
test eax, eax
jne 0x1403224a6
cmp ebx, 0x1f4
jg 0x1403224f1
mov ecx, ebx
call qword [sym.imp.KERNEL32.dll_Sleep]
xor ecx, ecx
add ebx, ebx
call qword [sym.imp.USER32.dll_OpenClipboard]
test eax, eax
je 0x140322488
call qword [sym.imp.USER32.dll_EmptyClipboard]
test eax, eax
je 0x1403224eb
mov ecx, dword [r13 + 0x48]
mov rdx, rsi
call qword [sym.imp.USER32.dll_SetClipboardData]
mov rsi, r12
test r15, r15
je 0x1403224da
mov rdx, r15
mov ecx, recv
call qword [sym.imp.USER32.dll_SetClipboardData]
test rax, rax
cmovne r15, r12
mov rdx, rdi
mov ecx, 1
call qword [sym.imp.USER32.dll_SetClipboardData]
mov rdi, r12
call qword [sym.imp.USER32.dll_CloseClipboard]
cmp dword [0x14045b3f8], r12d
jne 0x140322502
mov rcx, rbp
call fcn.140005660
test r14, r14
je 0x140322510
mov rcx, r14
call qword [sym.imp.KERNEL32.dll_GlobalFree]
test rdi, rdi
je 0x14032251e
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_GlobalFree]
test r15, r15
je 0x14032252c
mov rcx, r15
call qword [sym.imp.KERNEL32.dll_GlobalFree]
test rsi, rsi
je 0x14032253a
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_GlobalFree]
mov r14, qword [rsp + 0x98]
mov rsi, qword [rsp + 0x88]
mov rdi, qword [rsp + 0x90]
add rsp, 0x50
pop r15
pop r13
pop r12
pop rbp
pop rbx
ret