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

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rsi
push rbp
push rdi
push r14
lea rbp, [rsp - 0x30]
sub rsp, 0x130
mov rax, qword [0x1401b4080]
xor rax, rsp
mov qword [rbp + 0x20], rax
mov rsi, r8
mov r14, rdx
mov rbx, rcx
mov eax, dword [rcx + 8]
mov rcx, qword [rcx + 0x28]
bswap eax
test rcx, rcx
je 0x140044af1
mov dword [rcx], eax
inc dword [rbx + 8]
mov rdi, qword [rbx + 0x20]
xor edx, edx
mov r8d, 0xd0
lea rcx, [rsp + 0x50]
call fcn.1400dfed9
xor eax, eax
mov qword [rsp + 0x58], rax
movdqa xmm0, xmmword [0x140194640]
movdqu xmmword [rbp - 0x58], xmm0
mov byte [rbp - 0x5f], 1
lea rax, [rsp + 0x60]
mov qword [rbp - 0x48], rax
movdqu xmmword [rbp + 8], xmm0
mov byte [rbp + 1], 1
lea rax, [rbp - 0x40]
mov qword [rbp + 0x18], rax
mov dword [rbp - 0x40], 0x67452301
mov dword [rbp - 0x3c], 0xefcdab89
mov dword [rbp - 0x38], 0x98badcfe
mov dword [rbp - 0x34], 0x10325476
mov dword [rbp - 0x30], 0xc3d2e1f0
lea rax, vtable.CryptoPP::SHA1.0
mov qword [rsp + 0x50], rax
mov dword [rsp + 0x40], 1
mov byte [rsp + 0x38], 0
mov qword [rsp + 0x20], rdi
mov r9, qword [rbx + 0x28]
mov r8, rsi
mov rdx, r14
lea rcx, [rsp + 0x50]
call fcn.140052770
nop
mov rcx, qword [rbp + 0x10]
cmp qword [rbp + 8], rcx
cmovb rcx, qword [rbp + 8]
lea rax, [rbp - 0x40]
mov rdi, qword [rbp + 0x18]
cmp rdi, rax
jne 0x140044bb0
xor eax, eax
rep stosd dword [rdi], eax
mov rcx, qword [rbp - 0x50]
cmp qword [rbp - 0x58], rcx
cmovb rcx, qword [rbp - 0x58]
lea rax, [rsp + 0x60]
mov rdi, qword [rbp - 0x48]
cmp rdi, rax
jne 0x140044bcf
xor eax, eax
rep stosd dword [rdi], eax
mov rcx, qword [rbp + 0x20]
xor rcx, rsp
call fcn.1400ddf50
lea r11, [rsp + 0x130]
mov rbx, qword [r11 + 0x28]
mov rsi, qword [r11 + 0x30]
mov rsp, r11
pop r14
pop rdi
pop rbp
ret
Function at 0x14004b5e0
Capabilities:
Encode data using xor

Disassembly:
sub rsp, 8
test r8, r8
je 0x14004b742
cmp r8, 4
jb 0x14004b622
mov r9, r8
shr r9, 2
imul rax, r9, 0xfffffffffffffffc
add r8, rax
nop dword [rax]
nop word [rax + rax]
mov eax, dword [rdx]
add rdx, 4
xor dword [rcx], eax
add rcx, 4
sub r9, 1
jne 0x14004b610
xor r10d, r10d
test r8, r8
je 0x14004b742
cmp r8, 8
jb 0x14004b724
lea r9, [rcx - 1]
lea rax, [rdx - 1]
add r9, r8
add rax, r8
cmp rcx, rax
ja 0x14004b654
cmp r9, rdx
jae 0x14004b724
cmp r8, 0x40
jb 0x14004b6e3
mov r9, r8
mov qword [rsp], rbx
and r9d, 0x3f
mov r11, r8
sub r11, r9
mov rbx, rdx
lea rax, [rcx + 0x10]
sub rbx, rcx
nop dword [rax]
movdqu xmm0, xmmword [rax - 0x10]
add r10, 0x40
movdqu xmm1, xmmword [rax + rbx - 0x10]
lea rax, [rax + 0x40]
xorps xmm1, xmm0
movdqu xmm0, xmmword [rax + rbx - 0x40]
movdqu xmmword [rax - 0x50], xmm1
movdqu xmm2, xmmword [rax - 0x40]
movdqu xmm1, xmmword [rax + rbx - 0x30]
xorps xmm2, xmm0
movdqu xmmword [rax - 0x40], xmm2
movdqu xmm0, xmmword [rax - 0x30]
xorps xmm1, xmm0
movdqu xmmword [rax - 0x30], xmm1
movdqu xmm0, xmmword [rax - 0x20]
movdqu xmm1, xmmword [rax + rbx - 0x20]
xorps xmm1, xmm0
movdqu xmmword [rax - 0x20], xmm1
cmp r10, r11
jb 0x14004b680
mov rbx, qword [rsp]
cmp r9, 8
jb 0x14004b71f
mov r9, r8
and r9, 0xfffffffffffffff8
mov r11, rdx
lea rax, [r10 + rcx]
sub r11, rcx
nop dword [rax]
nop dword [rax + rax]
movq xmm0, qword [rax]
add r10, 8
movq xmm1, qword [r11 + rax]
lea rax, [rax + 8]
xorps xmm1, xmm0
movq qword [rax - 8], xmm1
cmp r10, r9
jb 0x14004b700
cmp r10, r8
jae 0x14004b742
sub rdx, rcx
lea r9, [r10 + rcx]
sub r8, r10
nop
movzx eax, byte [rdx + r9]
xor byte [r9], al
lea r9, [r9 + 1]
sub r8, 1
jne 0x14004b730
add rsp, 8
ret
Function at 0x14004b750
Capabilities:
Encode data using xor

