Function at 0x47d298
Capabilities:
Open clipboard
Write clipboard data

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x2c
mov dword [ebp - 4], edi
mov dword [ebp - 0xc], esi
mov dword [ebp - 0x10], ebx
mov edi, dword [eax + 0x1a4]
push dword [eax]
mov dword [ebp - 8], eax
call dword [sym.imp.USER32.dll_OpenClipboard]
test eax, eax
je 0x47d507
mov ebx, dword [ebp - 8]
mov ecx, dword [ebx + 0x1a8]
mov edx, dword [ebx + 0x1ac]
mov eax, dword [ebx + 0x1b0]
mov dword [ebp - 0x18], eax
mov eax, dword [ebx + 0x1b4]
cmp edx, eax
jg 0x47d2f1
jne 0x47d32c
mov ebx, dword [ebp - 0x18]
cmp ecx, ebx
jg 0x47d514
jmp 0x47d32c
mov dword [ebp - 0x1c], eax
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0x20], eax
mov dword [ebp - 0x24], edx
mov dword [ebp - 0x28], ecx
lea ecx, [ebp - 0x28]
lea edx, [ebp - 0x20]
push edx
push ecx
call fcn.004720fc
lea edx, [ebp - 0x24]
lea eax, [ebp - 0x1c]
push eax
push edx
call fcn.004720fc
add esp, 0x10
mov ecx, dword [ebp - 0x28]
mov edx, dword [ebp - 0x24]
mov eax, dword [ebp - 0x20]
mov dword [ebp - 0x18], eax
mov eax, dword [ebp - 0x1c]
mov ebx, dword [ebp - 0x18]
add ecx, 1
mov dword [ebp - 0x28], ecx
add edx, 1
lea esi, [ebx + 1]
mov dword [ebp - 0x24], edx
mov dword [ebp - 0x20], esi
add eax, 1
test edi, edi
mov dword [ebp - 0x1c], eax
je 0x47d356
cmp edx, dword [edi + 0xc]
jle 0x47d356
mov edi, dword [edi]
test edi, edi
jne 0x47d34b
cmp edx, eax
jne 0x47d361
sub esi, ecx
add esi, 2
jmp 0x47d3a0
sub eax, edx
cdq
mov ebx, eax
xor ebx, edx
sub ebx, edx
cmp ebx, 1
jle 0x47d38b
mov edx, dword [ebp - 8]
mov ebx, dword [edx + 0x11c]
sub esi, ecx
add esi, ebx
add ebx, 1
add eax, 0xffffffff
imul eax, ebx
lea esi, [esi + eax + 2]
jmp 0x47d3a0
mov eax, dword [ebp - 8]
mov edx, dword [eax + 0x11c]
sub edx, ecx
mov ecx, dword [ebp - 0x18]
lea esi, [edx + ecx + 1]
add esi, 1
add esi, 0xa
push esi
push 2
call dword [sym.imp.KERNEL32.dll_GlobalAlloc]
mov dword [ebp - 0x18], eax
test eax, eax
je 0x47d59a
push eax
call dword [sym.imp.KERNEL32.dll_GlobalLock]
mov ebx, eax
test ebx, ebx
je 0x47d57d
push esi
push 0
push ebx
call fcn.004a3ab8
add esp, 0xc
mov esi, dword [ebp - 0x24]
mov edx, dword [ebp - 0x1c]
cmp esi, edx
jg 0x47d4de
test edi, edi
je 0x47d4de
mov eax, dword [edi + 0xc]
cmp eax, esi
jne 0x47d4d3
cmp esi, dword [ebp - 0x24]
jne 0x47d402
mov eax, dword [ebp - 0x28]
mov dword [ebp - 0x14], eax
jmp 0x47d40a
mov eax, 1
mov dword [ebp - 0x14], eax
mov ecx, dword [edi + 4]
cmp ecx, eax
jle 0x47d42e
sub ecx, dword [ebp - 0x14]
push ecx
push 0x20
mov dword [ebp - 0x2c], ecx
push ebx
call fcn.004a3ab8
mov ecx, dword [ebp - 0x2c]
add esp, 0xc
mov edx, dword [ebp - 0x1c]
add dword [ebp - 0x14], ecx
add ebx, ecx
cmp esi, edx
jne 0x47d43a
mov ecx, dword [ebp - 0x20]
add ecx, 1
jmp 0x47d443
mov eax, dword [ebp - 8]
mov ecx, dword [eax + 0x11c]
mov eax, dword [edi + 8]
cmp ecx, eax
jle 0x47d44f
sub eax, dword [ebp - 0x14]
jmp 0x47d454
mov eax, ecx
sub eax, dword [ebp - 0x14]
mov ecx, dword [edi + 0x10]
cmp ecx, 1
je 0x47d537
test eax, eax
jle 0x47d487
test ecx, ecx
jne 0x47d487
mov edx, dword [edi + 0x14]
sub edx, dword [edi + 4]
add edx, dword [ebp - 0x14]
push eax
mov dword [ebp - 0x2c], eax
push edx
push ebx
call fcn.004a3b10
mov eax, dword [ebp - 0x2c]
add esp, 0xc
mov edx, dword [ebp - 0x1c]
add ebx, eax
cmp esi, edx
je 0x47d4a3
mov eax, dword [edi + 0x10]
test eax, eax
jne 0x47d4c4
mov byte [ebx], 0xd
mov byte [ebx + 1], 0xa
mov edx, dword [ebp - 0x1c]
add ebx, 2
cmp esi, edx
jne 0x47d4c4
cmp esi, dword [ebp - 0x24]
jne 0x47d4c4
mov eax, dword [edi + 0x10]
test eax, eax
jne 0x47d4c4
mov eax, dword [ebp - 0x20]
cmp eax, dword [edi + 8]
jl 0x47d4de
mov byte [ebx], 0xd
mov byte [ebx + 1], 0xa
mov edx, dword [ebp - 0x1c]
add ebx, 2
mov edi, dword [edi]
add esi, 1
cmp esi, edx
jle 0x47d3e2
jmp 0x47d4de
add esi, 1
cmp esi, edx
jle 0x47d3ed
mov eax, dword [ebp - 0x18]
mov byte [ebx], 0
push eax
call dword [sym.imp.KERNEL32.dll_GlobalUnlock]
call dword [sym.imp.USER32.dll_EmptyClipboard]
test eax, eax
je 0x47d552
mov eax, dword [ebp - 0x18]
push eax
push 1
call dword [sym.imp.USER32.dll_SetClipboardData]
call dword [sym.imp.USER32.dll_CloseClipboard]
mov ebx, dword [ebp - 0x10]
mov esi, dword [ebp - 0xc]
mov edi, dword [ebp - 4]
mov esp, ebp
pop ebp
ret
mov dword [ebp - 0x1c], eax
mov eax, ebx
mov dword [ebp - 0x20], eax
mov dword [ebp - 0x24], edx
mov dword [ebp - 0x28], ecx
lea ecx, [ebp - 0x28]
lea edx, [ebp - 0x20]
push edx
push ecx
call fcn.004720fc
add esp, 8
jmp 0x47d31d
cmp edx, dword [ebp - 0x24]
je 0x47d487
mov byte [ebx], 0xd
mov byte [ebx + 1], 0xa
mov edx, dword [ebp - 0x1c]
add ebx, 2
jmp 0x47d487
mov eax, dword [ebp - 0x18]
push eax
call dword [sym.imp.KERNEL32.dll_GlobalFree]
push 0x6bb
push str.qwgwnd.c
push 5
call fcn.004751b8
add esp, 0xc
mov ebx, dword [ebp - 0x10]
mov esi, dword [ebp - 0xc]
mov edi, dword [ebp - 4]
mov esp, ebp
pop ebp
ret
call dword [sym.imp.USER32.dll_CloseClipboard]
mov eax, dword [ebp - 0x18]
push eax
call dword [sym.imp.KERNEL32.dll_GlobalFree]
mov ebx, dword [ebp - 0x10]
mov esi, dword [ebp - 0xc]
mov edi, dword [ebp - 4]
mov esp, ebp
pop ebp
ret
call dword [sym.imp.USER32.dll_CloseClipboard]
mov ebx, dword [ebp - 0x10]
mov esi, dword [ebp - 0xc]
mov edi, dword [ebp - 4]
mov esp, ebp
pop ebp
ret