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

Disassembly:
sub rsp, 8
xor eax, eax
mov r10, rcx
mov r9d, eax
test r8d, r8d
jle 0x1400643f2
cmp r8d, 8
jb 0x1400643f2
mov qword [rsp + 0x10], rbx
lea r11, [rdx + 4]
mov qword [rsp], rdi
sub rcx, rdx
movsxd rbx, r8d
mov rdi, 0xfffffffffffffffc
and rbx, 0xfffffffffffffff8
xorps xmm4, xmm4
sub rdi, rdx
xorps xmm3, xmm3
nop word [rax + rax]
movd xmm2, dword [rcx + r11 - 4]
xorps xmm0, xmm0
movd xmm1, dword [r11 - 4]
lea r11, [r11 + 8]
punpcklbw xmm2, xmm0
lea rax, [rdi + r11]
punpcklwd xmm2, xmm0
add r9d, 8
punpcklbw xmm1, xmm0
punpcklwd xmm1, xmm0
xorps xmm2, xmm1
movd xmm1, dword [r11 - 8]
punpcklbw xmm1, xmm0
orps xmm4, xmm2
movd xmm2, dword [rcx + r11 - 8]
punpcklbw xmm2, xmm0
punpcklwd xmm2, xmm0
punpcklwd xmm1, xmm0
xorps xmm2, xmm1
orps xmm3, xmm2
cmp rax, rbx
jl 0x140064370
mov rdi, qword [rsp]
orps xmm3, xmm4
mov rbx, qword [rsp + 0x10]
movdqa xmm0, xmm3
psrldq xmm0, 8
orps xmm3, xmm0
movdqa xmm0, xmm3
psrldq xmm0, 4
orps xmm3, xmm0
movd eax, xmm3
movsxd r11, r9d
movsxd r9, r8d
cmp r11, r9
jge 0x140064428
sub r10, rdx
lea rcx, [r11 + rdx]
sub r9, r11
nop word [rax + rax]
movzx r8d, byte [rcx + r10]
movzx edx, byte [rcx]
lea rcx, [rcx + 1]
xor r8d, edx
or eax, r8d
sub r9, 1
jne 0x140064410
add rsp, 8
ret
Function at 0x1400709b0
Capabilities:
Encode data using xor
Encrypt data using rc4 prga

Disassembly:
push rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0xe8
mov rax, qword [0x140122218]
xor rax, rsp
mov qword [rsp + 0xd0], rax
mov rsi, rcx
mov ebp, r8d
mov r8, qword [rsp + 0x150]
mov r12, rdx
xor edx, edx
mov dword [rsp + 0x44], r9d
mov r10d, r9d
mov qword [rsp + 0x48], r8
movzx eax, byte [rsi + 0x305]
mov r9d, edx
movzx r15d, byte [rsi + 0x309]
mov r14d, edx
mov ecx, edx
cmp al, 1
jne 0x140070bb4
movzx r8d, word [rsi + 0x4c6]
test r8b, 2
je 0x140070a2b
movzx r9d, word [rsi + 0x300]
mov eax, r9d
mov rcx, rbp
sub rcx, rax
mov dword [rsp + 0x40], 1
mov rdi, rbp
movzx r14d, byte [rcx + r12 - 1]
mov ecx, r14d
mov r13d, r14d
test r8b, 1
je 0x140070b39
sub ebp, r9d
mov eax, 0xff
movsxd r8, ebp
dec r8
add r8, r12
lea ecx, [rbp - 1]
movzx r10d, byte [r8]
mov edi, r10d
sub edi, ebp
add edi, r15d
shr edi, 0x1f
dec dil
cmp ecx, eax
cmovg ecx, eax
movsxd r9, ecx
test ecx, ecx
jle 0x140070ab3
nop word [rax + rax]
mov ecx, r10d
lea r8, [r8 - 1]
sub ecx, edx
movzx eax, r10b
xor al, byte [r8 + 1]
inc edx
shr ecx, 0x1f
dec cl
and cl, al
or dil, cl
sub r9, 1
jne 0x140070a90
mov eax, dword [rsp + 0x44]
lea rdx, [rsp + 0x90]
mov dword [rsp + 0x38], 1
mov r9d, ebp
sub r9d, r15d
mov dword [rsp + 0x30], 1
sub r9d, r14d
mov dword [rsp + 0x28], eax
dec r9d
mov dword [rsp + 0x20], r14d
mov r8, r12
mov rcx, rsi
call qword [rsi + 0x110]
movzx r8d, byte [rsi + 0x309]
lea r9, [rsp + 0x90]
mov edx, ebp
mov rcx, r12
mov ebx, eax
call fcn.140070100
or al, dil
not al
movzx ecx, al
shr cl, 4
and al, cl
movzx ecx, al
mov edx, ecx
shr edx, 2
and edx, ecx
mov eax, edx
shr eax, 1
and eax, edx
dec eax
add eax, ebx
je 0x140070bae
mov eax, 0xfffffecf
jmp 0x140070c3a
sub ebp, r15d
mov dword [rsp + 0x38], 1
mov dword [rsp + 0x30], 1
mov r8, r12
mov dword [rsp + 0x28], r10d
lea eax, [rbp - 1]
cmp r14d, eax
mov dword [rsp + 0x44], eax
cmova r14d, edx
cmp r13d, eax
cmovbe edx, ecx
mov rcx, rsi
sub ebp, edx
mov ebx, edx
lea rdx, [rsp + 0x50]
mov dword [rsp + 0x20], ebx
lea r9d, [rbp - 1]
call qword [rsi + 0x110]
sub rdi, rbx
lea rdx, [r12 - 1]
sub rdi, r15
lea rcx, [rsp + 0x50]
add rdx, rdi
mov r8d, r15d
mov ebp, eax
call fcn.140064320
test eax, eax
jne 0x140070b2f
test ebp, ebp
jne 0x140070b2f
cmp r13d, dword [rsp + 0x44]
ja 0x140070b2f
mov ecx, dword [rsp + 0x40]
jmp 0x140070c17
test al, al
jne 0x140070c1c
mov dword [rsp + 0x38], 1
lea rdx, [rsp + 0x50]
mov r9d, ebp
mov dword [rsp + 0x30], 1
mov dword [rsp + 0x28], r10d
sub r9d, r15d
mov r8, r12
mov dword [rsp + 0x20], 0xffffffff
mov rcx, rsi
call qword [rsi + 0x110]
mov rdx, rbp
lea rcx, [rsp + 0x50]
sub rdx, r15
mov r8d, r15d
add rdx, r12
mov ebx, eax
call fcn.140064320
test eax, eax
jne 0x140070b2f
test ebx, ebx
jne 0x140070b2f
mov ecx, r14d
mov r8, qword [rsp + 0x48]
cmp byte [rsi + 0x305], 2
jne 0x140070c2e
movzx eax, word [rsi + 0x302]
jmp 0x140070c35
lea eax, [r15 + rcx]
add eax, r14d
mov dword [r8], eax
xor eax, eax
mov rcx, qword [rsp + 0xd0]
xor rcx, rsp
call fcn.1400c17f0
add rsp, 0xe8
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
pop rbx
ret
Function at 0x140080940
Capabilities:
Hash data using sha1
Hash data using sha256
Hash data using sha384
Hash data using sha512

