joyce8/EMBER2024-capa huggingface dataset:
Function at 0x1400ab940
Capabilities:
Read file on windows

Disassembly:
mov qword [rsp + 0x18], rbx
mov qword [rsp + 0x20], rsi
push r14
sub rsp, 0x20
mov r14, r8
mov rsi, rdx
mov rbx, rcx
test r8, r8
jg 0x1400ab971
xor eax, eax
mov rbx, qword [rsp + 0x40]
mov rsi, qword [rsp + 0x48]
add rsp, 0x20
pop r14
ret
cmp qword [rcx + 0x68], 0
mov qword [rsp + 0x30], rbp
mov qword [rsp + 0x38], rdi
je 0x1400ab9eb
mov rdi, r14
mov rcx, rbx
call fcn.1400b2ed0
test rax, rax
jle 0x1400ab9c3
mov rdx, qword [rbx + 0x38]
cmp rdi, rax
mov rbp, rdi
mov rcx, rsi
cmovge rbp, rax
mov r8, rbp
mov rdx, qword [rdx]
call fcn.140198930
mov rax, qword [rbx + 0x50]
sub rdi, rbp
sub dword [rax], ebp
mov rcx, qword [rbx + 0x38]
movsxd rax, ebp
add qword [rcx], rax
jmp 0x1400ab9db
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax + 0x38]
cmp eax, 0xffffffff
je 0x1400ab9e3
mov byte [rsi], al
dec rdi
mov ebp, 1
add rsi, rbp
test rdi, rdi
jg 0x1400ab985
sub r14, rdi
jmp 0x1400abacf
mov rax, qword [rcx + 0x38]
mov rbp, r14
mov rdx, qword [rax]
test rdx, rdx
je 0x1400aba02
mov rax, qword [rcx + 0x50]
mov ecx, dword [rax]
jmp 0x1400aba04
xor ecx, ecx
movsxd rax, ecx
test ecx, ecx
je 0x1400aba36
cmp rax, r14
mov rdi, r14
mov rcx, rsi
cmovb rdi, rax
mov r8, rdi
call fcn.140198930
mov rax, qword [rbx + 0x50]
add rsi, rdi
sub rbp, rdi
sub dword [rax], edi
mov rcx, qword [rbx + 0x38]
movsxd rax, edi
add qword [rcx], rax
cmp qword [rbx + 0x80], 0
je 0x1400abacc
mov r8, qword [rbx + 0x18]
lea rax, [rbx + 0x70]
cmp qword [r8], rax
jne 0x1400aba71
mov rcx, qword [rbx + 0x88]
mov rdx, qword [rbx + 0x90]
mov qword [r8], rcx
sub edx, ecx
mov rax, qword [rbx + 0x38]
mov qword [rax], rcx
mov rax, qword [rbx + 0x50]
mov dword [rax], edx
cmp rbp, 0xfff
jbe 0x1400abaad
nop word [rax + rax]
mov r9, qword [rbx + 0x80]
mov edx, 1
mov r8d, 0xfff
mov rcx, rsi
call fcn.14016fbf0
add rsi, rax
sub rbp, rax
cmp rax, 0xfff
jne 0x1400abacc
cmp rbp, rax
ja 0x1400aba80
test rbp, rbp
je 0x1400abacc
mov r9, qword [rbx + 0x80]
mov r8, rbp
mov edx, 1
mov rcx, rsi
call fcn.14016fbf0
sub rbp, rax
sub r14, rbp
mov rbp, qword [rsp + 0x30]
mov rax, r14
mov rdi, qword [rsp + 0x38]
mov rbx, qword [rsp + 0x40]
mov rsi, qword [rsp + 0x48]
add rsp, 0x20
pop r14
ret
Function at 0x1400ac440
Capabilities:
Encode data using xor

Disassembly:
cmp byte [rcx + 3], 0
mov r10, rcx
je 0x1400ac511
xor r8d, r8d
cmp dword [0x1402170d0], 2
jl 0x1400ac4d7
movdqa xmm3, xmmword [0x1401ef550]
mov rax, rcx
movdqa xmm2, xmm3
movdqa xmm0, xmm3
punpckldq xmm2, xmm3
pmuldq xmm2, xmmword [0x1401ef7c0]
punpckhdq xmm0, xmm3
pmuldq xmm0, xmmword [0x1401ef7c0]
shufps xmm2, xmm0, 0xdd
psrad xmm2, 4
movdqa xmm0, xmm2
psrld xmm0, 0x1f
paddd xmm0, xmm2
pmulld xmm0, xmmword [0x1401ef580]
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
movd xmm0, dword [rcx]
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x1401ef640]
packuswb xmm2, xmm2
paddb xmm2, xmmword [str.5555555555555555]
xorps xmm2, xmm0
movd dword [rcx], xmm2
ret
mov r9, r10
nop word [rax + rax]
mov eax, 0x5397829d
lea r9, [r9 + 1]
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x31
movzx eax, r8b
inc r8d
sub al, cl
add al, 0x35
xor byte [r9 - 1], al
cmp r8d, 4
jl 0x1400ac4e0
mov rax, r10
ret
Function at 0x1400b84f0
Capabilities:
Encode data using xor

