joyce8/EMBER2024-capa huggingface dataset:
Function at 0x140169b30
Capabilities:
Hash data using sha1

Disassembly:
push rsi
push rdi
sub rsp, 0xa8
mov rax, qword [0x14037d7c0]
xor rax, rsp
mov qword [rsp + 0x90], rax
cmp byte [0x1403cf318], 0
mov rsi, rdx
mov rdi, rcx
jne 0x140169b73
mov r9, r8
mov r8, rdx
mov edx, 1
call fcn.140164050
test al, al
jne 0x140169c2b
xorps xmm1, xmm1
mov qword [rsp + 0xa0], rbx
xor ebx, ebx
lea rax, vtable._ckSha1.0
xorps xmm0, xmm0
mov qword [rsp + 0x20], rax
movups xmmword [rsp + 0x30], xmm0
mov qword [rsp + 0x3c], 0x10325476
mov dword [rsp + 0x40], 0xc3d2e1f0
movups xmmword [rsp + 0x48], xmm1
mov dword [rsp + 0x30], 0x67452301
movups xmmword [rsp + 0x58], xmm1
mov dword [rsp + 0x34], 0xefcdab89
movups xmmword [rsp + 0x68], xmm1
mov dword [rsp + 0x38], 0x98badcfe
movups xmmword [rsp + 0x78], xmm1
mov dword [rsp + 0x44], ebx
mov qword [rsp + 0x28], rbx
cmp dword [rdi + 0xc08], ebx
jbe 0x140169c13
nop dword [rax]
nop word [rax + rax]
mov edx, ebx
lea rcx, [rsp + 0x20]
mov r8d, dword [rdi + rdx*4 + 0x808]
mov rdx, qword [rdi + rdx*8 + 8]
call fcn.140169280
inc ebx
cmp ebx, dword [rdi + 0xc08]
jb 0x140169bf0
xor r8d, r8d
lea rcx, [rsp + 0x20]
mov rdx, rsi
call fcn.140168ea0
mov rbx, qword [rsp + 0xa0]
mov rcx, qword [rsp + 0x90]
xor rcx, rsp
call fcn.1402577a0
add rsp, 0xa8
pop rdi
pop rsi
ret

Function at 0x140169c50
Capabilities:
Hash data using sha1

Disassembly:
mov qword [rsp + 0x20], rbx
push rbp
push rsi
push rdi
lea rbp, [rsp - 0x160]
sub rsp, 0x260
mov rax, qword [0x14037d7c0]
xor rax, rsp
mov qword [rbp + 0x150], rax
mov rbx, r8
mov esi, edx
mov rdi, rcx
cmp byte [0x1403cf318], 0
jne 0x140169d30
xor edx, edx
mov r8d, 0x178
lea rcx, [rbp - 0x30]
call sub.VCRUNTIME140.dll_memset
lea rcx, [rbp - 0x30]
call fcn.1400d2710
nop
xorps xmm0, xmm0
movups xmmword [rsp + 0x30], xmm0
movups xmmword [rsp + 0x40], xmm0
movups xmmword [rsp + 0x50], xmm0
lea rcx, [rsp + 0x30]
call fcn.1400bc380
nop
lea rax, [rbp - 0x30]
mov qword [rsp + 0x20], rax
lea r9, [rsp + 0x30]
mov r8d, esi
mov rdx, rdi
mov ecx, 1
call fcn.140163c70
test al, al
je 0x140169d1c
lea rcx, [rsp + 0x30]
call fcn.1400c0bd0
mov rdx, rax
mov r8d, setsockopt
mov rcx, rbx
call fcn.14008ed60
nop
lea rcx, [rsp + 0x30]
call fcn.1400bc530
nop
lea rcx, [rbp - 0x30]
call fcn.1400d2740
jmp 0x140169da9
lea rcx, [rsp + 0x30]
call fcn.1400bc530
nop
lea rcx, [rbp - 0x30]
call fcn.1400d2740
lea rax, vtable._ckSha1.0
mov qword [rsp + 0x60], rax
xorps xmm0, xmm0
movups xmmword [rsp + 0x70], xmm0
mov qword [rsp + 0x7c], 0x10325476
xorps xmm1, xmm1
movups xmmword [rbp - 0x78], xmm1
movups xmmword [rbp - 0x68], xmm1
movups xmmword [rbp - 0x58], xmm1
movups xmmword [rbp - 0x48], xmm1
mov dword [rsp + 0x70], 0x67452301
mov dword [rsp + 0x74], 0xefcdab89
mov dword [rsp + 0x78], 0x98badcfe
mov dword [rbp - 0x80], 0xc3d2e1f0
xor eax, eax
mov dword [rbp - 0x7c], eax
mov qword [rsp + 0x68], rax
mov r8d, esi
mov rdx, rdi
lea rcx, [rsp + 0x60]
call fcn.140169280
xor r8d, r8d
mov rdx, rbx
lea rcx, [rsp + 0x60]
call fcn.140168ea0
mov rcx, qword [rbp + 0x150]
xor rcx, rsp
call fcn.1402577a0
mov rbx, qword [rsp + 0x298]
add rsp, 0x260
pop rdi
pop rsi
pop rbp
ret
Function at 0x140169dd0
Capabilities:
Hash data using sha1

