Function at 0x1400013d0
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rsi
mov qword [rsp + 0x20], rdi
push rbp
lea rbp, [rsp - 0x5f0]
sub rsp, 0x6f0
mov rax, qword [0x140005008]
xor rax, rsp
mov qword [rbp + 0x5e0], rax
mov rbx, rcx
test rcx, rcx
je 0x14000181c
mov rax, qword [0x1400056e0]
test rax, rax
jne 0x14000142b
xor edx, edx
mov ecx, 0xa4e39b3b
call fcn.140002900
mov qword [0x1400056e0], rax
mov rcx, rbx
call rax
test rax, rax
je 0x14000181c
mov rax, qword [0x1400056e0]
test rax, rax
jne 0x140001458
xor edx, edx
mov ecx, 0xa4e39b3b
call fcn.140002900
mov qword [0x1400056e0], rax
mov rcx, rbx
call rax
cmp rax, 0x100
jae 0x14000181c
xor eax, eax
mov dword [rsp + 0x5c], 0x14700d1
xor esi, esi
mov word [rsp + 0x6d], ax
mov edx, 5
mov byte [rsp + 0x6f], al
mov dword [rsp + 0x58], edx
mov cl, 0x63
mov dword [rsp + 0x60], 0x1470143
mov r8d, esi
mov dword [rsp + 0x64], 0x12d
mov dword [rsp + 0x68], 0xd15c0000
mov byte [rsp + 0x6c], cl
mov word [rsp + rdx*2 + 0x5c], si
mov eax, dword [rsp + 0x58]
test eax, eax
je 0x1400014ef
nop word [rax + rax]
mov eax, r8d
lea rdx, [rsp + 0x5c]
movzx ecx, word [rdx + rax*2]
lea rdx, [rdx + rax*2]
movzx eax, byte [rsp + 0x6b]
inc r8d
sub cx, ax
movzx eax, byte [rsp + 0x6a]
xor cx, ax
mov word [rdx], cx
mov eax, dword [rsp + 0x58]
cmp r8d, eax
jb 0x1400014c0
mov r9d, 2
mov word [rsp + rax*2 + 0x5c], si
mov dword [rsp + 0x20], r9d
mov r8d, esi
mov qword [rsp + 0x24], 0x12d0143
mov dword [rsp + 0x2c], 0x63d15c
mov word [rsp + r9*2 + 0x24], si
mov eax, dword [rsp + 0x20]
mov byte [rsp + 0x6c], sil
test eax, eax
je 0x14000155f
nop word [rax + rax]
mov eax, r8d
lea rdx, [rsp + 0x24]
movzx ecx, word [rdx + rax*2]
lea rdx, [rdx + rax*2]
movzx eax, byte [rsp + 0x2d]
inc r8d
sub cx, ax
movzx eax, byte [rsp + 0x2c]
xor cx, ax
mov word [rdx], cx
mov eax, dword [rsp + 0x20]
cmp r8d, eax
jb 0x140001530
mov word [rsp + rax*2 + 0x24], si
mov edx, 3
xor eax, eax
mov dword [rsp + 0x40], edx
mov word [rsp + 0x51], ax
mov cl, 0x63
mov byte [rsp + 0x53], al
mov r8d, esi
mov dword [rsp + 0x44], 0x1430143
mov dword [rsp + 0x48], 0x12d
mov dword [rsp + 0x4c], 0xd15c0000
mov byte [rsp + 0x50], cl
mov word [rsp + rdx*2 + 0x44], si
mov eax, dword [rsp + 0x40]
mov byte [rsp + 0x2e], sil
test eax, eax
je 0x1400015df
nop dword [rax + rax]
mov eax, r8d
lea rdx, [rsp + 0x44]
movzx ecx, word [rdx + rax*2]
lea rdx, [rdx + rax*2]
movzx eax, byte [rsp + 0x4f]
inc r8d
sub cx, ax
movzx eax, byte [rsp + 0x4e]
xor cx, ax
mov word [rdx], cx
mov eax, dword [rsp + 0x40]
cmp r8d, eax
jb 0x1400015b0
mov dword [rsp + 0x30], r9d
mov r8d, esi
mov word [rsp + rax*2 + 0x44], si
mov qword [rsp + 0x34], 0x12d00d1
mov dword [rsp + 0x3c], 0x63d15c
mov word [rsp + r9*2 + 0x34], si
mov eax, dword [rsp + 0x30]
mov byte [rsp + 0x50], sil
test eax, eax
je 0x14000163f
mov eax, r8d
lea rdx, [rsp + 0x34]
movzx ecx, word [rdx + rax*2]
lea rdx, [rdx + rax*2]
movzx eax, byte [rsp + 0x3d]
inc r8d
sub cx, ax
movzx eax, byte [rsp + 0x3c]
xor cx, ax
mov word [rdx], cx
mov eax, dword [rsp + 0x30]
cmp r8d, eax
jb 0x140001610
mov word [rsp + rax*2 + 0x34], si
mov rax, qword [0x140005650]
mov byte [rsp + 0x3e], sil
test rax, rax
jne 0x140001668
xor edx, edx
mov ecx, 0x2d681692
call fcn.140002900
mov qword [0x140005650], rax
mov rdx, rbx
lea rcx, [rbp + 0x3d0]
call rax
mov rax, qword [0x140005688]
test rax, rax
jne 0x140001693
xor edx, edx
mov ecx, 0x2c8ce5d8
call fcn.140002900
mov qword [0x140005688], rax
lea rdx, [rsp + 0x5c]
lea rcx, [rbp + 0x3d0]
call rax
mov rax, qword [0x1400056a0]
test rax, rax
jne 0x1400016c0
xor edx, edx
mov ecx, 0xc1480cb3
call fcn.140002900
mov qword [0x1400056a0], rax
lea rdx, [rsp + 0x70]
lea rcx, [rbp + 0x3d0]
call rax
mov rdi, rax
cmp rax, 0xffffffffffffffff
jne 0x140001850
cmp byte [rsp + 0x6c], sil
jne 0x14000172c
mov eax, dword [rsp + 0x58]
mov r8d, esi
mov word [rsp + rax*2 + 0x5c], si
mov eax, dword [rsp + 0x58]
test eax, eax
je 0x14000172c
nop word [rax + rax]
movzx ecx, byte [rsp + 0x6a]
lea rdx, [rsp + 0x5c]
mov eax, r8d
inc r8d
xor cx, word [rdx + rax*2]
lea rdx, [rdx + rax*2]
movzx eax, byte [rsp + 0x6b]
add cx, ax
mov word [rdx], cx
mov eax, dword [rsp + 0x58]
cmp r8d, eax
jb 0x140001700
cmp byte [rsp + 0x2e], sil
jne 0x14000177c
mov eax, dword [rsp + 0x20]
mov r8d, esi
mov word [rsp + rax*2 + 0x24], si
mov eax, dword [rsp + 0x20]
test eax, eax
je 0x14000177c
nop word [rax + rax]
movzx ecx, byte [rsp + 0x2c]
lea rdx, [rsp + 0x24]
mov eax, r8d
inc r8d
xor cx, word [rdx + rax*2]
lea rdx, [rdx + rax*2]
movzx eax, byte [rsp + 0x2d]
add cx, ax
mov word [rdx], cx
mov eax, dword [rsp + 0x20]
cmp r8d, eax
jb 0x140001750
cmp byte [rsp + 0x50], sil
jne 0x1400017cc
mov eax, dword [rsp + 0x40]
mov r8d, esi
mov word [rsp + rax*2 + 0x44], si
mov eax, dword [rsp + 0x40]
test eax, eax
je 0x1400017cc
nop word [rax + rax]
movzx ecx, byte [rsp + 0x4e]
lea rdx, [rsp + 0x44]
mov eax, r8d
inc r8d
xor cx, word [rdx + rax*2]
lea rdx, [rdx + rax*2]
movzx eax, byte [rsp + 0x4f]
add cx, ax
mov word [rdx], cx
mov eax, dword [rsp + 0x40]
cmp r8d, eax
jb 0x1400017a0
cmp byte [rsp + 0x3e], sil
jne 0x14000181c
mov eax, dword [rsp + 0x30]
mov r8d, esi
mov word [rsp + rax*2 + 0x34], si
mov eax, dword [rsp + 0x30]
test eax, eax
je 0x14000181c
nop word [rax + rax]
movzx ecx, byte [rsp + 0x3c]
lea rdx, [rsp + 0x34]
mov eax, r8d
inc r8d
xor cx, word [rdx + rax*2]
lea rdx, [rdx + rax*2]
movzx eax, byte [rsp + 0x3d]
add cx, ax
mov word [rdx], cx
mov eax, dword [rsp + 0x30]
cmp r8d, eax
jb 0x1400017f0
xor eax, eax
mov rcx, qword [rbp + 0x5e0]
xor rcx, rsp
call fcn.140002a50
lea r11, [rsp + 0x6f0]
mov rbx, qword [r11 + 0x18]
mov rsi, qword [r11 + 0x20]
mov rdi, qword [r11 + 0x28]
mov rsp, r11
pop rbp
ret
mov rax, qword [0x1400056a8]
test rax, rax
jne 0x14000186f
xor edx, edx
mov ecx, 0x28976ce8
call fcn.140002900
mov qword [0x1400056a8], rax
lea rdx, [rsp + 0x24]
lea rcx, [rbp - 0x64]
call rax
test eax, eax
je 0x140001994
mov rax, qword [0x1400056a8]
test rax, rax
jne 0x1400018a1
xor edx, edx
mov ecx, 0x28976ce8
call fcn.140002900
mov qword [0x1400056a8], rax
lea rdx, [rsp + 0x44]
lea rcx, [rbp - 0x64]
call rax
test eax, eax
je 0x140001994
mov rax, qword [0x140005650]
test rax, rax
jne 0x1400018d3
xor edx, edx
mov ecx, 0x2d681692
call fcn.140002900
mov qword [0x140005650], rax
mov rdx, rbx
lea rcx, [rbp + 0x1c0]
call rax
mov rax, qword [0x140005688]
test rax, rax
jne 0x1400018fe
xor edx, edx
mov ecx, 0x2c8ce5d8
call fcn.140002900
mov qword [0x140005688], rax
lea rdx, [rsp + 0x34]
lea rcx, [rbp + 0x1c0]
call rax
mov rax, qword [0x140005688]
test rax, rax
jne 0x14000192b
xor edx, edx
mov ecx, 0x2c8ce5d8
call fcn.140002900
mov qword [0x140005688], rax
lea rdx, [rbp - 0x64]
lea rcx, [rbp + 0x1c0]
call rax
test byte [rsp + 0x70], 0x10
je 0x14000196c
lea rcx, [rbp + 0x1c0]
call fcn.1400013d0
mov rax, qword [0x1400056d8]
test rax, rax
jne 0x14000198b
xor edx, edx
mov ecx, 0x19bf0595
call fcn.140002900
mov qword [0x1400056d8], rax
jmp 0x14000198b
mov rax, qword [0x1400056c0]
test rax, rax
jne 0x14000198b
xor edx, edx
mov ecx, 0x90418781
call fcn.140002900
mov qword [0x1400056c0], rax
lea rcx, [rbp + 0x1c0]
call rax
mov rax, qword [0x140005640]
test rax, rax
jne 0x1400019b3
xor edx, edx
mov ecx, 0x854d363a
call fcn.140002900
mov qword [0x140005640], rax
lea rdx, [rsp + 0x70]
mov rcx, rdi
call rax
test eax, eax
jne 0x140001850
mov r10d, 0xffffffff
cmp byte [rsp + 0x6c], sil
jne 0x140001a3e
mov eax, dword [rsp + 0x58]
mov r8d, esi
mov word [rsp + rax*2 + 0x5c], si
mov eax, dword [rsp + 0x58]
test eax, eax
je 0x140001a1c
nop word [rax + rax]
movzx ecx, byte [rsp + 0x6a]
lea rdx, [rsp + 0x5c]
mov eax, r8d
inc r8d
xor cx, word [rdx + rax*2]
lea rdx, [rdx + rax*2]
movzx eax, byte [rsp + 0x6b]
add cx, ax
mov word [rdx], cx
mov eax, dword [rsp + 0x58]
cmp r8d, eax
jb 0x1400019f0
mov ecx, 9
mov word [rsp + rax*2 + 0x5c], si
call fcn.140001020
imul rax, rax, 0x19660d
xor edx, edx
div r10
add dl, 0x5f
mov byte [rsp + 0x6c], dl
cmp byte [rsp + 0x2e], sil
jne 0x140001aae
mov eax, dword [rsp + 0x20]
mov r8d, esi
mov word [rsp + rax*2 + 0x24], si
mov eax, dword [rsp + 0x20]
test eax, eax
je 0x140001a8c
nop dword [rax]
movzx ecx, byte [rsp + 0x2c]
lea rdx, [rsp + 0x24]
mov eax, r8d
inc r8d
xor cx, word [rdx + rax*2]
lea rdx, [rdx + rax*2]
movzx eax, byte [rsp + 0x2d]
add cx, ax
mov word [rdx], cx
mov eax, dword [rsp + 0x20]
cmp r8d, eax
jb 0x140001a60
mov ecx, 9
mov word [rsp + rax*2 + 0x24], si
call fcn.140001020
imul rax, rax, 0x19660d
xor edx, edx
div r10
add dl, 0x5f
mov byte [rsp + 0x2e], dl
cmp byte [rsp + 0x50], sil
jne 0x140001b1e
mov eax, dword [rsp + 0x40]
mov r8d, esi
mov word [rsp + rax*2 + 0x44], si
mov eax, dword [rsp + 0x40]
test eax, eax
je 0x140001afc
nop dword [rax]
movzx ecx, byte [rsp + 0x4e]
lea rdx, [rsp + 0x44]
mov eax, r8d
inc r8d
xor cx, word [rdx + rax*2]
lea rdx, [rdx + rax*2]
movzx eax, byte [rsp + 0x4f]
add cx, ax
mov word [rdx], cx
mov eax, dword [rsp + 0x40]
cmp r8d, eax
jb 0x140001ad0
mov ecx, 9
mov word [rsp + rax*2 + 0x44], si
call fcn.140001020
imul rax, rax, 0x19660d
xor edx, edx
div r10
add dl, 0x5f
mov byte [rsp + 0x50], dl
cmp byte [rsp + 0x3e], sil
jne 0x140001b90
mov eax, dword [rsp + 0x30]
mov r9d, esi
mov word [rsp + rax*2 + 0x34], si
mov eax, dword [rsp + 0x30]
test eax, eax
je 0x140001b6e
nop dword [rax]
movzx edx, byte [rsp + 0x3c]
lea r8, [rsp + 0x34]
mov eax, r9d
inc r9d
xor dx, word [r8 + rax*2]
lea r8, [r8 + rax*2]
movzx eax, byte [rsp + 0x3d]
add dx, ax
mov word [r8], dx
mov eax, dword [rsp + 0x30]
cmp r9d, eax
jb 0x140001b40
mov ecx, 9
mov word [rsp + rax*2 + 0x34], si
call fcn.140001020
imul rax, rax, 0x19660d
xor edx, edx
div r10
add dl, 0x5f
mov byte [rsp + 0x3e], dl
mov rax, qword [0x1400056b8]
test rax, rax
jne 0x140001baf
xor edx, edx
mov ecx, 0xdd35c6e6
call fcn.140002900
mov qword [0x1400056b8], rax
mov rcx, rdi
call rax
mov eax, 1
jmp 0x14000181e