joyce8/EMBER2024-capa huggingface dataset:
Function at 0x140001c20
Capabilities:
Encode data using xor
Generate random numbers using a mersenne twister

Disassembly:
mov eax, 0x13e8
call fcn.1400683f0
sub rsp, rax
movaps xmmword [rsp + 0x13d0], xmm6
movaps xmmword [rsp + 0x13c0], xmm7
mov rax, qword [0x1400af020]
xor rax, rsp
mov qword [rsp + 0x13b0], rax
movaps xmm6, xmm1
movaps xmm7, xmm0
call fcn.140047d88
mov edx, eax
mov ecx, 1
movabs rax, 0x5555555555555555
mov qword [rsp + 0x28], rdx
mov qword [rsp + 0x13a8], rax
movabs r8, 0x5851f42d4c957f2d
mov r9d, 0x138
nop dword [rax + rax]
mov rax, rdx
shr rax, 0x3e
xor rdx, rax
imul rdx, r8
add rdx, rcx
mov qword [rsp + rcx*8 + 0x28], rdx
inc rcx
cmp rcx, r9
jb 0x140001c90
mov dword [rsp + 0x20], r9d
lea r8, [rsp + 0x30]
xorps xmm1, xmm1
movabs r10, 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, r10
xor rcx, qword [r8 + 0x4d0]
xor rcx, rdx
mov qword [r8 + 0x9b0], rcx
sub r9, 1
jne 0x140001cc5
mov eax, dword [rsp + 0x20]
movabs rdx, 0x38eb3ffff6d3
xorps xmm0, xmm0
mov rcx, qword [rsp + rax*8 + 0x28]
mov rax, rcx
shr rax, 0x1d
and rax, qword [rsp + 0x13a8]
xor rcx, rax
mov rax, rcx
and rax, rdx
shl rax, 0x11
xor rcx, rax
mov rax, rcx
and rax, 0xffffffffffffbf77
shl rax, 0x25
xor rcx, rax
mov rdx, rcx
shr rdx, 0x2b
xor rdx, rcx
js 0x140001d5a
cvtsi2ss xmm0, rdx
jmp 0x140001d6f
mov rax, rdx
and edx, 1
shr rax, 1
or rax, rdx
cvtsi2ss xmm0, rax
addss xmm0, xmm0
subss xmm0, xmm1
subss xmm6, xmm7
addss xmm0, xmm1
mulss xmm0, dword [0x1400a0980]
mulss xmm0, xmm6
addss xmm0, xmm7
mov rcx, qword [rsp + 0x13b0]
xor rcx, rsp
call fcn.140048dc0
movaps xmm6, xmmword [rsp + 0x13d0]
movaps xmm7, xmmword [rsp + 0x13c0]
add rsp, 0x13e8
ret

Function at 0x140003900
Capabilities:
Hash data with crc32

Disassembly:
mov qword [rsp + 8], rbx
mov r11d, r8d
mov r10, rdx
not r11d
mov r9, rcx
mov eax, r11d
test rdx, rdx
je 0x14000395d
lea rbx, [0x140079240]
movzx r8d, byte [r9]
lea r9, [r9 + 1]
dec r10
cmp r8b, 0x23
jne 0x140003944
cmp r10, 2
jb 0x140003944
cmp byte [r9], r8b
jne 0x140003944
cmp byte [r9 + 1], r8b
cmove eax, r11d
movzx edx, al
xor rdx, r8
shr eax, 8
xor eax, dword [rbx + rdx*4]
test r10, r10
jne 0x140003920
not eax
mov rbx, qword [rsp + 8]
ret
movzx r8d, byte [rcx]
inc r9
test r8b, r8b
je 0x14000399f
lea rbx, [0x140079240]
cmp r8b, 0x23
jne 0x140003983
cmp byte [r9], r8b
jne 0x140003983
cmp byte [r9 + 1], r8b
cmove eax, r11d
movzx edx, al
movzx ecx, r8b
movzx r8d, byte [r9]
xor rdx, rcx
shr eax, 8
inc r9
xor eax, dword [rbx + rdx*4]
test r8b, r8b
jne 0x140003970
mov rbx, qword [rsp + 8]
not eax
ret
Function at 0x140003ae0
Capabilities:
Read file on windows