Disassembly:
push rbx
mov eax, 0x13c0
call fcn.140160c60
sub rsp, rax
mov ebx, edx
call fcn.140140630
mov r8d, eax
mov ecx, 1
movabs rax, 0x5555555555555555
mov qword [rsp + 0x38], r8
mov qword [rsp + 0x13b8], rax
movabs rdx, 0x5851f42d4c957f2d
nop
mov rax, r8
shr rax, 0x3e
xor r8, rax
imul r8, rdx
add r8, rcx
mov qword [rsp + rcx*8 + 0x38], r8
inc rcx
cmp rcx, 0x138
jb 0x1400b8530
mov dword [rsp + 0x30], 0x138
lea rcx, [rsp + 0x30]
cmp ebx, 0xffffffff
jne 0x1400b8572
call fcn.1400cffc0
add rsp, 0x13c0
pop rbx
ret
inc ebx
call fcn.1400cffc0
mov rcx, rax
mov eax, ebx
mul rcx
mov r8, rdx
mov rcx, rax
cmp rax, rbx
jae 0x1400b85c9
xor edx, edx
mov qword [rsp + 0x13d0], rdi
mov eax, ebx
neg rax
div rbx
mov rdi, rdx
cmp rcx, rdx
jae 0x1400b85c1
lea rcx, [rsp + 0x30]
call fcn.1400cffc0
mov rcx, rax
mov rax, rbx
mul rcx
mov r8, rdx
cmp rax, rdi
jb 0x1400b85a6
mov rdi, qword [rsp + 0x13d0]
mov ecx, 0x40
mov rax, r8
and ecx, 0x3f
shr rax, cl
add rsp, 0x13c0
pop rbx
ret
Function at 0x1400b9590
Capabilities:
Hash data using fnv

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rbp
mov qword [rsp + 0x18], rsi
mov qword [rsp + 0x20], rdi
push r12
push r14
push r15
sub rsp, 0x30
mov r12, r8
mov rsi, rdx
movzx eax, byte [r8]
mov r15d, eax
movabs rcx, 0xcbf29ce484222325
xor r15, rcx
movabs rcx, 0x100000001b3
imul r15, rcx
mov rcx, qword [0x1402b8da0]
and rcx, r15
add rcx, rcx
mov rdx, qword [0x1402b8d88]
mov rbx, qword [rdx + rcx*8 + 8]
mov r14, qword [0x1402b8d78]
cmp rbx, r14
jne 0x1400b9603
mov rbx, r14
mov rbp, r14
jmp 0x1400b964d
mov rcx, qword [rdx + rcx*8]
cmp al, byte [rbx + 0x10]
je 0x1400b961e
nop dword [rax]
cmp rbx, rcx
je 0x1400b9647
mov rbx, qword [rbx + 8]
cmp al, byte [rbx + 0x10]
jne 0x1400b9610
mov qword [rsi], rbx
mov byte [rsi + 8], 0
mov rax, rsi
mov rbx, qword [rsp + 0x50]
mov rbp, qword [rsp + 0x58]
mov rsi, qword [rsp + 0x60]
mov rdi, qword [rsp + 0x68]
add rsp, 0x30
pop r15
pop r14
pop r12
ret
mov r14, rbx
mov rbp, rbx
movabs rax, 0xaaaaaaaaaaaaaaa
cmp qword [0x1402b8d80], rax
je 0x1400b97e4
lea rax, [0x1402b8d78]
mov qword [rsp + 0x20], rax
mov qword [rsp + 0x28], 0
mov ecx, 0x18
call fcn.140160290
mov rdi, rax
mov qword [rsp + 0x28], rax
movzx ecx, byte [r12]
mov byte [rax + 0x10], cl
xor eax, eax
mov dword [rdi + 0x11], eax
mov r8, qword [0x1402b8d80]
lea rcx, [r8 + 1]
xorps xmm0, xmm0
test rcx, rcx
js 0x1400b96b2
cvtsi2ss xmm0, rcx
jmp 0x1400b96c7
mov rax, rcx
shr rax, 1
and ecx, 1
or rax, rcx
cvtsi2ss xmm0, rax
addss xmm0, xmm0
mov rcx, qword [0x1402b8da8]
xorps xmm1, xmm1
test rcx, rcx
js 0x1400b96dd
cvtsi2ss xmm1, rcx
jmp 0x1400b96f2
mov rax, rcx
shr rax, 1
and ecx, 1
or rax, rcx
cvtsi2ss xmm1, rax
addss xmm1, xmm1
divss xmm0, xmm1
comiss xmm0, dword [0x1402b8d70]
seta al
test al, al
je 0x1400b976e
call fcn.1400bf070
mov rdx, qword [0x1402b8da0]
and rdx, r15
add rdx, rdx
mov rcx, qword [0x1402b8d88]
mov rax, qword [rcx + rdx*8 + 8]
mov rbx, qword [0x1402b8d78]
cmp rax, rbx
jne 0x1400b9739
mov qword [rsp + 0x28], 0
jmp 0x1400b975a
mov rdx, qword [rcx + rdx*8]
movzx ecx, byte [rdi + 0x10]
cmp cl, byte [rax + 0x10]
je 0x1400b9757
mov rbx, rax
cmp rax, rdx
je 0x1400b97b1
mov rax, qword [rax + 8]
cmp cl, byte [rax + 0x10]
jne 0x1400b9746
mov rbx, qword [rax]
mov qword [rsp + 0x20], rbx
mov rbp, rbx
mov r14, qword [rsp + 0x20]
mov r8, qword [0x1402b8d80]
mov rdx, qword [rbx + 8]
inc r8
mov qword [0x1402b8d80], r8
mov qword [rdi], r14
mov qword [rdi + 8], rdx
mov qword [rdx], rdi
mov qword [rbx + 8], rdi
mov rcx, qword [0x1402b8d88]
mov rax, qword [0x1402b8da0]
and rax, r15
add rax, rax
mov r8, qword [rcx + rax*8]
cmp r8, qword [0x1402b8d78]
jne 0x1400b97c1
mov qword [rcx + rax*8], rdi
jmp 0x1400b97d3
mov qword [rsp + 0x20], rax
mov qword [rsp + 0x28], 0
jmp 0x1400b975f
cmp r8, rbp
jne 0x1400b97cc
mov qword [rcx + rax*8], rdi
jmp 0x1400b97d8
cmp qword [rcx + rax*8 + 8], rdx
jne 0x1400b97d8
mov qword [rcx + rax*8 + 8], rdi
mov qword [rsi], rdi
mov byte [rsi + 8], 1
jmp 0x1400b9625
lea rcx, str.unordered_map_set_too_long
call fcn.14013e0bc
int3
Function at 0x1400bc580
Capabilities:
Encode data using xor
Hash data using fnv

