joyce8/EMBER2024-capa huggingface dataset:
Function at 0x140077e70
Capabilities:
Hash data using fnv

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rbp
mov qword [rsp + 0x18], rsi
push rdi
push r14
push r15
sub rsp, 0x30
mov rbp, r9
mov r14, r8
mov rsi, rdx
mov rdi, rcx
movabs rax, 0x492492492492492
cmp qword [rcx + 0x10], rax
je 0x1400780a4
lea r15, [rcx + 8]
mov qword [rsp + 0x20], r15
mov qword [rsp + 0x28], 0
mov ecx, 0x38
call fcn.140116214
mov rbx, rax
mov qword [rsp + 0x28], rax
mov edx, dword [r14]
mov dword [rax + 0x10], edx
movups xmm0, xmmword [rbp]
movups xmmword [rax + 0x14], xmm0
movups xmm1, xmmword [rbp + 0x10]
movups xmmword [rax + 0x24], xmm1
mov eax, edx
shr eax, 8
movzx ebp, al
movzx eax, dl
movabs rcx, 0xcbf29ce484222325
xor rax, rcx
movabs r8, 0x100000001b3
imul rax, r8
xor rbp, rax
imul rbp, r8
mov eax, edx
shr eax, 0x10
movzx ecx, al
xor rbp, rcx
imul rbp, r8
shr rdx, 0x18
xor rbp, rdx
imul rbp, r8
mov rcx, qword [rdi + 0x10]
movss xmm3, dword [rdi]
add rcx, 1
xorps xmm1, xmm1
js 0x140077f41
cvtsi2ss xmm1, rcx
jmp 0x140077f56
mov rax, rcx
shr rax, 1
and ecx, 1
or rax, rcx
cvtsi2ss xmm1, rax
addss xmm1, xmm1
mov rdx, qword [rdi + 0x38]
xorps xmm2, xmm2
test rdx, rdx
js 0x140077f69
cvtsi2ss xmm2, rdx
jmp 0x140077f81
mov rcx, rdx
shr rcx, 1
mov rax, rdx
and eax, 1
or rcx, rax
cvtsi2ss xmm2, rcx
addss xmm2, xmm2
movaps xmm0, xmm1
divss xmm0, xmm2
comiss xmm0, xmm3
seta al
test al, al
je 0x140077ffe
divss xmm1, xmm3
xorps xmm0, xmm0
roundss xmm0, xmm1, 2
xor ecx, ecx
movss xmm1, dword [0x14012cc7c]
comiss xmm0, xmm1
jb 0x140077fc4
subss xmm0, xmm1
comiss xmm0, xmm1
jae 0x140077fc4
movabs rax, 0x8000000000000000
mov rcx, rax
cvttss2si rax, xmm0
add rax, rcx
mov ecx, 8
cmp rax, rcx
cmova rcx, rax
cmp rdx, rcx
jae 0x140077ff6
cmp rdx, 0x200
jae 0x140077ff3
lea rdx, [rdx*8]
cmp rdx, rcx
jae 0x140077ff6
mov rdx, rcx
mov rcx, rdi
call fcn.140079d80
mov rcx, qword [rdi + 0x30]
and rcx, rbp
add rcx, rcx
mov r8, qword [rdi + 0x18]
mov rax, qword [r8 + rcx*8 + 8]
mov rdx, qword [r15]
cmp rax, rdx
je 0x140078036
mov rdx, qword [r8 + rcx*8]
mov ecx, dword [rbx + 0x10]
cmp ecx, dword [rax + 0x10]
je 0x140078033
cmp rax, rdx
je 0x140078069
mov rax, qword [rax + 8]
cmp ecx, dword [rax + 0x10]
jne 0x140078025
mov rdx, qword [rax]
mov r8, qword [rdx + 8]
inc qword [rdi + 0x10]
mov qword [rbx], rdx
mov qword [rbx + 8], r8
mov qword [r8], rbx
mov qword [rdx + 8], rbx
mov rcx, qword [rdi + 0x18]
mov rax, qword [rdi + 0x30]
and rax, rbp
add rax, rax
mov r9, qword [rcx + rax*8]
cmp r9, qword [r15]
jne 0x14007806e
mov qword [rcx + rax*8], rbx
jmp 0x140078080
mov rdx, rax
jmp 0x140078036
cmp r9, rdx
jne 0x140078079
mov qword [rcx + rax*8], rbx
jmp 0x140078085
cmp qword [rcx + rax*8 + 8], r8
jne 0x140078085
mov qword [rcx + rax*8 + 8], rbx
mov qword [rsi], rbx
mov rax, rsi
mov rbx, qword [rsp + 0x50]
mov rbp, qword [rsp + 0x58]
mov rsi, qword [rsp + 0x60]
add rsp, 0x30
pop r15
pop r14
pop rdi
ret
lea rcx, str.unordered_map_set_too_long
call sub.MSVCP140.dll_void___cdecl_std::_Xlength_error_char_const____ptr64_
int3
Function at 0x1400788d0
Capabilities:
Hash data using fnv