Disassembly:
mov qword [rsp + 0x18], rbx
push r14
sub rsp, 0x20
mov r14, r8
test r8, r8
je 0x140003afa
mov qword [r8], 0
lea rdx, [0x140078f74]
call fcn.1400039b0
mov rbx, rax
test rax, rax
jne 0x140003b1a
mov rbx, qword [rsp + 0x40]
add rsp, 0x20
pop r14
ret
mov qword [rsp + 0x30], rsi
mov rcx, rbx
mov qword [rsp + 0x38], rdi
call fcn.14005006c
mov esi, eax
cmp eax, 0xffffffff
je 0x140003be8
xor edx, edx
mov rcx, rbx
lea r8d, [rdx + 2]
call fcn.140050b64
test eax, eax
jne 0x140003be8
mov rcx, rbx
call fcn.14005006c
movsxd rdi, eax
cmp edi, 0xffffffff
je 0x140003be8
xor r8d, r8d
mov edx, esi
mov rcx, rbx
call fcn.140050b64
test eax, eax
jne 0x140003be8
cmp rdi, 0xffffffffffffffff
je 0x140003be8
mov rax, qword [0x1400b1718]
test rax, rax
je 0x140003b8a
inc dword [rax + 0xec]
mov rcx, rdi
call fcn.140058e70
mov rsi, rax
test rax, rax
je 0x140003be8
mov r9, rbx
mov r8, rdi
mov edx, 1
mov rcx, rax
call fcn.140053804
mov rcx, rbx
cmp rax, rdi
je 0x140003bd6
call fcn.14005085c
mov rax, qword [0x1400b1718]
test rax, rax
je 0x140003bcc
dec dword [rax + 0xec]
mov rcx, rsi
call fcn.140053590
jmp 0x140003bf0
call fcn.14005085c
test r14, r14
je 0x140003be3
mov qword [r14], rdi
mov rax, rsi
jmp 0x140003bf2
mov rcx, rbx
call fcn.14005085c
xor eax, eax
mov rsi, qword [rsp + 0x30]
mov rdi, qword [rsp + 0x38]
mov rbx, qword [rsp + 0x40]
add rsp, 0x20
pop r14
ret
Function at 0x1400062b0
Capabilities:
Hash data with crc32

Disassembly:
push rbx
sub rsp, 0x20
movsxd r8, dword [rcx + 0xc8]
mov rax, qword [rcx + 0xd0]
movsxd r9, edx
mov ebx, dword [rax + r8*4 - 4]
lea r8, [0x140079240]
not ebx
movzx eax, r9b
movzx ecx, bl
xor rcx, rax
shr ebx, 8
mov eax, r9d
shr eax, 8
movzx edx, al
mov eax, r9d
xor ebx, dword [r8 + rcx*4]
movzx ecx, bl
xor rdx, rcx
shr ebx, 8
shr eax, 0x10
xor ebx, dword [r8 + rdx*4]
movzx ecx, bl
shr ebx, 8
movzx edx, al
mov rax, qword [0x1400b1718]
xor rdx, rcx
xor ebx, dword [r8 + rdx*4]
movzx ecx, bl
shr ebx, 8
mov edx, r9d
shr rdx, 0x18
xor rdx, rcx
xor ebx, dword [r8 + rdx*4]
not ebx
cmp dword [rax + 0x3e84], ebx
jne 0x14000633d
mov dword [rax + 0x3e88], ebx
cmp dword [rax + 0x3ed0], ebx
jne 0x14000634c
mov byte [rax + 0x3ed4], 1
cmp dword [rax + 0x3e6c], ebx
jne 0x140006363
mov r8, r9
mov edx, 4
mov ecx, ebx
call fcn.1400182e0
mov eax, ebx
add rsp, 0x20
pop rbx
ret
Function at 0x1400106e0
Capabilities:
Hash data with crc32

