joyce8/EMBER2024-capa huggingface dataset:
Function at 0x1400609b0
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 0x18], rbx
mov qword [rsp + 0x20], rsi
push rdi
sub rsp, 0x30
mov rax, qword [0x1400df040]
xor rax, rsp
mov qword [rsp + 0x20], rax
mov r11, qword [rdx + 8]
lea rsi, [0x140000000]
mov eax, dword [rcx + 8]
mov rbx, rdx
mov rdi, rcx
test r11, r11
je 0x140060a34
mov r9, r11
nop word [rax + rax]
mov r8, qword [rbx]
mov r11, r9
test r8b, 7
je 0x140060a34
movzx ecx, byte [r8]
movzx edx, al
xor rdx, rcx
shr eax, 8
lea rcx, [r8 + 1]
mov qword [rsp], rcx
lea rcx, [r9 - 1]
mov qword [rsp + 8], rcx
movups xmm0, xmmword [rsp]
xor eax, dword [rsi + rdx*4 + 0xc2300]
movups xmmword [rbx], xmm0
mov r11, qword [rbx + 8]
mov r9, r11
test r11, r11
jne 0x1400609f0
cmp r11, 0x10
jb 0x140060b96
nop
mov r10, qword [rbx]
movups xmm1, xmmword [r10]
movd r8d, xmm1
movdqa xmm0, xmm1
psrldq xmm0, 4
movups xmmword [rsp + 0x10], xmm1
xor r8d, eax
mov eax, r8d
mov edx, r8d
shr eax, 0x10
movzx ecx, al
mov eax, r8d
shr eax, 8
shr rdx, 0x18
mov r9d, dword [rsi + rdx*4 + 0xc2300]
xor r9d, dword [rsi + rcx*4 + 0xc2700]
movzx ecx, al
movzx eax, r8b
xor r9d, dword [rsi + rcx*4 + 0xc2b00]
xor r9d, dword [rsi + rax*4 + 0xc2f00]
movd eax, xmm0
movdqa xmm0, xmm1
psrldq xmm0, 8
psrldq xmm1, 0xc
xor r9d, eax
mov eax, r9d
mov edx, r9d
shr eax, 0x10
movzx ecx, al
mov eax, r9d
shr eax, 8
shr rdx, 0x18
mov r8d, dword [rsi + rdx*4 + 0xc2300]
xor r8d, dword [rsi + rcx*4 + 0xc2700]
movzx ecx, al
movzx eax, r9b
xor r8d, dword [rsi + rcx*4 + 0xc2b00]
xor r8d, dword [rsi + rax*4 + 0xc2f00]
movd eax, xmm0
xor r8d, eax
mov eax, r8d
mov edx, r8d
shr eax, 0x10
movzx ecx, al
mov eax, r8d
shr eax, 8
shr rdx, 0x18
mov r9d, dword [rsi + rdx*4 + 0xc2300]
xor r9d, dword [rsi + rcx*4 + 0xc2700]
movzx ecx, al
movzx eax, r8b
xor r9d, dword [rsi + rcx*4 + 0xc2b00]
xor r9d, dword [rsi + rax*4 + 0xc2f00]
movd eax, xmm1
xor r9d, eax
mov edx, r9d
mov eax, r9d
shr eax, 0x10
movzx ecx, al
shr rdx, 0x18
mov eax, dword [rsi + rdx*4 + 0xc2300]
xor eax, dword [rsi + rcx*4 + 0xc2700]
mov ecx, r9d
shr ecx, 8
movzx edx, cl
movzx ecx, r9b
xor eax, dword [rsi + rdx*4 + 0xc2b00]
xor eax, dword [rsi + rcx*4 + 0xc2f00]
lea rcx, [r10 + 0x10]
mov qword [rsp], rcx
lea rcx, [r11 - 0x10]
mov qword [rsp + 8], rcx
movups xmm0, xmmword [rsp]
movups xmmword [rbx], xmm0
mov r11, qword [rbx + 8]
cmp r11, 0x10
jae 0x140060a40
test r11, r11
je 0x140060bd8
nop dword [rax + rax]
mov r8, qword [rbx]
movzx edx, al
shr eax, 8
movzx ecx, byte [r8]
xor rdx, rcx
lea rcx, [r8 + 1]
mov qword [rsp], rcx
lea rcx, [r11 - 1]
mov qword [rsp + 8], rcx
movups xmm0, xmmword [rsp]
xor eax, dword [rsi + rdx*4 + 0xc2300]
movups xmmword [rbx], xmm0
mov r11, qword [rbx + 8]
test r11, r11
jne 0x140060ba0
mov dword [rdi + 8], eax
mov rcx, qword [rsp + 0x20]
xor rcx, rsp
call fcn.140092a00
mov rbx, qword [rsp + 0x50]
mov rsi, qword [rsp + 0x58]
add rsp, 0x30
pop rdi
ret
Function at 0x140060c70
Capabilities:
Encode data using xor
Hash data with crc32

