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

Disassembly:
mov qword [rsp + 8], rbx
push rdi
sub rsp, 0x20
mov rcx, qword [0x180197340]
xorps xmm0, xmm0
add rcx, 1
js 0x18002fc3d
cvtsi2ss xmm0, rcx
jmp 0x18002fc52
mov rax, rcx
and ecx, 1
shr rax, 1
or rax, rcx
cvtsi2ss xmm0, rax
addss xmm0, xmm0
divss xmm0, dword [0x180197330]
call fcn.1800eae84
movss xmm1, dword [0x18016faf8]
xor ecx, ecx
comiss xmm0, xmm1
jb 0x18002fc84
subss xmm0, xmm1
comiss xmm0, xmm1
jae 0x18002fc84
movabs rax, 0x8000000000000000
mov rcx, rax
mov rdx, qword [0x180197368]
cvttss2si rax, xmm0
add rax, rcx
mov ecx, 8
cmp rax, rcx
cmova rcx, rax
cmp rdx, rcx
jae 0x18002fcb9
cmp rdx, 0x200
jae 0x18002fcb6
shl rdx, 3
cmp rdx, rcx
jae 0x18002fcb9
mov rdx, rcx
movabs rax, 0xfffffffffffffff
bsr rcx, rax
mov eax, 1
shl rax, cl
cmp rdx, rax
ja 0x18002fe31
mov rbx, qword [0x180197338]
lea rax, [rdx - 1]
or rax, 1
mov edi, 1
bsr rcx, rax
mov r8, rbx
inc ecx
shl rdi, cl
lea rcx, [0x180197348]
lea rdx, [rdi + rdi]
call fcn.18001d384
mov rax, qword [0x180197338]
lea r9, [rdi - 1]
mov qword [0x180197360], r9
mov qword [0x180197368], rdi
mov rax, qword [rax]
mov rcx, rax
cmp rax, rbx
je 0x18002fe26
mov rcx, qword [rcx]
movabs r11, 0xcbf29ce484222325
xor r8d, r8d
movzx edx, byte [rax + r8 + 0x10]
movabs r10, 0x100000001b3
xor r11, rdx
inc r8
imul r11, r10
cmp r8, 4
jb 0x18002fd40
mov rdi, qword [0x180197348]
and r11, r9
add r11, r11
cmp qword [rdi + r11*8], rbx
jne 0x18002fd7e
mov qword [rdi + r11*8], rax
mov qword [rdi + r11*8 + 8], rax
jmp 0x18002fdec
mov r10, qword [rdi + r11*8 + 8]
mov edx, dword [rax + 0x10]
cmp edx, dword [r10 + 0x10]
jne 0x18002fdc1
mov r10, qword [r10]
cmp r10, rax
je 0x18002fd77
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 0x18002fd77
mov r10, qword [r10 + 8]
cmp edx, dword [r10 + 0x10]
je 0x18002fe00
cmp qword [rdi + r11*8], r10
jne 0x18002fdb7
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 [rdi + r11*8], rax
mov rax, rcx
cmp rcx, rbx
je 0x18002fe26
mov r9, qword [0x180197360]
jmp 0x18002fd30
mov r10, qword [r10]
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 0x18002fdec
mov rbx, qword [rsp + 0x30]
add rsp, 0x20
pop rdi
ret
lea rcx, str.invalid_hash_bucket_count
call fcn.1800bdbd4
int3
Function at 0x18002fe40
Capabilities:
Encode data using xor
Hash data using fnv