Disassembly:
xor r8d, r8d
sub edx, 3
je 0x140080b24
sub edx, 1
je 0x140080ae6
sub edx, 2
je 0x140080a8f
sub edx, 1
je 0x140080a0f
cmp edx, 1
jne 0x140080b29
test rcx, rcx
je 0x140080b29
mov qword [rcx + 0xd8], r8
movabs rax, 0x6a09e667f3bcc908
mov qword [rcx], rax
movabs rax, 0xbb67ae8584caa73b
mov qword [rcx + 8], rax
movabs rax, 0x3c6ef372fe94f82b
mov qword [rcx + 0x10], rax
movabs rax, 0xa54ff53a5f1d36f1
mov qword [rcx + 0x18], rax
movabs rax, 0x510e527fade682d1
mov qword [rcx + 0x20], rax
movabs rax, 0x9b05688c2b3e6c1f
mov qword [rcx + 0x28], rax
movabs rax, 0x1f83d9abfb41bd6b
mov qword [rcx + 0x30], rax
movabs rax, 0x5be0cd19137e2179
mov qword [rcx + 0x38], rax
mov eax, r8d
mov dword [rcx + 0xc0], r8d
mov qword [rcx + 0xc8], r8
mov qword [rcx + 0xd0], r8
mov qword [rcx + 0x220], r8
ret
test rcx, rcx
je 0x140080b29
mov qword [rcx + 0xd8], r8
movabs rax, 0xcbbb9d5dc1059ed8
mov qword [rcx], rax
movabs rax, 0x629a292a367cd507
mov qword [rcx + 8], rax
movabs rax, 0x9159015a3070dd17
mov qword [rcx + 0x10], rax
movabs rax, 0x152fecd8f70e5939
mov qword [rcx + 0x18], rax
movabs rax, 0x67332667ffc00b31
mov qword [rcx + 0x20], rax
movabs rax, 0x8eb44a8768581511
mov qword [rcx + 0x28], rax
movabs rax, 0xdb0c2e0d64f98fa7
mov qword [rcx + 0x30], rax
movabs rax, 0x47b5481dbefa4fa4
jmp 0x1400809eb
test rcx, rcx
je 0x140080b29
mov dword [rcx], 0x6a09e667
mov eax, r8d
mov dword [rcx + 4], 0xbb67ae85
mov dword [rcx + 8], 0x3c6ef372
mov dword [rcx + 0xc], 0xa54ff53a
mov dword [rcx + 0x10], 0x510e527f
mov dword [rcx + 0x14], 0x9b05688c
mov dword [rcx + 0x18], 0x1f83d9ab
mov dword [rcx + 0x1c], 0x5be0cd19
mov dword [rcx + 0x68], r8d
mov qword [rcx + 0x70], r8
mov qword [rcx + 0x60], r8
mov qword [rcx + 0x220], r8
ret
test rcx, rcx
je 0x140080b29
mov dword [rcx + 0x5c], 0xc3d2e1f0
mov dword [rcx + 8], r8d
mov eax, r8d
mov qword [rcx], r8
mov dword [rcx + 0x58], 0x10325476
mov dword [rcx + 0x54], 0x98badcfe
mov dword [rcx + 0x50], 0xefcdab89
mov dword [rcx + 0x4c], 0x67452301
mov qword [rcx + 0x60], r8
mov qword [rcx + 0x220], r8
ret
test rcx, rcx
jne 0x140080af2
mov eax, 0xffffff53
mov qword [rcx + 0x220], r8
ret
Function at 0x140081b90
Capabilities:
Hash data using sha256