Disassembly:
push rbx
sub rsp, 0x10
mov r9, qword [rdx + 8]
lea rbx, [0x1400c3300]
mov eax, dword [rcx + 8]
mov r10, rdx
mov r11, rcx
cmp r9, 0x10
jb 0x140060df9
nop dword [rax]
nop dword [rax + rax]
mov r8, qword [r10]
mov edx, eax
shr eax, 8
movzx ecx, byte [r8]
xor rdx, rcx
movzx ecx, dl
movzx edx, byte [r8 + 1]
xor eax, dword [rbx + rcx*4]
mov ecx, eax
shr eax, 8
xor rdx, rcx
movzx ecx, dl
movzx edx, byte [r8 + 2]
xor eax, dword [rbx + rcx*4]
mov ecx, eax
shr eax, 8
xor rdx, rcx
movzx ecx, dl
movzx edx, byte [r8 + 3]
xor eax, dword [rbx + rcx*4]
mov ecx, eax
shr eax, 8
xor rdx, rcx
movzx ecx, dl
movzx edx, byte [r8 + 4]
xor eax, dword [rbx + rcx*4]
mov ecx, eax
shr eax, 8
xor rdx, rcx
movzx ecx, dl
movzx edx, byte [r8 + 5]
xor eax, dword [rbx + rcx*4]
mov ecx, eax
shr eax, 8
xor rdx, rcx
movzx ecx, dl
movzx edx, byte [r8 + 6]
xor eax, dword [rbx + rcx*4]
mov ecx, eax
shr eax, 8
xor rdx, rcx
movzx ecx, dl
movzx edx, byte [r8 + 7]
xor eax, dword [rbx + rcx*4]
mov ecx, eax
shr eax, 8
xor rdx, rcx
movzx ecx, dl
movzx edx, byte [r8 + 8]
xor eax, dword [rbx + rcx*4]
mov ecx, eax
shr eax, 8
xor rdx, rcx
movzx ecx, dl
movzx edx, byte [r8 + 9]
xor eax, dword [rbx + rcx*4]
mov ecx, eax
shr eax, 8
xor rdx, rcx
movzx ecx, dl
movzx edx, byte [r8 + 0xa]
xor eax, dword [rbx + rcx*4]
mov ecx, eax
shr eax, 8
xor rdx, rcx
movzx ecx, dl
movzx edx, byte [r8 + 0xb]
xor eax, dword [rbx + rcx*4]
mov ecx, eax
shr eax, 8
xor rdx, rcx
movzx ecx, dl
movzx edx, byte [r8 + 0xc]
xor eax, dword [rbx + rcx*4]
mov ecx, eax
shr eax, 8
xor rdx, rcx
movzx ecx, dl
movzx edx, byte [r8 + 0xd]
xor eax, dword [rbx + rcx*4]
mov ecx, eax
xor rdx, rcx
shr eax, 8
movzx ecx, dl
movzx edx, byte [r8 + 0xe]
xor eax, dword [rbx + rcx*4]
mov ecx, eax
shr eax, 8
xor rdx, rcx
movzx ecx, dl
movzx edx, byte [r8 + 0xf]
xor eax, dword [rbx + rcx*4]
mov ecx, eax
shr eax, 8
xor rdx, rcx
movzx ecx, dl
xor eax, dword [rbx + rcx*4]
lea rcx, [r8 + 0x10]
mov qword [rsp], rcx
lea rcx, [r9 - 0x10]
mov qword [rsp + 8], rcx
movups xmm0, xmmword [rsp]
movups xmmword [r10], xmm0
mov r9, qword [r10 + 8]
cmp r9, 0x10
jae 0x140060ca0
xor r8d, r8d
test r9, r9
je 0x140060e2b
mov r10, qword [r10]
nop dword [rax]
nop dword [rax + rax]
movzx edx, byte [r10 + r8]
mov ecx, eax
xor rdx, rcx
shr eax, 8
movzx ecx, dl
inc r8
xor eax, dword [rbx + rcx*4]
cmp r8, r9
jne 0x140060e10
mov dword [r11 + 8], eax
add rsp, 0x10
pop rbx
ret
Function at 0x140063e30
Capabilities:
Hash data with md5

