joyce8/EMBER2024-capa huggingface dataset:
Function at 0x180028744
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 0x180028774
cvtsi2ss xmm0, rdx
jmp 0x180028789
mov rax, rdx
and edx, 1
shr rax, 1
or rax, rdx
cvtsi2ss xmm0, rax
addss xmm0, xmm0
divss xmm0, dword [rcx]
call fcn.1800f5378
movss xmm1, dword [0x180179528]
xor ecx, ecx
comiss xmm0, xmm1
jb 0x1800287b7
subss xmm0, xmm1
comiss xmm0, xmm1
jae 0x1800287b7
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 0x1800287e5
cmp rbx, 0x200
jae 0x1800287e2
shl rbx, 3
cmp rbx, rcx
jae 0x1800287e5
mov rbx, rcx
movabs rax, 0xfffffffffffffff
bsr rcx, rax
mov eax, 1
shl rax, cl
cmp rbx, rax
ja 0x180028950
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.180015ff4
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 0x180028914
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, 8
jb 0x18002885d
and r11, qword [rsi + 0x30]
mov rdi, qword [rsi + 0x18]
add r11, r11
cmp qword [rdi + r11*8], rbx
jne 0x180028899
mov qword [rdi + r11*8], rax
mov qword [rdi + r11*8 + 8], rax
jmp 0x180028908
mov r10, qword [rdi + r11*8 + 8]
mov rdx, qword [rax + 0x10]
cmp rdx, qword [r10 + 0x10]
jne 0x1800288dd
mov r10, qword [r10]
cmp r10, rax
je 0x180028892
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 0x180028892
mov r10, qword [r10 + 8]
cmp rdx, qword [r10 + 0x10]
je 0x18002892a
cmp qword [rdi + r11*8], r10
jne 0x1800288d3
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 0x18002884d
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 0x180028908
lea rcx, str.invalid_hash_bucket_count
call fcn.1800c679c
int3
Function at 0x180028ad8
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 r12, r8
mov r14, rdx
xor ecx, ecx
movabs r15, 0xcbf29ce484222325
movzx eax, byte [r8 + rcx]
xor r15, rax
movabs rdx, 0x100000001b3
imul r15, rdx
inc rcx
cmp rcx, 4
jb 0x180028b07
mov rax, qword [0x1801aaf00]
and rax, r15
add rax, rax
mov rcx, qword [0x1801aaee8]
mov rbx, qword [rcx + rax*8 + 8]
mov rbp, qword [0x1801aaed8]
cmp rbx, rbp
jne 0x180028bb2
mov rbx, rbp
mov rsi, rbp
movabs rax, 0x7ffffffffffffff
cmp qword [0x1801aaee0], rax
je 0x180028d2d
lea rax, [0x1801aaed8]
mov qword [rsp + 0x20], rax
and qword [rsp + 0x28], 0
mov ecx, 0x20
call fcn.1800c9c44
mov rdi, rax
mov qword [rsp + 0x28], rax
mov ecx, dword [r12]
mov dword [rax + 0x10], ecx
and qword [rax + 0x18], 0
mov r8, qword [0x1801aaee0]
lea rcx, [r8 + 1]
xorps xmm0, xmm0
test rcx, rcx
js 0x180028bf5
cvtsi2ss xmm0, rcx
jmp 0x180028c0a
mov rdx, qword [rcx + rax*8]
mov eax, dword [r8]
jmp 0x180028bc4
cmp rbx, rdx
je 0x180028beb
mov rbx, qword [rbx + 8]
cmp eax, dword [rbx + 0x10]
jne 0x180028bbb
mov rbp, qword [rbx]
mov rsi, rbp
mov rax, rbx
mov rbx, rbp
test rax, rax
je 0x180028b51
mov qword [r14], rax
mov byte [r14 + 8], 0
jmp 0x180028d0b
mov rbp, rbx
xor eax, eax
mov rsi, rbx
jmp 0x180028bd5
mov rax, rcx
shr rax, 1
and ecx, 1
or rax, rcx
cvtsi2ss xmm0, rax
addss xmm0, xmm0
mov rcx, qword [0x1801aaf08]
xorps xmm1, xmm1
test rcx, rcx
js 0x180028c20
cvtsi2ss xmm1, rcx
jmp 0x180028c35
mov rax, rcx
shr rax, 1
and ecx, 1
or rax, rcx
cvtsi2ss xmm1, rax
addss xmm1, xmm1
divss xmm0, xmm1
comiss xmm0, dword [0x1801aaed0]
seta al
test al, al
je 0x180028ca2
call fcn.180029874
mov rcx, qword [0x1801aaf00]
and rcx, r15
add rcx, rcx
mov rdx, qword [0x1801aaee8]
mov rax, qword [rdx + rcx*8 + 8]
mov rbx, qword [0x1801aaed8]
cmp rax, rbx
je 0x180028c8e
mov r8, qword [rdx + rcx*8]
mov ecx, dword [rdi + 0x10]
jmp 0x180028c86
mov rbx, rax
cmp rax, r8
je 0x180028ce5
mov rax, qword [rax + 8]
cmp ecx, dword [rax + 0x10]
jne 0x180028c7a
mov rbx, qword [rax]
mov qword [rsp + 0x20], rbx
mov rsi, rbx
mov rbp, qword [rsp + 0x20]
mov r8, qword [0x1801aaee0]
mov rdx, qword [rbx + 8]
inc r8
mov qword [0x1801aaee0], r8
mov qword [rdi], rbp
mov qword [rdi + 8], rdx
mov qword [rdx], rdi
mov qword [rbx + 8], rdi
mov rax, qword [0x1801aaf00]
and rax, r15
add rax, rax
mov rcx, qword [0x1801aaee8]
mov r8, qword [rcx + rax*8]
cmp r8, qword [0x1801aaed8]
jne 0x180028cec
mov qword [rcx + rax*8], rdi
jmp 0x180028cfe
mov qword [rsp + 0x20], rax
jmp 0x180028c93
cmp r8, rsi
jne 0x180028cf7
mov qword [rcx + rax*8], rdi
jmp 0x180028d03
cmp qword [rcx + rax*8 + 8], rdx
jne 0x180028d03
mov qword [rcx + rax*8 + 8], rdi
mov qword [r14], rdi
mov byte [r14 + 8], 1
mov rax, r14
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
lea rcx, str.unordered_map_set_too_long
call fcn.1800c679c
int3
Function at 0x180028d3c
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 r12, r8
mov r14, rdx
xor ecx, ecx
movabs r15, 0xcbf29ce484222325
movzx eax, byte [r8 + rcx]
xor r15, rax
movabs rdx, 0x100000001b3
imul r15, rdx
inc rcx
cmp rcx, 4
jb 0x180028d6b
mov rax, qword [0x1801aaec0]
and rax, r15
add rax, rax
mov rcx, qword [0x1801aaea8]
mov rbx, qword [rcx + rax*8 + 8]
mov rbp, qword [0x1801aae98]
cmp rbx, rbp
jne 0x180028e16
mov rbx, rbp
mov rsi, rbp
movabs rax, 0x7ffffffffffffff
cmp qword [0x1801aaea0], rax
je 0x180028f91
lea rax, [0x1801aae98]
mov qword [rsp + 0x20], rax
and qword [rsp + 0x28], 0
mov ecx, 0x20
call fcn.1800c9c44
mov rdi, rax
mov qword [rsp + 0x28], rax
mov ecx, dword [r12]
mov dword [rax + 0x10], ecx
and qword [rax + 0x18], 0
mov r8, qword [0x1801aaea0]
lea rcx, [r8 + 1]
xorps xmm0, xmm0
test rcx, rcx
js 0x180028e59
cvtsi2ss xmm0, rcx
jmp 0x180028e6e
mov rdx, qword [rcx + rax*8]
mov eax, dword [r8]
jmp 0x180028e28
cmp rbx, rdx
je 0x180028e4f
mov rbx, qword [rbx + 8]
cmp eax, dword [rbx + 0x10]
jne 0x180028e1f
mov rbp, qword [rbx]
mov rsi, rbp
mov rax, rbx
mov rbx, rbp
test rax, rax
je 0x180028db5
mov qword [r14], rax
mov byte [r14 + 8], 0
jmp 0x180028f6f
mov rbp, rbx
xor eax, eax
mov rsi, rbx
jmp 0x180028e39
mov rax, rcx
shr rax, 1
and ecx, 1
or rax, rcx
cvtsi2ss xmm0, rax
addss xmm0, xmm0
mov rcx, qword [0x1801aaec8]
xorps xmm1, xmm1
test rcx, rcx
js 0x180028e84
cvtsi2ss xmm1, rcx
jmp 0x180028e99
mov rax, rcx
shr rax, 1
and ecx, 1
or rax, rcx
cvtsi2ss xmm1, rax
addss xmm1, xmm1
divss xmm0, xmm1
comiss xmm0, dword [0x1801aae90]
seta al
test al, al
je 0x180028f06
call fcn.180029a98
mov rcx, qword [0x1801aaec0]
and rcx, r15
add rcx, rcx
mov rdx, qword [0x1801aaea8]
mov rax, qword [rdx + rcx*8 + 8]
mov rbx, qword [0x1801aae98]
cmp rax, rbx
je 0x180028ef2
mov r8, qword [rdx + rcx*8]
mov ecx, dword [rdi + 0x10]
jmp 0x180028eea
mov rbx, rax
cmp rax, r8
je 0x180028f49
mov rax, qword [rax + 8]
cmp ecx, dword [rax + 0x10]
jne 0x180028ede
mov rbx, qword [rax]
mov qword [rsp + 0x20], rbx
mov rsi, rbx
mov rbp, qword [rsp + 0x20]
mov r8, qword [0x1801aaea0]
mov rdx, qword [rbx + 8]
inc r8
mov qword [0x1801aaea0], r8
mov qword [rdi], rbp
mov qword [rdi + 8], rdx
mov qword [rdx], rdi
mov qword [rbx + 8], rdi
mov rax, qword [0x1801aaec0]
and rax, r15
add rax, rax
mov rcx, qword [0x1801aaea8]
mov r8, qword [rcx + rax*8]
cmp r8, qword [0x1801aae98]
jne 0x180028f50
mov qword [rcx + rax*8], rdi
jmp 0x180028f62
mov qword [rsp + 0x20], rax
jmp 0x180028ef7
cmp r8, rsi
jne 0x180028f5b
mov qword [rcx + rax*8], rdi
jmp 0x180028f67
cmp qword [rcx + rax*8 + 8], rdx
jne 0x180028f67
mov qword [rcx + rax*8 + 8], rdi
mov qword [r14], rdi
mov byte [r14 + 8], 1
mov rax, r14
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
lea rcx, str.unordered_map_set_too_long
call fcn.1800c679c
int3
Function at 0x180029698
Capabilities:
Encode data using xor
Hash data using fnv

