Function at 0x14007e130
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 0x10], rbx
push rdi
neg rsp
sub rsp, 0xffffffffffffff80
neg rsp
movzx eax, byte [rcx]
mov rdi, rdx
mov rbx, rcx
cmp al, 0x2d
jne 0x14007e158
movzx eax, byte [rbx + 1]
inc rbx
movsx ecx, al
call fcn.140093da0
test eax, eax
je 0x14007e1a2
cmp byte [rbx], 0x30
je 0x14007e1bc
movzx eax, byte [rbx]
test al, al
je 0x14007e1a2
nop dword [rax]
movsx ecx, al
call fcn.140093da0
test eax, eax
je 0x14007e1d0
movzx eax, byte [rbx + 1]
inc rbx
test al, al
jne 0x14007e183
xor eax, eax
mov rbx, qword [rsp + 0x98]
add rsp, 0x6b435788
sub rsp, 0x6b435708
pop rdi
ret
movsx ecx, byte [rbx + 1]
inc rbx
call fcn.140093da0
test eax, eax
jne 0x14007e1a2
mov dword [rdi + 0x20], 0x5ad32fd5
xor dword [rdi + 0x20], 0x2ab8da1b
xor dword [rdi + 0x20], 0x706bf5ca
movzx ecx, byte [rbx]
cmp cl, 0x2e
jne 0x14007e271
movsx ecx, byte [rbx + 1]
call fcn.140093da0
test eax, eax
je 0x14007e1a2
movzx eax, byte [rbx + 2]
nop
add rbx, 0x45537941
sub rbx, 0x4553793f
test al, al
je 0x14007e1a2
movsx ecx, al
call fcn.140093da0
test eax, eax
je 0x14007e252
movzx eax, byte [rbx + 1]
inc rbx
test al, al
jne 0x14007e21d
xor eax, eax
mov rbx, qword [rsp + 0x98]
neg rsp
add rsp, 0xffffffffffffff80
neg rsp
pop rdi
ret
mov dword [rdi + 0x20], 0x6fe80dd1
sub dword [rdi + 0x20], 0x4b447f32
xor dword [rdi + 0x20], 0x33887ff9
xor dword [rdi + 0x20], 0x172bf163
movzx ecx, byte [rbx]
cmp cl, 0x65
je 0x14007e283
cmp cl, 0x45
jne 0x14007e31a
movzx eax, byte [rbx + 1]
inc rbx
cmp al, 0x2d
je 0x14007e29a
cmp al, 0x2b
jne 0x14007e2a1
movzx eax, byte [rbx + 1]
inc rbx
movsx ecx, al
call fcn.140093da0
test eax, eax
je 0x14007e1a2
movzx eax, byte [rbx + 1]
inc rbx
test al, al
je 0x14007e1a2
movsx ecx, al
call fcn.140093da0
test eax, eax
je 0x14007e2f2
movzx eax, byte [rbx + 1]
inc rbx
test al, al
jne 0x14007e2c0
xor eax, eax
mov rbx, qword [rsp + 0x98]
add rsp, 0x80
pop rdi
ret
test rbx, rbx
je 0x14007e1a2
mov dword [rdi + 0x20], 0x36c41aca
sub dword [rdi + 0x20], 0x3c8b223
xor dword [rdi + 0x20], 0x38a2d365
sub dword [rdi + 0x20], 0xa59bbbd
movzx ecx, byte [rbx]
call fcn.14007dee0
test al, al
je 0x14007e1a2
cmp dword [rdi + 0x20], 4
jne 0x14007e539
mov r8, qword [rdi + 0x10]
xor edi, edi
movdqa xmm0, xmmword [0x14000b9b0]
movdqu xmmword [rsp + 0x33], xmm0
mov dword [rsp + 0x43], 0x1ba11284
add dword [rsp + 0x43], 0x185f53ac
xor dword [rsp + 0x43], 0x3c724b77
movzx r9d, byte [r8]
mov qword [rsp + 0x90], rdi
mov rax, qword [rsp + 0x90]
nop dword [rax]
mov rcx, qword [rsp + 0x90]
mov edx, 0x775fa364
sub edx, 0x6dda5c49
add edx, 0xb725115
xor edx, 0x24b58d42
mov rax, qword [rsp + 0x90]
and cl, 3
shl cl, 3
shr edx, cl
xor dl, byte [rsp + rax + 0x33]
mov rax, qword [rsp + 0x90]
mov byte [rsp + rax + 0x60], dl
mov rax, qword [rsp + 0x90]
inc rax
mov qword [rsp + 0x90], rax
mov rax, qword [rsp + 0x90]
cmp rax, 0x14
jb 0x14007e378
movdqa xmm0, xmmword [0x14000b9a0]
movdqu xmmword [rsp + 0x20], xmm0
mov byte [rsp + 0x74], dil
mov word [rsp + 0x30], 0x1fd9
add word [rsp + 0x30], 0x263d
sub word [rsp + 0x30], 0x20cc
mov byte [rsp + 0x32], 0x60
sub byte [rsp + 0x32], 0xb
xor byte [rsp + 0x32], 0x5b
add byte [rsp + 0x32], 0x67
mov qword [rsp + 0x90], rdi
mov rax, qword [rsp + 0x90]
nop dword [rax]
mov rcx, qword [rsp + 0x90]
mov edx, 0x519f61d6
sub edx, 0x96750df
xor edx, 0x787a0585
mov rax, qword [rsp + 0x90]
and cl, 3
shl cl, 3
shr edx, cl
xor dl, byte [rsp + rax + 0x20]
mov rax, qword [rsp + 0x90]
mov byte [rsp + rax + 0x48], dl
mov rax, qword [rsp + 0x90]
inc rax
mov qword [rsp + 0x90], rax
mov rax, qword [rsp + 0x90]
cmp rax, 0x13
jb 0x14007e42b
cmp r9b, 0x2d
mov byte [rsp + 0x5b], dil
mov eax, ebx
sete dil
sub eax, r8d
neg edi
add edi, 0xffffffed
neg edi
cmp eax, edi
ja 0x14007e558
jne 0x14007e4fb
movzx edi, byte [rbx]
lea rax, [rsp + 0x48]
cmp r9b, 0x2d
pushf
mov byte [rbx], 0x61
xor byte [rbx], 0x65
sub byte [rbx], 4
popf
lea rcx, [rsp + 0x60]
cmove rax, rcx
sub r8, rax
movzx edx, byte [rax]
movzx ecx, byte [rax + r8]
sub edx, ecx
jne 0x14007e4f0
inc rax
test ecx, ecx
jne 0x14007e4d5
test edx, edx
js 0x14007e558
mov byte [rbx], dil
xor eax, eax
lea rdi, [rsp + 0x48]
mov ecx, 0x9913c71
add ecx, 0x727ae62a
sub ecx, 0x7b87c00
sub ecx, 0x7453a688
rep stosb byte [rdi], al
lea rdi, [rsp + 0x60]
mov ecx, 0x7052e713
xor ecx, 0x620b2c0b
sub ecx, 0x4df1239
sub ecx, 0xd7ab8cb
rep stosb byte [rdi], al
mov rcx, rbx
mov rbx, qword [rsp + 0x98]
sub rsp, 0x22ae9784
add rsp, 0x22ae9804
pop rdi
jmp fcn.14007ed40
mov rbx, qword [rsp + 0x98]
lea rdi, [rsp + 0x48]
xor eax, eax
mov ecx, 0x507f3711
xor ecx, 0x582a9c6c
add ecx, 0x871c621
sub ecx, 0x10c7718b
rep stosb byte [rdi], al
lea rdi, [rsp + 0x60]
mov ecx, 0x312dbeb3
xor ecx, 0x3be81023
add ecx, 0x736b80ad
sub ecx, 0x7e312f29
rep stosb byte [rdi], al
neg rsp
add rsp, 0xffffffffffffff80
neg rsp
pop rdi
ret