Disassembly:
mov qword [rsp + 0x10], rbx
push rdi
sub rsp, 0x20
mov r8, qword [0x1400b1718]
lea r10, [0x140079240]
movsxd r9, ecx
mov rbx, qword [r8 + 0x3e38]
add rbx, 0xc8
movsxd rdx, dword [rbx]
mov rax, qword [rbx + 8]
mov edi, dword [rax + rdx*4 - 4]
not edi
movzx eax, r9b
movzx ecx, dil
xor rcx, rax
shr edi, 8
mov eax, r9d
shr eax, 8
movzx edx, al
mov eax, r9d
xor edi, dword [r10 + rcx*4]
movzx ecx, dil
xor rdx, rcx
shr edi, 8
shr eax, 0x10
xor edi, dword [r10 + rdx*4]
movzx ecx, dil
shr edi, 8
movzx edx, al
xor rdx, rcx
xor edi, dword [r10 + rdx*4]
movzx ecx, dil
shr edi, 8
mov edx, r9d
shr rdx, 0x18
xor rdx, rcx
xor edi, dword [r10 + rdx*4]
not edi
cmp dword [r8 + 0x3e6c], edi
jne 0x140010785
mov r8, r9
mov edx, 4
mov ecx, edi
call fcn.1400182e0
mov ecx, dword [rbx + 4]
mov r8d, dword [rbx]
cmp r8d, ecx
jne 0x1400107b9
inc r8d
test ecx, ecx
je 0x1400107a2
mov eax, ecx
cdq
sub eax, edx
sar eax, 1
add eax, ecx
jmp 0x1400107a7
mov eax, 8
cmp eax, r8d
mov rcx, rbx
cmovg r8d, eax
mov edx, r8d
call fcn.140019270
movsxd rcx, dword [rbx]
mov rax, qword [rbx + 8]
mov dword [rax + rcx*4], edi
inc dword [rbx]
mov rbx, qword [rsp + 0x38]
add rsp, 0x20
pop rdi
ret

Function at 0x140012220
Capabilities:
Hash data with crc32

Disassembly:
mov qword [rsp + 8], rbx
push rdi
sub rsp, 0x40
mov rax, qword [0x1400af020]
xor rax, rsp
mov qword [rsp + 0x30], rax
mov rbx, qword [0x1400b1718]
mov edi, ecx
cmp byte [rbx + 0x41dd], 0
jne 0x140012281
cmp byte [rbx + 0x41de], 0
jne 0x140012281
movsx r9d, word [rbx + 0x52be]
lea r8, str.Tooltip__02d
mov edx, 0x10
lea rcx, [rsp + 0x20]
call fcn.140003880
test dil, 1
je 0x1400123a8
jmp 0x14001230a
movss xmm1, dword [rbx + 0x3830]
lea r8, str.Tooltip__02d
movsx r9d, word [rbx + 0x52be]
lea rcx, [rsp + 0x20]
movaps xmm0, xmm1
xor eax, eax
mulss xmm0, dword [0x1400a0aa8]
mulss xmm1, dword [0x1400a0a8c]
lea edx, [rax + 0x10]
addss xmm0, dword [rbx + 0xd0c]
addss xmm1, dword [rbx + 0xd10]
mov qword [rbx + 0x3f58], rax
mov dword [rbx + 0x3f44], 1
movss dword [rbx + 0x3f50], xmm0
movss dword [rbx + 0x3f54], xmm1
movss xmm0, dword [rbx + 0x388c]
mulss xmm0, dword [0x1400a09cc]
or dword [rbx + 0x3f40], 0x41
movss dword [rbx + 0x3fa0], xmm0
call fcn.140003880
movzx r9d, byte [rsp + 0x20]
lea r8, [rsp + 0x21]
mov r10d, 0xffffffff
mov ecx, r10d
test r9b, r9b
je 0x140012360
lea r11, [0x140079240]
nop word [rax + rax]
cmp r9b, 0x23
jne 0x140012343
cmp byte [r8], r9b
jne 0x140012343
cmp byte [r8 + 1], r9b
cmove ecx, r10d
movzx edx, cl
movzx eax, r9b
movzx r9d, byte [r8]
xor rdx, rax
shr ecx, 8
inc r8
xor ecx, dword [r11 + rdx*4]
test r9b, r9b
jne 0x140012330
not ecx
call fcn.14000b260
test rax, rax
je 0x1400123a8
cmp byte [rax + 0x8e], 0
je 0x1400123a8
mov byte [rax + 0x95], 1
lea r8, str.Tooltip__02d
mov byte [rax + 0xb0], 1
lea rcx, [rsp + 0x20]
inc word [rbx + 0x52be]
mov edx, 0x10
movsx r9d, word [rbx + 0x52be]
call fcn.140003880
xor edx, edx
lea rcx, [rsp + 0x20]
mov r8d, 0x20c0347
call fcn.14000da30
mov rcx, qword [rsp + 0x30]
xor rcx, rsp
call fcn.140048dc0
mov rbx, qword [rsp + 0x50]
add rsp, 0x40
pop rdi
ret
Function at 0x140039ad0
Capabilities:
Hash data with crc32

