Function at 0x14008d770
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rbp
mov qword [rsp + 0x18], rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x110
lea rax, [rsp + 0x78]
mov r15d, r8d
mov r14, r9
mov qword [rsp + 0x28], rax
lea r8, str.SafenetSafeNetKSPSlots
xor r9d, r9d
mov dword [rsp + 0x20], 0x20119
mov rsi, rcx
call fcn.14000cf64
xor r12d, r12d
cmp eax, r12d
je 0x14008da08
mov rdx, qword [rsp + 0x78]
mov qword [rsp + 0x60], r12
mov qword [rsp + 0x58], r12
mov qword [rsp + 0x50], r12
mov qword [rsp + 0x48], r12
mov qword [rsp + 0x40], r12
mov qword [rsp + 0x38], r12
lea rax, [rsp + 0x70]
xor r9d, r9d
mov qword [rsp + 0x30], rax
lea rax, [rsp + 0x74]
xor r8d, r8d
mov qword [rsp + 0x28], rax
mov rcx, rsi
mov qword [rsp + 0x20], r12
call fcn.14000d1f8
cmp eax, r12d
je 0x14008d9e7
mov eax, dword [rsp + 0x70]
lea ecx, [r12 + 0x40]
inc eax
mov dword [rsp + 0x70], eax
lea edx, [rax + 1]
add rdx, rdx
call qword [sym.imp.KERNEL32.dll_LocalAlloc]
mov rbx, rax
cmp rax, r12
je 0x14008d9fb
mov edi, r12d
cmp dword [rsp + 0x74], r12d
jbe 0x14008d9dc
mov ecx, dword [rsp + 0x70]
mov rdx, qword [rsp + 0x78]
mov qword [rsp + 0x40], r12
mov qword [rsp + 0x38], r12
lea rax, [rsp + 0x80]
mov dword [rsp + 0x80], ecx
mov qword [rsp + 0x30], r12
mov rcx, rsi
mov r9, rbx
mov r8d, edi
mov qword [rsp + 0x28], r12
mov qword [rsp + 0x20], rax
call fcn.14000d6c4
cmp eax, r12d
je 0x14008d9d0
lea rcx, str._n_____s_
mov rdx, rbx
call fcn.14000a838
mov rcx, rbx
call fcn.14001110c
mov rbp, rax
cmp rax, r12
je 0x14008d9d0
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_lstrlenA]
lea rcx, [rsp + 0xa0]
mov r13d, eax
call sub.cryptdll.dll_MD5Init
mov r12d, 0x5b6
lea rcx, [rsp + 0xa0]
mov r8d, r13d
mov rdx, rbp
call sub.cryptdll.dll_MD5Update
sub r12, 1
jne 0x14008d8d7
lea rcx, [rsp + 0xa0]
call sub.cryptdll.dll_MD5Final
mov r11, r12
lea ecx, [r12 + 0x10]
lea rax, [0x1400c8818]
mov al, byte [r11 + rax]
inc r11
xor al, byte [rsp + r11 + 0xf7]
sub rcx, 1
mov byte [rsp + r11 + 0x8f], al
jne 0x14008d905
lea edx, [rcx + 0x10]
lea rcx, [rsp + 0x90]
xor r8d, r8d
call fcn.1400112ac
lea rcx, [0x1400ee50c]
call fcn.14000a838
mov rdx, qword [rsp + 0x78]
lea r11, [rsp + 0x88]
mov qword [rsp + 0x28], r11
xor r9d, r9d
mov r8, rbx
mov rcx, rsi
mov dword [rsp + 0x20], 0x20019
call fcn.14000cf64
cmp eax, r12d
je 0x14008d9b3
lea rcx, reloc.Cabinet.dll_FCICreate
call fcn.14000a838
mov rdx, qword [rsp + 0x88]
lea r8, [rsp + 0x90]
mov r9d, r15d
mov rcx, rsi
mov qword [rsp + 0x20], r14
call fcn.14008da2c
mov rdx, qword [rsp + 0x88]
mov rcx, rsi
call fcn.14000daa8
jmp 0x14008d9c7
call qword [sym.imp.KERNEL32.dll_GetLastError]
lea rcx, [0x1400ee510]
mov edx, eax
call fcn.14000a838
mov rcx, rbp
call qword [sym.imp.KERNEL32.dll_LocalFree]
inc edi
cmp edi, dword [rsp + 0x74]
jb 0x14008d84d
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_LocalFree]
jmp 0x14008d9fb
call qword [sym.imp.KERNEL32.dll_GetLastError]
lea rcx, str.ERROR_kuhl_m_dpapi_safenet_ksp_registryparser___kull_m_registry_RegQueryInfoKey__0x_08x__n
mov edx, eax
call fcn.14000a838
mov rdx, qword [rsp + 0x78]
mov rcx, rsi
call fcn.14000daa8
lea r11, [rsp + 0x110]
mov rbx, qword [r11 + 0x30]
mov rbp, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x40]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
ret