Function at 0x1400fdd20
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 0x18], rbx
mov qword [rsp + 0x20], rbp
mov byte [rsp + 0x10], dl
push rsi
push rdi
push r12
push r13
push r14
push r15
mov r11d, dword [rsp + 0x58]
mov r14, rcx
mov ecx, r11d
movzx edi, r8b
movzx r13d, r11b
movzx esi, r9w
mov eax, 0xd1b71759
mul r11d
mov eax, 0x10624dd3
mov ebx, edx
mul r11d
shr ebx, 0xd
shr edx, 6
imul eax, edx, 0x3e8
movzx r10d, bl
inc r10d
sub ecx, eax
mov eax, 0x51eb851f
mul ecx
mov eax, 0xcccccccd
mov r12d, edx
mul r11d
mov eax, 0x10624dd3
shr r12d, 5
shr edx, 3
movzx ecx, dl
movzx r9d, r12b
shl cl, 2
add dl, cl
imul ecx, ebx, 0x2710
add dl, dl
movzx ebx, bl
sub r13b, dl
mov edx, r11d
sub edx, ecx
mul edx
mov eax, 0xcccccccd
shr edx, 6
movzx r15d, dl
add r10d, r15d
mul r10d
shr edx, 3
lea eax, [rdx + rdx*4]
add eax, eax
sub r10d, eax
mov eax, 0xcccccccd
movzx edx, r10b
inc edx
add r9d, edx
mul r9d
mov eax, 0x51eb851f
shr edx, 3
lea ecx, [rdx + rdx*4]
mul r11d
add ecx, ecx
shr edx, 5
sub r9d, ecx
imul eax, edx, 0x64
movzx r8d, r9b
inc r8d
sub r11d, eax
mov eax, 0xcccccccd
mul r11d
mov r11d, edi
mov eax, 0xcccccccd
shr edx, 3
lea rdi, [0x14014e4c8]
and r11d, 0xf
movzx ebp, dl
add r8d, ebp
or r11, 0xc0
mul r8d
shl r11, 0xc
shr edx, 3
lea eax, [rdx + rdx*4]
add eax, eax
sub r8d, eax
mov eax, esi
and eax, 0xfff
or r11, rax
shl r11, 4
movzx eax, byte [rbx + rdi]
or r11, rax
movzx eax, r10b
shl r11, 4
movzx ecx, byte [rax + rdi]
or r11, rcx
movzx eax, r9b
shl r11, 4
movzx ecx, byte [rax + rdi]
mov eax, 0xcccccccd
or r11, rcx
movzx ecx, r8b
shl r11, 4
movzx edx, byte [rcx + rdi]
or r11, rdx
movzx edx, r8b
inc edx
shl r11, 4
movzx r8d, r13b
add r8d, edx
mul r8d
shr edx, 3
lea eax, [rdx + rdx*4]
add eax, eax
lea rdx, [rsp + 0x38]
sub r8d, eax
movzx eax, r8b
movzx ecx, byte [rax + rdi]
or r11, rcx
mov rax, r11
mov r9, r11
bswap rax
shr rax, 0x18
mov qword [rsp + 0x38], rax
xor eax, eax
lea r8d, [rax + 5]
movzx ecx, byte [rdx]
shl ecx, 8
xor ecx, eax
movzx eax, cx
bt eax, 0xf
jae 0x1400fdeeb
add eax, eax
xor eax, 0x1021
jmp 0x1400fdeed
add eax, eax
bt eax, 0xf
jae 0x1400fdefc
add eax, eax
xor eax, 0x1021
jmp 0x1400fdefe
add eax, eax
bt eax, 0xf
jae 0x1400fdf0d
add eax, eax
xor eax, 0x1021
jmp 0x1400fdf0f
add eax, eax
bt eax, 0xf
jae 0x1400fdf1e
add eax, eax
xor eax, 0x1021
jmp 0x1400fdf20
add eax, eax
bt eax, 0xf
jae 0x1400fdf2f
add eax, eax
xor eax, 0x1021
jmp 0x1400fdf31
add eax, eax
bt eax, 0xf
jae 0x1400fdf40
add eax, eax
xor eax, 0x1021
jmp 0x1400fdf42
add eax, eax
bt eax, 0xf
jae 0x1400fdf51
add eax, eax
xor eax, 0x1021
jmp 0x1400fdf53
add eax, eax
bt eax, 0xf
jae 0x1400fdf62
add eax, eax
xor eax, 0x1021
jmp 0x1400fdf64
add eax, eax
inc rdx
sub r8, 1
jne 0x1400fded1
movzx edx, al
shl r9, 0x10
shr dl, 4
movzx ecx, al
shl cl, 4
and r11b, 0xf
or cl, r11b
mov qword [rsp + 0x38], r9
mov byte [rsp + 0x38], cl
mov r8b, 1
mov rcx, qword [rsp + 0x38]
shr rcx, 0x14
xor cl, al
and cl, 0xf
xor cl, al
mov byte [rsp + 0x39], cl
mov rcx, qword [rsp + 0x38]
shr rcx, 0x18
xor dl, cl
movzx ecx, ax
and dl, 0xf
shr cx, 4
xor dl, cl
mov byte [rsp + 0x3a], dl
movzx edx, ax
mov rcx, qword [rsp + 0x38]
shr dx, 8
shr rcx, 0x1c
xor dl, cl
shr ax, 8
and dl, 0xf
xor dl, al
mov byte [rsp + 0x3b], dl
xor cl, cl
mov rdx, qword [rsp + 0x38]
nop dword [rax]
mov rax, rdx
shr rax, cl
inc cl
and al, 1
xor r8b, al
cmp cl, 0x38
jb 0x1400fdff0
movabs rax, 0xff00000000000000
or rdx, rax
movzx eax, r8b
add rdx, rdx
or rdx, rax
mov qword [rsp + 0x38], rdx
mov eax, dword [rsp + 0x38]
shr rdx, 0x20
cmp byte [rsp + 0x40], 0
mov dword [r14 + 4], edx
mov dword [r14 + 8], eax
je 0x1400fe0aa
shl ebp, 4
mov cl, 1
movzx eax, r13b
shl r15d, 4
mov edx, ebp
or rdx, rax
mov eax, r15d
shl rdx, 9
or rdx, rax
movzx eax, r12b
or rdx, rax
movabs rax, 0x712000000
shl rdx, 9
or rdx, rbx
shl rdx, 0x25
or rdx, rax
xor r8b, r8b
mov rax, rdx
shr rax, cl
inc cl
and al, 1
xor r8b, al
cmp cl, 0x40
jb 0x1400fe073
movzx eax, r8b
or rax, rdx
mov qword [rsp + 0x38], rax
shr rax, 0x20
mov dword [r14 + 0xc], eax
mov eax, dword [rsp + 0x38]
mov dword [r14 + 0x10], eax
mov dword [r14], 0x907f0082
jmp 0x1400fe0b1
mov dword [r14], 0x907f0042
mov rbx, qword [rsp + 0x48]
mov rbp, qword [rsp + 0x50]
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
ret