joyce8/EMBER2024-capa huggingface dataset:
Function at 0x5a4280
Capabilities:
Access peb ldr_data

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x6db7f7
mov eax, dword fs:[0]
push eax
push ecx
push esi
push edi
mov eax, dword [0x7ce134]
xor eax, ebp
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov edi, ecx
mov dword [ebp - 0x10], edi
mov esi, dword [ebp + 8]
lea ecx, [edi + 0x10]
mov dword [edi + 4], esi
mov dword [edi], vtable.google::protobuf::FileDescriptorProto.0
mov dword [edi + 8], 0
push esi
mov dword [edi + 0xc], 0
call fcn.0046ee50
mov dword [ebp - 4], 0
mov dword [edi + 0x20], esi
mov dword [edi + 0x24], 0
mov dword [edi + 0x28], 0
mov dword [edi + 0x2c], 0
mov dword [edi + 0x30], esi
mov dword [edi + 0x34], 0
mov dword [edi + 0x38], 0
mov dword [edi + 0x3c], 0
mov dword [edi + 0x40], esi
mov dword [edi + 0x44], 0
mov dword [edi + 0x48], 0
mov dword [edi + 0x4c], 0
mov dword [edi + 0x50], esi
mov dword [edi + 0x54], 0
mov dword [edi + 0x58], 0
mov dword [edi + 0x5c], 0
push esi
lea ecx, [edi + 0x60]
mov byte [ebp - 4], 4
call fcn.0046ed70
push esi
lea ecx, [edi + 0x6c]
mov byte [ebp - 4], 5
call fcn.0046ed70
xorps xmm0, xmm0
mov dword [edi + 0x78], 0x7da200
mov dword [edi + 0x7c], 0x7da200
mov eax, edi
mov dword [edi + 0x80], 0x7da200
movq qword [edi + 0x84], xmm0
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov esp, ebp
pop ebp
ret 4

Function at 0x5a4630
Capabilities:
Access peb ldr_data

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x6db86b
mov eax, dword fs:[0]
push eax
push ecx
push esi
push edi
mov eax, dword [0x7ce134]
xor eax, ebp
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov edi, ecx
mov dword [ebp - 0x10], edi
mov esi, dword [ebp + 8]
lea ecx, [edi + 0x10]
mov dword [edi + 4], esi
mov dword [edi], vtable.google::protobuf::SourceCodeInfo_Location.0
mov dword [edi + 8], 0
push esi
mov dword [edi + 0xc], 0
call fcn.0046ed70
push esi
lea ecx, [edi + 0x20]
mov dword [ebp - 4], 0
mov dword [edi + 0x1c], 0
call fcn.0046ed70
push esi
lea ecx, [edi + 0x30]
mov byte [ebp - 4], 1
mov dword [edi + 0x2c], 0
call fcn.0046ee50
mov dword [edi + 0x40], 0x7da200
mov eax, edi
mov dword [edi + 0x44], 0x7da200
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov esp, ebp
pop ebp
ret 4

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

Disassembly:
push ebp
mov ebp, esp
mov eax, dword [ebp + 8]
push esi
push edi
mov esi, eax
cmp dword [eax + 0x14], 0x10
jb 0x5a7e92
mov esi, dword [eax]
mov edi, dword [eax + 0x10]
xor ecx, ecx
mov edx, 0x811c9dc5
test edi, edi
je 0x5a7eb1
movzx eax, byte [ecx + esi]
inc ecx
xor eax, edx
imul edx, eax, 0x1000193
cmp ecx, edi
jb 0x5a7ea0
pop edi
mov eax, edx
pop esi
pop ebp
ret 4
Function at 0x5aa560
Capabilities:
Hash data using fnv

Disassembly:
push ebp
mov ebp, esp
sub esp, 8
xor ecx, ecx
push ebx
mov ebx, dword [ebp + 8]
push esi
push edi
mov edi, dword [ebp + 0xc]
mov edx, dword [edi + 4]
mov esi, dword [edi + 8]
add esi, edx
cmp edx, esi
jae 0x5aa58d
nop dword [eax]
movsx eax, byte [edx]
lea ecx, [ecx + ecx*4]
inc edx
add ecx, eax
cmp edx, esi
jb 0x5aa580
imul eax, dword [edi], 0x1000193
xor eax, ecx
mov ecx, ebx
push eax
push edi
lea eax, [ebp - 8]
push eax
call fcn.005ab7d0
mov eax, dword [eax + 4]
test eax, eax
je 0x5aa5b8
cmp eax, dword [ebx + 4]
je 0x5aa5b8
mov eax, dword [eax + 0x14]
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
pop edi
pop esi
xor eax, eax
pop ebx
mov esp, ebp
pop ebp
ret
Function at 0x5ac710
Capabilities:
Encode data using xor
Hash data using fnv