Disassembly:
sub rsp, 8
test r9, r9
je 0x14004b8e6
cmp r9, 4
jb 0x14004b78a
mov r10, r9
shr r10, 2
imul rax, r10, 0xfffffffffffffffc
add r9, rax
mov eax, dword [rdx]
add rdx, 4
xor eax, dword [r8]
add r8, 4
mov dword [rcx], eax
add rcx, 4
sub r10, 1
jne 0x14004b771
xor r11d, r11d
test r9, r9
je 0x14004b8e6
cmp r9, 8
jb 0x14004b8bd
lea r10, [rcx - 1]
lea rax, [r8 - 1]
add r10, r9
add rax, r9
cmp rcx, rax
ja 0x14004b7bc
cmp r10, r8
jae 0x14004b8bd
lea rax, [rdx - 1]
add rax, r9
cmp rcx, rax
ja 0x14004b7d1
cmp r10, rdx
jae 0x14004b8bd
mov qword [rsp + 0x10], rbx
mov qword [rsp], rdi
cmp r9, 0x40
jb 0x14004b877
mov r10, r9
mov qword [rsp + 0x18], rsi
and r10d, 0x3f
mov rbx, r9
sub rbx, r10
mov rdi, rdx
lea rax, [r8 + 0x10]
sub rdi, r8
mov rsi, rcx
sub rsi, r8
nop word [rax + rax]
movdqu xmm0, xmmword [rdi + rax - 0x10]
add r11, 0x40
movdqu xmm1, xmmword [rax - 0x10]
movdqu xmm2, xmmword [rdi + rax]
lea rax, [rax + 0x40]
xorps xmm1, xmm0
movdqu xmm0, xmmword [rax - 0x40]
movdqu xmmword [rsi + rax - 0x50], xmm1
xorps xmm2, xmm0
movdqu xmm0, xmmword [rdi + rax - 0x30]
movdqu xmm1, xmmword [rax - 0x30]
movdqu xmmword [rsi + rax - 0x40], xmm2
xorps xmm1, xmm0
movdqu xmm0, xmmword [rdi + rax - 0x20]
movdqu xmm2, xmmword [rax - 0x20]
movdqu xmmword [rsi + rax - 0x30], xmm1
xorps xmm2, xmm0
movdqu xmmword [rsi + rax - 0x20], xmm2
cmp r11, rbx
jb 0x14004b810
mov rsi, qword [rsp + 0x18]
cmp r10, 8
jb 0x14004b8af
mov r10, r9
and r10, 0xfffffffffffffff8
mov rbx, rdx
lea rax, [r11 + r8]
sub rbx, r8
mov rdi, rcx
sub rdi, r8
nop
movq xmm1, qword [rax + rbx]
add r11, 8
movq xmm0, qword [rax]
lea rax, [rax + 8]
xorps xmm1, xmm0
movq qword [rdi + rax - 8], xmm1
cmp r11, r10
jb 0x14004b890
mov rdi, qword [rsp]
mov rbx, qword [rsp + 0x10]
cmp r11, r9
jae 0x14004b8e6
sub rdx, r8
lea r10, [r11 + r8]
sub rcx, r8
sub r9, r11
nop word [rax + rax]
movzx eax, byte [r10 + rdx]
xor al, byte [r10]
mov byte [rcx + r10], al
lea r10, [r10 + 1]
sub r9, 1
jne 0x14004b8d0
add rsp, 8
ret
Function at 0x14004b8f0
Capabilities:
Encode data using xor