Disassembly:
test dword [rcx + 0x10], 0x100000
je 0x140039b4d
movzx r9d, byte [rdx]
lea r8, [rdx + 1]
mov r10d, 0xffffffff
mov eax, r10d
test r9b, r9b
je 0x140039b26
lea r11, [0x140079240]
cmp r9b, 0x23
jne 0x140039b09
cmp byte [r8], r9b
jne 0x140039b09
cmp byte [r8 + 1], r9b
cmove eax, r10d
movzx edx, al
movzx ecx, r9b
movzx r9d, byte [r8]
xor rdx, rcx
shr eax, 8
inc r8
xor eax, dword [r11 + rdx*4]
test r9b, r9b
jne 0x140039af6
mov rcx, qword [0x1400b1718]
not eax
cmp dword [rcx + 0x3e84], eax
jne 0x140039b3d
mov dword [rcx + 0x3e88], eax
cmp dword [rcx + 0x3ed0], eax
jne 0x140039b60
mov byte [rcx + 0x3ed4], 1
ret
mov rax, qword [0x1400b1718]
mov rcx, qword [rax + 0x3e38]
jmp fcn.140006230
ret

Function at 0x14003ea60
Capabilities:
Encrypt data using rc4 prga

Disassembly:
push rbx
sub rsp, 0x90
mov rax, qword [0x1400af020]
xor rax, rsp
mov qword [rsp + 0x80], rax
mov r8, rcx
mov ebx, edx
movzx ecx, byte [rcx]
test cl, cl
je 0x14003eaa6
lea rax, [r8 + 1]
cmp cl, 0x25
jne 0x14003ea96
cmp byte [rax], cl
jne 0x14003eaa6
cmp cl, cl
cmovne rax, r8
movzx ecx, byte [rax + 1]
lea r8, [rax + 1]
test cl, cl
jne 0x14003ea87
movzx edx, byte [r8]
cmp dl, 0x25
jne 0x14003ec09
cmp byte [r8 + 1], dl
je 0x14003ec09
lea r11, [rsp + 0x20]
mov r9, r8
lea eax, [rdx - 0x41]
movsx r10d, dl
cmp al, 0x19
ja 0x14003eae2
lea ecx, [r10 - 0x41]
mov eax, 1
shl eax, cl
test eax, 0x900
je 0x14003eb0a
sub dl, 0x61
cmp dl, 0x19
ja 0x14003eafc
lea ecx, [r10 - 0x61]
mov eax, 1
shl eax, cl
test eax, 0x2480a80
je 0x14003eb0a
movzx edx, byte [r9 + 1]
inc r9
test dl, dl
jne 0x14003eac5
jmp 0x14003eb0d
inc r9
cmp r8, r9
jae 0x14003eb3f
movabs rdx, 0x800000000000009
nop dword [rax]
movzx ecx, byte [r8]
inc r8
lea eax, [rcx - 0x24]
cmp al, 0x3b
ja 0x14003eb34
bt rdx, rax
jb 0x14003eb3a
mov byte [r11], cl
inc r11
cmp r8, r9
jb 0x14003eb20
xorps xmm3, xmm3
mov byte [r11], 0
cvtss2sd xmm3, xmm2
lea r8, [rsp + 0x20]
mov edx, 0x40
lea rcx, [rsp + 0x40]
movq r9, xmm3
call fcn.140003880
cmp byte [rsp + 0x40], 0x20
lea rcx, [rsp + 0x40]
jne 0x14003eb78
nop
inc rcx
cmp byte [rcx], 0x20
je 0x14003eb70
lea eax, [rbx - 8]
cmp eax, 1
jbe 0x14003ebf8
movzx r9d, byte [rcx]
movzx r8d, r9b
cmp r9b, 0x2d
jne 0x14003eb93
movzx r8d, byte [rcx + 1]
lea rdx, [rcx + 1]
movzx eax, r8b
cmovne rdx, rcx
cmp r8b, 0x2b
jne 0x14003eba9
movzx eax, byte [rdx + 1]
lea rcx, [rdx + 1]
xorps xmm1, xmm1
cmovne rcx, rdx
cmp al, 0x30
jl 0x14003ebe6
movss xmm2, dword [0x1400a0a94]
cmp al, 0x39
ja 0x14003ebe6
movzx eax, al
inc rcx
sub eax, 0x30
mulss xmm1, xmm2
movd xmm0, eax
movzx eax, byte [rcx]
cvtdq2ps xmm0, xmm0
addss xmm0, xmm1
movaps xmm1, xmm0
cmp al, 0x30
jge 0x14003ebc0
cmp r9b, 0x2d
jne 0x14003ec04
xorps xmm1, xmmword [0x1400a0c70]
movaps xmm0, xmm1
jmp 0x14003ec0c
call fcn.14005988c
xorps xmm1, xmm1
cvtsd2ss xmm1, xmm0
movaps xmm0, xmm1
jmp 0x14003ec0c
movaps xmm0, xmm2
mov rcx, qword [rsp + 0x80]
xor rcx, rsp
call fcn.140048dc0
add rsp, 0x90
pop rbx
ret
Function at 0x14003ec30
Capabilities:
Encrypt data using rc4 prga

