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

Disassembly:
mov rax, rsp
push rbp
lea rbp, [rax - 0x5f]
sub rsp, 0xc0
mov qword [rbp + 0x47], 0xfffffffffffffffe
mov qword [rax + 8], rbx
mov qword [rax + 0x18], rdi
mov ebx, 1
mov byte [0x1402cccc4], bl
mov dword [0x1402ccf1c], edx
lea rax, [rbp + 0x6f]
mov qword [rsp + 0x28], rax
xor edi, edi
mov dword [rsp + 0x20], edi
xor r9d, r9d
lea r8, [0x140169d44]
xor edx, edx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_CreateThread]
test rax, rax
jne 0x14016a423
lea ecx, [rbx + 5]
mov dword [rbp - 0x39], ecx
mov eax, dword [rbp - 0x39]
xor ax, 0x5b
mov word [rbp - 0x35], ax
mov eax, dword [rbp - 0x39]
add ax, bx
xor ax, 0x21
mov word [rbp - 0x33], ax
mov eax, dword [rbp - 0x39]
add ax, 2
xor ax, 0x5d
mov word [rbp - 0x31], ax
mov eax, dword [rbp - 0x39]
add ax, 3
mov r11w, 0x20
xor ax, r11w
mov word [rbp - 0x2f], ax
mov eax, dword [rbp - 0x39]
add ax, 4
xor ax, 0x66
mov word [rbp - 0x2d], ax
mov eax, dword [rbp - 0x39]
add ax, 5
mov dx, 0x6c
xor ax, dx
mov word [rbp - 0x2b], ax
mov eax, dword [rbp - 0x39]
add ax, cx
xor ax, 0x75
mov word [rbp - 0x29], ax
mov eax, dword [rbp - 0x39]
add ax, 7
mov r10w, 0x63
xor ax, r10w
mov word [rbp - 0x27], ax
mov eax, dword [rbp - 0x39]
add ax, 8
mov r9w, 0x74
xor ax, r9w
mov word [rbp - 0x25], ax
mov eax, dword [rbp - 0x39]
add ax, 9
xor ax, 0x75
mov word [rbp - 0x23], ax
mov eax, dword [rbp - 0x39]
add ax, 0xa
xor ax, 0x61
mov word [rbp - 0x21], ax
mov eax, dword [rbp - 0x39]
add ax, 0xb
xor ax, r9w
mov word [rbp - 0x1f], ax
mov eax, dword [rbp - 0x39]
add ax, 0xc
mov cx, 0x65
xor ax, cx
mov word [rbp - 0x1d], ax
mov eax, dword [rbp - 0x39]
add ax, 0xd
xor ax, 0x53
mov word [rbp - 0x1b], ax
mov eax, dword [rbp - 0x39]
add ax, 0xe
xor ax, 0x68
mov word [rbp - 0x19], ax
mov eax, dword [rbp - 0x39]
add ax, 0xf
xor ax, cx
mov word [rbp - 0x17], ax
mov eax, dword [rbp - 0x39]
add ax, 0x10
xor ax, dx
mov word [rbp - 0x15], ax
mov eax, dword [rbp - 0x39]
add ax, 0x11
xor ax, dx
mov word [rbp - 0x13], ax
mov eax, dword [rbp - 0x39]
add ax, 0x12
xor ax, r10w
mov word [rbp - 0x11], ax
mov eax, dword [rbp - 0x39]
add ax, 0x13
mov r8w, 0x6f
xor ax, r8w
mov word [rbp - 0xf], ax
mov eax, dword [rbp - 0x39]
add ax, 0x14
xor ax, 0x64
mov word [rbp - 0xd], ax
mov eax, dword [rbp - 0x39]
add ax, 0x15
xor ax, cx
mov word [rbp - 0xb], ax
mov eax, dword [rbp - 0x39]
add ax, 0x16
xor ax, 0x3a
mov word [rbp - 9], ax
mov eax, dword [rbp - 0x39]
add ax, 0x17
xor ax, r11w
mov word [rbp - 7], ax
mov eax, dword [rbp - 0x39]
add ax, 0x18
xor ax, r10w
mov word [rbp - 5], ax
mov eax, dword [rbp - 0x39]
add ax, 0x19
xor ax, r8w
mov word [rbp - 3], ax
mov eax, dword [rbp - 0x39]
add ax, 0x1a
xor ax, 0x75
mov word [rbp - 1], ax
mov eax, dword [rbp - 0x39]
add ax, 0x1b
xor ax, dx
mov word [rbp + 1], ax
mov eax, dword [rbp - 0x39]
add ax, 0x1c
xor ax, 0x64
mov word [rbp + 3], ax
mov eax, dword [rbp - 0x39]
add ax, 0x1d
xor ax, r11w
mov word [rbp + 5], ax
mov eax, dword [rbp - 0x39]
add ax, 0x1e
xor ax, 0x6e
mov word [rbp + 7], ax
mov eax, dword [rbp - 0x39]
add ax, 0x1f
xor ax, r8w
mov word [rbp + 9], ax
mov eax, dword [rbp - 0x39]
add ax, r11w
xor ax, r9w
mov word [rbp + 0xb], ax
mov eax, dword [rbp - 0x39]
add ax, 0x21
xor ax, r11w
mov word [rbp + 0xd], ax
mov eax, dword [rbp - 0x39]
add ax, 0x22
xor ax, r10w
mov word [rbp + 0xf], ax
mov eax, dword [rbp - 0x39]
add ax, 0x23
xor ax, 0x72
mov word [rbp + 0x11], ax
mov eax, dword [rbp - 0x39]
add ax, 0x24
xor ax, cx
mov word [rbp + 0x13], ax
mov eax, dword [rbp - 0x39]
add ax, 0x25
xor ax, 0x61
mov word [rbp + 0x15], ax
mov eax, dword [rbp - 0x39]
add ax, 0x26
xor ax, r9w
mov word [rbp + 0x17], ax
mov eax, dword [rbp - 0x39]
add ax, 0x27
xor ax, cx
mov word [rbp + 0x19], ax
mov eax, dword [rbp - 0x39]
add ax, 0x28
xor ax, r11w
mov word [rbp + 0x1b], ax
mov eax, dword [rbp - 0x39]
add ax, 0x29
xor ax, 0x53
mov word [rbp + 0x1d], ax
mov eax, dword [rbp - 0x39]
add ax, 0x2a
xor ax, dx
mov word [rbp + 0x1f], ax
mov eax, dword [rbp - 0x39]
add ax, 0x2b
xor ax, cx
mov word [rbp + 0x21], ax
mov eax, dword [rbp - 0x39]
add ax, 0x2c
xor ax, cx
mov word [rbp + 0x23], ax
mov eax, dword [rbp - 0x39]
add ax, 0x2d
xor ax, 0x70
mov word [rbp + 0x25], ax
mov eax, dword [rbp - 0x39]
add ax, 0x2e
xor ax, r11w
mov word [rbp + 0x27], ax
mov eax, dword [rbp - 0x39]
add ax, 0x2f
xor ax, 0x68
mov word [rbp + 0x29], ax
mov eax, dword [rbp - 0x39]
add ax, 0x30
xor ax, r8w
mov word [rbp + 0x2b], ax
mov eax, dword [rbp - 0x39]
add ax, 0x31
xor ax, r8w
mov word [rbp + 0x2d], ax
mov eax, dword [rbp - 0x39]
add ax, 0x32
xor ax, 0x6b
mov word [rbp + 0x2f], ax
mov eax, dword [rbp - 0x39]
add ax, 0x33
xor ax, r11w
mov word [rbp + 0x31], ax
mov eax, dword [rbp - 0x39]
add ax, 0x34
xor ax, 0x77
mov word [rbp + 0x33], ax
mov eax, dword [rbp - 0x39]
add ax, 0x35
xor ax, 0x61
mov word [rbp + 0x35], ax
mov eax, dword [rbp - 0x39]
add ax, 0x36
xor ax, r9w
mov word [rbp + 0x37], ax
mov eax, dword [rbp - 0x39]
add ax, 0x37
xor ax, r10w
mov word [rbp + 0x39], ax
mov eax, dword [rbp - 0x39]
add ax, 0x38
xor ax, 0x68
mov word [rbp + 0x3b], ax
mov eax, dword [rbp - 0x39]
add ax, 0x39
xor ax, 0x64
mov word [rbp + 0x3d], ax
mov eax, dword [rbp - 0x39]
add ax, 0x3a
xor ax, r8w
mov word [rbp + 0x3f], ax
mov eax, dword [rbp - 0x39]
add ax, 0x3b
xor ax, 0x67
mov word [rbp + 0x41], ax
mov eax, dword [rbp - 0x39]
add ax, 0x3c
xor ax, 0x21
mov word [rbp + 0x43], ax
xor eax, eax
mov word [rbp + 0x45], ax
movzx eax, word [rbp - 0x35]
mov edx, edi
movzx eax, word [rbp + rdx*2 - 0x35]
mov ecx, dword [rbp - 0x39]
add cx, dx
xor cx, ax
mov word [rbp + rdx*2 - 0x35], cx
add rdx, rbx
cmp rdx, 0x3d
jb 0x14016a3e7
mov word [rbp + 0x45], di
lea rcx, [rbp - 0x35]
call fcn.1400c49c8
nop
xor edx, edx
lea r8d, [rdx + 0x7c]
lea rcx, [rbp - 0x35]
call qword [sym.imp.VCRUNTIME140.dll_memset]
jmp 0x14016a42c
call fcn.14016a7e4
test al, al
jne 0x14016a42f
mov bl, dil
mov al, bl
lea r11, [rsp + 0xc0]
mov rbx, qword [r11 + 0x10]
mov rdi, qword [r11 + 0x20]
mov rsp, r11
pop rbp
ret