Disassembly:
mov r9, r8
xor r11d, r11d
mov r10, rdx
mov r8d, r11d
cmp r9, 8
jb 0x14004b927
mov rdx, r9
shr rdx, 3
imul rax, rdx, 0xfffffffffffffff8
add r9, rax
mov rax, qword [rcx]
add rcx, 8
xor rax, qword [r10]
add r10, 8
or r8, rax
sub rdx, 1
jne 0x14004b910
mov rdx, r8
shr rdx, 0x20
or edx, r8d
mov r8d, edx
mov eax, edx
shr r8d, 8
or r8d, edx
shr eax, 0x10
and r8d, 0xff00
or r8d, eax
movzx eax, dl
shr r8d, 8
or r8d, eax
test r9, r9
je 0x14004ba18
sub rcx, r10
cmp r9, 8
jb 0x14004b9f9
mov rax, r9
lea rdx, [r10 + 4]
and rax, 0xfffffffffffffff8
xorps xmm4, xmm4
xorps xmm3, xmm3
nop dword [rax + rax]
movd xmm2, dword [rcx + rdx - 4]
xorps xmm0, xmm0
movd xmm1, dword [rdx - 4]
lea rdx, [rdx + 8]
punpcklbw xmm2, xmm0
add r11, 8
punpcklwd xmm2, xmm0
punpcklbw xmm1, xmm0
punpcklwd xmm1, xmm0
xorps xmm2, xmm1
movd xmm1, dword [rdx - 8]
punpcklbw xmm1, xmm0
orps xmm4, xmm2
movd xmm2, dword [rcx + rdx - 8]
punpcklbw xmm2, xmm0
punpcklwd xmm2, xmm0
punpcklwd xmm1, xmm0
xorps xmm2, xmm1
orps xmm3, xmm2
cmp r11, rax
jb 0x14004b980
orps xmm3, xmm4
movdqa xmm0, xmm3
psrldq xmm0, 8
orps xmm3, xmm0
movdqa xmm0, xmm3
psrldq xmm0, 4
orps xmm3, xmm0
movd eax, xmm3
or r8d, eax
cmp r11, r9
jae 0x14004ba18
add r10, r11
sub r9, r11
nop
movzx edx, byte [rcx + r10]
movzx eax, byte [r10]
lea r10, [r10 + 1]
xor edx, eax
or r8d, edx
sub r9, 1
jne 0x14004ba00
test r8d, r8d
sete al
ret
Function at 0x140053e40
Capabilities:
Hash data using sha256

