Function at 0x14000c9a0
Capabilities:
Contain obfuscated stackstrings
Set registry value

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
mov qword [rsp + 0x18], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x37]
sub rsp, 0xc0
xor r13d, r13d
mov r12, rcx
mov r15d, r13d
mov qword [rbp - 0x39], r13
mov qword [rbp - 0x31], r13
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r14d, 8
mov r8d, 0x208
mov rcx, rax
mov edx, r14d
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
mov rbx, qword [0x140025610]
lea rcx, [rbp - 0x59]
mov rsi, rax
mov dword [rbp - 0x59], 0x360003
mov eax, 0x43
mov dword [rbp - 0x55], 0x37
mov word [rbp - 0x41], ax
mov dword [rbp - 0x51], 0x220019
mov dword [rbp - 0x4d], 0x1e0032
mov dword [rbp - 0x49], 0x60025
mov dword [rbp - 0x45], 0x150018
call fcn.140002e40
mov rcx, rax
mov r8d, 0x104
mov rdx, rsi
call rbx
mov ebx, r13d
cmp word [rsi], r13w
je 0x14000ca5a
inc rbx
cmp word [rsi + rbx*2], r13w
jne 0x14000ca50
lea rdi, [rbx*2 + 2]
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, rdi
mov edx, r14d
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
mov rdi, rax
test rbx, rbx
je 0x14000caa1
mov rdx, rax
sub rsi, rax
mov r8, rbx
nop dword [rax + rax]
movzx ecx, word [rsi + rdx]
mov word [rdx], cx
lea rdx, [rdx + 2]
sub r8, 1
jne 0x14000ca90
mov r8, rbx
mov word [rax + rbx*2], r13w
mov rdx, rdi
lea rcx, [rbp + 0x27]
call fcn.140001940
lea r8, [rbp + 0x27]
lea rdx, [rbp - 0x59]
lea rcx, [rbp - 0x39]
call fcn.1400019d0
mov rbx, rax
lea rax, [rbp - 0x39]
cmp rax, rbx
je 0x14000cafa
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
xor r8d, r8d
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov r8, qword [rbx + 8]
lea rcx, [rbp - 0x39]
mov rdx, qword [rbx]
call fcn.140001940
mov r15, qword [rbp - 0x39]
mov rbx, qword [rbp - 0x59]
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, rbx
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, rdi
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov eax, 0x79
mov dword [rbp - 0x29], 0x340013
lea rcx, [rbp - 0x29]
mov word [rbp + 0x23], ax
mov dword [rbp - 0x25], 0x22001d
mov dword [rbp - 0x21], 0xc0027
mov dword [rbp - 0x1d], 0x210011
mov dword [rbp - 0x19], 0x330007
mov dword [rbp - 0x15], 0x30010
mov dword [rbp - 0x11], 0x1d002a
mov dword [rbp - 0xd], 0x10032
mov dword [rbp - 9], 0x380035
mov dword [rbp - 5], 0x34002f
mov dword [rbp - 1], 0x240008
mov dword [rbp + 3], 0x70001
mov dword [rbp + 7], 0x370039
mov dword [rbp + 0xb], 5
mov dword [rbp + 0xf], 0x2d003c
mov dword [rbp + 0x13], 0x1c0015
mov dword [rbp + 0x17], 0x90007
mov dword [rbp + 0x1b], 0x3b006a
mov dword [rbp + 0x1f], 0x1f0006
call fcn.140002bb0
mov rsi, rax
mov rdi, r13
cmp word [rax], r13w
je 0x14000cbda
nop dword [rax]
inc rdi
cmp word [rax + rdi*2], r13w
jne 0x14000cbd0
lea rbx, [rdi*2 + 2]
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, rbx
mov edx, r14d
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
mov r14, rax
test rdi, rdi
je 0x14000cc21
mov rdx, rax
sub rsi, rax
mov r8, rdi
nop dword [rax + rax]
movzx ecx, word [rsi + rdx]
mov word [rdx], cx
lea rdx, [rdx + 2]
sub r8, 1
jne 0x14000cc10
mov r8, rdi
mov word [rax + rdi*2], r13w
mov rdx, r14
lea rcx, [rbp - 0x59]
call fcn.140001940
lea r8, [rbp - 0x59]
lea rdx, [rbp + 0x27]
lea rcx, [rbp - 0x39]
call fcn.1400019d0
mov rbx, rax
lea rax, [rbp - 0x39]
cmp rax, rbx
je case.default.0x14000cd2b
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, r15
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
mov r8, qword [rbx + 8]
lea rcx, [rbp - 0x39]
mov rdx, qword [rbx]
call fcn.140001940
mov r15, qword [rbp - 0x39]
mov rbx, qword [rbp + 0x27]
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, rbx
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, r14
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
lea rcx, [rbp - 0x59]
mov dword [rbp - 0x59], 0x1d000e
mov dword [rbp - 0x55], 0x2d0027
mov dword [rbp - 0x51], 0x150034
mov dword [rbp - 0x4d], 0x2d000b
mov dword [rbp - 0x49], 0x470027
call fcn.1400029a0
mov r9d, 1
mov dword [rsp + 0x28], 0x10
xor r8d, r8d
mov qword [rsp + 0x20], r15
mov rdx, rax
mov rcx, r12
call qword [sym.imp.ADVAPI32.dll_RegSetValueExW]
mov rcx, r12
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, r15
xor edx, edx
mov rcx, rax
lea r11, [rsp + 0xc0]
mov rbx, qword [r11 + 0x30]
mov rsi, qword [r11 + 0x38]
mov rdi, qword [r11 + 0x40]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
jmp qword [sym.imp.KERNEL32.dll_HeapFree]
add byte [rcx], al
add byte [rdi - 0x2ffc0000], dl
add eax, 0xb00d1
add byte [rcx], ah
and edx, dword [rcx]
and dword [rcx], edx
and edx, dword [rcx]
xor edx, dword [rcx]
and dword [rcx], edx
xor eax, dword [rax + rdx*8]
invalid