joyce8/EMBER2024-capa huggingface dataset:
Function at 0x18002e264
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 rsi, 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, 8
jb 0x18002e293
mov rax, qword [0x1801973a0]
and rax, r15
add rax, rax
mov rcx, qword [0x180197388]
mov rbx, qword [rcx + rax*8 + 8]
mov r14, qword [0x180197378]
cmp rbx, r14
jne 0x18002e2df
mov rbx, r14
mov rbp, r14
jmp 0x18002e326
mov rdx, qword [rcx + rax*8]
mov rax, qword [r8]
jmp 0x18002e2f1
cmp rbx, rdx
je 0x18002e320
mov rbx, qword [rbx + 8]
cmp rax, qword [rbx + 0x10]
jne 0x18002e2e8
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, 0x7ffffffffffffff
cmp qword [0x180197380], rax
je 0x18002e49f
lea rax, [0x180197378]
mov qword [rsp + 0x20], rax
and qword [rsp + 0x28], 0
mov ecx, 0x20
call fcn.1800c0af4
mov rdi, rax
mov qword [rsp + 0x28], rax
mov rcx, qword [r12]
mov qword [rax + 0x10], rcx
and qword [rax + 0x18], 0
mov r8, qword [0x180197380]
lea rcx, [r8 + 1]
xorps xmm0, xmm0
test rcx, rcx
js 0x18002e388
cvtsi2ss xmm0, rcx
jmp 0x18002e39d
mov rax, rcx
shr rax, 1
and ecx, 1
or rax, rcx
cvtsi2ss xmm0, rax
addss xmm0, xmm0
mov rcx, qword [0x1801973a8]
xorps xmm1, xmm1
test rcx, rcx
js 0x18002e3b3
cvtsi2ss xmm1, rcx
jmp 0x18002e3c8
mov rax, rcx
shr rax, 1
and ecx, 1
or rax, rcx
cvtsi2ss xmm1, rax
addss xmm1, xmm1
divss xmm0, xmm1
comiss xmm0, dword [0x180197370]
jbe 0x18002e432
call fcn.18002e8f8
mov rcx, qword [0x1801973a0]
and rcx, r15
add rcx, rcx
mov rdx, qword [0x180197388]
mov rax, qword [rdx + rcx*8 + 8]
mov rbx, qword [0x180197378]
cmp rax, rbx
je 0x18002e41e
mov r8, qword [rdx + rcx*8]
mov rcx, qword [rdi + 0x10]
jmp 0x18002e415
mov rbx, rax
cmp rax, r8
je 0x18002e475
mov rax, qword [rax + 8]
cmp rcx, qword [rax + 0x10]
jne 0x18002e409
mov rbx, qword [rax]
mov qword [rsp + 0x20], rbx
mov rbp, rbx
mov r14, qword [rsp + 0x20]
mov r8, qword [0x180197380]
mov rdx, qword [rbx + 8]
inc r8
mov qword [0x180197380], r8
mov qword [rdi], r14
mov qword [rdi + 8], rdx
mov qword [rdx], rdi
mov qword [rbx + 8], rdi
mov rax, qword [0x1801973a0]
and rax, r15
add rax, rax
mov rcx, qword [0x180197388]
mov r8, qword [rcx + rax*8]
cmp r8, qword [0x180197378]
jne 0x18002e47c
mov qword [rcx + rax*8], rdi
jmp 0x18002e48e
mov qword [rsp + 0x20], rax
jmp 0x18002e423
cmp r8, rbp
jne 0x18002e487
mov qword [rcx + rax*8], rdi
jmp 0x18002e493
cmp qword [rcx + rax*8 + 8], rdx
jne 0x18002e493
mov qword [rcx + rax*8 + 8], rdi
mov qword [rsi], rdi
mov byte [rsi + 8], 1
jmp 0x18002e2fe
lea rcx, str.unordered_map_set_too_long
call fcn.1800bdbd4
int3
Function at 0x18002e4ac
Capabilities:
Encode data using xor
Hash data using fnv

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rbp
mov qword [rsp + 0x18], rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x30
mov r13, r8
mov r14, rdx
mov rbp, rcx
movabs rdi, 0xcbf29ce484222325
xor edx, edx
movzx eax, byte [rdx + r8]
xor rdi, rax
movabs rcx, 0x100000001b3
imul rdi, rcx
inc rdx
cmp rdx, 8
jb 0x18002e4dd
mov rax, qword [rbp + 0x30]
and rax, rdi
add rax, rax
mov rcx, qword [rbp + 0x18]
mov rbx, qword [rcx + rax*8 + 8]
lea rdx, [rbp + 8]
mov r12, qword [rdx]
cmp rbx, r12
jne 0x18002e523
mov rbx, r12
mov r15, r12
jmp 0x18002e56d
mov rdx, qword [rcx + rax*8]
mov rax, qword [r8]
jmp 0x18002e535
cmp rbx, rdx
je 0x18002e563
mov rbx, qword [rbx + 8]
cmp rax, qword [rbx + 0x10]
jne 0x18002e52c
mov qword [r14], rbx
mov byte [r14 + 8], 0
mov rax, r14
mov rbx, qword [rsp + 0x60]
mov rbp, qword [rsp + 0x68]
mov rsi, qword [rsp + 0x70]
add rsp, 0x30
pop r15
pop r14
pop r13
pop r12
pop rdi
ret
mov r12, rbx
mov r15, rbx
lea rdx, [rbp + 8]
movabs rax, 0x7ffffffffffffff
cmp qword [rbp + 0x10], rax
je 0x18002e6b4
mov qword [rsp + 0x20], rdx
and qword [rsp + 0x28], 0
mov ecx, 0x20
call fcn.1800c0af4
mov rsi, rax
mov qword [rsp + 0x28], rax
mov rcx, qword [r13]
mov qword [rax + 0x10], rcx
xor r13d, r13d
mov qword [rax + 0x18], r13
mov rcx, qword [rbp + 0x10]
add rcx, 1
xorps xmm0, xmm0
js 0x18002e5c1
cvtsi2ss xmm0, rcx
jmp 0x18002e5d6
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 0x18002e5e9
cvtsi2ss xmm1, rcx
jmp 0x18002e5fe
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 0x18002e658
mov rcx, rbp
call fcn.18002eb1c
mov rcx, rdi
and rcx, qword [rbp + 0x30]
add rcx, rcx
mov rdx, qword [rbp + 0x18]
mov rax, qword [rdx + rcx*8 + 8]
mov rbx, qword [rbp + 8]
cmp rax, rbx
je 0x18002e64b
mov r8, qword [rdx + rcx*8]
mov rcx, qword [rsi + 0x10]
jmp 0x18002e642
mov rbx, rax
cmp rax, r8
je 0x18002e689
mov rax, qword [rax + 8]
cmp rcx, qword [rax + 0x10]
jne 0x18002e636
mov rbx, qword [rax]
mov qword [rsp + 0x20], rbx
mov r15, rbx
mov r12, qword [rsp + 0x20]
mov rcx, qword [rbx + 8]
inc qword [rbp + 0x10]
mov qword [rsi], r12
mov qword [rsi + 8], rcx
mov qword [rcx], rsi
mov qword [rbx + 8], rsi
mov rax, qword [rbp + 0x18]
and rdi, qword [rbp + 0x30]
add rdi, rdi
mov rdx, qword [rax + rdi*8]
cmp rdx, qword [rbp + 8]
jne 0x18002e690
mov qword [rax + rdi*8], rsi
jmp 0x18002e6a2
mov qword [rsp + 0x20], rax
jmp 0x18002e650
cmp rdx, r15
jne 0x18002e69b
mov qword [rax + rdi*8], rsi
jmp 0x18002e6a7
cmp qword [rax + rdi*8 + 8], rcx
jne 0x18002e6a7
mov qword [rax + rdi*8 + 8], rsi
mov qword [r14], rsi
mov byte [r14 + 8], 1
jmp 0x18002e543
lea rcx, str.unordered_map_set_too_long
call fcn.1800bdbd4
int3
Function at 0x18002e6c4
Capabilities:
Encode data using xor
Hash data using fnv

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rbp
mov qword [rsp + 0x18], rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x30
mov r13, r8
mov r14, rdx
mov rbp, rcx
movabs rdi, 0xcbf29ce484222325
xor edx, edx
movzx eax, byte [rdx + r8]
xor rdi, rax
movabs rcx, 0x100000001b3
imul rdi, rcx
inc rdx
cmp rdx, 8
jb 0x18002e6f5
mov rax, qword [rbp + 0x30]
and rax, rdi
add rax, rax
mov rcx, qword [rbp + 0x18]
mov rbx, qword [rcx + rax*8 + 8]
lea rdx, [rbp + 8]
mov r12, qword [rdx]
cmp rbx, r12
jne 0x18002e73b
mov rbx, r12
mov r15, r12
jmp 0x18002e785
mov rdx, qword [rcx + rax*8]
mov rax, qword [r8]
jmp 0x18002e74d
cmp rbx, rdx
je 0x18002e77b
mov rbx, qword [rbx + 8]
cmp rax, qword [rbx + 0x10]
jne 0x18002e744
mov qword [r14], rbx
mov byte [r14 + 8], 0
mov rax, r14
mov rbx, qword [rsp + 0x60]
mov rbp, qword [rsp + 0x68]
mov rsi, qword [rsp + 0x70]
add rsp, 0x30
pop r15
pop r14
pop r13
pop r12
pop rdi
ret
mov r12, rbx
mov r15, rbx
lea rdx, [rbp + 8]
movabs rax, 0x7ffffffffffffff
cmp qword [rbp + 0x10], rax
je 0x18002e8cc
mov qword [rsp + 0x20], rdx
and qword [rsp + 0x28], 0
mov ecx, 0x20
call fcn.1800c0af4
mov rsi, rax
mov qword [rsp + 0x28], rax
mov rcx, qword [r13]
mov qword [rax + 0x10], rcx
xor r13d, r13d
mov byte [rax + 0x18], r13b
mov rcx, qword [rbp + 0x10]
add rcx, 1
xorps xmm0, xmm0
js 0x18002e7d9
cvtsi2ss xmm0, rcx
jmp 0x18002e7ee
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 0x18002e801
cvtsi2ss xmm1, rcx
jmp 0x18002e816
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 0x18002e870
mov rcx, rbp
call fcn.18002eb1c
mov rcx, rdi
and rcx, qword [rbp + 0x30]
add rcx, rcx
mov rdx, qword [rbp + 0x18]
mov rax, qword [rdx + rcx*8 + 8]
mov rbx, qword [rbp + 8]
cmp rax, rbx
je 0x18002e863
mov r8, qword [rdx + rcx*8]
mov rcx, qword [rsi + 0x10]
jmp 0x18002e85a
mov rbx, rax
cmp rax, r8
je 0x18002e8a1
mov rax, qword [rax + 8]
cmp rcx, qword [rax + 0x10]
jne 0x18002e84e
mov rbx, qword [rax]
mov qword [rsp + 0x20], rbx
mov r15, rbx
mov r12, qword [rsp + 0x20]
mov rcx, qword [rbx + 8]
inc qword [rbp + 0x10]
mov qword [rsi], r12
mov qword [rsi + 8], rcx
mov qword [rcx], rsi
mov qword [rbx + 8], rsi
mov rax, qword [rbp + 0x18]
and rdi, qword [rbp + 0x30]
add rdi, rdi
mov rdx, qword [rax + rdi*8]
cmp rdx, qword [rbp + 8]
jne 0x18002e8a8
mov qword [rax + rdi*8], rsi
jmp 0x18002e8ba
mov qword [rsp + 0x20], rax
jmp 0x18002e868
cmp rdx, r15
jne 0x18002e8b3
mov qword [rax + rdi*8], rsi
jmp 0x18002e8bf
cmp qword [rax + rdi*8 + 8], rcx
jne 0x18002e8bf
mov qword [rax + rdi*8 + 8], rsi
mov qword [r14], rsi
mov byte [r14 + 8], 1
jmp 0x18002e75b
lea rcx, str.unordered_map_set_too_long
call fcn.1800bdbd4
int3
Function at 0x18002e8f8
Capabilities:
Encode data using xor
Hash data using fnv