Disassembly:
sub rsp, 0x58
mov rax, qword [0x1400df040]
xor rax, rsp
mov qword [rsp + 0x40], rax
lea rax, [rsp + 0x30]
mov dword [rsp + 0x30], 0x67452301
mov qword [rsp + 0x20], rax
lea rdx, [rsp + 0x20]
lea rax, [rsp + 0x40]
mov dword [rsp + 0x34], 0xefcdab89
mov qword [rsp + 0x28], rax
movaps xmm0, xmmword [rsp + 0x20]
movdqa xmmword [rsp + 0x20], xmm0
mov dword [rsp + 0x38], 0x98badcfe
mov dword [rsp + 0x3c], 0x10325476
call fcn.1400630d0
mov rcx, qword [rsp + 0x40]
xor rcx, rsp
call fcn.140092a00
add rsp, 0x58
ret

Function at 0x140066f50
Capabilities:
Hash data using sha1

Disassembly:
sub rsp, 0x58
mov rax, qword [0x1400df040]
xor rax, rsp
mov qword [rsp + 0x48], rax
lea rax, [rsp + 0x30]
mov dword [rsp + 0x30], 0x67452301
mov qword [rsp + 0x20], rax
lea rdx, [rsp + 0x20]
lea rax, [rsp + 0x44]
mov dword [rsp + 0x34], 0xefcdab89
mov qword [rsp + 0x28], rax
movaps xmm0, xmmword [rsp + 0x20]
movdqa xmmword [rsp + 0x20], xmm0
mov dword [rsp + 0x38], 0x98badcfe
mov dword [rsp + 0x3c], 0x10325476
mov dword [rsp + 0x40], 0xc3d2e1f0
call fcn.1400630d0
mov rcx, qword [rsp + 0x48]
xor rcx, rsp
call fcn.140092a00
add rsp, 0x58
ret
Function at 0x14006bba0
Capabilities:
Hash data using sha224

Disassembly:
sub rsp, 0x68
mov rax, qword [0x1400df040]
xor rax, rsp
mov qword [rsp + 0x50], rax
lea rax, [rsp + 0x30]
mov dword [rsp + 0x30], 0xc1059ed8
mov qword [rsp + 0x20], rax
lea rdx, [rsp + 0x20]
lea rax, [rsp + 0x50]
mov dword [rsp + 0x34], 0x367cd507
mov qword [rsp + 0x28], rax
movaps xmm0, xmmword [rsp + 0x20]
movdqa xmmword [rsp + 0x20], xmm0
mov dword [rsp + 0x38], 0x3070dd17
mov dword [rsp + 0x3c], 0xf70e5939
mov dword [rsp + 0x40], 0xffc00b31
mov dword [rsp + 0x44], 0x68581511
mov dword [rsp + 0x48], 0x64f98fa7
mov dword [rsp + 0x4c], 0xbefa4fa4
call fcn.1400630d0
mov rcx, qword [rsp + 0x50]
xor rcx, rsp
call fcn.140092a00
add rsp, 0x68
ret

Function at 0x14006bc30
Capabilities:
Hash data using sha256

Disassembly:
sub rsp, 0x68
mov rax, qword [0x1400df040]
xor rax, rsp
mov qword [rsp + 0x50], rax
lea rax, [rsp + 0x30]
mov dword [rsp + 0x30], 0x6a09e667
mov qword [rsp + 0x20], rax
lea rdx, [rsp + 0x20]
lea rax, [rsp + 0x50]
mov dword [rsp + 0x34], 0xbb67ae85
mov qword [rsp + 0x28], rax
movaps xmm0, xmmword [rsp + 0x20]
movdqa xmmword [rsp + 0x20], xmm0
mov dword [rsp + 0x38], 0x3c6ef372
mov dword [rsp + 0x3c], 0xa54ff53a
mov dword [rsp + 0x40], 0x510e527f
mov dword [rsp + 0x44], 0x9b05688c
mov dword [rsp + 0x48], 0x1f83d9ab
mov dword [rsp + 0x4c], 0x5be0cd19
call fcn.1400630d0
mov rcx, qword [rsp + 0x50]
xor rcx, rsp
call fcn.140092a00
add rsp, 0x68
ret
Function at 0x140070be0
Capabilities:
Hash data using sha384