Disassembly:
push rbx
sub rsp, 0x90
mov rax, qword [0x1400af020]
xor rax, rsp
mov qword [rsp + 0x80], rax
mov r8, rcx
mov ebx, edx
movzx ecx, byte [rcx]
test cl, cl
je 0x14003ec76
lea rax, [r8 + 1]
cmp cl, 0x25
jne 0x14003ec66
cmp byte [rax], cl
jne 0x14003ec76
cmp cl, cl
cmovne rax, r8
movzx ecx, byte [rax + 1]
lea r8, [rax + 1]
test cl, cl
jne 0x14003ec57
movzx edx, byte [r8]
cmp dl, 0x25
jne 0x14003edd3
cmp byte [r8 + 1], dl
je 0x14003edd3
lea r11, [rsp + 0x20]
mov r9, r8
lea eax, [rdx - 0x41]
movsx r10d, dl
cmp al, 0x19
ja 0x14003ecb2
lea ecx, [r10 - 0x41]
mov eax, 1
shl eax, cl
test eax, 0x900
je 0x14003ecda
sub dl, 0x61
cmp dl, 0x19
ja 0x14003eccc
lea ecx, [r10 - 0x61]
mov eax, 1
shl eax, cl
test eax, 0x2480a80
je 0x14003ecda
movzx edx, byte [r9 + 1]
inc r9
test dl, dl
jne 0x14003ec95
jmp 0x14003ecdd
inc r9
cmp r8, r9
jae 0x14003ed0f
movabs rdx, 0x800000000000009
nop dword [rax]
movzx ecx, byte [r8]
inc r8
lea eax, [rcx - 0x24]
cmp al, 0x3b
ja 0x14003ed04
bt rdx, rax
jb 0x14003ed0a
mov byte [r11], cl
inc r11
cmp r8, r9
jb 0x14003ecf0
movaps xmm3, xmm2
mov byte [r11], 0
movq r9, xmm2
lea r8, [rsp + 0x20]
mov edx, 0x40
lea rcx, [rsp + 0x40]
call fcn.140003880
cmp byte [rsp + 0x40], 0x20
lea rcx, [rsp + 0x40]
jne 0x14003ed48
nop dword [rax + rax]
inc rcx
cmp byte [rcx], 0x20
je 0x14003ed40
lea eax, [rbx - 8]
cmp eax, 1
jbe 0x14003edc6
movzx r9d, byte [rcx]
movzx r8d, r9b
cmp r9b, 0x2d
jne 0x14003ed63
movzx r8d, byte [rcx + 1]
lea rdx, [rcx + 1]
movzx eax, r8b
cmovne rdx, rcx
cmp r8b, 0x2b
jne 0x14003ed79
movzx eax, byte [rdx + 1]
lea rcx, [rdx + 1]
xorps xmm1, xmm1
cmovne rcx, rdx
cmp al, 0x30
jl 0x14003edb4
movsd xmm2, qword [0x1400a0a48]
cmp al, 0x39
ja 0x14003edb4
movzx eax, al
inc rcx
sub eax, 0x30
mulsd xmm1, xmm2
movd xmm0, eax
movzx eax, byte [rcx]
cvtdq2pd xmm0, xmm0
addsd xmm1, xmm0
cmp al, 0x30
jge 0x14003ed90
cmp r9b, 0x2d
jne 0x14003edce
xorps xmm1, xmmword [0x1400a0c60]
movaps xmm0, xmm1
jmp 0x14003edd6
call fcn.14005988c
movaps xmm1, xmm0
movaps xmm0, xmm1
jmp 0x14003edd6
movaps xmm0, xmm2
mov rcx, qword [rsp + 0x80]
xor rcx, rsp
call fcn.140048dc0
add rsp, 0x90
pop rbx
ret
Function at 0x1400437a0
Capabilities:
Hash data using fnv

