Function at 0x5a33ac
Capabilities:
Read clipboard data

Disassembly:
push ebp
mov ebp, esp
add esp, 0xffffffdc
push ebx
push esi
mov dword [ebp - 8], ecx
mov dword [ebp - 4], edx
mov ebx, eax
mov byte [ebp - 9], 0
call fcn.00644478
test al, al
je 0x5a3604
xor edx, edx
push ebp
push 0x5a35fd
push dword fs:[edx]
mov dword fs:[edx], esp
mov eax, dword [0x8471e4]
push eax
call sub.user32.dll_IsClipboardFormatAvailable
test eax, eax
je 0x5a35ea
cmp byte [ebx + 0x9dc], 0
je 0x5a33fe
mov eax, ebx
call fcn.005a5588
mov eax, dword [0x8471e4]
push eax
call sub.user32.dll_GetClipboardData
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], 0
je 0x5a35ea
jmp 0x5a3429
mov eax, dword [ebx + 0x938]
mov esi, dword [eax]
mov edx, esi
mov eax, ebx
call fcn.0058fc80
cmp dword [ebx + 0x93c], 0
jg 0x5a3418
mov eax, dword [ebp - 0x10]
push eax
call sub.kernel32.dll_GlobalLock
mov esi, eax
mov dl, 1
mov eax, dword [0x41c938]
call fcn.00403d80
mov dword [ebp - 0x14], eax
mov eax, dword [ebp - 0x10]
push eax
call sub.kernel32.dll_GlobalSize
mov ecx, eax
mov edx, esi
mov eax, dword [ebp - 0x14]
mov esi, dword [eax]
call dword [esi + 0xc]
mov eax, dword [ebp + 8]
mov edx, dword [ebp + 0xc]
push edx
push eax
mov eax, dword [ebp - 0x14]
call fcn.00421334
sub dword [esp], eax
sbb dword [esp + 4], edx
pop eax
pop edx
test edx, edx
jge 0x5a3485
neg eax
adc edx, 0
neg edx
cmp edx, 0
jne 0x5a3492
cmp eax, 0xa
setbe al
jmp 0x5a3495
setle al
mov byte [ebp - 9], al
cmp dword [ebp + 0xc], 0
jne 0x5a34a6
cmp dword [ebp + 8], 0
jbe 0x5a34e8
jmp 0x5a34a8
jle 0x5a34e8
mov eax, dword [ebp + 8]
mov edx, dword [ebp + 0xc]
push edx
push eax
mov eax, dword [ebp - 0x14]
call fcn.00421334
sub dword [esp], eax
sbb dword [esp + 4], edx
pop eax
pop edx
test edx, edx
jge 0x5a34cc
neg eax
adc edx, 0
neg edx
cmp edx, 0
jne 0x5a34d8
cmp eax, 0xa
jbe 0x5a34e8
jmp 0x5a34da
jle 0x5a34e8
mov dword [ebp - 4], 0xa
mov dword [ebp - 8], 0xa
push 0
push 0
mov eax, dword [ebp - 0x14]
call fcn.00421320
mov dl, 1
mov eax, dword [0x62b544]
call fcn.00633ab4
mov dword [ebp - 0x20], eax
mov ecx, ebx
mov dl, 1
mov eax, dword [0x608a00]
call fcn.00608f04
mov dword [ebp - 0x1c], eax
mov edx, dword [ebp - 0x20]
mov eax, dword [ebp - 0x1c]
call fcn.00616a0c
lea edx, [ebp - 0x18]
mov ecx, 4
mov eax, dword [ebp - 0x14]
mov esi, dword [eax]
call dword [esi + 8]
mov eax, dword [ebp - 0x18]
dec eax
test eax, eax
jl 0x5a35bf
inc eax
mov dword [ebp - 0x24], eax
push 0
mov cl, byte [0x83721c]
mov edx, dword [ebp - 0x14]
mov eax, ebx
call fcn.00591264
mov esi, eax
mov edx, esi
mov eax, ebx
call fcn.00578500
mov edx, dword [ebp - 4]
add dword [eax], edx
mov edx, dword [ebp - 4]
add dword [eax + 8], edx
mov edx, dword [ebp - 8]
add dword [eax + 4], edx
mov edx, dword [ebp - 8]
add dword [eax + 0xc], edx
cmp byte [eax + 0x10], 3
jne 0x5a3594
cmp byte [eax + 0x1dc], 0
je 0x5a3594
mov edx, dword [ebp - 4]
add dword [eax + 0x114], edx
mov edx, dword [ebp - 8]
add dword [eax + 0x118], edx
cmp byte [eax + 0x10], 5
jne 0x5a35b1
mov edx, dword [ebp - 0x14]
mov eax, dword [ebp - 0x1c]
call fcn.00612800
mov ecx, dword [ebp - 0x20]
mov edx, esi
mov eax, ebx
call fcn.00577cb4
mov edx, esi
mov eax, ebx
call fcn.00578170
dec dword [ebp - 0x24]
jne 0x5a353f
mov eax, dword [ebp - 0x1c]
call fcn.00403db0
mov eax, dword [ebp - 0x20]
call fcn.00403db0
mov eax, dword [ebp - 0x14]
call fcn.00403db0
mov eax, dword [ebp - 0x10]
push eax
call sub.kernel32.dll_GlobalUnlock
mov eax, ebx
mov edx, dword [eax]
call dword [edx + 0x88]
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x5a3604
call sub.user32.dll_CloseClipboard
ret
mov al, byte [ebp - 9]
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 8