Disassembly:
movzx r9d, byte [r8]
mov r10, rcx
movabs rcx, 0x100000001b3
movabs rax, 0xcbf29ce484222325
xor r9, rax
mov r11, rdx
movzx eax, byte [r8 + 1]
imul r9, rcx
xor r9, rax
movzx eax, byte [r8 + 2]
imul r9, rcx
xor r9, rax
movzx eax, byte [r8 + 3]
imul r9, rcx
xor r9, rax
mov rax, qword [r10 + 0x18]
imul r9, rcx
mov rcx, qword [r10 + 0x30]
and rcx, r9
shl rcx, 4
add rax, rcx
mov rcx, qword [r10 + 8]
mov rdx, qword [rax]
cmp rdx, rcx
jne 0x140078945
mov rdx, rcx
mov qword [r11], rcx
mov qword [r11 + 8], rcx
mov rax, r11
ret
mov r8d, dword [r8]
mov rax, qword [rax + 8]
cmp dword [rdx + 0x10], r8d
je 0x140078960
cmp rdx, rax
je 0x140078937
mov rdx, qword [rdx]
cmp dword [rdx + 0x10], r8d
jne 0x140078952
mov rcx, qword [rdx]
cmp rdx, rax
je 0x140078981
nop dword [rax + rax]
mov r9, rcx
cmp r8d, dword [rcx + 0x10]
jne 0x140078981
mov rcx, qword [rcx]
cmp r9, rax
jne 0x140078970
mov qword [r11], rdx
mov rax, r11
mov qword [r11 + 8], rcx
ret
Function at 0x140079d80
Capabilities:
Hash data using fnv

Disassembly:
mov qword [rsp + 0x20], rsi
push rdi
sub rsp, 0x20
movabs rax, 0xfffffffffffffff
mov rsi, rcx
bsr rcx, rax
mov edi, 1
mov eax, edi
shl rax, cl
cmp rdx, rax
ja 0x140079f42
lea rax, [rdx - 1]
mov qword [rsp + 0x30], rbx
mov rbx, qword [rsi + 8]
or rax, rdi
bsr rcx, rax
mov r8, rbx
mov qword [rsp + 0x40], r14
inc ecx
shl rdi, cl
lea rcx, [rsi + 0x18]
lea rdx, [rdi + rdi]
call fcn.1400385b0
mov qword [rsi + 0x38], rdi
lea rax, [rdi - 1]
mov qword [rsi + 0x30], rax
mov rcx, qword [rsi + 8]
mov rcx, qword [rcx]
mov rdx, rcx
cmp rcx, rbx
je 0x140079f07
mov qword [rsp + 0x38], rbp
movabs rdi, 0x100000001b3
movabs rbp, 0xcbf29ce484222325
nop dword [rax]
nop dword [rax + rax]
movzx eax, byte [rcx + 0x11]
movzx r9d, byte [rcx + 0x10]
mov r11, qword [rsi + 0x30]
xor r9, rbp
mov rdx, qword [rdx]
imul r9, rdi
xor r9, rax
movzx eax, byte [rcx + 0x12]
imul r9, rdi
xor r9, rax
movzx eax, byte [rcx + 0x13]
imul r9, rdi
xor r9, rax
imul r9, rdi
and r11, r9
shl r11, 4
add r11, qword [rsi + 0x18]
mov r10, qword [r11]
cmp r10, rbx
jne 0x140079e73
mov qword [r11], rcx
mov qword [r11 + 8], rcx
jmp 0x140079ef6
mov rax, qword [r11 + 8]
mov r9d, dword [rcx + 0x10]
cmp r9d, dword [rax + 0x10]
jne 0x140079eb0
mov r10, qword [rax]
cmp r10, rcx
je 0x140079eaa
mov r9, qword [rcx + 8]
mov qword [r9], rdx
mov r8, qword [rdx + 8]
mov qword [r8], r10
mov rax, qword [r10 + 8]
mov qword [rax], rcx
mov qword [r10 + 8], r8
mov qword [rdx + 8], r9
mov qword [rcx + 8], rax
mov qword [r11 + 8], rcx
jmp 0x140079ef6
mov r8, rax
cmp r10, rax
je 0x140079ed2
nop dword [rax + rax]
mov rax, qword [rax + 8]
mov r8, rax
cmp r9d, dword [rax + 0x10]
je 0x140079f1c
cmp r10, rax
jne 0x140079ec0
mov r10, qword [rcx + 8]
mov qword [r10], rdx
mov r9, qword [rdx + 8]
mov qword [r9], r8
mov rax, qword [r8 + 8]
mov qword [rax], rcx
mov qword [r8 + 8], r9
mov qword [rdx + 8], r10
mov qword [rcx + 8], rax
mov qword [r11], rcx
mov rcx, rdx
cmp rdx, rbx
jne 0x140079e20
mov rbp, qword [rsp + 0x38]
mov rbx, qword [rsp + 0x30]
mov r14, qword [rsp + 0x40]
mov rsi, qword [rsp + 0x48]
add rsp, 0x20
pop rdi
ret
mov r10, qword [rax]
mov r9, qword [rcx + 8]
mov qword [r9], rdx
mov r8, qword [rdx + 8]
mov qword [r8], r10
mov rax, qword [r10 + 8]
mov qword [rax], rcx
mov qword [r10 + 8], r8
mov qword [rdx + 8], r9
mov qword [rcx + 8], rax
jmp 0x140079ef6
lea rcx, str.invalid_hash_bucket_count
call sub.MSVCP140.dll_void___cdecl_std::_Xlength_error_char_const____ptr64_
int3
Function at 0x14007a120
Capabilities:
Hash data using fnv