Disassembly:
mov r11, rsp
sub rsp, 0x88
mov rax, qword [0x1400df040]
xor rax, rsp
mov qword [rsp + 0x70], rax
movabs rax, 0xcbbb9d5dc1059ed8
lea rdx, [r11 - 0x68]
mov qword [r11 - 0x58], rax
movabs rax, 0x629a292a367cd507
mov qword [r11 - 0x50], rax
movabs rax, 0x9159015a3070dd17
mov qword [r11 - 0x48], rax
movabs rax, 0x152fecd8f70e5939
mov qword [r11 - 0x40], rax
movabs rax, 0x67332667ffc00b31
mov qword [r11 - 0x38], rax
movabs rax, 0x8eb44a8768581511
mov qword [r11 - 0x30], rax
movabs rax, 0xdb0c2e0d64f98fa7
mov qword [r11 - 0x28], rax
movabs rax, 0x47b5481dbefa4fa4
mov qword [r11 - 0x20], rax
lea rax, [r11 - 0x58]
mov qword [rsp + 0x20], rax
lea rax, [r11 - 0x18]
mov qword [rsp + 0x28], rax
movaps xmm0, xmmword [rsp + 0x20]
movdqa xmmword [rsp + 0x20], xmm0
call fcn.14006c560
mov rcx, qword [rsp + 0x70]
xor rcx, rsp
call fcn.140092a00
add rsp, 0x88
ret

Function at 0x140070cb0
Capabilities:
Hash data using sha512

Disassembly:
mov r11, rsp
sub rsp, 0x88
mov rax, qword [0x1400df040]
xor rax, rsp
mov qword [rsp + 0x70], rax
movabs rax, 0x6a09e667f3bcc908
lea rdx, [r11 - 0x68]
mov qword [r11 - 0x58], rax
movabs rax, 0xbb67ae8584caa73b
mov qword [r11 - 0x50], rax
movabs rax, 0x3c6ef372fe94f82b
mov qword [r11 - 0x48], rax
movabs rax, 0xa54ff53a5f1d36f1
mov qword [r11 - 0x40], rax
movabs rax, 0x510e527fade682d1
mov qword [r11 - 0x38], rax
movabs rax, 0x9b05688c2b3e6c1f
mov qword [r11 - 0x30], rax
movabs rax, 0x1f83d9abfb41bd6b
mov qword [r11 - 0x28], rax
movabs rax, 0x5be0cd19137e2179
mov qword [r11 - 0x20], rax
lea rax, [r11 - 0x58]
mov qword [rsp + 0x20], rax
lea rax, [r11 - 0x18]
mov qword [rsp + 0x28], rax
movaps xmm0, xmmword [rsp + 0x20]
movdqa xmmword [rsp + 0x20], xmm0
call fcn.14006c560
mov rcx, qword [rsp + 0x70]
xor rcx, rsp
call fcn.140092a00
add rsp, 0x88
ret
Function at 0x140079f70
Capabilities:
Hash data using sha512

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rbp
mov qword [rsp + 0x20], rsi
push rdi
sub rsp, 0xa0
mov rax, qword [0x1400df040]
xor rax, rsp
mov qword [rsp + 0x98], rax
mov rsi, rdx
mov rbx, rcx
mov qword [rsp + 0x30], rcx
lea rax, vtable.Botan::BLAKE2b.0
mov qword [rcx], rax
lea rax, vtable.Botan::BLAKE2b.1.0
mov qword [rcx + 8], rax
mov qword [rcx + 0x10], rdx
xor ebp, ebp
mov qword [rcx + 0x98], rbp
mov qword [rcx + 0xa0], rbp
mov qword [rcx + 0xa8], rbp
mov qword [rcx + 0xb0], rbp
mov edx, 8
mov ecx, edx
call fcn.14000ddc0
mov qword [rbx + 0xa0], rax
add rax, 0x40
mov qword [rbx + 0xb0], rax
mov rax, qword [rbx + 0xa0]
lea rcx, [rax + 0x40]
xorps xmm0, xmm0
movups xmmword [rax], xmm0
movups xmmword [rax + 0x10], xmm0
movups xmmword [rax + 0x20], xmm0
movups xmmword [rax + 0x30], xmm0
mov qword [rbx + 0xa8], rcx
movups xmmword [rbx + 0xb8], xmm0
mov qword [rbx + 0xc8], rbp
mov qword [rbx + 0xd0], rbp
mov qword [rbx + 0xd8], rbp
mov qword [rbx + 0xe0], rbp
mov qword [rbx + 0xe8], rbp
lea rax, [rsi - 1]
cmp rax, 0x1ff
ja 0x14007a17a
test sil, 7
jne 0x14007a17a
mov rcx, qword [rbx + 0xa0]
test rcx, rcx
je 0x14007a1b4
mov r8d, 0x40
lea rdx, [0x1400c4810]
call sub.VCRUNTIME140.dll_memmove
movzx edx, byte [rbx + 0xd0]
or rdx, 0x10100
shl rdx, 8
mov eax, dword [rbx + 0x10]
shr rax, 3
movzx ecx, al
or rdx, rcx
mov rax, qword [rbx + 0xa0]
xor qword [rax], rdx
mov qword [rbx + 0xc0], rbp
mov qword [rbx + 0xb8], rbp
mov qword [rbx + 0xc8], rbp
xorps xmm0, xmm0
movups xmmword [rbx + 0x18], xmm0
movups xmmword [rbx + 0x28], xmm0
movups xmmword [rbx + 0x38], xmm0
movups xmmword [rbx + 0x48], xmm0
movups xmmword [rbx + 0x58], xmm0
movups xmmword [rbx + 0x68], xmm0
movups xmmword [rbx + 0x78], xmm0
movups xmmword [rbx + 0x88], xmm0
mov qword [rbx + 0x98], rbp
cmp qword [rbx + 0xd0], rbp
jbe 0x14007a124
mov rdx, qword [rbx + 0xd8]
mov rsi, qword [rbx + 0xe0]
sub rsi, rdx
cmp rsi, 0x80
ja 0x14007a150
mov r8, rsi
lea rcx, [rbx + 0x18]
call sub.VCRUNTIME140.dll_memmove
add qword [rbx + 0x98], rsi
mov rax, rbx
mov rcx, qword [rsp + 0x98]
xor rcx, rsp
call fcn.140092a00
lea r11, [rsp + 0xa0]
mov rbx, qword [r11 + 0x18]
mov rbp, qword [r11 + 0x20]
mov rsi, qword [r11 + 0x28]
mov rsp, r11
pop rdi
ret
mov dword [rsp + 0x20], 0x5c
lea r9, str.build_include_internal_botan_internal_alignment_buffer.h
lea r8, str.append
lea rdx, [0x1400caf07]
lea rcx, str.elements.size_____elements_until_alignment__
call fcn.14000e220
int3
lea rdx, str.Bad_output_bits_size_for_BLAKE2b
lea rcx, [rsp + 0x50]
call fcn.140007730
movups xmm0, xmmword [rax]
movaps xmmword [rsp + 0x40], xmm0
lea rdx, [rsp + 0x40]
lea rcx, [rsp + 0x60]
call fcn.14000f9e0
lea rdx, [0x1400db760]
lea rcx, [rsp + 0x60]
call sub.VCRUNTIME140.dll__CxxThrowException
int3
mov dword [rsp + 0x20], 0x93
lea r9, str.build_include_public_botan_mem_ops.h
lea r8, str.copy_mem
lea rdx, str.If_n___0_then_args_are_not_null
lea rcx, str.n___0_implies_in___nullptr__out___nullptr
call fcn.14000e220
int3
Function at 0x14007a3b0
Capabilities:
Hash data using sha512

