Function at 0x1400d7d50
Capabilities:
Encode data using xor

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x68
mov rsi, rcx
mov r14d, 0xf
test r8, r8
je 0x1400d7eb5
cmp byte [rdx], 0
je 0x1400d7ebe
lea r13, [r8 + 7]
mov r15d, 8
mov r10d, 8
cmp r13, 8
jb 0x1400d7dcc
test r13, r13
js 0x1400d8341
mov r12, rdx
mov rbp, r8
mov rdi, r9
mov rbx, r13
and rbx, 0xfffffffffffffff8
mov ecx, 8
mov rdx, rbx
call fcn.1401685e0
test rax, rax
je 0x1400d8346
mov r10, rax
mov r9, rdi
mov r8, rbp
mov rdx, r12
mov rcx, r13
shr rcx, 3
xor r12d, r12d
mov eax, r8d
and eax, 7
setne r12b
cmovne r15, rax
mov rax, r8
shr rax, 3
add r12, rax
mov qword [rsp + 0x30], rcx
cmp r12, rcx
ja 0x1400d7ef2
cmp r13, 8
jb 0x1400d7e38
mov rax, r13
and rax, 0xfffffffffffffff8
mov rcx, r10
mov qword [rsp + 0x38], rdx
xor edx, edx
mov rbp, r8
mov r8, rax
mov rbx, r9
mov rdi, rsi
mov rsi, r10
call sub.msvcrt.dll_memset
mov r10, rsi
mov rsi, rdi
mov rdx, qword [rsp + 0x38]
mov r8, rbp
mov r9, rbx
test r12, r12
je 0x1400d7ec7
mov rbx, r10
lea rcx, [r12 - 1]
cmp rcx, qword [rsp + 0x30]
jae 0x1400d8247
mov cl, 1
xor eax, eax
xor r10d, r10d
cmp rax, r8
jae 0x1400d7ea6
lea r11, [r10 + 1]
dec r15
xor ebp, ebp
nop dword [rax]
movzx edi, byte [rdx + rax]
inc rax
shl rbp, 8
or rbp, rdi
sub r15, 1
jb 0x1400d7e8b
cmp r8, rax
jne 0x1400d7e70
jmp 0x1400d7ea6
not r10
add r10, r12
mov qword [rbx + r10*8], rbp
mov r15d, 8
mov r10, r11
cmp r11, r12
setb cl
jne 0x1400d7e5b
test cl, 1
mov r10, rbx
jne 0x1400d7ef2
cmp rax, r8
je 0x1400d7ece
jmp 0x1400d7ef2
lea rbx, [0x1401fbdb7]
jmp 0x1400d7f10
lea rbx, [0x1401fbdc6]
jmp 0x1400d7f10
xor eax, eax
cmp rax, r8
jne 0x1400d7ef2
cmp r13, 0x407
jbe 0x1400d7ee6
mov r14d, 8
lea rbx, [0x1401fbe5a]
jmp 0x1400d7eff
cmp r13, 0x20
jae 0x1400d7f30
mov r14d, 0xf
lea rbx, [0x1401fbdb7]
cmp r13, 8
jb 0x1400d7f10
mov rcx, qword [0x140279280]
xor edx, edx
mov r8, r10
call fcn.1401abdbc
mov qword [rsi + 8], rbx
mov qword [rsi + 0x10], r14
mov qword [rsi], 0
add rsp, 0x68
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
mov rbp, r9
mov rcx, r10
mov rbx, qword [rsp + 0x30]
mov rdx, rbx
mov rdi, r10
call fcn.1401bbf50
test rax, rax
je 0x1400d7f5d
mov r14d, 0x10
lea rbx, [0x1401fbe4a]
mov r10, rdi
jmp 0x1400d7eff
mov edx, 3
mov rcx, rdi
mov r8, rbx
call fcn.1401bc0f0
test rax, rax
je 0x1400d7f87
mov r14d, 0xf
lea rbx, [0x1401fbdb7]
mov r10, rdi
jmp 0x1400d7eff
mov r14, qword [rsp + 0xd8]
mov rcx, qword [rdi]
call fcn.1401be550
mov r12, rax
mov r15, rdi
mov rcx, rdi
mov rdx, rbx
call fcn.1400d84d0
cmp r14, 0x400
jb 0x1400d8353
mov rbx, rax
shr eax, 2
mov ecx, ebx
shr ecx, 1
or ecx, eax
or ecx, ebx
and ecx, 1
lea rax, [rbx + rcx*8]
and rax, 0xfffffffffffffff8
cmp rax, r14
jae 0x1400d7fdf
lea rbx, str.TooSmallassertion_failed:_digest_alg.block_len_____digest_alg.output_len___home_dreamingcodes_.cargo_registry_src_index.crates.io_6f17d22bba15001f_ring_0.17.8_src_hkdf.rs
mov r8, r15
jmp 0x1400d7ff3
cmp rbx, qword [rsp + 0xe0]
mov r8, r15
jbe 0x1400d800c
lea rbx, [0x1401fbe5a]
mov rcx, qword [0x140279280]
xor edx, edx
call fcn.1401abdbc
mov r14d, 8
jmp 0x1400d7f10
mov qword [rsp + 0x40], r8
mov r14, qword [rsp + 0x30]
mov qword [rsp + 0x48], r14
mov qword [rsp + 0x38], r12
mov qword [rsp + 0x50], r12
mov qword [rsp + 0x58], 0
mov qword [rsp + 0x60], rbx
and r13d, 0x7f8
mov ecx, 8
mov rdx, r13
call fcn.1401685e0
test rax, rax
je 0x1400d836b
mov r12, rax
mov eax, r14d
and eax, 0xfc
xor ecx, ecx
pcmpeqd xmm0, xmm0
mov r9, r15
movdqu xmm1, xmmword [r9 + rcx*8]
movdqu xmm2, xmmword [r9 + rcx*8 + 0x10]
pxor xmm1, xmm0
pxor xmm2, xmm0
movdqu xmmword [r12 + rcx*8], xmm1
movdqu xmmword [r12 + rcx*8 + 0x10], xmm2
add rcx, 4
cmp rax, rcx
jne 0x1400d8064
cmp r14, rax
je 0x1400d80ab
mov rcx, qword [r9 + rax*8]
not rcx
mov qword [r12 + rax*8], rcx
lea rcx, [rax + 1]
mov rax, rcx
cmp r14, rcx
jne 0x1400d8094
mov r13, r14
shl r13, 6
or byte [r12], 1
sub r13, rbx
je 0x1400d80f0
mov rax, qword [r12 + r14*8 - 8]
mov ecx, r13d
shl rax, cl
shr rax, cl
mov qword [r12 + r14*8 - 8], rax
cmp r13, 1
adc r13, 0
mov rcx, r12
mov rdx, r12
mov r8, r9
mov r9, r14
call fcn.1401bc2e0
mov r9, r15
dec r13
jne 0x1400d80d7
cmp r14, 1
mov rdi, r14
adc rdi, 0
mov r13, r14
mov rcx, r12
mov rdx, r12
mov r8, r9
mov r9, r13
call fcn.1401bc2e0
mov r9, r15
dec rdi
jne 0x1400d80fe
mov qword [rsp + 0x28], r13
lea r14, [rsp + 0x50]
mov qword [rsp + 0x20], r14
mov rcx, r12
mov rdx, r12
mov r8, r12
mov rdi, r9
call fcn.1401911c0
mov qword [rsp + 0x28], r13
mov qword [rsp + 0x20], r14
mov rcx, r12
mov rdx, r12
mov r8, r12
mov r9, rdi
call fcn.1401911c0
mov qword [rsp + 0x28], r13
mov qword [rsp + 0x20], r14
mov rcx, r12
mov rdx, r12
mov r8, r12
mov r9, rdi
call fcn.1401911c0
mov qword [rsp + 0x28], r13
mov qword [rsp + 0x20], r14
mov rcx, r12
mov rdx, r12
mov r8, r12
mov r9, rdi
call fcn.1401911c0
mov qword [rsp + 0x28], r13
mov qword [rsp + 0x20], r14
mov rcx, r12
mov rdx, r12
mov r8, r12
mov r9, rdi
call fcn.1401911c0
mov qword [rsp + 0x28], r13
mov qword [rsp + 0x20], r14
mov rcx, r12
mov rdx, r12
mov r8, r12
mov r9, rdi
call fcn.1401911c0
lea rax, [0x1401fbe5a]
mov rdi, qword [rsp + 0xd0]
cmp rdi, 5
jbe 0x1400d81de
mov r10, rax
mov r9d, 8
jmp 0x1400d8211
mov r9d, 0xf
lea r10, [0x1401fbdc6]
test rdi, rdi
je 0x1400d8211
cmp byte [rbp], 0
mov r8, r15
je 0x1400d8214
mov rcx, rbp
mov r11, rsi
movzx edx, byte [rbp]
cmp rdi, 1
jne 0x1400d826a
mov rcx, rdx
jmp 0x1400d82b8
mov r8, r15
mov qword [rsi + 8], r10
mov qword [rsi + 0x10], r9
mov qword [rsi], 0
mov rcx, qword [0x140279280]
xor edx, edx
call fcn.1401abdbc
mov rcx, qword [0x140279280]
xor edx, edx
mov r8, r12
call fcn.1401abdbc
jmp 0x1400d7f1f
dec r15
dec r8
cmp r15, r8
mov r10, rbx
ja 0x1400d7ef2
lea r8, str._home_dreamingcodes_.cargo_registry_src_index.crates.io_6f17d22bba15001f_ring_0.17.8_src_limb.rs
mov rdx, qword [rsp + 0x30]
call fcn.140046290
movzx r8d, byte [rcx + 1]
shl edx, 8
mov rcx, rdx
or rcx, r8
cmp rdi, 2
jne 0x1400d8283
mov rdx, r8
jmp 0x1400d82b8
movzx edx, byte [rbp + 2]
shl ecx, 8
or rcx, rdx
cmp qword [rsp + 0xd0], 3
je 0x1400d82b8
movzx edx, byte [rbp + 3]
shl ecx, 8
or rcx, rdx
cmp qword [rsp + 0xd0], 4
je 0x1400d82b8
movzx edx, byte [rbp + 4]
shl rcx, 8
or rcx, rdx
lea r10, str.TooSmallassertion_failed:_digest_alg.block_len_____digest_alg.output_len___home_dreamingcodes_.cargo_registry_src_index.crates.io_6f17d22bba15001f_ring_0.17.8_src_hkdf.rs
test rcx, rcx
je 0x1400d82fe
cmp rcx, qword [rsp + 0xe8]
jb 0x1400d82fe
mov r8, rcx
shr r8, 0x21
mov r10, rax
mov r9d, 8
mov r8, r15
mov rsi, r11
jne 0x1400d8214
test dl, 1
jne 0x1400d830f
mov r9d, 0x10
lea r10, [0x1401fbe4a]
jmp 0x1400d8304
mov r9d, 8
mov r8, r15
mov rsi, r11
jmp 0x1400d8214
mov qword [r11], r15
mov rax, qword [rsp + 0x30]
mov qword [r11 + 8], rax
mov rdx, qword [rsp + 0x38]
mov qword [r11 + 0x10], rdx
mov qword [r11 + 0x18], 0
mov qword [r11 + 0x20], rbx
mov qword [r11 + 0x28], r12
mov qword [r11 + 0x30], rax
mov qword [r11 + 0x38], rcx
jmp 0x1400d7f1f
call fcn.1400418d0
mov ecx, 8
mov rdx, rbx
call fcn.1400418b0
lea rcx, [0x1401fe0f6]
lea r8, str._home_dreamingcodes_.cargo_registry_src_index.crates.io_6f17d22bba15001f_ring_0.17.8_src_rsa_public_modulus.rsassertion_failed:_min_bits___MIN_BITS
mov edx, 0x26
call fcn.140046f60
mov ecx, 8
mov rdx, r13
call fcn.1400418b0
int3