Disassembly:
mov rdx, qword [rcx + 0x10]
mov r9, rcx
add rdx, 1
mov r8, qword [rcx + 0x38]
xorps xmm0, xmm0
js 0x14007a13b
cvtsi2ss xmm0, rdx
jmp 0x14007a150
mov rax, rdx
and edx, 1
shr rax, 1
or rax, rdx
cvtsi2ss xmm0, rax
addss xmm0, xmm0
divss xmm0, dword [rcx]
xor ecx, ecx
xorps xmm1, xmm1
roundss xmm1, xmm0, 2
movss xmm0, dword [0x14012cc7c]
comiss xmm1, xmm0
jb 0x14007a182
subss xmm1, xmm0
comiss xmm1, xmm0
jae 0x14007a182
movabs rax, 0x8000000000000000
mov rcx, rax
cvttss2si rax, xmm1
add rax, rcx
mov ecx, 8
cmp rax, rcx
cmova rcx, rax
cmp r8, rcx
jae 0x14007a1b4
cmp r8, 0x200
jae 0x14007a1b1
lea r8, [r8*8]
cmp r8, rcx
jae 0x14007a1b4
mov r8, rcx
mov rdx, r8
mov rcx, r9
jmp fcn.140079d80
Function at 0x14007a1d0
Capabilities:
Hash data using fnv