Disassembly:
movabs rax, 0xcbf29ce484222325
mov r9d, 0
sub r8, rdx
je 0x1400bc5b4
movabs r10, 0x100000001b3
nop
movzx ecx, byte [rdx + r9]
inc r9
xor rax, rcx
imul rax, r10
cmp r9, r8
jb 0x1400bc5a0
ret
Function at 0x1400bf070
Capabilities:
Hash data using fnv

Disassembly:
push rbx
sub rsp, 0x20
mov rcx, qword [0x1402b8d80]
xorps xmm0, xmm0
add rcx, 1
mov rbx, qword [0x1402b8da8]
js 0x1400bf094
cvtsi2ss xmm0, rcx
jmp 0x1400bf0a9
mov rax, rcx
and ecx, 1
shr rax, 1
or rax, rcx
cvtsi2ss xmm0, rax
addss xmm0, xmm0
divss xmm0, dword [0x1402b8d70]
call fcn.140193f74
movss xmm1, dword [0x1401ef330]
xor ecx, ecx
comiss xmm0, xmm1
jb 0x1400bf0db
subss xmm0, xmm1
comiss xmm0, xmm1
jae 0x1400bf0db
movabs rax, 0x8000000000000000
mov rcx, rax
cvttss2si rax, xmm0
add rax, rcx
mov ecx, 8
cmp rax, rcx
cmova rcx, rax
cmp rbx, rcx
jae 0x1400bf10d
cmp rbx, 0x200
jae 0x1400bf10a
lea rbx, [rbx*8]
cmp rbx, rcx
jae 0x1400bf10d
mov rbx, rcx
mov rdx, rbx
add rsp, 0x20
pop rbx
jmp 0x1400c0540
push rdi
sub rsp, 0x20
movabs rax, 0xfffffffffffffff
mov edi, 1
bsr rcx, rax
mov eax, edi
shl rax, cl
cmp rdx, rax
ja 0x1400c06cd
lea rax, [rdx - 1]
mov qword [rsp + 0x30], rbx
mov rbx, qword [0x1402b8d78]
or rax, rdi
bsr rcx, rax
mov r8, rbx
inc ecx
shl rdi, cl
lea rcx, [0x1402b8d88]
lea rdx, [rdi + rdi]
call fcn.1400b4190
mov rax, qword [0x1402b8d78]
lea rdx, [rdi - 1]
mov qword [0x1402b8da0], rdx
mov qword [0x1402b8da8], rdi
mov rax, qword [rax]
mov rcx, rax
cmp rax, rbx
je 0x1400c06c2
mov qword [rsp + 0x38], rsi
movabs rdi, 0xcbf29ce484222325
movabs rsi, 0x100000001b3
nop word [rax + rax]
movzx r9d, byte [rax + 0x10]
mov rcx, qword [rcx]
mov r11d, r9d
xor r11, rdi
imul r11, rsi
and r11, rdx
shl r11, 4
add r11, qword [0x1402b8d88]
mov r8, qword [r11]
cmp r8, rbx
jne 0x1400c0611
mov qword [r11], rax
mov qword [r11 + 8], rax
jmp 0x1400c0683
mov rdx, qword [r11 + 8]
cmp r9b, byte [rdx + 0x10]
jne 0x1400c064a
mov r10, qword [rdx]
cmp r10, rax
je 0x1400c0644
mov r9, qword [rax + 8]
mov qword [r9], rcx
mov r8, qword [rcx + 8]
mov qword [r8], r10
mov rdx, qword [r10 + 8]
mov qword [rdx], rax
mov qword [r10 + 8], r8
mov qword [rcx + 8], r9
mov qword [rax + 8], rdx
mov qword [r11 + 8], rax
jmp 0x1400c0683
cmp r8, rdx
je 0x1400c065f
nop
mov rdx, qword [rdx + 8]
cmp r9b, byte [rdx + 0x10]
je 0x1400c0697
cmp r8, rdx
jne 0x1400c0650
mov r10, qword [rax + 8]
mov qword [r10], rcx
mov r9, qword [rcx + 8]
mov qword [r9], rdx
mov r8, qword [rdx + 8]
mov qword [r8], rax
mov qword [rdx + 8], r9
mov qword [rcx + 8], r10
mov qword [rax + 8], r8
mov qword [r11], rax
mov rax, rcx
cmp rcx, rbx
je 0x1400c06bd
mov rdx, qword [0x1402b8da0]
jmp 0x1400c05e0
mov r10, qword [rdx]
mov r9, qword [rax + 8]
mov qword [r9], rcx
mov r8, qword [rcx + 8]
mov qword [r8], r10
mov rdx, qword [r10 + 8]
mov qword [rdx], rax
mov qword [r10 + 8], r8
mov qword [rcx + 8], r9
mov qword [rax + 8], rdx
jmp 0x1400c0683
mov rsi, qword [rsp + 0x38]
mov rbx, qword [rsp + 0x30]
add rsp, 0x20
pop rdi
ret
lea rcx, str.invalid_hash_bucket_count
call fcn.14013e0bc
int3
Function at 0x1400c0540
Capabilities:
Hash data using fnv

