Function at 0x460abc
Capabilities:
Open clipboard
Write clipboard data

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x2c
mov dword [ebp - 0x10], edi
mov dword [ebp - 0xc], esi
mov dword [ebp - 8], ebx
mov edi, eax
lea edx, [ebp - 0x28]
push edx
push 0x18
push dword [edi + 8]
call dword [sym.imp.GDI32.dll_GetObjectA]
test eax, eax
je 0x460d21
mov ecx, dword [edi + 0x1b0]
mov edx, dword [edi + 0x1a8]
cmp ecx, edx
jle 0x460af8
sub ecx, edx
jmp 0x460afc
neg ecx
add ecx, edx
mov ebx, dword [edi + 0x1b4]
mov edx, dword [edi + 0x1ac]
add ecx, 1
mov dword [ebp - 0x24], ecx
cmp ebx, edx
jle 0x460b16
sub ebx, edx
jmp 0x460b1a
neg ebx
add ebx, edx
movzx esi, word [ebp - 0x18]
add ebx, 1
mov dword [ebp - 0x20], ebx
movzx ebx, word [ebp - 0x16]
imul ecx, ebx
xor edx, edx
mov eax, 8
idiv esi
mov ebx, eax
mov eax, ecx
cdq
idiv ebx
mov ecx, eax
mov eax, ecx
cdq
xor eax, edx
sub eax, edx
and eax, 3
xor eax, edx
sub eax, edx
test eax, eax
je 0x460b59
sub ecx, eax
add ecx, 4
mov dword [ebp - 0x1c], ecx
jmp 0x460b5c
mov dword [ebp - 0x1c], ecx
lea edx, [ebp - 0x28]
push edx
call dword [sym.imp.GDI32.dll_CreateBitmapIndirect]
mov esi, eax
test esi, esi
je 0x460d08
push dword [edi + 0x1d0]
call dword [sym.imp.GDI32.dll_CreateCompatibleDC]
mov ebx, eax
test ebx, ebx
je 0x460ce8
push 1
push dword [edi + 0x3c]
push ebx
call dword [sym.imp.GDI32.dll_SelectPalette]
mov dword [ebp - 4], eax
push ebx
call dword [sym.imp.GDI32.dll_RealizePalette]
push esi
push ebx
call dword [sym.imp.GDI32.dll_SelectObject]
test eax, eax
je 0x460cc8
push 0xcc0020
mov ecx, dword [edi + 0x1a8]
mov edx, dword [edi + 0x1b0]
mov eax, dword [edi + 0x1b4]
cmp ecx, edx
jl 0x460bc9
mov ecx, edx
mov edx, dword [edi + 0x1ac]
cmp edx, eax
jl 0x460bd5
mov edx, eax
push edx
xor eax, eax
push ecx
push dword [edi + 0x1d4]
push dword [ebp - 0x20]
push dword [ebp - 0x24]
push eax
push eax
push ebx
call dword [sym.imp.GDI32.dll_BitBlt]
test eax, eax
je 0x460ca8
push dword [edi]
call dword [sym.imp.USER32.dll_OpenClipboard]
test eax, eax
je 0x460c8b
call dword [sym.imp.USER32.dll_EmptyClipboard]
test eax, eax
je 0x460c6e
push esi
push 2
call dword [sym.imp.USER32.dll_SetClipboardData]
mov eax, edi
call fcn.00460d40
push eax
push 9
call dword [sym.imp.USER32.dll_SetClipboardData]
call dword [sym.imp.USER32.dll_CloseClipboard]
mov edx, dword [ebp - 4]
test edx, edx
je 0x460c40
push 1
push edx
push ebx
call dword [sym.imp.GDI32.dll_SelectPalette]
push ebx
call dword [sym.imp.GDI32.dll_DeleteDC]
test eax, eax
je 0x460c58
mov ebx, dword [ebp - 8]
mov esi, dword [ebp - 0xc]
mov edi, dword [ebp - 0x10]
mov esp, ebp
pop ebp
ret
push 0x73d
push 0x4b7834
push 5
call fcn.004580ec
add esp, 0xc
jmp 0x460c4b
push esi
call dword [sym.imp.GDI32.dll_DeleteObject]
push 0x726
push 0x4b7834
push 5
call fcn.004580ec
add esp, 0xc
jmp 0x460c2f
push esi
call dword [sym.imp.GDI32.dll_DeleteObject]
push 0x71f
push 0x4b7834
push 5
call fcn.004580ec
add esp, 0xc
jmp 0x460c2f
push esi
call dword [sym.imp.GDI32.dll_DeleteObject]
push 0x717
push 0x4b7834
push 5
call fcn.004580ec
add esp, 0xc
jmp 0x460c2f
push esi
call dword [sym.imp.GDI32.dll_DeleteObject]
push 0x707
push 0x4b7834
push 5
call fcn.004580ec
add esp, 0xc
jmp 0x460c2f
push esi
call dword [sym.imp.GDI32.dll_DeleteObject]
push 0x6fc
push 0x4b7834
push 5
call fcn.004580ec
add esp, 0xc
jmp 0x460c4b
push 0x6f4
push 0x4b7834
push 4
call fcn.004580ec
add esp, 0xc
jmp 0x460c4b
push 0x6db
push 0x4b7834
push 5
call fcn.004580ec
add esp, 0xc
jmp 0x460c4b