Disassembly:
push rbp
push rsi
push r14
sub rsp, 0x40
mov rbp, r8
mov r14, rdx
mov rsi, rcx
cmp rdx, r8
je 0x14007a2ce
mov rdx, qword [rcx + 0x18]
movabs r8, 0x100000001b3
mov qword [rsp + 0x60], rbx
movabs rax, 0xcbf29ce484222325
mov qword [rsp + 0x38], rdi
mov rbx, r14
mov qword [rsp + 0x30], r12
mov r12, qword [rcx + 8]
movzx ecx, byte [r14 + 0x10]
xor rcx, rax
mov qword [rsp + 0x28], r13
movzx eax, byte [r14 + 0x11]
mov r13, qword [r14 + 8]
imul rcx, r8
mov qword [rsp + 0x20], r15
mov r15, qword [rsi + 0x30]
xor rcx, rax
movzx eax, byte [r14 + 0x12]
imul rcx, r8
mov qword [rsp + 0x78], rdx
xor rcx, rax
movzx eax, byte [r14 + 0x13]
imul rcx, r8
xor rcx, rax
imul rcx, r8
and r15, rcx
shl r15, 4
add r15, rdx
mov rax, qword [r15]
mov qword [rsp + 0x68], rax
mov rax, qword [r15 + 8]
mov qword [rsp + 0x70], rax
nop dword [rax + rax]
mov rcx, rbx
mov rdi, rbx
mov rbx, qword [rbx]
mov edx, 0x20
call fcn.140116250
dec qword [rsi + 0x10]
cmp rdi, qword [rsp + 0x70]
je 0x14007a2da
cmp rbx, rbp
jne 0x14007a280
cmp qword [rsp + 0x68], r14
jne 0x14007a2ad
mov qword [r15], rbx
mov r12, qword [rsp + 0x30]
mov rdi, qword [rsp + 0x38]
mov r15, qword [rsp + 0x20]
mov qword [r13], rbx
mov qword [rbx + 8], r13
mov r13, qword [rsp + 0x28]
mov rbx, qword [rsp + 0x60]
mov rax, rbp
add rsp, 0x40
pop r14
pop rsi
pop rbp
ret
cmp qword [rsp + 0x68], r14
jne 0x14007a2e9
mov qword [r15], r12
mov rax, r12
jmp 0x14007a2ec
mov rax, r13
mov qword [r15 + 8], rax
cmp rbx, rbp
je 0x14007a2ad
nop word [rax + rax]
movzx ecx, byte [rbx + 0x10]
movabs rdx, 0x100000001b3
mov r15, qword [rsi + 0x30]
movabs rax, 0xcbf29ce484222325
xor rcx, rax
movzx eax, byte [rbx + 0x11]
imul rcx, rdx
xor rcx, rax
movzx eax, byte [rbx + 0x12]
imul rcx, rdx
xor rcx, rax
movzx eax, byte [rbx + 0x13]
imul rcx, rdx
xor rcx, rax
imul rcx, rdx
and r15, rcx
shl r15, 4
add r15, qword [rsp + 0x78]
mov r14, qword [r15 + 8]
nop dword [rax]
nop dword [rax + rax]
mov rcx, rbx
mov rdi, rbx
mov rbx, qword [rbx]
mov edx, 0x20
call fcn.140116250
dec qword [rsi + 0x10]
cmp rdi, r14
je 0x14007a386
cmp rbx, rbp
jne 0x14007a360
jmp 0x14007a2aa
mov qword [r15], r12
mov qword [r15 + 8], r12
cmp rbx, rbp
jne 0x14007a300
jmp 0x14007a2ad
push rdi
sub rsp, 0x20
mov rdi, rcx
mov rcx, qword [rcx + 0x10]
test rcx, rcx
je 0x14007a96c
mov rax, qword [rdi + 0x38]
shr rax, 3
cmp rax, rcx
jbe 0x14007a8fa
mov rdx, qword [rdi + 8]
mov rcx, rdi
mov r8, rdx
mov rdx, qword [rdx]
add rsp, 0x20
pop rdi
jmp 0x14007a1d0
mov rcx, qword [rdi + 8]
mov rax, qword [rcx + 8]
mov qword [rax], 0
mov rcx, qword [rcx]
test rcx, rcx
je 0x14007a93a
mov qword [rsp + 0x38], rbx
nop word [rax + rax]
mov rbx, qword [rcx]
mov edx, 0x20
call fcn.140116250
mov rcx, rbx
test rbx, rbx
jne 0x14007a920
mov rbx, qword [rsp + 0x38]
mov rax, qword [rdi + 8]
lea r8, [rsp + 0x30]
mov qword [rax], rax
mov rax, qword [rdi + 8]
mov qword [rax + 8], rax
mov qword [rdi + 0x10], 0
mov rax, qword [rdi + 8]
mov rdx, qword [rdi + 0x20]
mov rcx, qword [rdi + 0x18]
mov qword [rsp + 0x30], rax
call fcn.140035440
add rsp, 0x20
pop rdi
ret
Function at 0x14007a8c0
Capabilities:
Hash data using fnv

