Function at 0x4058a8
Capabilities:
Open clipboard
Read clipboard data

Disassembly:
jmp 0x596b60
jmp 0x5967f0
jmp 0x5969c0
jmp 0x596a20
mov eax, dword [esp + 0xc]
add eax, 0xfffffff8
push esi
mov esi, ecx
cmp eax, 0x4e
ja case.0x59680a.10
movzx eax, byte [eax + 0x59696c]
jmp dword [eax*4 + 0x596938]
mov ecx, dword [esi + 4]
cmp dword [ecx + 0x40], 1
je case.0x59680a.10
call fcn.00402b17
mov eax, 1
pop esi
ret 0x10
mov ecx, dword [esi + 4]
call fcn.00402bfd
mov eax, 1
pop esi
ret 0x10
mov ecx, dword [esi + 4]
call fcn.00406d70
mov eax, 1
pop esi
ret 0x10
mov ecx, dword [esi + 4]
call fcn.0040aae2
mov eax, 1
pop esi
ret 0x10
mov ecx, dword [esi + 4]
cmp dword [ecx + 0x40], 1
je case.0x59680a.10
call fcn.0040f0a6
mov eax, 1
pop esi
ret 0x10
mov ecx, dword [esi + 4]
call fcn.0040f2bd
mov eax, 1
pop esi
ret 0x10
mov ecx, dword [esi + 4]
call fcn.00401dc0
mov ecx, dword [esi + 4]
mov ecx, dword [ecx + 0x38]
test ecx, ecx
je case.0x59680a.10
push 8
call fcn.00403f6c
mov eax, 1
pop esi
ret 0x10
mov ecx, dword [esi + 4]
call fcn.00408323
mov eax, 1
pop esi
ret 0x10
mov ecx, dword [esi + 4]
call fcn.0040835a
mov eax, 1
pop esi
ret 0x10
mov ecx, 0x7c2258
call fcn.004112b6
mov eax, 1
pop esi
ret 0x10
mov dword [esi + 0xc], 1
mov eax, 1
pop esi
ret 0x10
cmp dword [esi + 0xc], 0
je case.0x59680a.10
push 1
call dword [sym.imp.USER32.dll_IsClipboardFormatAvailable]
test eax, eax
je case.0x59680a.10
mov edx, dword [esp + 8]
push edx
call dword [sym.imp.USER32.dll_OpenClipboard]
test eax, eax
je case.0x59680a.10
push 1
call dword [sym.imp.USER32.dll_GetClipboardData]
mov ecx, dword [esi + 4]
push eax
call fcn.004095a7
call dword [sym.imp.USER32.dll_CloseClipboard]
mov eax, 1
pop esi
ret 0x10
mov al, byte [esp + 0xc]
push esi
mov esi, ecx
lea ecx, [esp + 0x10]
push ecx
mov ecx, dword [esi + 4]
mov byte [esp + 0x14], al
mov byte [esp + 0x15], 0
call fcn.0040fba0
test eax, eax
je 0x5969ee
mov ecx, dword [esi + 4]
lea edx, [esp + 0x10]
push edx
call fcn.004032a1
mov eax, dword [esi + 4]
mov dword [esi + 8], 0
test eax, eax
je 0x596a12
mov ecx, dword [eax + 0x34]
mov dword [eax + 0x34], 0
test ecx, ecx
je 0x596a12
mov ecx, dword [esi + 4]
call fcn.0040b2d0
mov eax, 1
pop esi
ret 0x10
mov eax, dword [esp + 8]
push ebx
push esi
mov esi, ecx
cmp eax, 0x10f
je 0x596a9e
cmp eax, 0x286
jne 0x596b2c
mov ebx, dword [esp + 0x14]
mov eax, ebx
shr eax, 8
push eax
call dword [sym.imp.KERNEL32.dll_IsDBCSLeadByte]
test eax, eax
je 0x596a63
mov ecx, ebx
shr ecx, 8
mov byte [esp + 0x15], bl
xor ebx, ebx
mov byte [esp + 0x14], cl
mov byte [esp + 0x16], bl
jmp 0x596a6d
mov byte [esp + 0x14], bl
xor ebx, ebx
mov byte [esp + 0x15], bl
mov ecx, dword [esi + 4]
lea edx, [esp + 0x14]
push edx
call fcn.0040fba0
test eax, eax
je 0x596a8b
mov ecx, dword [esi + 4]
lea eax, [esp + 0x14]
push eax
call fcn.004032a1
mov ecx, dword [esi + 4]
mov dword [ecx + 0x2c], ebx
mov dword [esi + 8], ebx
pop esi
mov eax, 1
pop ebx
ret 0x10
test byte [esp + 0x18], 8
je 0x596b2c
mov eax, dword [esp + 0x14]
mov ecx, eax
shr ecx, 8
xor ebx, ebx
mov byte [esp + 0x14], cl
mov byte [esp + 0x15], al
mov byte [esp + 0x16], bl
cmp cl, bl
jne 0x596ae5
mov ecx, dword [esi + 4]
lea eax, [esp + 0x14]
push eax
mov dword [esi + 8], ebx
call fcn.004032a1
mov eax, dword [esi + 4]
mov ecx, dword [esi + 8]
mov dword [eax + 0x2c], ecx
pop esi
lea eax, [ebx + 1]
pop ebx
ret 0x10
lea ecx, [esp + 0x14]
push ecx
mov ecx, dword [esi + 4]
call fcn.0040fba0
test eax, eax
je 0x596b1c
mov ecx, dword [esi + 4]
lea edx, [esp + 0x14]
push edx
call fcn.004032a1
test eax, eax
jne 0x596b1c
mov eax, dword [esi + 4]
mov dword [esi + 8], ebx
mov ecx, ebx
pop esi
mov dword [eax + 0x2c], ecx
mov eax, 1
pop ebx
ret 0x10
mov eax, dword [esi + 4]
mov dword [esi + 8], 1
mov ecx, dword [esi + 8]
mov dword [eax + 0x2c], ecx
pop esi
mov eax, 1
pop ebx
ret 0x10
cmp dword [ecx + 4], 0
jne 0x596b6b
xor eax, eax
ret 0x10
mov eax, dword [esp + 8]
cmp eax, 0x102
ja 0x596bae
je 0x596ba1
sub eax, 0x100
je 0x596b94
dec eax
jne 0x596bbc
cmp dword [esp + 0xc], 0x11
jne 0x596bbc
mov dword [ecx + 0xc], eax
mov eax, 1
ret 0x10
mov dword [esp + 8], 0x100
jmp 0x407b71
mov dword [esp + 8], 0x102
jmp 0x40c27a
cmp eax, 0x10f
je 0x596bc4
cmp eax, 0x286
je 0x596bc4
mov eax, 1
ret 0x10
mov dword [esp + 8], eax
jmp 0x40fabf