Disassembly:
add rcx, 8
jmp method.Botan::BLAKE2b.virtual_40
mov qword [rsp + 8], rbx
push rdi
sub rsp, 0x20
mov r8, qword [rcx + 0xa8]
mov rbx, rcx
mov rcx, qword [rcx + 0xa0]
xor edx, edx
sub r8, rcx
xor edi, edi
and r8, 0xfffffffffffffff8
call sub.VCRUNTIME140.dll_memset
xorps xmm0, xmm0
xor edx, edx
movups xmmword [rbx + 0x18], xmm0
movups xmmword [rbx + 0x28], xmm0
movups xmmword [rbx + 0x38], xmm0
movups xmmword [rbx + 0x48], xmm0
movups xmmword [rbx + 0x58], xmm0
movups xmmword [rbx + 0x68], xmm0
movups xmmword [rbx + 0x78], xmm0
movups xmmword [rbx + 0x88], xmm0
mov qword [rbx + 0x98], rdi
mov rcx, qword [rbx + 0xd8]
mov r8, qword [rbx + 0xe0]
sub r8, rcx
call sub.VCRUNTIME140.dll_memset
mov rcx, rbx
mov qword [rbx + 0xd0], rdi
mov rbx, qword [rsp + 0x30]
add rsp, 0x20
pop rdi
jmp 0x14007d910
push rbx
sub rsp, 0x30
mov rbx, rcx
mov rcx, qword [rcx + 0xa0]
test rcx, rcx
je 0x14007da19
mov r8d, 0x40
mov qword [rsp + 0x40], rdi
lea rdx, [0x1400c4810]
call sub.VCRUNTIME140.dll_memmove
mov rdx, qword [rbx + 0xa0]
lea rdi, [rbx + 0x18]
mov eax, dword [rbx + 0x10]
xorps xmm0, xmm0
shr rax, 3
movzx ecx, al
movzx eax, byte [rbx + 0xd0]
or rax, 0x10100
shl rax, 8
or rcx, rax
xor eax, eax
xor qword [rdx], rcx
mov qword [rbx + 0xc0], rax
mov qword [rbx + 0xb8], rax
mov qword [rbx + 0xc8], rax
movups xmmword [rdi], xmm0
movups xmmword [rdi + 0x10], xmm0
movups xmmword [rdi + 0x20], xmm0
movups xmmword [rdi + 0x30], xmm0
movups xmmword [rdi + 0x40], xmm0
movups xmmword [rdi + 0x50], xmm0
movups xmmword [rdi + 0x60], xmm0
movups xmmword [rdi + 0x70], xmm0
mov qword [rdi + 0x80], rax
cmp qword [rbx + 0xd0], rax
jbe 0x14007d9e4
mov r8, qword [rbx + 0xe0]
mov rdx, qword [rbx + 0xd8]
mov rbx, r8
sub rbx, rdx
cmp rbx, 0x80
ja 0x14007d9ef
sub r8, rdx
mov rcx, rdi
call sub.VCRUNTIME140.dll_memmove
add qword [rdi + 0x80], rbx
mov rdi, qword [rsp + 0x40]
add rsp, 0x30
pop rbx
ret
lea r9, str.build_include_internal_botan_internal_alignment_buffer.h
mov dword [rsp + 0x20], 0x5c
lea r8, str.append
lea rdx, [0x1400caf07]
lea rcx, str.elements.size_____elements_until_alignment__
call fcn.14000e220
int3
lea r9, str.build_include_public_botan_mem_ops.h
mov dword [rsp + 0x20], 0x93
lea r8, str.copy_mem
lea rdx, str.If_n___0_then_args_are_not_null
lea rcx, str.n___0_implies_in___nullptr__out___nullptr
call fcn.14000e220
int3

