Function at 0x1400955d0
Capabilities:
Encode data using xor

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0xe8
mov rax, r8
mov rsi, rdx
mov rdi, rcx
mov qword [rsp + 0x20], r9
lea rcx, [rsp + 0x80]
mov rdx, rdi
mov r8, rsi
mov r9, rax
call fcn.1401d0b20
mov rdx, qword [rsp + 0xd0]
mov r8, qword [rsp + 0x88]
cmp r8, rdx
sete r9b
cmp qword [rsp + 0x80], 0
mov rcx, qword [rsp + 0xc8]
je 0x1400958be
mov rbp, qword [rsp + 0xa8]
mov r13, rsi
cmp rbp, rdx
je 0x140095962
mov qword [rsp + 0x38], rdi
mov qword [rsp + 0x40], rsi
mov rax, qword [rsp + 0xe0]
lea r9, [rax - 1]
mov qword [rsp + 0x48], r9
mov r9, qword [rsp + 0xa0]
mov qword [rsp + 0x60], r9
mov r11, qword [rsp + 0xd8]
mov rsi, qword [rsp + 0xb8]
mov r10, qword [rsp + 0x98]
mov rdi, rax
mov r9, r10
mov qword [rsp + 0x78], r10
sub rdi, r10
mov qword [rsp + 0x68], rdi
lea r9, [r8 - 1]
mov qword [rsp + 0x70], r9
cmp r9, rax
setb byte [rsp + 0x37]
mov r9, rbp
sub r9, r8
mov qword [rsp + 0x58], r9
lea r15, [rcx + rbp]
lea r12, [rcx + r8]
lea r14, [r11 + r8]
lea rdi, [rbp - 1]
mov r13, rbp
mov r9, qword [rsp + 0x48]
lea r10, [r9 + rbp]
cmp r10, rdx
jae 0x140095958
mov r9, qword [rsp + 0x78]
add r9, r13
mov qword [rsp + 0x50], r9
lea rbp, [rax + r13]
cmp rsi, 0xffffffffffffffff
je 0x1400957d0
mov rbx, r13
jmp 0x140095717
xor esi, esi
mov rbx, rbp
mov r9, qword [rsp + 0x48]
lea r10, [rbx + r9]
cmp r10, rdx
jae 0x140095958
cmp r13, rbx
jne 0x140095958
movzx r9d, byte [rcx + r10]
mov r10, qword [rsp + 0x60]
bt r10, r9
jae 0x140095700
cmp r8, rsi
mov r10, rsi
cmova r10, r8
nop word [rax + rax]
cmp r10, rax
jae 0x140095770
lea r9, [r10 + r13]
cmp r9, rdx
jae 0x1400958bc
lea rbx, [r10 + 1]
movzx r9d, byte [r11 + r10]
cmp r9b, byte [r15 + r10]
mov r10, rbx
je 0x140095740
add rbx, qword [rsp + 0x58]
xor esi, esi
jmp 0x140095705
mov r10, qword [rsp + 0x70]
nop word cs:[rax + rax]
lea r9, [r10 + 1]
cmp rsi, r9
jae 0x1400957c0
cmp r10, rax
jae 0x1400958bc
lea r9, [r10 + r13]
cmp r9, rdx
jae 0x1400958bc
movzx r9d, byte [r11 + r10]
lea rbx, [r10 - 1]
cmp r9b, byte [r15 + r10]
mov r10, rbx
je 0x140095780
mov rsi, qword [rsp + 0x68]
mov rbx, qword [rsp + 0x50]
jmp 0x140095705
xor esi, esi
jmp 0x140095897
mov rsi, r13
jmp 0x1400957f2
mov r9, qword [rsp + 0x48]
lea r10, [rsi + r9]
cmp r10, rdx
jae 0x140095958
cmp r13, rsi
jne 0x140095958
movzx r10d, byte [rcx + r10]
mov r9, qword [rsp + 0x60]
bt r9, r10
mov rsi, rbp
jae 0x1400957e0
xor r10d, r10d
mov rbx, r13
nop word cs:[rax + rax]
lea rsi, [r8 + r10]
cmp rsi, rax
jae 0x140095850
lea rsi, [r8 + rbx]
cmp rsi, rdx
jae 0x1400958bc
movzx r9d, byte [r14 + r10]
lea rsi, [rbx + 1]
inc r10
cmp r9b, byte [r12 + rbx]
mov rbx, rsi
je 0x140095820
jmp 0x1400957e0
test byte [rsp + 0x37], 1
je 0x1400958b0
mov rsi, r8
mov r10, r8
nop dword [rax]
sub r10, 1
jb 0x140095890
lea rbx, [rdi + rsi]
cmp rbx, rdx
jae 0x1400958bc
movzx ebx, byte [r11 + rsi - 1]
cmp bl, byte [r15 + rsi - 1]
mov rsi, r10
je 0x140095860
mov rsi, qword [rsp + 0x50]
jmp 0x1400957e0
mov rsi, 0xffffffffffffffff
add qword [rsp + 0x58], rax
add r15, rax
add rdi, rax
cmp rbp, rdx
jne 0x1400956c8
jmp 0x140095996
mov rsi, 0xffffffffffffffff
test r8, r8
je 0x140095897
ud2
cmp byte [rsp + 0x9a], 0
mov r13, rsi
jne 0x140095962
movzx eax, byte [rsp + 0x98]
test r9b, 1
je 0x140095938
test r8, r8
je 0x140095987
cmp r8, rdx
jae 0x1400959a0
cmp byte [rcx + r8], 0xc0
jl 0x1400959b9
mov r13, rsi
test al, al
je 0x140095962
nop word cs:[rax + rax]
xor al, 1
jne 0x140095910
jmp 0x1400959b4
movzx r9d, byte [rcx + r8]
test r9b, r9b
js 0x140095952
mov r9d, eax
xor r9b, 1
test al, al
mov eax, r9d
je 0x140095982
test r8, r8
je 0x140095920
cmp r8, rdx
jae 0x1400959b9
movzx r9d, byte [rcx + r8]
cmp r9b, 0xbf
jle 0x1400959b9
test r9b, r9b
jns 0x14009592a
cmp r9b, 0xe0
jmp 0x14009592a
mov rsi, qword [rsp + 0x40]
mov rdi, qword [rsp + 0x38]
sub rsi, r13
add rdi, r13
mov rax, rdi
mov rdx, rsi
add rsp, 0xe8
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
mov r13, r8
jmp 0x140095962
mov r13, rsi
test al, al
je 0x140095962
nop
xor al, 1
jne 0x140095990
jmp 0x1400959b4
mov rsi, qword [rsp + 0x40]
mov r13, rsi
jmp 0x14009595d
mov r13, rsi
test al, al
je 0x140095962
nop word [rax + rax]
xor al, 1
jne 0x1400959b0
mov r13, rsi
jmp 0x140095962
mov r9, rdx
call fcn.14018ba60
int3