Function at 0x14009a2a0
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 0x18], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x820]
sub rsp, 0x920
mov rax, qword [0x14022ff58]
xor rax, rsp
mov qword [rbp + 0x810], rax
mov rsi, rdx
mov r12d, ecx
xor r13d, r13d
mov qword [rsp + 0x38], r13
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x48], xmm0
lea r8d, [r13 + 2]
lea rdx, [0x1401eb7bc]
lea rcx, [rsp + 0x38]
call fcn.1400041a8
nop
mov qword [rsp + 0x58], r13
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x68], xmm0
mov rdx, qword [str.Passwords]
or r14, 0xffffffffffffffff
mov r8, r14
inc r8
cmp word [rdx + r8*2], r13w
jne 0x14009a319
lea rcx, [rsp + 0x58]
call fcn.1400041a8
nop
mov edi, 0x200
mov dword [rsp + 0x20], edi
lea r9, [0x1401d9fd0]
lea r8, [rbp + 0x10]
lea rdx, [rsp + 0x38]
lea rcx, [rsp + 0x58]
call fcn.1401155cc
nop
mov ebx, 0x1000
mov rdx, qword [rsp + 0x70]
cmp rdx, 8
jb 0x14009a395
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x58]
mov rax, rcx
cmp rdx, rbx
jb 0x14009a390
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14009abfa
call fcn.1401addcc
movdqa xmm0, xmmword [0x1401da070]
movdqu xmmword [rsp + 0x68], xmm0
mov word [rsp + 0x58], r13w
mov rdx, qword [rsp + 0x50]
cmp rdx, 8
jb 0x14009a3e7
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x38]
mov rax, rcx
cmp rdx, rbx
jb 0x14009a3e2
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14009ac00
call fcn.1401addcc
movdqa xmm0, xmmword [0x1401da070]
movdqu xmmword [rsp + 0x48], xmm0
mov word [rsp + 0x38], r13w
mov r9d, r12d
mov r15d, 0x32
lea rcx, [rbp - 0x60]
mov edx, r15d
cmp word [rbp + 0x10], r13w
je 0x14009a55c
lea r8, [0x1401eb7c8]
call fcn.1400132a4
mov qword [rsp + 0x58], r13
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x68], xmm0
lea rax, [rbp - 0x60]
mov r8, r14
inc r8
cmp word [rax + r8*2], r13w
jne 0x14009a437
lea rdx, [rbp - 0x60]
lea rcx, [rsp + 0x58]
call fcn.1400041a8
nop
mov qword [rsp + 0x38], r13
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x48], xmm0
mov rdx, qword [str.Passwords]
mov r8, r14
inc r8
cmp word [rdx + r8*2], r13w
jne 0x14009a468
lea rcx, [rsp + 0x38]
call fcn.1400041a8
nop
mov dword [rsp + 0x20], edi
lea r9, [0x1401d9fd0]
lea r8, [rbp + 0x10]
lea rdx, [rsp + 0x58]
lea rcx, [rsp + 0x38]
call fcn.1401155cc
nop
mov rdx, qword [rsp + 0x50]
cmp rdx, 8
jb 0x14009a4da
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x38]
mov rax, rcx
cmp rdx, rbx
jb 0x14009a4d5
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14009ac06
call fcn.1401addcc
movdqa xmm0, xmmword [0x1401da070]
movdqu xmmword [rsp + 0x48], xmm0
mov word [rsp + 0x38], r13w
mov rdx, qword [rsp + 0x70]
cmp rdx, 8
jb 0x14009a52c
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x58]
mov rax, rcx
cmp rdx, rbx
jb 0x14009a527
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14009ac0c
call fcn.1401addcc
movdqa xmm0, xmmword [0x1401da070]
movdqu xmmword [rsp + 0x68], xmm0
mov word [rsp + 0x58], r13w
cmp word [rbp + 0x10], r13w
je 0x14009a6a8
lea rdx, [rbp + 0x10]
mov rcx, rsi
call fcn.1400fa6c8
jmp 0x14009a708
lea r8, str.PE_d
call fcn.1400132a4
mov ebx, 0x400
mov r8d, ebx
xor edx, edx
lea rcx, [rbp + 0x410]
call fcn.1401b0b80
mov qword [rsp + 0x58], r13
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x68], xmm0
lea rax, [rbp - 0x60]
mov r8, r14
inc r8
cmp word [rax + r8*2], r13w
jne 0x14009a593
lea rdx, [rbp - 0x60]
lea rcx, [rsp + 0x58]
call fcn.1400041a8
nop
mov qword [rsp + 0x38], r13
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x48], xmm0
mov rdx, qword [str.Passwords]
mov r8, r14
inc r8
cmp word [rdx + r8*2], r13w
jne 0x14009a5c4
lea rcx, [rsp + 0x38]
call fcn.1400041a8
nop
mov dword [rsp + 0x20], ebx
xor r9d, r9d
lea r8, [rbp + 0x410]
lea rdx, [rsp + 0x58]
lea rcx, [rsp + 0x38]
call fcn.140115394
mov ebx, eax
mov rdx, qword [rsp + 0x50]
cmp rdx, 8
jb 0x14009a63a
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x38]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14009a635
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14009ac12
call fcn.1401addcc
movdqa xmm0, xmmword [0x1401da070]
movdqu xmmword [rsp + 0x48], xmm0
mov word [rsp + 0x38], r13w
mov rdx, qword [rsp + 0x70]
cmp rdx, 8
jb 0x14009a690
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x58]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14009a68b
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14009ac18
call fcn.1401addcc
movdqa xmm0, xmmword [0x1401da070]
movdqu xmmword [rsp + 0x68], xmm0
mov word [rsp + 0x58], r13w
test ebx, ebx
jne 0x14009a6af
xor al, al
jmp 0x14009abca
mov edx, r13d
test ebx, ebx
jle 0x14009a6cb
lea rcx, [rbp + 0x410]
lea eax, [rdx + 0x49]
xor byte [rcx], al
inc edx
inc rcx
cmp edx, ebx
jl 0x14009a6bd
mov r8, rdi
lea rdx, [rbp + 0x10]
lea rcx, [rbp + 0x410]
call fcn.1401041c8
mov word [rbp + 0x40e], r13w
lea rdx, [rbp + 0x10]
mov rcx, rsi
call fcn.1400fa6c8
mov edx, 0x400
lea rcx, [rbp + 0x410]
call fcn.1400fa728
mov ebx, 0x1000
mov r9d, r12d
lea r8, [0x1401eb7e0]
mov rdx, r15
lea rcx, [rbp - 0x60]
call fcn.1400132a4
mov qword [rsp + 0x78], r13
xorps xmm0, xmm0
movdqu xmmword [rbp - 0x78], xmm0
xor r8d, r8d
lea rdx, [0x1401d9fd0]
lea rcx, [rsp + 0x78]
call fcn.1400041a8
nop
mov qword [rsp + 0x58], r13
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x68], xmm0
lea rax, [rbp - 0x60]
mov r8, r14
inc r8
cmp word [rax + r8*2], r13w
jne 0x14009a755
lea rdx, [rbp - 0x60]
lea rcx, [rsp + 0x58]
call fcn.1400041a8
nop
mov qword [rsp + 0x38], r13
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x48], xmm0
mov rdx, qword [str.Passwords]
mov r8, r14
inc r8
cmp word [rdx + r8*2], r13w
jne 0x14009a786
lea rcx, [rsp + 0x38]
call fcn.1400041a8
nop
lea rdi, [rsi + 0x20]
lea r9, [rsp + 0x78]
mov r8, rdi
lea rdx, [rsp + 0x58]
lea rcx, [rsp + 0x38]
call fcn.1401155a8
nop
mov rdx, qword [rsp + 0x50]
cmp rdx, 8
jb 0x14009a7f5
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x38]
mov rax, rcx
cmp rdx, rbx
jb 0x14009a7f0
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14009ac1e
call fcn.1401addcc
movdqa xmm0, xmmword [0x1401da070]
movdqu xmmword [rsp + 0x48], xmm0
mov word [rsp + 0x38], r13w
mov rdx, qword [rsp + 0x70]
cmp rdx, 8
jb 0x14009a847
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x58]
mov rax, rcx
cmp rdx, rbx
jb 0x14009a842
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14009ac24
call fcn.1401addcc
movdqa xmm0, xmmword [0x1401da070]
movdqu xmmword [rsp + 0x68], xmm0
mov word [rsp + 0x58], r13w
mov rdx, qword [rbp - 0x70]
cmp rdx, 8
jb 0x14009a898
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x78]
mov rax, rcx
cmp rdx, rbx
jb 0x14009a893
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14009ac2a
call fcn.1401addcc
movdqa xmm0, xmmword [0x1401da070]
movdqu xmmword [rbp - 0x78], xmm0
mov word [rsp + 0x78], r13w
mov r9d, r12d
lea r8, [0x1401eb7e8]
mov rdx, r15
lea rcx, [rbp - 0x60]
call fcn.1400132a4
mov qword [rsp + 0x58], r13
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x68], xmm0
xor r8d, r8d
lea rdx, [0x1401d9fd0]
lea rcx, [rsp + 0x58]
call fcn.1400041a8
nop
mov qword [rsp + 0x38], r13
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x48], xmm0
lea rax, [rbp - 0x60]
mov r8, r14
inc r8
cmp word [rax + r8*2], r13w
jne 0x14009a8f9
lea rdx, [rbp - 0x60]
lea rcx, [rsp + 0x38]
call fcn.1400041a8
nop
mov qword [rsp + 0x78], r13
xorps xmm0, xmm0
movdqu xmmword [rbp - 0x78], xmm0
mov rdx, qword [str.Passwords]
mov r8, r14
inc r8
cmp word [rdx + r8*2], r13w
jne 0x14009a929
lea rcx, [rsp + 0x78]
call fcn.1400041a8
nop
lea r8, [rsi + 0x40]
lea r9, [rsp + 0x58]
lea rdx, [rsp + 0x38]
lea rcx, [rsp + 0x78]
call fcn.1401155a8
nop
mov rdx, qword [rbp - 0x70]
cmp rdx, 8
jb 0x14009a994
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x78]
mov rax, rcx
cmp rdx, rbx
jb 0x14009a98f
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14009ac30
call fcn.1401addcc
movdqa xmm0, xmmword [0x1401da070]
movdqu xmmword [rbp - 0x78], xmm0
mov word [rsp + 0x78], r13w
mov rdx, qword [rsp + 0x50]
cmp rdx, 8
jb 0x14009a9e5
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x38]
mov rax, rcx
cmp rdx, rbx
jb 0x14009a9e0
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14009ac36
call fcn.1401addcc
movdqa xmm0, xmmword [0x1401da070]
movdqu xmmword [rsp + 0x48], xmm0
mov word [rsp + 0x38], r13w
mov rdx, qword [rsp + 0x70]
cmp rdx, 8
jb 0x14009aa37
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x58]
mov rax, rcx
cmp rdx, rbx
jb 0x14009aa32
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14009ac3c
call fcn.1401addcc
movdqa xmm0, xmmword [0x1401da070]
movdqu xmmword [rsp + 0x68], xmm0
mov word [rsp + 0x58], r13w
mov r9d, r12d
lea r8, [0x1401eb7f0]
mov rdx, r15
lea rcx, [rbp - 0x60]
call fcn.1400132a4
mov qword [rsp + 0x38], r13
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x48], xmm0
lea rax, [rbp - 0x60]
mov r8, r14
inc r8
cmp word [rax + r8*2], r13w
jne 0x14009aa76
lea rdx, [rbp - 0x60]
lea rcx, [rsp + 0x38]
call fcn.1400041a8
nop
mov qword [rsp + 0x78], r13
xorps xmm0, xmm0
movdqu xmmword [rbp - 0x78], xmm0
mov rdx, qword [str.Passwords]
inc r14
cmp word [rdx + r14*2], r13w
jne 0x14009aaa3
mov r8, r14
lea rcx, [rsp + 0x78]
call fcn.1400041a8
nop
xor r8d, r8d
lea rdx, [rsp + 0x38]
lea rcx, [rsp + 0x78]
call fcn.14011537c
test eax, eax
setne al
mov byte [rsi + 0x80], al
mov rdx, qword [rbp - 0x70]
cmp rdx, 8
jb 0x14009ab15
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x78]
mov rax, rcx
cmp rdx, rbx
jb 0x14009ab10
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14009ac42
call fcn.1401addcc
movdqa xmm0, xmmword [0x1401da070]
movdqu xmmword [rbp - 0x78], xmm0
mov word [rsp + 0x78], r13w
mov rdx, qword [rsp + 0x50]
cmp rdx, 8
jb 0x14009ab66
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x38]
mov rax, rcx
cmp rdx, rbx
jb 0x14009ab61
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14009abf4
call fcn.1401addcc
movdqa xmm0, xmmword [0x1401da070]
movdqu xmmword [rsp + 0x48], xmm0
mov word [rsp + 0x38], r13w
lea rbx, [rsi + 0x60]
cmp qword [rsi + 0x30], r13
je 0x14009ab9b
cmp qword [rdi + 0x18], 8
jb 0x14009ab8e
mov rdi, qword [rdi]
mov rdx, rdi
mov rcx, rbx
call fcn.1400fa6c8
jmp 0x14009abba
cmp rbx, rsi
je 0x14009abb4
mov r9b, byte [rsp + 0x30]
mov r8, qword [rsi + 8]
mov rdx, qword [rsi]
mov rcx, rbx
call fcn.140006e0c
mov cl, byte [rsi + 0x18]
mov byte [rbx + 0x18], cl
mov edx, 0x400
lea rcx, [rbp + 0x10]
call fcn.1400fa728
mov al, 1
mov rcx, qword [rbp + 0x810]
xor rcx, rsp
call fcn.1401adee0
mov rbx, qword [rsp + 0x970]
add rsp, 0x920
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
call fcn.1401b4fa4
nop
call fcn.1401b4fa4
nop
call fcn.1401b4fa4
nop
call fcn.1401b4fa4
nop
call fcn.1401b4fa4
nop
call fcn.1401b4fa4
nop
call fcn.1401b4fa4
nop
call fcn.1401b4fa4
nop
call fcn.1401b4fa4
nop
call fcn.1401b4fa4
nop
call fcn.1401b4fa4
nop
call fcn.1401b4fa4
nop
call fcn.1401b4fa4
nop
call fcn.1401b4fa4
int3