Disassembly:
mov qword [rsp + 8], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x30
mov r12, r8
mov rsi, rdx
movzx r15d, byte [r8]
movabs rax, 0xcbf29ce484222325
xor r15, rax
movabs rcx, 0x100000001b3
imul r15, rcx
movzx eax, byte [r8 + 1]
xor r15, rax
imul r15, rcx
movzx eax, byte [r8 + 2]
xor r15, rax
imul r15, rcx
movzx eax, byte [r8 + 3]
xor r15, rax
imul r15, rcx
mov rcx, qword [0x1400b18f0]
and rcx, r15
add rcx, rcx
mov rax, qword [0x1400b18d8]
mov rbx, qword [rax + rcx*8 + 8]
mov r14, qword [0x1400b18c8]
cmp rbx, r14
jne 0x14004382a
mov rbx, r14
mov rbp, r14
jmp 0x140043869
mov rcx, qword [rax + rcx*8]
mov eax, dword [r8]
cmp eax, dword [rbx + 0x10]
je 0x140043844
cmp rbx, rcx
je 0x140043863
mov rbx, qword [rbx + 8]
cmp eax, dword [rbx + 0x10]
jne 0x140043836
mov qword [rdx], rbx
mov byte [rdx + 8], 0
mov rax, rsi
mov rbx, qword [rsp + 0x70]
add rsp, 0x30
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
mov r14, rbx
mov rbp, rbx
movabs rax, 0x492492492492492
cmp qword [0x1400b18d0], rax
je 0x1400439fa
lea rax, [0x1400b18c8]
mov qword [rsp + 0x20], rax
xor r13d, r13d
mov qword [rsp + 0x28], r13
lea ecx, [r13 + 0x38]
call fcn.140049038
mov rdi, rax
mov qword [rsp + 0x28], rax
mov eax, dword [r12]
mov dword [rdi + 0x10], eax
xorps xmm0, xmm0
movups xmmword [rdi + 0x18], xmm0
mov qword [rdi + 0x28], r13
mov qword [rdi + 0x30], 0xf
mov byte [rdi + 0x18], r13b
mov rdx, qword [0x1400b18d0]
lea rcx, [rdx + 1]
xorps xmm0, xmm0
test rcx, rcx
js 0x1400438dd
cvtsi2ss xmm0, rcx
jmp 0x1400438f2
mov rax, rcx
shr rax, 1
and ecx, 1
or rax, rcx
cvtsi2ss xmm0, rax
addss xmm0, xmm0
mov rcx, qword [0x1400b18f8]
xorps xmm1, xmm1
test rcx, rcx
js 0x140043908
cvtsi2ss xmm1, rcx
jmp 0x14004391d
mov rax, rcx
shr rax, 1
and ecx, 1
or rax, rcx
cvtsi2ss xmm1, rax
addss xmm1, xmm1
divss xmm0, xmm1
comiss xmm0, dword [0x1400b18c0]
seta al
test al, al
je 0x14004398d
call fcn.140043b40
mov rcx, qword [0x1400b18f0]
and rcx, r15
add rcx, rcx
mov rdx, qword [0x1400b18d8]
mov rax, qword [rdx + rcx*8 + 8]
mov rbx, qword [0x1400b18c8]
cmp rax, rbx
je 0x140043979
mov rdx, qword [rdx + rcx*8]
mov ecx, dword [rdi + 0x10]
cmp ecx, dword [rax + 0x10]
je 0x140043976
mov rbx, rax
cmp rax, rdx
je 0x1400439d0
mov rax, qword [rax + 8]
cmp ecx, dword [rax + 0x10]
jne 0x140043965
mov rbx, qword [rax]
mov qword [rsp + 0x20], rbx
mov rbp, rbx
mov r14, qword [rsp + 0x20]
mov rdx, qword [0x1400b18d0]
mov r8, qword [rbx + 8]
inc rdx
mov qword [0x1400b18d0], rdx
mov qword [rdi], r14
mov qword [rdi + 8], r8
mov qword [r8], rdi
mov qword [rbx + 8], rdi
mov rax, qword [0x1400b18f0]
and rax, r15
add rax, rax
mov rcx, qword [0x1400b18d8]
mov rdx, qword [rcx + rax*8]
cmp rdx, qword [0x1400b18c8]
jne 0x1400439d7
mov qword [rcx + rax*8], rdi
jmp 0x1400439e9
mov qword [rsp + 0x20], rax
jmp 0x14004397e
cmp rdx, rbp
jne 0x1400439e2
mov qword [rcx + rax*8], rdi
jmp 0x1400439ee
cmp qword [rcx + rax*8 + 8], r8
jne 0x1400439ee
mov qword [rcx + rax*8 + 8], rdi
mov qword [rsi], rdi
mov byte [rsi + 8], 1
jmp 0x14004384b
lea rcx, str.unordered_map_set_too_long
call fcn.1400481c0
int3
Function at 0x140043b40
Capabilities:
Hash data using fnv