Disassembly:
mov qword [rsp + 8], rbx
push rdi
sub rsp, 0x20
mov rcx, qword [0x180197380]
xorps xmm0, xmm0
add rcx, 1
js 0x18002e919
cvtsi2ss xmm0, rcx
jmp 0x18002e92e
mov rax, rcx
and ecx, 1
shr rax, 1
or rax, rcx
cvtsi2ss xmm0, rax
addss xmm0, xmm0
divss xmm0, dword [0x180197370]
call fcn.1800eae84
movss xmm1, dword [0x18016faf8]
xor ecx, ecx
comiss xmm0, xmm1
jb 0x18002e960
subss xmm0, xmm1
comiss xmm0, xmm1
jae 0x18002e960
movabs rax, 0x8000000000000000
mov rcx, rax
mov rdx, qword [0x1801973a8]
cvttss2si rax, xmm0
add rax, rcx
mov ecx, 8
cmp rax, rcx
cmova rcx, rax
cmp rdx, rcx
jae 0x18002e995
cmp rdx, 0x200
jae 0x18002e992
shl rdx, 3
cmp rdx, rcx
jae 0x18002e995
mov rdx, rcx
movabs rax, 0xfffffffffffffff
bsr rcx, rax
mov eax, 1
shl rax, cl
cmp rdx, rax
ja 0x18002eb0e
mov rbx, qword [0x180197378]
lea rax, [rdx - 1]
or rax, 1
mov edi, 1
bsr rcx, rax
mov r8, rbx
inc ecx
shl rdi, cl
lea rcx, [0x180197388]
lea rdx, [rdi + rdi]
call fcn.18001d384
mov rax, qword [0x180197378]
lea r9, [rdi - 1]
mov qword [0x1801973a0], r9
mov qword [0x1801973a8], rdi
mov rax, qword [rax]
mov rcx, rax
cmp rax, rbx
je 0x18002eb03
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 0x18002ea1c
mov rdi, qword [0x180197388]
and r11, r9
add r11, r11
cmp qword [rdi + r11*8], rbx
jne 0x18002ea5a
mov qword [rdi + r11*8], rax
mov qword [rdi + r11*8 + 8], rax
jmp 0x18002eac9
mov r10, qword [rdi + r11*8 + 8]
mov rdx, qword [rax + 0x10]
cmp rdx, qword [r10 + 0x10]
jne 0x18002ea9e
mov r10, qword [r10]
cmp r10, rax
je 0x18002ea53
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 0x18002ea53
mov r10, qword [r10 + 8]
cmp rdx, qword [r10 + 0x10]
je 0x18002eadd
cmp qword [rdi + r11*8], r10
jne 0x18002ea94
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 0x18002eb03
mov r9, qword [0x1801973a0]
jmp 0x18002ea0c
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 0x18002eac9
mov rbx, qword [rsp + 0x30]
add rsp, 0x20
pop rdi
ret
lea rcx, str.invalid_hash_bucket_count
call fcn.1800bdbd4
int3
Function at 0x18002eb1c
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 0x18002eb4c
cvtsi2ss xmm0, rdx
jmp 0x18002eb61
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 0x18002eb8f
subss xmm0, xmm1
comiss xmm0, xmm1
jae 0x18002eb8f
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 0x18002ebbd
cmp rbx, 0x200
jae 0x18002ebba
shl rbx, 3
cmp rbx, rcx
jae 0x18002ebbd
mov rbx, rcx
movabs rax, 0xfffffffffffffff
bsr rcx, rax
mov eax, 1
shl rax, cl
cmp rbx, rax
ja 0x18002ed2b
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 0x18002ecef
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, 8
jb 0x18002ec35
mov r11, qword [rsi + 0x30]
mov rdi, qword [rsi + 0x18]
and r11, r8
add r11, r11
cmp qword [rdi + r11*8], rbx
jne 0x18002ec74
mov qword [rdi + r11*8], rax
mov qword [rdi + r11*8 + 8], rax
jmp 0x18002ece3
mov r10, qword [rdi + r11*8 + 8]
mov rdx, qword [rax + 0x10]
cmp rdx, qword [r10 + 0x10]
jne 0x18002ecb8
mov r10, qword [r10]
cmp r10, rax
je 0x18002ec6d
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 0x18002ec6d
mov r10, qword [r10 + 8]
cmp rdx, qword [r10 + 0x10]
je 0x18002ed05
cmp qword [rdi + r11*8], r10
jne 0x18002ecae
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 0x18002ec25
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 0x18002ece3
lea rcx, str.invalid_hash_bucket_count
call fcn.1800bdbd4
int3
Function at 0x18002eeac
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 rsi, 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 0x18002eedb
mov rax, qword [0x180197360]
and rax, r15
add rax, rax
mov rcx, qword [0x180197348]
mov rbx, qword [rcx + rax*8 + 8]
mov r14, qword [0x180197338]
cmp rbx, r14
jne 0x18002ef27
mov rbx, r14
mov rbp, r14
jmp 0x18002ef6d
mov rdx, qword [rcx + rax*8]
mov eax, dword [r8]
jmp 0x18002ef39
cmp rbx, rdx
je 0x18002ef67
mov rbx, qword [rbx + 8]
cmp eax, dword [rbx + 0x10]
jne 0x18002ef30
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, 0x7ffffffffffffff
cmp qword [0x180197340], rax
je 0x18002f0e3
lea rax, [0x180197338]
mov qword [rsp + 0x20], rax
and qword [rsp + 0x28], 0
mov ecx, 0x20
call fcn.1800c0af4
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 [0x180197340]
lea rcx, [r8 + 1]
xorps xmm0, xmm0
test rcx, rcx
js 0x18002efce
cvtsi2ss xmm0, rcx
jmp 0x18002efe3
mov rax, rcx
shr rax, 1
and ecx, 1
or rax, rcx
cvtsi2ss xmm0, rax
addss xmm0, xmm0
mov rcx, qword [0x180197368]
xorps xmm1, xmm1
test rcx, rcx
js 0x18002eff9
cvtsi2ss xmm1, rcx
jmp 0x18002f00e
mov rax, rcx
shr rax, 1
and ecx, 1
or rax, rcx
cvtsi2ss xmm1, rax
addss xmm1, xmm1
divss xmm0, xmm1
comiss xmm0, dword [0x180197330]
jbe 0x18002f076
call fcn.18002fc1c
mov rcx, qword [0x180197360]
and rcx, r15
add rcx, rcx
mov rdx, qword [0x180197348]
mov rax, qword [rdx + rcx*8 + 8]
mov rbx, qword [0x180197338]
cmp rax, rbx
je 0x18002f062
mov r8, qword [rdx + rcx*8]
mov ecx, dword [rdi + 0x10]
jmp 0x18002f05a
mov rbx, rax
cmp rax, r8
je 0x18002f0b9
mov rax, qword [rax + 8]
cmp ecx, dword [rax + 0x10]
jne 0x18002f04e
mov rbx, qword [rax]
mov qword [rsp + 0x20], rbx
mov rbp, rbx
mov r14, qword [rsp + 0x20]
mov r8, qword [0x180197340]
mov rdx, qword [rbx + 8]
inc r8
mov qword [0x180197340], r8
mov qword [rdi], r14
mov qword [rdi + 8], rdx
mov qword [rdx], rdi
mov qword [rbx + 8], rdi
mov rax, qword [0x180197360]
and rax, r15
add rax, rax
mov rcx, qword [0x180197348]
mov r8, qword [rcx + rax*8]
cmp r8, qword [0x180197338]
jne 0x18002f0c0
mov qword [rcx + rax*8], rdi
jmp 0x18002f0d2
mov qword [rsp + 0x20], rax
jmp 0x18002f067
cmp r8, rbp
jne 0x18002f0cb
mov qword [rcx + rax*8], rdi
jmp 0x18002f0d7
cmp qword [rcx + rax*8 + 8], rdx
jne 0x18002f0d7
mov qword [rcx + rax*8 + 8], rdi
mov qword [rsi], rdi
mov byte [rsi + 8], 1
jmp 0x18002ef45
lea rcx, str.unordered_map_set_too_long
call fcn.1800bdbd4
int3
Function at 0x18002f0f0
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 rsi, 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 0x18002f11f
mov rax, qword [0x180197320]
and rax, r15
add rax, rax
mov rcx, qword [0x180197308]
mov rbx, qword [rcx + rax*8 + 8]
mov r14, qword [0x1801972f8]
cmp rbx, r14
jne 0x18002f16b
mov rbx, r14
mov rbp, r14
jmp 0x18002f1b1
mov rdx, qword [rcx + rax*8]
mov eax, dword [r8]
jmp 0x18002f17d
cmp rbx, rdx
je 0x18002f1ab
mov rbx, qword [rbx + 8]
cmp eax, dword [rbx + 0x10]
jne 0x18002f174
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, 0x7ffffffffffffff
cmp qword [0x180197300], rax
je 0x18002f327
lea rax, [0x1801972f8]
mov qword [rsp + 0x20], rax
and qword [rsp + 0x28], 0
mov ecx, 0x20
call fcn.1800c0af4
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 [0x180197300]
lea rcx, [r8 + 1]
xorps xmm0, xmm0
test rcx, rcx
js 0x18002f212
cvtsi2ss xmm0, rcx
jmp 0x18002f227
mov rax, rcx
shr rax, 1
and ecx, 1
or rax, rcx
cvtsi2ss xmm0, rax
addss xmm0, xmm0
mov rcx, qword [0x180197328]
xorps xmm1, xmm1
test rcx, rcx
js 0x18002f23d
cvtsi2ss xmm1, rcx
jmp 0x18002f252
mov rax, rcx
shr rax, 1
and ecx, 1
or rax, rcx
cvtsi2ss xmm1, rax
addss xmm1, xmm1
divss xmm0, xmm1
comiss xmm0, dword [0x1801972f0]
jbe 0x18002f2ba
call fcn.18002fe40
mov rcx, qword [0x180197320]
and rcx, r15
add rcx, rcx
mov rdx, qword [0x180197308]
mov rax, qword [rdx + rcx*8 + 8]
mov rbx, qword [0x1801972f8]
cmp rax, rbx
je 0x18002f2a6
mov r8, qword [rdx + rcx*8]
mov ecx, dword [rdi + 0x10]
jmp 0x18002f29e
mov rbx, rax
cmp rax, r8
je 0x18002f2fd
mov rax, qword [rax + 8]
cmp ecx, dword [rax + 0x10]
jne 0x18002f292
mov rbx, qword [rax]
mov qword [rsp + 0x20], rbx
mov rbp, rbx
mov r14, qword [rsp + 0x20]
mov r8, qword [0x180197300]
mov rdx, qword [rbx + 8]
inc r8
mov qword [0x180197300], r8
mov qword [rdi], r14
mov qword [rdi + 8], rdx
mov qword [rdx], rdi
mov qword [rbx + 8], rdi
mov rax, qword [0x180197320]
and rax, r15
add rax, rax
mov rcx, qword [0x180197308]
mov r8, qword [rcx + rax*8]
cmp r8, qword [0x1801972f8]
jne 0x18002f304
mov qword [rcx + rax*8], rdi
jmp 0x18002f316
mov qword [rsp + 0x20], rax
jmp 0x18002f2ab
cmp r8, rbp
jne 0x18002f30f
mov qword [rcx + rax*8], rdi
jmp 0x18002f31b
cmp qword [rcx + rax*8 + 8], rdx
jne 0x18002f31b
mov qword [rcx + rax*8 + 8], rdi
mov qword [rsi], rdi
mov byte [rsi + 8], 1
jmp 0x18002f189
lea rcx, str.unordered_map_set_too_long
call fcn.1800bdbd4
int3
Function at 0x18002fa40
Capabilities:
Encode data using xor
Hash data using fnv