Disassembly:
mov qword [rsp + 8], rbx
push rdi
sub rsp, 0x20
mov rcx, qword [0x180197300]
xorps xmm0, xmm0
add rcx, 1
js 0x18002fe61
cvtsi2ss xmm0, rcx
jmp 0x18002fe76
mov rax, rcx
and ecx, 1
shr rax, 1
or rax, rcx
cvtsi2ss xmm0, rax
addss xmm0, xmm0
divss xmm0, dword [0x1801972f0]
call fcn.1800eae84
movss xmm1, dword [0x18016faf8]
xor ecx, ecx
comiss xmm0, xmm1
jb 0x18002fea8
subss xmm0, xmm1
comiss xmm0, xmm1
jae 0x18002fea8
movabs rax, 0x8000000000000000
mov rcx, rax
mov rdx, qword [0x180197328]
cvttss2si rax, xmm0
add rax, rcx
mov ecx, 8
cmp rax, rcx
cmova rcx, rax
cmp rdx, rcx
jae 0x18002fedd
cmp rdx, 0x200
jae 0x18002feda
shl rdx, 3
cmp rdx, rcx
jae 0x18002fedd
mov rdx, rcx
movabs rax, 0xfffffffffffffff
bsr rcx, rax
mov eax, 1
shl rax, cl
cmp rdx, rax
ja 0x180030055
mov rbx, qword [0x1801972f8]
lea rax, [rdx - 1]
or rax, 1
mov edi, 1
bsr rcx, rax
mov r8, rbx
inc ecx
shl rdi, cl
lea rcx, [0x180197308]
lea rdx, [rdi + rdi]
call fcn.18001d384
mov rax, qword [0x1801972f8]
lea r9, [rdi - 1]
mov qword [0x180197320], r9
mov qword [0x180197328], rdi
mov rax, qword [rax]
mov rcx, rax
cmp rax, rbx
je 0x18003004a
mov rcx, qword [rcx]
movabs r11, 0xcbf29ce484222325
xor r8d, r8d
movzx edx, byte [rax + r8 + 0x10]
movabs r10, 0x100000001b3
xor r11, rdx
inc r8
imul r11, r10
cmp r8, 4
jb 0x18002ff64
mov rdi, qword [0x180197308]
and r11, r9
add r11, r11
cmp qword [rdi + r11*8], rbx
jne 0x18002ffa2
mov qword [rdi + r11*8], rax
mov qword [rdi + r11*8 + 8], rax
jmp 0x180030010
mov r10, qword [rdi + r11*8 + 8]
mov edx, dword [rax + 0x10]
cmp edx, dword [r10 + 0x10]
jne 0x18002ffe5
mov r10, qword [r10]
cmp r10, rax
je 0x18002ff9b
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 0x18002ff9b
mov r10, qword [r10 + 8]
cmp edx, dword [r10 + 0x10]
je 0x180030024
cmp qword [rdi + r11*8], r10
jne 0x18002ffdb
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 [rdi + r11*8], rax
mov rax, rcx
cmp rcx, rbx
je 0x18003004a
mov r9, qword [0x180197320]
jmp 0x18002ff54
mov r10, qword [r10]
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 0x180030010
mov rbx, qword [rsp + 0x30]
add rsp, 0x20
pop rdi
ret
lea rcx, str.invalid_hash_bucket_count
call fcn.1800bdbd4
int3
Function at 0x180036430
Capabilities:
Encode data using xor
Hash data using fnv