Disassembly:
mov qword [rsp + 0x18], rbx
push rbp
push rsi
push rdi
sub rsp, 0xa0
mov rax, qword [0x14037d7c0]
xor rax, rsp
mov qword [rsp + 0x90], rax
mov rdi, rdx
mov rbp, rcx
mov edx, setsockopt
mov rcx, rdi
call fcn.1400c0b50
mov rsi, rax
test rax, rax
je 0x140169eaf
lea rax, vtable._ckSha1.0
mov qword [rsp + 0x20], rax
xorps xmm0, xmm0
movups xmmword [rsp + 0x30], xmm0
mov qword [rsp + 0x3c], 0x10325476
xorps xmm1, xmm1
movups xmmword [rsp + 0x48], xmm1
movups xmmword [rsp + 0x58], xmm1
movups xmmword [rsp + 0x68], xmm1
movups xmmword [rsp + 0x78], xmm1
mov dword [rsp + 0x30], 0x67452301
mov dword [rsp + 0x34], 0xefcdab89
mov dword [rsp + 0x38], 0x98badcfe
mov dword [rsp + 0x40], 0xc3d2e1f0
xor eax, eax
mov dword [rsp + 0x44], eax
mov qword [rsp + 0x28], rax
mov rcx, rbp
call fcn.1400c0f00
mov ebx, eax
mov rcx, rbp
call fcn.1400c0bd0
mov rdx, rax
mov r8d, ebx
lea rcx, [rsp + 0x20]
call fcn.140169280
xor r8d, r8d
mov rdx, rsi
lea rcx, [rsp + 0x20]
call fcn.140168ea0
mov edx, setsockopt
mov rcx, rdi
call fcn.1400bc8d0
nop
mov rcx, qword [rsp + 0x90]
xor rcx, rsp
call fcn.1402577a0
mov rbx, qword [rsp + 0xd0]
add rsp, 0xa0
pop rdi
pop rsi
pop rbp
ret
Function at 0x140169fe0
Capabilities:
Encode data using xor

Disassembly:
mov r9, rcx
lea rdx, [rcx + 0x28]
mov r8d, reloc.WS2_32.dll_recv
nop dword [rax]
movzx eax, byte [rdx + 0x20]
mov byte [rdx], al
xor al, byte [rdx - 0x10]
mov byte [rdx + 0x10], al
lea rdx, [rdx + 1]
sub r8, 1
jne 0x140169ff0
xor cl, cl
lea r10, [r9 + 0x19]
lea r11, str._.C
mov rax, r10
mov r9d, 2
nop dword [rax]
movzx ecx, cl
movzx ecx, byte [rcx + r11]
xor byte [rax - 1], cl
movzx ecx, byte [rax - 1]
movzx ecx, byte [rcx + r11]
xor cl, byte [rax]
movzx edx, cl
mov byte [rax], dl
movzx ecx, byte [rdx + r11]
xor cl, byte [rax + 1]
movzx edx, cl
mov byte [rax + 1], dl
movzx ecx, byte [rdx + r11]
xor cl, byte [rax + 2]
movzx edx, cl
mov byte [rax + 2], dl
movzx ecx, byte [rdx + r11]
xor cl, byte [rax + 3]
movzx edx, cl
mov byte [rax + 3], dl
movzx ecx, byte [rdx + r11]
xor cl, byte [rax + 4]
movzx edx, cl
mov byte [rax + 4], dl
movzx ecx, byte [rdx + r11]
xor cl, byte [rax + 5]
movzx edx, cl
mov byte [rax + 5], dl
movzx ecx, byte [rdx + r11]
xor cl, byte [rax + 6]
movzx edx, cl
mov byte [rax + 6], dl
movzx ecx, byte [rdx + r11]
xor cl, byte [rax + 7]
movzx edx, cl
mov byte [rax + 7], dl
movzx ecx, byte [rdx + r11]
xor cl, byte [rax + 8]
movzx edx, cl
mov byte [rax + 8], dl
movzx ecx, byte [rdx + r11]
xor cl, byte [rax + 9]
movzx edx, cl
mov byte [rax + 9], dl
movzx ecx, byte [rdx + r11]
xor cl, byte [rax + 0xa]
movzx edx, cl
mov byte [rax + 0xa], dl
movzx ecx, byte [rdx + r11]
xor cl, byte [rax + 0xb]
movzx edx, cl
mov byte [rax + 0xb], dl
movzx ecx, byte [rdx + r11]
xor cl, byte [rax + 0xc]
movzx edx, cl
mov byte [rax + 0xc], dl
movzx ecx, byte [rdx + r11]
xor cl, byte [rax + 0xd]
movzx edx, cl
mov byte [rax + 0xd], dl
movzx ecx, byte [rdx + r11]
xor cl, byte [rax + 0xe]
movzx edx, cl
mov byte [rax + 0xe], dl
movzx ecx, byte [rdx + r11]
xor cl, byte [rax + 0xf]
movzx edx, cl
mov byte [rax + 0xf], dl
movzx ecx, byte [rdx + r11]
xor cl, byte [rax + 0x10]
movzx edx, cl
mov byte [rax + 0x10], dl
movzx ecx, byte [rdx + r11]
xor cl, byte [rax + 0x11]
movzx edx, cl
mov byte [rax + 0x11], dl
movzx ecx, byte [rdx + r11]
xor cl, byte [rax + 0x12]
movzx edx, cl
mov byte [rax + 0x12], dl
movzx ecx, byte [rdx + r11]
xor cl, byte [rax + 0x13]
lea rax, [rax + 0x18]
movzx edx, cl
mov byte [rax - 5], dl
movzx ecx, byte [rdx + r11]
xor cl, byte [rax - 4]
movzx edx, cl
mov byte [rax - 4], dl
movzx ecx, byte [rdx + r11]
xor cl, byte [rax - 3]
movzx edx, cl
mov byte [rax - 3], dl
movzx ecx, byte [rdx + r11]
xor cl, byte [rax - 2]
mov byte [rax - 2], cl
sub r9, 1
jne 0x14016a020
add cl, r8b
inc r8d
cmp r8d, 0x12
jl 0x14016a013
ret
Function at 0x14016b920
Capabilities:
Hash data with md5