Disassembly:
push rbx
sub rsp, 0x20
mov rcx, qword [0x1402b8d80]
xorps xmm0, xmm0
add rcx, 1
mov rbx, qword [0x1402b8da8]
js 0x1400bf094
cvtsi2ss xmm0, rcx
jmp 0x1400bf0a9
mov rax, rcx
and ecx, 1
shr rax, 1
or rax, rcx
cvtsi2ss xmm0, rax
addss xmm0, xmm0
divss xmm0, dword [0x1402b8d70]
call fcn.140193f74
movss xmm1, dword [0x1401ef330]
xor ecx, ecx
comiss xmm0, xmm1
jb 0x1400bf0db
subss xmm0, xmm1
comiss xmm0, xmm1
jae 0x1400bf0db
movabs rax, 0x8000000000000000
mov rcx, rax
cvttss2si rax, xmm0
add rax, rcx
mov ecx, 8
cmp rax, rcx
cmova rcx, rax
cmp rbx, rcx
jae 0x1400bf10d
cmp rbx, 0x200
jae 0x1400bf10a
lea rbx, [rbx*8]
cmp rbx, rcx
jae 0x1400bf10d
mov rbx, rcx
mov rdx, rbx
add rsp, 0x20
pop rbx
jmp 0x1400c0540
push rdi
sub rsp, 0x20
movabs rax, 0xfffffffffffffff
mov edi, 1
bsr rcx, rax
mov eax, edi
shl rax, cl
cmp rdx, rax
ja 0x1400c06cd
lea rax, [rdx - 1]
mov qword [rsp + 0x30], rbx
mov rbx, qword [0x1402b8d78]
or rax, rdi
bsr rcx, rax
mov r8, rbx
inc ecx
shl rdi, cl
lea rcx, [0x1402b8d88]
lea rdx, [rdi + rdi]
call fcn.1400b4190
mov rax, qword [0x1402b8d78]
lea rdx, [rdi - 1]
mov qword [0x1402b8da0], rdx
mov qword [0x1402b8da8], rdi
mov rax, qword [rax]
mov rcx, rax
cmp rax, rbx
je 0x1400c06c2
mov qword [rsp + 0x38], rsi
movabs rdi, 0xcbf29ce484222325
movabs rsi, 0x100000001b3
nop word [rax + rax]
movzx r9d, byte [rax + 0x10]
mov rcx, qword [rcx]
mov r11d, r9d
xor r11, rdi
imul r11, rsi
and r11, rdx
shl r11, 4
add r11, qword [0x1402b8d88]
mov r8, qword [r11]
cmp r8, rbx
jne 0x1400c0611
mov qword [r11], rax
mov qword [r11 + 8], rax
jmp 0x1400c0683
mov rdx, qword [r11 + 8]
cmp r9b, byte [rdx + 0x10]
jne 0x1400c064a
mov r10, qword [rdx]
cmp r10, rax
je 0x1400c0644
mov r9, qword [rax + 8]
mov qword [r9], rcx
mov r8, qword [rcx + 8]
mov qword [r8], r10
mov rdx, qword [r10 + 8]
mov qword [rdx], rax
mov qword [r10 + 8], r8
mov qword [rcx + 8], r9
mov qword [rax + 8], rdx
mov qword [r11 + 8], rax
jmp 0x1400c0683
cmp r8, rdx
je 0x1400c065f
nop
mov rdx, qword [rdx + 8]
cmp r9b, byte [rdx + 0x10]
je 0x1400c0697
cmp r8, rdx
jne 0x1400c0650
mov r10, qword [rax + 8]
mov qword [r10], rcx
mov r9, qword [rcx + 8]
mov qword [r9], rdx
mov r8, qword [rdx + 8]
mov qword [r8], rax
mov qword [rdx + 8], r9
mov qword [rcx + 8], r10
mov qword [rax + 8], r8
mov qword [r11], rax
mov rax, rcx
cmp rcx, rbx
je 0x1400c06bd
mov rdx, qword [0x1402b8da0]
jmp 0x1400c05e0
mov r10, qword [rdx]
mov r9, qword [rax + 8]
mov qword [r9], rcx
mov r8, qword [rcx + 8]
mov qword [r8], r10
mov rdx, qword [r10 + 8]
mov qword [rdx], rax
mov qword [r10 + 8], r8
mov qword [rcx + 8], r9
mov qword [rax + 8], rdx
jmp 0x1400c0683
mov rsi, qword [rsp + 0x38]
mov rbx, qword [rsp + 0x30]
add rsp, 0x20
pop rdi
ret
lea rcx, str.invalid_hash_bucket_count
call fcn.14013e0bc
int3
Function at 0x1400c5540
Capabilities:
Hash data using fnv

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rbp
mov qword [rsp + 0x18], rsi
mov qword [rsp + 0x20], rdi
push r12
push r14
push r15
sub rsp, 0x30
mov r12, r8
mov rsi, rdx
movzx eax, byte [r8]
mov r15d, eax
movabs rcx, 0xcbf29ce484222325
xor r15, rcx
movabs rcx, 0x100000001b3
imul r15, rcx
mov rcx, qword [0x1402b8da0]
and rcx, r15
add rcx, rcx
mov rdx, qword [0x1402b8d88]
mov rbx, qword [rdx + rcx*8 + 8]
mov r14, qword [0x1402b8d78]
cmp rbx, r14
jne 0x1400c55b3
mov rbx, r14
mov rbp, r14
jmp 0x1400c55fd
mov rcx, qword [rdx + rcx*8]
cmp al, byte [rbx + 0x10]
je 0x1400c55ce
nop dword [rax]
cmp rbx, rcx
je 0x1400c55f7
mov rbx, qword [rbx + 8]
cmp al, byte [rbx + 0x10]
jne 0x1400c55c0
mov qword [rsi], rbx
mov byte [rsi + 8], 0
mov rax, rsi
mov rbx, qword [rsp + 0x50]
mov rbp, qword [rsp + 0x58]
mov rsi, qword [rsp + 0x60]
mov rdi, qword [rsp + 0x68]
add rsp, 0x30
pop r15
pop r14
pop r12
ret
mov r14, rbx
mov rbp, rbx
movabs rax, 0xaaaaaaaaaaaaaaa
cmp qword [0x1402b8d80], rax
je 0x1400c579e
lea rax, [0x1402b8d78]
mov qword [rsp + 0x20], rax
mov qword [rsp + 0x28], 0
mov ecx, 0x18
call fcn.140160290
mov rdi, rax
mov qword [rsp + 0x28], rax
mov ecx, dword [r12]
mov dword [rax + 0x10], ecx
movzx ecx, byte [r12 + 4]
mov byte [rax + 0x14], cl
mov r8, qword [0x1402b8d80]
lea rcx, [r8 + 1]
xorps xmm0, xmm0
test rcx, rcx
js 0x1400c5665
cvtsi2ss xmm0, rcx
jmp 0x1400c567a
mov rax, rcx
shr rax, 1
and ecx, 1
or rax, rcx
cvtsi2ss xmm0, rax
addss xmm0, xmm0
mov rcx, qword [0x1402b8da8]
xorps xmm1, xmm1
test rcx, rcx
js 0x1400c5690
cvtsi2ss xmm1, rcx
jmp 0x1400c56a5
mov rax, rcx
shr rax, 1
and ecx, 1
or rax, rcx
cvtsi2ss xmm1, rax
addss xmm1, xmm1
divss xmm0, xmm1
comiss xmm0, dword [0x1402b8d70]
seta al
test al, al
je 0x1400c5728
call fcn.1400bf070
mov rdx, qword [0x1402b8da0]
and rdx, r15
add rdx, rdx
mov rcx, qword [0x1402b8d88]
mov rax, qword [rcx + rdx*8 + 8]
mov rbx, qword [0x1402b8d78]
cmp rax, rbx
jne 0x1400c56ec
mov qword [rsp + 0x28], 0
jmp 0x1400c5714
mov rdx, qword [rcx + rdx*8]
movzx ecx, byte [rdi + 0x10]
cmp cl, byte [rax + 0x10]
je 0x1400c5711
nop dword [rax]
mov rbx, rax
cmp rax, rdx
je 0x1400c576b
mov rax, qword [rax + 8]
cmp cl, byte [rax + 0x10]
jne 0x1400c5700
mov rbx, qword [rax]
mov qword [rsp + 0x20], rbx
mov rbp, rbx
mov r14, qword [rsp + 0x20]
mov r8, qword [0x1402b8d80]
mov rdx, qword [rbx + 8]
inc r8
mov qword [0x1402b8d80], r8
mov qword [rdi], r14
mov qword [rdi + 8], rdx
mov qword [rdx], rdi
mov qword [rbx + 8], rdi
mov rcx, qword [0x1402b8d88]
mov rax, qword [0x1402b8da0]
and rax, r15
add rax, rax
mov r8, qword [rcx + rax*8]
cmp r8, qword [0x1402b8d78]
jne 0x1400c577b
mov qword [rcx + rax*8], rdi
jmp 0x1400c578d
mov qword [rsp + 0x20], rax
mov qword [rsp + 0x28], 0
jmp 0x1400c5719
cmp r8, rbp
jne 0x1400c5786
mov qword [rcx + rax*8], rdi
jmp 0x1400c5792
cmp qword [rcx + rax*8 + 8], rdx
jne 0x1400c5792
mov qword [rcx + rax*8 + 8], rdi
mov qword [rsi], rdi
mov byte [rsi + 8], 1
jmp 0x1400c55d5
lea rcx, str.unordered_map_set_too_long
call fcn.14013e0bc
int3
Function at 0x1400cfc80
Capabilities:
Hash data using fnv

