joyce8/EMBER2024-capa huggingface dataset:
Function at 0x1401571a0
Capabilities:
Terminate process

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 r14, rcx
movzx r13d, dx
and r13d, 7
movzx eax, dx
shr rax, 3
lea rsi, [rcx + 0xa]
add rsi, rax
mov qword [rsp + 0x60], rsi
mov r8d, 1
mov ecx, r13d
shl r8w, cl
test byte [rsi], r8b
je 0x140157349
lea rcx, [r14 + 0xa]
call fcn.14012fa90
movzx edi, ax
movzx ebx, word [r14 + 8]
cmp bx, 1
jne 0x140157217
mov rcx, r14
call fcn.140157ae0
xor r15d, r15d
jmp 0x140157333
dec bx
movzx ecx, bx
shl rcx, 5
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_malloc]
mov r15, rax
test rax, rax
jne 0x140157258
movzx ebx, bx
lea ecx, [rax + 2]
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll___acrt_iob_func]
mov rcx, rax
mov r8d, ebx
lea rdx, [0x140274670]
call fcn.14016b3f0
lea ecx, [r15 + 1]
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_exit]
int3
mov r12, rdi
shl r12, 5
mov rbx, qword [r14]
lea rsi, [rbx + r12]
mov qword [rsp + 0x20], r15
mov rdi, r15
mov qword [rsp + 0x28], r15
cmp rbx, rsi
je 0x1401572a0
nop dword [rax + rax]
mov rdx, rbx
mov rcx, rdi
call fcn.14014f380
add rdi, 0x20
mov qword [rsp + 0x28], rdi
add rbx, 0x20
cmp rbx, rsi
jne 0x140157280
mov rbx, qword [r14]
lea rdi, [r12 + r15]
movzx eax, word [r14 + 8]
mov ebp, eax
shl rbp, 5
add rbp, rbx
lea rsi, [r12 + 0x20]
add rsi, rbx
mov qword [rsp + 0x20], rdi
mov qword [rsp + 0x28], rdi
cmp rsi, rbp
je 0x1401572f5
nop dword [rax]
mov rdx, rsi
mov rcx, rdi
call fcn.14014f380
add rdi, 0x20
mov qword [rsp + 0x28], rdi
add rsi, 0x20
cmp rsi, rbp
jne 0x1401572d0
mov rbx, qword [r14]
movzx eax, word [r14 + 8]
test rbx, rbx
je 0x14015732e
movzx edi, ax
shl rdi, 5
add rdi, rbx
cmp rbx, rdi
je 0x140157325
nop dword [rax]
lea rcx, [rbx + 8]
call fcn.140151860
add rbx, 0x20
cmp rbx, rdi
jne 0x140157310
mov rbx, qword [r14]
mov rcx, rbx
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov rsi, qword [rsp + 0x60]
mov qword [r14], r15
mov eax, 0xffff
add word [r14 + 8], ax
movzx eax, byte [rsi]
btr eax, r13d
mov byte [rsi], al
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
Function at 0x140157370
Capabilities:
Terminate process

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 r14, rcx
movzx r13d, dx
and r13d, 7
movzx eax, dx
shr rax, 3
lea rsi, [rcx + 0xa]
add rsi, rax
mov qword [rsp + 0x60], rsi
mov r8d, 1
mov ecx, r13d
shl r8w, cl
test byte [rsi], r8b
je 0x140157519
lea rcx, [r14 + 0xa]
call fcn.140162240
movzx edi, ax
movzx ebx, word [r14 + 8]
cmp bx, 1
jne 0x1401573e7
mov rcx, r14
call fcn.140157ae0
xor r15d, r15d
jmp 0x140157503
dec bx
movzx ecx, bx
shl rcx, 5
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_malloc]
mov r15, rax
test rax, rax
jne 0x140157428
movzx ebx, bx
lea ecx, [rax + 2]
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll___acrt_iob_func]
mov rcx, rax
mov r8d, ebx
lea rdx, [0x140274670]
call fcn.14016b3f0
lea ecx, [r15 + 1]
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_exit]
int3
mov r12, rdi
shl r12, 5
mov rbx, qword [r14]
lea rsi, [rbx + r12]
mov qword [rsp + 0x20], r15
mov rdi, r15
mov qword [rsp + 0x28], r15
cmp rbx, rsi
je 0x140157470
nop dword [rax + rax]
mov rdx, rbx
mov rcx, rdi
call fcn.14014f450
add rdi, 0x20
mov qword [rsp + 0x28], rdi
add rbx, 0x20
cmp rbx, rsi
jne 0x140157450
mov rbx, qword [r14]
lea rdi, [r12 + r15]
movzx eax, word [r14 + 8]
mov ebp, eax
shl rbp, 5
add rbp, rbx
lea rsi, [r12 + 0x20]
add rsi, rbx
mov qword [rsp + 0x20], rdi
mov qword [rsp + 0x28], rdi
cmp rsi, rbp
je 0x1401574c5
nop dword [rax]
mov rdx, rsi
mov rcx, rdi
call fcn.14014f450
add rdi, 0x20
mov qword [rsp + 0x28], rdi
add rsi, 0x20
cmp rsi, rbp
jne 0x1401574a0
mov rbx, qword [r14]
movzx eax, word [r14 + 8]
test rbx, rbx
je 0x1401574fe
movzx edi, ax
shl rdi, 5
add rdi, rbx
cmp rbx, rdi
je 0x1401574f5
nop dword [rax]
lea rcx, [rbx + 8]
call fcn.140151860
add rbx, 0x20
cmp rbx, rdi
jne 0x1401574e0
mov rbx, qword [r14]
mov rcx, rbx
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov rsi, qword [rsp + 0x60]
mov qword [r14], r15
mov eax, 0xffff
add word [r14 + 8], ax
movzx eax, byte [rsi]
btr eax, r13d
mov byte [rsi], al
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
Function at 0x1401578a0
Capabilities:
Hash data using fnv

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], r8
mov qword [rsp + 8], rcx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x20
movzx edi, byte [r8]
mov r12, rdx
movabs rdx, 0x100000001b3
mov r9, rcx
mov rcx, qword [rcx + 0x50]
movabs rax, 0xcbf29ce484222325
xor rdi, rax
dec rcx
movzx eax, byte [r8 + 1]
xor r13d, r13d
mov r15, qword [r9 + 0x38]
imul rdi, rdx
mov qword [rsp + 0x78], rcx
lea r14, [r13 - 1]
xor rdi, rax
movzx eax, byte [r8 + 2]
imul rdi, rdx
xor rdi, rax
movzx eax, byte [r8 + 3]
imul rdi, rdx
xor rdi, rax
movzx eax, byte [r8 + 4]
imul rdi, rdx
xor rdi, rax
movzx eax, byte [r8 + 5]
imul rdi, rdx
xor rdi, rax
movzx eax, byte [r8 + 6]
imul rdi, rdx
xor rdi, rax
movzx eax, byte [r8 + 7]
imul rdi, rdx
xor rdi, rax
movabs rax, 0xaaaaaaaaaaaaaaab
imul rdi, rdx
and rdi, rcx
mul rdi
movzx r8d, di
mov rbx, rdx
mov edx, 1
shr rbx, 5
movzx eax, bx
mov rsi, rbx
add ax, ax
shl rsi, 4
lea ecx, [rax + rbx]
shl cx, 4
sub r8w, cx
movzx eax, r8w
mov ecx, r8d
shr rax, 3
and ecx, 7
add rax, r15
shl dx, cl
movzx eax, byte [rax + rsi + 0xa]
and dx, ax
je 0x140157a98
movzx ebp, di
nop dword [rax + rax]
cmp qword [r9 + 0x30], 0
je 0x1401579f6
test dx, dx
je 0x1401579f6
lea rcx, [r15 + 0xa]
movzx edx, r8w
add rcx, rsi
call fcn.140162240
mov r9, qword [rsp + 0x60]
movzx ecx, ax
mov rax, qword [r15 + rsi]
shl rcx, 5
mov rcx, qword [rcx + rax]
cmp qword [r9 + 0x28], rcx
jne 0x1401579f6
cmp r14, 0xffffffffffffffff
mov rax, rdi
cmovne rax, r14
mov r14, rax
jmp 0x140157a33
movzx eax, bx
lea rcx, [r15 + 0xa]
add bx, bx
add rcx, rsi
add ax, bx
shl ax, 4
sub bp, ax
movzx edx, bp
call fcn.140162240
movzx ecx, ax
mov rax, qword [r15 + rsi]
shl rcx, 5
mov rcx, qword [rcx + rax]
mov rax, qword [rsp + 0x70]
cmp qword [rax], rcx
je 0x140157aad
mov r9, qword [rsp + 0x60]
inc r13
movabs rax, 0xaaaaaaaaaaaaaaab
add rdi, r13
and rdi, qword [rsp + 0x78]
mul rdi
movzx r8d, di
movzx ebp, di
mov rbx, rdx
mov edx, 1
shr rbx, 5
movzx eax, bx
mov rsi, rbx
add ax, ax
shl rsi, 4
lea ecx, [rax + rbx]
shl cx, 4
sub r8w, cx
movzx eax, r8w
mov ecx, r8d
shr rax, 3
and ecx, 7
add rax, r15
shl dx, cl
movzx eax, byte [rax + rsi + 0xa]
and dx, ax
jne 0x1401579b0
mov qword [r12], 0xffffffffffffffff
cmp r14, 0xffffffffffffffff
jne 0x140157abc
mov qword [r12 + 8], rdi
jmp 0x140157ac1
mov qword [r12], rdi
mov qword [r12 + 8], 0xffffffffffffffff
jmp 0x140157ac1
mov qword [r12 + 8], r14
mov rbx, qword [rsp + 0x68]
mov rax, r12
add rsp, 0x20
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
Function at 0x140167d00
Capabilities:
Terminate process

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rbp
mov qword [rsp + 0x20], rsi
mov qword [rsp + 0x18], r8
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x30
movzx ebx, dx
mov rsi, rcx
add rcx, 0xa
movzx edx, bx
call fcn.14012fa90
movzx edi, ax
mov r13d, ebx
and r13d, 7
mov r12d, ebx
shr r12, 3
mov edx, 1
mov ecx, r13d
shl dx, cl
test byte [r12 + rsi + 0xa], dl
je 0x140167d71
mov r14d, edi
shl r14, 5
mov rcx, qword [rsi]
add rcx, 8
add rcx, r14
call fcn.140151860
jmp 0x140167e5f
movzx ebx, word [rsi + 8]
inc bx
movzx ecx, bx
shl rcx, 5
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_malloc]
mov r15, rax
test rax, rax
jne 0x140167db6
movzx ebx, bx
lea ecx, [rax + 2]
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll___acrt_iob_func]
mov rcx, rax
mov r8d, ebx
lea rdx, [0x140274670]
call fcn.14016b3f0
lea ecx, [r15 + 1]
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_exit]
int3
mov r14, rdi
shl r14, 5
mov rbx, qword [rsi]
lea rbp, [rbx + r14]
mov qword [rsp + 0x20], r15
mov rdi, r15
mov qword [rsp + 0x28], r15
cmp rbx, rbp
je 0x140167e00
nop word [rax + rax]
mov rdx, rbx
mov rcx, rdi
call fcn.14014f380
add rdi, 0x20
mov qword [rsp + 0x28], rdi
add rbx, 0x20
cmp rbx, rbp
jne 0x140167de0
mov rbx, qword [rsi]
lea rdi, [r15 + 0x20]
add rdi, r14
movzx ebp, word [rsi + 8]
shl rbp, 5
add rbp, rbx
add rbx, r14
mov qword [rsp + 0x20], rdi
mov qword [rsp + 0x28], rdi
cmp rbx, rbp
je 0x140167e41
mov rdx, rbx
mov rcx, rdi
call fcn.14014f380
add rdi, 0x20
mov qword [rsp + 0x28], rdi
add rbx, 0x20
cmp rbx, rbp
jne 0x140167e24
mov rcx, rsi
call fcn.140157ae0
mov qword [rsi], r15
inc word [rsi + 8]
movzx eax, byte [r12 + rsi + 0xa]
bts eax, r13d
mov byte [r12 + rsi + 0xa], al
mov rcx, qword [rsi]
add rcx, r14
mov rdx, qword [rsp + 0x70]
call fcn.14014f380
mov rax, qword [rsi]
add rax, r14
mov rbx, qword [rsp + 0x60]
mov rbp, qword [rsp + 0x68]
mov rsi, qword [rsp + 0x78]
add rsp, 0x30
pop r15
pop r14
pop r13
pop r12
pop rdi
ret
Function at 0x140167ea0
Capabilities:
Terminate process

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rbp
mov qword [rsp + 0x20], rsi
mov qword [rsp + 0x18], r8
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x30
movzx ebx, dx
mov rsi, rcx
add rcx, 0xa
movzx edx, bx
call fcn.140162240
movzx edi, ax
mov r13d, ebx
and r13d, 7
mov r12d, ebx
shr r12, 3
mov edx, 1
mov ecx, r13d
shl dx, cl
test byte [r12 + rsi + 0xa], dl
je 0x140167f11
mov r14d, edi
shl r14, 5
mov rcx, qword [rsi]
add rcx, 8
add rcx, r14
call fcn.140151860
jmp 0x140167fff
movzx ebx, word [rsi + 8]
inc bx
movzx ecx, bx
shl rcx, 5
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_malloc]
mov r15, rax
test rax, rax
jne 0x140167f56
movzx ebx, bx
lea ecx, [rax + 2]
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll___acrt_iob_func]
mov rcx, rax
mov r8d, ebx
lea rdx, [0x140274670]
call fcn.14016b3f0
lea ecx, [r15 + 1]
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_exit]
int3
mov r14, rdi
shl r14, 5
mov rbx, qword [rsi]
lea rbp, [rbx + r14]
mov qword [rsp + 0x20], r15
mov rdi, r15
mov qword [rsp + 0x28], r15
cmp rbx, rbp
je 0x140167fa0
nop word [rax + rax]
mov rdx, rbx
mov rcx, rdi
call fcn.14014f450
add rdi, 0x20
mov qword [rsp + 0x28], rdi
add rbx, 0x20
cmp rbx, rbp
jne 0x140167f80
mov rbx, qword [rsi]
lea rdi, [r15 + 0x20]
add rdi, r14
movzx ebp, word [rsi + 8]
shl rbp, 5
add rbp, rbx
add rbx, r14
mov qword [rsp + 0x20], rdi
mov qword [rsp + 0x28], rdi
cmp rbx, rbp
je 0x140167fe1
mov rdx, rbx
mov rcx, rdi
call fcn.14014f450
add rdi, 0x20
mov qword [rsp + 0x28], rdi
add rbx, 0x20
cmp rbx, rbp
jne 0x140167fc4
mov rcx, rsi
call fcn.140157ae0
mov qword [rsi], r15
inc word [rsi + 8]
movzx eax, byte [r12 + rsi + 0xa]
bts eax, r13d
mov byte [r12 + rsi + 0xa], al
mov rcx, qword [rsi]
add rcx, r14
mov rdx, qword [rsp + 0x70]
call fcn.14014f450
mov rax, qword [rsi]
add rax, r14
mov rbx, qword [rsp + 0x60]
mov rbp, qword [rsp + 0x68]
mov rsi, qword [rsp + 0x78]
add rsp, 0x30
pop r15
pop r14
pop r13
pop r12
pop rdi
ret
Function at 0x14016c0c0
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 0x14016c2f4
lea r15, [rcx + 8]
mov qword [rsp + 0x20], r15
mov qword [rsp + 0x28], 0
mov ecx, 0x38
call fcn.1401dcf70
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 0x14016c191
cvtsi2ss xmm1, rcx
jmp 0x14016c1a6
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 0x14016c1b9
cvtsi2ss xmm2, rdx
jmp 0x14016c1d1
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 0x14016c24e
divss xmm1, xmm3
xorps xmm0, xmm0
roundss xmm0, xmm1, 2
xor ecx, ecx
movss xmm1, dword [0x140237268]
comiss xmm0, xmm1
jb 0x14016c214
subss xmm0, xmm1
comiss xmm0, xmm1
jae 0x14016c214
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 0x14016c246
cmp rdx, 0x200
jae 0x14016c243
lea rdx, [rdx*8]
cmp rdx, rcx
jae 0x14016c246
mov rdx, rcx
mov rcx, rdi
call fcn.14016df00
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 0x14016c286
mov rdx, qword [r8 + rcx*8]
mov ecx, dword [rbx + 0x10]
cmp ecx, dword [rax + 0x10]
je 0x14016c283
cmp rax, rdx
je 0x14016c2b9
mov rax, qword [rax + 8]
cmp ecx, dword [rax + 0x10]
jne 0x14016c275
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 0x14016c2be
mov qword [rcx + rax*8], rbx
jmp 0x14016c2d0
mov rdx, rax
jmp 0x14016c286
cmp r9, rdx
jne 0x14016c2c9
mov qword [rcx + rax*8], rbx
jmp 0x14016c2d5
cmp qword [rcx + rax*8 + 8], r8
jne 0x14016c2d5
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 0x14016cb20
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 0x14016cb95
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 0x14016cbb0
cmp rdx, rax
je 0x14016cb87
mov rdx, qword [rdx]
cmp dword [rdx + 0x10], r8d
jne 0x14016cba2
mov rcx, qword [rdx]
cmp rdx, rax
je 0x14016cbd1
nop dword [rax + rax]
mov r9, rcx
cmp r8d, dword [rcx + 0x10]
jne 0x14016cbd1
mov rcx, qword [rcx]
cmp r9, rax
jne 0x14016cbc0
mov qword [r11], rdx
mov rax, r11
mov qword [r11 + 8], rcx
ret
Function at 0x14016df00
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 0x14016e0c2
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.140054610
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 0x14016e087
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 0x14016dff3
mov qword [r11], rcx
mov qword [r11 + 8], rcx
jmp 0x14016e076
mov rax, qword [r11 + 8]
mov r9d, dword [rcx + 0x10]
cmp r9d, dword [rax + 0x10]
jne 0x14016e030
mov r10, qword [rax]
cmp r10, rcx
je 0x14016e02a
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 0x14016e076
mov r8, rax
cmp r10, rax
je 0x14016e052
nop dword [rax + rax]
mov rax, qword [rax + 8]
mov r8, rax
cmp r9d, dword [rax + 0x10]
je 0x14016e09c
cmp r10, rax
jne 0x14016e040
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 0x14016dfa0
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 0x14016e076
lea rcx, str.invalid_hash_bucket_count
call sub.MSVCP140.dll_void___cdecl_std::_Xlength_error_char_const____ptr64_
int3
Function at 0x14016e2a0
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 0x14016e2bb
cvtsi2ss xmm0, rdx
jmp 0x14016e2d0
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 [0x140237268]
comiss xmm1, xmm0
jb 0x14016e302
subss xmm1, xmm0
comiss xmm1, xmm0
jae 0x14016e302
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 0x14016e334
cmp r8, 0x200
jae 0x14016e331
lea r8, [r8*8]
cmp r8, rcx
jae 0x14016e334
mov r8, rcx
mov rdx, r8
mov rcx, r9
jmp fcn.14016df00
Function at 0x14016e350
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 0x14016e44e
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.1401dcf3c
dec qword [rsi + 0x10]
cmp rdi, qword [rsp + 0x70]
je 0x14016e45a
cmp rbx, rbp
jne 0x14016e400
cmp qword [rsp + 0x68], r14
jne 0x14016e42d
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 0x14016e469
mov qword [r15], r12
mov rax, r12
jmp 0x14016e46c
mov rax, r13
mov qword [r15 + 8], rax
cmp rbx, rbp
je 0x14016e42d
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.1401dcf3c
dec qword [rsi + 0x10]
cmp rdi, r14
je 0x14016e506
cmp rbx, rbp
jne 0x14016e4e0
jmp 0x14016e42a
mov qword [r15], r12
mov qword [r15 + 8], r12
cmp rbx, rbp
jne 0x14016e480
jmp 0x14016e42d
push rdi
sub rsp, 0x20
mov rdi, rcx
mov rcx, qword [rcx + 0x10]
test rcx, rcx
je 0x14016eaec
mov rax, qword [rdi + 0x38]
shr rax, 3
cmp rax, rcx
jbe 0x14016ea7a
mov rdx, qword [rdi + 8]
mov rcx, rdi
mov r8, rdx
mov rdx, qword [rdx]
add rsp, 0x20
pop rdi
jmp 0x14016e350
mov rcx, qword [rdi + 8]
mov rax, qword [rcx + 8]
mov qword [rax], 0
mov rcx, qword [rcx]
test rcx, rcx
je 0x14016eaba
mov qword [rsp + 0x38], rbx
nop word [rax + rax]
mov rbx, qword [rcx]
mov edx, 0x20
call fcn.1401dcf3c
mov rcx, rbx
test rbx, rbx
jne 0x14016eaa0
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.1400510f0
add rsp, 0x20
pop rdi
ret