Function at 0x100b77b3
Capabilities:
Read clipboard data

Disassembly:
push 0x40
mov eax, 0x100f47cc
call fcn.100bb05c
mov edi, ecx
mov dword [ebp - 0x28], edi
mov ecx, dword [edi + 0x2a4]
call fcn.100b7780
test al, al
je 0x100b7ae3
mov eax, dword [edi + 0x298]
xor ecx, ecx
inc ecx
mov dword [ebp - 0x2c], eax
mov byte [ebp - 0x30], cl
mov ecx, eax
mov dword [ebp - 0x34], eax
call fcn.10008fc4
xor eax, eax
lea ecx, [edi + 0x238]
mov dword [ebp - 0x20], eax
mov dword [ebp - 4], eax
call fcn.10039bbc
mov esi, dword [sym.imp.USER32.dll_IsClipboardFormatAvailable]
test al, al
je 0x100b7832
movzx eax, word [edi + 0x7b6]
push eax
call esi
test eax, eax
jne 0x100b7829
movzx eax, word [edi + 0x7b8]
push eax
call esi
test eax, eax
je 0x100b7832
mov dword [ebp - 0x14], 2
jmp 0x100b7837
xor eax, eax
mov dword [ebp - 0x14], eax
xor eax, eax
mov ecx, edi
inc eax
cmp dword [edi + 0x520], eax
sete al
movzx eax, al
push eax
call fcn.10013fe5
movzx eax, word [edi + 0x7b2]
push eax
call esi
test eax, eax
setne byte [ebp - 0xd]
test eax, eax
jne 0x100b78ab
movzx eax, word [edi + 0x7b4]
push eax
call dword [sym.imp.USER32.dll_GetClipboardData]
mov esi, eax
test esi, esi
je 0x100b78ab
push esi
call dword [sym.imp.KERNEL32.dll_GlobalLock]
mov dword [ebp - 0x24], eax
test eax, eax
je 0x100b78ab
push esi
call dword [sym.imp.KERNEL32.dll_GlobalSize]
xor ecx, ecx
inc ecx
cmp eax, ecx
jne 0x100b789f
mov eax, dword [ebp - 0x24]
cmp byte [eax], 2
jne 0x100b789f
mov byte [ebp - 0xd], cl
jmp 0x100b78a4
xor eax, eax
mov byte [ebp - 0xd], al
push esi
call dword [sym.imp.KERNEL32.dll_GlobalUnlock]
cmp byte [ebp - 0xd], 0
mov eax, dword [ebp - 0x14]
push 1
pop ecx
cmovne eax, ecx
push 0xd
mov dword [ebp - 0x14], eax
call dword [sym.imp.USER32.dll_GetClipboardData]
mov dword [ebp - 0x24], eax
test eax, eax
je 0x100b79d4
push eax
call dword [sym.imp.KERNEL32.dll_GlobalLock]
mov esi, eax
mov dword [ebp - 0x1c], esi
test esi, esi
je 0x100b79d4
xor eax, eax
mov dword [ebp - 0x40], eax
mov dword [ebp - 0x3c], eax
mov dword [ebp - 0x38], eax
inc eax
mov ecx, edi
mov byte [ebp - 4], al
call fcn.1001c346
test al, al
je 0x100b793a
push dword [ebp - 0x24]
call dword [sym.imp.KERNEL32.dll_GlobalSize]
mov esi, eax
shr esi, 1
push esi
push dword [ebp - 0x1c]
call fcn.1003a707
pop ecx
pop ecx
lea ecx, [ebp - 0x40]
mov dword [ebp - 0x18], eax
push ecx
lea ecx, [eax + 1]
push ecx
lea ecx, [ebp - 0x40]
call fcn.10006b16
mov edx, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x40]
push esi
push dword [ebp - 0x1c]
call fcn.1003a762
pop ecx
pop ecx
jmp 0x100b79ae
mov ecx, edi
call fcn.100b5b23
push ecx
push ecx
mov ecx, esi
mov dword [ebp - 0x1c], eax
mov edx, esp
lea eax, [ecx + 2]
mov dword [edx], esi
mov dword [ebp - 0x28], eax
mov ax, word [ecx]
add ecx, 2
cmp ax, word [ebp - 0x20]
jne 0x100b7952
sub ecx, dword [ebp - 0x28]
sar ecx, 1
mov dword [edx + 4], ecx
mov ecx, dword [ebp - 0x1c]
call fcn.100b49e9
pop ecx
pop ecx
lea ecx, [ebp - 0x40]
mov dword [ebp - 0x18], eax
push ecx
push eax
call fcn.10006b16
push dword [ebp - 0x18]
mov edx, dword [ebp - 0x40]
lea eax, [esi + 2]
push ecx
push ecx
mov ecx, esp
mov dword [ebp - 0x28], eax
mov dword [ecx], esi
mov ax, word [esi]
add esi, 2
cmp ax, word [ebp - 0x20]
jne 0x100b798f
sub esi, dword [ebp - 0x28]
sar esi, 1
mov dword [ecx + 4], esi
mov ecx, dword [ebp - 0x1c]
call fcn.100b49cf
add esp, 0xc
mov eax, dword [ebp - 0x14]
mov ecx, edi
push eax
push dword [ebp - 0x18]
push dword [ebp - 0x40]
call fcn.10013e7a
xor eax, eax
lea ecx, [ebp - 0x40]
mov byte [ebp - 4], al
call fcn.10006653
push dword [ebp - 0x24]
jmp 0x100b7ac1
xor eax, eax
inc eax
push eax
call dword [sym.imp.USER32.dll_GetClipboardData]
mov esi, eax
mov dword [ebp - 0x20], esi
test esi, esi
je 0x100b7ac7
push esi
call dword [sym.imp.KERNEL32.dll_GlobalLock]
mov dword [ebp - 0x18], eax
test eax, eax
je 0x100b7ac7
push esi
call dword [sym.imp.KERNEL32.dll_GlobalSize]
mov edx, eax
xor ecx, ecx
mov dword [ebp - 0x24], edx
test eax, eax
je 0x100b7a28
mov edi, dword [ebp - 0x18]
cmp edx, eax
jne 0x100b7a1d
cmp byte [edi + ecx], 0
cmove edx, ecx
inc ecx
cmp ecx, eax
jb 0x100b7a12
mov edi, dword [ebp - 0x28]
mov dword [ebp - 0x24], edx
mov ecx, edi
call fcn.1001c346
test al, al
je 0x100b7ab1
push ecx
lea esi, [edx + 1]
push esi
lea ecx, [ebp - 0x40]
call fcn.10035488
mov byte [ebp - 4], 2
xor ecx, ecx
mov edx, dword [ebp - 0x40]
push esi
push dword [ebp - 0x24]
push dword [ebp - 0x18]
call fcn.100b49fe
mov esi, eax
push esi
push dword [ebp - 0x40]
call fcn.1003a707
mov edi, eax
add esp, 0x10
lea ecx, [edi + 1]
push ecx
lea ecx, [ebp - 0x4c]
call fcn.1000dbcd
mov byte [ebp - 4], 3
mov edx, edi
mov ecx, dword [ebp - 0x4c]
push esi
push dword [ebp - 0x40]
call fcn.1003a762
mov eax, dword [ebp - 0x14]
pop ecx
pop ecx
push eax
push edi
push dword [ebp - 0x4c]
mov edi, dword [ebp - 0x28]
mov ecx, edi
call fcn.10013e7a
lea ecx, [ebp - 0x4c]
call fcn.10006653
xor eax, eax
lea ecx, [ebp - 0x40]
mov byte [ebp - 4], al
call fcn.1000e310
mov esi, dword [ebp - 0x20]
jmp 0x100b7ac0
mov eax, dword [ebp - 0x14]
mov ecx, edi
push eax
push edx
push dword [ebp - 0x18]
call fcn.10013e7a
push esi
call dword [sym.imp.KERNEL32.dll_GlobalUnlock]
call dword [sym.imp.USER32.dll_CloseClipboard]
mov eax, dword [edi]
mov ecx, edi
call dword [eax + 0x30]
mov dword [ebp - 4], 4
mov ecx, dword [ebp - 0x2c]
call fcn.10009015
call fcn.100bb025
ret