Disassembly:
push rdi
sub rsp, 0x20
movabs rax, 0xfffffffffffffff
mov edi, 1
bsr rcx, rax
mov eax, edi
shl rax, cl
cmp rdx, rax
ja 0x1400cfe0d
lea rax, [rdx - 1]
mov qword [rsp + 0x30], rbx
mov rbx, qword [0x1402b8d28]
or rax, rdi
bsr rcx, rax
mov r8, rbx
inc ecx
shl rdi, cl
lea rcx, [0x1402b8d38]
lea rdx, [rdi + rdi]
call fcn.1400b4190
mov rax, qword [0x1402b8d28]
lea rdx, [rdi - 1]
mov qword [0x1402b8d50], rdx
mov qword [0x1402b8d58], rdi
mov rax, qword [rax]
mov rcx, rax
cmp rax, rbx
je 0x1400cfe02
mov qword [rsp + 0x38], rsi
movabs rdi, 0xcbf29ce484222325
movabs rsi, 0x100000001b3
nop word [rax + rax]
movzx r9d, byte [rax + 0x10]
mov rcx, qword [rcx]
mov r11d, r9d
xor r11, rdi
imul r11, rsi
and r11, rdx
shl r11, 4
add r11, qword [0x1402b8d38]
mov r8, qword [r11]
cmp r8, rbx
jne 0x1400cfd51
mov qword [r11], rax
mov qword [r11 + 8], rax
jmp 0x1400cfdc3
mov rdx, qword [r11 + 8]
cmp r9b, byte [rdx + 0x10]
jne 0x1400cfd8a
mov r10, qword [rdx]
cmp r10, rax
je 0x1400cfd84
mov r9, qword [rax + 8]
mov qword [r9], rcx
mov r8, qword [rcx + 8]
mov qword [r8], r10
mov rdx, qword [r10 + 8]
mov qword [rdx], rax
mov qword [r10 + 8], r8
mov qword [rcx + 8], r9
mov qword [rax + 8], rdx
mov qword [r11 + 8], rax
jmp 0x1400cfdc3
cmp r8, rdx
je 0x1400cfd9f
nop
mov rdx, qword [rdx + 8]
cmp r9b, byte [rdx + 0x10]
je 0x1400cfdd7
cmp r8, rdx
jne 0x1400cfd90
mov r10, qword [rax + 8]
mov qword [r10], rcx
mov r9, qword [rcx + 8]
mov qword [r9], rdx
mov r8, qword [rdx + 8]
mov qword [r8], rax
mov qword [rdx + 8], r9
mov qword [rcx + 8], r10
mov qword [rax + 8], r8
mov qword [r11], rax
mov rax, rcx
cmp rcx, rbx
je 0x1400cfdfd
mov rdx, qword [0x1402b8d50]
jmp 0x1400cfd20
mov r10, qword [rdx]
mov r9, qword [rax + 8]
mov qword [r9], rcx
mov r8, qword [rcx + 8]
mov qword [r8], r10
mov rdx, qword [r10 + 8]
mov qword [rdx], rax
mov qword [r10 + 8], r8
mov qword [rcx + 8], r9
mov qword [rax + 8], rdx
jmp 0x1400cfdc3
mov rsi, qword [rsp + 0x38]
mov rbx, qword [rsp + 0x30]
add rsp, 0x20
pop rdi
ret
lea rcx, str.invalid_hash_bucket_count
call fcn.14013e0bc
int3
Function at 0x1400cfe20
Capabilities:
Hash data using fnv