Disassembly:
push rbx
push rbp
push rsi
push rdi
push r13
push r14
push r15
sub rsp, 0x70
mov rax, qword [0x14037d7c0]
xor rax, rsp
mov qword [rsp + 0x50], rax
mov rax, qword [rsp + 0xd0]
mov r13, r9
mov rbp, qword [rsp + 0xd8]
mov r15, r8
mov qword [rsp + 0x38], rdx
mov rdi, rdx
mov qword [rsp + 0x40], rax
mov rbx, rcx
mov qword [rsp + 0x30], rbp
test rax, rax
je 0x14016bb2e
xor esi, esi
mov dword [rcx + 0x54], 0x67452301
mov dword [rcx + 0x50], esi
mov qword [rcx + 8], rsi
mov dword [rcx + 0x58], 0xefcdab89
mov dword [rcx + 0x5c], 0x98badcfe
mov dword [rcx + 0x60], 0x10325476
mov ecx, 0x4e28
call fcn.14008eda0
mov r14, rax
test rax, rax
je 0x14016bb2e
mov qword [rsp + 0x68], r12
mov rcx, rdi
mov r12b, 1
mov dword [rsp + 0x48], esi
call fcn.14017f230
test al, al
jne 0x14016bb0e
nop dword [rax]
mov qword [rsp + 0x28], r13
lea r9, [rsp + 0x48]
mov r8d, 0x4e20
mov qword [rsp + 0x20], r15
mov rdx, r14
mov rcx, rdi
call fcn.14017f480
movzx r12d, al
test al, al
je 0x14016bb0e
mov esi, dword [rsp + 0x48]
test esi, esi
je 0x14016bae8
test rbp, rbp
je 0x14016ba1f
mov r8d, esi
mov rdx, r14
mov rcx, rbp
call fcn.1400bca00
mov esi, dword [rsp + 0x48]
mov rbp, r14
cmp esi, 1
jb 0x14016bacd
nop dword [rax + rax]
mov edx, dword [rbx + 0x50]
test edx, edx
jne 0x14016ba75
cmp esi, 0x40
jb 0x14016ba75
movups xmm0, xmmword [rbp]
mov rcx, rbx
movups xmmword [rbx + 0x10], xmm0
movups xmm1, xmmword [rbp + 0x10]
movups xmmword [rbx + 0x20], xmm1
movups xmm0, xmmword [rbp + 0x20]
movups xmmword [rbx + 0x30], xmm0
movups xmm1, xmmword [rbp + 0x30]
movups xmmword [rbx + 0x40], xmm1
call fcn.14016a830
add qword [rbx + 8], 0x200
add rbp, 0x40
add esi, 0xffffffc0
jmp 0x14016babc
mov ecx, 0x40
mov eax, esi
sub ecx, edx
cmp esi, ecx
cmovae eax, ecx
lea rcx, [rbx + 0x10]
add rcx, rdx
mov r8d, eax
mov rdx, rbp
mov edi, eax
call sub.VCRUNTIME140.dll_memcpy
add dword [rbx + 0x50], edi
add rbp, rdi
sub esi, edi
cmp dword [rbx + 0x50], 0x40
jne 0x14016babc
mov rcx, rbx
call fcn.14016a830
add qword [rbx + 8], 0x200
mov dword [rbx + 0x50], 0
test esi, esi
jne 0x14016ba30
mov esi, dword [rsp + 0x48]
mov rdi, qword [rsp + 0x38]
test r15, r15
je 0x14016bae3
mov edx, esi
mov r8, r13
mov rcx, r15
call fcn.140145550
test al, al
jne 0x14016bafa
mov rbp, qword [rsp + 0x30]
mov rcx, rdi
call fcn.14017f230
test al, al
je 0x14016b9d0
jmp 0x14016bb0e
mov rax, qword [r13]
lea rdx, str.RIPEMD128_aborted_by_application
mov rcx, r13
call qword [rax + 0x28]
xor r12b, r12b
mov rcx, r14
call fcn.1402573e4
mov rdx, qword [rsp + 0x40]
mov rcx, rbx
call fcn.14016bb50
movzx eax, r12b
mov r12, qword [rsp + 0x68]
jmp 0x14016bb30
xor al, al
mov rcx, qword [rsp + 0x50]
xor rcx, rsp
call fcn.1402577a0
add rsp, 0x70
pop r15
pop r14
pop r13
pop rdi
pop rsi
pop rbp
pop rbx
ret
Function at 0x14016bda0
Capabilities:
Hash data with md5

