Function at 0x4c38a4
Capabilities:
Change the wallpaper
Hide graphical window

Disassembly:
push ebp
mov ebp, esp
xor ecx, ecx
push ecx
push ecx
push ecx
push ecx
push ecx
push ebx
push esi
push edi
xor eax, eax
push ebp
push 0x4c3bfa
push dword fs:[eax]
mov dword fs:[eax], esp
mov byte [ebp - 1], 1
xor eax, eax
push ebp
push 0x4c3bd1
push dword fs:[eax]
mov dword fs:[eax], esp
push 0x30
call sub.user32.dll_MessageBeep
mov eax, dword [0x4d39ac]
mov dword [eax], 0x30
mov eax, dword [0x4d39ac]
mov dword [eax + 4], 3
mov eax, dword [0x4d39ac]
mov dword [eax + 8], 0x4c5a98
mov eax, dword [0x4d39ac]
xor edx, edx
mov dword [eax + 0xc], edx
mov eax, dword [0x4d39ac]
xor edx, edx
mov dword [eax + 0x10], edx
push 0
call sub.kernel32.dll_GetModuleHandleA_2
mov edx, dword [0x4d39ac]
mov dword [edx + 0x14], eax
push 0x7f00
push 0
call sub.user32.dll_LoadIconA
mov edx, dword [0x4d39ac]
mov dword [edx + 0x18], eax
push 0x7f00
push 0
call sub.user32.dll_LoadCursorA
mov edx, dword [0x4d39ac]
mov dword [edx + 0x1c], eax
mov eax, dword [0x4d39ac]
mov dword [eax + 0x20], 0x10
mov eax, dword [0x4d39ac]
xor edx, edx
mov dword [eax + 0x24], edx
mov eax, 0x4c3c0c
mov edx, dword [0x4d39ac]
mov dword [edx + 0x28], eax
mov eax, dword [0x4d39ac]
push eax
call sub.user32.dll_RegisterClassExA
push 0
mov eax, dword [0x4d3dec]
push eax
push 0
push 0x30
call sub.user32.dll_SystemParametersInfoA
mov eax, dword [0x4d38a8]
mov dword [eax], 0x190
mov eax, dword [0x4d38a8]
mov dword [eax + 4], 0xa5
mov eax, dword [0x4d3dec]
mov eax, dword [eax + 8]
mov edx, dword [0x4d38a8]
sub eax, dword [edx]
mov edx, dword [0x4d3954]
mov dword [edx], eax
mov eax, dword [0x4d3dec]
mov eax, dword [eax + 0xc]
mov edx, dword [0x4d3954]
mov dword [edx + 4], eax
push 0x10080000
mov eax, dword [0x4d3954]
mov eax, dword [eax]
push eax
mov eax, dword [0x4d3954]
mov eax, dword [eax + 4]
push eax
mov eax, dword [0x4d38a8]
mov eax, dword [eax]
push eax
mov eax, dword [0x4d38a8]
mov eax, dword [eax + 4]
push eax
push 0
push 0
mov eax, dword [0x4d4668]
push eax
push 0
mov eax, dword [0x4d3a2c]
mov eax, dword [eax]
call fcn.00405504
mov ecx, eax
mov edx, 0x4c3c0c
mov eax, 0x89
call fcn.00408648
mov edx, dword [0x4d3cd8]
mov dword [edx], eax
push 0x50000000
push 0xf
push 0xa
push 0x168
push 0x14
mov eax, dword [0x4d3cd8]
mov eax, dword [eax]
push eax
push 0x12c
mov eax, dword [0x4d4668]
push eax
push 0
mov eax, dword [0x4d3a40]
mov eax, dword [eax]
call fcn.00405504
mov ecx, eax
mov edx, 0x4c3c18
mov eax, 0x10000
call fcn.00408648
mov edx, dword [0x4d38c8]
mov dword [edx], eax
push 0x50000000
push 0xf
push 0x1e
push 0x168
push 0x14
mov eax, dword [0x4d3cd8]
mov eax, dword [eax]
push eax
push 0x12c
mov eax, dword [0x4d4668]
push eax
push 0
mov eax, dword [0x4d3be4]
push dword [eax]
push 0x4c3c28
mov eax, dword [0x4d3c34]
push dword [eax]
push 0x4c3c34
lea eax, [ebp - 8]
mov edx, 4
call fcn.004053c4
mov eax, dword [ebp - 8]
call fcn.00405504
mov ecx, eax
mov edx, 0x4c3c18
mov eax, 0x10000
call fcn.00408648
mov edx, dword [0x4d38c8]
mov dword [edx], eax
push 0x50000000
push 0xf
push 0x32
push 0x168
push 0x14
mov eax, dword [0x4d3cd8]
mov eax, dword [eax]
push eax
push 0x12c
mov eax, dword [0x4d4668]
push eax
push 0
call fcn.0040bf5c
add esp, 0xfffffff8
fstp qword [esp]
wait
lea eax, [ebp - 0x10]
call fcn.0040cc20
push dword [ebp - 0x10]
push 0x4c3c40
call fcn.0040bf88
add esp, 0xfffffff8
fstp qword [esp]
wait
lea eax, [ebp - 0x14]
call fcn.0040cc38
push dword [ebp - 0x14]
lea eax, [ebp - 0xc]
mov edx, 3
call fcn.004053c4
mov eax, dword [ebp - 0xc]
call fcn.00405504
mov ecx, eax
mov edx, 0x4c3c18
mov eax, 0x10000
call fcn.00408648
mov edx, dword [0x4d38fc]
mov dword [edx], eax
push 0x50200844
push 0xf
push 0x46
push 0x16d
push 0x37
mov eax, dword [0x4d3cd8]
mov eax, dword [eax]
push eax
push 0
push 0
push 0
mov eax, dword [0x4d3f28]
mov eax, dword [eax]
call fcn.00405504
mov ecx, eax
mov edx, 0x4c3c44
mov eax, 0x300
call fcn.00408648
push 5
mov eax, dword [0x4d3cd8]
mov eax, dword [eax]
push eax
call sub.user32.dll_ShowWindow
mov eax, dword [0x4d391c]
mov byte [eax], 0
push 0
push 5
mov eax, dword [0x4d3cd8]
mov eax, dword [eax]
push eax
mov eax, dword [0x4d3cd8]
mov eax, dword [eax]
push eax
call sub.user32.dll_SetTimer
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x4c3bdf
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x4c3c01
lea eax, [ebp - 0x14]
mov edx, 4
call fcn.00405068
ret