Function at 0x14001c0d0
Capabilities:
Delete registry key
Encode data using xor

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x20], rsi
push rdi
sub rsp, 0x80
movaps xmmword [rsp + 0x70], xmm6
movaps xmmword [rsp + 0x60], xmm7
mov rbx, rcx
mov ecx, dword [0x14057eca0]
mov rax, qword gs:[0x58]
mov edx, 4
mov rax, qword [rax + rcx*8]
xor esi, esi
lea rdi, [0x14057eba0]
mov eax, dword [rdx + rax]
cmp dword [0x14057ebc0], eax
jg 0x14001c381
cmp qword [0x14057ebb8], 0xf
cmova rdi, qword [0x14057eba0]
lea r8, [rsp + 0xa0]
mov rdx, rdi
mov rcx, 0xffffffff80000002
call qword [sym.imp.ADVAPI32.dll_RegOpenKeyA]
call fcn.14001bdf0
movsx r9d, al
call fcn.14001bde0
movsx ecx, al
imul r9d, ecx
call fcn.14001be20
movsx r10d, al
lea ecx, [r9 + r10]
movsx eax, byte [0x14057e016]
lea ecx, [rcx + r9*8]
add eax, ecx
movsx ecx, byte [0x14057e015]
xor edx, edx
div ecx
movsx ecx, byte [0x14057e012]
sub eax, ecx
xorps xmm2, xmm2
cvtsi2sd xmm2, rax
movsx eax, byte [0x14057e014]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsx eax, byte [0x14057e013]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, xmm0
subsd xmm1, xmm0
mulsd xmm1, xmm2
movsd qword [rsp + 0x98], xmm1
movsx eax, byte [0x14057e016]
add eax, r10d
lea eax, [rax + r9*8]
movsx ecx, byte [0x14057e015]
xor edx, edx
div ecx
movsx ecx, byte [0x14057e012]
cmp eax, ecx
je 0x14001c225
call fcn.14001be00
movsx edx, al
movsx eax, byte [0x14057eb98]
imul edx, eax
lea r8d, [rdx + rdx*2]
call fcn.14001be30
movsx ecx, al
sub r8d, ecx
call fcn.14001be10
movsx ecx, al
add r8d, ecx
movsx ecx, byte [0x14057e013]
add ecx, r8d
jne 0x14001c2bc
lea edx, [r9 + r9*4]
movsx eax, byte [0x14057e016]
add eax, r10d
lea eax, [rax + rdx*2]
movsx ecx, byte [0x14057e015]
xor edx, edx
div ecx
movsx ecx, byte [0x14057e012]
cmp eax, ecx
je 0x14001c2b1
movsx eax, byte [0x14057e016]
add eax, r10d
lea eax, [rax + r9*4]
movsx ecx, byte [0x14057e015]
xor edx, edx
div ecx
movsx ecx, byte [0x14057e012]
sub eax, ecx
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
mulsd xmm0, qword [rsp + 0x98]
cvttsd2si eax, xmm0
jmp 0x14001c2b8
xorps xmm0, xmm0
movups xmmword [0x14057eba0], xmm0
xorps xmm1, xmm1
movdqu xmmword [0x14057ebb0], xmm1
mov r8, 0xffffffffffffffff
inc r8
cmp byte [r10 + r8], 0
je 0x14001c358
jmp 0x14001c2a1
mov eax, dword [rsp + 0x98]
cmp esi, eax
jge 0x14001c2f3
cmp qword [rbx + 0x18], 0xf
jbe 0x14001c2c6
mov rbx, qword [rbx]
mov rdx, rbx
mov rcx, qword [rsp + 0xa0]
call qword [sym.imp.ADVAPI32.dll_RegDeleteKeyA]
test eax, eax
jne 0x14001c2f1
mov rcx, qword [rsp + 0xa0]
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
test eax, eax
jne 0x14001c2f1
mov al, 1
jmp 0x14001c2f3
xor al, al
lea r11, [rsp + 0x80]
mov rbx, qword [r11 + 0x10]
mov rsi, qword [r11 + 0x28]
movaps xmm6, xmmword [rsp + 0x70]
movaps xmm7, xmmword [rsp + 0x60]
mov rsp, r11
pop rdi
ret
mov eax, 0x92492493
imul r8d
add edx, r8d
sar edx, 2
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 7
movzx eax, r8b
sub al, cl
add al, 0x6f
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x23
jl 0x14001c320
jmp 0x14001c285
mov rdx, r10
mov rcx, rdi
call fcn.1400014c0
lea rcx, [0x1400216a0]
call fcn.14001fb88
nop
lea rcx, [0x14057ebc0]
call fcn.14001fbdc
jmp 0x14001c11f
lea rcx, [0x14057ebc0]
call fcn.14001fc48
cmp dword [0x14057ebc0], 0xffffffff
jne 0x14001c11f
lea rdx, [rsp + 0x30]
lea rcx, [rsp + 0x98]
call fcn.1400059f0
mov r10, rax
cmp byte [rax + 0x22], 0
je 0x14001c285
mov r8d, esi
cmp dword [0x14057e910], 2
jl 0x14001c4f3
movdqa xmm5, xmmword [0x140023740]
movdqa xmm4, xmmword [0x1400237d0]
movdqa xmm6, xmmword [0x140023760]
movdqa xmm0, xmmword [str.oooooooooooooooo]
movdqa xmmword [rsp + 0x20], xmm0
mov rcx, rax
movdqa xmm7, xmmword [0x1400237b0]
mov edx, dword [rsp + 0x20]
nop
movd xmm2, r8d
pshufd xmm2, xmm2, 0
paddd xmm2, xmm5
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm2
psrad xmm1, 2
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
andps xmm2, xmm7
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx]
xorps xmm2, xmm0
movd dword [rcx], xmm2
lea eax, [r8 + 4]
movd xmm3, eax
pshufd xmm3, xmm3, 0
paddd xmm3, xmm5
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm3
psrad xmm1, 2
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm3, xmm0
andps xmm3, xmm7
packuswb xmm3, xmm3
packuswb xmm3, xmm3
movd xmm0, edx
paddb xmm3, xmm0
movd xmm0, dword [rcx + 4]
xorps xmm3, xmm0
movd dword [rcx + 4], xmm3
add r8d, 8
lea rcx, [rcx + 8]
cmp r8d, 0x20
jl 0x14001c400
cmp r8d, 0x23
jge 0x14001c285
movsxd r9, r8d
add r9, r10
jmp 0x14001c320