Disassembly:
push rbp
push rbx
push rsi
push rdi
push r14
lea rbp, [rsp - 0x90]
sub rsp, 0x190
mov rax, qword [0x140122218]
xor rax, rsp
mov qword [rbp + 0x80], rax
mov rsi, rdx
mov r14, r9
mov edx, dword [rbp + 0x100]
mov rdi, rcx
sub edx, 4
je 0x140081cd8
cmp edx, 1
je 0x140081bde
mov eax, 0xffffff18
jmp 0x140081da4
movdqa xmm0, xmmword [0x14010cde0]
xor ebx, ebx
mov rax, qword [rcx + 0xa8]
xor r8d, r8d
movdqa xmm1, xmmword [0x14010cf70]
lea rcx, [rbp - 0x60]
mov qword [rsp + 0x1c0], r12
xor edx, edx
movdqa xmmword [rbp - 0x50], xmm0
movabs r12, 0x629a292a367cd507
movdqa xmm0, xmmword [0x14010cf00]
mov qword [rsp + 0x1d0], r15
movabs r15, 0xcbbb9d5dc1059ed8
movdqa xmmword [rbp - 0x30], xmm0
mov qword [rbp + 0x78], rax
mov qword [rbp - 0x60], r15
mov qword [rbp - 0x58], r12
movdqa xmmword [rbp - 0x40], xmm1
mov dword [rbp + 0x60], ebx
mov qword [rbp + 0x68], rbx
mov qword [rbp + 0x70], rbx
call fcn.1400a48b0
test eax, eax
jne 0x140081cbe
lea rcx, [rbp - 0x60]
call fcn.1400a4a50
test eax, eax
jne 0x140081cbe
movaps xmm0, xmmword [rbp - 0x60]
mov eax, ebx
movaps xmm1, xmmword [rbp - 0x50]
movaps xmmword [rsp + 0x60], xmm0
movaps xmm0, xmmword [rbp - 0x40]
movaps xmmword [rbp - 0x80], xmm0
movdqa xmm0, xmmword [0x14010cde0]
movdqa xmmword [rbp - 0x50], xmm0
movdqa xmm0, xmmword [0x14010cf00]
movaps xmmword [rsp + 0x70], xmm1
movdqa xmm1, xmmword [0x14010cf70]
movdqa xmmword [rbp - 0x30], xmm0
mov qword [rbp - 0x60], r15
mov qword [rbp - 0x58], r12
movdqa xmmword [rbp - 0x40], xmm1
mov dword [rbp + 0x60], ebx
mov qword [rbp + 0x68], rbx
mov qword [rbp + 0x70], rbx
mov r15, qword [rsp + 0x1d0]
mov edx, 0x30
mov r12, qword [rsp + 0x1c0]
lea ecx, [rdx - 0x29]
jmp 0x140081d38
mov rax, qword [rcx + 0xa8]
lea rdx, [rsp + 0x60]
xor ebx, ebx
mov qword [rbp + 0x10], rax
lea rcx, [rbp - 0x60]
mov qword [rbp], rbx
mov dword [rbp + 8], ebx
mov dword [rbp - 0x60], 0x6a09e667
mov dword [rbp - 0x5c], 0xbb67ae85
mov dword [rbp - 0x58], 0x3c6ef372
mov dword [rbp - 0x54], 0xa54ff53a
mov dword [rbp - 0x50], 0x510e527f
mov dword [rbp - 0x4c], 0x9b05688c
mov dword [rbp - 0x48], 0x1f83d9ab
mov dword [rbp - 0x44], 0x5be0cd19
call fcn.1400af7d0
lea edx, [rbx + 0x20]
lea ecx, [rbx + 6]
test eax, eax
jne 0x140081da4
movzx eax, byte [rdi + 0x2f9]
cmp al, 4
je 0x140081d64
cmp al, 0xfc
jne 0x140081d5d
test byte [rdi + 0x4c6], 8
je 0x140081d5d
lea rax, str.dtls13
jmp 0x140081d6b
mov eax, 0xfffffeba
jmp 0x140081da4
lea rax, str.tls13
mov dword [rsp + 0x50], ecx
mov r9d, edx
mov dword [rsp + 0x48], edx
lea rcx, [rsp + 0x60]
mov qword [rsp + 0x40], rcx
mov r8, r14
lea rcx, str.derived
mov dword [rsp + 0x38], 7
mov qword [rsp + 0x30], rcx
mov rcx, rsi
mov qword [rsp + 0x20], rax
call fcn.1400bb780
mov rcx, qword [rbp + 0x80]
xor rcx, rsp
call fcn.1400c17f0
add rsp, 0x190
pop r14
pop rdi
pop rsi
pop rbx
pop rbp
ret
Function at 0x1400858e0
Capabilities:
Hash data using sha256