Disassembly:
mov qword [rsp + 8], rbx
push rdi
sub rsp, 0x20
xor eax, eax
mov dword [rcx + 0x54], 0x67452301
mov dword [rcx + 0x50], eax
mov rdi, r9
mov qword [rcx + 8], rax
mov rbx, rcx
mov dword [rcx + 0x58], 0xefcdab89
mov dword [rcx + 0x5c], 0x98badcfe
mov dword [rcx + 0x60], 0x10325476
call fcn.14016bcb0
mov rdx, rdi
mov rcx, rbx
mov rbx, qword [rsp + 0x30]
add rsp, 0x20
pop rdi
jmp fcn.14016bb50
Function at 0x14016d6a0
Capabilities:
Hash data using sha1

Disassembly:
push rbx
push rbp
push rsi
push rdi
push r13
push r14
push r15
sub rsp, 0x70
mov rax, qword [0x14037d7c0]
xor rax, rsp
mov qword [rsp + 0x50], rax
mov rax, qword [rsp + 0xd0]
xor esi, esi
mov rbp, qword [rsp + 0xd8]
mov rbx, rcx
mov dword [rcx + 0x50], esi
mov r13, r9
mov qword [rcx + 8], rsi
mov r15, r8
mov dword [rcx + 0x54], 0x67452301
mov rdi, rdx
mov dword [rcx + 0x58], 0xefcdab89
mov dword [rcx + 0x5c], 0x98badcfe
mov dword [rcx + 0x60], 0x10325476
mov dword [rcx + 0x64], 0xc3d2e1f0
mov ecx, 0x4e28
mov qword [rsp + 0x38], rdx
mov qword [rsp + 0x40], rax
mov qword [rsp + 0x30], rbp
call fcn.14008eda0
mov r14, rax
test rax, rax
je 0x14016d8ac
mov qword [rsp + 0x68], r12
mov rcx, rdi
mov r12b, 1
mov dword [rsp + 0x48], esi
call fcn.14017f230
test al, al
jne 0x14016d88e
nop word [rax + rax]
mov qword [rsp + 0x28], r13
lea r9, [rsp + 0x48]
mov r8d, 0x4e20
mov qword [rsp + 0x20], r15
mov rdx, r14
mov rcx, rdi
call fcn.14017f480
movzx r12d, al
test al, al
je 0x14016d88e
mov esi, dword [rsp + 0x48]
test esi, esi
je 0x14016d868
test rbp, rbp
je 0x14016d79f
mov r8d, esi
mov rdx, r14
mov rcx, rbp
call fcn.1400bca00
mov esi, dword [rsp + 0x48]
mov rbp, r14
cmp esi, 1
jb 0x14016d84d
nop dword [rax + rax]
mov edx, dword [rbx + 0x50]
test edx, edx
jne 0x14016d7f5
cmp esi, 0x40
jb 0x14016d7f5
movups xmm0, xmmword [rbp]
mov rcx, rbx
movups xmmword [rbx + 0x10], xmm0
movups xmm1, xmmword [rbp + 0x10]
movups xmmword [rbx + 0x20], xmm1
movups xmm0, xmmword [rbp + 0x20]
movups xmmword [rbx + 0x30], xmm0
movups xmm1, xmmword [rbp + 0x30]
movups xmmword [rbx + 0x40], xmm1
call fcn.14016be50
add qword [rbx + 8], 0x200
add rbp, 0x40
add esi, 0xffffffc0
jmp 0x14016d83c
mov ecx, 0x40
mov eax, esi
sub ecx, edx
cmp esi, ecx
cmovae eax, ecx
lea rcx, [rbx + 0x10]
add rcx, rdx
mov r8d, eax
mov rdx, rbp
mov edi, eax
call sub.VCRUNTIME140.dll_memcpy
add dword [rbx + 0x50], edi
add rbp, rdi
sub esi, edi
cmp dword [rbx + 0x50], 0x40
jne 0x14016d83c
mov rcx, rbx
call fcn.14016be50
add qword [rbx + 8], 0x200
mov dword [rbx + 0x50], 0
test esi, esi
jne 0x14016d7b0
mov esi, dword [rsp + 0x48]
mov rdi, qword [rsp + 0x38]
test r15, r15
je 0x14016d863
mov edx, esi
mov r8, r13
mov rcx, r15
call fcn.140145550
test al, al
jne 0x14016d87a
mov rbp, qword [rsp + 0x30]
mov rcx, rdi
call fcn.14017f230
test al, al
je 0x14016d750
jmp 0x14016d88e
mov rax, qword [r13]
lea rdx, str.RIPEMD128_aborted_by_application
mov rcx, r13
call qword [rax + 0x28]
xor r12b, r12b
mov rcx, r14
call fcn.1402573e4
mov rdx, qword [rsp + 0x40]
mov rcx, rbx
call fcn.14016d8d0
movzx eax, r12b
mov r12, qword [rsp + 0x68]
mov rcx, qword [rsp + 0x50]
xor rcx, rsp
call fcn.1402577a0
add rsp, 0x70
pop r15
pop r14
pop r13
pop rdi
pop rsi
pop rbp
pop rbx
ret
Function at 0x14016db30
Capabilities:
Hash data using sha1