Function at 0x14007a43c
Capabilities:
Hash data using sha512

Disassembly:
sub rcx, 8
jmp method.Botan::BLAKE2b.virtual_40
Function at 0x14007d5c0
Capabilities:
Hash data using sha512

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rbp
mov qword [rsp + 0x18], rsi
push rdi
sub rsp, 0x40
mov rbp, qword [rcx + 0x98]
lea rbx, [rcx + 0x18]
mov rax, qword [rbx + 0x80]
mov rsi, rdx
mov rdi, rcx
cmp rax, 0x80
je 0x14007d615
mov r8d, 0x80
sub r8, rax
je 0x14007d60a
lea rcx, [rax + rbx]
xor edx, edx
call sub.VCRUNTIME140.dll_memset
mov qword [rbx + 0x80], 0x80
mov qword [rdi + 0xc8], 0xffffffffffffffff
cmp qword [rbx + 0x80], 0x80
jne 0x14007d699
mov r9, rbp
mov qword [rbx + 0x80], 0
mov r8d, 1
mov rdx, rbx
mov rcx, rdi
call fcn.14007a450
mov rax, qword [rsi]
lea rdx, [rdi + 0xa0]
mov qword [rsp + 0x30], rax
lea rcx, [rsp + 0x30]
mov rax, qword [rdi + 0x10]
shr rax, 3
mov qword [rsp + 0x38], rax
movaps xmm0, xmmword [rsp + 0x30]
movdqa xmmword [rsp + 0x30], xmm0
call fcn.140071900
mov rcx, rdi
mov rbx, qword [rsp + 0x50]
mov rbp, qword [rsp + 0x58]
mov rsi, qword [rsp + 0x60]
add rsp, 0x40
pop rdi
jmp 0x14007d910
lea r9, str.build_include_internal_botan_internal_alignment_buffer.h
mov dword [rsp + 0x20], 0xca
lea r8, str.consume
lea rdx, [0x1400caf07]
lea rcx, str.ready_to_consume__
call fcn.14000e220
int3

Function at 0x14007d6e0
Capabilities:
Hash data using sha512