Disassembly:
push rbp
push rbx
push rdi
lea rbp, [rsp - 0x10]
sub rsp, 0x110
mov rax, qword [0x140122218]
xor rax, rsp
mov qword [rbp], rax
mov r9, rdx
mov rdi, rcx
mov edx, dword [rbp + 0x50]
mov ecx, 0xffffff53
sub edx, 4
je 0x140085ab0
sub edx, 1
je 0x1400859f0
cmp edx, 1
jne 0x140085b34
movdqa xmm0, xmmword [0x14010cfa0]
xor ebx, ebx
movdqa xmm1, xmmword [0x14010cf90]
movabs rax, 0x6a09e667f3bcc908
mov qword [rsp + 0x20], rax
movabs rax, 0xbb67ae8584caa73b
movdqa xmmword [rsp + 0x30], xmm0
movdqa xmm0, xmmword [0x14010cf10]
mov qword [rsp + 0x28], rax
movdqa xmmword [rsp + 0x50], xmm0
mov qword [rbp - 8], rbx
movdqa xmmword [rsp + 0x40], xmm1
mov dword [rbp - 0x20], ebx
mov qword [rbp - 0x18], rbx
mov qword [rbp - 0x10], rbx
test r9, r9
jne 0x14008598a
test r8d, r8d
jne 0x1400859e6
mov rdx, r9
lea rcx, [rsp + 0x20]
call fcn.1400a48b0
mov ecx, eax
test eax, eax
jne 0x1400859e6
test rdi, rdi
je 0x1400859e1
lea rcx, [rsp + 0x20]
call fcn.1400a4a50
mov ecx, eax
test eax, eax
jne 0x1400859e6
movaps xmm0, xmmword [rsp + 0x20]
mov ecx, ebx
movaps xmm1, xmmword [rsp + 0x30]
mov eax, 0x40
movups xmmword [rdi], xmm0
movaps xmm0, xmmword [rsp + 0x40]
movups xmmword [rdi + 0x10], xmm1
movaps xmm1, xmmword [rsp + 0x50]
movups xmmword [rdi + 0x20], xmm0
movups xmmword [rdi + 0x30], xmm1
jmp 0x140085b30
mov ecx, 0xffffff53
mov eax, 0x40
jmp 0x140085b30
movdqa xmm0, xmmword [0x14010cde0]
xor ebx, ebx
movdqa xmm1, xmmword [0x14010cf70]
movabs rax, 0xcbbb9d5dc1059ed8
mov qword [rsp + 0x20], rax
movabs rax, 0x629a292a367cd507
movdqa xmmword [rsp + 0x30], xmm0
movdqa xmm0, xmmword [0x14010cf00]
mov qword [rsp + 0x28], rax
movdqa xmmword [rsp + 0x50], xmm0
mov qword [rbp - 8], rbx
movdqa xmmword [rsp + 0x40], xmm1
mov dword [rbp - 0x20], ebx
mov qword [rbp - 0x18], rbx
mov qword [rbp - 0x10], rbx
test r9, r9
jne 0x140085a53
test r8d, r8d
jne 0x140085aa6
mov rdx, r9
lea rcx, [rsp + 0x20]
call fcn.1400a48b0
mov ecx, eax
test eax, eax
jne 0x140085aa6
test rdi, rdi
je 0x140085aa1
lea rcx, [rsp + 0x20]
call fcn.1400a4a50
mov ecx, eax
test eax, eax
jne 0x140085aa6
movaps xmm0, xmmword [rsp + 0x20]
mov ecx, ebx
movaps xmm1, xmmword [rsp + 0x30]
mov eax, 0x30
movups xmmword [rdi], xmm0
movaps xmm0, xmmword [rsp + 0x40]
movups xmmword [rdi + 0x10], xmm1
movups xmmword [rdi + 0x20], xmm0
jmp 0x140085b30
mov ecx, 0xffffff53
mov eax, 0x30
jmp 0x140085b30
xor ebx, ebx
mov dword [rsp + 0x20], 0x6a09e667
mov dword [rsp + 0x24], 0xbb67ae85
mov dword [rsp + 0x28], 0x3c6ef372
mov dword [rsp + 0x2c], 0xa54ff53a
mov dword [rsp + 0x30], 0x510e527f
mov dword [rsp + 0x34], 0x9b05688c
mov dword [rsp + 0x38], 0x1f83d9ab
mov dword [rsp + 0x3c], 0x5be0cd19
mov qword [rbp - 0x80], rbx
mov dword [rbp - 0x78], ebx
mov qword [rbp - 0x70], rbx
test r9, r9
jne 0x140085b09
test r8d, r8d
je 0x140085b1c
jmp 0x140085b2b
mov rdx, r9
lea rcx, [rsp + 0x20]
call fcn.1400aee30
mov ecx, eax
test eax, eax
jne 0x140085b2b
mov rdx, rdi
lea rcx, [rsp + 0x20]
call fcn.1400af7d0
mov ecx, eax
mov eax, 0x20
test ecx, ecx
je 0x140085b36
mov eax, ecx
mov rcx, qword [rbp]
xor rcx, rsp
call fcn.1400c17f0
add rsp, 0x110
pop rdi
pop rbx
pop rbp
ret
Function at 0x14009e030
Capabilities:
Hash data with md5