Disassembly:
mov qword [rsp + 8], rbx
push rdi
sub rsp, 0x20
xor eax, eax
mov dword [rcx + 0x54], 0x67452301
mov dword [rcx + 0x50], eax
mov rdi, r9
mov qword [rcx + 8], rax
mov rbx, rcx
mov dword [rcx + 0x58], 0xefcdab89
mov dword [rcx + 0x5c], 0x98badcfe
mov dword [rcx + 0x60], 0x10325476
mov dword [rcx + 0x64], 0xc3d2e1f0
call fcn.14016da40
mov rdx, rdi
mov rcx, rbx
mov rbx, qword [rsp + 0x30]
add rsp, 0x20
pop rdi
jmp fcn.14016d8d0
Function at 0x14016ed60
Capabilities:
Hash data using ripemd256
Hash data with md5

Disassembly:
push rbx
push rbp
push rsi
push rdi
push r13
push r14
push r15
sub rsp, 0x70
mov rax, qword [0x14037d7c0]
xor rax, rsp
mov qword [rsp + 0x50], rax
mov rax, qword [rsp + 0xd0]
mov r13, r9
mov rbp, qword [rsp + 0xd8]
mov r15, r8
mov qword [rsp + 0x38], rdx
mov rdi, rdx
mov qword [rsp + 0x40], rax
mov rbx, rcx
mov qword [rsp + 0x30], rbp
test rax, rax
je 0x14016ef8e
xor esi, esi
mov dword [rcx + 0x54], 0x67452301
mov dword [rcx + 0x50], esi
mov qword [rcx + 8], rsi
mov dword [rcx + 0x58], 0xefcdab89
mov dword [rcx + 0x5c], 0x98badcfe
mov dword [rcx + 0x60], 0x10325476
mov dword [rcx + 0x64], 0x76543210
mov dword [rcx + 0x68], 0xfedcba98
mov dword [rcx + 0x6c], 0x89abcdef
mov dword [rcx + 0x70], 0x1234567
mov ecx, 0x4e28
call fcn.14008eda0
mov r14, rax
test rax, rax
je 0x14016ef8e
mov qword [rsp + 0x68], r12
mov rcx, rdi
mov r12b, 1
mov dword [rsp + 0x48], esi
call fcn.14017f230
test al, al
jne 0x14016ef6e
nop word [rax + rax]
mov qword [rsp + 0x28], r13
lea r9, [rsp + 0x48]
mov r8d, 0x4e20
mov qword [rsp + 0x20], r15
mov rdx, r14
mov rcx, rdi
call fcn.14017f480
movzx r12d, al
test al, al
je 0x14016ef6e
mov esi, dword [rsp + 0x48]
test esi, esi
je 0x14016ef48
test rbp, rbp
je 0x14016ee7f
mov r8d, esi
mov rdx, r14
mov rcx, rbp
call fcn.1400bca00
mov esi, dword [rsp + 0x48]
mov rbp, r14
cmp esi, 1
jb 0x14016ef2d
nop dword [rax + rax]
mov edx, dword [rbx + 0x50]
test edx, edx
jne 0x14016eed5
cmp esi, 0x40
jb 0x14016eed5
movups xmm0, xmmword [rbp]
mov rcx, rbx
movups xmmword [rbx + 0x10], xmm0
movups xmm1, xmmword [rbp + 0x10]
movups xmmword [rbx + 0x20], xmm1
movups xmm0, xmmword [rbp + 0x20]
movups xmmword [rbx + 0x30], xmm0
movups xmm1, xmmword [rbp + 0x30]
movups xmmword [rbx + 0x40], xmm1
call fcn.14016dbf0
add qword [rbx + 8], 0x200
add rbp, 0x40
add esi, 0xffffffc0
jmp 0x14016ef1c
mov ecx, 0x40
mov eax, esi
sub ecx, edx
cmp esi, ecx
cmovae eax, ecx
lea rcx, [rbx + 0x10]
add rcx, rdx
mov r8d, eax
mov rdx, rbp
mov edi, eax
call sub.VCRUNTIME140.dll_memcpy
add dword [rbx + 0x50], edi
add rbp, rdi
sub esi, edi
cmp dword [rbx + 0x50], 0x40
jne 0x14016ef1c
mov rcx, rbx
call fcn.14016dbf0
add qword [rbx + 8], 0x200
mov dword [rbx + 0x50], 0
test esi, esi
jne 0x14016ee90
mov esi, dword [rsp + 0x48]
mov rdi, qword [rsp + 0x38]
test r15, r15
je 0x14016ef43
mov edx, esi
mov r8, r13
mov rcx, r15
call fcn.140145550
test al, al
jne 0x14016ef5a
mov rbp, qword [rsp + 0x30]
mov rcx, rdi
call fcn.14017f230
test al, al
je 0x14016ee30
jmp 0x14016ef6e
mov rax, qword [r13]
lea rdx, str.RIPEMD256_aborted_by_application
mov rcx, r13
call qword [rax + 0x28]
xor r12b, r12b
mov rcx, r14
call fcn.1402573e4
mov rdx, qword [rsp + 0x40]
mov rcx, rbx
call fcn.14016efb0
movzx eax, r12b
mov r12, qword [rsp + 0x68]
jmp 0x14016ef90
xor al, al
mov rcx, qword [rsp + 0x50]
xor rcx, rsp
call fcn.1402577a0
add rsp, 0x70
pop r15
pop r14
pop r13
pop rdi
pop rsi
pop rbp
pop rbx
ret
Function at 0x14016f270
Capabilities:
Hash data using ripemd256
Hash data with md5

