Function at 0x5350a4
Capabilities:
Write clipboard data

Disassembly:
push ebp
mov ebp, esp
add esp, 0xfffffff0
push ebx
mov dword [ebp - 0xc], eax
xor eax, eax
mov dword [ebp - 8], eax
mov eax, dword [ebp - 0xc]
sub eax, 2
je 0x535182
sub eax, 0xb
je 0x5350d0
dec eax
je 0x535182
jmp 0x5352a8
call fcn.00656518
mov dword [ebp - 4], eax
xor eax, eax
push ebp
push 0x53517b
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, dword [ebp + 8]
mov eax, dword [eax - 0x28]
mov dword [eax + 0x164], 2
mov eax, dword [ebp + 8]
mov eax, dword [eax - 0x28]
mov byte [eax + 0x168], 0
push ebp
mov dl, byte [0x535450]
mov eax, 6
call fcn.00534c88
pop ecx
mov eax, dword [ebp - 4]
cmp dword [eax + 8], 0
jle 0x535160
xor edx, edx
mov eax, dword [ebp - 4]
call fcn.00656684
mov eax, dword [ebp - 4]
mov eax, dword [eax + 8]
push eax
push 2
call sub.kernel32.dll_GlobalAlloc
mov dword [ebp - 8], eax
mov eax, dword [ebp - 8]
push eax
call sub.kernel32.dll_GlobalLock
mov edx, eax
mov eax, dword [ebp - 4]
mov ecx, dword [eax + 8]
mov eax, dword [ebp - 4]
mov eax, dword [eax + 4]
call fcn.004023c8
mov eax, dword [ebp - 8]
push eax
call sub.kernel32.dll_GlobalUnlock
jmp 0x535165
xor eax, eax
mov dword [ebp - 8], eax
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x5353e9
mov eax, dword [ebp - 4]
call fcn.004028c0
ret
mov eax, dword [ebp + 8]
mov eax, dword [eax - 0x34]
mov eax, dword [eax + 0xc]
xor edx, edx
call fcn.0055e4e0
mov eax, dword [ebp - 0xc]
sub eax, 0xe
jne 0x5351ef
mov eax, dword [ebp + 8]
mov eax, dword [eax - 0x34]
mov ebx, dword [eax + 0xc]
mov al, byte [ebx + 0x46]
sub al, 1
jb 0x5351ae
je 0x5351c4
jmp 0x5351d7
push 0
mov eax, dword [ebp + 8]
mov eax, dword [ebx + 0x1c]
push eax
call sub.gdi32.dll_CopyEnhMetaFileW
mov dword [ebp - 8], eax
jmp 0x535286
mov eax, dword [ebp + 8]
mov eax, dword [ebx + 0x38]
call fcn.00628898
mov dword [ebp - 8], eax
jmp 0x535286
mov eax, dword [ebp + 8]
mov eax, dword [ebx + 0x3c]
call fcn.0041e1bc
call fcn.00628898
mov dword [ebp - 8], eax
jmp 0x535286
mov eax, dword [ebp + 8]
mov eax, dword [eax - 0x34]
mov ebx, dword [eax + 0xc]
mov al, byte [ebx + 0x46]
test al, al
jne 0x535215
mov edx, dword [0x6720a4]
mov eax, dword [ebp + 8]
mov eax, dword [ebx + 0x1c]
call fcn.006287c0
mov dword [ebp - 8], eax
jmp 0x535286
mov edx, dword [ebp + 8]
mov dword [ebp - 0x10], ebx
xor edx, edx
push ebp
push 0x53527f
push dword fs:[edx]
mov dword fs:[edx], esp
mov edx, dword [ebp + 8]
cmp al, 1
jne 0x535240
mov eax, dword [ebp - 0x10]
mov eax, dword [eax + 0x38]
mov edx, dword [eax]
call dword [edx + 0x44]
mov dword [ebp - 8], eax
jmp 0x535253
mov eax, dword [ebp - 0x10]
mov eax, dword [eax + 0x3c]
call fcn.0041e1bc
mov edx, dword [eax]
call dword [edx + 0x44]
mov dword [ebp - 8], eax
push 4
push 0
push 0
push 0
mov eax, dword [ebp - 8]
push eax
call sub.user32.dll_CopyImage
mov dword [ebp - 8], eax
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x535286
mov dl, 1
mov eax, dword [ebp - 0x10]
call fcn.0055e4e0
ret
call fcn.0053a1b8
test al, al
je 0x5353e9
mov eax, dword [ebp + 8]
mov eax, dword [eax - 0x34]
mov eax, dword [eax + 0xc]
mov dl, 1
call fcn.0055e4e0
jmp 0x5353e9
mov eax, dword [ebp - 0xc]
cmp eax, dword [0x674e14]
jne 0x535342
call fcn.00656518
mov dword [ebp - 4], eax
xor eax, eax
push ebp
push 0x53533b
push dword fs:[eax]
mov dword fs:[eax], esp
push ebp
mov dl, byte [0x535450]
xor eax, eax
call fcn.00534c88
pop ecx
mov eax, dword [ebp - 4]
cmp dword [eax + 8], 0
jle 0x535325
xor edx, edx
mov eax, dword [ebp - 4]
call fcn.0065665c
mov eax, dword [ebp - 4]
mov eax, dword [eax + 8]
push eax
push 2
call sub.kernel32.dll_GlobalAlloc
mov dword [ebp - 8], eax
mov eax, dword [ebp - 8]
push eax
call sub.kernel32.dll_GlobalLock
mov edx, eax
mov eax, dword [ebp - 4]
mov ecx, dword [eax + 8]
mov eax, dword [ebp - 4]
mov eax, dword [eax + 4]
call fcn.004023c8
mov eax, dword [ebp - 8]
push eax
call sub.kernel32.dll_GlobalUnlock
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x5353e9
mov eax, dword [ebp - 4]
call fcn.004028c0
ret
mov eax, dword [ebp - 0xc]
cmp eax, dword [0x674e20]
jne 0x535359
push ebp
call fcn.00534e78
pop ecx
jmp 0x5353e9
mov eax, dword [ebp - 0xc]
cmp eax, dword [0x674e24]
je 0x53536f
mov eax, dword [ebp - 0xc]
cmp eax, dword [0x674e2c]
jne 0x53537d
push 1
push 2
call sub.kernel32.dll_GlobalAlloc
mov dword [ebp - 8], eax
jmp 0x5353e9
mov eax, dword [ebp - 0xc]
cmp eax, dword [0x674e28]
jne 0x5353b7
push 1
push 2
call sub.kernel32.dll_GlobalAlloc
mov dword [ebp - 8], eax
mov eax, dword [ebp + 8]
mov eax, dword [eax - 0x30]
call fcn.005f723c
mov ebx, eax
mov eax, dword [ebp - 8]
push eax
call sub.kernel32.dll_GlobalLock
mov byte [eax], bl
mov eax, dword [ebp - 8]
push eax
call sub.kernel32.dll_GlobalUnlock
jmp 0x5353e9
cmp dword [ebp - 0xc], 0x10
jne 0x5353e9
push 4
push 2
call sub.kernel32.dll_GlobalAlloc
mov dword [ebp - 8], eax
mov eax, dword [ebp - 8]
push eax
call sub.kernel32.dll_GlobalLock
mov edx, dword [ebp + 8]
mov edx, dword [edx - 0x30]
mov edx, dword [edx + 0x39c]
mov dword [eax], edx
mov eax, dword [ebp - 8]
push eax
call sub.kernel32.dll_GlobalUnlock
cmp dword [ebp - 8], 0
je 0x535448
mov eax, dword [ebp + 8]
cmp dword [eax + 8], 0
jne 0x535407
mov eax, dword [ebp - 8]
push eax
mov eax, dword [ebp - 0xc]
push eax
call sub.user32.dll_SetClipboardData
jmp 0x535448
mov eax, dword [ebp + 8]
mov eax, dword [eax + 8]
mov edx, dword [ebp - 8]
mov dword [eax + 4], edx
mov eax, dword [ebp - 0xc]
sub eax, 2
je 0x53542e
sub eax, 0xc
jne 0x53543c
mov eax, dword [ebp + 8]
mov eax, dword [eax + 8]
mov dword [eax], 0x40
jmp 0x535448
mov eax, dword [ebp + 8]
mov eax, dword [eax + 8]
mov dword [eax], 2
jmp 0x535448
mov eax, dword [ebp + 8]
mov eax, dword [eax + 8]
mov dword [eax], 1
pop ebx
mov esp, ebp
pop ebp
ret