Disassembly:
mov qword [rsp + 0x20], rbx
push rbp
push rsi
push rdi
push r14
push r15
lea rbp, [rsp - 0x37]
sub rsp, 0x100
mov rax, qword [0x1401b4080]
xor rax, rsp
mov qword [rbp + 0x2f], rax
mov rbx, r8
mov rdi, rdx
mov r15, rcx
xor edx, edx
mov r8d, 0xd8
lea rcx, [rsp + 0x20]
call fcn.1400dfed9
xor eax, eax
mov qword [rsp + 0x28], rax
movdqa xmm0, xmmword [0x140194640]
movdqu xmmword [rbp - 0x51], xmm0
mov byte [rbp - 0x58], 1
lea rax, [rsp + 0x30]
mov qword [rbp - 0x41], rax
movdqu xmmword [rbp + 0x17], xmm0
mov byte [rbp + 0x10], 1
lea rax, [rbp - 0x39]
mov esi, eax
and eax, 0xf
lea rcx, [rbp - 0x39]
add rcx, rax
mov qword [rbp + 0x27], rcx
movups xmm0, xmmword [0x140192af0]
movups xmmword [rcx], xmm0
movups xmm1, xmmword [0x140192b00]
movups xmmword [rcx + 0x10], xmm1
lea rax, vtable.CryptoPP::SHA256.0
mov qword [rsp + 0x20], rax
mov r14d, 0x20
mov r8d, r14d
mov rdx, qword [r15 + 0x80]
lea rcx, [rsp + 0x20]
call fcn.14004afb0
mov r8, rbx
mov rdx, rdi
lea rcx, [rsp + 0x20]
call fcn.14004afb0
mov rbx, qword [r15 + 0x80]
mov rax, qword [rsp + 0x20]
mov rdi, qword [rax + 0x78]
mov rdx, qword [rax + 0x40]
lea rax, [method.CryptoPP::BlockCipherFinal_0__class_CryptoPP::Rijndael::Enc_.virtual_16]
cmp rdx, rax
je 0x140053f34
lea rcx, [rsp + 0x20]
call rdx
mov r14d, eax
mov r8d, r14d
lea rax, [fcn.14004b190]
mov rdx, rbx
lea rcx, [rsp + 0x20]
cmp rdi, rax
jne 0x140053f52
call fcn.14004b190
jmp 0x140053f54
call rdi
mov byte [r15 + 0x90], 0
mov rcx, qword [rbp + 0x1f]
cmp qword [rbp + 0x17], rcx
cmovb rcx, qword [rbp + 0x17]
and esi, 0xf
lea rax, [rbp - 0x39]
add rax, rsi
mov rdi, qword [rbp + 0x27]
cmp rdi, rax
jne 0x140053f80
xor eax, eax
rep stosd dword [rdi], eax
mov rcx, qword [rbp - 0x49]
cmp qword [rbp - 0x51], rcx
cmovb rcx, qword [rbp - 0x51]
lea rax, [rsp + 0x30]
mov rdi, qword [rbp - 0x41]
cmp rdi, rax
jne 0x140053f9f
xor eax, eax
rep stosd dword [rdi], eax
mov rcx, qword [rbp + 0x2f]
xor rcx, rsp
call fcn.1400ddf50
mov rbx, qword [rsp + 0x148]
add rsp, 0x100
pop r15
pop r14
pop rdi
pop rsi
pop rbp
ret
Function at 0x1400555a0
Capabilities:
Encrypt data using aes via x86 extensions

Disassembly:
movdqu xmm0, xmmword [rcx]
lea r11d, [r8 - 1]
xorps xmm0, xmmword [rdx]
mov r9d, 1
movdqu xmmword [rcx], xmm0
mov r10, rcx
cmp r11d, r9d
jbe 0x1400555ec
nop dword [rax]
mov eax, r9d
lea ecx, [r9 + 1]
add rax, rax
add rcx, rcx
add r9d, 2
aesenc xmm0, xmmword [rdx + rax*8]
movdqu xmmword [r10], xmm0
aesenc xmm0, xmmword [rdx + rcx*8]
movdqu xmmword [r10], xmm0
cmp r9d, r11d
jb 0x1400555c0
mov eax, r11d
add rax, rax
aesenc xmm0, xmmword [rdx + rax*8]
movdqu xmmword [r10], xmm0
mov eax, r8d
add rax, rax
aesenclast xmm0, xmmword [rdx + rax*8]
movdqu xmmword [r10], xmm0
ret

Function at 0x140055610
Capabilities:
Encrypt data using aes via x86 extensions

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rdi
mov rbx, qword [rsp + 0x28]
mov r10, rcx
mov edi, dword [rsp + 0x30]
movdqu xmm2, xmmword [rbx]
movdqa xmm0, xmm2
movdqa xmm1, xmm2
xorps xmm0, xmmword [rcx]
movdqu xmmword [rcx], xmm0
movdqa xmm0, xmm2
xorps xmm1, xmmword [rdx]
movdqu xmmword [rdx], xmm1
xorps xmm0, xmmword [r8]
movdqu xmmword [r8], xmm0
xorps xmm2, xmmword [r9]
movdqu xmmword [r9], xmm2
cmp edi, 1
jbe 0x1400556ab
lea rcx, [rbx + 0x10]
lea r11d, [rdi - 1]
movdqu xmm2, xmmword [rcx]
lea rcx, [rcx + 0x10]
movdqu xmm0, xmmword [r10]
aesenc xmm0, xmm2
movdqu xmmword [r10], xmm0
movdqu xmm1, xmmword [rdx]
aesenc xmm1, xmm2
movdqu xmmword [rdx], xmm1
movdqu xmm0, xmmword [r8]
aesenc xmm0, xmm2
movdqu xmmword [r8], xmm0
movdqu xmm1, xmmword [r9]
aesenc xmm1, xmm2
movdqu xmmword [r9], xmm1
sub r11, 1
jne 0x140055663
movdqu xmm0, xmmword [r10]
mov rax, rdi
mov rdi, qword [rsp + 0x10]
add rax, rax
movdqu xmm2, xmmword [rbx + rax*8]
mov rbx, qword [rsp + 8]
aesenclast xmm0, xmm2
movdqu xmmword [r10], xmm0
movdqu xmm1, xmmword [rdx]
aesenclast xmm1, xmm2
movdqu xmmword [rdx], xmm1
movdqu xmm0, xmmword [r8]
aesenclast xmm0, xmm2
movdqu xmmword [r8], xmm0
movdqu xmm1, xmmword [r9]
aesenclast xmm1, xmm2
movdqu xmmword [r9], xmm1
ret
Function at 0x14005cf90
Capabilities:
Hash data using sha256 via x86 extensions