Disassembly:
push rbp
push rsi
push r14
sub rsp, 0x40
mov rbp, r8
mov r14, rdx
mov rsi, rcx
cmp rdx, r8
je 0x14007a2ce
mov rdx, qword [rcx + 0x18]
movabs r8, 0x100000001b3
mov qword [rsp + 0x60], rbx
movabs rax, 0xcbf29ce484222325
mov qword [rsp + 0x38], rdi
mov rbx, r14
mov qword [rsp + 0x30], r12
mov r12, qword [rcx + 8]
movzx ecx, byte [r14 + 0x10]
xor rcx, rax
mov qword [rsp + 0x28], r13
movzx eax, byte [r14 + 0x11]
mov r13, qword [r14 + 8]
imul rcx, r8
mov qword [rsp + 0x20], r15
mov r15, qword [rsi + 0x30]
xor rcx, rax
movzx eax, byte [r14 + 0x12]
imul rcx, r8
mov qword [rsp + 0x78], rdx
xor rcx, rax
movzx eax, byte [r14 + 0x13]
imul rcx, r8
xor rcx, rax
imul rcx, r8
and r15, rcx
shl r15, 4
add r15, rdx
mov rax, qword [r15]
mov qword [rsp + 0x68], rax
mov rax, qword [r15 + 8]
mov qword [rsp + 0x70], rax
nop dword [rax + rax]
mov rcx, rbx
mov rdi, rbx
mov rbx, qword [rbx]
mov edx, 0x20
call fcn.140116250
dec qword [rsi + 0x10]
cmp rdi, qword [rsp + 0x70]
je 0x14007a2da
cmp rbx, rbp
jne 0x14007a280
cmp qword [rsp + 0x68], r14
jne 0x14007a2ad
mov qword [r15], rbx
mov r12, qword [rsp + 0x30]
mov rdi, qword [rsp + 0x38]
mov r15, qword [rsp + 0x20]
mov qword [r13], rbx
mov qword [rbx + 8], r13
mov r13, qword [rsp + 0x28]
mov rbx, qword [rsp + 0x60]
mov rax, rbp
add rsp, 0x40
pop r14
pop rsi
pop rbp
ret
cmp qword [rsp + 0x68], r14
jne 0x14007a2e9
mov qword [r15], r12
mov rax, r12
jmp 0x14007a2ec
mov rax, r13
mov qword [r15 + 8], rax
cmp rbx, rbp
je 0x14007a2ad
nop word [rax + rax]
movzx ecx, byte [rbx + 0x10]
movabs rdx, 0x100000001b3
mov r15, qword [rsi + 0x30]
movabs rax, 0xcbf29ce484222325
xor rcx, rax
movzx eax, byte [rbx + 0x11]
imul rcx, rdx
xor rcx, rax
movzx eax, byte [rbx + 0x12]
imul rcx, rdx
xor rcx, rax
movzx eax, byte [rbx + 0x13]
imul rcx, rdx
xor rcx, rax
imul rcx, rdx
and r15, rcx
shl r15, 4
add r15, qword [rsp + 0x78]
mov r14, qword [r15 + 8]
nop dword [rax]
nop dword [rax + rax]
mov rcx, rbx
mov rdi, rbx
mov rbx, qword [rbx]
mov edx, 0x20
call fcn.140116250
dec qword [rsi + 0x10]
cmp rdi, r14
je 0x14007a386
cmp rbx, rbp
jne 0x14007a360
jmp 0x14007a2aa
mov qword [r15], r12
mov qword [r15 + 8], r12
cmp rbx, rbp
jne 0x14007a300
jmp 0x14007a2ad
push rdi
sub rsp, 0x20
mov rdi, rcx
mov rcx, qword [rcx + 0x10]
test rcx, rcx
je 0x14007a96c
mov rax, qword [rdi + 0x38]
shr rax, 3
cmp rax, rcx
jbe 0x14007a8fa
mov rdx, qword [rdi + 8]
mov rcx, rdi
mov r8, rdx
mov rdx, qword [rdx]
add rsp, 0x20
pop rdi
jmp 0x14007a1d0
mov rcx, qword [rdi + 8]
mov rax, qword [rcx + 8]
mov qword [rax], 0
mov rcx, qword [rcx]
test rcx, rcx
je 0x14007a93a
mov qword [rsp + 0x38], rbx
nop word [rax + rax]
mov rbx, qword [rcx]
mov edx, 0x20
call fcn.140116250
mov rcx, rbx
test rbx, rbx
jne 0x14007a920
mov rbx, qword [rsp + 0x38]
mov rax, qword [rdi + 8]
lea r8, [rsp + 0x30]
mov qword [rax], rax
mov rax, qword [rdi + 8]
mov qword [rax + 8], rax
mov qword [rdi + 0x10], 0
mov rax, qword [rdi + 8]
mov rdx, qword [rdi + 0x20]
mov rcx, qword [rdi + 0x18]
mov qword [rsp + 0x30], rax
call fcn.140035440
add rsp, 0x20
pop rdi
ret
Function at 0x14007aad0
Capabilities:
Hash data using fnv

Disassembly:
cmp byte [rcx + 0x48], 0
jne fcn.14007a8c0
ret

Function at 0x14007ac20
Capabilities:
Hash data using fnv