Disassembly:
push ebp
mov ebp, esp
sub esp, 8
mov edx, dword [ebp + 8]
mov eax, ecx
push ebx
push esi
push edi
cmp dword [edx + 0x14], 0x10
mov edi, edx
mov dword [ebp - 4], eax
jb 0x5ac72b
mov edi, dword [edx]
mov ebx, dword [edx + 0x10]
xor ecx, ecx
mov esi, 0x811c9dc5
test ebx, ebx
je 0x5ac754
nop dword [eax]
movzx eax, byte [ecx + edi]
inc ecx
xor eax, esi
imul esi, eax, 0x1000193
cmp ecx, ebx
jb 0x5ac740
mov eax, dword [ebp - 4]
push esi
push edx
lea ecx, [ebp - 8]
push ecx
mov ecx, eax
call fcn.005ab860
xor ecx, ecx
pop edi
pop esi
cmp dword [eax + 4], ecx
pop ebx
setne cl
mov eax, ecx
mov esp, ebp
pop ebp
ret 4
Function at 0x5ac7d0
Capabilities:
Hash data using fnv

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x6d9de5
mov eax, dword fs:[0]
push eax
sub esp, 0x10
push ebx
push esi
push edi
mov eax, dword [0x7ce134]
xor eax, ebp
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov edi, ecx
mov ebx, dword [ebp + 0xc]
imul eax, dword [ebx], 0x100011b
imul ecx, dword [ebx + 4], 0x1000193
xor ecx, eax
lea eax, [ebp - 0x14]
push ecx
push ebx
mov dword [ebp + 0xc], ecx
mov ecx, edi
push eax
call fcn.00478540
mov ecx, dword [ebp - 0x10]
test ecx, ecx
je 0x5ac840
mov eax, dword [ebp + 8]
mov dword [eax], ecx
mov byte [eax + 4], 0
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 8
cmp dword [edi + 8], 0xccccccc
je 0x5ac9a2
lea eax, [edi + 4]
mov dword [ebp - 0x1c], eax
push 0x14
mov dword [ebp - 4], 0
mov dword [ebp - 0x18], 0
call fcn.0054d1de
movq xmm0, qword [ebx]
mov esi, eax
add esp, 4
mov dword [ebp - 0x18], esi
movq qword [esi + 8], xmm0
mov ecx, dword [ebx + 8]
mov dword [esi + 0x10], ecx
mov eax, dword [edi + 8]
mov ebx, dword [edi + 0x1c]
inc eax
movss xmm3, dword [edi]
mov dword [ebp - 4], 1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x6eace0]
mov eax, ebx
shr eax, 0x1f
cvtpd2ps xmm2, xmm0
movd xmm0, ebx
cvtdq2pd xmm0, xmm0
movaps xmm1, xmm2
addsd xmm0, qword [eax*8 + 0x6eace0]
cvtpd2ps xmm0, xmm0
divss xmm1, xmm0
comiss xmm1, xmm3
jbe 0x5ac93b
divss xmm2, xmm3
sub esp, 8
cvtps2pd xmm0, xmm2
movsd qword [ebp - 0x14], xmm0
fld qword [ebp - 0x14]
fstp qword [esp]
call fcn.00566ac0
fstp qword [ebp - 0x14]
movsd xmm0, qword [ebp - 0x14]
add esp, 8
cvtpd2ps xmm0, xmm0
call fcn.0054dcd0
mov ecx, 8
cmp eax, ecx
cmova ecx, eax
cmp ebx, ecx
jae 0x5ac91c
cmp ebx, 0x200
jae 0x5ac91a
shl ebx, 3
cmp ebx, ecx
jae 0x5ac91c
mov ebx, ecx
push ebx
mov ecx, edi
call fcn.005cded0
mov ebx, dword [ebp + 0xc]
lea eax, [esi + 8]
push ebx
push eax
lea eax, [ebp - 0x14]
mov ecx, edi
push eax
call fcn.00478540
mov edx, dword [eax]
jmp 0x5ac941
mov edx, dword [ebp - 0x14]
mov ebx, dword [ebp + 0xc]
mov eax, dword [edi + 8]
mov ecx, dword [edx + 4]
inc eax
mov dword [edi + 8], eax
mov dword [esi], edx
mov dword [esi + 4], ecx
mov dword [ecx], esi
mov dword [edx + 4], esi
mov eax, dword [edi + 0x18]
and eax, ebx
mov dword [ebp + 0xc], ecx
mov ecx, dword [edi + 0xc]
mov ebx, dword [ebp - 0x1c]
mov edi, dword [ecx + eax*8]
cmp edi, dword [ebx]
jne 0x5ac96f
mov dword [ecx + eax*8], esi
jmp 0x5ac981
cmp edi, edx
jne 0x5ac978
mov dword [ecx + eax*8], esi
jmp 0x5ac985
mov edx, dword [ebp + 0xc]
cmp dword [ecx + eax*8 + 4], edx
jne 0x5ac985
mov dword [ecx + eax*8 + 4], esi
mov eax, dword [ebp + 8]
mov dword [eax], esi
mov byte [eax + 4], 1
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 8
push str.unordered_map_set_too_long
call fcn.0054c6a3
int3
Function at 0x5ac9b0
Capabilities:
Hash data using fnv

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x6dbc95
mov eax, dword fs:[0]
push eax
sub esp, 0x14
push esi
push edi
mov eax, dword [0x7ce134]
xor eax, ebp
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x14], ecx
mov ecx, dword [ebp + 0xc]
xor edx, edx
mov esi, dword [ecx + 4]
mov edi, dword [ecx + 8]
add edi, esi
cmp esi, edi
jae 0x5ac9fd
nop dword [eax + eax]
movsx eax, byte [esi]
lea edx, [edx + edx*4]
inc esi
add edx, eax
cmp esi, edi
jb 0x5ac9f0
imul eax, dword [ecx], 0x1000193
mov edi, dword [ebp - 0x14]
xor eax, edx
push eax
mov dword [ebp - 0x10], eax
lea eax, [ebp - 0x20]
push ecx
push eax
mov ecx, edi
call fcn.005ab7d0
mov ecx, dword [ebp - 0x1c]
test ecx, ecx
je 0x5aca3b
mov eax, dword [ebp + 8]
mov dword [eax], ecx
mov byte [eax + 4], 0
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov esp, ebp
pop ebp
ret 8
cmp dword [edi + 8], 0xaaaaaaa
je 0x5acb97
lea eax, [edi + 4]
mov dword [ebp - 0x18], eax
push 0x18
mov dword [ebp - 4], 0
mov dword [ebp - 0x14], 0
call fcn.0054d1de
mov esi, eax
add esp, 4
mov eax, dword [ebp + 0xc]
mov dword [ebp - 0x14], esi
movups xmm0, xmmword [eax]
movups xmmword [esi + 8], xmm0
mov eax, dword [edi + 8]
inc eax
movss xmm3, dword [edi]
mov dword [ebp - 4], 1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x6eace0]
mov eax, dword [edi + 0x1c]
cvtpd2ps xmm2, xmm0
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
movaps xmm1, xmm2
addsd xmm0, qword [eax*8 + 0x6eace0]
cvtpd2ps xmm0, xmm0
divss xmm1, xmm0
comiss xmm1, xmm3
jbe 0x5acb30
divss xmm2, xmm3
sub esp, 8
cvtps2pd xmm0, xmm2
movsd qword [ebp - 0x20], xmm0
fld qword [ebp - 0x20]
fstp qword [esp]
call fcn.00566ac0
fstp qword [ebp - 0x20]
movsd xmm0, qword [ebp - 0x20]
add esp, 8
cvtpd2ps xmm0, xmm0
call fcn.0054dcd0
mov ecx, 8
cmp eax, ecx
cmova ecx, eax
mov eax, dword [edi + 0x1c]
cmp eax, ecx
jae 0x5acb12
cmp eax, 0x200
jae 0x5acb10
shl eax, 3
cmp eax, ecx
jae 0x5acb12
mov eax, ecx
push eax
mov ecx, edi
call fcn.005ce030
push dword [ebp - 0x10]
lea eax, [esi + 8]
mov ecx, edi
push eax
lea eax, [ebp - 0x20]
push eax
call fcn.005ab7d0
mov edx, dword [eax]
jmp 0x5acb33
mov edx, dword [ebp - 0x20]
mov eax, dword [edi + 8]
mov ecx, dword [edx + 4]
inc eax
mov dword [edi + 8], eax
mov dword [esi], edx
mov dword [esi + 4], ecx
mov dword [ecx], esi
mov dword [edx + 4], esi
mov eax, dword [edi + 0x18]
and eax, dword [ebp - 0x10]
mov esi, dword [ebp - 0x18]
mov dword [ebp + 0xc], ecx
mov ecx, dword [edi + 0xc]
mov edi, dword [ecx + eax*8]
cmp edi, dword [esi]
mov esi, dword [ebp - 0x14]
jne 0x5acb65
mov dword [ecx + eax*8], esi
jmp 0x5acb77
cmp edi, edx
jne 0x5acb6e
mov dword [ecx + eax*8], esi
jmp 0x5acb7b
mov edx, dword [ebp + 0xc]
cmp dword [ecx + eax*8 + 4], edx
jne 0x5acb7b
mov dword [ecx + eax*8 + 4], esi
mov eax, dword [ebp + 8]
mov dword [eax], esi
mov byte [eax + 4], 1
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov esp, ebp
pop ebp
ret 8
push str.unordered_map_set_too_long
call fcn.0054c6a3
int3
Function at 0x5acbb0
Capabilities:
Hash data using fnv

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x6dbcd5
mov eax, dword fs:[0]
push eax
sub esp, 0x14
push esi
push edi
mov eax, dword [0x7ce134]
xor eax, ebp
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x14], ecx
mov ecx, dword [ebp + 0xc]
xor edx, edx
mov esi, dword [ecx + 4]
mov edi, dword [ecx + 8]
add edi, esi
cmp esi, edi
jae 0x5acbfd
nop dword [eax + eax]
movsx eax, byte [esi]
lea edx, [edx + edx*4]
inc esi
add edx, eax
cmp esi, edi
jb 0x5acbf0
imul eax, dword [ecx], 0x1000193
mov edi, dword [ebp - 0x14]
xor eax, edx
push eax
mov dword [ebp - 0x10], eax
lea eax, [ebp - 0x20]
push ecx
push eax
mov ecx, edi
call fcn.005ab7d0
mov ecx, dword [ebp - 0x1c]
test ecx, ecx
je 0x5acc3b
mov eax, dword [ebp + 8]
mov dword [eax], ecx
mov byte [eax + 4], 0
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov esp, ebp
pop ebp
ret 8
cmp dword [edi + 8], 0x9249249
je 0x5acd9d
lea eax, [edi + 4]
mov dword [ebp - 0x18], eax
push 0x1c
mov dword [ebp - 4], 0
mov dword [ebp - 0x14], 0
call fcn.0054d1de
mov ecx, dword [ebp + 0xc]
mov esi, eax
add esp, 4
mov dword [ebp - 0x14], esi
movups xmm0, xmmword [ecx]
movups xmmword [esi + 8], xmm0
mov ecx, dword [ecx + 0x10]
mov dword [esi + 0x18], ecx
mov eax, dword [edi + 8]
inc eax
movss xmm3, dword [edi]
mov dword [ebp - 4], 1
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x6eace0]
mov eax, dword [edi + 0x1c]
cvtpd2ps xmm2, xmm0
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
movaps xmm1, xmm2
addsd xmm0, qword [eax*8 + 0x6eace0]
cvtpd2ps xmm0, xmm0
divss xmm1, xmm0
comiss xmm1, xmm3
jbe 0x5acd36
divss xmm2, xmm3
sub esp, 8
cvtps2pd xmm0, xmm2
movsd qword [ebp - 0x20], xmm0
fld qword [ebp - 0x20]
fstp qword [esp]
call fcn.00566ac0
fstp qword [ebp - 0x20]
movsd xmm0, qword [ebp - 0x20]
add esp, 8
cvtpd2ps xmm0, xmm0
call fcn.0054dcd0
mov ecx, 8
cmp eax, ecx
cmova ecx, eax
mov eax, dword [edi + 0x1c]
cmp eax, ecx
jae 0x5acd18
cmp eax, 0x200
jae 0x5acd16
shl eax, 3
cmp eax, ecx
jae 0x5acd18
mov eax, ecx
push eax
mov ecx, edi
call fcn.005ce030
push dword [ebp - 0x10]
lea eax, [esi + 8]
mov ecx, edi
push eax
lea eax, [ebp - 0x20]
push eax
call fcn.005ab7d0
mov edx, dword [eax]
jmp 0x5acd39
mov edx, dword [ebp - 0x20]
mov eax, dword [edi + 8]
mov ecx, dword [edx + 4]
inc eax
mov dword [edi + 8], eax
mov dword [esi], edx
mov dword [esi + 4], ecx
mov dword [ecx], esi
mov dword [edx + 4], esi
mov eax, dword [edi + 0x18]
and eax, dword [ebp - 0x10]
mov esi, dword [ebp - 0x18]
mov dword [ebp + 0xc], ecx
mov ecx, dword [edi + 0xc]
mov edi, dword [ecx + eax*8]
cmp edi, dword [esi]
mov esi, dword [ebp - 0x14]
jne 0x5acd6b
mov dword [ecx + eax*8], esi
jmp 0x5acd7d
cmp edi, edx
jne 0x5acd74
mov dword [ecx + eax*8], esi
jmp 0x5acd81
mov edx, dword [ebp + 0xc]
cmp dword [ecx + eax*8 + 4], edx
jne 0x5acd81
mov dword [ecx + eax*8 + 4], esi
mov eax, dword [ebp + 8]
mov dword [eax], esi
mov byte [eax + 4], 1
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov esp, ebp
pop ebp
ret 8
push str.unordered_map_set_too_long
call fcn.0054c6a3
int3
Function at 0x5adb50
Capabilities:
Access peb ldr_data

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x6dbf0c
mov eax, dword fs:[0]
push eax
push ecx
push esi
push edi
mov eax, dword [0x7ce134]
xor eax, ebp
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov edi, ecx
mov dword [ebp - 0x10], edi
mov eax, dword [ebp + 8]
mov dword [edi], eax
mov eax, dword [ebp + 0xc]
mov dword [edi + 4], eax
mov eax, dword [ebp + 0x10]
mov dword [edi + 8], eax
mov dword [edi + 0xc], 0
mov dword [edi + 0x10], 0
mov dword [edi + 0x14], 0
mov byte [edi + 0x18], 0
mov dword [edi + 0x1c], 0
mov dword [ebp - 4], 0
mov dword [edi + 0x2c], 0
mov dword [edi + 0x30], 0xf
mov byte [edi + 0x1c], 0
lea esi, [edi + 0x3c]
mov byte [ebp - 4], 1
push 0x14
mov dword [ebp + 8], esi
mov dword [esi], 0
mov dword [esi + 4], 0
call fcn.0054d1de
mov dword [eax], eax
mov dword [eax + 4], eax
mov dword [eax + 8], eax
mov word [eax + 0xc], 0x101
mov dword [esi], eax
lea esi, [edi + 0x44]
mov byte [ebp - 4], 2
push 0x14
mov dword [ebp + 8], esi
mov dword [esi], 0
mov dword [esi + 4], 0
call fcn.0054d1de
add esp, 8
mov dword [eax], eax
mov dword [eax + 4], eax
mov dword [eax + 8], eax
mov word [eax + 0xc], 0x101
mov dword [esi], eax
mov dword [edi + 0x4c], 0
mov dword [edi + 0x50], 0
mov dword [edi + 0x60], 0
mov dword [edi + 0x64], 0xf
mov byte [edi + 0x50], 0
mov dword [edi + 0x68], 0
mov eax, edi
mov dword [edi + 0x7c], 0xf
mov dword [edi + 0x78], 0
mov byte [edi + 0x68], 0
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov esp, ebp
pop ebp
ret 0xc
Function at 0x5c2640
Capabilities:
Hash data using fnv

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x10
mov eax, dword [ecx + 8]
mov edx, dword [ebp + 8]
push esi
mov dword [ebp - 4], edx
mov esi, dword [eax + 0x58]
imul eax, ecx, 0x100011b
imul edx, edx, 0x1000193
mov dword [ebp - 8], ecx
lea ecx, [esi + 0x70]
xor edx, eax
lea eax, [ebp - 8]
push edx
push eax
lea eax, [ebp - 0x10]
push eax
call fcn.00478540
mov eax, dword [eax + 4]
test eax, eax
je 0x5c268e
cmp eax, dword [esi + 0x74]
je 0x5c268e
mov eax, dword [eax + 0x10]
test eax, eax
je 0x5c268e
cmp byte [eax + 0x27], 0
je 0x5c2690
xor eax, eax
pop esi
mov esp, ebp
pop ebp
ret 4

