Function at 0x14009a130
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 [0x140231eb8]
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, [0x1401ed81c]
lea rcx, [rsp + 0x38]
call fcn.1400041b8
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 0x14009a1a9
lea rcx, [rsp + 0x58]
call fcn.1400041b8
nop
mov edi, 0x200
mov dword [rsp + 0x20], edi
lea r9, [0x1401dbff0]
lea r8, [rbp + 0x10]
lea rdx, [rsp + 0x38]
lea rcx, [rsp + 0x58]
call fcn.1401161dc
nop
mov ebx, 0x1000
mov rdx, qword [rsp + 0x70]
cmp rdx, 8
jb 0x14009a225
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x58]
mov rax, rcx
cmp rdx, rbx
jb 0x14009a220
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14009aa8a
call fcn.1401af36c
movdqa xmm0, xmmword [0x1401dc090]
movdqu xmmword [rsp + 0x68], xmm0
mov word [rsp + 0x58], r13w
mov rdx, qword [rsp + 0x50]
cmp rdx, 8
jb 0x14009a277
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x38]
mov rax, rcx
cmp rdx, rbx
jb 0x14009a272
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14009aa90
call fcn.1401af36c
movdqa xmm0, xmmword [0x1401dc090]
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 0x14009a3ec
lea r8, [0x1401ed828]
call fcn.1400132f8
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 0x14009a2c7
lea rdx, [rbp - 0x60]
lea rcx, [rsp + 0x58]
call fcn.1400041b8
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 0x14009a2f8
lea rcx, [rsp + 0x38]
call fcn.1400041b8
nop
mov dword [rsp + 0x20], edi
lea r9, [0x1401dbff0]
lea r8, [rbp + 0x10]
lea rdx, [rsp + 0x58]
lea rcx, [rsp + 0x38]
call fcn.1401161dc
nop
mov rdx, qword [rsp + 0x50]
cmp rdx, 8
jb 0x14009a36a
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x38]
mov rax, rcx
cmp rdx, rbx
jb 0x14009a365
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14009aa96
call fcn.1401af36c
movdqa xmm0, xmmword [0x1401dc090]
movdqu xmmword [rsp + 0x48], xmm0
mov word [rsp + 0x38], r13w
mov rdx, qword [rsp + 0x70]
cmp rdx, 8
jb 0x14009a3bc
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x58]
mov rax, rcx
cmp rdx, rbx
jb 0x14009a3b7
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14009aa9c
call fcn.1401af36c
movdqa xmm0, xmmword [0x1401dc090]
movdqu xmmword [rsp + 0x68], xmm0
mov word [rsp + 0x58], r13w
cmp word [rbp + 0x10], r13w
je 0x14009a538
lea rdx, [rbp + 0x10]
mov rcx, rsi
call fcn.1400fb0dc
jmp 0x14009a598
lea r8, str.PE_d
call fcn.1400132f8
mov ebx, 0x400
mov r8d, ebx
xor edx, edx
lea rcx, [rbp + 0x410]
call fcn.1401b2120
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 0x14009a423
lea rdx, [rbp - 0x60]
lea rcx, [rsp + 0x58]
call fcn.1400041b8
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 0x14009a454
lea rcx, [rsp + 0x38]
call fcn.1400041b8
nop
mov dword [rsp + 0x20], ebx
xor r9d, r9d
lea r8, [rbp + 0x410]
lea rdx, [rsp + 0x58]
lea rcx, [rsp + 0x38]
call fcn.140115fa4
mov ebx, eax
mov rdx, qword [rsp + 0x50]
cmp rdx, 8
jb 0x14009a4ca
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x38]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14009a4c5
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14009aaa2
call fcn.1401af36c
movdqa xmm0, xmmword [0x1401dc090]
movdqu xmmword [rsp + 0x48], xmm0
mov word [rsp + 0x38], r13w
mov rdx, qword [rsp + 0x70]
cmp rdx, 8
jb 0x14009a520
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x58]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14009a51b
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14009aaa8
call fcn.1401af36c
movdqa xmm0, xmmword [0x1401dc090]
movdqu xmmword [rsp + 0x68], xmm0
mov word [rsp + 0x58], r13w
test ebx, ebx
jne 0x14009a53f
xor al, al
jmp 0x14009aa5a
mov edx, r13d
test ebx, ebx
jle 0x14009a55b
lea rcx, [rbp + 0x410]
lea eax, [rdx + 0x49]
xor byte [rcx], al
inc edx
inc rcx
cmp edx, ebx
jl 0x14009a54d
mov r8, rdi
lea rdx, [rbp + 0x10]
lea rcx, [rbp + 0x410]
call fcn.140104dac
mov word [rbp + 0x40e], r13w
lea rdx, [rbp + 0x10]
mov rcx, rsi
call fcn.1400fb0dc
mov edx, 0x400
lea rcx, [rbp + 0x410]
call fcn.1400fb13c
mov ebx, 0x1000
mov r9d, r12d
lea r8, [0x1401ed840]
mov rdx, r15
lea rcx, [rbp - 0x60]
call fcn.1400132f8
mov qword [rsp + 0x78], r13
xorps xmm0, xmm0
movdqu xmmword [rbp - 0x78], xmm0
xor r8d, r8d
lea rdx, [0x1401dbff0]
lea rcx, [rsp + 0x78]
call fcn.1400041b8
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 0x14009a5e5
lea rdx, [rbp - 0x60]
lea rcx, [rsp + 0x58]
call fcn.1400041b8
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 0x14009a616
lea rcx, [rsp + 0x38]
call fcn.1400041b8
nop
lea rdi, [rsi + 0x20]
lea r9, [rsp + 0x78]
mov r8, rdi
lea rdx, [rsp + 0x58]
lea rcx, [rsp + 0x38]
call fcn.1401161b8
nop
mov rdx, qword [rsp + 0x50]
cmp rdx, 8
jb 0x14009a685
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x38]
mov rax, rcx
cmp rdx, rbx
jb 0x14009a680
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14009aaae
call fcn.1401af36c
movdqa xmm0, xmmword [0x1401dc090]
movdqu xmmword [rsp + 0x48], xmm0
mov word [rsp + 0x38], r13w
mov rdx, qword [rsp + 0x70]
cmp rdx, 8
jb 0x14009a6d7
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x58]
mov rax, rcx
cmp rdx, rbx
jb 0x14009a6d2
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14009aab4
call fcn.1401af36c
movdqa xmm0, xmmword [0x1401dc090]
movdqu xmmword [rsp + 0x68], xmm0
mov word [rsp + 0x58], r13w
mov rdx, qword [rbp - 0x70]
cmp rdx, 8
jb 0x14009a728
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x78]
mov rax, rcx
cmp rdx, rbx
jb 0x14009a723
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14009aaba
call fcn.1401af36c
movdqa xmm0, xmmword [0x1401dc090]
movdqu xmmword [rbp - 0x78], xmm0
mov word [rsp + 0x78], r13w
mov r9d, r12d
lea r8, [0x1401ed848]
mov rdx, r15
lea rcx, [rbp - 0x60]
call fcn.1400132f8
mov qword [rsp + 0x58], r13
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x68], xmm0
xor r8d, r8d
lea rdx, [0x1401dbff0]
lea rcx, [rsp + 0x58]
call fcn.1400041b8
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 0x14009a789
lea rdx, [rbp - 0x60]
lea rcx, [rsp + 0x38]
call fcn.1400041b8
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 0x14009a7b9
lea rcx, [rsp + 0x78]
call fcn.1400041b8
nop
lea r8, [rsi + 0x40]
lea r9, [rsp + 0x58]
lea rdx, [rsp + 0x38]
lea rcx, [rsp + 0x78]
call fcn.1401161b8
nop
mov rdx, qword [rbp - 0x70]
cmp rdx, 8
jb 0x14009a824
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x78]
mov rax, rcx
cmp rdx, rbx
jb 0x14009a81f
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14009aac0
call fcn.1401af36c
movdqa xmm0, xmmword [0x1401dc090]
movdqu xmmword [rbp - 0x78], xmm0
mov word [rsp + 0x78], r13w
mov rdx, qword [rsp + 0x50]
cmp rdx, 8
jb 0x14009a875
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x38]
mov rax, rcx
cmp rdx, rbx
jb 0x14009a870
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14009aac6
call fcn.1401af36c
movdqa xmm0, xmmword [0x1401dc090]
movdqu xmmword [rsp + 0x48], xmm0
mov word [rsp + 0x38], r13w
mov rdx, qword [rsp + 0x70]
cmp rdx, 8
jb 0x14009a8c7
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x58]
mov rax, rcx
cmp rdx, rbx
jb 0x14009a8c2
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14009aacc
call fcn.1401af36c
movdqa xmm0, xmmword [0x1401dc090]
movdqu xmmword [rsp + 0x68], xmm0
mov word [rsp + 0x58], r13w
mov r9d, r12d
lea r8, [0x1401ed850]
mov rdx, r15
lea rcx, [rbp - 0x60]
call fcn.1400132f8
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 0x14009a906
lea rdx, [rbp - 0x60]
lea rcx, [rsp + 0x38]
call fcn.1400041b8
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 0x14009a933
mov r8, r14
lea rcx, [rsp + 0x78]
call fcn.1400041b8
nop
xor r8d, r8d
lea rdx, [rsp + 0x38]
lea rcx, [rsp + 0x78]
call fcn.140115f8c
test eax, eax
setne al
mov byte [rsi + 0x80], al
mov rdx, qword [rbp - 0x70]
cmp rdx, 8
jb 0x14009a9a5
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x78]
mov rax, rcx
cmp rdx, rbx
jb 0x14009a9a0
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14009aad2
call fcn.1401af36c
movdqa xmm0, xmmword [0x1401dc090]
movdqu xmmword [rbp - 0x78], xmm0
mov word [rsp + 0x78], r13w
mov rdx, qword [rsp + 0x50]
cmp rdx, 8
jb 0x14009a9f6
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x38]
mov rax, rcx
cmp rdx, rbx
jb 0x14009a9f1
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14009aa84
call fcn.1401af36c
movdqa xmm0, xmmword [0x1401dc090]
movdqu xmmword [rsp + 0x48], xmm0
mov word [rsp + 0x38], r13w
lea rbx, [rsi + 0x60]
cmp qword [rsi + 0x30], r13
je 0x14009aa2b
cmp qword [rdi + 0x18], 8
jb 0x14009aa1e
mov rdi, qword [rdi]
mov rdx, rdi
mov rcx, rbx
call fcn.1400fb0dc
jmp 0x14009aa4a
cmp rbx, rsi
je 0x14009aa44
mov r9b, byte [rsp + 0x30]
mov r8, qword [rsi + 8]
mov rdx, qword [rsi]
mov rcx, rbx
call fcn.140006e1c
mov cl, byte [rsi + 0x18]
mov byte [rbx + 0x18], cl
mov edx, 0x400
lea rcx, [rbp + 0x10]
call fcn.1400fb13c
mov al, 1
mov rcx, qword [rbp + 0x810]
xor rcx, rsp
call fcn.1401af480
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.1401b6544
nop
call fcn.1401b6544
nop
call fcn.1401b6544
nop
call fcn.1401b6544
nop
call fcn.1401b6544
nop
call fcn.1401b6544
nop
call fcn.1401b6544
nop
call fcn.1401b6544
nop
call fcn.1401b6544
nop
call fcn.1401b6544
nop
call fcn.1401b6544
nop
call fcn.1401b6544
nop
call fcn.1401b6544
nop
call fcn.1401b6544
int3