Disassembly:
sub rsp, 8
cmp byte [rcx + 0x48], 0
mov r11, r8
mov r10, rcx
je 0x14007acd8
movabs rax, 0xcbf29ce484222325
mov qword [rsp], rbx
movabs rbx, 0x100000001b3
movzx r9d, dl
xor r9, rax
mov eax, edx
imul r9, rbx
shr eax, 8
movzx r8d, al
mov eax, edx
xor r9, r8
shr eax, 0x10
mov r8, qword [r10 + 8]
imul r9, rbx
movzx ecx, al
xor r9, rcx
mov eax, edx
mov rcx, qword [r10 + 0x30]
imul r9, rbx
shr rax, 0x18
xor r9, rax
imul r9, rbx
mov rbx, qword [rsp]
and rcx, r9
shl rcx, 4
add rcx, qword [r10 + 0x18]
mov rax, qword [rcx + 8]
cmp rax, r8
je 0x14007acd8
mov rcx, qword [rcx]
cmp edx, dword [rax + 0x10]
je 0x14007acbe
nop dword [rax + rax]
cmp rax, rcx
je 0x14007acd8
mov rax, qword [rax + 8]
cmp edx, dword [rax + 0x10]
jne 0x14007acb0
test rax, rax
cmove rax, r8
cmp rax, r8
je 0x14007acd8
mov rcx, qword [rax + 0x18]
mov al, 1
mov qword [r11], rcx
add rsp, 8
ret
xor al, al
add rsp, 8
ret
Function at 0x14007b550
Capabilities:
Hash data using fnv

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rbp
push rsi
push rdi
push r14
sub rsp, 0x40
mov rsi, rcx
cmp byte [rcx + 0x48], 0
je 0x14007b748
mov rcx, qword [rdx + 0x108]
test rcx, rcx
je 0x14007b75d
lea rdx, [rsp + 0x60]
call fcn.140043e70
test rax, rax
je 0x14007b75d
mov edi, dword [rax]
mov rax, qword [rsi + 0x10]
dec rax
cmp rdi, rax
jne 0x14007b748
movzx edx, dil
movabs r14, 0xcbf29ce484222325
xor rdx, r14
movabs rbp, 0x100000001b3
imul rdx, rbp
mov eax, edi
shr eax, 8
movzx ecx, al
xor rdx, rcx
imul rdx, rbp
mov eax, edi
shr eax, 0x10
movzx ecx, al
xor rdx, rcx
imul rdx, rbp
mov eax, edi
shr rax, 0x18
xor rdx, rax
imul rdx, rbp
mov r9, qword [rsi + 0x30]
mov rax, r9
and rax, rdx
mov r10, qword [rsi + 0x18]
add rax, rax
mov rcx, qword [r10 + rax*8 + 8]
mov r8, qword [rsi + 8]
xor ebx, ebx
cmp rcx, r8
je 0x14007b628
mov rax, qword [r10 + rax*8]
cmp edi, dword [rcx + 0x10]
je 0x14007b62b
cmp rcx, rax
je 0x14007b628
mov rcx, qword [rcx + 8]
cmp edi, dword [rcx + 0x10]
jne 0x14007b618
jmp 0x14007b62b
mov rcx, rbx
test rcx, rcx
cmove rcx, r8
movzx edx, byte [rcx + 0x10]
xor rdx, r14
imul rdx, rbp
movzx eax, byte [rcx + 0x11]
xor rdx, rax
imul rdx, rbp
movzx eax, byte [rcx + 0x12]
xor rdx, rax
imul rdx, rbp
movzx eax, byte [rcx + 0x13]
xor rdx, rax
imul rdx, rbp
and rdx, r9
add rdx, rdx
mov rax, qword [r10 + rdx*8]
cmp qword [r10 + rdx*8 + 8], rcx
jne 0x14007b68a
cmp rax, rcx
jne 0x14007b67f
mov qword [r10 + rdx*8], r8
mov qword [r10 + rdx*8 + 8], r8
jmp 0x14007b696
mov r8, qword [rcx + 8]
mov qword [r10 + rdx*8 + 8], r8
jmp 0x14007b696
cmp rax, rcx
jne 0x14007b696
mov rax, qword [rcx]
mov qword [r10 + rdx*8], rax
mov rdx, qword [rcx]
dec qword [rsi + 0x10]
mov rax, qword [rcx + 8]
mov qword [rax], rdx
mov rax, qword [rcx + 8]
mov qword [rdx + 8], rax
mov edx, 0x20
call fcn.140116250
test edi, edi
je 0x14007b740
lea r8d, [rdi - 1]
mov r9d, r8d
movzx edx, r8b
xor rdx, r14
imul rdx, rbp
mov eax, r8d
shr eax, 8
movzx ecx, al
xor rdx, rcx
imul rdx, rbp
mov eax, r8d
shr eax, 0x10
movzx ecx, al
xor rdx, rcx
imul rdx, rbp
mov eax, r8d
shr rax, 0x18
xor rdx, rax
imul rdx, rbp
mov rcx, qword [rsi + 0x30]
and rcx, rdx
shl rcx, 4
add rcx, qword [rsi + 0x18]
mov rax, qword [rcx + 8]
mov rdx, qword [rsi + 8]
cmp rax, rdx
je 0x14007b735
mov rcx, qword [rcx]
cmp r9d, dword [rax + 0x10]
je 0x14007b732
cmp rax, rcx
je 0x14007b735
mov rax, qword [rax + 8]
cmp r8d, dword [rax + 0x10]
jne 0x14007b723
mov rbx, rax
test rbx, rbx
cmove rbx, rdx
mov rbx, qword [rbx + 0x18]
mov qword [rsi + 0x40], rbx
mov al, 1
jmp 0x14007b74a
xor al, al
mov rbx, qword [rsp + 0x68]
mov rbp, qword [rsp + 0x70]
add rsp, 0x40
pop r14
pop rdi
pop rsi
ret
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rsp + 0x20], xmm0
mov qword [rsp + 0x30], rax
lea rcx, [rsp + 0x20]
call fcn.1400367a0
nop
mov rcx, rax
call fcn.1400362c0
int3
Function at 0x14007b780
Capabilities:
Hash data using fnv

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rbp
push rsi
push rdi
push r12
push r13
push r15
sub rsp, 0x60
mov rbx, rdx
mov rsi, rcx
cmp byte [rcx + 0x40], 0
je 0x14007b8b0
lea rcx, [rsp + 0x40]
call fcn.140045e80
movups xmm0, xmmword [rax]
movups xmmword [rsp + 0x20], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rsp + 0x30], xmm1
mov rcx, qword [rbx + 0x108]
test rcx, rcx
je 0x14007b95a
lea rdx, [rsp + 0x90]
call fcn.140043e70
test rax, rax
je 0x14007b95a
mov r8d, dword [rax]
movzx edx, r8b
movabs r13, 0xcbf29ce484222325
xor rdx, r13
movabs r12, 0x100000001b3
imul rdx, r12
mov eax, r8d
shr eax, 8
movzx ecx, al
xor rdx, rcx
imul rdx, r12
mov eax, r8d
shr eax, 0x10
movzx ecx, al
xor rdx, rcx
imul rdx, r12
mov eax, r8d
shr rax, 0x18
xor rdx, rax
imul rdx, r12
and rdx, qword [rsi + 0x30]
mov r15, qword [rsi + 0x18]
add rdx, rdx
mov rbx, qword [r15 + rdx*8]
mov rbp, qword [rsi + 8]
cmp rbx, rbp
je 0x14007b8b0
mov rax, qword [r15 + rdx*8 + 8]
cmp dword [rbx + 0x10], r8d
je 0x14007b86e
nop word [rax + rax]
cmp rbx, rax
je 0x14007b8b0
mov rbx, qword [rbx]
cmp dword [rbx + 0x10], r8d
jne 0x14007b860
mov rdi, qword [rbx]
cmp rbx, rax
je 0x14007b887
mov rcx, rdi
cmp r8d, dword [rdi + 0x10]
jne 0x14007b887
mov rdi, qword [rdi]
cmp rcx, rax
jne 0x14007b876
cmp rbx, rdi
je 0x14007b8b0
nop dword [rax]
lea rcx, [rbx + 0x14]
mov r8d, 0x20
lea rdx, [rsp + 0x20]
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
je 0x14007b8cb
mov rbx, qword [rbx]
cmp rbx, rdi
jne 0x14007b890
xor al, al
lea r11, [rsp + 0x60]
mov rbx, qword [r11 + 0x38]
mov rbp, qword [r11 + 0x40]
mov rsp, r11
pop r15
pop r13
pop r12
pop rdi
pop rsi
ret
movzx ecx, byte [rbx + 0x10]
xor rcx, r13
imul rcx, r12
movzx eax, byte [rbx + 0x11]
xor rcx, rax
imul rcx, r12
movzx eax, byte [rbx + 0x12]
xor rcx, rax
imul rcx, r12
movzx eax, byte [rbx + 0x13]
xor rcx, rax
imul rcx, r12
and rcx, qword [rsi + 0x30]
add rcx, rcx
mov rax, qword [r15 + rcx*8]
cmp qword [r15 + rcx*8 + 8], rbx
jne 0x14007b924
cmp rax, rbx
jne 0x14007b919
mov qword [r15 + rcx*8], rbp
mov qword [r15 + rcx*8 + 8], rbp
jmp 0x14007b930
mov rbp, qword [rbx + 8]
mov qword [r15 + rcx*8 + 8], rbp
jmp 0x14007b930
cmp rax, rbx
jne 0x14007b930
mov rax, qword [rbx]
mov qword [r15 + rcx*8], rax
mov rcx, qword [rbx]
dec qword [rsi + 0x10]
mov rax, qword [rbx + 8]
mov qword [rax], rcx
mov rax, qword [rbx + 8]
mov qword [rcx + 8], rax
mov edx, 0x38
mov rcx, rbx
call fcn.140116250
mov al, 1
jmp 0x14007b8b2
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rsp + 0x20], xmm0
mov qword [rsp + 0x30], rax
lea rcx, [rsp + 0x20]
call fcn.1400367a0
nop
mov rcx, rax
call fcn.1400362c0
int3
Function at 0x14009a7e0
Capabilities:
Hash data using fnv