Disassembly:
mov qword [rsp + 8], rcx
push rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x28
mov rbp, r8
mov r13, rdx
cmp rdx, r8
je 0x180036500
mov rax, qword [rcx + 8]
mov rsi, rdx
mov r14, qword [rdx + 8]
movabs r15, 0xcbf29ce484222325
mov r12, qword [rcx + 0x18]
xor edx, edx
mov qword [rsp + 0x78], rax
movabs r8, 0x100000001b3
movzx eax, byte [rdx + r13 + 0x10]
inc rdx
xor r15, rax
imul r15, r8
cmp rdx, 4
jb 0x18003647e
and r15, qword [rcx + 0x30]
add r15, r15
mov rax, qword [r12 + r15*8]
mov qword [rsp + 0x80], rax
mov rax, qword [r12 + r15*8 + 8]
mov qword [rsp + 0x88], rax
mov rbx, rsi
mov rdi, rsi
mov rsi, qword [rsi]
lea rcx, [rbx + 0x18]
call fcn.180037060
mov edx, 0x58
mov rcx, rbx
call fcn.1800c0630
mov rdx, qword [rsp + 0x70]
dec qword [rdx + 0x10]
cmp rbx, qword [rsp + 0x88]
je 0x180036514
cmp rsi, rbp
jne 0x1800364b4
cmp qword [rsp + 0x80], r13
jne 0x1800364f9
mov qword [r12 + r15*8], rsi
mov qword [r14], rsi
mov qword [rsi + 8], r14
mov rax, rbp
add rsp, 0x28
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
pop rbx
ret
cmp qword [rsp + 0x80], r13
jne 0x18003652c
mov r13, qword [rsp + 0x78]
mov qword [r12 + r15*8], r13
mov rax, r13
jmp 0x18003652f
mov rax, r14
mov qword [r12 + r15*8 + 8], rax
jmp 0x1800365c7
movabs rcx, 0xcbf29ce484222325
xor r8d, r8d
movabs r13, 0x100000001b3
movzx eax, byte [rsi + r8 + 0x10]
inc r8
xor rcx, rax
imul rcx, r13
cmp r8, 4
jb 0x180036550
mov r15, qword [rdx + 0x30]
mov r13, qword [rsp + 0x78]
and r15, rcx
add r15, r15
mov rax, qword [r12 + r15*8 + 8]
mov qword [rsp + 0x80], rax
mov rbx, rsi
mov rdi, rsi
mov rsi, qword [rsi]
lea rcx, [rbx + 0x18]
call fcn.180037060
mov edx, 0x58
mov rcx, rbx
call fcn.1800c0630
mov rdx, qword [rsp + 0x70]
dec qword [rdx + 0x10]
cmp rbx, qword [rsp + 0x80]
je 0x1800365be
cmp rsi, rbp
jne 0x180036582
jmp 0x1800364f5
mov qword [r12 + r15*8], r13
mov qword [r12 + r15*8 + 8], r13
cmp rsi, rbp
jne 0x180036539
jmp 0x1800364f9
Function at 0x1800365d8
Capabilities:
Encode data using xor
Hash data using fnv

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, 0x30
mov r15, r8
mov rdi, rdx
mov rbp, rcx
xor ecx, ecx
movabs r14, 0xcbf29ce484222325
movzx eax, byte [r8 + rcx]
xor r14, rax
movabs rdx, 0x100000001b3
imul r14, rdx
inc rcx
cmp rcx, 4
jb 0x18003660a
mov rcx, qword [rbp + 0x30]
and rcx, r14
add rcx, rcx
mov rdx, qword [rbp + 0x18]
mov rax, qword [rdx + rcx*8 + 8]
lea r12, [rbp + 8]
mov rsi, qword [r12]
cmp rax, rsi
je 0x18003668c
mov r8, qword [rdx + rcx*8]
mov ecx, dword [r15]
jmp 0x18003665b
cmp rax, r8
je 0x180036689
mov rax, qword [rax + 8]
cmp ecx, dword [rax + 0x10]
jne 0x180036652
mov qword [rdi], rax
mov byte [rdi + 8], 0
mov rax, rdi
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 rsi, rax
movabs rax, 0xaaaaaaaaaaaaaaa
cmp qword [rbp + 0x10], rax
je 0x1800367b8
mov qword [rsp + 0x20], r12
and qword [rsp + 0x28], 0
mov ecx, 0x18
call fcn.1800c0af4
mov rbx, rax
mov qword [rsp + 0x28], rax
mov ecx, dword [r15]
mov dword [rax + 0x10], ecx
mov rcx, qword [rbp + 0x10]
add rcx, 1
xorps xmm0, xmm0
js 0x1800366d7
cvtsi2ss xmm0, rcx
jmp 0x1800366ec
mov rax, rcx
shr rax, 1
and ecx, 1
or rax, rcx
cvtsi2ss xmm0, rax
addss xmm0, xmm0
mov rcx, qword [rbp + 0x38]
xorps xmm1, xmm1
test rcx, rcx
js 0x1800366ff
cvtsi2ss xmm1, rcx
jmp 0x180036714
mov rax, rcx
shr rax, 1
and ecx, 1
or rax, rcx
cvtsi2ss xmm1, rax
addss xmm1, xmm1
divss xmm0, xmm1
comiss xmm0, dword [rbp]
jbe 0x18003675c
mov rcx, rbp
call fcn.180036a84
mov rcx, qword [rbp + 0x30]
and rcx, r14
add rcx, rcx
mov rdx, qword [rbp + 0x18]
mov rax, qword [rdx + rcx*8 + 8]
mov rsi, qword [r12]
cmp rax, rsi
je 0x18003675c
mov rdx, qword [rdx + rcx*8]
mov ecx, dword [rbx + 0x10]
jmp 0x180036754
cmp rax, rdx
je 0x180036790
mov rax, qword [rax + 8]
cmp ecx, dword [rax + 0x10]
jne 0x18003674b
mov rsi, qword [rax]
mov rdx, qword [rsi + 8]
inc qword [rbp + 0x10]
mov qword [rbx], rsi
mov qword [rbx + 8], rdx
mov qword [rdx], rbx
mov qword [rsi + 8], rbx
mov rcx, qword [rbp + 0x18]
mov rax, qword [rbp + 0x30]
and rax, r14
add rax, rax
mov r8, qword [rcx + rax*8]
cmp r8, qword [r12]
jne 0x180036795
mov qword [rcx + rax*8], rbx
jmp 0x1800367a7
mov rsi, rax
jmp 0x18003675c
cmp r8, rsi
jne 0x1800367a0
mov qword [rcx + rax*8], rbx
jmp 0x1800367ac
cmp qword [rcx + rax*8 + 8], rdx
jne 0x1800367ac
mov qword [rcx + rax*8 + 8], rbx
mov qword [rdi], rbx
mov byte [rdi + 8], 1
jmp 0x180036667
lea rcx, str.unordered_map_set_too_long
call fcn.1800bdbd4
int3
Function at 0x180036a84
Capabilities:
Encode data using xor
Hash data using fnv

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
mov qword [rsp + 0x18], rdi
push r14
sub rsp, 0x20
mov rdx, qword [rcx + 0x10]
mov rdi, rcx
add rdx, 1
mov rbx, qword [rcx + 0x38]
xorps xmm0, xmm0
js 0x180036ab4
cvtsi2ss xmm0, rdx
jmp 0x180036ac9
mov rax, rdx
and edx, 1
shr rax, 1
or rax, rdx
cvtsi2ss xmm0, rax
addss xmm0, xmm0
divss xmm0, dword [rcx]
call fcn.1800eae84
movss xmm1, dword [0x18016faf8]
xor ecx, ecx
comiss xmm0, xmm1
jb 0x180036af7
subss xmm0, xmm1
comiss xmm0, xmm1
jae 0x180036af7
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 0x180036b25
cmp rbx, 0x200
jae 0x180036b22
shl rbx, 3
cmp rbx, rcx
jae 0x180036b25
mov rbx, rcx
movabs rax, 0xfffffffffffffff
bsr rcx, rax
mov eax, 1
shl rax, cl
cmp rbx, rax
ja 0x180036c8f
mov rsi, qword [rdi + 8]
lea rax, [rbx - 1]
or rax, 1
mov ebx, 1
bsr rcx, rax
mov r8, rsi
inc ecx
shl rbx, cl
lea rcx, [rdi + 0x18]
lea rdx, [rbx + rbx]
call fcn.18001d384
mov qword [rdi + 0x38], rbx
lea rax, [rbx - 1]
mov qword [rdi + 0x30], rax
mov rcx, qword [rdi + 8]
mov rcx, qword [rcx]
cmp rcx, rsi
je 0x180036c53
mov rax, rcx
mov rcx, qword [rcx]
movabs r11, 0xcbf29ce484222325
xor r8d, r8d
movzx edx, byte [rax + r8 + 0x10]
movabs r9, 0x100000001b3
xor r11, rdx
inc r8
imul r11, r9
cmp r8, 4
jb 0x180036b9d
and r11, qword [rdi + 0x30]
mov rbx, qword [rdi + 0x18]
add r11, r11
cmp qword [rbx + r11*8], rsi
jne 0x180036bd9
mov qword [rbx + r11*8], rax
mov qword [rbx + r11*8 + 8], rax
jmp 0x180036c47
mov r10, qword [rbx + r11*8 + 8]
mov edx, dword [rax + 0x10]
cmp edx, dword [r10 + 0x10]
jne 0x180036c1c
mov r10, qword [r10]
cmp r10, rax
je 0x180036bd2
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 0x180036bd2
mov r10, qword [r10 + 8]
cmp edx, dword [r10 + 0x10]
je 0x180036c69
cmp qword [rbx + r11*8], r10
jne 0x180036c12
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 [rbx + r11*8], rax
mov rax, rcx
cmp rcx, rsi
jne 0x180036b8d
mov rbx, qword [rsp + 0x30]
mov rsi, qword [rsp + 0x38]
mov rdi, qword [rsp + 0x40]
add rsp, 0x20
pop r14
ret
mov r10, qword [r10]
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 0x180036c47
lea rcx, str.invalid_hash_bucket_count
call fcn.1800bdbd4
int3
Function at 0x180036c9c
Capabilities:
Encode data using xor
Hash data using fnv

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
mov qword [rsp + 0x18], rdi
push r14
sub rsp, 0x20
mov rdx, qword [rcx + 0x10]
mov rsi, rcx
add rdx, 1
mov rbx, qword [rcx + 0x38]
xorps xmm0, xmm0
js 0x180036ccc
cvtsi2ss xmm0, rdx
jmp 0x180036ce1
mov rax, rdx
and edx, 1
shr rax, 1
or rax, rdx
cvtsi2ss xmm0, rax
addss xmm0, xmm0
divss xmm0, dword [rcx]
call fcn.1800eae84
movss xmm1, dword [0x18016faf8]
xor ecx, ecx
comiss xmm0, xmm1
jb 0x180036d0f
subss xmm0, xmm1
comiss xmm0, xmm1
jae 0x180036d0f
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 0x180036d3d
cmp rbx, 0x200
jae 0x180036d3a
shl rbx, 3
cmp rbx, rcx
jae 0x180036d3d
mov rbx, rcx
movabs rax, 0xfffffffffffffff
bsr rcx, rax
mov eax, 1
shl rax, cl
cmp rbx, rax
ja 0x180036eaa
lea rax, [rbx - 1]
mov edi, 1
mov rbx, qword [rsi + 8]
or rax, 1
bsr rcx, rax
mov r8, rbx
inc ecx
shl rdi, cl
lea rcx, [rsi + 0x18]
lea rdx, [rdi + rdi]
call fcn.18001d384
lea rax, [rdi - 1]
mov qword [rsi + 0x38], rdi
mov qword [rsi + 0x30], rax
mov rax, qword [rsi + 8]
mov rax, qword [rax]
mov rcx, rax
cmp rax, rbx
je 0x180036e6e
mov rcx, qword [rcx]
movabs r8, 0xcbf29ce484222325
xor r9d, r9d
movzx edx, byte [rax + r9 + 0x10]
movabs r10, 0x100000001b3
xor r8, rdx
inc r9
imul r8, r10
cmp r9, 4
jb 0x180036db5
mov r11, qword [rsi + 0x30]
mov rdi, qword [rsi + 0x18]
and r11, r8
add r11, r11
cmp qword [rdi + r11*8], rbx
jne 0x180036df4
mov qword [rdi + r11*8], rax
mov qword [rdi + r11*8 + 8], rax
jmp 0x180036e62
mov r10, qword [rdi + r11*8 + 8]
mov edx, dword [rax + 0x10]
cmp edx, dword [r10 + 0x10]
jne 0x180036e37
mov r10, qword [r10]
cmp r10, rax
je 0x180036ded
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 0x180036ded
mov r10, qword [r10 + 8]
cmp edx, dword [r10 + 0x10]
je 0x180036e84
cmp qword [rdi + r11*8], r10
jne 0x180036e2d
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 [rdi + r11*8], rax
mov rax, rcx
cmp rcx, rbx
jne 0x180036da5
mov rbx, qword [rsp + 0x30]
mov rsi, qword [rsp + 0x38]
mov rdi, qword [rsp + 0x40]
add rsp, 0x20
pop r14
ret
mov r10, qword [r10]
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 0x180036e62
lea rcx, str.invalid_hash_bucket_count
call fcn.1800bdbd4
int3
Function at 0x18003b600
Capabilities:
Encode data using xor
Hash data using fnv