Disassembly:
mov r11, rsp
mov dword [r11 + 0x20], r9d
mov qword [r11 + 0x18], r8
mov qword [r11 + 0x10], rdx
mov qword [r11 + 8], rcx
sub rsp, 0x108
movdqu xmm0, xmmword [rcx]
cmp r9d, 1
mov edx, 0xc
movdqu xmm1, xmmword [rcx + 0x10]
mov eax, edx
mov ecx, 0xf
cmovne eax, ecx
movaps xmmword [rsp + 0x70], xmm10
movaps xmmword [rsp + 0x60], xmm11
movaps xmmword [rsp + 0x50], xmm12
mov qword [r11 - 8], rbx
mov qword [r11 - 0x10], rbp
mov qword [r11 - 0x18], rsi
mov qword [r11 - 0x20], rdi
mov edi, 7
mov qword [r11 - 0x28], r12
mov qword [r11 - 0x30], r13
mov qword [r11 - 0x38], r14
mov dword [rsp], eax
mov eax, r9d
cmp eax, 1
mov qword [r11 - 0x40], r15
mov r15d, 0xb
mov r9d, 3
setne r13b
add r13b, 0xd
cmp eax, 1
mov byte [rsp + 0x1e], r13b
sete r12b
add r12b, 0xd
cmp eax, 1
mov byte [rsp + 0x1d], r12b
cmovne ecx, edx
setne bpl
mov dword [rsp + 4], ecx
mov edx, 8
mov r14d, edx
mov ecx, 4
cmovne r14d, r15d
mov ebx, ecx
add bpl, 9
mov byte [rsp + 0x1b], r14b
cmp eax, 1
mov byte [rsp + 0x1a], bpl
sete sil
add sil, 9
cmp eax, 1
mov byte [rsp + 0x19], sil
cmovne r15d, edx
cmovne ebx, edi
setne r11b
mov byte [rsp + 0x18], r15b
add r11b, 5
mov byte [rsp + 0x17], bl
cmp eax, 1
mov byte [rsp + 0x16], r11b
sete r10b
add r10b, 5
cmp eax, 1
mov byte [rsp + 0x15], r10b
cmovne edi, ecx
xor ecx, ecx
cmp eax, 1
mov byte [rsp + 0x14], dil
mov r8d, ecx
cmovne r8d, r9d
setne dl
inc dl
mov byte [rsp + 0x13], r8b
cmp eax, 1
mov byte [rsp + 0x12], dl
sete al
inc al
cmp dword [rsp + 0x128], 1
mov byte [rsp + 0x11], al
cmovne r9d, ecx
mov ecx, dword [rsp]
mov byte [rsp + 0x1f], cl
mov ecx, dword [rsp + 4]
mov byte [rsp + 0x1c], cl
mov byte [rsp + 0x10], r9b
mov rax, qword [rsp + 0x120]
movdqa xmm12, xmmword [rsp + 0x10]
mov r15, qword [rsp + 0xc8]
mov r14, qword [rsp + 0xd0]
mov r13, qword [rsp + 0xd8]
mov r12, qword [rsp + 0xe0]
mov rdi, qword [rsp + 0xe8]
mov rsi, qword [rsp + 0xf0]
mov rbp, qword [rsp + 0xf8]
mov rbx, qword [rsp + 0x100]
mov rcx, qword [rsp + 0x110]
pshufd xmm0, xmm0, 0xb1
pshufd xmm11, xmm1, 0x1b
movdqa xmm10, xmm0
palignr xmm10, xmm11, 8
pblendw xmm11, xmm0, 0xf0
cmp rax, 0x40
jb 0x14005d4fc
mov rdx, qword [rsp + 0x118]
movaps xmmword [rsp + 0xb0], xmm6
add rdx, 0x20
movaps xmmword [rsp + 0xa0], xmm7
movaps xmmword [rsp + 0x90], xmm8
movaps xmmword [rsp + 0x80], xmm9
movaps xmmword [rsp + 0x40], xmm13
movdqa xmm13, xmmword [0x140194b00]
movaps xmmword [rsp + 0x30], xmm14
movdqa xmm14, xmmword [0x140194ab0]
movaps xmmword [rsp + 0x20], xmm15
movdqa xmm15, xmmword [0x140194a20]
shr rax, 6
nop dword [rax]
Function at 0x14005fbe0
Capabilities:
Hash data with crc32