Disassembly:
push rdi
sub rsp, 0x20
movabs rax, 0xfffffffffffffff
mov edi, 1
bsr rcx, rax
mov eax, edi
shl rax, cl
cmp rdx, rax
ja 0x1400cffad
lea rax, [rdx - 1]
mov qword [rsp + 0x30], rbx
mov rbx, qword [0x1402b89d8]
or rax, rdi
bsr rcx, rax
mov r8, rbx
inc ecx
shl rdi, cl
lea rcx, [0x1402b89e8]
lea rdx, [rdi + rdi]
call fcn.1400b4190
mov rax, qword [0x1402b89d8]
lea rdx, [rdi - 1]
mov qword [0x1402b8a00], rdx
mov qword [0x1402b8a08], rdi
mov rax, qword [rax]
mov rcx, rax
cmp rax, rbx
je 0x1400cffa2
mov qword [rsp + 0x38], rsi
movabs rdi, 0xcbf29ce484222325
movabs rsi, 0x100000001b3
nop word [rax + rax]
movzx r9d, byte [rax + 0x10]
mov rcx, qword [rcx]
mov r11d, r9d
xor r11, rdi
imul r11, rsi
and r11, rdx
shl r11, 4
add r11, qword [0x1402b89e8]
mov r8, qword [r11]
cmp r8, rbx
jne 0x1400cfef1
mov qword [r11], rax
mov qword [r11 + 8], rax
jmp 0x1400cff63
mov rdx, qword [r11 + 8]
cmp r9b, byte [rdx + 0x10]
jne 0x1400cff2a
mov r10, qword [rdx]
cmp r10, rax
je 0x1400cff24
mov r9, qword [rax + 8]
mov qword [r9], rcx
mov r8, qword [rcx + 8]
mov qword [r8], r10
mov rdx, qword [r10 + 8]
mov qword [rdx], rax
mov qword [r10 + 8], r8
mov qword [rcx + 8], r9
mov qword [rax + 8], rdx
mov qword [r11 + 8], rax
jmp 0x1400cff63
cmp r8, rdx
je 0x1400cff3f
nop
mov rdx, qword [rdx + 8]
cmp r9b, byte [rdx + 0x10]
je 0x1400cff77
cmp r8, rdx
jne 0x1400cff30
mov r10, qword [rax + 8]
mov qword [r10], rcx
mov r9, qword [rcx + 8]
mov qword [r9], rdx
mov r8, qword [rdx + 8]
mov qword [r8], rax
mov qword [rdx + 8], r9
mov qword [rcx + 8], r10
mov qword [rax + 8], r8
mov qword [r11], rax
mov rax, rcx
cmp rcx, rbx
je 0x1400cff9d
mov rdx, qword [0x1402b8a00]
jmp 0x1400cfec0
mov r10, qword [rdx]
mov r9, qword [rax + 8]
mov qword [r9], rcx
mov r8, qword [rcx + 8]
mov qword [r8], r10
mov rdx, qword [r10 + 8]
mov qword [rdx], rax
mov qword [r10 + 8], r8
mov qword [rcx + 8], r9
mov qword [rax + 8], rdx
jmp 0x1400cff63
mov rsi, qword [rsp + 0x38]
mov rbx, qword [rsp + 0x30]
add rsp, 0x20
pop rdi
ret
lea rcx, str.invalid_hash_bucket_count
call fcn.14013e0bc
int3
Function at 0x1400cffc0
Capabilities:
Encode data using xor
Generate random numbers using a mersenne twister