Disassembly:
sub rsp, 0x28
mov rcx, qword [0x1400b18d0]
xorps xmm0, xmm0
add rcx, 1
js 0x140043b5b
cvtsi2ss xmm0, rcx
jmp 0x140043b70
mov rax, rcx
and ecx, 1
shr rax, 1
or rax, rcx
cvtsi2ss xmm0, rax
addss xmm0, xmm0
divss xmm0, dword [0x1400b18c0]
call fcn.1400689fc
movss xmm1, dword [0x1400a0b18]
xor ecx, ecx
comiss xmm0, xmm1
jb 0x140043ba2
subss xmm0, xmm1
comiss xmm0, xmm1
jae 0x140043ba2
movabs rax, 0x8000000000000000
mov rcx, rax
mov rdx, qword [0x1400b18f8]
cvttss2si rax, xmm0
add rax, rcx
mov ecx, 8
cmp rax, rcx
cmova rcx, rax
cmp rdx, rcx
jae 0x140043bdb
cmp rdx, 0x200
jae 0x140043bd8
lea rdx, [rdx*8]
cmp rdx, rcx
jae 0x140043bdb
mov rdx, rcx
add rsp, 0x28
jmp 0x140043c10
push rdi
sub rsp, 0x20
movabs rax, 0xfffffffffffffff
mov edi, 1
bsr rcx, rax
mov eax, edi
shl rax, cl
cmp rdx, rax
ja 0x140043dbe
lea rax, [rdx - 1]
mov qword [rsp + 0x30], rbx
mov rbx, qword [0x1400b18c8]
or rax, rdi
bsr rcx, rax
mov r8, rbx
inc ecx
shl rdi, cl
lea rcx, [0x1400b18d8]
lea rdx, [rdi + rdi]
call fcn.1400432e0
mov rax, qword [0x1400b18c8]
lea r9, [rdi - 1]
mov qword [0x1400b18f0], r9
mov qword [0x1400b18f8], rdi
mov rax, qword [rax]
mov rcx, rax
cmp rax, rbx
je 0x140043db3
mov qword [rsp + 0x40], rsi
movabs rdi, 0x100000001b3
movabs rsi, 0xcbf29ce484222325
nop word [rax + rax]
movzx edx, byte [rax + 0x11]
movzx r11d, byte [rax + 0x10]
mov rcx, qword [rcx]
xor r11, rsi
imul r11, rdi
xor r11, rdx
movzx edx, byte [rax + 0x12]
imul r11, rdi
xor r11, rdx
movzx edx, byte [rax + 0x13]
imul r11, rdi
xor r11, rdx
imul r11, rdi
and r11, r9
shl r11, 4
add r11, qword [0x1400b18d8]
mov r9, qword [r11]
cmp r9, rbx
jne 0x140043cff
mov qword [r11], rax
mov qword [r11 + 8], rax
jmp 0x140043d74
mov rdx, qword [r11 + 8]
mov r8d, dword [rax + 0x10]
cmp r8d, dword [rdx + 0x10]
jne 0x140043d3c
mov r10, qword [rdx]
cmp r10, rax
je 0x140043d36
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 0x140043d74
cmp r9, rdx
je 0x140043d50
mov rdx, qword [rdx + 8]
cmp r8d, dword [rdx + 0x10]
je 0x140043d88
cmp r9, rdx
jne 0x140043d41
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 0x140043dae
mov r9, qword [0x1400b18f0]
jmp 0x140043cb0
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 0x140043d74
mov rsi, qword [rsp + 0x40]
mov rbx, qword [rsp + 0x30]
add rsp, 0x20
pop rdi
ret
lea rcx, str.invalid_hash_bucket_count
call fcn.1400481c0
int3
Function at 0x140043c10
Capabilities:
Hash data using fnv