Disassembly:
mov qword [rsp + 8], rbx
mov r11d, r8d
mov r10, rdx
not r11d
mov r9, rcx
mov eax, r11d
test rdx, rdx
je 0x14005fc3d
lea rbx, [0x1401814e0]
movzx r8d, byte [r9]
lea r9, [r9 + 1]
dec r10
cmp r8b, 0x23
jne 0x14005fc24
cmp r10, 2
jb 0x14005fc24
cmp byte [r9], r8b
jne 0x14005fc24
cmp byte [r9 + 1], r8b
cmove eax, r11d
movzx edx, al
xor rdx, r8
shr eax, 8
xor eax, dword [rbx + rdx*4]
test r10, r10
jne 0x14005fc00
not eax
mov rbx, qword [rsp + 8]
ret
movzx r8d, byte [rcx]
inc r9
test r8b, r8b
je 0x14005fc7f
lea rbx, [0x1401814e0]
cmp r8b, 0x23
jne 0x14005fc63
cmp byte [r9], r8b
jne 0x14005fc63
cmp byte [r9 + 1], r8b
cmove eax, r11d
movzx edx, al
movzx ecx, r8b
movzx r8d, byte [r9]
xor rdx, rcx
shr eax, 8
inc r9
xor eax, dword [rbx + rdx*4]
test r8b, r8b
jne 0x14005fc50
mov rbx, qword [rsp + 8]
not eax
ret
Function at 0x140063f80
Capabilities:
Hash data with crc32

Disassembly:
mov qword [rsp + 0x10], rbx
push rdi
sub rsp, 0x70
xor eax, eax
lea r8, [0x140192b85]
mov dword [rsp + 0x2c], eax
lea r11, [0x1401814e0]
mov qword [rsp + 0x38], rax
mov r10d, 0xffffffff
mov qword [rsp + 0x60], rax
mov rbx, rcx
lea rax, str.Window
mov edx, r10d
mov qword [rsp + 0x20], rax
mov r9b, 0x57
cmp r9b, 0x23
jne 0x140063fd6
cmp byte [r8], r9b
jne 0x140063fd6
cmp byte [r8 + 1], r9b
cmove edx, r10d
movzx ecx, dl
movzx eax, r9b
movzx r9d, byte [r8]
xor rcx, rax
shr edx, 8
inc r8
xor edx, dword [r11 + rcx*4]
test r9b, r9b
jne 0x140063fc3
mov ecx, dword [rbx + 0x302c]
lea rax, [0x1400708c0]
mov edi, dword [rbx + 0x3028]
not edx
mov qword [rsp + 0x30], rax
lea rax, [0x140070950]
mov qword [rsp + 0x40], rax
lea rax, [0x140070a50]
mov qword [rsp + 0x48], rax
lea rax, [0x140070b30]
mov qword [rsp + 0x50], rax
lea rax, [0x140070c80]
mov qword [rsp + 0x58], rax
mov dword [rsp + 0x28], edx
cmp edi, ecx
jne 0x1400640f6
inc edi
test ecx, ecx
je 0x14006405a
mov eax, ecx
cdq
sub eax, edx
sar eax, 1
add eax, ecx
jmp 0x14006405f
mov eax, 8
cmp eax, edi
cmovg edi, eax
cmp edi, ecx
jle 0x1400640f6
mov rax, qword [0x1401bc480]
mov qword [rsp + 0x80], rsi
test rax, rax
je 0x140064086
inc dword [rax + 0x3bc]
movsxd rax, edi
lea rcx, [rax + rax*8]
shl rcx, 3
call qword [0x1400e98c8]
mov rdx, qword [rbx + 0x3030]
mov rsi, rax
test rdx, rdx
je 0x1400640e1
movsxd rcx, dword [rbx + 0x3028]
lea r8, [rcx + rcx*8]
mov rcx, rax
shl r8, 3
call fcn.1400dfed3
mov rcx, qword [rbx + 0x3030]
test rcx, rcx
je 0x1400640db
mov rax, qword [0x1401bc480]
test rax, rax
je 0x1400640db
dec dword [rax + 0x3bc]
call qword [0x1400e98d8]
mov qword [rbx + 0x3030], rsi
mov rsi, qword [rsp + 0x80]
mov dword [rbx + 0x302c], edi
movsxd rax, dword [rbx + 0x3028]
movaps xmm0, xmmword [rsp + 0x20]
movaps xmm1, xmmword [rsp + 0x30]
lea rcx, [rax + rax*8]
mov rax, qword [rbx + 0x3030]
movups xmmword [rax + rcx*8], xmm0
movaps xmm0, xmmword [rsp + 0x40]
movups xmmword [rax + rcx*8 + 0x10], xmm1
movaps xmm1, xmmword [rsp + 0x50]
movups xmmword [rax + rcx*8 + 0x20], xmm0
movsd xmm0, qword [rsp + 0x60]
movups xmmword [rax + rcx*8 + 0x30], xmm1
movsd qword [rax + rcx*8 + 0x40], xmm0
inc dword [rbx + 0x3028]
mov byte [rbx], 1
mov rbx, qword [rsp + 0x88]
add rsp, 0x70
pop rdi
ret
Function at 0x140065950
Capabilities:
Hash data with crc32