Function at 0x5c26a0
Capabilities:
Hash data using fnv

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x10
mov eax, dword [ebp + 0xc]
mov edx, dword [ebp + 8]
push esi
lea esi, [ecx + 0x70]
mov dword [ebp - 4], eax
imul ecx, eax, 0x1000193
imul eax, edx, 0x100011b
mov dword [ebp - 8], edx
xor ecx, eax
lea eax, [ebp - 8]
push ecx
push eax
lea eax, [ebp - 0x10]
mov ecx, esi
push eax
call fcn.00478540
mov eax, dword [eax + 4]
test eax, eax
je 0x5c26ea
cmp eax, dword [esi + 4]
je 0x5c26ea
mov eax, dword [eax + 0x10]
pop esi
mov esp, ebp
pop ebp
ret 8
xor eax, eax
pop esi
mov esp, ebp
pop ebp
ret 8

Function at 0x5c2920
Capabilities:
Hash data using fnv

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x14
mov edx, dword [ebp + 0x10]
push ebx
mov ebx, dword [ebp + 0xc]
push esi
mov esi, dword [ebp + 0x14]
push edi
mov dword [ebp - 0xc], esi
mov edi, ecx
add esi, edx
mov dword [ebp - 0x14], ebx
xor ecx, ecx
mov dword [ebp - 0x10], edx
cmp edx, esi
jae 0x5c2952
movsx eax, byte [edx]
lea ecx, [ecx + ecx*4]
inc edx
add ecx, eax
cmp edx, esi
jb 0x5c2945
imul eax, ebx, 0x1000193
xor eax, ecx
mov ecx, edi
push eax
lea eax, [ebp - 0x14]
push eax
lea eax, [ebp - 8]
push eax
call fcn.005ab7d0
mov edx, dword [eax + 4]
test edx, edx
je 0x5c2976
mov esi, dword [edi + 4]
jmp 0x5c297b
mov edx, dword [edi + 4]
mov esi, edx
mov edi, dword [0x85a178]
lea eax, [edx + 0x14]
xor ecx, ecx
cmp edx, esi
mov esi, dword [0x85a17c]
cmovne ecx, eax
test ecx, ecx
jne 0x5c299b
mov edx, edi
mov ecx, esi
jmp 0x5c29a0
mov edx, dword [ecx]
mov ecx, dword [ecx + 4]
mov eax, dword [ebp + 8]
cmp edx, dword [ebp + 0x18]
je 0x5c29b6
mov dword [eax], edi
pop edi
mov dword [eax + 4], esi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0x14
pop edi
pop esi
mov dword [eax], edx
mov dword [eax + 4], ecx
pop ebx
mov esp, ebp
pop ebp
ret 0x14

