Function at 0x424413
Capabilities:
Read clipboard data

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x4c59fb
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x3c
push esi
mov dword [ebp - 0x48], ecx
lea ecx, [ebp - 0x24]
call fcn.00406f30
mov dword [ebp - 4], 0
lea ecx, [ebp - 0x20]
call fcn.00406f30
mov byte [ebp - 4], 1
mov ecx, dword [ebp - 0x48]
call fcn.00424b90
test eax, eax
jne 0x424483
mov dword [ebp - 0x38], 0
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x20]
call fcn.004a32a4
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x24]
call fcn.004a32a4
mov eax, dword [ebp - 0x38]
jmp 0x4247bb
push 1
call dword [sym.imp.USER32.dll_IsClipboardFormatAvailable]
test eax, eax
jne 0x4244bf
call dword [sym.imp.USER32.dll_CloseClipboard]
mov dword [ebp - 0x3c], 0
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x20]
call fcn.004a32a4
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x24]
call fcn.004a32a4
mov eax, dword [ebp - 0x3c]
jmp 0x4247bb
push 1
call dword [sym.imp.USER32.dll_GetClipboardData]
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], 0
jne 0x424500
call dword [sym.imp.USER32.dll_CloseClipboard]
mov dword [ebp - 0x40], 0
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x20]
call fcn.004a32a4
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x24]
call fcn.004a32a4
mov eax, dword [ebp - 0x40]
jmp 0x4247bb
mov eax, dword [ebp - 0x1c]
push eax
call dword [sym.imp.KERNEL32.dll_GlobalLock]
mov dword [ebp - 0x14], eax
mov ecx, dword [ebp - 0x14]
push ecx
lea ecx, [ebp - 0x20]
call fcn.004a342d
mov edx, dword [ebp - 0x1c]
push edx
call dword [sym.imp.KERNEL32.dll_GlobalUnlock]
call dword [sym.imp.USER32.dll_CloseClipboard]
lea eax, [ebp - 0x24]
push eax
mov ecx, dword [ebp - 0x48]
call fcn.004a4713
lea ecx, [ebp - 0x10]
push ecx
lea edx, [ebp - 0x18]
push edx
mov ecx, dword [ebp - 0x48]
call fcn.00423a10
mov eax, dword [ebp - 0x18]
cmp eax, dword [ebp - 0x10]
je 0x424619
mov ecx, dword [ebp - 0x18]
mov dword [ebp - 0x2c], ecx
jmp 0x424562
mov edx, dword [ebp - 0x2c]
add edx, 1
mov dword [ebp - 0x2c], edx
mov eax, dword [ebp - 0x2c]
cmp eax, dword [ebp - 0x10]
jge 0x424614
mov esi, dword [ebp - 0x2c]
sub esi, dword [ebp - 0x18]
lea ecx, [ebp - 0x20]
call fcn.0040de10
sub eax, 1
cmp esi, eax
jle 0x424588
jmp 0x424614
mov ecx, dword [ebp - 0x2c]
push ecx
mov ecx, dword [ebp - 0x48]
add ecx, 0x3c
call fcn.00424b40
mov byte [ebp - 0x28], al
movsx edx, byte [ebp - 0x28]
cmp edx, 0x23
je 0x4245c1
mov eax, dword [ebp - 0x2c]
push eax
mov ecx, dword [ebp - 0x48]
add ecx, 0x3c
call fcn.00424b40
push eax
mov ecx, dword [ebp - 0x2c]
push ecx
lea ecx, [ebp - 0x24]
call fcn.004a3764
jmp 0x42460f
mov edx, dword [ebp - 0x2c]
sub edx, dword [ebp - 0x18]
push edx
lea ecx, [ebp - 0x20]
call fcn.00424b40
movsx eax, al
push eax
call fcn.0048b31f
add esp, 4
mov byte [ebp - 0x28], al
mov cl, byte [ebp - 0x28]
push ecx
mov ecx, dword [ebp - 0x48]
call fcn.004243bd
test eax, eax
je 0x424601
mov dl, byte [ebp - 0x28]
push edx
mov eax, dword [ebp - 0x2c]
push eax
lea ecx, [ebp - 0x24]
call fcn.004a3764
jmp 0x42460f
push 0x30
mov ecx, dword [ebp - 0x2c]
push ecx
lea ecx, [ebp - 0x24]
call fcn.004a3764
jmp 0x424559
jmp 0x424773
mov ecx, dword [ebp - 0x48]
add ecx, 0x3c
call fcn.0040de10
mov esi, eax
lea ecx, [ebp - 0x24]
call fcn.0040de10
sub esi, eax
add esi, dword [ebp - 0x18]
mov dword [ebp - 0x34], esi
mov edx, dword [ebp - 0x18]
mov dword [ebp - 0x30], edx
jmp 0x424647
mov eax, dword [ebp - 0x30]
add eax, 1
mov dword [ebp - 0x30], eax
mov ecx, dword [ebp - 0x30]
cmp ecx, dword [ebp - 0x34]
jge 0x424763
mov esi, dword [ebp - 0x30]
sub esi, dword [ebp - 0x18]
lea ecx, [ebp - 0x20]
call fcn.0040de10
sub eax, 1
cmp esi, eax
jle 0x42466d
jmp 0x424763
mov edx, dword [ebp - 0x30]
push edx
mov ecx, dword [ebp - 0x48]
add ecx, 0x3c
call fcn.00424b40
mov byte [ebp - 0x28], al
movsx eax, byte [ebp - 0x28]
cmp eax, 0x23
je 0x4246d4
lea ecx, [ebp - 0x24]
call fcn.0040de10
cmp dword [ebp - 0x30], eax
jge 0x4246b3
mov ecx, dword [ebp - 0x30]
push ecx
mov ecx, dword [ebp - 0x48]
add ecx, 0x3c
call fcn.00424b40
push eax
mov edx, dword [ebp - 0x30]
push edx
lea ecx, [ebp - 0x24]
call fcn.004a3764
jmp 0x4246cf
mov eax, dword [ebp - 0x30]
push eax
mov ecx, dword [ebp - 0x48]
add ecx, 0x3c
call fcn.00424b40
push eax
mov ecx, dword [ebp - 0x30]
push ecx
lea ecx, [ebp - 0x24]
call fcn.0049f2f9
jmp 0x42475e
mov edx, dword [ebp - 0x30]
sub edx, dword [ebp - 0x18]
push edx
lea ecx, [ebp - 0x20]
call fcn.00424b40
movsx eax, al
push eax
call fcn.0048b31f
add esp, 4
mov byte [ebp - 0x28], al
mov cl, byte [ebp - 0x28]
push ecx
mov ecx, dword [ebp - 0x48]
call fcn.004243bd
test eax, eax
je 0x424733
lea ecx, [ebp - 0x24]
call fcn.0040de10
cmp dword [ebp - 0x30], eax
jge 0x424721
mov dl, byte [ebp - 0x28]
push edx
mov eax, dword [ebp - 0x30]
push eax
lea ecx, [ebp - 0x24]
call fcn.004a3764
jmp 0x424731
mov cl, byte [ebp - 0x28]
push ecx
mov edx, dword [ebp - 0x30]
push edx
lea ecx, [ebp - 0x24]
call fcn.0049f2f9
jmp 0x42475e
lea ecx, [ebp - 0x24]
call fcn.0040de10
cmp dword [ebp - 0x30], eax
jge 0x424750
push 0x30
mov eax, dword [ebp - 0x30]
push eax
lea ecx, [ebp - 0x24]
call fcn.004a3764
jmp 0x42475e
push 0x30
mov ecx, dword [ebp - 0x30]
push ecx
lea ecx, [ebp - 0x24]
call fcn.0049f2f9
jmp 0x42463e
mov edx, dword [ebp - 0x34]
sub edx, dword [ebp - 0x18]
mov eax, dword [ebp - 0x10]
lea ecx, [eax + edx - 1]
mov dword [ebp - 0x10], ecx
lea ecx, [ebp - 0x24]
call fcn.00406f50
push eax
mov ecx, dword [ebp - 0x48]
call fcn.004a6c91
push 0
mov edx, dword [ebp - 0x10]
push edx
mov eax, dword [ebp - 0x18]
push eax
mov ecx, dword [ebp - 0x48]
call fcn.00414d10
mov dword [ebp - 0x44], 1
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x20]
call fcn.004a32a4
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x24]
call fcn.004a32a4
mov eax, dword [ebp - 0x44]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop esi
mov esp, ebp
pop ebp
ret