Function at 0x14005da60
Capabilities:
Encode data using xor
Get session user name

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rsi
mov qword [rsp + 0x20], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x110]
sub rsp, 0x210
mov rax, qword [0x14016d4c0]
xor rax, rsp
mov qword [rbp + 0x100], rax
mov rsi, rcx
xor ebx, ebx
mov r8, qword [0x14017a328]
lea rcx, [r8 + 0x20]
mov rdx, qword [r8 + 0x10]
mov r10, qword [rcx + 0x10]
movabs rax, 0x7fffffffffffffff
sub rax, rdx
cmp rax, r10
jb 0x14005de40
mov r9, r8
cmp qword [r8 + 0x18], 0xf
jbe 0x14005dad3
mov r9, qword [r8]
cmp qword [rcx + 0x18], 0xf
jbe 0x14005dadd
mov rcx, qword [rcx]
mov qword [rsp + 0x30], r10
mov qword [rsp + 0x28], rcx
mov qword [rsp + 0x20], rdx
movzx edx, byte [rsp + 0x40]
lea rcx, [rbp - 0x60]
call fcn.140009380
nop
lea r9, [rbp - 0x60]
mov r14, qword [rbp - 0x60]
mov r15, qword [rbp - 0x48]
cmp r15, 0xf
cmova r9, r14
mov rcx, rbx
mov rdx, rbx
mov r8, qword [rbp - 0x50]
test r8, r8
je 0x14005db41
nop
movsx rax, byte [r9 + rdx]
add rax, rcx
imul rcx, rax, 0x401
mov rax, rcx
shr rax, 6
xor rcx, rax
inc rdx
cmp rdx, r8
jb 0x14005db20
lea rax, [rcx + rcx*8]
mov rcx, rax
shr rcx, 0xb
xor rcx, rax
imul rax, rcx, 0x8001
movabs r13, 0x5851f42d4c957f2d
test rax, rax
jne 0x14005db6e
imul r8, r13
inc r8
jmp 0x14005db71
mov r8, rax
mov rax, qword [0x14017a328]
sub r8, qword [rax + 0x40]
cmp byte [rax + 0x48], 0
sete al
lea rcx, [0x14014f28c]
mov qword [rsp + 0x50], rcx
mov qword [rsp + 0x58], 5
mov byte [rbp - 0x30], al
movabs rax, 0x5000000000000000
mov qword [rbp - 0x40], rax
mov qword [rbp - 0x2f], r8
movabs rax, 0x4000000000000001
mov qword [rbp - 0x38], rax
mov qword [rsp + 0x70], 2
lea rax, [rbp - 0x40]
mov qword [rsp + 0x78], rax
movaps xmm0, xmmword [rsp + 0x70]
movdqa xmmword [rsp + 0x70], xmm0
movaps xmm1, xmmword [rsp + 0x50]
movdqa xmmword [rsp + 0x50], xmm1
lea r8, [rsp + 0x70]
lea rdx, [rsp + 0x50]
lea rcx, [rbp - 0x80]
call fcn.140008620
lea r8, [rbp - 0x80]
mov r9, qword [rbp - 0x80]
mov r10, qword [rbp - 0x68]
cmp r10, 0xf
cmova r8, r9
mov rcx, rbx
mov rdx, rbx
mov rdi, qword [rbp - 0x70]
test rdi, rdi
je 0x14005dc41
nop dword [rax]
movsx rax, byte [r8 + rdx]
add rax, rcx
imul rcx, rax, 0x401
mov rax, rcx
shr rax, 6
xor rcx, rax
inc rdx
cmp rdx, rdi
jb 0x14005dc20
lea rax, [rcx + rcx*8]
mov rcx, rax
shr rcx, 0xb
xor rcx, rax
imul rax, rcx, 0x8001
test rax, rax
jne 0x14005dc64
imul rdi, r13
inc rdi
jmp 0x14005dc67
mov rdi, rax
mov rax, qword [0x14017a248]
mov r12, qword [rax + 8]
cmp r10, 0xf
jbe 0x14005dca9
lea rdx, [r10 + 1]
mov rax, r9
cmp rdx, 0x1000
jb 0x14005dca1
add rdx, 0x27
mov r9, qword [r9 - 8]
sub rax, r9
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14005de46
mov rcx, r9
call fcn.1400c4e5c
movdqa xmm0, xmmword [0x140150640]
movdqu xmmword [rbp - 0x70], xmm0
mov byte [rbp - 0x80], 0
cmp r15, 0xf
jbe 0x14005dcf1
lea rdx, [r15 + 1]
mov rax, r14
cmp rdx, 0x1000
jb 0x14005dce9
add rdx, 0x27
mov r14, qword [r14 - 8]
sub rax, r14
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14005de4c
mov rcx, r14
call fcn.1400c4e5c
mov dword [rbp - 0x20], 0x101
lea rdx, [rbp - 0x20]
lea rcx, [rbp - 0x10]
call qword [sym.imp.ADVAPI32.dll_GetUserNameA]
test eax, eax
je 0x14005de03
mov ecx, dword [rbp - 0x20]
add ecx, 0xfffffffe
mov eax, 7
cmp r12, rdi
cmove eax, ebx
sub byte [rbp + rcx - 0x10], al
xorps xmm0, xmm0
movups xmmword [rsp + 0x50], xmm0
mov qword [rsp + 0x60], rbx
mov qword [rsp + 0x68], rbx
lea rax, [rbp - 0x10]
mov r8, 0xffffffffffffffff
inc r8
cmp byte [rax + r8], 0
jne 0x14005dd40
lea rdx, [rbp - 0x10]
lea rcx, [rsp + 0x50]
call fcn.140008c70
lea r8, [rsp + 0x50]
mov r9, qword [rsp + 0x50]
mov r10, qword [rsp + 0x68]
cmp r10, 0xf
cmova r8, r9
mov rcx, rbx
mov rdx, qword [rsp + 0x60]
test rdx, rdx
je 0x14005dda1
nop dword [rax]
movsx rax, byte [r8 + rcx]
add rax, rbx
imul rbx, rax, 0x401
mov rax, rbx
shr rax, 6
xor rbx, rax
inc rcx
cmp rcx, rdx
jb 0x14005dd80
lea rax, [rbx + rbx*8]
mov rcx, rax
shr rcx, 0xb
xor rcx, rax
imul rax, rcx, 0x8001
test rax, rax
jne 0x14005ddc4
imul rdx, r13
inc rdx
jmp 0x14005ddc7
mov rdx, rax
mov qword [rsi], rdx
mov byte [rsi + 8], 1
cmp r10, 0xf
jbe 0x14005de07
lea rdx, [r10 + 1]
mov rax, r9
cmp rdx, 0x1000
jb 0x14005ddf9
add rdx, 0x27
mov r9, qword [r9 - 8]
sub rax, r9
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14005de3a
mov rcx, r9
call fcn.1400c4e5c
jmp 0x14005de07
mov byte [rsi + 8], 0
mov rax, rsi
mov rcx, qword [rbp + 0x100]
xor rcx, rsp
call fcn.1400c4df0
lea r11, [rsp + 0x210]
mov rbx, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x40]
mov rdi, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret
call fcn.1400d3b88
int3
call fcn.140001a20
nop
call fcn.1400d3b88
nop
call fcn.1400d3b88
int3