Disassembly:
movzx r9d, byte [rcx]
lea r8, [rcx + 1]
mov r10d, 0xffffffff
mov eax, r10d
test r9b, r9b
je 0x1400659a0
lea r11, [0x1401814e0]
nop dword [rax]
cmp r9b, 0x23
jne 0x140065983
cmp byte [r8], r9b
jne 0x140065983
cmp byte [r8 + 1], r9b
cmove eax, r10d
movzx edx, al
movzx ecx, r9b
movzx r9d, byte [r8]
xor rdx, rcx
shr eax, 8
inc r8
xor eax, dword [r11 + rdx*4]
test r9b, r9b
jne 0x140065970
mov rcx, qword [0x1401bc480]
not eax
movsxd rdx, dword [rcx + 0x1a68]
mov r9, qword [rcx + 0x1a70]
mov r10, rdx
shl r10, 4
add r10, r9
test rdx, rdx
je 0x140065a01
nop word [rax + rax]
mov r8, rdx
shr r8, 1
mov rcx, r8
add rcx, rcx
cmp dword [r9 + rcx*8], eax
jae 0x1400659f9
lea r9, [r9 + rcx*8]
mov rcx, 0xffffffffffffffff
sub rcx, r8
add r9, 0x10
add rdx, rcx
jmp 0x1400659fc
mov rdx, r8
test rdx, rdx
jne 0x1400659d0
cmp r9, r10
je 0x140065a10
cmp dword [r9], eax
jne 0x140065a10
mov rax, qword [r9 + 8]
ret
xor eax, eax
ret
Function at 0x14006acf0
Capabilities:
Hash data with crc32

Disassembly:
mov qword [rsp + 8], rbx
push rdi
sub rsp, 0x20
mov rax, qword [0x1401bc480]
lea r10, [0x1401814e0]
mov r8, rcx
mov rbx, qword [rax + 0x1a80]
add rbx, 0xc0
movsxd r9, dword [rbx]
mov rax, qword [rbx + 8]
mov edi, dword [rax + r9*4 - 4]
not edi
movzx eax, r8b
movzx ecx, dil
xor rcx, rax
shr edi, 8
mov rax, r8
shr rax, 8
movzx edx, al
mov rax, r8
xor edi, dword [r10 + rcx*4]
movzx ecx, dil
xor rdx, rcx
shr edi, 8
shr rax, 0x10
xor edi, dword [r10 + rdx*4]
movzx ecx, dil
shr edi, 8
movzx edx, al
mov rax, r8
xor rdx, rcx
shr rax, 0x18
xor edi, dword [r10 + rdx*4]
movzx ecx, dil
shr edi, 8
movzx edx, al
mov rax, r8
xor rdx, rcx
shr rax, 0x20
xor edi, dword [r10 + rdx*4]
movzx ecx, dil
shr edi, 8
movzx edx, al
mov rax, r8
xor rdx, rcx
shr rax, 0x28
xor edi, dword [r10 + rdx*4]
movzx ecx, dil
shr edi, 8
movzx edx, al
mov rax, r8
xor rdx, rcx
shr r8, 0x38
shr rax, 0x30
xor edi, dword [r10 + rdx*4]
movzx ecx, dil
shr edi, 8
movzx edx, al
xor rdx, rcx
xor edi, dword [r10 + rdx*4]
movzx ecx, dil
xor rcx, r8
shr edi, 8
mov r8d, dword [rbx + 4]
xor edi, dword [r10 + rcx*4]
not edi
cmp r9d, r8d
jne 0x14006ae10
lea ecx, [r9 + 1]
test r8d, r8d
je 0x14006adfc
mov eax, r8d
cdq
sub eax, edx
sar eax, 1
add eax, r8d
jmp 0x14006ae01
mov eax, 8
cmp eax, ecx
cmovg ecx, eax
mov edx, ecx
mov rcx, rbx
call fcn.140071aa0
movsxd rcx, dword [rbx]
mov rax, qword [rbx + 8]
mov dword [rax + rcx*4], edi
inc dword [rbx]
mov rbx, qword [rsp + 0x30]
add rsp, 0x20
pop rdi
ret
Function at 0x14007b4e0
Capabilities:
Resolve function by parsing pe exports

