Function at 0x1400f7c30
Capabilities:
Hash data using sha512

Disassembly:
push r14
push rsi
push rdi
push rbx
sub rsp, 0x3f8
movaps xmmword [rsp + 0x3e0], xmm6
mov rsi, rcx
movups xmm0, xmmword [0x140262948]
movups xmmword [rsp + 0x1f8], xmm0
movups xmm0, xmmword [0x140262938]
movups xmmword [rsp + 0x1e8], xmm0
movups xmm0, xmmword [0x140262928]
movups xmmword [rsp + 0x1d8], xmm0
movups xmm0, xmmword [0x140262918]
movups xmmword [rsp + 0x1c8], xmm0
lea rax, [0x1402628e8]
xorps xmm0, xmm0
movups xmmword [rsp + 0x210], xmm0
movups xmmword [rsp + 0x220], xmm0
movups xmmword [rsp + 0x230], xmm0
movups xmmword [rsp + 0x240], xmm0
movups xmmword [rsp + 0x250], xmm0
movups xmmword [rsp + 0x260], xmm0
movups xmmword [rsp + 0x270], xmm0
movups xmmword [rsp + 0x280], xmm0
mov qword [rsp + 0x1c0], rax
mov qword [rsp + 0x208], 0
mov qword [rsp + 0x290], 0
lea rdi, [rsp + 0x1c0]
mov r8d, 0x20
mov rcx, rdi
call fcn.1400f6d70
lea rcx, [rsp + 0x70]
mov r8d, 0xd8
mov rdx, rdi
call sub.msvcrt.dll_memcpy
mov rax, qword [rsp + 0x70]
mov r9, qword [rax + 0x20]
movups xmm0, xmmword [rsp + 0x200]
movaps xmmword [rsp + 0x1b0], xmm0
movups xmm0, xmmword [rsp + 0x1c0]
movups xmm1, xmmword [rsp + 0x1d0]
movups xmm2, xmmword [rsp + 0x1e0]
movups xmm3, xmmword [rsp + 0x1f0]
movaps xmmword [rsp + 0x1a0], xmm3
movaps xmmword [rsp + 0x190], xmm2
movaps xmmword [rsp + 0x180], xmm1
movaps xmmword [rsp + 0x170], xmm0
cmp r9, 0x81
jae 0x1400f8033
lea r8, [rsp + 0xc0]
mov rax, qword [rsp + 0x140]
mov qword [rsp + 0x20], rax
lea rcx, [rsp + 0x2f8]
lea rdx, [rsp + 0x170]
call fcn.1400f7070
mov rax, qword [rsp + 0x2f8]
mov rdi, qword [rax + 0x10]
cmp rdi, 0x41
jae 0x1400f8047
cmp rdi, 0x1f
jbe 0x1400f805b
lea rax, [rsp + 0x300]
movups xmm0, xmmword [rax]
movups xmm1, xmmword [rax + 0x10]
movaps xmmword [rsp + 0x80], xmm1
movaps xmmword [rsp + 0x70], xmm0
lea rcx, [rsp + 0x70]
call fcn.1401f4490
movaps xmm0, xmmword [rsp + 0x70]
movaps xmm1, xmmword [rsp + 0x80]
movaps xmmword [rsp + 0x60], xmm1
movaps xmmword [rsp + 0x50], xmm0
movzx eax, byte [0x1402f31d0]
cmp al, 2
jne 0x1400f8029
xorps xmm6, xmm6
movaps xmmword [rsp + 0x100], xmm6
movaps xmmword [rsp + 0xf0], xmm6
movaps xmmword [rsp + 0xe0], xmm6
movaps xmmword [rsp + 0xd0], xmm6
movaps xmmword [rsp + 0xc0], xmm6
movaps xmmword [rsp + 0xb0], xmm6
movaps xmmword [rsp + 0xa0], xmm6
movaps xmmword [rsp + 0x90], xmm6
movaps xmmword [rsp + 0x80], xmm6
movaps xmmword [rsp + 0x70], xmm6
lea rbx, [rsp + 0x70]
lea rdx, [rsp + 0x50]
mov rcx, rbx
xor r8d, r8d
call fcn.1401f0af0
lea rcx, [rsp + 0x340]
mov r8d, 0xa0
mov rdx, rbx
call sub.msvcrt.dll_memcpy
movaps xmm0, xmmword [rsp + 0x50]
movaps xmm1, xmmword [rsp + 0x60]
movaps xmmword [rsp + 0x160], xmm1
movaps xmmword [rsp + 0x150], xmm0
cmp rdi, 0x40
jne 0x1400f8098
movups xmm0, xmmword [rsp + 0x320]
movups xmm1, xmmword [rsp + 0x330]
movups xmmword [rsi + 0x30], xmm1
movups xmmword [rsi + 0x20], xmm0
mov rax, qword [rsp + 0x388]
mov qword [rsp + 0x2c0], rax
movups xmm0, xmmword [rsp + 0x368]
movups xmm1, xmmword [rsp + 0x378]
movaps xmmword [rsp + 0x2b0], xmm1
movaps xmmword [rsp + 0x2a0], xmm0
mov rax, qword [rsp + 0x3b0]
mov qword [rsp + 0x2f0], rax
movups xmm0, xmmword [rsp + 0x3a0]
movaps xmmword [rsp + 0x2e0], xmm0
movups xmm0, xmmword [rsp + 0x390]
movaps xmmword [rsp + 0x2d0], xmm0
movaps xmmword [rsp + 0x40], xmm6
movaps xmmword [rsp + 0x30], xmm6
movaps xmmword [rsp + 0x180], xmm6
movaps xmmword [rsp + 0x170], xmm6
mov qword [rsp + 0x190], 0
lea rdi, [rsp + 0x170]
lea rdx, [rsp + 0x2d0]
mov rcx, rdi
call fcn.1401eb730
movaps xmmword [rsp + 0x1d0], xmm6
movaps xmmword [rsp + 0x1c0], xmm6
mov qword [rsp + 0x1e0], 0
lea rbx, [rsp + 0x1c0]
lea rdx, [rsp + 0x340]
mov rcx, rbx
mov r8, rdi
call fcn.1401eb7f0
movaps xmmword [rsp + 0x80], xmm6
movaps xmmword [rsp + 0x70], xmm6
mov qword [rsp + 0x90], 0
lea r14, [rsp + 0x70]
lea rdx, [rsp + 0x2a0]
mov rcx, r14
mov r8, rdi
call fcn.1401eb7f0
lea rcx, [rsp + 0x30]
mov rdx, r14
call fcn.1401ebb60
mov rcx, rbx
call fcn.1401eb770
shl al, 7
xor byte [rsp + 0x4f], al
movaps xmm0, xmmword [rsp + 0x40]
movups xmmword [rsi + 0x50], xmm0
movaps xmm0, xmmword [rsp + 0x30]
movups xmmword [rsi + 0x40], xmm0
movaps xmm0, xmmword [rsp + 0x150]
movaps xmm1, xmmword [rsp + 0x160]
movups xmmword [rsi + 0x10], xmm1
movups xmmword [rsi], xmm0
movaps xmm6, xmmword [rsp + 0x3e0]
add rsp, 0x3f8
pop rbx
pop rdi
pop rsi
pop r14
ret
call fcn.140108930
jmp 0x1400f7e12
lea r8, str._home_rifat_.cargo_registry_src_index.crates.io_6f17d22bba15001f_ring_0.17.8_src_digest.rs
mov edx, pe_nt_image_headers64
mov rcx, r9
call fcn.14002df50
lea r8, str._home_rifat_.cargo_registry_src_index.crates.io_6f17d22bba15001f_ring_0.17.8_src_digest.rs
mov edx, 0x40
mov rcx, rdi
call fcn.14002df50
lea rax, str.mid___len
mov qword [rsp + 0x70], rax
mov qword [rsp + 0x78], 1
mov qword [rsp + 0x80], 8
xorps xmm0, xmm0
movups xmmword [rsp + 0x88], xmm0
lea rdx, str._home_rifat_.cargo_registry_src_index.crates.io_6f17d22bba15001f_ring_0.17.8_src_ec_curve25519_ed25519_signing.rsInconsistentComponents
lea rcx, [rsp + 0x70]
call fcn.14002d580
lea rax, str._home_rifat_.cargo_registry_src_index.crates.io_6f17d22bba15001f_ring_0.17.8_src_ec_curve25519_ed25519_signing.rsInconsistentComponents
mov qword [rsp + 0x20], rax
lea rcx, str.called__Result::unwrap____on_an__Err__value
lea r9, [0x140261dc0]
lea r8, [rsp + 0x70]
mov edx, 0x2b
call fcn.140033850
int3