Disassembly:
mov qword [rsp + 8], rbx
push rdi
sub rsp, 0x20
xor eax, eax
mov dword [rcx + 0x54], 0x67452301
mov dword [rcx + 0x50], eax
mov rdi, r9
mov qword [rcx + 8], rax
mov rbx, rcx
mov dword [rcx + 0x58], 0xefcdab89
mov dword [rcx + 0x5c], 0x98badcfe
mov dword [rcx + 0x60], 0x10325476
mov dword [rcx + 0x64], 0x76543210
mov dword [rcx + 0x68], 0xfedcba98
mov dword [rcx + 0x6c], 0x89abcdef
mov dword [rcx + 0x70], 0x1234567
call fcn.14016f180
mov rdx, rdi
mov rcx, rbx
mov rbx, qword [rsp + 0x30]
add rsp, 0x20
pop rdi
jmp fcn.14016efb0
Function at 0x140170c50
Capabilities:
Hash data using ripemd320
Hash data using sha1

Disassembly:
push rbx
push rbp
push rsi
push rdi
push r13
push r14
push r15
sub rsp, 0x70
mov rax, qword [0x14037d7c0]
xor rax, rsp
mov qword [rsp + 0x50], rax
mov rax, qword [rsp + 0xd0]
mov r13, r9
mov rbp, qword [rsp + 0xd8]
mov r15, r8
mov qword [rsp + 0x38], rdx
mov rdi, rdx
mov qword [rsp + 0x40], rax
mov rbx, rcx
mov qword [rsp + 0x30], rbp
test rax, rax
je 0x140170e8e
xor esi, esi
mov dword [rcx + 0x54], 0x67452301
mov dword [rcx + 0x50], esi
mov qword [rcx + 8], rsi
mov dword [rcx + 0x58], 0xefcdab89
mov dword [rcx + 0x5c], 0x98badcfe
mov dword [rcx + 0x60], 0x10325476
mov dword [rcx + 0x64], 0xc3d2e1f0
mov dword [rcx + 0x68], 0x76543210
mov dword [rcx + 0x6c], 0xfedcba98
mov dword [rcx + 0x70], 0x89abcdef
mov dword [rcx + 0x74], 0x1234567
mov dword [rcx + 0x78], 0x3c2d1e0f
mov ecx, 0x4e28
call fcn.14008eda0
mov r14, rax
test rax, rax
je 0x140170e8e
mov qword [rsp + 0x68], r12
mov rcx, rdi
mov r12b, 1
mov dword [rsp + 0x48], esi
call fcn.14017f230
test al, al
jne 0x140170e6e
nop dword [rax]
nop word [rax + rax]
mov qword [rsp + 0x28], r13
lea r9, [rsp + 0x48]
mov r8d, 0x4e20
mov qword [rsp + 0x20], r15
mov rdx, r14
mov rcx, rdi
call fcn.14017f480
movzx r12d, al
test al, al
je 0x140170e6e
mov esi, dword [rsp + 0x48]
test esi, esi
je 0x140170e48
test rbp, rbp
je 0x140170d7f
mov r8d, esi
mov rdx, r14
mov rcx, rbp
call fcn.1400bca00
mov esi, dword [rsp + 0x48]
mov rbp, r14
cmp esi, 1
jb 0x140170e2d
nop dword [rax + rax]
mov edx, dword [rbx + 0x50]
test edx, edx
jne 0x140170dd5
cmp esi, 0x40
jb 0x140170dd5
movups xmm0, xmmword [rbp]
mov rcx, rbx
movups xmmword [rbx + 0x10], xmm0
movups xmm1, xmmword [rbp + 0x10]
movups xmmword [rbx + 0x20], xmm1
movups xmm0, xmmword [rbp + 0x20]
movups xmmword [rbx + 0x30], xmm0
movups xmm1, xmmword [rbp + 0x30]
movups xmmword [rbx + 0x40], xmm1
call fcn.14016f340
add qword [rbx + 8], 0x200
add rbp, 0x40
add esi, 0xffffffc0
jmp 0x140170e1c
mov ecx, 0x40
mov eax, esi
sub ecx, edx
cmp esi, ecx
cmovae eax, ecx
lea rcx, [rbx + 0x10]
add rcx, rdx
mov r8d, eax
mov rdx, rbp
mov edi, eax
call sub.VCRUNTIME140.dll_memcpy
add dword [rbx + 0x50], edi
add rbp, rdi
sub esi, edi
cmp dword [rbx + 0x50], 0x40
jne 0x140170e1c
mov rcx, rbx
call fcn.14016f340
add qword [rbx + 8], 0x200
mov dword [rbx + 0x50], 0
test esi, esi
jne 0x140170d90
mov esi, dword [rsp + 0x48]
mov rdi, qword [rsp + 0x38]
test r15, r15
je 0x140170e43
mov edx, esi
mov r8, r13
mov rcx, r15
call fcn.140145550
test al, al
jne 0x140170e5a
mov rbp, qword [rsp + 0x30]
mov rcx, rdi
call fcn.14017f230
test al, al
je 0x140170d30
jmp 0x140170e6e
mov rax, qword [r13]
lea rdx, str.RIPEMD320_aborted_by_application
mov rcx, r13
call qword [rax + 0x28]
xor r12b, r12b
mov rcx, r14
call fcn.1402573e4
mov rdx, qword [rsp + 0x40]
mov rcx, rbx
call fcn.140170eb0
movzx eax, r12b
mov r12, qword [rsp + 0x68]
jmp 0x140170e90
xor al, al
mov rcx, qword [rsp + 0x50]
xor rcx, rsp
call fcn.1402577a0
add rsp, 0x70
pop r15
pop r14
pop r13
pop rdi
pop rsi
pop rbp
pop rbx
ret
Function at 0x1401711a0
Capabilities:
Hash data using ripemd320
Hash data using sha1