Disassembly:
test r9d, 0xff000000
je 0x14007b673
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rbp
mov qword [rsp + 0x18], rsi
push rdi
sub rsp, 0x40
movss xmm3, dword [rsp + 0x70]
xorps xmm0, xmm0
comiss xmm3, xmm0
mov edi, r9d
mov rsi, r8
mov rbp, rdx
mov rbx, rcx
jbe 0x14007b550
mov eax, dword [rsp + 0x78]
mov dword [rsp + 0x20], eax
call fcn.14007aea0
mov r8d, dword [rbx + 0x80]
mov r9d, edi
mov rdx, qword [rbx + 0x88]
mov rcx, rbx
call fcn.14007a500
mov dword [rbx + 0x80], 0
jmp 0x14007b65f
mov edx, 6
movaps xmmword [rsp + 0x30], xmm6
mov r8d, 4
call fcn.140079440
movzx edx, word [rbx + 0x48]
mov rax, qword [rbx + 0x38]
movss xmm1, dword [rsi]
movss xmm2, dword [rbp + 4]
movss xmm3, dword [rbp]
lea ecx, [rdx + 1]
movss xmm6, dword [rax + 4]
movss xmm5, dword [rax]
movss xmm4, dword [rsi + 4]
mov rax, qword [rbx + 0x58]
mov word [rax], dx
mov rax, qword [rbx + 0x58]
mov word [rax + 2], cx
lea ecx, [rdx + 2]
mov rax, qword [rbx + 0x58]
mov word [rax + 4], cx
mov rax, qword [rbx + 0x58]
mov word [rax + 6], dx
add dx, 3
mov rax, qword [rbx + 0x58]
mov word [rax + 8], cx
mov rax, qword [rbx + 0x58]
mov word [rax + 0xa], dx
movsd xmm0, qword [rbp]
mov rax, qword [rbx + 0x50]
movsd qword [rax], xmm0
mov rax, qword [rbx + 0x50]
movss dword [rax + 8], xmm5
movss dword [rax + 0xc], xmm6
mov rax, qword [rbx + 0x50]
mov dword [rax + 0x10], edi
mov rax, qword [rbx + 0x50]
movss dword [rax + 0x14], xmm1
movss dword [rax + 0x18], xmm2
mov rax, qword [rbx + 0x50]
movss dword [rax + 0x1c], xmm5
movss dword [rax + 0x20], xmm6
mov rax, qword [rbx + 0x50]
mov dword [rax + 0x24], edi
movsd xmm0, qword [rsi]
mov rax, qword [rbx + 0x50]
movsd qword [rax + 0x28], xmm0
mov rax, qword [rbx + 0x50]
movss dword [rax + 0x30], xmm5
movss dword [rax + 0x34], xmm6
mov rax, qword [rbx + 0x50]
mov dword [rax + 0x38], edi
mov rax, qword [rbx + 0x50]
movss dword [rax + 0x3c], xmm3
movss dword [rax + 0x40], xmm4
mov rax, qword [rbx + 0x50]
movss dword [rax + 0x44], xmm5
movss dword [rax + 0x48], xmm6
mov rax, qword [rbx + 0x50]
movaps xmm6, xmmword [rsp + 0x30]
mov dword [rax + 0x4c], edi
add qword [rbx + 0x50], 0x50
add dword [rbx + 0x48], 4
add qword [rbx + 0x58], 0xc
mov rbx, qword [rsp + 0x50]
mov rbp, qword [rsp + 0x58]
mov rsi, qword [rsp + 0x60]
add rsp, 0x40
pop rdi
ret