Disassembly:
push rbp
push rbx
push rsi
push rdi
push r14
mov rbp, rsp
sub rsp, 0x50
mov rax, qword [rcx + 8]
lea rbx, [rdx + 0xa8]
mov rsi, rcx
mov rdi, rdx
mov rcx, rbx
mov r8, qword [rax]
mov qword [rbp + 0x30], r8
call fcn.1800bf30c
test eax, eax
jne 0x18002fbcb
mov eax, dword [rbx + 0x4c]
cmp eax, 0x7fffffff
je 0x18002fbd6
movabs rcx, 0xcbf29ce484222325
xor edx, edx
movzx eax, byte [rbp + rdx + 0x30]
movabs r8, 0x100000001b3
xor rcx, rax
inc rdx
imul rcx, r8
cmp rdx, 8
jb 0x18002fa90
mov rdx, qword [rdi + 0x128]
mov r8, qword [rdi + 0x100]
and rdx, rcx
mov rcx, qword [rdi + 0x110]
add rdx, rdx
mov rax, qword [rcx + rdx*8 + 8]
cmp rax, r8
je 0x18002faef
mov r9, qword [rcx + rdx*8]
mov rcx, qword [rbp + 0x30]
jmp 0x18002fae7
cmp rax, r9
je 0x18002faef
mov rax, qword [rax + 8]
cmp rcx, qword [rax + 0x10]
jne 0x18002fade
jmp 0x18002faf1
xor eax, eax
test rax, rax
cmove rax, r8
cmp rax, r8
jne 0x18002fb02
xor dil, dil
jmp 0x18002fb0b
cmp qword [rax + 0x38], 0
setne dil
mov rcx, rbx
call fcn.1800bf314
test dil, dil
je 0x18002fbb0
mov rax, qword [rsi + 0x30]
mov rcx, qword [rax]
mov rax, qword [rsi + 0x28]
mov qword [rbp - 0x30], rcx
mov rcx, qword [rax]
mov rax, qword [rsi + 0x20]
mov qword [rbp + 0x48], rcx
movsxd rcx, dword [rax]
mov rax, qword [rsi + 0x18]
mov qword [rbp + 0x38], rcx
mov rcx, qword [rax]
mov rax, qword [rsi + 8]
mov qword [rbp + 0x40], rcx
mov rcx, qword [rax]
lea rax, [rbp + 0x30]
mov qword [rbp - 0x28], rax
lea rax, [rbp + 0x38]
mov qword [rbp - 0x20], rax
lea rax, [rbp + 0x40]
mov qword [rbp - 0x18], rax
lea rax, [rbp + 0x48]
mov qword [rbp - 0x10], rax
lea rax, [rbp - 0x30]
mov qword [rbp + 0x30], rcx
mov rcx, rbx
mov qword [rbp - 8], rax
call fcn.1800bf30c
test eax, eax
jne 0x18002fbe6
mov eax, dword [rbx + 0x4c]
cmp eax, 0x7fffffff
je 0x18002fbbb
lea rdx, [rbx + 0x50]
lea rcx, [rbp - 0x28]
call fcn.18006e8f8
mov rcx, rbx
mov rdi, rax
call fcn.1800bf314
mov rcx, qword [rsi + 0x10]
mov qword [rcx], rdi
add rsp, 0x50
pop r14
pop rdi
pop rsi
pop rbx
pop rbp
ret
dec eax
mov ecx, 6
mov dword [rbx + 0x4c], eax
call fcn.1800bf220
int3
mov ecx, 5
call fcn.1800bf220
int3
dec eax
mov ecx, 6
mov dword [rbx + 0x4c], eax
call fcn.1800bf220
int3
mov ecx, 5
call fcn.1800bf220
int3