Disassembly:
sub rsp, 8
mov r10, rcx
mov r9d, 0x138
mov ecx, dword [rcx]
cmp ecx, r9d
jne 0x1400d0027
lea r8, [r10 + 0x10]
movabs r11, 0xb5026f5aa96619e9
mov rdx, qword [r8]
xor rdx, qword [r8 - 8]
lea r8, [r8 + 8]
and rdx, 0xffffffff80000000
xor rdx, qword [r8 - 8]
movzx eax, dl
and al, 1
neg al
sbb rcx, rcx
shr rdx, 1
and rcx, r11
xor rcx, qword [r8 + 0x4d0]
xor rcx, rdx
mov qword [r8 + 0x9b0], rcx
sub r9, 1
jne 0x1400cffe2
mov ecx, dword [r10]
jmp 0x1400d0148
cmp ecx, 0x270
jb 0x1400d0148
mov qword [rsp + 0x10], rbx
movabs r11, 0xb5026f5aa96619e9
lea rbx, [r10 + 0x9c8]
mov qword [rsp], rdi
mov rax, qword [rbx]
mov edi, 0x9c
nop word [rax + rax]
mov r9, qword [rbx + 8]
mov r8, rbx
add rbx, 8
mov rdx, r9
xor rdx, rax
and rdx, 0xffffffff80000000
xor rdx, r9
movzx eax, dl
and al, 1
neg al
mov rax, r9
sbb rcx, rcx
shr rdx, 1
and rcx, r11
xor rcx, qword [r8 + 0x4e0]
xor rcx, rdx
mov qword [r8 - 0x9c0], rcx
sub rdi, 1
jne 0x1400d0060
lea rbx, [r10 + 0xea8]
mov edi, 0x9b
mov r9, qword [rbx]
nop dword [rax]
nop dword [rax + rax]
mov r8, qword [rbx + 8]
mov rdx, rbx
xor r9, r8
add rbx, 8
and r9, 0xffffffff80000000
xor r9, r8
movzx eax, r9b
and al, 1
neg al
sbb rcx, rcx
shr r9, 1
and rcx, r11
xor rcx, qword [rdx - 0xea0]
xor rcx, r9
mov r9, r8
mov qword [rdx - 0x9c0], rcx
sub rdi, 1
jne 0x1400d00c0
mov rdx, qword [r10 + 8]
xor rdx, qword [r10 + 0x1380]
mov rdi, qword [rsp]
and rdx, 0xffffffff80000000
xor rdx, qword [r10 + 8]
mov rbx, qword [rsp + 0x10]
movzx eax, dl
and al, 1
neg al
sbb rcx, rcx
shr rdx, 1
and rcx, r11
xor rcx, qword [r10 + 0x4e0]
xor rcx, rdx
mov qword [r10 + 0x9c0], rcx
xor ecx, ecx
mov dword [r10], ecx
mov eax, ecx
mov rdx, qword [r10 + rax*8 + 8]
lea eax, [rcx + 1]
mov dword [r10], eax
mov rcx, rdx
mov rax, qword [r10 + 0x1388]
shr rcx, 0x1d
and rax, rcx
movabs rcx, 0x38eb3ffff6d3
xor rdx, rax
mov rax, rdx
and rax, rcx
shl rax, 0x11
xor rdx, rax
mov rax, rdx
and rax, 0xffffffffffffbf77
shl rax, 0x25
xor rdx, rax
mov rax, rdx
shr rax, 0x2b
xor rax, rdx
add rsp, 8
ret