Disassembly:
sub rsp, 0x28
mov rcx, qword [0x1400b18d0]
xorps xmm0, xmm0
add rcx, 1
js 0x140043b5b
cvtsi2ss xmm0, rcx
jmp 0x140043b70
mov rax, rcx
and ecx, 1
shr rax, 1
or rax, rcx
cvtsi2ss xmm0, rax
addss xmm0, xmm0
divss xmm0, dword [0x1400b18c0]
call fcn.1400689fc
movss xmm1, dword [0x1400a0b18]
xor ecx, ecx
comiss xmm0, xmm1
jb 0x140043ba2
subss xmm0, xmm1
comiss xmm0, xmm1
jae 0x140043ba2
movabs rax, 0x8000000000000000
mov rcx, rax
mov rdx, qword [0x1400b18f8]
cvttss2si rax, xmm0
add rax, rcx
mov ecx, 8
cmp rax, rcx
cmova rcx, rax
cmp rdx, rcx
jae 0x140043bdb
cmp rdx, 0x200
jae 0x140043bd8
lea rdx, [rdx*8]
cmp rdx, rcx
jae 0x140043bdb
mov rdx, rcx
add rsp, 0x28
jmp 0x140043c10
push rdi
sub rsp, 0x20
movabs rax, 0xfffffffffffffff
mov edi, 1
bsr rcx, rax
mov eax, edi
shl rax, cl
cmp rdx, rax
ja 0x140043dbe
lea rax, [rdx - 1]
mov qword [rsp + 0x30], rbx
mov rbx, qword [0x1400b18c8]
or rax, rdi
bsr rcx, rax
mov r8, rbx
inc ecx
shl rdi, cl
lea rcx, [0x1400b18d8]
lea rdx, [rdi + rdi]
call fcn.1400432e0
mov rax, qword [0x1400b18c8]
lea r9, [rdi - 1]
mov qword [0x1400b18f0], r9
mov qword [0x1400b18f8], rdi
mov rax, qword [rax]
mov rcx, rax
cmp rax, rbx
je 0x140043db3
mov qword [rsp + 0x40], rsi
movabs rdi, 0x100000001b3
movabs rsi, 0xcbf29ce484222325
nop word [rax + rax]
movzx edx, byte [rax + 0x11]
movzx r11d, byte [rax + 0x10]
mov rcx, qword [rcx]
xor r11, rsi
imul r11, rdi
xor r11, rdx
movzx edx, byte [rax + 0x12]
imul r11, rdi
xor r11, rdx
movzx edx, byte [rax + 0x13]
imul r11, rdi
xor r11, rdx
imul r11, rdi
and r11, r9
shl r11, 4
add r11, qword [0x1400b18d8]
mov r9, qword [r11]
cmp r9, rbx
jne 0x140043cff
mov qword [r11], rax
mov qword [r11 + 8], rax
jmp 0x140043d74
mov rdx, qword [r11 + 8]
mov r8d, dword [rax + 0x10]
cmp r8d, dword [rdx + 0x10]
jne 0x140043d3c
mov r10, qword [rdx]
cmp r10, rax
je 0x140043d36
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 0x140043d74
cmp r9, rdx
je 0x140043d50
mov rdx, qword [rdx + 8]
cmp r8d, dword [rdx + 0x10]
je 0x140043d88
cmp r9, rdx
jne 0x140043d41
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 0x140043dae
mov r9, qword [0x1400b18f0]
jmp 0x140043cb0
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 0x140043d74
mov rsi, qword [rsp + 0x40]
mov rbx, qword [rsp + 0x30]
add rsp, 0x20
pop rdi
ret
lea rcx, str.invalid_hash_bucket_count
call fcn.1400481c0
int3