Disassembly:
push rbp
push rbx
push rsi
push rdi
push r14
push r15
mov rbp, rsp
sub rsp, 0x58
mov rax, qword [rcx + 8]
lea rbx, [rdx + 0xa8]
mov r14, rcx
mov rsi, rdx
mov rcx, rbx
mov rdi, qword [rax]
mov qword [rbp + 0x38], rdi
call fcn.1800c7cd0
test eax, eax
jne 0x180029823
mov eax, dword [rbx + 0x4c]
cmp eax, 0x7fffffff
je 0x18002982e
movabs rcx, 0xcbf29ce484222325
xor edx, edx
movzx eax, byte [rbp + rdx + 0x38]
movabs r8, 0x100000001b3
xor rcx, rax
inc rdx
imul rcx, r8
cmp rdx, 8
jb 0x1800296ea
mov rdx, qword [rsi + 0x128]
mov r8, qword [rsi + 0x110]
and rdx, rcx
mov rcx, qword [rsi + 0x100]
add rdx, rdx
mov rax, qword [r8 + rdx*8 + 8]
cmp rax, rcx
je 0x180029745
mov r9, qword [r8 + rdx*8]
jmp 0x18002973d
cmp rax, r9
je 0x180029745
mov rax, qword [rax + 8]
cmp rdi, qword [rax + 0x10]
jne 0x180029734
jmp 0x180029747
xor eax, eax
test rax, rax
cmove rax, rcx
cmp rax, rcx
jne 0x180029758
xor dil, dil
jmp 0x180029761
cmp qword [rax + 0x38], 0
setne dil
mov rcx, rbx
call fcn.1800c7cd8
test dil, dil
je 0x180029806
mov rax, qword [r14 + 0x30]
mov rcx, qword [rax]
mov rax, qword [r14 + 0x28]
mov qword [rbp - 0x38], rcx
mov rcx, qword [rax]
mov rax, qword [r14 + 0x20]
mov qword [rbp + 0x50], rcx
movsxd rcx, dword [rax]
mov rax, qword [r14 + 0x18]
mov qword [rbp + 0x40], rcx
mov rcx, qword [rax]
mov rax, qword [r14 + 8]
mov qword [rbp + 0x48], rcx
mov rcx, qword [rax]
lea rax, [rbp + 0x38]
mov qword [rbp - 0x30], rax
lea rax, [rbp + 0x40]
mov qword [rbp - 0x28], rax
lea rax, [rbp + 0x48]
mov qword [rbp - 0x20], rax
lea rax, [rbp + 0x50]
mov qword [rbp - 0x18], rax
lea rax, [rbp - 0x38]
mov qword [rbp + 0x38], rcx
mov rcx, rbx
mov qword [rbp - 0x10], rax
call fcn.1800c7cd0
test eax, eax
jne 0x18002983e
mov eax, dword [rbx + 0x4c]
cmp eax, 0x7fffffff
je 0x180029813
lea rdx, [rbx + 0x50]
lea rcx, [rbp - 0x30]
call fcn.180074810
mov rcx, rbx
mov rdi, rax
call fcn.1800c7cd8
mov rcx, qword [r14 + 0x10]
mov qword [rcx], rdi
add rsp, 0x58
pop r15
pop r14
pop rdi
pop rsi
pop rbx
pop rbp
ret
dec eax
mov ecx, 6
mov dword [rbx + 0x4c], eax
call fcn.1800c7f4c
int3
mov ecx, 5
call fcn.1800c7f4c
int3
dec eax
mov ecx, 6
mov dword [rbx + 0x4c], eax
call fcn.1800c7f4c
int3
mov ecx, 5
call fcn.1800c7f4c
int3
Function at 0x180029874
Capabilities:
Encode data using xor
Hash data using fnv