Disassembly:
mov qword [rsp + 0x20], rbx
mov qword [rsp + 8], rcx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
mov rbp, rsp
sub rsp, 0x40
mov r15, rdx
mov rdi, r8
mov rdx, rcx
cmp r15, r8
je 0x18003b6ee
mov r13, qword [r15 + 8]
lea rax, [rcx + 8]
mov r14, qword [rcx + 0x18]
movabs rsi, 0xcbf29ce484222325
mov r12, qword [rax]
xor ecx, ecx
mov qword [rbp - 0x20], rax
movabs r8, 0x100000001b3
mov qword [rbp - 0x18], r13
mov qword [rbp - 0x10], r15
movzx eax, byte [r15 + rcx + 0x10]
inc rcx
xor rsi, rax
imul rsi, r8
cmp rcx, 8
jb 0x18003b65f
and rsi, qword [rdx + 0x30]
lea rcx, [rbp - 0x20]
add rsi, rsi
mov rbx, qword [r14 + rsi*8]
mov rax, qword [r14 + rsi*8 + 8]
mov qword [rbp + 0x50], rbx
mov qword [rbp + 0x48], rax
call fcn.18003b780
mov rax, qword [rbp + 0x48]
cmp r15, rax
je 0x18003b6c3
mov rcx, qword [rbp - 0x10]
cmp rcx, rdi
je 0x18003b6d9
cmp rcx, rax
lea rcx, [rbp - 0x20]
sete bl
call fcn.18003b780
mov rax, qword [rbp + 0x48]
test bl, bl
je 0x18003b69f
mov rbx, qword [rbp + 0x50]
cmp rbx, r15
jne 0x18003b6cf
mov qword [r14 + rsi*8], r12
mov r13, r12
mov qword [r14 + rsi*8 + 8], r13
jmp 0x18003b770
cmp qword [rbp + 0x50], r15
jne 0x18003b6e3
mov qword [r14 + rsi*8], rcx
mov rax, qword [rbp - 0x18]
mov qword [rax], rcx
mov qword [rcx + 8], rax
mov rbx, qword [rsp + 0x98]
mov rax, rdi
add rsp, 0x40
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
movabs rdx, 0xcbf29ce484222325
xor r8d, r8d
movabs r13, 0x100000001b3
movzx eax, byte [rcx + r8 + 0x10]
inc r8
xor rdx, rax
imul rdx, r13
cmp r8, 8
jb 0x18003b720
mov r13, qword [rbp + 0x40]
mov rsi, qword [r13 + 0x30]
and rsi, rdx
add rsi, rsi
mov r15, qword [r14 + rsi*8 + 8]
jmp 0x18003b754
mov rcx, qword [rbp - 0x10]
cmp rcx, rdi
je 0x18003b6df
cmp rcx, r15
lea rcx, [rbp - 0x20]
sete bl
call fcn.18003b780
test bl, bl
je 0x18003b74b
mov qword [r14 + rsi*8], r12
mov qword [r14 + rsi*8 + 8], r12
mov rcx, qword [rbp - 0x10]
cmp rcx, rdi
jne 0x18003b709
jmp 0x18003b6e3