Disassembly:
mov qword [rsp + 0x20], rbp
push rsi
push rdi
push r14
sub rsp, 0x30
mov rsi, qword [rdx + 8]
mov edi, 0x80
mov r14, rdx
mov rbp, rcx
cmp rsi, rdi
ja 0x14007d7e9
mov qword [rcx + 0xc8], rsi
mov qword [rsp + 0x50], rbx
lea rbx, [rcx + 0xd0]
mov rdx, qword [rbx]
mov qword [rsp + 0x60], r15
mov r15, qword [rbx + 8]
mov rcx, r15
sub rcx, rdx
cmp rcx, rdi
jbe 0x14007d738
lea rax, [rdx + 0x80]
jmp 0x14007d76c
jae 0x14007d770
mov rax, qword [rbx + 0x10]
sub rax, rdx
cmp rax, rdi
jae 0x14007d758
lea r8, [rsp + 0x58]
mov rdx, rdi
mov rcx, rbx
call fcn.140009f10
jmp 0x14007d770
sub rdi, rcx
xor edx, edx
mov r8, rdi
mov rcx, r15
call sub.VCRUNTIME140.dll_memset
lea rax, [rdi + r15]
mov qword [rbx + 8], rax
mov r8, qword [rbx + 8]
mov rcx, qword [rbx]
mov rax, r8
mov rdx, qword [rbp + 0xc8]
sub rax, rcx
mov r15, qword [rsp + 0x60]
cmp rax, rdx
jbe 0x14007d7a0
sub r8, rdx
sub r8, rcx
je 0x14007d7a0
add rcx, rdx
xor edx, edx
call sub.VCRUNTIME140.dll_memset
mov rcx, qword [rbx]
mov rbx, qword [rsp + 0x50]
mov rdx, qword [r14]
test rsi, rsi
je 0x14007d7bc
test rdx, rdx
je 0x14007d813
test rcx, rcx
je 0x14007d813
jmp 0x14007d7c6
test rdx, rdx
je 0x14007d7d3
test rcx, rcx
je 0x14007d7d3
test rsi, rsi
je 0x14007d7d3
mov r8, rsi
call sub.VCRUNTIME140.dll_memmove
lea rcx, [rbp - 8]
mov rbp, qword [rsp + 0x68]
add rsp, 0x30
pop r14
pop rdi
pop rsi
jmp 0x14007d910
lea r9, str.src_lib_hash_blake2_blake2b.cpp
mov dword [rsp + 0x20], 0xbd
lea r8, str.key_schedule
lea rdx, [0x1400caf07]
lea rcx, str.key.size_____m_buffer.size__
call fcn.14000e220
int3
lea r9, str.build_include_public_botan_mem_ops.h
mov dword [rsp + 0x20], 0x93
lea r8, str.copy_mem
lea rdx, str.If_n___0_then_args_are_not_null
lea rcx, str.n___0_implies_in___nullptr__out___nullptr
call fcn.14000e220
int3
Function at 0x14007d910
Capabilities:
Hash data using sha512