Disassembly:
mov qword [rsp + 8], rbx
push rdi
sub rsp, 0x20
mov rcx, qword [0x1801aaee0]
xorps xmm0, xmm0
add rcx, 1
js 0x180029895
cvtsi2ss xmm0, rcx
jmp 0x1800298aa
mov rax, rcx
and ecx, 1
shr rax, 1
or rax, rcx
cvtsi2ss xmm0, rax
addss xmm0, xmm0
divss xmm0, dword [0x1801aaed0]
call fcn.1800f5378
movss xmm1, dword [0x180179528]
xor ecx, ecx
comiss xmm0, xmm1
jb 0x1800298dc
subss xmm0, xmm1
comiss xmm0, xmm1
jae 0x1800298dc
movabs rax, 0x8000000000000000
mov rcx, rax
mov rdx, qword [0x1801aaf08]
cvttss2si rax, xmm0
add rax, rcx
mov ecx, 8
cmp rax, rcx
cmova rcx, rax
cmp rdx, rcx
jae 0x180029911
cmp rdx, 0x200
jae 0x18002990e
shl rdx, 3
cmp rdx, rcx
jae 0x180029911
mov rdx, rcx
movabs rax, 0xfffffffffffffff
bsr rcx, rax
mov eax, 1
shl rax, cl
cmp rdx, rax
ja 0x180029a89
mov rbx, qword [0x1801aaed8]
lea rax, [rdx - 1]
or rax, 1
mov edi, 1
bsr rcx, rax
mov r8, rbx
inc ecx
shl rdi, cl
lea rcx, [0x1801aaee8]
lea rdx, [rdi + rdi]
call fcn.180015ff4
mov rax, qword [0x1801aaed8]
lea r9, [rdi - 1]
mov qword [0x1801aaf00], r9
mov qword [0x1801aaf08], rdi
mov rax, qword [rax]
mov rcx, rax
cmp rax, rbx
je 0x180029a7e
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 0x180029998
mov rdi, qword [0x1801aaee8]
and r11, r9
add r11, r11
cmp qword [rdi + r11*8], rbx
jne 0x1800299d6
mov qword [rdi + r11*8], rax
mov qword [rdi + r11*8 + 8], rax
jmp 0x180029a44
mov r10, qword [rdi + r11*8 + 8]
mov edx, dword [rax + 0x10]
cmp edx, dword [r10 + 0x10]
jne 0x180029a19
mov r10, qword [r10]
cmp r10, rax
je 0x1800299cf
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 0x1800299cf
mov r10, qword [r10 + 8]
cmp edx, dword [r10 + 0x10]
je 0x180029a58
cmp qword [rdi + r11*8], r10
jne 0x180029a0f
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 0x180029a7e
mov r9, qword [0x1801aaf00]
jmp 0x180029988
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 0x180029a44
mov rbx, qword [rsp + 0x30]
add rsp, 0x20
pop rdi
ret
lea rcx, str.invalid_hash_bucket_count
call fcn.1800c679c
int3
Function at 0x180029a98
Capabilities:
Encode data using xor
Hash data using fnv