Function at 0x18003bb88
Capabilities:
Encode data using xor
Hash data using fnv

Disassembly:
mov r10, rdx
movabs rcx, 0xcbf29ce484222325
xor r9d, r9d
movzx eax, byte [r8 + r9]
movabs rdx, 0x100000001b3
xor rcx, rax
inc r9
imul rcx, rdx
cmp r9, 8
jb 0x18003bb98
mov rdx, qword [0x180197430]
mov r9, qword [0x180197418]
and rdx, rcx
mov rcx, qword [0x180197408]
add rdx, rdx
mov rax, qword [r9 + rdx*8 + 8]
cmp rax, rcx
je 0x18003bbf6
mov r9, qword [r9 + rdx*8]
mov rdx, qword [r8]
jmp 0x18003bbee
cmp rax, r9
je 0x18003bbf6
mov rax, qword [rax + 8]
cmp rdx, qword [rax + 0x10]
jne 0x18003bbe5
jmp 0x18003bbf8
xor eax, eax
test rax, rax
cmovne rcx, rax
mov rax, r10
mov qword [r10], rcx
ret
Function at 0x18003cec8
Capabilities:
Encode data using xor
Hash data using fnv

Disassembly:
mov qword [rsp + 8], rbx
push rdi
sub rsp, 0x20
mov rcx, qword [0x180197410]
xorps xmm0, xmm0
add rcx, 1
js 0x18003cee9
cvtsi2ss xmm0, rcx
jmp 0x18003cefe
mov rax, rcx
and ecx, 1
shr rax, 1
or rax, rcx
cvtsi2ss xmm0, rax
addss xmm0, xmm0
divss xmm0, dword [0x180197400]
call fcn.1800eae84
movss xmm1, dword [0x18016faf8]
xor ecx, ecx
comiss xmm0, xmm1
jb 0x18003cf30
subss xmm0, xmm1
comiss xmm0, xmm1
jae 0x18003cf30
movabs rax, 0x8000000000000000
mov rcx, rax
mov rdx, qword [0x180197438]
cvttss2si rax, xmm0
add rax, rcx
mov ecx, 8
cmp rax, rcx
cmova rcx, rax
cmp rdx, rcx
jae 0x18003cf65
cmp rdx, 0x200
jae 0x18003cf62
shl rdx, 3
cmp rdx, rcx
jae 0x18003cf65
mov rdx, rcx
movabs rax, 0xfffffffffffffff
bsr rcx, rax
mov eax, 1
shl rax, cl
cmp rdx, rax
ja 0x18003d0de
mov rbx, qword [0x180197408]
lea rax, [rdx - 1]
or rax, 1
mov edi, 1
bsr rcx, rax
mov r8, rbx
inc ecx
shl rdi, cl
lea rcx, [0x180197418]
lea rdx, [rdi + rdi]
call fcn.18003b92c
mov rax, qword [0x180197408]
lea r9, [rdi - 1]
mov qword [0x180197430], r9
mov qword [0x180197438], rdi
mov rax, qword [rax]
mov rcx, rax
cmp rax, rbx
je 0x18003d0d3
mov rcx, qword [rcx]
movabs r11, 0xcbf29ce484222325
xor r8d, r8d
movzx edx, byte [rax + r8 + 0x10]
movabs r10, 0x100000001b3
xor r11, rdx
inc r8
imul r11, r10
cmp r8, 8
jb 0x18003cfec
mov rdi, qword [0x180197418]
and r11, r9
add r11, r11
cmp qword [rdi + r11*8], rbx
jne 0x18003d02a
mov qword [rdi + r11*8], rax
mov qword [rdi + r11*8 + 8], rax
jmp 0x18003d099
mov r10, qword [rdi + r11*8 + 8]
mov rdx, qword [rax + 0x10]
cmp rdx, qword [r10 + 0x10]
jne 0x18003d06e
mov r10, qword [r10]
cmp r10, rax
je 0x18003d023
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 0x18003d023
mov r10, qword [r10 + 8]
cmp rdx, qword [r10 + 0x10]
je 0x18003d0ad
cmp qword [rdi + r11*8], r10
jne 0x18003d064
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 [rdi + r11*8], rax
mov rax, rcx
cmp rcx, rbx
je 0x18003d0d3
mov r9, qword [0x180197430]
jmp 0x18003cfdc
mov r10, qword [r10]
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 0x18003d099
mov rbx, qword [rsp + 0x30]
add rsp, 0x20
pop rdi
ret
lea rcx, str.invalid_hash_bucket_count
call fcn.1800bdbd4
int3
Function at 0x180044190
Capabilities:
Encode data using xor
Hash data using fnv

