Function at 0x14007e06c
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 8], rbx
xchg rdx, rbp
mov qword [rsp + 0x10], rdx
xchg rdx, rbp
mov qword [rsp + 0x18], rsi
push rdi
nop
mov qword [rsp - 8], r12
sub rsp, 8
nop
sub rsp, 8
mov qword [rsp], r14
sub rsp, 0x50
mov dword [rsp - 0x40], 0x2b01ac85
mov ebx, dword [rcx + 0x2c]
xchg r12, rsi
mov r12, rcx
xchg r12, rsi
mov ecx, ebx
xchg rdx, r14
mov rdx, r14
xchg r14, rdx
call fcn.140098350
xor ebx, 0x38171a3c
xchg rdi, rdi
xchg rdi, rax
mov rax, rdi
xchg rdi, rax
movabs r12, 0x42a81dbb56cb3aa1
add r12, 0x219c439f
sub r12, 0x2e60e18f
sub r12, 0x2b127f21
xor r12, 0x674917ff
mov dword [r14 + 8], ebx
xchg rdi, rdi
xor rdi, r12
xchg rdi, r12
mov qword [r14], r12
xchg rdi, r12
cmp byte [rsi + 0x34], 0
jne 0x14007e3e8
mov dword [rsp - 0x28], ecx
mov eax, dword [rsi + 8]
cmp eax, 0x927526e
je 0x14007e20c
cmp eax, 0xa27497e
mov dword [rsp - 0x38], 0x66da002f
je 0x14007e1be
cmp eax, 0xb27497e
je 0x14007e155
cmp eax, 0x1951497e
mov rcx, rcx
je 0x14007e20c
xor edx, edx
jmp 0x14007e271
xor edx, edx
xchg rdx, rdx
lea rdi, [0x140000000]
mov ecx, edx
mov eax, 0x75cc09e2
sub eax, 0x28663827
sub eax, 0x2fc3de92
add eax, 0x2f86bf8f
add eax, 0x293fb71c
rol eax, cl
xor al, byte [rdx + rdi + 0x1940]
mov dword [rsp - 0x40], edi
mov byte [rsp + rdx + 0x30], al
inc rdx
cmp rdx, 0x20
jb 0x14007e161
mov dword [rsp - 0x3c], 0x18220189
mov edx, 0x3c5e0898
xor edx, 0x6959d1c4
xor edx, 0x61c7c481
sub edx, 0x34c01dd9
jmp 0x14007e271
xor edx, edx
lea rdi, [0x140000000]
mov ecx, edx
mov r12, r12
mov eax, 0x536ea65c
add eax, 0x21a34e1d
sub eax, 0x5a2f97cc
sub eax, 0x168e5796
xor eax, 0x723c6cc3
rol eax, cl
xor al, byte [rdx + rdi + 0x1930]
mov dword [rsp - 0x10], edx
mov byte [rsp + rdx + 0x30], al
inc rdx
cmp rdx, 0x10
jb 0x14007e1c7
mov dword [rsp - 0x10], ebx
jmp 0x14007e254
xor edx, edx
mov rdi, rdi
lea rdi, [0x140000000]
mov ecx, edx
mov eax, 0x55e864d9
sub eax, 0x2f62dc3d
add eax, 0x329059c9
sub eax, 0x43150e05
add eax, 0x60679574
rol eax, cl
mov dword [rsp - 0x2c], esp
xor al, byte [rdx + rdi + 0x1920]
mov byte [rsp + rdx + 0x30], al
inc rdx
xchg rsi, rsi
cmp rdx, 0x10
jb 0x14007e218
mov edx, 0x6d91a6e6
sub edx, 0x8ad267e
xor edx, 0x1e283da7
sub edx, 0x627b2a74
xor edx, 0x18519359
lea rcx, [rsp + 0x20]
mov dword [rsp - 0x34], 0x3942860
call fcn.14009304c
lea rdx, [rsp + 0x30]
lea rcx, [rsp + 0x20]
call fcn.140093760
mov dword [rsp - 0x3c], edi
mov rbp, qword [r14]
mov edi, dword [rsi + 0x3c]
xor rbp, r12
test edi, edi
mov dword [rsp - 0x44], 0x46f49493
je 0x14007e2be
neg edi
add edi, 0xfffffff9
neg edi
and edi, 0xfffffff8
jmp 0x14007e2c5
mov edi, dword [rsi + 0x2c]
mov dword [rsp - 0x38], edi
xor ebx, ebx
test edi, edi
je 0x14007e30f
mov edx, dword [rsi + 0xc]
mov dword [rsp - 0x1c], edi
lea rcx, [rsp + 0x20]
xor edx, 0x38171a3c
mov r8d, ebx
mov rbx, rbx
add edx, ebx
add r8, rbp
add rdx, qword [rsi]
mov r11, r11
call fcn.140093208
nop
add ebx, 0x1157726b
sub ebx, 0x11577263
cmp ebx, edi
jb 0x14007e2cf
mov rsi, rsi
lea rcx, [rsp + 0x20]
call fcn.140093188
xor eax, eax
xchg rcx, rcx
lea rdi, [rsp + 0x30]
cmp dword [rsi + 0x38], 1
lea ecx, [rax + 0x20]
rep stosb byte [rdi], al
mov dword [rsp - 0x24], 0x76a78d9
jne 0x14007e3bc
xchg rdi, rcx
mov rcx, qword [r14]
xchg rdi, rcx
mov ecx, dword [rsi + 0x3c]
xor rdi, r12
xchg rcx, rcx
call fcn.140098350
mov r8d, dword [rsi + 0x3c]
xchg rdx, rdi
mov rdi, rdx
xchg rdi, rdx
mov rcx, rax
mov r10, r10
mov rbx, rax
call fcn.1400989c0
mov r9d, dword [rsi + 0x2c]
xchg r12, rdi
mov rdx, r12
xchg r12, rdi
mov r8d, dword [rsi + 0x3c]
mov dword [rsp - 0x30], ebx
xchg r12, rcx
mov r12, rbx
xchg r12, rcx
call fcn.140096880
mov dword [rsp - 0x2c], 0x49b940a1
mov rcx, rbx
cmp eax, dword [rsi + 0x2c]
je 0x14007e3b7
mov dword [rsp - 0xc], 0x3bbe5573
call fcn.140098360
xor al, al
jmp 0x14007e415
call fcn.140098360
xchg rdx, rsp
mov rsp, r14
xchg rdx, rsp
xchg rsi, r14
mov rcx, r14
xchg rsi, r14
call fcn.14007f620
mov dword [rsp - 0x2c], 0x56b5afff
test al, al
jne 0x14007e40b
jmp 0x14007e3b0
mov edx, dword [rsi + 0xc]
mov r12, r12
xchg r10, rax
mov rcx, r10
xchg r10, rax
mov r8d, dword [rsi + 0x2c]
mov rsi, rsi
xor rdx, 0x38171a3c
add rdx, qword [rsi]
call fcn.1400989c0
mov al, 0x76
xor al, 0x41
sub al, 0x1b
add al, 0x46
sub al, 0x61
lea r11, [rsp + 0x50]
mov r15, r15
xchg rbx, rcx
mov rcx, qword [r11 + 0x20]
xchg rbx, rcx
xchg rsi, rbp
mov rsi, qword [r11 + 0x28]
xchg rsi, rbp
xchg rsi, r9
mov r9, qword [r11 + 0x30]
xchg r9, rsi
mov rsp, r11
mov dword [rsp - 0x20], ebp
nop
mov r14, qword [rsp]
add rsp, 8
nop
mov r12, qword [rsp]
add rsp, 8
nop
add rsp, 8
mov rdi, qword [rsp - 8]
ret