Function at 0x41a260
Capabilities:
Open clipboard
Write clipboard data

Disassembly:
sub esp, 0x18
push esi
xor esi, esi
cmp dword [0x4d299c], 1
mov dword [esp + 0xc], esi
je 0x41a570
cmp dword [0x4e269c], esi
je 0x41a570
cmp dword [0x4d1b1c], esi
mov ecx, dword [0x4d1b0c]
je 0x41a2b0
mov eax, dword [0x4d1b10]
sub eax, dword [0x4d1af0]
sub ecx, dword [0x4d1aec]
add eax, 1
add ecx, 3
imul eax, ecx
add eax, 1
jmp 0x41a2d1
mov edx, dword [0x4d1b10]
sub edx, dword [0x4d1af0]
mov eax, dword [0x4d76a8]
add eax, 2
imul edx, eax
sub edx, dword [0x4d1aec]
lea eax, [edx + ecx + 1]
push edi
push eax
call fcn.00420f60
mov edi, eax
add esp, 4
cmp edi, esi
mov dword [esp + 0x18], edi
je 0x41a56f
push ebx
call fcn.00419690
mov ebx, dword [0x4d1af0]
push ebx
mov byte [edi], 0
call fcn.004195c0
add esp, 4
cmp ebx, dword [0x4d1b10]
mov dword [esp + 0xc], eax
mov eax, ebx
mov dword [esp + 0x10], ebx
jg 0x41a51a
push ebp
jmp 0x41a326
mov ebx, dword [0x4d1af0]
cmp dword [0x4d1b1c], 0
je 0x41a337
mov ebp, dword [0x4d1aec]
jmp 0x41a354
mov edi, dword [0x4d76a8]
xor ebp, ebp
add edi, 0xffffffff
cmp eax, ebx
jne 0x41a34c
mov ebp, dword [0x4d1aec]
cmp eax, dword [0x4d1b10]
jne 0x41a35d
mov edi, dword [0x4d1b0c]
add edi, 0xffffffff
mov edx, dword [esp + 0x10]
push ebp
push edx
call fcn.0041a1a0
add esp, 8
cmp eax, ebp
je 0x41a37a
cmp dword [esp + 0x14], ebx
mov ebp, eax
je 0x41a37a
lea ebp, [eax + 2]
mov ebx, dword [esp + 0x10]
push edi
push ebx
call fcn.0041a1a0
mov edi, eax
mov eax, dword [esp + 0x20]
add esp, 8
cmp word [0x4d86d4], 0
mov dword [esp + 0x1c], edi
mov dword [esp + 0x24], eax
mov dword [esp + 0x18], 0
je 0x41a40b
mov ecx, dword [0x4d1b10]
cmp dword [esp + 0x14], ecx
je 0x41a40b
cmp dword [0x4d1b1c], 0
jne 0x41a40b
push ebx
call fcn.004195f0
mov edx, eax
mov eax, dword [0x4d1b44]
add esp, 4
test byte [edx + eax], 0x20
je 0x41a3db
mov dword [esp + 0x18], 1
mov ecx, dword [0x4d76a8]
add ecx, 0xffffffff
cmp edi, ecx
jne 0x41a404
add eax, edi
test byte [eax + ebx], 0x20
je 0x41a404
push 0xffffffffffffffff
lea edx, [esp + 0x20]
push edx
push ebx
call fcn.0041a1c0
mov edi, dword [esp + 0x28]
add esp, 0xc
cmp dword [esp + 0x18], 0
jne 0x41a43c
test edi, edi
jle 0x41a43e
mov eax, dword [0x4d1b3c]
add ebx, eax
cmp byte [ebx + edi], 0x20
jne 0x41a438
mov edx, dword [esp + 0x10]
push 0xffffffffffffffff
lea ecx, [esp + 0x20]
push ecx
push edx
call fcn.0041a1c0
mov edi, dword [esp + 0x28]
add esp, 0xc
test edi, edi
jg 0x41a416
mov ebx, dword [esp + 0x10]
test edi, edi
jne 0x41a450
mov eax, dword [0x4d1b3c]
cmp byte [eax + ebx], 0x20
jne 0x41a450
or edi, 0xffffffff
jmp 0x41a461
mov ecx, dword [0x4d1b44]
add ecx, edi
test byte [ecx + ebx], 0x80
je 0x41a461
add edi, 1
xor ecx, ecx
cmp ebp, edi
lea edx, [ecx + 1]
mov ebx, ebp
jg 0x41a4c8
mov eax, dword [esp + 0x10]
mov ebp, dword [0x4d1b3c]
add ebp, eax
mov dword [esp + 0x1c], ebp
lea esp, [esp]
mov eax, dword [esp + 0x1c]
mov al, byte [eax + ebx]
add ebx, 1
test ecx, ecx
jne 0x41a4b2
cmp dword [esp + 0x2c], ecx
je 0x41a4a1
cmp al, 0x20
ja 0x41a4a1
mov ecx, 1
mov al, 9
jmp 0x41a4a5
cmp al, 9
jne 0x41a4b8
test edx, edx
je 0x41a4b8
cmp dword [esp + 0x24], 0
je 0x41a4c4
jmp 0x41a4b8
cmp al, 0x20
jbe 0x41a4c4
xor ecx, ecx
mov ebp, dword [esp + 0x20]
xor edx, edx
mov byte [esi + ebp], al
add esi, 1
cmp ebx, edi
jle 0x41a480
cmp dword [esp + 0x18], 0
jne 0x41a4ed
mov ecx, dword [esp + 0x14]
cmp ecx, dword [0x4d1b10]
jge 0x41a4ed
mov eax, dword [esp + 0x20]
mov byte [esi + eax], 0xd
add esi, 1
mov byte [esi + eax], 0xa
add esi, 1
mov edx, dword [esp + 0x10]
push edx
call fcn.004195f0
mov dword [esp + 0x14], eax
mov eax, dword [esp + 0x18]
add eax, 1
add esp, 4
cmp eax, dword [0x4d1b10]
mov dword [esp + 0x14], eax
jle 0x41a320
mov edi, dword [esp + 0x20]
pop ebp
mov byte [esi + edi], 0
cmp word [0x4d86d4], 0
pop ebx
je 0x41a560
cmp eax, dword [0x4d1b10]
je 0x41a560
cmp dword [0x4d1b1c], 0
jne 0x41a560
mov ecx, dword [0x4d6fb8]
add ecx, 0xffffffff
cmp eax, ecx
jge 0x41a560
mov edx, dword [esp + 8]
push edx
call fcn.004195f0
mov ecx, dword [0x4d1b44]
add esp, 4
test byte [eax + ecx], 0x20
jne 0x41a565
call fcn.00419710
pop edi
pop esi
add esp, 0x18
jmp 0x420fd0
pop edi
pop esi
add esp, 0x18
ret
push ebx
xor ebx, ebx
cmp dword [0x4d1db0], ebx
je 0x4210b2
mov eax, dword [0x4d1db4]
push ebp
push esi
push edi
mov edi, dword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
push ebx
push ebx
push 0xffffffffffffffff
push eax
push ebx
push ebx
call edi
mov esi, eax
lea ecx, [esi + esi]
push ecx
push 2
call dword [sym.imp.KERNEL32.dll_GlobalAlloc]
cmp eax, ebx
mov ebp, dword [sym.imp.KERNEL32.dll_GlobalUnlock]
mov dword [0x4d1db8], eax
je 0x421036
push eax
call dword [sym.imp.KERNEL32.dll_GlobalLock]
mov edx, dword [0x4d1db4]
push esi
push eax
push 0xffffffffffffffff
push edx
push ebx
push ebx
mov dword [0x4d1dbc], eax
call edi
mov eax, dword [0x4d1db8]
push eax
call ebp
mov eax, dword [0x4d1db4]
xor esi, esi
cmp eax, ebx
je 0x42104a
xor ecx, ecx
cmp byte [eax], bl
sete cl
mov esi, ecx
mov edx, dword [0x4d1db0]
push edx
call ebp
mov eax, dword [0x4d2994]
push eax
mov dword [0x4d1db4], ebx
call dword [sym.imp.USER32.dll_OpenClipboard]
test eax, eax
je 0x4210a3
call dword [sym.imp.USER32.dll_EmptyClipboard]
cmp esi, ebx
jne 0x42109d
mov ecx, dword [0x4d1db0]
mov esi, dword [sym.imp.USER32.dll_SetClipboardData]
push ecx
push 1
call esi
cmp dword [0x4d1dbc], ebx
je 0x42109d
mov edx, dword [0x4d1db8]
push edx
push 0xd
call esi
mov dword [0x4d1dbc], ebx
call dword [sym.imp.USER32.dll_CloseClipboard]
pop edi
pop esi
mov dword [0x4d1db0], ebx
mov dword [0x4d1db8], ebx
pop ebp
pop ebx
ret