Disassembly:
mov qword [rsp + 8], rbx
push rdi
sub rsp, 0x20
mov rcx, qword [0x1801aaea0]
xorps xmm0, xmm0
add rcx, 1
js 0x180029ab9
cvtsi2ss xmm0, rcx
jmp 0x180029ace
mov rax, rcx
and ecx, 1
shr rax, 1
or rax, rcx
cvtsi2ss xmm0, rax
addss xmm0, xmm0
divss xmm0, dword [0x1801aae90]
call fcn.1800f5378
movss xmm1, dword [0x180179528]
xor ecx, ecx
comiss xmm0, xmm1
jb 0x180029b00
subss xmm0, xmm1
comiss xmm0, xmm1
jae 0x180029b00
movabs rax, 0x8000000000000000
mov rcx, rax
mov rdx, qword [0x1801aaec8]
cvttss2si rax, xmm0
add rax, rcx
mov ecx, 8
cmp rax, rcx
cmova rcx, rax
cmp rdx, rcx
jae 0x180029b35
cmp rdx, 0x200
jae 0x180029b32
shl rdx, 3
cmp rdx, rcx
jae 0x180029b35
mov rdx, rcx
movabs rax, 0xfffffffffffffff
bsr rcx, rax
mov eax, 1
shl rax, cl
cmp rdx, rax
ja 0x180029cad
mov rbx, qword [0x1801aae98]
lea rax, [rdx - 1]
or rax, 1
mov edi, 1
bsr rcx, rax
mov r8, rbx
inc ecx
shl rdi, cl
lea rcx, [0x1801aaea8]
lea rdx, [rdi + rdi]
call fcn.180015ff4
mov rax, qword [0x1801aae98]
lea r9, [rdi - 1]
mov qword [0x1801aaec0], r9
mov qword [0x1801aaec8], rdi
mov rax, qword [rax]
mov rcx, rax
cmp rax, rbx
je 0x180029ca2
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 0x180029bbc
mov rdi, qword [0x1801aaea8]
and r11, r9
add r11, r11
cmp qword [rdi + r11*8], rbx
jne 0x180029bfa
mov qword [rdi + r11*8], rax
mov qword [rdi + r11*8 + 8], rax
jmp 0x180029c68
mov r10, qword [rdi + r11*8 + 8]
mov edx, dword [rax + 0x10]
cmp edx, dword [r10 + 0x10]
jne 0x180029c3d
mov r10, qword [r10]
cmp r10, rax
je 0x180029bf3
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 0x180029bf3
mov r10, qword [r10 + 8]
cmp edx, dword [r10 + 0x10]
je 0x180029c7c
cmp qword [rdi + r11*8], r10
jne 0x180029c33
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 0x180029ca2
mov r9, qword [0x1801aaec0]
jmp 0x180029bac
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 0x180029c68
mov rbx, qword [rsp + 0x30]
add rsp, 0x20
pop rdi
ret
lea rcx, str.invalid_hash_bucket_count
call fcn.1800c679c
int3
Function at 0x180030be8
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 0x180030cb8
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 0x180030c36
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.180031a88
mov edx, 0x58
mov rcx, rbx
call fcn.1800c9780
mov rdx, qword [rsp + 0x70]
dec qword [rdx + 0x10]
cmp rbx, qword [rsp + 0x88]
je 0x180030ccc
cmp rsi, rbp
jne 0x180030c6c
cmp qword [rsp + 0x80], r13
jne 0x180030cb1
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 0x180030ce4
mov r13, qword [rsp + 0x78]
mov qword [r12 + r15*8], r13
mov rax, r13
jmp 0x180030ce7
mov rax, r14
mov qword [r12 + r15*8 + 8], rax
jmp 0x180030d7f
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 0x180030d08
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.180031a88
mov edx, 0x58
mov rcx, rbx
call fcn.1800c9780
mov rdx, qword [rsp + 0x70]
dec qword [rdx + 0x10]
cmp rbx, qword [rsp + 0x80]
je 0x180030d76
cmp rsi, rbp
jne 0x180030d3a
jmp 0x180030cad
mov qword [r12 + r15*8], r13
mov qword [r12 + r15*8 + 8], r13
cmp rsi, rbp
jne 0x180030cf1
jmp 0x180030cb1
Function at 0x180030d90
Capabilities:
Encode data using xor
Hash data using fnv

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rbp
mov qword [rsp + 0x20], rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x30
mov r13, r8
mov r15, rdx
mov rsi, rcx
xor ecx, ecx
movabs r12, 0xcbf29ce484222325
movzx eax, byte [rcx + r8]
xor r12, rax
movabs rdx, 0x100000001b3
imul r12, rdx
inc rcx
cmp rcx, 4
jb 0x180030dc1
mov rax, qword [rsi + 0x30]
and rax, r12
add rax, rax
mov rcx, qword [rsi + 0x18]
mov rbx, qword [rcx + rax*8 + 8]
lea r8, [rsi + 8]
mov rbp, qword [r8]
cmp rbx, rbp
jne 0x180030e09
mov qword [rsp + 0x60], r8
mov rbx, rbp
jmp 0x180030e4c
mov rdx, qword [rcx + rax*8]
mov eax, dword [r13]
jmp 0x180030e1c
cmp rbx, rdx
je 0x180030e3c
mov rbx, qword [rbx + 8]
cmp eax, dword [rbx + 0x10]
jne 0x180030e13
mov rbp, qword [rbx]
mov rax, rbx
mov rbx, rbp
test rax, rax
je 0x180030e43
mov qword [r15], rax
mov byte [r15 + 8], 0
jmp 0x180030f9f
mov rbp, rbx
xor eax, eax
jmp 0x180030e2a
lea rax, [rsi + 8]
mov qword [rsp + 0x60], rax
lea r14, [rsi + 0x10]
movabs rax, 0xaaaaaaaaaaaaaaa
cmp qword [r14], rax
je 0x180030fbf
mov qword [rsp + 0x20], r8
and qword [rsp + 0x28], 0
mov ecx, 0x18
call fcn.1800c9c44
mov rdi, rax
mov qword [rsp + 0x28], rax
mov ecx, dword [r13]
mov dword [rax + 0x10], ecx
mov rcx, qword [r14]
add rcx, 1
xorps xmm0, xmm0
js 0x180030e9a
cvtsi2ss xmm0, rcx
jmp 0x180030eaf
mov rax, rcx
shr rax, 1
and ecx, 1
or rax, rcx
cvtsi2ss xmm0, rax
addss xmm0, xmm0
mov rcx, qword [rsi + 0x38]
xorps xmm1, xmm1
test rcx, rcx
js 0x180030ec2
cvtsi2ss xmm1, rcx
jmp 0x180030ed7
mov rax, rcx
shr rax, 1
and ecx, 1
or rax, rcx
cvtsi2ss xmm1, rax
addss xmm1, xmm1
divss xmm0, xmm1
comiss xmm0, dword [rsi]
seta al
test al, al
je 0x180030f3b
mov rcx, rsi
call fcn.1800312ac
mov rcx, qword [rsi + 0x30]
and rcx, r12
add rcx, rcx
mov rdx, qword [rsi + 0x18]
mov rax, qword [rdx + rcx*8 + 8]
mov rbx, qword [rsp + 0x60]
mov rbx, qword [rbx]
cmp rax, rbx
je 0x180030f31
mov rdx, qword [rdx + rcx*8]
mov ecx, dword [rdi + 0x10]
cmp ecx, dword [rax + 0x10]
je 0x180030f2e
mov rbx, rax
cmp rax, rdx
je 0x180030f75
mov rax, qword [rax + 8]
cmp ecx, dword [rax + 0x10]
jne 0x180030f19
lea r14, [rsi + 0x10]
mov rbx, qword [rax]
mov qword [rsp + 0x20], rbx
mov rbp, qword [rsp + 0x20]
mov rdx, qword [rbx + 8]
mov rax, qword [rsi + 0x10]
inc rax
mov qword [r14], rax
mov qword [rdi], rbp
mov qword [rdi + 8], rdx
mov qword [rdx], rdi
mov qword [rbx + 8], rdi
mov rcx, qword [rsi + 0x18]
mov rax, qword [rsi + 0x30]
and rax, r12
add rax, rax
mov r8, qword [rcx + rax*8]
cmp r8, qword [rsi + 8]
jne 0x180030f80
mov qword [rcx + rax*8], rdi
jmp 0x180030f92
mov qword [rsp + 0x20], rax
lea r14, [rsi + 0x10]
jmp 0x180030f36
cmp r8, rbp
jne 0x180030f8b
mov qword [rcx + rax*8], rdi
jmp 0x180030f97
cmp qword [rcx + rax*8 + 8], rdx
jne 0x180030f97
mov qword [rcx + rax*8 + 8], rdi
mov qword [r15], rdi
mov byte [r15 + 8], 1
mov rax, r15
mov rbx, qword [rsp + 0x68]
mov rbp, qword [rsp + 0x70]
mov rsi, qword [rsp + 0x78]
add rsp, 0x30
pop r15
pop r14
pop r13
pop r12
pop rdi
ret
lea rcx, str.unordered_map_set_too_long
call fcn.1800c679c
int3