Function at 0x100394e
Capabilities:
Open clipboard
Read clipboard data

Disassembly:
sub esp, 0x54
push ebx
push ebp
push esi
push edi
xor edi, edi
xor ebx, ebx
push 0xb
inc ebx
mov dword [esp + 0x14], edi
mov dword [esp + 0x18], edi
call fcn.010016f4
test eax, eax
je 0x10039a0
cmp dword [0x100b9e0], edi
je 0x1003981
call dword [sym.imp.USER32.dll_CloseClipboard]
mov dword [0x100b9e0], edi
mov eax, dword [0x100b9d4]
cmp eax, edi
je 0x1003998
push edi
push edi
push 0x308
push eax
call dword [sym.imp.USER32.dll_PostMessageW]
push 2
pop ebx
jmp 0x1003cc3
cmp dword [0x100b9e0], edi
mov eax, dword [esp + 0x68]
mov esi, dword [eax + 8]
jne 0x10039bf
push dword [0x100b9a8]
call dword [sym.imp.USER32.dll_OpenClipboard]
test eax, eax
je 0x1003998
push esi
mov dword [0x100b9e0], ebx
call dword [sym.imp.USER32.dll_GetClipboardData]
mov edi, eax
test edi, edi
mov dword [esp + 0x10], edi
je 0x1003a52
cmp esi, 9
jne 0x1003a3e
lea eax, [esp + 0x68]
push eax
push 2
push edi
call dword [sym.imp.GDI32.dll_GetObjectW]
test eax, eax
jne 0x10039f5
mov dword [esp + 0x68], 0x100
movzx ebp, word [esp + 0x68]
lea eax, [ebp*4 + 4]
push eax
push 0x42
call dword [sym.imp.KERNEL32.dll_GlobalAlloc]
mov esi, eax
test esi, esi
je 0x1003a52
push esi
call dword [sym.imp.KERNEL32.dll_GlobalLock]
push eax
push ebp
push 0
push edi
call dword [sym.imp.GDI32.dll_GetPaletteEntries]
push esi
mov edi, eax
call dword [sym.imp.KERNEL32.dll_GlobalUnlock]
test edi, edi
jne 0x1003a32
push 2
pop ebx
shl edi, 2
mov dword [esp + 0x10], esi
jmp 0x1003cc3
cmp esi, 3
jne 0x1003a69
lea eax, [esp + 0x14]
push eax
push edi
call fcn.010036bc
test eax, eax
jne 0x1003a5c
push 2
pop ebx
xor edi, edi
jmp 0x1003cc3
mov edi, dword [esp + 0x14]
mov dword [esp + 0x10], eax
jmp 0x1003cc3
cmp esi, 0xf
jne 0x1003b86
push edi
call dword [sym.imp.KERNEL32.dll_GlobalLock]
cmp dword [0x100c3a4], 0
mov esi, eax
mov ebp, dword [esi + 0x10]
mov dword [esp + 0x68], ebp
jne 0x1003aa4
mov eax, dword [esi]
add eax, esi
push ebp
push eax
call fcn.010038f8
test eax, eax
mov dword [0x100c3a4], 1
jne 0x1003a52
push edi
call dword [sym.imp.KERNEL32.dll_GlobalSize]
push ebp
push eax
push esi
call fcn.010038d8
push eax
push 0x102
call dword [sym.imp.KERNEL32.dll_GlobalAlloc]
mov ebp, eax
test ebp, ebp
mov dword [esp + 0x14], ebp
je 0x1003a52
push ebp
call dword [sym.imp.KERNEL32.dll_GlobalLock]
test eax, eax
je 0x1003a52
mov ecx, dword [esi]
mov dword [eax], ecx
mov ecx, dword [esi + 4]
mov dword [eax + 4], ecx
mov ecx, dword [esi + 8]
mov dword [eax + 8], ecx
mov ecx, dword [esi + 0xc]
mov dword [eax + 0xc], ecx
mov ecx, dword [esi + 0x10]
mov dword [eax + 0x10], ecx
mov edi, dword [esi]
add edi, esi
mov esi, dword [eax]
add esi, eax
mov ecx, dword [esp + 0x68]
xor eax, eax
test ecx, ecx
je 0x1003b0b
cmp word [edi], ax
jmp 0x1003b0e
cmp byte [edi], 0
setne al
test eax, eax
je 0x1003b68
push ecx
push esi
push edi
call fcn.0100388c
cmp dword [esp + 0x68], 0
je 0x1003b3e
push edi
call dword [sym.imp.msvcrt.dll_wcslen]
push esi
lea edi, [edi + eax*2 + 2]
call dword [sym.imp.msvcrt.dll_wcslen]
pop ecx
pop ecx
lea esi, [esi + eax*2 + 2]
jmp 0x1003afc
mov eax, edi
lea ebp, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x1003b43
sub eax, ebp
lea edi, [edi + eax + 1]
mov eax, esi
lea ebp, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x1003b55
sub eax, ebp
mov ebp, dword [esp + 0x14]
lea esi, [esi + eax + 1]
jmp 0x1003afc
test ecx, ecx
je 0x1003b72
and word [esi], 0
jmp 0x1003b75
and byte [esi], 0
push ebp
call dword [sym.imp.KERNEL32.dll_GlobalUnlock]
mov dword [esp + 0x10], ebp
push ebp
jmp 0x1003cbb
push 0x20
lea eax, [esp + 0x28]
push eax
push esi
call dword [sym.imp.USER32.dll_GetClipboardFormatNameW]
test eax, eax
je 0x1003cba
mov esi, dword [sym.imp.msvcrt.dll_wcscmp]
lea eax, [esp + 0x24]
push 0x1003912
push eax
call esi
test eax, eax
pop ecx
pop ecx
je 0x1003bca
lea eax, [esp + 0x24]
push 0x1003926
push eax
call esi
test eax, eax
pop ecx
pop ecx
jne 0x1003cba
lea eax, [esp + 0x24]
push 0x100393a
push eax
call esi
test eax, eax
pop ecx
pop ecx
jne 0x1003be5
mov ebp, ebx
mov byte [esp + 0x68], 2
jmp 0x1003bec
xor ebp, ebp
mov byte [esp + 0x68], 1
push edi
call dword [sym.imp.KERNEL32.dll_GlobalLock]
mov ebx, eax
test ebx, ebx
je 0x1003a52
push edi
call dword [sym.imp.KERNEL32.dll_GlobalSize]
cmp dword [0x100c3a4], 0
jne 0x1003c6d
movzx ecx, byte [esp + 0x68]
add ecx, eax
push ecx
push 0x40
call dword [sym.imp.KERNEL32.dll_LocalAlloc]
test ebp, ebp
mov esi, eax
je 0x1003c39
push ebx
push esi
call dword [sym.imp.msvcrt.dll_wcscpy]
push 0x3a
push esi
call dword [sym.imp.msvcrt.dll_wcschr]
add esp, 0x10
jmp 0x1003c54
mov edx, esi
mov eax, ebx
sub edx, ebx
mov cl, byte [eax]
mov byte [edx + eax], cl
inc eax
test cl, cl
jne 0x1003c3f
push 0x3a
push esi
call dword [sym.imp.msvcrt.dll_strchr]
pop ecx
pop ecx
push ebp
push esi
call fcn.010038f8
test eax, eax
mov dword [0x100c3a4], 1
jne 0x1003a52
push ebp
push ebx
call fcn.010038be
mov edi, eax
push edi
push 0x102
call dword [sym.imp.KERNEL32.dll_GlobalAlloc]
mov esi, eax
test esi, esi
je 0x1003a52
push esi
call dword [sym.imp.KERNEL32.dll_GlobalLock]
test eax, eax
je 0x1003a52
push ebp
push eax
push ebx
call fcn.0100388c
test eax, eax
jl 0x1003a52
push esi
call dword [sym.imp.KERNEL32.dll_GlobalUnlock]
xor ebx, ebx
inc ebx
jmp 0x1003a35
push edi
call dword [sym.imp.KERNEL32.dll_GlobalSize]
mov edi, eax
xor esi, esi
cmp dword [0x100b9e0], esi
je 0x1003cd9
call dword [sym.imp.USER32.dll_CloseClipboard]
mov dword [0x100b9e0], esi
cmp dword [esp + 0x10], esi
je 0x1003cfd
cmp edi, esi
je 0x1003cfd
lea eax, [edi + 0xc]
push eax
push esi
mov dword [esp + 0x70], eax
call dword [sym.imp.KERNEL32.dll_LocalAlloc]
mov ebp, eax
test ebp, ebp
jne 0x1003d09
push 2
pop ebx
xor edi, edi
lea ebp, [esp + 0x18]
mov dword [esp + 0x68], 0xc
test edi, edi
mov word [ebp], 5
mov word [ebp + 2], bx
mov dword [ebp + 4], edi
je 0x1003d43
push dword [esp + 0x10]
call dword [sym.imp.KERNEL32.dll_GlobalLock]
push dword [esp + 0x10]
mov ecx, edi
mov esi, eax
mov eax, ecx
shr ecx, 2
lea edi, [ebp + 8]
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
call dword [sym.imp.KERNEL32.dll_GlobalUnlock]
push dword [esp + 0x68]
push ebp
call fcn.01003666
lea eax, [esp + 0x18]
cmp ebp, eax
je 0x1003d5c
push ebp
call dword [sym.imp.KERNEL32.dll_LocalFree]
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x54
ret 8