Function at 0x5dd6b0
Capabilities:
Write clipboard data

Disassembly:
sub esp, 0x7c
push ebx
mov ebx, ecx
push ebp
push esi
mov eax, dword [ebx]
push edi
call dword [eax + 8]
test al, al
jne 0x5dd9ab
call dword [sym.imp.USER32.dll_EmptyClipboard]
test eax, eax
jne 0x5dd746
call dword [sym.imp.KERNEL32.dll_GetLastError]
lea edi, [ebx + 4]
mov dword [ebx + 0x18], eax
test edi, edi
je 0x5dd6e5
add edi, 4
jmp 0x5dd6e7
xor edi, edi
push str.EmptyClipboard__
call fcn.007ac4d2
add esp, 4
mov esi, eax
mov ecx, edi
push 1
push esi
call fcn.00404d30
test al, al
je 0x5dd722
mov ecx, dword [edi + 4]
push esi
push str.EmptyClipboard__
push ecx
call fcn.004069b0
mov edx, dword [edi + 4]
mov dword [edi + 8], esi
add esp, 0xc
mov word [edx + esi*2], 0
mov eax, dword [ebx]
mov ecx, ebx
call dword [eax + 8]
test al, al
je 0x5dd746
push ebx
lea ecx, [esp + 0x18]
call fcn.005dd570
lea ecx, [esp + 0x14]
push 0x8c1d8c
push ecx
call fcn.007ac5c6
mov edx, dword [esp + 0x94]
push edx
push 2
call dword [sym.imp.KERNEL32.dll_GlobalAlloc]
test eax, eax
mov dword [ebx + 0x20], eax
jne 0x5dd7d3
call dword [sym.imp.KERNEL32.dll_GetLastError]
lea edi, [ebx + 4]
mov dword [ebx + 0x18], eax
test edi, edi
je 0x5dd772
add edi, 4
jmp 0x5dd774
xor edi, edi
push str.GlobalAlloc__
call fcn.007ac4d2
add esp, 4
mov esi, eax
mov ecx, edi
push 1
push esi
call fcn.00404d30
test al, al
je 0x5dd7af
mov eax, dword [edi + 4]
push esi
push str.GlobalAlloc__
push eax
call fcn.004069b0
mov ecx, dword [edi + 4]
mov dword [edi + 8], esi
add esp, 0xc
mov word [ecx + esi*2], 0
mov edx, dword [ebx]
mov ecx, ebx
call dword [edx + 8]
test al, al
je 0x5dd7d3
push ebx
lea ecx, [esp + 0x18]
call fcn.005dd570
lea eax, [esp + 0x14]
push 0x8c1d8c
push eax
call fcn.007ac5c6
mov ecx, dword [ebx + 0x20]
push ecx
call dword [sym.imp.KERNEL32.dll_GlobalLock]
test eax, eax
mov dword [esp + 0x10], eax
jne 0x5dd85f
call dword [sym.imp.KERNEL32.dll_GetLastError]
lea edi, [ebx + 4]
mov dword [ebx + 0x18], eax
test edi, edi
je 0x5dd7fa
add edi, 4
jmp 0x5dd7fc
xor edi, edi
push str.GlobalLock__
call fcn.007ac4d2
add esp, 4
mov esi, eax
mov ecx, edi
push 1
push esi
call fcn.00404d30
test al, al
je 0x5dd837
mov edx, dword [edi + 4]
push esi
push str.GlobalLock__
push edx
call fcn.004069b0
mov eax, dword [edi + 4]
mov dword [edi + 8], esi
add esp, 0xc
mov word [eax + esi*2], 0
mov edx, dword [ebx]
mov ecx, ebx
call dword [edx + 8]
test al, al
je 0x5dd85b
push ebx
lea ecx, [esp + 0x18]
call fcn.005dd570
lea eax, [esp + 0x14]
push 0x8c1d8c
push eax
call fcn.007ac5c6
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x94]
mov esi, dword [esp + 0x90]
mov edx, ecx
mov edi, eax
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov eax, dword [ebx + 0x20]
push eax
call dword [sym.imp.KERNEL32.dll_GlobalUnlock]
test eax, eax
jne 0x5dd910
call dword [sym.imp.KERNEL32.dll_GetLastError]
lea edi, [ebx + 4]
mov dword [ebx + 0x18], eax
test edi, edi
je 0x5dd8a4
add edi, 4
jmp 0x5dd8a6
xor edi, edi
push str.GlobalUnlock__
call fcn.007ac4d2
add esp, 4
mov esi, eax
mov ecx, edi
push 1
push esi
call fcn.00404d30
test al, al
je 0x5dd8ec
mov eax, dword [edi + 4]
mov ecx, str.GlobalUnlock__
test esi, esi
jbe 0x5dd8e0
mov edx, esi
mov bp, word [ecx]
add ecx, 2
mov word [eax], bp
add eax, 2
dec edx
jne 0x5dd8d1
mov ecx, dword [edi + 4]
mov dword [edi + 8], esi
mov word [ecx + esi*2], 0
mov edx, dword [ebx]
mov ecx, ebx
call dword [edx + 8]
test al, al
je 0x5dd910
push ebx
lea ecx, [esp + 0x18]
call fcn.005dd570
lea eax, [esp + 0x14]
push 0x8c1d8c
push eax
call fcn.007ac5c6
mov ecx, dword [ebx + 0x20]
mov edx, dword [esp + 0x98]
push ecx
push edx
call dword [sym.imp.USER32.dll_SetClipboardData]
test eax, eax
je 0x5dd9ab
call dword [sym.imp.KERNEL32.dll_GetLastError]
lea edi, [ebx + 4]
mov dword [ebx + 0x18], eax
test edi, edi
je 0x5dd93f
add edi, 4
jmp 0x5dd941
xor edi, edi
push str.SetClipboardData__
call fcn.007ac4d2
add esp, 4
mov esi, eax
mov ecx, edi
push 1
push esi
call fcn.00404d30
test al, al
je 0x5dd987
mov eax, dword [edi + 4]
mov ecx, str.SetClipboardData__
test esi, esi
jbe 0x5dd97b
mov edx, esi
mov bp, word [ecx]
add ecx, 2
mov word [eax], bp
add eax, 2
dec edx
jne 0x5dd96c
mov eax, dword [edi + 4]
mov dword [edi + 8], esi
mov word [eax + esi*2], 0
mov edx, dword [ebx]
mov ecx, ebx
call dword [edx + 8]
test al, al
je 0x5dd9ab
push ebx
lea ecx, [esp + 0x18]
call fcn.005dd570
lea eax, [esp + 0x14]
push 0x8c1d8c
push eax
call fcn.007ac5c6
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x7c
ret 0xc