Disassembly:
mov qword [rsp + 0x20], rbx
push rsi
sub rsp, 0x20
movabs rax, 0xfffffffffffffff
mov rsi, rcx
bsr rcx, rax
mov ebx, 1
mov eax, ebx
shl rax, cl
cmp rdx, rax
ja 0x14009a9c3
lea rax, [rdx - 1]
mov qword [rsp + 0x38], rdi
mov rdi, qword [rsi + 8]
or rax, rbx
bsr rcx, rax
mov r8, rdi
mov qword [rsp + 0x40], r14
inc ecx
shl rbx, cl
lea rcx, [rsi + 0x18]
lea rdx, [rbx + rbx]
call fcn.1400385b0
mov qword [rsi + 0x38], rbx
lea rax, [rbx - 1]
mov qword [rsi + 0x30], rax
mov rdx, qword [rsi + 8]
mov rdx, qword [rdx]
cmp rdx, rdi
je 0x14009a988
mov qword [rsp + 0x30], rbp
mov rcx, rdx
movabs rbp, 0xcbf29ce484222325
movabs rbx, 0x100000001b3
nop dword [rax]
nop dword [rax + rax]
movzx eax, byte [rcx + 0x11]
movzx r9d, byte [rcx + 0x10]
mov r11, qword [rsi + 0x30]
xor r9, rbp
mov rdx, qword [rdx]
imul r9, rbx
xor r9, rax
movzx eax, byte [rcx + 0x12]
imul r9, rbx
xor r9, rax
movzx eax, byte [rcx + 0x13]
imul r9, rbx
xor r9, rax
movzx eax, byte [rcx + 0x14]
imul r9, rbx
xor r9, rax
movzx eax, byte [rcx + 0x15]
imul r9, rbx
xor r9, rax
movzx eax, byte [rcx + 0x16]
imul r9, rbx
xor r9, rax
movzx eax, byte [rcx + 0x17]
imul r9, rbx
xor r9, rax
imul r9, rbx
and r11, r9
shl r11, 4
add r11, qword [rsi + 0x18]
mov r10, qword [r11]
cmp r10, rdi
jne 0x14009a8fc
mov qword [r11], rcx
mov qword [r11 + 8], rcx
jmp 0x14009a977
mov rax, qword [r11 + 8]
mov r9, qword [rcx + 0x10]
cmp r9, qword [rax + 0x10]
jne 0x14009a939
mov r10, qword [rax]
cmp r10, rcx
je 0x14009a933
mov r9, qword [rcx + 8]
mov qword [r9], rdx
mov r8, qword [rdx + 8]
mov qword [r8], r10
mov rax, qword [r10 + 8]
mov qword [rax], rcx
mov qword [r10 + 8], r8
mov qword [rdx + 8], r9
mov qword [rcx + 8], rax
mov qword [r11 + 8], rcx
jmp 0x14009a977
mov r8, rax
cmp r10, rax
je 0x14009a953
mov rax, qword [rax + 8]
mov r8, rax
cmp r9, qword [rax + 0x10]
je 0x14009a99d
cmp r10, rax
jne 0x14009a941
mov r10, qword [rcx + 8]
mov qword [r10], rdx
mov r9, qword [rdx + 8]
mov qword [r9], r8
mov rax, qword [r8 + 8]
mov qword [rax], rcx
mov qword [r8 + 8], r9
mov qword [rdx + 8], r10
mov qword [rcx + 8], rax
mov qword [r11], rcx
mov rcx, rdx
cmp rdx, rdi
jne 0x14009a880
mov rbp, qword [rsp + 0x30]
mov rdi, qword [rsp + 0x38]
mov r14, qword [rsp + 0x40]
mov rbx, qword [rsp + 0x48]
add rsp, 0x20
pop rsi
ret
mov r10, qword [rax]
mov r9, qword [rcx + 8]
mov qword [r9], rdx
mov r8, qword [rdx + 8]
mov qword [r8], r10
mov rax, qword [r10 + 8]
mov qword [rax], rcx
mov qword [r10 + 8], r8
mov qword [rdx + 8], r9
mov qword [rcx + 8], rax
jmp 0x14009a977
lea rcx, str.invalid_hash_bucket_count
call sub.MSVCP140.dll_void___cdecl_std::_Xlength_error_char_const____ptr64_
int3
Function at 0x1400a1370
Capabilities:
Encode data using xor
Hash data using fnv

Disassembly:
mov qword [rsp + 8], rbx
push rdi
sub rsp, 0x30
cmp qword [r8 + 0x18], 0x10
mov rbx, rdx
mov r11, qword [r8 + 0x10]
mov rdx, r8
mov rdi, rcx
jb 0x1400a1391
mov rdx, qword [r8]
xor r10d, r10d
movabs r9, 0xcbf29ce484222325
test r11, r11
je 0x1400a13c4
movabs rcx, 0x100000001b3
nop dword [rax]
movzx eax, byte [r10 + rdx]
inc r10
xor r9, rax
imul r9, rcx
cmp r10, r11
jb 0x1400a13b0
lea rdx, [rsp + 0x20]
mov rcx, rdi
call fcn.14009ec20
mov rcx, qword [rax + 8]
test rcx, rcx
je 0x1400a13eb
mov qword [rbx], rcx
mov rax, rbx
mov rbx, qword [rsp + 0x40]
add rsp, 0x30
pop rdi
ret
mov rax, qword [rdi + 8]
mov qword [rbx], rax
mov rax, rbx
mov rbx, qword [rsp + 0x40]
add rsp, 0x30
pop rdi
ret