Disassembly:
push rbp
push rbx
push rdi
lea rbp, [rsp - 0x47]
sub rsp, 0xa0
mov rax, qword [0x140122218]
xor rax, rsp
mov qword [rbp + 0x37], rax
xor edi, edi
mov dword [rbp + 0x13], 0x67452301
mov rbx, r8
mov qword [rbp + 0x27], rdi
mov r8d, edx
mov dword [rbp + 0x17], 0xefcdab89
mov rdx, rcx
mov dword [rbp + 0x1b], 0x98badcfe
lea rcx, [rbp - 0x39]
mov dword [rbp + 0x1f], 0x10325476
mov qword [rbp - 0x39], rdi
mov dword [rbp - 0x31], edi
call fcn.1400b40f0
test eax, eax
jne 0x14009e13c
test rbx, rbx
je 0x14009e137
mov eax, dword [rbp - 0x39]
mov byte [rbp + rax - 0x2d], 0x80
mov ecx, dword [rbp - 0x39]
inc ecx
mov dword [rbp - 0x39], ecx
cmp ecx, 0x38
jbe 0x14009e0e1
mov eax, ecx
mov r8d, 0x40
sub r8d, ecx
xor edx, edx
lea rcx, [rbp - 0x2d]
add rcx, rax
call fcn.1400c45f0
lea rdx, [rbp - 0x2d]
mov dword [rbp - 0x39], 0x40
lea rcx, [rbp - 0x39]
call fcn.1400b3900
mov ecx, edi
mov dword [rbp - 0x39], edi
mov eax, ecx
mov r8d, 0x38
sub r8d, ecx
xor edx, edx
lea rcx, [rbp - 0x2d]
add rcx, rax
call fcn.1400c45f0
mov r9d, dword [rbp - 0x35]
mov edx, r9d
mov ecx, dword [rbp - 0x31]
shr edx, 0x1d
shl r9d, 3
mov dword [rbp - 0x35], r9d
mov dword [rbp + 0xb], r9d
lea r8d, [rdx + rcx*8]
lea rdx, [rbp - 0x2d]
mov dword [rbp - 0x31], r8d
lea rcx, [rbp - 0x39]
mov dword [rbp + 0xf], r8d
call fcn.1400b3900
movups xmm0, xmmword [rbp + 0x13]
mov eax, edi
movups xmmword [rbx], xmm0
jmp 0x14009e13c
mov eax, 0xffffff53
mov rcx, qword [rbp + 0x37]
xor rcx, rsp
call fcn.1400c17f0
add rsp, 0xa0
pop rdi
pop rbx
pop rbp
ret

Function at 0x14009e160
Capabilities:
Hash data using sha1

