Function at 0x140073c20
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 0x10], rbx
push rdi
sub rsp, 0x80
movzx eax, byte [rcx]
mov rdi, rdx
mov rbx, rcx
cmp al, 0x2d
jne 0x140073c45
movzx eax, byte [rbx + 1]
inc rbx
movsx ecx, al
call fcn.14009afc0
test eax, eax
je 0x140073c8f
cmp byte [rbx], 0x30
je 0x140073ca2
movzx eax, byte [rbx]
test al, al
je 0x140073c8f
nop dword [rax]
movsx ecx, al
call fcn.14009afc0
test eax, eax
je 0x140073cb6
movzx eax, byte [rbx + 1]
inc rbx
test al, al
jne 0x140073c70
xor eax, eax
mov rbx, qword [rsp + 0x98]
add rsp, 0x80
pop rdi
ret
movsx ecx, byte [rbx + 1]
inc rbx
call fcn.14009afc0
test eax, eax
jne 0x140073c8f
mov dword [rdi + 0x20], 0x7e2df6bb
sub dword [rdi + 0x20], 0x35221d0c
xor dword [rdi + 0x20], 0x490bd9ab
movzx ecx, byte [rbx]
cmp cl, 0x2e
jne 0x140073d51
movsx ecx, byte [rbx + 1]
call fcn.14009afc0
test eax, eax
je 0x140073c8f
movzx eax, byte [rbx + 2]
nop
sub rbx, 0xfd27dc6
add rbx, 0xfd27dc8
test al, al
je 0x140073c8f
movsx ecx, al
call fcn.14009afc0
test eax, eax
je 0x140073d32
movzx eax, byte [rbx + 1]
inc rbx
test al, al
jne 0x140073d03
xor eax, eax
mov rbx, qword [rsp + 0x98]
sub rsp, 0xffffffffffffff80
pop rdi
ret
mov dword [rdi + 0x20], 0x231a941e
add dword [rdi + 0x20], 0xa466902
xor dword [rdi + 0x20], 0x4fc4eb0e
xor dword [rdi + 0x20], 0x62a4162b
movzx ecx, byte [rbx]
cmp cl, 0x65
je 0x140073d63
cmp cl, 0x45
jne 0x140073e01
movzx eax, byte [rbx + 1]
inc rbx
cmp al, 0x2d
je 0x140073d7a
cmp al, 0x2b
jne 0x140073d81
movzx eax, byte [rbx + 1]
inc rbx
movsx ecx, al
call fcn.14009afc0
test eax, eax
je 0x140073c8f
movzx eax, byte [rbx + 1]
inc rbx
test al, al
je 0x140073c8f
movsx ecx, al
call fcn.14009afc0
test eax, eax
je 0x140073dd9
movzx eax, byte [rbx + 1]
inc rbx
test al, al
jne 0x140073da0
xor eax, eax
mov rbx, qword [rsp + 0x98]
add rsp, 0x5387409f
sub rsp, 0x5387401f
pop rdi
ret
test rbx, rbx
je 0x140073c8f
mov dword [rdi + 0x20], 0x17dba78b
add dword [rdi + 0x20], 0x268a7da0
add dword [rdi + 0x20], 0x6d46d1b
sub dword [rdi + 0x20], 0x453a9241
movzx ecx, byte [rbx]
call fcn.1400739d0
test al, al
je 0x140073c8f
cmp dword [rdi + 0x20], 4
jne 0x140074020
mov r8, qword [rdi + 0x10]
xor edi, edi
movdqa xmm0, xmmword [0x140003d90]
movdqu xmmword [rsp + 0x33], xmm0
mov dword [rsp + 0x43], 0x7c821d1
xor dword [rsp + 0x43], 0x70990933
sub dword [rsp + 0x43], 0x54d0c0c0
movzx r9d, byte [r8]
mov qword [rsp + 0x90], rdi
mov rax, qword [rsp + 0x90]
nop dword [rax]
mov rcx, qword [rsp + 0x90]
mov edx, 0x595df850
sub edx, 0x2bc2115
xor edx, 0x4387baa5
xor edx, 0xf963d89
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 0x140073e5f
movdqa xmm0, xmmword [0x140003da0]
movdqu xmmword [rsp + 0x20], xmm0
mov byte [rsp + 0x74], dil
mov word [rsp + 0x30], 0x67d7
sub word [rsp + 0x30], 0x684
sub word [rsp + 0x30], 0x124
mov byte [rsp + 0x32], 0x69
sub byte [rsp + 0x32], 0x42
add byte [rsp + 0x32], 0x13
add byte [rsp + 0x32], 0x4d
mov qword [rsp + 0x90], rdi
mov rax, qword [rsp + 0x90]
nop dword [rax]
mov rcx, qword [rsp + 0x90]
mov edx, 0x4935bac8
xor edx, 0x4ce30343
xor edx, 0x1f66e99c
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 0x140073f12
cmp r9b, 0x2d
mov byte [rsp + 0x5b], dil
mov eax, ebx
sete dil
sub eax, r8d
nop
add edi, 0x646d2ced
sub edi, 0x646d2cda
cmp eax, edi
ja 0x140074038
jne 0x140073fe8
movzx edi, byte [rbx]
lea rax, [rsp + 0x48]
cmp r9b, 0x2d
pushf
mov byte [rbx], 0x7d
xor byte [rbx], 0x2e
xor byte [rbx], 0x53
popf
lea rcx, [rsp + 0x60]
cmove rax, rcx
sub r8, rax
movzx edx, byte [rax]
movzx ecx, byte [rax + r8]
sub edx, ecx
jne 0x140073fdd
inc rax
test ecx, ecx
jne 0x140073fc2
test edx, edx
js 0x140074038
mov byte [rbx], dil
xor eax, eax
lea rdi, [rsp + 0x48]
mov ecx, 0x44e3d16e
sub ecx, 0x3e42790
add ecx, 0x3b4e9719
xor ecx, 0x7c4e40e4
rep stosb byte [rdi], al
lea rdi, [rsp + 0x60]
mov ecx, 0x53bd5736
xor ecx, 0x85899b0
sub ecx, 0x5be5ce72
rep stosb byte [rdi], al
mov rcx, rbx
mov rbx, qword [rsp + 0x98]
add rsp, 0x80
pop rdi
jmp fcn.140074860
mov rbx, qword [rsp + 0x98]
lea rdi, [rsp + 0x48]
xor eax, eax
mov ecx, 0x2142705a
xor ecx, 0x4c99e33b
xor ecx, 0x64150bfe
xor ecx, 0x9ce988c
rep stosb byte [rdi], al
lea rdi, [rsp + 0x60]
mov ecx, 0x795aad26
sub ecx, 0x606ae19d
add ecx, 0x3ce35d92
xor ecx, 0x55d3290f
rep stosb byte [rdi], al
add rsp, 0x5f18a0fe
sub rsp, 0x5f18a07e
pop rdi
ret