Disassembly:
mov qword [rsp + 8], rbx
push rdi
sub rsp, 0x20
xor eax, eax
mov dword [rcx + 0x54], 0x67452301
mov dword [rcx + 0x50], eax
mov rdi, r9
mov qword [rcx + 8], rax
mov rbx, rcx
mov dword [rcx + 0x58], 0xefcdab89
mov dword [rcx + 0x5c], 0x98badcfe
mov dword [rcx + 0x60], 0x10325476
mov dword [rcx + 0x64], 0xc3d2e1f0
mov dword [rcx + 0x68], 0x76543210
mov dword [rcx + 0x6c], 0xfedcba98
mov dword [rcx + 0x70], 0x89abcdef
mov dword [rcx + 0x74], 0x1234567
mov dword [rcx + 0x78], 0x3c2d1e0f
call fcn.1401710b0
mov rdx, rdi
mov rcx, rbx
mov rbx, qword [rsp + 0x30]
add rsp, 0x20
pop rdi
jmp fcn.140170eb0

Function at 0x140171220
Capabilities:
Hash data with md5

Disassembly:
lea rax, vtable._ckMd4.0
mov dword [rcx + 8], 0x67452301
mov qword [rcx], rax
xor eax, eax
mov qword [rcx + 0x18], rax
mov rax, rcx
mov dword [rcx + 0xc], 0xefcdab89
mov dword [rcx + 0x10], 0x98badcfe
mov dword [rcx + 0x14], 0x10325476
ret

