Function at 0x1400b30c0
Capabilities:
Encode data using xor
Get file attributes
Get session user name
Set file attributes

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rsi
push rbp
push rdi
push r14
lea rbp, [rsp - 0x1f0]
sub rsp, 0x2f0
mov rax, qword [0x1402dc040]
xor rax, rsp
mov qword [rbp + 0x1e0], rax
mov rdi, rcx
xor ebx, ebx
mov dword [rbp + 0x80], ebx
mov rdx, qword [rcx]
movzx edx, byte [rdx + 0x54]
lea rcx, [0x1402df0fc]
call fcn.1400a5aa0
mov dword [rsp + 0x38], 0xc3e647a2
mov dword [rsp + 0x3c], 0xf745e582
mov dword [rsp + 0x40], 0x2d0943e9
mov dword [rsp + 0x44], 0x5f94d198
mov dword [rsp + 0x48], 0x176081df
mov dword [rsp + 0x4c], 0xc990d77c
mov dword [rsp + 0x50], 0x33c1a0fd
mov word [rsp + 0x54], 0x945e
mov qword [rbp + 0x80], rbx
mov rax, qword [rbp + 0x80]
nop dword [rax]
mov rax, qword [rbp + 0x80]
mov rcx, qword [rbp + 0x80]
movzx edx, byte [rsp + rcx + 0x38]
sub dl, byte [rsp + rax + 0x47]
mov byte [rsp + 0x30], dl
movzx ecx, byte [rsp + 0x30]
mov rax, qword [rbp + 0x80]
mov byte [rbp + rax + 0xb0], cl
mov rax, qword [rbp + 0x80]
inc rax
mov qword [rbp + 0x80], rax
mov rax, qword [rbp + 0x80]
cmp rax, 0xf
jb 0x1400b3160
xorps xmm0, xmm0
movups xmmword [rbp - 0x70], xmm0
mov qword [rbp - 0x60], rbx
mov qword [rbp - 0x58], rbx
mov r8d, reloc.WLDAP32.dll_Ordinal_14
lea rdx, [rbp + 0xb0]
lea rcx, [rbp - 0x70]
call fcn.14004a000
lea rax, [rbp - 0x70]
mov qword [rbp + 0x80], rax
mov rcx, qword [0x1402dea80]
add rcx, 8
lea rax, [rbp - 0x70]
cmp rcx, rax
je 0x1400b3208
lea rdx, [rbp - 0x70]
cmp qword [rbp - 0x58], 0xf
cmova rdx, qword [rbp - 0x70]
mov r8, qword [rbp - 0x60]
call fcn.1400635d0
nop
lea rcx, [rbp - 0x70]
call fcn.1400633d0
mov rdx, qword [rdi + 0x10]
sub rdx, qword [rdi + 8]
sar rdx, 4
mov rax, qword [rdi]
movsxd rcx, dword [rax + 0x50]
cmp rcx, rdx
jae 0x1400b36d5
mov dword [rbp + 0x88], 0x104
lea rdx, [rbp + 0x88]
lea rcx, [rbp + 0xd0]
call qword [sym.imp.ADVAPI32.dll_GetUserNameA]
lea rdx, [rbp + 0x90]
call fcn.14008f660
nop
lea r10, [rbp + 0xd0]
mov r9d, ebx
movzx r8d, byte [rbp + 0xd0]
test r8b, r8b
je 0x1400b32a8
nop
movzx edx, r8b
lea r10, [r10 + 1]
sub r8b, 0x41
lea eax, [rdx + 0x20]
movzx ecx, al
cmp r8b, 0x19
cmova ecx, edx
movsx eax, cl
add eax, r9d
imul r9d, eax, 0x401
mov eax, r9d
shr eax, 6
xor r9d, eax
movzx r8d, byte [r10]
test r8b, r8b
jne 0x1400b3270
lea ecx, [r9 + r9*8]
mov eax, ecx
shr eax, 0xb
xor ecx, eax
imul eax, ecx, 0x8001
lea rcx, str..dat
mov qword [rsp + 0x60], rcx
mov qword [rsp + 0x68], 6
mov dword [rbp + 0xb8], eax
movabs rax, 0x2000000000000000
mov qword [rbp + 0xb0], rax
mov qword [rsp + 0x70], 1
lea rax, [rbp + 0xb0]
mov qword [rsp + 0x78], rax
movaps xmm0, xmmword [rsp + 0x70]
movdqa xmmword [rsp + 0x70], xmm0
movaps xmm1, xmmword [rsp + 0x60]
movdqa xmmword [rsp + 0x60], xmm1
lea r8, [rsp + 0x70]
lea rdx, [rsp + 0x60]
lea rcx, [rsp + 0x38]
call fcn.140065ab0
nop
lea rax, [rsp + 0x38]
cmp qword [rsp + 0x50], 0xf
cmova rax, qword [rsp + 0x38]
mov qword [rbp + 0xb0], rax
mov rax, qword [rsp + 0x48]
mov qword [rbp + 0xb8], rax
call fcn.14016d514
movaps xmm0, xmmword [rbp + 0xb0]
movdqa xmmword [rbp + 0xb0], xmm0
lea r8, [rbp + 0xb0]
mov edx, eax
lea rcx, [rsp + 0x70]
call fcn.1400489a0
mov r14d, 0x3e
lea rdx, [rsp + 0x70]
lea rcx, [rbp + 0x90]
call fcn.140048c00
nop
lea rcx, [rsp + 0x70]
call fcn.140063360
nop
lea rcx, [rsp + 0x38]
call fcn.1400633d0
lea rdx, [rbp + 0x90]
lea rcx, [rsp + 0x38]
call fcn.140061630
lea rdx, [rsp + 0x38]
call fcn.14008fad0
test al, al
je 0x1400b3472
mov rax, qword [rdi]
movsxd rdx, dword [rax + 0x50]
mov rcx, qword [rdi + 8]
mov rax, qword [rdi + 0x10]
sub rax, rcx
sar rax, 4
cmp rax, rdx
jbe 0x1400b3713
add rdx, rdx
mov rdx, qword [rcx + rdx*8]
add rdx, 0x48
lea rcx, [rbp - 0x30]
call fcn.14005ebc0
mov r14d, 0xbf
lea r10, [rbp - 0x30]
cmp qword [rbp - 0x18], 0xf
cmova r10, qword [rbp - 0x30]
mov r9d, ebx
mov r11, qword [rbp - 0x20]
add r11, r10
cmp r10, r11
je 0x1400b3454
nop word [rax + rax]
movzx r8d, byte [r10]
lea edx, [r8 - 0x41]
lea eax, [r8 + 0x20]
movzx ecx, al
cmp dl, 0x19
cmova ecx, r8d
movsx eax, cl
add eax, r9d
imul r9d, eax, 0x401
mov eax, r9d
shr eax, 6
xor r9d, eax
inc r10
cmp r10, r11
jne 0x1400b3420
lea ecx, [r9 + r9*8]
mov eax, ecx
shr eax, 0xb
xor ecx, eax
imul ecx, ecx, 0x8001
mov rax, qword [rdi]
cmp ecx, dword [rax + 0x58]
jne 0x1400b3472
xor sil, sil
jmp 0x1400b347a
mov sil, 1
test sil, r14b
je 0x1400b3483
lea rcx, [rbp - 0x30]
call fcn.1400633d0
test sil, sil
je 0x1400b36af
lea rdx, [rsp + 0x70]
lea rcx, [rbp + 0x90]
call fcn.140048e20
nop
cmp qword [rax + 0x18], 0xf
jbe 0x1400b34a8
mov rax, qword [rax]
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetFileAttributesA]
mov esi, eax
and esi, 0xfffffffd
lea rdx, [rbp + 0xb0]
lea rcx, [rbp + 0x90]
call fcn.140048e20
cmp qword [rax + 0x18], 0xf
jbe 0x1400b34d3
mov rax, qword [rax]
mov edx, esi
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_SetFileAttributesA]
lea rcx, [rbp + 0xb0]
call fcn.1400633d0
nop
lea rcx, [rsp + 0x70]
call fcn.1400633d0
mov dword [rbp + 0x80], ebx
lea rax, [rsp + 0x38]
mov qword [rbp + 0x10], rax
lea rdx, [rsp + 0x38]
mov rcx, qword [0x1402de818]
call fcn.14004e150
mov rsi, rax
lea rax, [rbp + 0x38]
mov qword [rsp + 0x60], rax
lea rax, [0x1402a7f18]
mov qword [rbp + 0x38], rax
lea rax, [rbp + 0x80]
mov qword [rbp + 0x40], rax
lea rax, [rbp + 0x38]
mov qword [rbp + 0x70], rax
mov byte [rbp + 0x78], 1
lea rax, [rbp + 0x18]
mov qword [rsp + 0x70], rax
lea rdx, [rbp + 0x18]
lea rcx, [rbp + 0x90]
call fcn.140048e20
mov r14, rax
mov rcx, qword [rdi]
movsxd rdx, dword [rcx + 0x50]
mov r8, qword [rdi + 8]
mov rcx, qword [rdi + 0x10]
sub rcx, r8
sar rcx, 4
cmp rcx, rdx
jbe 0x1400b3719
add rdx, rdx
mov rdx, qword [r8 + rdx*8]
add rdx, 0x48
lea rcx, [rbp - 0x50]
call fcn.14005ebc0
nop
mov qword [rsp + 0x20], rsi
lea r9, [rbp + 0x38]
mov r8, r14
lea rdx, [rbp - 0x50]
call fcn.140082560
test al, al
je 0x1400b36af
lea rdx, [rbp - 0x50]
lea rcx, [rbp + 0x90]
call fcn.140048e20
nop
cmp qword [rax + 0x18], 0xf
jbe 0x1400b35cb
mov rax, qword [rax]
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetFileAttributesA]
mov esi, eax
or esi, 2
lea rdx, [rbp + 0x18]
lea rcx, [rbp + 0x90]
call fcn.140048e20
cmp qword [rax + 0x18], 0xf
jbe 0x1400b35f3
mov rax, qword [rax]
mov edx, esi
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_SetFileAttributesA]
lea rcx, [rbp + 0x18]
call fcn.1400633d0
nop
lea rcx, [rbp - 0x50]
call fcn.1400633d0
mov rax, qword [rdi]
movsxd rdx, dword [rax + 0x50]
mov rcx, qword [rdi + 8]
mov rax, qword [rdi + 0x10]
sub rax, rcx
sar rax, 4
cmp rax, rdx
jbe 0x1400b370d
add rdx, rdx
mov rdx, qword [rcx + rdx*8]
add rdx, 0x48
lea rcx, [rbp - 0x10]
call fcn.14005ebc0
lea r9, [rbp - 0x10]
cmp qword [rbp + 8], 0xf
cmova r9, qword [rbp - 0x10]
mov r10, qword [rbp]
add r10, r9
cmp r9, r10
je 0x1400b3690
nop
movzx r8d, byte [r9]
lea edx, [r8 - 0x41]
lea eax, [r8 + 0x20]
movzx ecx, al
cmp dl, 0x19
cmova ecx, r8d
movsx eax, cl
add eax, ebx
imul ebx, eax, 0x401
mov eax, ebx
shr eax, 6
xor ebx, eax
inc r9
cmp r9, r10
jne 0x1400b3660
lea ecx, [rbx + rbx*8]
mov eax, ecx
shr eax, 0xb
xor ecx, eax
imul ecx, ecx, 0x8001
mov rax, qword [rdi]
mov dword [rax + 0x58], ecx
lea rcx, [rbp - 0x10]
call fcn.1400633d0
lea rdx, [rbp + 0x90]
lea rcx, [rbp - 0x50]
call fcn.140061630
lea rdx, [rbp - 0x50]
call fcn.1400a66a0
nop
lea rcx, [rbp + 0x90]
call fcn.140063360
mov rcx, qword [rdi]
call fcn.1400ae360
mov rax, qword [rdi]
mov dword [rax], 2
mov rcx, qword [rbp + 0x1e0]
xor rcx, rsp
call fcn.14016dfe0
lea r11, [rsp + 0x2f0]
mov rbx, qword [r11 + 0x28]
mov rsi, qword [r11 + 0x30]
mov rsp, r11
pop r14
pop rdi
pop rbp
ret
call fcn.140062900
nop
call fcn.140062900
nop
call fcn.140062900
int3