Function at 0x43a170
Capabilities:
Open clipboard
Write clipboard data

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x463545
mov eax, dword fs:[0]
push eax
sub esp, 0x24
mov eax, dword [0x472008]
xor eax, ebp
mov dword [ebp - 0x10], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov ebx, ecx
mov dword [ebp - 0x30], ebx
xor eax, eax
mov dword [ebp - 0x28], eax
mov dword [ebp - 0x20], eax
push 2
push 0xffffffffffffffff
mov dword [ebp - 4], eax
push 0x100c
push dword [ebx + 0xb4]
mov dword [ebp - 0x24], eax
call dword [sym.imp.USER32.dll_SendMessageW]
mov esi, eax
test esi, esi
js 0x43a1f3
lea esp, [esp]
push esi
lea ecx, [ebp - 0x28]
call fcn.0041a490
push 2
push esi
push 0x100c
push dword [ebx + 0xb4]
call dword [sym.imp.USER32.dll_SendMessageW]
mov esi, eax
test esi, esi
jns 0x43a1d0
push 8
call fcn.0045e549
mov esi, eax
mov dword [ebp - 0x14], 3
xor edi, edi
mov dword [ebp - 0x1c], esi
xor eax, eax
mov dword [ebp - 0x18], edi
add esp, 4
mov word [esi], ax
mov byte [ebp - 4], 1
mov eax, dword [ebp - 0x24]
mov ecx, eax
mov dword [ebp - 0x2c], ecx
test ecx, ecx
jne 0x43a23e
push eax
push eax
push 0x1004
push dword [ebx + 0xb4]
call dword [sym.imp.USER32.dll_SendMessageW]
mov ecx, eax
mov eax, dword [ebp - 0x24]
mov dword [ebp - 0x2c], ecx
xor ebx, ebx
test ecx, ecx
je 0x43a2eb
cmp ebx, eax
jae 0x43a254
mov eax, dword [ebp - 0x28]
mov edi, dword [eax + ebx*4]
jmp 0x43a256
mov edi, ebx
mov eax, dword [ebp - 0x30]
lea ecx, [ebp - 0x1c]
mov eax, dword [eax + 0xbc]
mov edi, dword [eax + edi*4]
push dword [edi + 4]
call fcn.0040b990
mov eax, dword [edi + 4]
mov esi, dword [ebp - 0x18]
lea eax, [eax*2 + 2]
push eax
mov eax, dword [ebp - 0x1c]
push dword [edi]
lea eax, [eax + esi*2]
push eax
call sub.msvcrt.dll_memcpy
add esi, dword [edi + 4]
add esp, 0xc
mov dword [ebp - 0x18], esi
xor esi, esi
inc esi
cmp byte [esi + 0x469678], 0
jne 0x43a294
push esi
lea ecx, [ebp - 0x1c]
call fcn.0040b990
mov edi, dword [ebp - 0x18]
xor ecx, ecx
mov eax, dword [ebp - 0x1c]
lea edx, [eax + edi*2]
test esi, esi
je 0x43a2d0
jmp 0x43a2c0
movzx eax, byte [ecx + 0x469678]
mov word [edx + ecx*2], ax
inc ecx
cmp ecx, esi
jb 0x43a2c0
xor eax, eax
add edi, esi
inc ebx
mov word [edx + esi*2], ax
mov eax, dword [ebp - 0x24]
mov dword [ebp - 0x18], edi
cmp ebx, dword [ebp - 0x2c]
jb 0x43a248
mov esi, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x30]
push dword [eax + 4]
call dword [sym.imp.USER32.dll_OpenClipboard]
test eax, eax
je 0x43a355
call dword [sym.imp.USER32.dll_EmptyClipboard]
test eax, eax
je 0x43a34f
lea ebx, [edi*2 + 2]
push ebx
push 0x2002
call dword [sym.imp.KERNEL32.dll_GlobalAlloc]
mov edi, eax
test edi, edi
je 0x43a34f
push edi
call dword [sym.imp.KERNEL32.dll_GlobalLock]
test eax, eax
je 0x43a348
push ebx
push esi
push eax
call sub.msvcrt.dll_memcpy
add esp, 0xc
push edi
call dword [sym.imp.KERNEL32.dll_GlobalUnlock]
push edi
push 0xd
call dword [sym.imp.USER32.dll_SetClipboardData]
test eax, eax
jne 0x43a34f
push edi
call dword [sym.imp.KERNEL32.dll_GlobalFree]
call dword [sym.imp.USER32.dll_CloseClipboard]
push esi
call fcn.0045e2f3
push dword [ebp - 0x28]
call fcn.0045e2f3
add esp, 8
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.0045e090
mov esp, ebp
pop ebp
ret