Function at 0x140171290
Capabilities:
Hash data with md5

Disassembly:
push rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x48
mov rax, qword [0x14037d7c0]
xor rax, rsp
mov qword [rsp + 0x38], rax
mov r13, qword [rsp + 0xb0]
mov r14, r9
mov rbp, qword [rsp + 0xb8]
mov rsi, r8
mov r15, rdx
mov rdi, rcx
test r13, r13
je 0x1401713d0
mov dword [rcx + 8], 0x67452301
xor r12d, r12d
mov qword [rcx + 0x18], r12
mov dword [rcx + 0xc], 0xefcdab89
mov dword [rcx + 0x10], 0x98badcfe
mov dword [rcx + 0x14], 0x10325476
mov ecx, 0x4e28
call fcn.14008eda0
mov rbx, rax
test rax, rax
je 0x1401713d0
mov dword [rsp + 0x30], r12d
mov rcx, r15
mov r12b, 1
call fcn.14017f230
test al, al
jne 0x1401713b7
nop word [rax + rax]
mov qword [rsp + 0x28], r14
lea r9, [rsp + 0x30]
mov r8d, 0x4e20
mov qword [rsp + 0x20], rsi
mov rdx, rbx
mov rcx, r15
call fcn.14017f480
test al, al
je 0x1401713b7
mov r8d, dword [rsp + 0x30]
test r8d, r8d
je 0x140171396
test rbp, rbp
je 0x140171373
mov rdx, rbx
mov rcx, rbp
call fcn.1400bca00
mov r8d, dword [rsp + 0x30]
mov rdx, rbx
mov rcx, rdi
call fcn.140171be0
test rsi, rsi
je 0x140171396
mov edx, dword [rsp + 0x30]
mov r8, r14
mov rcx, rsi
call fcn.140145550
test al, al
jne 0x1401713a4
mov rcx, r15
call fcn.14017f230
test al, al
je 0x140171330
jmp 0x1401713b7
mov rax, qword [r14]
lea rdx, str.MD4_aborted_by_application
mov rcx, r14
call qword [rax + 0x28]
xor r12b, r12b
mov rcx, rbx
call fcn.1402573e4
mov rdx, r13
mov rcx, rdi
call fcn.1401713f0
movzx eax, r12b
jmp 0x1401713d2
xor al, al
mov rcx, qword [rsp + 0x38]
xor rcx, rsp
call fcn.1402577a0
add rsp, 0x48
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
pop rbx
ret
Function at 0x140171510
Capabilities:
Hash data with md5

Disassembly:
push rbx
push rsi
push rdi
sub rsp, 0x70
mov rax, qword [0x14037d7c0]
xor rax, rsp
mov qword [rsp + 0x60], rax
mov rsi, r8
mov rbx, rdx
mov rdi, rcx
xorps xmm0, xmm0
movups xmmword [rsp + 0x20], xmm0
movups xmmword [rsp + 0x30], xmm0
movups xmmword [rsp + 0x40], xmm0
lea rcx, [rsp + 0x20]
call fcn.1400bc380
nop
lea r8, [rsp + 0x20]
xor edx, edx
mov rcx, rbx
call fcn.140082c10
xor eax, eax
mov qword [rdi + 0x18], rax
mov dword [rdi + 8], 0x67452301
mov dword [rdi + 0xc], 0xefcdab89
mov dword [rdi + 0x10], 0x98badcfe
mov dword [rdi + 0x14], 0x10325476
lea rcx, [rsp + 0x20]
call fcn.1400c0f00
mov ebx, eax
lea rcx, [rsp + 0x20]
call fcn.1400c0bd0
mov rdx, rax
mov r8d, ebx
mov rcx, rdi
call fcn.140171be0
lea rdx, [rsp + 0x50]
mov rcx, rdi
call fcn.1401713f0
mov r8d, reloc.WS2_32.dll_recv
lea rdx, [rsp + 0x50]
mov rcx, rsi
call fcn.1400bca00
nop
lea rcx, [rsp + 0x20]
call fcn.1400bc530
mov rcx, qword [rsp + 0x60]
xor rcx, rsp
call fcn.1402577a0
add rsp, 0x70
pop rdi
pop rsi
pop rbx
ret