Disassembly:
push rbx
sub rsp, 0xa0
mov rax, qword [0x140122218]
xor rax, rsp
mov qword [rsp + 0x90], rax
xor eax, eax
mov dword [rsp + 0x6c], 0x67452301
mov rbx, r8
mov qword [rsp + 0x80], rax
mov r8d, edx
mov dword [rsp + 0x70], 0xefcdab89
mov rdx, rcx
mov dword [rsp + 0x74], 0x98badcfe
lea rcx, [rsp + 0x20]
mov dword [rsp + 0x78], 0x10325476
mov dword [rsp + 0x7c], 0xc3d2e1f0
mov qword [rsp + 0x20], rax
mov dword [rsp + 0x28], eax
call fcn.1400a1660
test eax, eax
jne 0x14009e1da
mov rdx, rbx
lea rcx, [rsp + 0x20]
call fcn.1400a1b00
mov rcx, qword [rsp + 0x90]
xor rcx, rsp
call fcn.1400c17f0
add rsp, 0xa0
pop rbx
ret

Function at 0x14009e200
Capabilities:
Hash data using sha256

Disassembly:
mov r11, rsp
push rbx
sub rsp, 0xb0
mov rax, qword [0x140122218]
xor rax, rsp
mov qword [rsp + 0xa0], rax
xor eax, eax
mov dword [rsp + 0x20], 0x6a09e667
mov dword [rsp + 0x24], 0xbb67ae85
mov rbx, r8
mov dword [rsp + 0x28], 0x3c6ef372
mov dword [rsp + 0x2c], 0xa54ff53a
mov dword [rsp + 0x30], 0x510e527f
mov dword [rsp + 0x34], 0x9b05688c
mov dword [rsp + 0x38], 0x1f83d9ab
mov dword [rsp + 0x3c], 0x5be0cd19
mov qword [r11 - 0x38], rax
mov dword [r11 - 0x30], eax
mov qword [r11 - 0x28], rax
test rcx, rcx
jne 0x14009e27e
test edx, edx
je 0x14009e292
mov eax, 0xffffff53
jmp 0x14009e29f
mov r8d, edx
mov rdx, rcx
lea rcx, [rsp + 0x20]
call fcn.1400aee30
test eax, eax
jne 0x14009e29f
mov rdx, rbx
lea rcx, [rsp + 0x20]
call fcn.1400af7d0
mov rcx, qword [rsp + 0xa0]
xor rcx, rsp
call fcn.1400c17f0
add rsp, 0xb0
pop rbx
ret
Function at 0x1400a1fa0
Capabilities:
Encode data using xor

Disassembly:
push rbx
mov eax, r8d
mov r9, rdx
or al, cl
mov r10, rcx
or al, dl
test al, 7
jne 0x1400a2083
shr r8d, 3
xor eax, eax
test r8d, r8d
je 0x1400a2191
cmp r8d, 8
jb 0x1400a205e
lea ecx, [r8 - 1]
lea r11, [r10 + rcx*8]
lea rcx, [rdx + rcx*8]
cmp r10, rcx
ja 0x1400a1fe6
cmp r11, rdx
jae 0x1400a205e
mov r11d, r8d
and r11d, 0xfffffff8
mov ebx, 4
movdqu xmm0, xmmword [r10 + rax*8]
lea ecx, [rbx - 2]
movdqu xmm1, xmmword [rdx + rax*8]
xorps xmm1, xmm0
movdqu xmmword [r10 + rax*8], xmm1
add eax, 8
movdqu xmm0, xmmword [r10 + rcx*8]
movdqu xmm1, xmmword [rdx + rcx*8]
xorps xmm1, xmm0
movdqu xmmword [r10 + rcx*8], xmm1
mov ecx, ebx
movdqu xmm0, xmmword [r10 + rcx*8]
movdqu xmm1, xmmword [rdx + rcx*8]
xorps xmm1, xmm0
movdqu xmmword [r10 + rcx*8], xmm1
lea ecx, [rbx + 2]
add ebx, 8
movdqu xmm0, xmmword [r10 + rcx*8]
movdqu xmm1, xmmword [rdx + rcx*8]
xorps xmm1, xmm0
movdqu xmmword [r10 + rcx*8], xmm1
cmp eax, r11d
jb 0x1400a1ff2
cmp eax, r8d
jae 0x1400a2191
sub r9, r10
lea rdx, [r10 + rax*8]
sub r8d, eax
mov ecx, r8d
nop dword [rax + rax]
mov rax, qword [r9 + rdx]
xor qword [rdx], rax
lea rdx, [rdx + 8]
sub rcx, 1
jne 0x1400a2070
pop rbx
ret
xor eax, eax
test r8d, r8d
je 0x1400a2191
cmp r8d, 8
jb 0x1400a2171
lea ecx, [r8 - 1]
lea r11, [rcx + r10]
add rcx, rdx
cmp r10, rcx
ja 0x1400a20b1
cmp r11, r9
jae 0x1400a2171
cmp r8d, 0x40
jb 0x1400a2141
mov qword [rsp + 0x10], rdi
mov ebx, r8d
and ebx, 0x3f
mov edi, r8d
sub edi, ebx
mov r11d, 0x20
movdqu xmm0, xmmword [rax + r10]
lea ecx, [r11 - 0x10]
movdqu xmm1, xmmword [rax + rdx]
xorps xmm1, xmm0
movdqu xmmword [rax + r10], xmm1
add eax, 0x40
movdqu xmm0, xmmword [rcx + r10]
movdqu xmm1, xmmword [rcx + rdx]
xorps xmm1, xmm0
movdqu xmmword [rcx + r10], xmm1
mov ecx, r11d
movdqu xmm0, xmmword [rcx + r10]
movdqu xmm1, xmmword [rcx + rdx]
xorps xmm1, xmm0
movdqu xmmword [rcx + r10], xmm1
lea ecx, [r11 + 0x10]
add r11d, 0x40
movdqu xmm0, xmmword [rcx + r10]
movdqu xmm1, xmmword [rcx + rdx]
xorps xmm1, xmm0
movdqu xmmword [rcx + r10], xmm1
cmp eax, edi
jb 0x1400a20d1
mov rdi, qword [rsp + 0x10]
cmp ebx, 8
jb 0x1400a216c
mov edx, r8d
and edx, 0xfffffff8
nop word [rax + rax]
movq xmm0, qword [rax + r10]
movq xmm1, qword [rax + r9]
xorps xmm1, xmm0
movq qword [rax + r10], xmm1
add eax, 8
cmp eax, edx
jb 0x1400a2150
cmp eax, r8d
jae 0x1400a2191
mov edx, eax
sub r9, r10
add rdx, r10
sub r8d, eax
mov ecx, r8d
nop
movzx eax, byte [rdx + r9]
xor byte [rdx], al
lea rdx, [rdx + 1]
sub rcx, 1
jne 0x1400a2180
pop rbx
ret
Function at 0x1400a4b70
Capabilities:
Hash data using sha512

Disassembly:
mov qword [rsp + 8], rbx
push rdi
sub rsp, 0x20
mov rdi, rdx
mov rbx, rcx
test rcx, rcx
je 0x1400a4c4d
test rdx, rdx
je 0x1400a4c4d
call fcn.1400a4a50
test eax, eax
jne 0x1400a4c52
movups xmm0, xmmword [rbx]
movabs rax, 0x6a09e667f3bcc908
movups xmmword [rdi], xmm0
movups xmm1, xmmword [rbx + 0x10]
movups xmmword [rdi + 0x10], xmm1
movups xmm0, xmmword [rbx + 0x20]
movups xmmword [rdi + 0x20], xmm0
movups xmm1, xmmword [rbx + 0x30]
movups xmmword [rdi + 0x30], xmm1
mov qword [rbx], rax
movabs rax, 0xbb67ae8584caa73b
mov qword [rbx + 8], rax
movabs rax, 0x3c6ef372fe94f82b
mov qword [rbx + 0x10], rax
movabs rax, 0xa54ff53a5f1d36f1
mov qword [rbx + 0x18], rax
movabs rax, 0x510e527fade682d1
mov qword [rbx + 0x20], rax
movabs rax, 0x9b05688c2b3e6c1f
mov qword [rbx + 0x28], rax
movabs rax, 0x1f83d9abfb41bd6b
mov qword [rbx + 0x30], rax
movabs rax, 0x5be0cd19137e2179
mov qword [rbx + 0x38], rax
xor eax, eax
mov dword [rbx + 0xc0], eax
mov qword [rbx + 0xc8], rax
mov qword [rbx + 0xd0], rax
mov rbx, qword [rsp + 0x30]
add rsp, 0x20
pop rdi
ret
mov eax, 0xffffff53
mov rbx, qword [rsp + 0x30]
add rsp, 0x20
pop rdi
ret
Function at 0x1400a7f10
Capabilities:
Encode data using xor

Disassembly:
sub rsp, 0x438
mov rax, qword [0x140122218]
xor rax, rsp
mov qword [rsp + 0x410], rax
mov r11d, r9d
mov r10, rdx
neg r11d
mov rdx, rcx
cmp r8d, 0x101
jle 0x1400a7f5b
mov eax, 0xfffffffd
mov rcx, qword [rsp + 0x410]
xor rcx, rsp
call fcn.1400c17f0
add rsp, 0x438
ret
mov qword [rsp + 0x450], rbx
mov ebx, dword [rcx]
mov eax, ebx
xor eax, dword [r10]
and eax, r11d
mov qword [rsp + 0x428], rdi
mov edi, dword [rcx + 8]
mov ecx, edi
xor ecx, dword [r10 + 8]
and ecx, r11d
movsxd r8, r8d
mov dword [rsp], eax
mov dword [rsp + 8], ecx
test r8, r8
jle 0x1400a8052
mov qword [rsp + 0x430], rsi
lea rcx, [rdx + 0xc]
mov qword [rsp + 0x420], r14
mov rsi, r10
sub rsi, rdx
lea r14, [rsp]
sub r14, rdx
mov r9, r8
nop dword [rax + rax]
mov eax, dword [rsi + rcx]
xor eax, dword [rcx]
lea rcx, [rcx + 4]
and eax, r11d
mov dword [r14 + rcx - 4], eax
sub r9, 1
jne 0x1400a7fc0
xor edi, dword [rsp + 8]
lea r9, [rsp]
mov r11d, dword [rsp]
lea rcx, [rdx + 0xc]
mov r14, qword [rsp + 0x420]
xor ebx, r11d
mov rsi, qword [rsp + 0x430]
sub r9, rdx
mov dword [rdx], ebx
mov dword [rdx + 8], edi
mov rdx, r8
nop word [rax + rax]
mov eax, dword [rcx + r9]
xor dword [rcx], eax
lea rcx, [rcx + 4]
sub rdx, 1
jne 0x1400a8010
xor dword [r10], r11d
lea r9, [rsp]
sub r9, r10
mov dword [r10 + 8], edx
lea rcx, [r10 + 0xc]
nop dword [rax]
nop word [rax + rax]
mov edx, dword [r9 + rcx]
xor dword [rcx], edx
lea rcx, [rcx + 4]
sub r8, 1
jne 0x1400a8040
jmp 0x1400a8066
xor ebx, eax
xor edi, ecx
mov dword [rdx], ebx
mov dword [rdx + 8], edi
xor dword [r10], eax
mov dword [r10 + 8], 0
mov rbx, qword [rsp + 0x450]
xor eax, eax
mov rdi, qword [rsp + 0x428]
mov rcx, qword [rsp + 0x410]
xor rcx, rsp
call fcn.1400c17f0
add rsp, 0x438
ret
Function at 0x1400af7d0
Capabilities:
Hash data using sha256

Disassembly:
mov qword [rsp + 8], rbx
push rdi
sub rsp, 0x20
mov rdi, rdx
mov rbx, rcx
test rcx, rcx
je 0x1400af916
test rdx, rdx
je 0x1400af916
call fcn.1400af2d0
test eax, eax
jne 0x1400af91b
mov ecx, dword [rbx]
mov eax, ecx
rol ecx, 8
ror eax, 8
xor ecx, eax
and ecx, 0xff00ff
xor ecx, eax
mov dword [rbx], ecx
mov ecx, dword [rbx + 4]
mov eax, ecx
rol ecx, 8
ror eax, 8
xor ecx, eax
and ecx, 0xff00ff
xor ecx, eax
mov dword [rbx + 4], ecx
mov ecx, dword [rbx + 8]
mov eax, ecx
rol ecx, 8
ror eax, 8
xor ecx, eax
and ecx, 0xff00ff
xor ecx, eax
mov dword [rbx + 8], ecx
mov ecx, dword [rbx + 0xc]
mov eax, ecx
rol ecx, 8
ror eax, 8
xor ecx, eax
and ecx, 0xff00ff
xor ecx, eax
mov dword [rbx + 0xc], ecx
mov ecx, dword [rbx + 0x10]
mov eax, ecx
rol ecx, 8
ror eax, 8
xor ecx, eax
and ecx, 0xff00ff
xor ecx, eax
mov dword [rbx + 0x10], ecx
mov ecx, dword [rbx + 0x14]
mov eax, ecx
rol ecx, 8
ror eax, 8
xor ecx, eax
and ecx, 0xff00ff
xor ecx, eax
mov dword [rbx + 0x14], ecx
mov ecx, dword [rbx + 0x18]
mov eax, ecx
rol ecx, 8
ror eax, 8
xor ecx, eax
and ecx, 0xff00ff
xor ecx, eax
mov dword [rbx + 0x18], ecx
mov ecx, dword [rbx + 0x1c]
mov eax, ecx
ror eax, 8
rol ecx, 8
xor ecx, eax
and ecx, 0xff00ff
xor ecx, eax
mov dword [rbx + 0x1c], ecx
xor eax, eax
movups xmm0, xmmword [rbx]
movups xmmword [rdi], xmm0
movups xmm1, xmmword [rbx + 0x10]
movups xmmword [rdi + 0x10], xmm1
mov dword [rbx], 0x6a09e667
mov dword [rbx + 4], 0xbb67ae85
mov dword [rbx + 8], 0x3c6ef372
mov dword [rbx + 0xc], 0xa54ff53a
mov dword [rbx + 0x10], 0x510e527f
mov dword [rbx + 0x14], 0x9b05688c
mov dword [rbx + 0x18], 0x1f83d9ab
mov dword [rbx + 0x1c], 0x5be0cd19
mov qword [rbx + 0x60], rax
mov dword [rbx + 0x68], eax
mov rbx, qword [rsp + 0x30]
add rsp, 0x20
pop rdi
ret
mov eax, 0xffffff53
mov rbx, qword [rsp + 0x30]
add rsp, 0x20
pop rdi
ret