Disassembly:
mov qword [rsp + 8], rcx
push rbx
sub rsp, 0x20
mov rbx, rcx
call fcn.180044060
mov r10, rax
movabs r8, 0xcbf29ce484222325
xor r9d, r9d
movzx edx, byte [rsp + r9 + 0x30]
movabs rax, 0x100000001b3
xor r8, rdx
inc r9
imul r8, rax
cmp r9, 8
jb 0x1800441b2
mov rcx, qword [r10 + 0x30]
mov rdx, qword [r10 + 0x18]
and rcx, r8
add rcx, rcx
mov rax, qword [rdx + rcx*8 + 8]
cmp rax, qword [r10 + 8]
je 0x180044202
mov rdx, qword [rdx + rcx*8]
jmp 0x1800441fa
cmp rax, rdx
je 0x180044202
mov rax, qword [rax + 8]
cmp rbx, qword [rax + 0x10]
jne 0x1800441f1
jmp 0x180044204
xor eax, eax
test rax, rax
cmove rax, qword [r10 + 8]
cmp rax, qword [r10 + 8]
jne 0x180044216
xor eax, eax
jmp 0x180044224
add rax, 0x18
cmp qword [rax + 0x18], 0xf
jbe 0x180044224
mov rax, qword [rax]
add rsp, 0x20
pop rbx
ret