Function at 0x1400bbe80
Capabilities:
Write clipboard data

Disassembly:
push rbx
push rsi
push r12
sub rsp, 0x40
mov rbx, rcx
mov ecx, dword [rdx + 0x10]
mov r12, rdx
dec ecx
je 0x1400bc517
dec ecx
je 0x1400bc4ef
sub ecx, 2
je 0x1400bc4dc
dec ecx
mov qword [rsp + 0x60], rbp
mov qword [rsp + 0x70], rdi
mov qword [rsp + 0x38], r13
je 0x1400bbee2
dec ecx
jne 0x1400bc1fc
mov rdi, qword [rdx]
mov rcx, rdi
mov rax, qword [rdi]
call qword [rax + reloc.WSOCK32.dll_htonl]
mov rdx, rdi
mov rcx, rbx
call fcn.1400bcf20
jmp 0x1400bc1a1
mov rdx, qword [rdx + 8]
test rdx, rdx
je 0x1400bc1fc
mov r13, qword [r12]
cmp word [r13], 0x30
je 0x1400bbf13
mov rdx, qword [rdx]
mov r8b, reloc.OLEAUT32.dll_SafeArrayGetElement
mov rcx, rbx
call fcn.140001090
mov eax, 1
jmp 0x1400bc1a1
movzx edx, byte [rbx + 0x23]
mov qword [rsp + 0x30], r14
test dl, dl
jne 0x1400bbf3d
mov rcx, qword [rbx + 0x10]
xor r9d, r9d
or r8, 0xffffffffffffffff
mov rdx, r13
mov byte [rsp + 0x20], 1
call fcn.1400bcba0
jmp 0x1400bc1f4
xor esi, esi
mov r8b, 1
test r13, r13
jne 0x1400bbf56
xor r8b, r8b
mov r14d, esi
lea r13, [0x1400f1604]
jmp 0x1400bbf78
cmp qword [rbx + 8], r13
jne 0x1400bbf65
mov r14, qword [rbx + 0x10]
shr r14, 1
jmp 0x1400bbf78
or rcx, 0xffffffffffffffff
xor eax, eax
mov rdi, r13
repne scasw ax, word [rdi]
not rcx
lea r14, [rcx - 1]
lea rax, [r14 + 1]
lea rbp, [rax + rax]
cmp dl, 2
jne 0x1400bbf95
mov rdx, r14
mov rcx, r13
call fcn.140006f10
jmp 0x1400bc1f4
mov r9, qword [0x1401255a0]
cmp rbp, r9
jbe 0x1400bbfb3
cmp rbp, qword [rbx + 0x18]
jbe 0x1400bbfb3
lea rdx, [0x1401103d0]
jmp 0x1400bc1e1
cmp rax, 2
jae 0x1400bbfd3
test r8b, r8b
mov rcx, rbx
setne sil
xor r8d, r8d
lea edx, [rsi + 3]
call fcn.1400bd250
jmp 0x1400bc184
movzx eax, byte [rbx + 0x21]
test al, 2
je 0x1400bbff0
mov rcx, qword [rbx]
and al, 0x3d
mov byte [rbx + 0x21], al
mov rax, qword [rcx]
call qword [rax + reloc.WSOCK32.dll_recv]
mov r9, qword [0x1401255a0]
mov r8, qword [rbx + 0x18]
and byte [rbx + 0x21], 0x82
cmp rbp, r8
jbe 0x1400bc15f
movzx r10d, byte [rbx + 0x20]
movzx eax, r10b
cmp r10b, 1
jbe 0x1400bc023
cmp al, 2
je 0x1400bc060
mov rdi, qword [rsp + 0x68]
mov rax, qword [rsp + 0x68]
jmp 0x1400bc153
mov edi, 0x80
cmp rbp, rdi
ja 0x1400bc060
cmp rbp, 8
ja 0x1400bc03a
mov edi, 8
jmp 0x1400bc046
mov eax, reloc.WSOCK32.dll_recv
cmp rbp, rax
cmovbe rdi, rax
mov rcx, rdi
call fcn.1400b55f0
test rax, rax
je 0x1400bc1f8
mov byte [rbx + 0x20], 1
jmp 0x1400bc153
cmp rbp, 0x20
jae 0x1400bc070
mov edi, SafeArrayAllocDescriptor
jmp 0x1400bc11a
mov edi, 0x208
cmp rbp, rdi
jb 0x1400bc11a
cmp rbp, 0x50000
jae 0x1400bc0d6
pxor xmm0, xmm0
cvtsi2sd xmm0, rbp
test rbp, rbp
jns 0x1400bc09d
addsd xmm0, qword [0x140111fc8]
mulsd xmm0, qword [0x140112000]
movsd xmm1, qword [0x140111ff8]
xor ecx, ecx
comisd xmm0, xmm1
jbe 0x1400bc0cc
subsd xmm0, xmm1
comisd xmm0, xmm1
jae 0x1400bc0cc
movabs rax, 0x8000000000000000
mov rcx, rax
cvttsd2si rdi, xmm0
add rdi, rcx
jmp 0x1400bc11a
cmp rbp, 0x320000
jae 0x1400bc0e8
lea rdi, [rbp + 0x8000]
jmp 0x1400bc11a
cmp rbp, 0xc80000
jae 0x1400bc113
movabs rax, 0x47ae147ae147ae15
mov rdi, rbp
mul rbp
sub rdi, rdx
shr rdi, 1
add rdi, rdx
shr rdi, 6
add rdi, rbp
jmp 0x1400bc11a
lea rdi, [rbp + 0x20000]
cmp rdi, r9
cmova rdi, r9
cmp r10b, 2
jne 0x1400bc13a
test r8, r8
je 0x1400bc13a
mov rcx, qword [rbx + 8]
mov bpl, 1
call fcn.1400d6528
jmp 0x1400bc13d
xor bpl, bpl
test rdi, rdi
js 0x1400bc1b9
mov rcx, rdi
call fcn.1400d6468
test rax, rax
je 0x1400bc1b9
mov byte [rbx + 0x20], 2
and byte [rbx + 0x21], 0x7f
mov qword [rbx + 8], rax
mov qword [rbx + 0x18], rdi
mov rcx, qword [rbx + 8]
cmp rcx, r13
je 0x1400bc174
lea r8, [r14 + r14]
mov rdx, r13
call fcn.1400d72b0
mov rax, qword [rbx + 8]
lea rcx, [r14 + r14]
mov word [rcx + rax], si
mov qword [rbx + 0x10], rcx
mov rdx, qword [r12 + 8]
mov r8b, reloc.WSOCK32.dll_recv
mov rcx, rbx
mov rdx, qword [rdx]
call fcn.140001090
mov eax, 1
mov r14, qword [rsp + 0x30]
mov rdi, qword [rsp + 0x70]
mov rbp, qword [rsp + 0x60]
mov r13, qword [rsp + 0x38]
add rsp, 0x40
pop r12
pop rsi
pop rbx
ret
test bpl, bpl
je 0x1400bc1cf
lea rax, [0x14012c438]
mov qword [rbx + 0x18], rsi
mov qword [rbx + 8], rax
jmp 0x1400bc1d6
mov rax, qword [rbx + 8]
mov word [rax], si
mov qword [rbx + 0x10], rsi
lea rdx, str.Out_of_memory.
lea r8, [0x1400f1604]
lea rcx, [0x14012c540]
call fcn.14004e5d0
test eax, eax
jne 0x1400bc184
xor eax, eax
jmp 0x1400bc19c
movzx edx, byte [rbx + 0x23]
mov r12, qword [r12]
test dl, dl
jne 0x1400bc227
mov rcx, qword [rbx + 0x10]
xor r9d, r9d
or r8, 0xffffffffffffffff
mov rdx, r12
mov byte [rsp + 0x20], 1
call fcn.1400bcba0
mov esi, eax
jmp 0x1400bc1a1
xor esi, esi
mov r8b, 1
test r12, r12
jne 0x1400bc240
xor r8b, r8b
mov r13d, esi
lea r12, [0x1400f1604]
jmp 0x1400bc262
cmp qword [rbx + 8], r12
jne 0x1400bc24f
mov r13, qword [rbx + 0x10]
shr r13, 1
jmp 0x1400bc262
or rcx, 0xffffffffffffffff
xor eax, eax
mov rdi, r12
repne scasw ax, word [rdi]
not rcx
lea r13, [rcx - 1]
lea rax, [r13 + 1]
lea rbp, [rax + rax]
cmp dl, 2
jne 0x1400bc281
mov rdx, r13
mov rcx, r12
call fcn.140006f10
mov esi, eax
jmp 0x1400bc1a1
mov r9, qword [0x1401255a0]
cmp rbp, r9
jbe 0x1400bc2b4
cmp rbp, qword [rbx + 0x18]
jbe 0x1400bc2b4
lea r8, [0x1400f1604]
lea rdx, [0x1401103d0]
lea rcx, [0x14012c540]
call fcn.14004e5d0
mov esi, eax
jmp 0x1400bc1a1
cmp rax, 2
jae 0x1400bc2db
test r8b, r8b
mov rcx, rbx
setne sil
xor r8d, r8d
lea edx, [rsi + 3]
call fcn.1400bd250
mov esi, 1
mov eax, esi
jmp 0x1400bc1a1
movzx eax, byte [rbx + 0x21]
test al, 2
je 0x1400bc2f8
mov rcx, qword [rbx]
and al, 0x3d
mov byte [rbx + 0x21], al
mov rax, qword [rcx]
call qword [rax + reloc.WSOCK32.dll_recv]
mov r9, qword [0x1401255a0]
mov r8, qword [rbx + 0x18]
and byte [rbx + 0x21], 0x82
cmp rbp, r8
jbe 0x1400bc467
movzx r10d, byte [rbx + 0x20]
movzx eax, r10b
cmp r10b, 1
jbe 0x1400bc32b
cmp al, 2
je 0x1400bc368
mov rdi, qword [rsp + 0x68]
mov rax, qword [rsp + 0x68]
jmp 0x1400bc45b
mov edi, 0x80
cmp rbp, rdi
ja 0x1400bc368
cmp rbp, 8
ja 0x1400bc342
mov edi, 8
jmp 0x1400bc34e
mov eax, reloc.WSOCK32.dll_recv
cmp rbp, rax
cmovbe rdi, rax
mov rcx, rdi
call fcn.1400b55f0
test rax, rax
je 0x1400bc493
mov byte [rbx + 0x20], 1
jmp 0x1400bc45b
cmp rbp, 0x20
jae 0x1400bc378
mov edi, SafeArrayAllocDescriptor
jmp 0x1400bc422
mov edi, 0x208
cmp rbp, rdi
jb 0x1400bc422
cmp rbp, 0x50000
jae 0x1400bc3de
pxor xmm0, xmm0
cvtsi2sd xmm0, rbp
test rbp, rbp
jns 0x1400bc3a5
addsd xmm0, qword [0x140111fc8]
mulsd xmm0, qword [0x140112000]
movsd xmm1, qword [0x140111ff8]
xor ecx, ecx
comisd xmm0, xmm1
jbe 0x1400bc3d4
subsd xmm0, xmm1
comisd xmm0, xmm1
jae 0x1400bc3d4
movabs rax, 0x8000000000000000
mov rcx, rax
cvttsd2si rdi, xmm0
add rdi, rcx
jmp 0x1400bc422
cmp rbp, 0x320000
jae 0x1400bc3f0
lea rdi, [rbp + 0x8000]
jmp 0x1400bc422
cmp rbp, 0xc80000
jae 0x1400bc41b
movabs rax, 0x47ae147ae147ae15
mov rdi, rbp
mul rbp
sub rdi, rdx
shr rdi, 1
add rdi, rdx
shr rdi, 6
add rdi, rbp
jmp 0x1400bc422
lea rdi, [rbp + 0x20000]
cmp rdi, r9
cmova rdi, r9
cmp r10b, 2
jne 0x1400bc442
test r8, r8
je 0x1400bc442
mov rcx, qword [rbx + 8]
mov bpl, 1
call fcn.1400d6528
jmp 0x1400bc445
xor bpl, bpl
test rdi, rdi
js 0x1400bc49a
mov rcx, rdi
call fcn.1400d6468
test rax, rax
je 0x1400bc49a
mov byte [rbx + 0x20], 2
and byte [rbx + 0x21], 0x7f
mov qword [rbx + 8], rax
mov qword [rbx + 0x18], rdi
mov rcx, qword [rbx + 8]
cmp rcx, r12
je 0x1400bc47d
lea r8, [r13 + r13]
mov rdx, r12
call fcn.1400d72b0
mov rax, qword [rbx + 8]
lea rcx, [r13 + r13]
mov word [rcx + rax], si
mov qword [rbx + 0x10], rcx
mov esi, 1
mov eax, esi
jmp 0x1400bc1a1
test bpl, bpl
je 0x1400bc4b0
lea rax, [0x14012c438]
mov qword [rbx + 0x18], rsi
mov qword [rbx + 8], rax
jmp 0x1400bc4b7
mov rax, qword [rbx + 8]
mov word [rax], si
lea r8, [0x1400f1604]
lea rdx, str.Out_of_memory.
lea rcx, [0x14012c540]
mov qword [rbx + 0x10], rsi
call fcn.14004e5d0
mov esi, eax
jmp 0x1400bc1a1
mov rdx, qword [rdx]
mov rcx, rbx
add rsp, 0x40
pop r12
pop rsi
pop rbx
jmp fcn.1400bbcf0
movsd xmm0, qword [rdx]
mov r8b, 0x28
mov rcx, rbx
movsd qword [rsp + 0x68], xmm0
mov rdx, qword [rsp + 0x68]
call fcn.140001090
mov eax, 1
add rsp, 0x40
pop r12
pop rsi
pop rbx
ret
mov rdx, qword [rdx]
mov r8b, reloc.OLEAUT32.dll_SafeArrayGetElement
mov rcx, rbx
call fcn.140001090
mov eax, 1
add rsp, 0x40
pop r12
pop rsi
pop rbx
ret