Function at 0x302dde0
Capabilities:
Encode data using xor
Open clipboard
Read clipboard data

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff8
sub esp, 0x38
mov esi, esp
call fcn.03009340
push eax
mov dword [esi + 0x14], esp
push eax
mov dword [esi + 0xc], esp
push eax
mov ebx, esp
jmp 0x302de00
push eax
mov dword [esi + 0x18], esp
call fcn.03009340
push eax
mov dword [esi + 8], esp
push eax
mov eax, esp
sub esp, 0x18
mov edi, esp
and edi, 0xfffffff8
mov esp, edi
jmp 0x302de1c
mov dword [esi + 0x28], eax
push eax
mov dword [esi + 0x1c], esp
mov eax, dword [esi + 0x14]
mov ecx, dword [ebp + 8]
mov dword [eax], ecx
mov eax, dword [esi + 0xc]
mov byte [eax], 0
xor eax, eax
sub esp, 4
mov dword [esp], 0
call dword [sym.imp.USER32.dll_OpenClipboard]
cmp eax, 0
je 0x302dfc6
xor eax, eax
sub esp, 8
mov dword [esp], 0
mov dword [esp + 4], 0
call dword [sym.imp.USER32.dll_GetWindowLongW]
mov dword [ebx], eax
sub esp, 4
mov dword [esp], 1
call dword [sym.imp.USER32.dll_GetClipboardData]
mov ebx, dword [esi + 0x18]
mov dword [ebx], eax
cmp dword [ebx], 0
je 0x302dfbe
mov eax, dword [ebx]
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_GlobalLock]
mov ecx, dword [esi + 8]
mov dword [ecx], eax
jmp 0x302de9b
jmp 0x302de9d
jmp 0x302de9f
mov eax, dword [esi + 8]
mov eax, dword [eax]
jmp 0x302dea6
sub esp, 4
mov dword [esp], eax
call fcn.0300a510
add esp, 4
mov ecx, dword [esi + 0x28]
mov dword [ecx], eax
cmp dword [ecx], 0
je 0x302dfa8
mov eax, dword [esi + 0x14]
mov eax, dword [eax]
mov dword [esi + 0x20], eax
mov eax, dword [ecx]
mov dword [esi + 0x24], eax
mov eax, dword [esi + 8]
mov ebx, dword [eax]
jmp 0x302ded6
call fcn.03009340
mov eax, dword [esi + 0x1c]
mov al, byte [eax]
mov byte [esi + 0x10], al
mov byte [edi], 0x8b
mov byte [edi + 1], 0xd1
mov byte [edi + 2], 0xdb
mov byte [edi + 3], 0xd3
mov byte [edi + 4], 0xe6
mov byte [edi + 5], 0xd2
mov byte [edi + 6], 0xe7
mov byte [edi + 7], 0xd1
mov byte [edi + 8], 0xe0
mov byte [edi + 9], 0x97
mov byte [edi + 0xa], 0xae
mov byte [edi + 0xb], 0xb3
mov byte [edi + 0xc], 0xac
mov byte [edi + 0xd], 0x39
mov dword [edi + 0x11], 0
mov dword [edi + 0xe], 0
mov dword [esi + 4], 0
mov eax, dword [esi + 4]
cmp eax, 0x15
jae 0x302df81
jmp 0x302df39
mov eax, dword [esi + 4]
mov ecx, dword [esi + 4]
movzx edx, byte [edi + ecx]
mov ecx, eax
add ecx, 0xb6
lea eax, [eax + edx + 0x48f322b6]
and ecx, edx
add ecx, ecx
mov edx, ecx
xor edx, eax
not ecx
and eax, ecx
add eax, eax
sub eax, edx
mov dword [esi + 0x2c], eax
mov eax, dword [esi + 0x2c]
add al, 6
mov ecx, dword [esi + 4]
mov byte [edi + ecx], al
mov eax, dword [esi + 4]
inc eax
mov dword [esi + 4], eax
mov eax, dword [esi + 4]
cmp eax, 0x15
jb 0x302df39
jmp 0x302df81
jmp 0x302df83
sub esp, 0xc
mov ecx, dword [esi + 0x20]
mov dword [esp], edi
mov dword [esp + 4], ebx
mov eax, dword [esi + 0x24]
mov dword [esp + 8], eax
call fcn.03009550
and al, 1
mov ecx, dword [esi + 0xc]
mov byte [ecx], al
mov ebx, dword [esi + 0x18]
jmp 0x302dfa8
mov eax, dword [ebx]
jmp 0x302dfac
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_GlobalUnlock]
jmp 0x302dfba
jmp 0x302dfbc
jmp 0x302dfbe
call dword [sym.imp.USER32.dll_CloseClipboard]
jmp 0x302dfc6
mov eax, dword [esi + 0xc]
mov al, byte [eax]
and al, 1
movzx eax, al
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret