joyce8/EMBER2024-capa huggingface dataset:
Function at 0x18000f70c
Capabilities:
Hash data using sha512

Disassembly:
mov rax, rsp
mov qword [rax + 0x10], rbx
mov qword [rax + 0x18], rsi
push rdi
sub rsp, 0xa0
mov rbx, rcx
mov qword [rax + 8], rcx
lea rdx, [rcx + 0x60]
xor r10d, r10d
mov qword [rdx + 0x10], r10
mov qword [rdx + 0x18], 0xf
mov byte [rdx], r10b
mov qword [rcx + 0x110], 0x200
mov byte [rcx + 0x120], r10b
lea r11d, [r10 + 0x10]
mov eax, r11d
add rcx, 0x40
mov byte [rcx], r10b
inc rcx
sub rax, 1
jne 0x18000f759
mov rax, r11
lea rcx, [rbx + 0x50]
mov byte [rcx], r10b
inc rcx
sub rax, 1
jne 0x18000f76c
mov qword [rbx + 0x100], r10
mov qword [rbx + 0x108], r10
mov qword [rbx + 0x118], r10
mov byte [rbx + 0x120], r10b
movaps xmm0, xmmword [0x180063b40]
movups xmmword [rbx], xmm0
movaps xmm1, xmmword [0x180063b50]
movups xmmword [rbx + 0x10], xmm1
movaps xmm0, xmmword [0x180063b60]
movups xmmword [rbx + 0x20], xmm0
movaps xmm1, xmmword [0x180063b70]
movups xmmword [rbx + 0x30], xmm1
xor qword [rbx], 0x1010040
movabs rax, 0xffffffff00000000
xor qword [rbx + 8], rax
mov rdi, qword [rbx + 0x70]
mov rax, rdi
shl rax, 8
xor qword [rbx], rax
mov rax, qword [rbx + 0x40]
xor qword [rbx + 0x20], rax
mov rax, qword [rbx + 0x48]
xor qword [rbx + 0x28], rax
mov rax, qword [rbx + 0x50]
xor qword [rbx + 0x30], rax
mov rax, qword [rbx + 0x58]
xor qword [rbx + 0x38], rax
test rdi, rdi
je 0x18000f84c
cmp qword [rdx + 0x18], r11
jb 0x18000f810
mov rdx, qword [rdx]
mov r8, rdi
lea rcx, [rsp + 0x20]
call fcn.18002bd80
mov esi, 0x80
cmp rdi, rsi
je 0x18000f83c
mov r8d, esi
sub r8, rdi
lea rcx, [rsp + 0x20]
add rcx, rdi
xor edx, edx
call fcn.18002c230
mov r8, rsi
lea rdx, [rsp + 0x20]
mov rcx, rbx
call fcn.180009700
mov rax, rbx
lea r11, [rsp + 0xa0]
mov rbx, qword [r11 + 0x18]
mov rsi, qword [r11 + 0x20]
mov rsp, r11
pop rdi
ret
Function at 0x180019b14
Capabilities:
Hash data using sha512

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
push rdi
sub rsp, 0xa0
mov rbx, rcx
xor edx, edx
mov qword [rcx + 0x100], rdx
mov qword [rcx + 0x108], rdx
mov qword [rcx + 0x118], rdx
mov byte [rcx + 0x120], dl
movaps xmm0, xmmword [0x180063b40]
movups xmmword [rcx], xmm0
movaps xmm1, xmmword [0x180063b50]
movups xmmword [rcx + 0x10], xmm1
movaps xmm0, xmmword [0x180063b60]
movups xmmword [rcx + 0x20], xmm0
movaps xmm1, xmmword [0x180063b70]
movups xmmword [rcx + 0x30], xmm1
mov rdi, qword [rcx + 0x70]
mov rax, qword [rbx + 0x110]
mov rcx, rdi
shr rax, 3
xor rcx, 0x10100
shl rcx, 8
xor rcx, rax
xor qword [rbx], rcx
mov rax, qword [rbx + 0x40]
xor qword [rbx + 0x20], rax
mov rax, qword [rbx + 0x48]
xor qword [rbx + 0x28], rax
mov rax, qword [rbx + 0x50]
xor qword [rbx + 0x30], rax
mov rax, qword [rbx + 0x58]
xor qword [rbx + 0x38], rax
test rdi, rdi
je 0x180019c03
lea rdx, [rbx + 0x60]
cmp qword [rdx + 0x18], 0x10
jb 0x180019bc7
mov rdx, qword [rdx]
mov r8, rdi
lea rcx, [rsp + 0x20]
call fcn.18002bd80
mov esi, 0x80
cmp rdi, rsi
je 0x180019bf3
mov r8d, esi
lea rcx, [rsp + 0x20]
sub r8, rdi
add rcx, rdi
xor edx, edx
call fcn.18002c230
mov r8, rsi
lea rdx, [rsp + 0x20]
mov rcx, rbx
call fcn.180009700
lea r11, [rsp + 0xa0]
mov rbx, qword [r11 + 0x10]
mov rsi, qword [r11 + 0x18]
mov rsp, r11
pop rdi
ret
Function at 0x18001b038
Capabilities:
Encode data using xor

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rbp
mov qword [rax + 0x18], rsi
mov qword [rax + 0x20], r14
mov r10, rcx
mov rbx, rdx
xor ecx, ecx
mov r9, r10
lea r11d, [rcx + 0x10]
mov rax, rcx
inc rcx
shl rax, 4
xor rax, qword [r9]
xor rax, r8
mov qword [r9], rax
lea r9, [r9 + 8]
sub r11, 1
jne 0x18001b05a
lea edx, [r11 + 0x15]
add rbx, 0x78
lea r11d, [rdx - 0x25]
mov esi, 0x8000000f
lea rbp, [0x18005b740]
lea eax, [rdx - 2]
lea r9d, [rdx - 1]
and eax, esi
jge 0x18001b0a1
dec eax
or eax, r11d
inc eax
cdqe
lea r14, [0x18005d740]
mov rcx, qword [r10 + rax*8]
lea eax, [rdx - 3]
shr rcx, 0x20
movzx r8d, cl
and eax, esi
jge 0x18001b0c4
dec eax
or eax, r11d
inc eax
mov r8, qword [r14 + r8*8]
cdqe
mov ecx, dword [r10 + rax*8]
shr rcx, 0x18
movzx eax, cl
xor r8, qword [rbp + rax*8 + 0x1800]
lea eax, [rdx - 4]
and eax, esi
jge 0x18001b0eb
dec eax
or eax, r11d
inc eax
cdqe
mov ecx, dword [r10 + rax*8]
shr rcx, 0x10
movzx eax, cl
xor r8, qword [rbp + rax*8 + 0x1000]
lea eax, [rdx - 5]
and eax, esi
jge 0x18001b10e
dec eax
or eax, r11d
inc eax
cdqe
mov ecx, dword [r10 + rax*8]
shr rcx, 8
movzx eax, cl
xor r8, qword [rbp + rax*8 + 0x800]
mov eax, r9d
and eax, esi
jge 0x18001b131
dec eax
or eax, r11d
inc eax
cdqe
mov rcx, qword [r10 + rax*8]
shr rcx, 0x28
movzx eax, cl
xor r8, qword [rbp + rax*8 + 0x2800]
lea eax, [rdx + 5]
and eax, esi
jge 0x18001b154
dec eax
or eax, r11d
inc eax
cdqe
movzx ecx, byte [r10 + rax*8 + 7]
lea eax, [rdx - 6]
xor r8, qword [rbp + rcx*8 + 0x3800]
and eax, esi
jge 0x18001b172
dec eax
or eax, r11d
inc eax
cdqe
movzx ecx, byte [r10 + rax*8]
xor r8, qword [rbp + rcx*8]
and edx, esi
jge 0x18001b189
dec edx
or edx, r11d
inc edx
movsxd rax, edx
mov edx, r9d
movzx ecx, byte [r10 + rax*8 + 6]
lea eax, [r9 - 6]
xor r8, qword [rbp + rcx*8 + 0x3000]
mov qword [rbx], r8
sub rbx, 8
test eax, eax
jns 0x18001b08f
mov rbx, qword [rsp + 8]
mov rbp, qword [rsp + 0x10]
mov rsi, qword [rsp + 0x18]
mov r14, qword [rsp + 0x20]
ret
Function at 0x18001b1c8
Capabilities:
Encode data using xor

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rbp
mov qword [rax + 0x18], rsi
mov qword [rax + 0x20], r14
mov r10, rcx
mov rbx, rdx
xor ecx, ecx
mov r9, r10
lea r11d, [rcx + 8]
mov rax, rcx
inc rcx
shl rax, 4
xor rax, qword [r9]
xor rax, r8
mov qword [r9], rax
lea r9, [r9 + 8]
sub r11, 1
jne 0x18001b1ea
lea edx, [r11 + 0xd]
add rbx, 0x38
lea r11d, [rdx - 0x15]
mov esi, 0x80000007
lea rbp, [0x18005b740]
lea eax, [rdx - 2]
lea r9d, [rdx - 1]
and eax, esi
jge 0x18001b231
dec eax
or eax, r11d
inc eax
cdqe
lea r14, [0x18005d740]
mov rcx, qword [r10 + rax*8]
lea eax, [rdx - 3]
shr rcx, 0x20
movzx r8d, cl
and eax, esi
jge 0x18001b254
dec eax
or eax, r11d
inc eax
mov r8, qword [r14 + r8*8]
cdqe
mov ecx, dword [r10 + rax*8]
shr rcx, 0x18
movzx eax, cl
xor r8, qword [rbp + rax*8 + 0x1800]
lea eax, [rdx - 4]
and eax, esi
jge 0x18001b27b
dec eax
or eax, r11d
inc eax
cdqe
mov ecx, dword [r10 + rax*8]
shr rcx, 0x10
movzx eax, cl
xor r8, qword [rbp + rax*8 + 0x1000]
lea eax, [rdx - 5]
and eax, esi
jge 0x18001b29e
dec eax
or eax, r11d
inc eax
cdqe
mov ecx, dword [r10 + rax*8]
shr rcx, 8
movzx eax, cl
xor r8, qword [rbp + rax*8 + 0x800]
mov eax, r9d
and eax, esi
jge 0x18001b2c1
dec eax
or eax, r11d
inc eax
cdqe
mov rcx, qword [r10 + rax*8]
shr rcx, 0x28
movzx eax, cl
xor r8, qword [rbp + rax*8 + 0x2800]
lea eax, [rdx + 1]
and eax, esi
jge 0x18001b2e4
dec eax
or eax, r11d
inc eax
cdqe
movzx ecx, byte [r10 + rax*8 + 7]
lea eax, [rdx - 6]
xor r8, qword [rbp + rcx*8 + 0x3800]
and eax, esi
jge 0x18001b302
dec eax
or eax, r11d
inc eax
cdqe
movzx ecx, byte [r10 + rax*8]
xor r8, qword [rbp + rcx*8]
and edx, esi
jge 0x18001b319
dec edx
or edx, r11d
inc edx
movsxd rax, edx
mov edx, r9d
movzx ecx, byte [r10 + rax*8 + 6]
lea eax, [r9 - 6]
xor r8, qword [rbp + rcx*8 + 0x3000]
mov qword [rbx], r8
sub rbx, 8
test eax, eax
jns 0x18001b21f
mov rbx, qword [rsp + 8]
mov rbp, qword [rsp + 0x10]
mov rsi, qword [rsp + 0x18]
mov r14, qword [rsp + 0x20]
ret
Function at 0x18001b358
Capabilities:
Encode data using xor

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rbp
mov qword [rax + 0x18], rsi
mov qword [rax + 0x20], r14
mov r10, rcx
mov rbx, rdx
xor ecx, ecx
mov r9, r10
lea r11d, [rcx + 0x10]
mov rax, rcx
inc rcx
shl rax, 0x3c
not rax
xor rax, qword [r9]
xor rax, r8
mov qword [r9], rax
lea r9, [r9 + 8]
sub r11, 1
jne 0x18001b37a
lea edx, [r11 + 0x13]
add rbx, 0x78
lea r11d, [rdx - 0x23]
mov esi, 0x8000000f
lea rbp, [0x18005b740]
lea eax, [rdx - 2]
lea r9d, [rdx - 1]
and eax, esi
jge 0x18001b3c4
dec eax
or eax, r11d
inc eax
cdqe
lea r14, [0x18005df40]
mov rcx, qword [r10 + rax*8]
lea eax, [rdx - 4]
shr rcx, 0x28
movzx r8d, cl
and eax, esi
jge 0x18001b3e7
dec eax
or eax, r11d
inc eax
mov r8, qword [r14 + r8*8]
cdqe
mov rcx, qword [r10 + rax*8]
shr rcx, 0x20
movzx eax, cl
xor r8, qword [rbp + rax*8 + 0x2000]
lea eax, [rdx + 7]
and eax, esi
jge 0x18001b40e
dec eax
or eax, r11d
inc eax
cdqe
mov ecx, dword [r10 + rax*8]
shr rcx, 0x18
movzx eax, cl
xor r8, qword [rbp + rax*8 + 0x1800]
lea eax, [rdx + 1]
and eax, esi
jge 0x18001b431
dec eax
or eax, r11d
inc eax
cdqe
mov ecx, dword [r10 + rax*8]
shr rcx, 0x10
movzx eax, cl
xor r8, qword [rbp + rax*8 + 0x1000]
mov eax, r9d
and eax, esi
jge 0x18001b454
dec eax
or eax, r11d
inc eax
cdqe
mov ecx, dword [r10 + rax*8]
shr rcx, 8
movzx eax, cl
xor r8, qword [rbp + rax*8 + 0x800]
lea eax, [rdx + 2]
and eax, esi
jge 0x18001b477
dec eax
or eax, r11d
inc eax
cdqe
movzx ecx, byte [r10 + rax*8 + 7]
lea eax, [rdx - 3]
xor r8, qword [rbp + rcx*8 + 0x3800]
and eax, esi
jge 0x18001b495
dec eax
or eax, r11d
inc eax
cdqe
movzx ecx, byte [r10 + rax*8]
xor r8, qword [rbp + rcx*8]
and edx, esi
jge 0x18001b4ac
dec edx
or edx, r11d
inc edx
movsxd rax, edx
mov edx, r9d
movzx ecx, byte [r10 + rax*8 + 6]
lea eax, [r9 - 4]
xor r8, qword [rbp + rcx*8 + 0x3000]
mov qword [rbx], r8
sub rbx, 8
test eax, eax
jns 0x18001b3b2
mov rbx, qword [rsp + 8]
mov rbp, qword [rsp + 0x10]
mov rsi, qword [rsp + 0x18]
mov r14, qword [rsp + 0x20]
ret
Function at 0x18001b4e8
Capabilities:
Encode data using xor

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rbp
mov qword [rax + 0x18], rsi
mov qword [rax + 0x20], r14
mov r10, rcx
mov rbx, rdx
xor ecx, ecx
mov r9, r10
lea r11d, [rcx + 8]
mov rax, rcx
inc rcx
shl rax, 0x3c
not rax
xor rax, qword [r9]
xor rax, r8
mov qword [r9], rax
lea r9, [r9 + 8]
sub r11, 1
jne 0x18001b50a
lea edx, [r11 + 0xb]
add rbx, 0x38
lea r11d, [rdx - 0x13]
mov esi, 0x80000007
lea rbp, [0x18005b740]
lea eax, [rdx - 2]
lea r9d, [rdx - 1]
and eax, esi
jge 0x18001b554
dec eax
or eax, r11d
inc eax
cdqe
lea r14, [0x18005df40]
mov rcx, qword [r10 + rax*8]
lea eax, [rdx - 4]
shr rcx, 0x28
movzx r8d, cl
and eax, esi
jge 0x18001b577
dec eax
or eax, r11d
inc eax
mov r8, qword [r14 + r8*8]
cdqe
mov rcx, qword [r10 + rax*8]
shr rcx, 0x20
movzx eax, cl
xor r8, qword [rbp + rax*8 + 0x2000]
lea eax, [rdx + 3]
and eax, esi
jge 0x18001b59e
dec eax
or eax, r11d
inc eax
cdqe
mov ecx, dword [r10 + rax*8]
shr rcx, 0x18
movzx eax, cl
xor r8, qword [rbp + rax*8 + 0x1800]
lea eax, [rdx + 1]
and eax, esi
jge 0x18001b5c1
dec eax
or eax, r11d
inc eax
cdqe
mov ecx, dword [r10 + rax*8]
shr rcx, 0x10
movzx eax, cl
xor r8, qword [rbp + rax*8 + 0x1000]
mov eax, r9d
and eax, esi
jge 0x18001b5e4
dec eax
or eax, r11d
inc eax
cdqe
mov ecx, dword [r10 + rax*8]
shr rcx, 8
movzx eax, cl
xor r8, qword [rbp + rax*8 + 0x800]
lea eax, [rdx + 2]
and eax, esi
jge 0x18001b607
dec eax
or eax, r11d
inc eax
cdqe
movzx ecx, byte [r10 + rax*8 + 7]
lea eax, [rdx - 3]
xor r8, qword [rbp + rcx*8 + 0x3800]
and eax, esi
jge 0x18001b625
dec eax
or eax, r11d
inc eax
cdqe
movzx ecx, byte [r10 + rax*8]
xor r8, qword [rbp + rcx*8]
and edx, esi
jge 0x18001b63c
dec edx
or edx, r11d
inc edx
movsxd rax, edx
mov edx, r9d
movzx ecx, byte [r10 + rax*8 + 6]
lea eax, [r9 - 4]
xor r8, qword [rbp + rcx*8 + 0x3000]
mov qword [rbx], r8
sub rbx, 8
test eax, eax
jns 0x18001b542
mov rbx, qword [rsp + 8]
mov rbp, qword [rsp + 0x10]
mov rsi, qword [rsp + 0x18]
mov r14, qword [rsp + 0x20]
ret
Function at 0x18001be38
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 0x18], rbx
mov qword [rsp + 0x20], rdi
push rbp
lea rbp, [rsp - 0xe0]
sub rsp, 0x1e0
mov rdi, rdx
mov rax, rcx
lea r8, [rsp + 0x60]
mov r9d, 2
movups xmm0, xmmword [rax]
movups xmmword [r8], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [r8 + 0x10], xmm1
movups xmm0, xmmword [rax + 0x20]
movups xmmword [r8 + 0x20], xmm0
movups xmm1, xmmword [rax + 0x30]
movups xmmword [r8 + 0x30], xmm1
movups xmm0, xmmword [rax + 0x40]
movups xmmword [r8 + 0x40], xmm0
movups xmm1, xmmword [rax + 0x50]
movups xmmword [r8 + 0x50], xmm1
movups xmm0, xmmword [rax + 0x60]
movups xmmword [r8 + 0x60], xmm0
lea r8, [r8 + 0x80]
movups xmm1, xmmword [rax + 0x70]
movups xmmword [r8 - 0x10], xmm1
lea rax, [rax + 0x80]
sub r9, 1
jne 0x18001be63
movups xmm0, xmmword [rax]
movups xmmword [r8], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [r8 + 0x10], xmm1
movups xmm0, xmmword [rax + 0x20]
movups xmmword [r8 + 0x20], xmm0
movups xmm1, xmmword [rax + 0x30]
movups xmmword [r8 + 0x30], xmm1
movups xmm0, xmmword [rax + 0x40]
movups xmmword [r8 + 0x40], xmm0
movups xmm1, xmmword [rax + 0x50]
movups xmmword [r8 + 0x50], xmm1
movups xmm0, xmmword [rax + 0x60]
movups xmmword [r8 + 0x60], xmm0
mov rax, qword [rax + 0x70]
mov qword [r8 + 0x70], rax
mov rdx, qword [rcx + 0x160]
shr rdx, 3
lea rcx, [rsp + 0x20]
call fcn.18001dacc
nop
mov rbx, qword [rbp + 0xc8]
shr rbx, 3
mov rcx, qword [rbp + 0xb8]
lea rax, [rcx + 1]
mov qword [rbp + 0xb8], rax
mov byte [rbp + rcx + 0x28], 6
mov rax, qword [rbp + 0xb8]
cmp rbx, rax
je 0x18001bf5a
lea rcx, [rbp + 0x28]
add rcx, rax
mov r8, rbx
sub r8, rax
xor edx, edx
call fcn.18002c230
or byte [rbp + rbx + 0x27], 0x80
mov rdx, qword [rbp + 0xc8]
shr rdx, 6
xor ecx, ecx
test rdx, rdx
je 0x18001bf83
mov rax, qword [rbp + rcx*8 + 0x28]
xor qword [rsp + rcx*8 + 0x60], rax
inc rcx
cmp rcx, rdx
jb 0x18001bf71
lea rcx, [rsp + 0x60]
call fcn.18001a644
mov r8, qword [rbp + 0xc0]
shr r8, 3
lea rdx, [rsp + 0x60]
mov rbx, qword [rsp + 0x20]
mov rcx, rbx
call fcn.18002bd80
movaps xmm0, xmmword [rdi]
movdqa xmmword [rsp + 0x40], xmm0
mov r8, qword [rsp + 0x28]
mov qword [rbp + 0xf0], r8
mov qword [rbp + 0xf8], rbx
lea r9, [rsp + 0x40]
mov rdx, rbx
lea rcx, [rsp + 0x50]
call fcn.18001e758
nop
test rbx, rbx
je 0x18001bffd
mov rdx, qword [rsp + 0x30]
sub rdx, rbx
mov rcx, rbx
call fcn.180018498
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x20], xmm0
and qword [rsp + 0x30], 0
mov eax, 0xc8
lea rcx, [rsp + 0x60]
mov byte [rcx], 0
inc rcx
sub rax, 1
jne 0x18001c007
mov eax, 0x90
lea rcx, [rbp + 0x28]
mov byte [rcx], 0
inc rcx
sub rax, 1
jne 0x18001c01c
lea r11, [rsp + 0x1e0]
mov rbx, qword [r11 + 0x20]
mov rdi, qword [r11 + 0x28]
mov rsp, r11
pop rbp
ret
Function at 0x18001d0d4
Capabilities:
Encode data using xor
Hash data using sha256

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rbp
mov qword [rax + 0x18], r8
push rsi
push rdi
push r12
push r14
push r15
sub rsp, 0x60
mov rbp, r8
mov rdi, rcx
mov r12d, 0x40
mov edx, r12d
lea rcx, [rax - 0x48]
call fcn.18001dacc
nop
xor r14d, r14d
mov rdx, qword [rdi + 0x90]
mov rsi, qword [rsp + 0x40]
cmp byte [rdi + 0xb0], r14b
jne 0x18001d17c
lea rax, [rdx*8]
add qword [rdi + 0x98], rax
mov byte [rdi + 0xb0], 1
and qword [rdi + 0xa8], r14
cmp rdx, r12
je 0x18001d156
lea rcx, [rdi + 0x50]
add rcx, rdx
mov r8d, r12d
sub r8, rdx
xor edx, edx
call fcn.18002c230
mov r9b, 1
mov r8d, 1
lea rdx, [rdi + 0x50]
mov rcx, rdi
call fcn.18000aa18
movups xmm0, xmmword [rdi]
movups xmmword [rdi + 0x50], xmm0
movups xmm1, xmmword [rdi + 0x10]
movups xmmword [rdi + 0x60], xmm1
jmp 0x18001d1b2
cmp rdx, 0x20
jae 0x18001d1b2
mov eax, 0x20
sub rax, rdx
mov r14, r12
cmp rax, r12
cmovb r14, rax
add rdx, rdi
mov r8, r14
mov rcx, rsi
call fcn.18002bd80
add qword [rdi + 0x90], r14
cmp r14, r12
jae 0x18001d276
mov ebp, 0x20
mov rcx, qword [rdi + 0xa8]
lea rax, [rcx + 1]
mov qword [rdi + 0xa8], rax
movups xmm0, xmmword [0x18006c000]
movups xmmword [rdi], xmm0
movups xmm1, xmmword [0x18006c010]
movups xmmword [rdi + 0x10], xmm1
mov rbx, r12
sub rbx, r14
mov eax, ebx
cmp rbx, rbp
cmova eax, ebp
xor dword [rdi], eax
xor dword [rdi + 4], ebp
xor dword [rdi + 8], ecx
xor dword [rdi + 0xc], 0x2000ffff
mov eax, dword [rdi + 0x20]
xor dword [rdi + 0x10], eax
mov eax, dword [rdi + 0x24]
xor dword [rdi + 0x14], eax
mov eax, dword [rdi + 0x28]
xor dword [rdi + 0x18], eax
mov eax, dword [rdi + 0x2c]
xor dword [rdi + 0x1c], eax
mov qword [rdi + 0x98], 0x100
xorps xmm0, xmm0
movups xmmword [rdi + 0x70], xmm0
movups xmmword [rdi + 0x80], xmm0
mov r9b, 1
mov r8d, 1
lea rdx, [rdi + 0x50]
mov rcx, rdi
call fcn.18000aa18
cmp rbx, rbp
cmova rbx, rbp
mov qword [rdi + 0x90], rbx
lea rcx, [r14 + rsi]
mov r8, rbx
mov rdx, rdi
call fcn.18002bd80
add r14, qword [rdi + 0x90]
cmp r14, r12
jb 0x18001d1b7
mov rbp, qword [rsp + 0xa0]
movaps xmm0, xmmword [rbp]
movdqa xmmword [rsp + 0x20], xmm0
lea r9, [rsp + 0x20]
mov r8, qword [rsp + 0x48]
mov rdx, rsi
lea rcx, [rsp + 0x30]
call fcn.18001e758
nop
test rsi, rsi
je 0x18001d2ad
mov rdx, qword [rsp + 0x50]
sub rdx, rsi
mov rcx, rsi
call fcn.180018498
lea r11, [rsp + 0x60]
mov rbx, qword [r11 + 0x30]
mov rbp, qword [r11 + 0x38]
mov rsp, r11
pop r15
pop r14
pop r12
pop rdi
pop rsi
ret
Function at 0x18001db58
Capabilities:
Hash data using sha512

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rbp
mov qword [rax + 0x18], rsi
mov qword [rax + 0x20], rdi
push r12
push r14
push r15
sub rsp, 0x20
mov rdi, rcx
xor esi, esi
mov rcx, qword [rcx + 0x100]
mov rbp, rdx
lea r12d, [rsi + 0x40]
cmp byte [rdi + 0x120], sil
jne 0x18001dd1d
lea rax, [rcx*8]
mov byte [rdi + 0x120], 1
add qword [rdi + 0x108], rax
lea r8d, [r12 + 0x40]
mov qword [rdi + 0x118], rsi
cmp rcx, r8
je 0x18001dbcd
sub r8, rcx
xor edx, edx
sub rcx, 0xffffffffffffff80
add rcx, rdi
call fcn.18002c230
lea rbx, [rdi + 0x80]
mov r9b, 1
mov rdx, rbx
mov r8d, 1
mov rcx, rdi
call fcn.18000a794
movups xmm0, xmmword [rdi]
movups xmmword [rbx], xmm0
movups xmm1, xmmword [rdi + 0x10]
movups xmmword [rbx + 0x10], xmm1
movups xmm0, xmmword [rdi + 0x20]
movups xmmword [rbx + 0x20], xmm0
movups xmm1, xmmword [rdi + 0x30]
movups xmmword [rbx + 0x30], xmm1
mov rcx, qword [rdi + 0x118]
movabs rdx, 0x4000000000
mov rbx, r12
mov r8, r12
sub rbx, rsi
cmp rbx, r12
lea rax, [rcx + 1]
mov qword [rdi + 0x118], rax
cmova rbx, r12
movaps xmm0, xmmword [0x180063b40]
mov rax, rbx
movups xmmword [rdi], xmm0
movaps xmm1, xmmword [0x180063b50]
movups xmmword [rdi + 0x10], xmm1
movaps xmm0, xmmword [0x180063b60]
movups xmmword [rdi + 0x20], xmm0
movaps xmm1, xmmword [0x180063b70]
movups xmmword [rdi + 0x30], xmm1
xor rax, qword [rdi]
btc qword [rdi + 0x10], 0xe
xor rax, rdx
mov qword [rdi], rax
xor edx, edx
mov rax, qword [rdi + 8]
xor rax, rcx
movabs rcx, 0xffffffff00000000
xor rax, rcx
lea rcx, [rdi + 0xc0]
mov qword [rdi + 8], rax
mov rax, qword [rdi + 0x40]
xor qword [rdi + 0x20], rax
mov rax, qword [rdi + 0x48]
xor qword [rdi + 0x28], rax
mov rax, qword [rdi + 0x50]
xor qword [rdi + 0x30], rax
mov rax, qword [rdi + 0x58]
xor qword [rdi + 0x38], rax
mov qword [rdi + 0x108], 0x200
call fcn.18002c230
mov r9b, 1
lea rdx, [rdi + 0x80]
mov r8d, 1
mov rcx, rdi
call fcn.18000a794
lea rcx, [rsi + rbp]
mov qword [rdi + 0x100], rbx
mov r8, rbx
mov rdx, rdi
call fcn.18002bd80
add rsi, qword [rdi + 0x100]
cmp rsi, r12
jb 0x18001dc06
mov rbx, qword [rsp + 0x40]
mov rbp, qword [rsp + 0x48]
mov rsi, qword [rsp + 0x50]
mov rdi, qword [rsp + 0x58]
add rsp, 0x20
pop r15
pop r14
pop r12
ret
cmp rcx, r12
jae 0x18001dc06
lea rdx, [rcx + rdi]
mov rax, r12
sub rax, rcx
mov rsi, r12
cmp rax, r12
mov rcx, rbp
cmovb rsi, rax
mov r8, rsi
call fcn.18002bd80
add qword [rdi + 0x100], rsi
jmp 0x18001dcf5
Function at 0x18001dd50
Capabilities:
Encode data using xor

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rbp
mov qword [rax + 0x18], rsi
mov qword [rax + 0x20], rdi
push r14
sub rsp, 0x20
mov rsi, qword [rcx + 0x1b0]
xor edi, edi
shr rsi, 3
mov rbp, r8
mov r14, rdx
mov rbx, rcx
cmp byte [rcx + 0x1c8], dil
jne 0x18001de28
mov dl, byte [rcx + 0x1c9]
test dl, dl
jne 0x18001ddac
cmp qword [rcx + 0x180], rdi
jne 0x18001ddaa
mov dl, 0x1f
cmp qword [rcx + 0x1a0], rdi
je 0x18001ddac
mov dl, 4
mov rcx, qword [rcx + 0x1b8]
lea rax, [rcx + 1]
mov qword [rbx + 0x1b8], rax
mov byte [rcx + rbx + 0xc8], dl
mov rax, qword [rbx + 0x1b8]
cmp rsi, rax
je 0x18001dde8
mov r8, rsi
lea rcx, [rbx + 0xc8]
sub r8, rax
add rcx, rax
xor edx, edx
call fcn.18002c230
or byte [rsi + rbx + 0xc7], 0x80
mov rdx, qword [rbx + 0x1b0]
shr rdx, 6
test rdx, rdx
je 0x18001de17
mov rcx, rbx
mov rax, qword [rcx + 0xc8]
xor qword [rcx], rax
lea rcx, [rcx + 8]
sub rdx, 1
jne 0x18001de03
mov rcx, rbx
call fcn.18001a644
mov byte [rbx + 0x1c8], 1
jmp 0x18001de90
mov rcx, qword [rcx + 0x1b8]
cmp rcx, rsi
jae 0x18001de90
lea rdx, [rcx + rbx]
mov rax, rsi
sub rax, rcx
mov rdi, rbp
cmp rax, rbp
mov rcx, r14
cmovb rdi, rax
mov r8, rdi
call fcn.18002bd80
add qword [rbx + 0x1b8], rdi
jmp 0x18001de90
test rdi, rdi
je 0x18001de69
mov rcx, rbx
call fcn.18001a644
mov r8, rbp
lea rcx, [rdi + r14]
sub r8, rdi
mov rdx, rbx
cmp rsi, r8
cmovb r8, rsi
mov qword [rbx + 0x1b8], r8
call fcn.18002bd80
add rdi, qword [rbx + 0x1b8]
cmp rdi, rbp
jb 0x18001de5c
mov rbx, qword [rsp + 0x30]
mov rbp, qword [rsp + 0x38]
mov rsi, qword [rsp + 0x40]
mov rdi, qword [rsp + 0x48]
add rsp, 0x20
pop r14
ret
Function at 0x18001deb0
Capabilities:
Encode data using xor
Hash data using sha512

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rbp
mov qword [rsp + 0x18], rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x20
mov rdi, rcx
xor esi, esi
mov rcx, qword [rcx + 0x100]
mov rbp, r8
mov r15, rdx
lea r8d, [rsi + 0x40]
cmp byte [rdi + 0x120], sil
jne 0x18001df50
mov r8d, 0x80
mov byte [rdi + 0x120], 1
mov qword [rdi + 0x118], rsi
cmp rcx, r8
je 0x18001df15
sub r8, rcx
xor edx, edx
sub rcx, 0xffffffffffffff80
add rcx, rdi
call fcn.18002c230
lea rbx, [rdi + 0x80]
mov r9b, 1
mov rdx, rbx
mov r8d, 1
mov rcx, rdi
call fcn.18000a794
movups xmm0, xmmword [rdi]
movups xmmword [rbx], xmm0
movups xmm1, xmmword [rdi + 0x10]
movups xmmword [rbx + 0x10], xmm1
movups xmm0, xmmword [rdi + 0x20]
movups xmmword [rbx + 0x20], xmm0
movups xmm1, xmmword [rdi + 0x30]
movups xmmword [rbx + 0x30], xmm1
jmp 0x18001df7b
cmp rcx, r8
jae 0x18001df81
mov rax, r8
lea rdx, [rcx + rdi]
sub rax, rcx
mov rsi, rbp
cmp rax, rbp
mov rcx, r15
cmovb rsi, rax
mov r8, rsi
call fcn.18002bd80
add qword [rdi + 0x100], rsi
mov r8d, 0x40
cmp rsi, rbp
jae 0x18001e07e
mov r14, rbp
shl r14, 0x20
mov rcx, qword [rdi + 0x118]
movabs rdx, 0x4000000000
mov rbx, rbp
sub rbx, rsi
cmp rbx, r8
lea rax, [rcx + 1]
mov qword [rdi + 0x118], rax
cmova rbx, r8
movaps xmm0, xmmword [0x180063b40]
mov rax, rbx
movups xmmword [rdi], xmm0
movaps xmm1, xmmword [0x180063b50]
movups xmmword [rdi + 0x10], xmm1
movaps xmm0, xmmword [0x180063b60]
movups xmmword [rdi + 0x20], xmm0
movaps xmm1, xmmword [0x180063b70]
movups xmmword [rdi + 0x30], xmm1
xor rax, qword [rdi]
btc qword [rdi + 0x10], 0xe
xor rax, rdx
mov qword [rdi], rax
xor edx, edx
mov rax, r14
xor rax, rcx
lea rcx, [rdi + 0xc0]
xor qword [rdi + 8], rax
mov rax, qword [rdi + 0x40]
xor qword [rdi + 0x20], rax
mov rax, qword [rdi + 0x48]
xor qword [rdi + 0x28], rax
mov rax, qword [rdi + 0x50]
xor qword [rdi + 0x30], rax
mov rax, qword [rdi + 0x58]
xor qword [rdi + 0x38], rax
mov qword [rdi + 0x108], 0x200
call fcn.18002c230
mov r9b, 1
lea rdx, [rdi + 0x80]
mov r8d, 1
mov rcx, rdi
call fcn.18000a794
lea rcx, [rsi + r15]
mov qword [rdi + 0x100], rbx
mov r8, rbx
mov rdx, rdi
call fcn.18002bd80
add rsi, qword [rdi + 0x100]
mov r8d, 0x40
cmp rsi, rbp
jb 0x18001df91
mov rbx, qword [rsp + 0x50]
mov rbp, qword [rsp + 0x58]
mov rsi, qword [rsp + 0x60]
add rsp, 0x20
pop r15
pop r14
pop r13
pop r12
pop rdi
ret