Function at 0x14001caf4
Capabilities:
Change the wallpaper

Disassembly:
mov rax, rsp
push rsi
push rdi
push r13
push r14
push r15
sub rsp, 0x70
mov qword [rsp + 0x40], 0xfffffffffffffffe
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rbp
mov r13, rcx
lea r14, [0x14019cf50]
mov qword [rax - 0x50], r14
mov rcx, r14
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
nop
call fcn.140060590
mov ebx, 0xfffffffd
mov edi, ebx
mov dword [rsp + 0xb0], ebx
lea r15d, [rbx + 4]
mov rax, qword [0x14019c680]
xor esi, esi
cmp rax, rsi
je 0x14001cb6e
xor ecx, ecx
call rax
mov edi, eax
mov dword [rsp + 0xb0], eax
cmp eax, esi
je 0x14001cb6e
cmp eax, r15d
jne 0x14001cb6e
call qword [0x14019c688]
nop
or ebp, 0xffffffff
cmp byte [0x14019bd88], sil
je 0x14001cbb0
lea r9d, [rbp + 4]
mov r8, r13
xor edx, edx
lea ecx, [rbp + 0x15]
call qword [sym.imp.USER32.dll_SystemParametersInfoW]
mov ebp, esi
cmp eax, esi
sete bpl
cmp ebp, esi
jne 0x14001cbb0
mov rax, qword [0x14019c688]
cmp rax, rsi
je 0x14001cbab
cmp edi, esi
jne 0x14001cbab
call rax
nop
jmp 0x14001ce2b
mov qword [rsp + 0x30], rsi
mov qword [rsp + 0x50], r14
mov rcx, r14
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
nop
call fcn.140060590
mov dword [rsp + 0xb8], ebx
mov rax, qword [0x14019c680]
cmp rax, rsi
je 0x14001cbf9
xor ecx, ecx
call rax
mov ebx, eax
mov dword [rsp + 0xb8], eax
cmp eax, esi
je 0x14001cbf9
cmp eax, r15d
jne 0x14001cbf9
call qword [0x14019c688]
nop
mov byte [0x14019bd88], 0xff
lea rax, [rsp + 0x30]
mov qword [rsp + 0x20], rax
lea r9, [0x140165dc0]
mov r8d, r15d
xor edx, edx
lea rcx, [0x140165db0]
call qword [0x14019c690]
cmp eax, esi
jge 0x14001cc67
mov qword [rsp + 0x20], rsi
xor r9d, r9d
mov r8d, eax
lea rdx, str._DEBUG_WALL_CoCreateInstance__
lea rcx, [0x14019c170]
call fcn.140039c90
nop
mov rax, qword [0x14019c688]
cmp rax, rsi
je 0x14001cc59
cmp ebx, esi
jne 0x14001cc59
call rax
nop
mov rcx, r14
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
jmp 0x14001cdac
mov dword [rsp + 0x58], reloc.OLEAUT32.dll_VariantTimeToDosDateTime
xor eax, eax
mov dword [rsp + 0x60], eax
mov dword [rsp + 0x5c], r15d
mov dword [rsp + 0x60], r15d
mov rcx, qword [rsp + 0x30]
mov rax, qword [rcx]
xor r8d, r8d
lea rdx, [rsp + 0x58]
call qword [rax + 0x58]
cmp eax, esi
jge 0x14001ccb4
mov qword [rsp + 0x20], rsi
xor r9d, r9d
mov r8d, eax
lea rdx, str._DEBUG_WALL_SetDesktopItemOptions__
lea rcx, [0x14019c170]
call fcn.140039c90
mov rcx, qword [rsp + 0x30]
mov rax, qword [rcx]
xor r8d, r8d
mov rdx, r13
call qword [rax + 0x28]
cmp eax, esi
jge 0x14001cce7
mov qword [rsp + 0x20], rsi
xor r9d, r9d
mov r8d, eax
lea rdx, str._DEBUG_WALL_SetWallpaper__
lea rcx, [0x14019c170]
call fcn.140039c90
xor eax, eax
mov dword [rsp + 0x38], 8
or eax, 2
mov dword [rsp + 0x3c], eax
mov rcx, qword [rsp + 0x30]
mov rax, qword [rcx]
xor r8d, r8d
lea rdx, [rsp + 0x38]
call qword [rax + 0x38]
cmp eax, esi
jge 0x14001cd2d
mov qword [rsp + 0x20], rsi
xor r9d, r9d
mov r8d, eax
lea rdx, str._DEBUG_WALL_SetWallpaperOptions__
lea rcx, [0x14019c170]
call fcn.140039c90
mov byte [0x14019bd88], r15b
mov rcx, qword [rsp + 0x30]
mov rax, qword [rcx]
mov edx, 7
call qword [rax + 0x18]
mov ebp, eax
cmp eax, esi
jge 0x14001cd87
mov qword [rsp + 0x20], rsi
xor r9d, r9d
mov r8d, eax
lea rdx, str._DEBUG_WALL_ApplyChanges__
lea rcx, [0x14019c170]
call fcn.140039c90
nop
mov rax, qword [0x14019c688]
cmp rax, rsi
je 0x14001cd7c
cmp ebx, esi
jne 0x14001cd7c
call rax
nop
mov rcx, r14
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
jmp 0x14001cdac
mov ebp, esi
mov byte [0x14019bd88], 2
mov rax, qword [0x14019c688]
cmp rax, rsi
je 0x14001cda3
cmp ebx, esi
jne 0x14001cda3
call rax
nop
mov rcx, r14
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov rcx, qword [rsp + 0x30]
cmp rcx, rsi
je 0x14001cdbc
mov rax, qword [rcx]
call qword [rax + 0x10]
cmp ebp, esi
je 0x14001ce16
mov r9d, 3
mov r8, r13
xor edx, edx
lea ecx, [rdx + 0x14]
call qword [sym.imp.USER32.dll_SystemParametersInfoW]
mov ebx, eax
call qword [sym.imp.KERNEL32.dll_GetLastError]
cmp ebx, esi
je 0x14001cde4
mov ebp, esi
jmp 0x14001cdf3
cmp qword [rsp + 0x30], rsi
jne 0x14001cdf7
mov ebp, eax
cmp eax, esi
cmove ebp, r15d
cmp ebx, esi
jne 0x14001ce16
mov qword [rsp + 0x20], rsi
xor r9d, r9d
mov r8d, eax
lea rdx, str._DEBUG_WALL_SystemParametersInfo__
lea rcx, [0x14019c170]
call fcn.140039c90
nop
mov rax, qword [0x14019c688]
cmp rax, rsi
je 0x14001ce29
cmp edi, esi
jne 0x14001ce29
call rax
nop
mov esi, ebp
mov rcx, r14
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov eax, esi
lea r11, [rsp + 0x70]
mov rbx, qword [r11 + 0x30]
mov rbp, qword [r11 + 0x38]
mov rsp, r11
pop r15
pop r14
pop r13
pop rdi
pop rsi
ret