Function at 0x5c2e30
Capabilities:
Hash data using fnv

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x10
mov eax, dword [ecx + 8]
mov edx, dword [ebp + 8]
push esi
mov dword [ebp - 4], edx
mov esi, dword [eax + 0x58]
imul eax, ecx, 0x100011b
imul edx, edx, 0x1000193
mov dword [ebp - 8], ecx
lea ecx, [esi + 0x90]
xor edx, eax
lea eax, [ebp - 8]
push edx
push eax
lea eax, [ebp - 0x10]
push eax
call fcn.00478540
mov eax, dword [eax + 4]
test eax, eax
je 0x5c2e81
cmp eax, dword [esi + 0x94]
je 0x5c2e81
mov eax, dword [eax + 0x10]
pop esi
mov esp, ebp
pop ebp
ret 4
xor eax, eax
pop esi
mov esp, ebp
pop ebp
ret 4
Function at 0x5cded0
Capabilities:
Hash data using fnv

Disassembly:
push ebp
mov ebp, esp
sub esp, 0xc
mov edx, dword [ebp + 8]
mov eax, 0x1fffffff
push ebx
mov ebx, ecx
bsr ecx, eax
push esi
push edi
mov edi, 1
mov dword [ebp - 0xc], ebx
mov eax, edi
shl eax, cl
cmp edx, eax
ja 0x5ce021
mov esi, dword [ebx + 4]
lea eax, [edx - 1]
or eax, edi
mov dword [ebp + 8], esi
bsr ecx, eax
push esi
lea ecx, [ecx + 1]
shl edi, cl
lea ecx, [ebx + 0xc]
lea eax, [edi + edi]
push eax
call fcn.0047d930
mov ecx, dword [ebx + 4]
lea eax, [edi - 1]
mov dword [ebx + 0x18], eax
mov dword [ebx + 0x1c], edi
mov ecx, dword [ecx]
mov edx, ecx
cmp ecx, esi
je 0x5cdff7
imul eax, dword [ecx + 8], 0x100011b
mov ebx, dword [ecx + 0xc]
mov edx, dword [edx]
imul edi, ebx, 0x1000193
xor edi, eax
mov eax, dword [ebp - 0xc]
and edi, dword [eax + 0x18]
mov eax, dword [eax + 0xc]
lea eax, [eax + edi*8]
mov edi, dword [eax]
mov dword [ebp - 8], eax
cmp edi, esi
jne 0x5cdf65
mov dword [eax], ecx
mov dword [eax + 4], ecx
jmp 0x5cdfed
mov eax, dword [eax + 4]
mov esi, dword [ecx + 8]
cmp esi, dword [eax + 8]
mov esi, dword [ebp + 8]
jne 0x5cdfa7
cmp ebx, dword [eax + 0xc]
jne 0x5cdfa7
mov eax, dword [eax]
mov dword [ebp - 4], eax
cmp eax, ecx
je 0x5cdf9f
mov ebx, dword [ecx + 4]
mov esi, dword [ebp - 4]
mov dword [ebx], edx
mov edi, dword [edx + 4]
mov dword [edi], eax
mov eax, dword [eax + 4]
mov dword [eax], ecx
mov dword [esi + 4], edi
mov esi, dword [ebp + 8]
mov dword [edx + 4], ebx
mov dword [ecx + 4], eax
mov eax, dword [ebp - 8]
mov dword [eax + 4], ecx
jmp 0x5cdfed
mov dword [ebp - 4], eax
cmp edi, eax
je 0x5cdfc7
nop
mov eax, dword [eax + 4]
mov esi, dword [ecx + 8]
mov dword [ebp - 4], eax
cmp esi, dword [eax + 8]
jne 0x5cdfc3
cmp ebx, dword [eax + 0xc]
je 0x5ce000
cmp edi, eax
jne 0x5cdfb0
mov ebx, dword [ecx + 4]
mov eax, dword [ebp - 4]
mov esi, dword [ebp - 4]
mov dword [ebx], edx
mov edi, dword [edx + 4]
mov dword [edi], eax
mov eax, dword [eax + 4]
mov dword [eax], ecx
mov dword [esi + 4], edi
mov dword [edx + 4], ebx
mov dword [ecx + 4], eax
mov eax, dword [ebp - 8]
mov dword [eax], ecx
mov esi, dword [ebp + 8]
mov ecx, edx
cmp edx, esi
jne 0x5cdf32
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4
mov ebx, dword [ecx + 4]
mov eax, dword [eax]
mov dword [ebp - 8], eax
mov esi, eax
mov dword [ebx], edx
mov edi, dword [edx + 4]
mov dword [edi], eax
mov eax, dword [eax + 4]
mov dword [eax], ecx
mov dword [esi + 4], edi
mov dword [edx + 4], ebx
mov dword [ecx + 4], eax
jmp 0x5cdfea
push str.invalid_hash_bucket_count
call fcn.0054c6a3
int3
Function at 0x5ce030
Capabilities:
Hash data using fnv

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x10
mov edx, dword [ebp + 8]
mov eax, 0x1fffffff
push ebx
mov ebx, ecx
bsr ecx, eax
push esi
mov esi, 1
mov dword [ebp - 0x10], ebx
mov eax, esi
shl eax, cl
push edi
cmp edx, eax
ja 0x5ce1c8
lea eax, [edx - 1]
or eax, esi
bsr ecx, eax
mov eax, dword [ebx + 4]
push eax
mov dword [ebp - 4], eax
lea ecx, [ecx + 1]
shl esi, cl
lea ecx, [ebx + 0xc]
lea eax, [esi + esi]
push eax
call fcn.0047d930
mov edi, dword [ebx + 4]
lea eax, [esi - 1]
mov ecx, dword [ebp - 4]
mov dword [ebx + 0x18], eax
mov dword [ebx + 0x1c], esi
mov edi, dword [edi]
mov eax, edi
cmp edi, ecx
je 0x5ce1a0
mov ebx, dword [edi + 0xc]
xor edx, edx
mov esi, dword [edi + 0x10]
mov eax, dword [eax]
add esi, ebx
mov dword [ebp + 8], eax
mov dword [ebp - 0xc], esi
cmp ebx, esi
jae 0x5ce0c0
mov ecx, esi
nop dword [eax]
movsx esi, byte [ebx]
lea edx, [edx + edx*4]
inc ebx
add edx, esi
cmp ebx, ecx
jb 0x5ce0b0
mov ecx, dword [ebp - 4]
imul esi, dword [edi + 8], 0x1000193
xor esi, edx
mov edx, dword [ebp - 0x10]
and esi, dword [edx + 0x18]
mov edx, dword [edx + 0xc]
mov ebx, dword [edx + esi*8]
lea edx, [edx + esi*8]
mov dword [ebp - 0xc], edx
mov dword [ebp - 8], ebx
cmp ebx, ecx
jne 0x5ce0ec
mov dword [edx], edi
mov dword [edx + 4], edi
jmp 0x5ce194
mov esi, dword [edx + 4]
mov ecx, dword [edi + 8]
cmp ecx, dword [esi + 8]
jne 0x5ce13b
push dword [esi + 0x10]
push dword [esi + 0xc]
push dword [edi + 0x10]
push dword [edi + 0xc]
call fcn.005afde0
add esp, 0x10
test al, al
mov eax, dword [ebp + 8]
je 0x5ce138
mov ebx, dword [esi]
cmp ebx, edi
je 0x5ce130
mov esi, dword [edi + 4]
mov dword [esi], eax
mov edx, dword [eax + 4]
mov dword [edx], ebx
mov ecx, dword [ebx + 4]
mov dword [ecx], edi
mov dword [ebx + 4], edx
mov dword [eax + 4], esi
mov dword [edi + 4], ecx
mov ecx, dword [ebp - 0xc]
mov dword [ecx + 4], edi
jmp 0x5ce191
mov ecx, dword [edi + 8]
mov ebx, esi
cmp dword [ebp - 8], esi
je 0x5ce174
mov eax, dword [ebp - 8]
mov esi, dword [esi + 4]
mov ebx, esi
cmp ecx, dword [esi + 8]
jne 0x5ce16d
push dword [esi + 0x10]
push dword [esi + 0xc]
push dword [edi + 0x10]
push dword [edi + 0xc]
call fcn.005afde0
add esp, 0x10
test al, al
jne 0x5ce1a9
mov eax, dword [ebp - 8]
mov ecx, dword [edi + 8]
cmp eax, esi
jne 0x5ce145
mov eax, dword [ebp + 8]
mov esi, dword [edi + 4]
mov dword [esi], eax
mov edx, dword [eax + 4]
mov dword [edx], ebx
mov ecx, dword [ebx + 4]
mov dword [ecx], edi
mov dword [ebx + 4], edx
mov dword [eax + 4], esi
mov dword [edi + 4], ecx
mov ecx, dword [ebp - 0xc]
mov dword [ecx], edi
mov ecx, dword [ebp - 4]
mov edi, eax
cmp eax, ecx
jne 0x5ce095
nop
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4
mov ebx, dword [esi]
mov esi, dword [edi + 4]
mov eax, dword [ebp + 8]
mov dword [esi], eax
mov edx, dword [eax + 4]
mov dword [edx], ebx
mov ecx, dword [ebx + 4]
mov dword [ecx], edi
mov dword [ebx + 4], edx
mov dword [eax + 4], esi
mov dword [edi + 4], ecx
jmp 0x5ce191
push str.invalid_hash_bucket_count
call fcn.0054c6a3
int3