Function at 0x101dc3c
Capabilities:
Open clipboard
Read clipboard data

Disassembly:
mov edi, edi
push ebp
mov ebp, esp
sub esp, 0x24
push ebx
push esi
push edi
mov edi, ecx
push dword [edi + 0x1c4]
lea ecx, [ebp - 0x24]
call fcn.01012da1
xor ebx, ebx
xor esi, esi
inc esi
mov dword [ebp - 0x14], ebx
mov dword [ebp - 0x20], ebx
mov dword [ebp - 0xc], ebx
mov dword [ebp - 4], ebx
mov dword [ebp - 8], ebx
mov dword [ebp - 0x10], ebx
mov dword [ebp - 0x18], ebx
mov dword [ebp - 0x1c], ebx
cmp dword [edi + 0xa8], esi
je 0x101dc86
mov esi, 0x834503ea
jmp 0x101df93
movzx eax, byte [edi + 0x50]
movzx ecx, byte [eax + 0x1005fb8]
sub ecx, ebx
je 0x101dcad
dec ecx
je 0x101df93
dec ecx
dec ecx
je 0x101dca3
dec ecx
jne 0x101dcc7
mov esi, 0x834503e8
jmp 0x101df93
push dword [eax*4 + 0x1029070]
push dword [0x1029044]
push 0x1006670
call fcn.0101b93b
add esp, 0xc
mov ecx, dword [ebp + 8]
mov eax, dword [ecx]
lea edx, [ebp - 0x14]
push edx
lea edx, [ebp - 0x20]
push edx
call dword [eax + 0x18]
mov esi, eax
cmp esi, ebx
jge 0x101dd14
mov eax, dword [0x1029018]
cmp eax, 0x1029018
je 0x101df80
test byte [eax + 0x1c], 4
je 0x101df80
push esi
push 0x1006648
push 0x1005f80
push 0x4f
push dword [eax + 0x14]
push dword [eax + 0x10]
call fcn.0100a721
jmp 0x101df80
movzx edx, byte [edi + 0x50]
lea ecx, [edi + 0x18]
mov eax, dword [ecx]
push 5
push edx
call dword [eax + 0x14]
mov al, byte [edi + 0x50]
cmp al, 4
je 0x101dd5a
cmp al, 3
je 0x101dd5a
mov eax, dword [0x1029018]
cmp eax, 0x1029018
je 0x101dd52
test byte [eax + 0x1c], 4
je 0x101dd52
push 0x1005f80
push 0x50
push dword [eax + 0x14]
push dword [eax + 0x10]
call fcn.0100a6cf
xor esi, esi
inc esi
jmp 0x101df50
mov eax, dword [ebp - 0x14]
cmp dword [eax + 4], 4
jae 0x101dd91
mov eax, dword [0x1029018]
cmp eax, 0x1029018
je 0x101dd87
test byte [eax + 0x1c], 4
je 0x101dd87
push 0x1005f80
push 0x51
push dword [eax + 0x14]
push dword [eax + 0x10]
call fcn.0100a6cf
mov esi, 0x834503e9
jmp 0x101df50
mov ebx, dword [eax + 8]
mov eax, dword [0x1029018]
cmp eax, 0x1029018
je 0x101ddb9
test byte [eax + 0x1c], 1
je 0x101ddb9
push ebx
push 0x1005f80
push 0x52
push dword [eax + 0x14]
push dword [eax + 0x10]
call fcn.0100a6f5
cmp dword [edi + 0x80], 0
mov esi, 0x102b93c
je 0x101dde7
mov ecx, esi
call fcn.0101b6c3
cmp ebx, eax
jne 0x101dde7
push ebx
call dword [sym.imp.USER32.dll_IsClipboardFormatAvailable]
test eax, eax
jne 0x101dde7
push 0xf
pop ebx
mov dword [ebp - 0x18], 1
cmp ebx, 0xf
je 0x101de06
mov ecx, esi
call fcn.0101b5e5
cmp ebx, eax
je 0x101de06
mov ecx, esi
call fcn.0101b62d
cmp ebx, eax
je 0x101de06
xor esi, esi
jmp 0x101de09
xor esi, esi
inc esi
push dword [edi + 0x70]
call dword [sym.imp.USER32.dll_OpenClipboard]
test eax, eax
jne 0x101de33
call dword [sym.imp.KERNEL32.dll_GetLastError]
test eax, eax
jg 0x101de27
mov esi, eax
jmp 0x101df4e
and eax, 0xffff
or eax, 0x80070000
jmp 0x101de20
push ebx
mov dword [ebp + 8], 1
call dword [sym.imp.USER32.dll_GetClipboardData]
mov dword [ebp - 0xc], eax
test eax, eax
je 0x101df18
test esi, esi
je 0x101de6f
push eax
lea eax, [ebp - 4]
push eax
call fcn.01018db0
mov esi, eax
mov dword [ebp - 0x1c], 1
call dword [sym.imp.USER32.dll_CloseClipboard]
and dword [ebp + 8], 0
jmp 0x101de74
mov dword [ebp - 4], eax
xor esi, esi
xor eax, eax
cmp esi, eax
mov dword [ebp - 0xc], eax
jge 0x101deaf
mov eax, dword [0x1029018]
cmp eax, 0x1029018
je 0x101df42
test byte [eax + 0x1c], 4
je 0x101df42
push esi
push 0x1005f80
push 0x53
push dword [eax + 0x14]
push dword [eax + 0x10]
call fcn.0100a6f5
jmp 0x101df42
cmp dword [ebp - 0x18], eax
je 0x101ded5
cmp ebx, 0xf
jne 0x101ded5
push eax
push dword [ebp - 4]
lea eax, [ebp - 8]
push eax
lea ecx, [edi + 0x98]
call fcn.01017837
mov dword [ebp - 0x10], 1
jmp 0x101deec
push dword [ebp - 4]
mov ecx, dword [edi + 0x1b4]
push ebx
lea eax, [ebp - 0x10]
push eax
lea eax, [ebp - 8]
push eax
call fcn.0102009d
mov esi, eax
test esi, esi
jge 0x101df0e
mov eax, dword [0x1029018]
cmp eax, 0x1029018
je 0x101df42
test byte [eax + 0x1c], 4
je 0x101df42
push esi
push 0x1005f80
push 0x54
jmp 0x101de9f
mov eax, dword [ebp - 8]
mov dword [ebp - 0xc], eax
xor esi, esi
jmp 0x101df42
mov eax, dword [0x1029018]
cmp eax, 0x1029018
je 0x101df3d
test byte [eax + 0x1c], 4
je 0x101df3d
push ebx
push 0x1005f80
push 0x55
push dword [eax + 0x14]
push dword [eax + 0x10]
call fcn.0100a6f5
mov esi, 0x800700e8
cmp dword [ebp + 8], 0
je 0x101df4e
call dword [sym.imp.USER32.dll_CloseClipboard]
xor ebx, ebx
xor eax, eax
cmp esi, ebx
setl al
mov ecx, edi
inc eax
push eax
push dword [ebp - 0xc]
call fcn.0101cdef
cmp esi, ebx
jl 0x101df6d
cmp eax, ebx
jge 0x101df6d
mov esi, eax
cmp dword [ebp - 0x1c], ebx
je 0x101df80
cmp dword [ebp - 4], ebx
je 0x101df80
push dword [ebp - 4]
call dword [sym.imp.KERNEL32.dll_GlobalFree]
cmp dword [ebp - 8], ebx
je 0x101df93
cmp dword [ebp - 0x10], ebx
je 0x101df93
push dword [ebp - 8]
call dword [sym.imp.KERNEL32.dll_GlobalFree]
lea ecx, [ebp - 0x24]
call fcn.01012dc9
pop edi
mov eax, esi
pop esi
pop ebx
leave
ret 8