Disassembly:
add rcx, 8
jmp method.Botan::BLAKE2b.virtual_40
mov qword [rsp + 8], rbx
push rdi
sub rsp, 0x20
mov r8, qword [rcx + 0xa8]
mov rbx, rcx
mov rcx, qword [rcx + 0xa0]
xor edx, edx
sub r8, rcx
xor edi, edi
and r8, 0xfffffffffffffff8
call sub.VCRUNTIME140.dll_memset
xorps xmm0, xmm0
xor edx, edx
movups xmmword [rbx + 0x18], xmm0
movups xmmword [rbx + 0x28], xmm0
movups xmmword [rbx + 0x38], xmm0
movups xmmword [rbx + 0x48], xmm0
movups xmmword [rbx + 0x58], xmm0
movups xmmword [rbx + 0x68], xmm0
movups xmmword [rbx + 0x78], xmm0
movups xmmword [rbx + 0x88], xmm0
mov qword [rbx + 0x98], rdi
mov rcx, qword [rbx + 0xd8]
mov r8, qword [rbx + 0xe0]
sub r8, rcx
call sub.VCRUNTIME140.dll_memset
mov rcx, rbx
mov qword [rbx + 0xd0], rdi
mov rbx, qword [rsp + 0x30]
add rsp, 0x20
pop rdi
jmp 0x14007d910
push rbx
sub rsp, 0x30
mov rbx, rcx
mov rcx, qword [rcx + 0xa0]
test rcx, rcx
je 0x14007da19
mov r8d, 0x40
mov qword [rsp + 0x40], rdi
lea rdx, [0x1400c4810]
call sub.VCRUNTIME140.dll_memmove
mov rdx, qword [rbx + 0xa0]
lea rdi, [rbx + 0x18]
mov eax, dword [rbx + 0x10]
xorps xmm0, xmm0
shr rax, 3
movzx ecx, al
movzx eax, byte [rbx + 0xd0]
or rax, 0x10100
shl rax, 8
or rcx, rax
xor eax, eax
xor qword [rdx], rcx
mov qword [rbx + 0xc0], rax
mov qword [rbx + 0xb8], rax
mov qword [rbx + 0xc8], rax
movups xmmword [rdi], xmm0
movups xmmword [rdi + 0x10], xmm0
movups xmmword [rdi + 0x20], xmm0
movups xmmword [rdi + 0x30], xmm0
movups xmmword [rdi + 0x40], xmm0
movups xmmword [rdi + 0x50], xmm0
movups xmmword [rdi + 0x60], xmm0
movups xmmword [rdi + 0x70], xmm0
mov qword [rdi + 0x80], rax
cmp qword [rbx + 0xd0], rax
jbe 0x14007d9e4
mov r8, qword [rbx + 0xe0]
mov rdx, qword [rbx + 0xd8]
mov rbx, r8
sub rbx, rdx
cmp rbx, 0x80
ja 0x14007d9ef
sub r8, rdx
mov rcx, rdi
call sub.VCRUNTIME140.dll_memmove
add qword [rdi + 0x80], rbx
mov rdi, qword [rsp + 0x40]
add rsp, 0x30
pop rbx
ret
lea r9, str.build_include_internal_botan_internal_alignment_buffer.h
mov dword [rsp + 0x20], 0x5c
lea r8, str.append
lea rdx, [0x1400caf07]
lea rcx, str.elements.size_____elements_until_alignment__
call fcn.14000e220
int3
lea r9, str.build_include_public_botan_mem_ops.h
mov dword [rsp + 0x20], 0x93
lea r8, str.copy_mem
lea rdx, str.If_n___0_then_args_are_not_null
lea rcx, str.n___0_implies_in___nullptr__out___nullptr
call fcn.14000e220
int3
Function at 0x14007e370
Capabilities:
Encrypt data using rc4 prga

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
mov qword [rsp + 0x18], rdi
mov qword [rsp + 0x20], r14
push r15
sub rsp, 0x30
movzx r8d, byte [rcx + 0x70]
mov rbx, rcx
mov ecx, dword [rcx + 0x68]
mov r15, rdx
add ecx, r8d
mov dword [rbx + 0x68], ecx
cmp ecx, r8d
jae 0x14007e3a6
inc dword [rbx + 0x6c]
cmp r8b, 0x40
jae 0x14007e3ca
nop dword [rax]
movzx eax, r8b
mov byte [rax + rbx + 8], 0
movzx eax, byte [rbx + 0x70]
inc al
mov byte [rbx + 0x70], al
movzx r8d, al
cmp al, 0x40
jb 0x14007e3b0
mov dl, 1
mov rcx, rbx
call fcn.14007dc90
mov rax, qword [rbx + 0x78]
lea r14, [rbx + 0x48]
mov r15, qword [r15]
mov rsi, rax
and rsi, 0xfffffffffffffffc
mov rdi, rax
sub rdi, rsi
cmp rax, 0x20
ja 0x14007e4c2
mov r8, rsi
mov rdx, r14
mov rcx, r15
call sub.VCRUNTIME140.dll_memcpy
xor r11d, r11d
lea r9, [r15 + rsi]
lea r10, [rsi + r14]
mov r8d, r11d
test rdi, rdi
je 0x14007e43b
nop word [rax + rax]
mov edx, dword [r10]
movzx ecx, r8b
and cl, 3
shl cl, 3
shr edx, cl
mov byte [r9 + r8], dl
inc r8
cmp r8, rdi
jb 0x14007e420
mov rcx, qword [rbx + 0x78]
mov rsi, qword [rsp + 0x48]
mov eax, ecx
mov rdi, qword [rsp + 0x50]
xor eax, 0x6b08e667
mov dword [rbx + 0x4c], 0xbb67ae85
mov dword [rbx + 0x50], 0x3c6ef372
mov dword [rbx + 0x54], 0xa54ff53a
mov dword [rbx + 0x58], 0x510e527f
mov dword [rbx + 0x5c], 0x9b05688c
mov dword [rbx + 0x60], 0x1f83d9ab
mov qword [rbx + 0x64], 0x5be0cd19
mov dword [r14], eax
mov r14, qword [rsp + 0x58]
mov dword [rbx + 0x6c], r11d
mov byte [rbx + 0x70], r11b
mov qword [rbx + 0x78], rcx
mov qword [rbx + 8], r11
mov qword [rbx + 0x10], r11
mov qword [rbx + 0x18], r11
mov qword [rbx + 0x20], r11
mov qword [rbx + 0x28], r11
mov qword [rbx + 0x30], r11
mov qword [rbx + 0x38], r11
mov qword [rbx + 0x40], r11
mov rbx, qword [rsp + 0x40]
add rsp, 0x30
pop r15
ret
lea r9, str.build_include_internal_botan_internal_loadstor.h
mov dword [rsp + 0x20], 0x2cb
lea r8, str.copy_out_any_word_aligned_portion
lea rdx, [0x1400caf07]
lea rcx, str.in.size_bytes_____full_word_bytes__remaining_bytes
call fcn.14000e220
int3