Function at 0x1400657f0
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 [0x14017b4c0]
xor rax, rsp
mov qword [rbp + 0x100], rax
mov rsi, rcx
xor ebx, ebx
mov r8, qword [0x140188988]
lea rcx, [r8 + 0x20]
mov rdx, qword [r8 + 0x10]
mov r10, qword [rcx + 0x10]
movabs rax, 0x7fffffffffffffff
sub rax, rdx
cmp rax, r10
jb 0x140065bd0
mov r9, r8
cmp qword [r8 + 0x18], 0xf
jbe 0x140065863
mov r9, qword [r8]
cmp qword [rcx + 0x18], 0xf
jbe 0x14006586d
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.140012da0
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 0x1400658d1
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 0x1400658b0
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 0x1400658fe
imul r8, r13
inc r8
jmp 0x140065901
mov r8, rax
mov rax, qword [0x140188988]
sub r8, qword [rax + 0x40]
cmp byte [rax + 0x48], 0
sete al
lea rcx, [0x14015bac4]
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.14000fd40
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 0x1400659d1
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 0x1400659b0
lea rax, [rcx + rcx*8]
mov rcx, rax
shr rcx, 0xb
xor rcx, rax
imul rax, rcx, 0x8001
test rax, rax
jne 0x1400659f4
imul rdi, r13
inc rdi
jmp 0x1400659f7
mov rdi, rax
mov rax, qword [0x1401888c8]
mov r12, qword [rax + 8]
cmp r10, 0xf
jbe 0x140065a39
lea rdx, [r10 + 1]
mov rax, r9
cmp rdx, 0x1000
jb 0x140065a31
add rdx, 0x27
mov r9, qword [r9 - 8]
sub rax, r9
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140065bd6
mov rcx, r9
call fcn.1400ce56c
movdqa xmm0, xmmword [0x14015cbe0]
movdqu xmmword [rbp - 0x70], xmm0
mov byte [rbp - 0x80], 0
cmp r15, 0xf
jbe 0x140065a81
lea rdx, [r15 + 1]
mov rax, r14
cmp rdx, 0x1000
jb 0x140065a79
add rdx, 0x27
mov r14, qword [r14 - 8]
sub rax, r14
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140065bdc
mov rcx, r14
call fcn.1400ce56c
mov dword [rbp - 0x20], 0x101
lea rdx, [rbp - 0x20]
lea rcx, [rbp - 0x10]
call qword [sym.imp.ADVAPI32.dll_GetUserNameA]
test eax, eax
je 0x140065b93
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 0x140065ad0
lea rdx, [rbp - 0x10]
lea rcx, [rsp + 0x50]
call fcn.140005120
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 0x140065b31
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 0x140065b10
lea rax, [rbx + rbx*8]
mov rcx, rax
shr rcx, 0xb
xor rcx, rax
imul rax, rcx, 0x8001
test rax, rax
jne 0x140065b54
imul rdx, r13
inc rdx
jmp 0x140065b57
mov rdx, rax
mov qword [rsi], rdx
mov byte [rsi + 8], 1
cmp r10, 0xf
jbe 0x140065b97
lea rdx, [r10 + 1]
mov rax, r9
cmp rdx, 0x1000
jb 0x140065b89
add rdx, 0x27
mov r9, qword [r9 - 8]
sub rax, r9
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140065bca
mov rcx, r9
call fcn.1400ce56c
jmp 0x140065b97
mov byte [rsi + 8], 0
mov rax, rsi
mov rcx, qword [rbp + 0x100]
xor rcx, rsp
call fcn.1400ce1f0
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.1400e1a34
int3
call fcn.140002530
nop
call fcn.1400e1a34
nop
call fcn.1400e1a34
int3