joyce8/EMBER2024-capa huggingface dataset:
Function at 0x47dd30
Capabilities:
Hash data using fnv

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x522175
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x1c
push ebx
mov ebx, dword [ebp + 0xc]
push esi
push edi
mov edi, ecx
movzx eax, byte [ebx]
xor eax, 0x811c9dc5
imul edx, eax, 0x1000193
movzx eax, byte [ebx + 1]
xor edx, eax
movzx eax, byte [ebx + 2]
imul edx, edx, 0x1000193
xor edx, eax
movzx eax, byte [ebx + 3]
imul ecx, edx, 0x1000193
xor ecx, eax
imul eax, ecx, 0x1000193
mov ecx, edi
push eax
mov dword [ebp - 0x10], eax
lea eax, [ebp - 0x18]
push ebx
push eax
call fcn.00465c40
mov ecx, dword [ebp - 0x14]
test ecx, ecx
je 0x47ddb8
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 edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 8
cmp dword [edi + 8], 0xaaaaaaa
je 0x47df1c
lea eax, [edi + 4]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x28], eax
push 0x18
mov dword [ebp - 4], 0
mov dword [ebp - 0x24], 0
call fcn.004fa223
mov ecx, dword [ebx]
mov esi, eax
add esp, 4
mov dword [ebp - 0x20], esi
mov dword [ebp - 0x24], esi
mov dword [esi + 8], ecx
mov dword [esi + 0xc], 0
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 0
mov eax, dword [edi + 8]
fld dword [edi]
add eax, 1
mov dword [ebp + 0xc], eax
fild dword [ebp + 0xc]
mov dword [ebp - 4], 1
jns 0x47de25
fadd dword [0x530074]
fstp dword [ebp + 0xc]
fld dword [ebp + 0xc]
mov ebx, dword [edi + 0x1c]
fild dword [edi + 0x1c]
test ebx, ebx
jns 0x47de3b
fadd dword [0x530074]
fstp dword [ebp + 0xc]
fld dword [ebp + 0xc]
fdivr st(1)
fcompi st(2)
jbe 0x47debb
fdivrp st(1)
sub esp, 8
fstp dword [ebp + 0xc]
fld dword [ebp + 0xc]
fstp qword [esp]
call fcn.005067e0
fstp dword [ebp + 0xc]
fld dword [ebp + 0xc]
mov ecx, 8
fnstcw word [ebp + 0xe]
movzx eax, word [ebp + 0xe]
add esp, 8
or eax, 0xc00
mov dword [ebp - 0x14], eax
fldcw word [ebp - 0x14]
fistp qword [ebp - 0x18]
mov eax, dword [ebp - 0x18]
cmp eax, ecx
cmova ecx, eax
fldcw word [ebp + 0xe]
cmp ebx, ecx
jae 0x47de9d
cmp ebx, 0x200
jae 0x47de9b
shl ebx, 3
cmp ebx, ecx
jae 0x47de9d
mov ebx, ecx
push ebx
mov ecx, edi
call fcn.00480fd0
push dword [ebp - 0x10]
lea eax, [esi + 8]
mov ecx, edi
push eax
lea eax, [ebp - 0x28]
push eax
call fcn.00465c40
mov edx, dword [eax]
jmp 0x47dec2
mov edx, dword [ebp - 0x18]
fstp st(0)
fstp st(0)
mov ebx, dword [edx + 4]
inc dword [edi + 8]
mov dword [esi], edx
mov dword [esi + 4], ebx
mov dword [ebx], esi
mov dword [edx + 4], esi
mov eax, dword [edi + 0x18]
and eax, dword [ebp - 0x10]
mov ecx, dword [edi + 0xc]
mov esi, dword [ebp - 0x1c]
mov edi, dword [ecx + eax*8]
cmp edi, dword [esi]
mov esi, dword [ebp - 0x20]
jne 0x47deed
mov dword [ecx + eax*8], esi
jmp 0x47defc
cmp edi, edx
jne 0x47def6
mov dword [ecx + eax*8], esi
jmp 0x47df00
cmp dword [ecx + eax*8 + 4], ebx
jne 0x47df00
mov dword [ecx + eax*8 + 4], esi
mov eax, dword [ebp + 8]
mov ecx, dword [ebp - 0xc]
pop edi
mov dword [eax], esi
pop esi
mov byte [eax + 4], 1
mov dword fs:[0], ecx
pop ebx
mov esp, ebp
pop ebp
ret 8
push str.unordered_map_set_too_long
call fcn.004f7e11
int3
Function at 0x47e0a0
Capabilities:
Access peb ldr_data

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x5221da
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0xc
push ebx
push esi
mov esi, ecx
mov dword [ebp - 0x14], esi
mov dword [ebp - 0x10], 0
push edi
lea ecx, [esi + 0x50]
mov dword [ebp - 0x18], esi
mov dword [esi], 0x5338f0
call fcn.00439430
mov eax, dword [esi]
lea edi, [esi + 4]
push 0
push edi
mov dword [ebp - 4], 0
mov eax, dword [eax + 4]
mov dword [ebp - 0x10], 1
mov dword [esi + eax], vtable.std::basic_ostream_char__struct_std::char_traits_char__.0
mov eax, dword [esi]
mov ecx, dword [eax + 4]
lea eax, [ecx - 8]
mov dword [ecx + esi - 4], eax
mov eax, dword [esi]
mov ecx, dword [eax + 4]
add ecx, esi
call fcn.0046fa80
mov eax, dword [esi]
push 8
mov dword [ebp - 4], 2
mov eax, dword [eax + 4]
mov dword [esi + eax], vtable.std::basic_ostringstream_char__struct_std::char_traits_char___class_std::allocator_char__.0
mov eax, dword [esi]
mov ecx, dword [eax + 4]
lea eax, [ecx - 0x50]
mov dword [ecx + esi - 4], eax
mov dword [edi], vtable.std::basic_streambuf_char__struct_std::char_traits_char__.0
mov dword [edi + 4], 0
mov dword [edi + 8], 0
mov dword [edi + 0xc], 0
mov dword [edi + 0x10], 0
mov dword [edi + 0x14], 0
mov dword [edi + 0x18], 0
mov dword [edi + 0x1c], 0
mov dword [edi + 0x20], 0
mov dword [edi + 0x24], 0
mov dword [edi + 0x28], 0
mov dword [edi + 0x2c], 0
mov dword [edi + 0x30], 0
call fcn.004fa223
mov ebx, eax
add esp, 4
test ebx, ebx
je 0x47e1af
push 1
mov byte [ebp - 4], 3
call fcn.004f8ab2
add esp, 4
mov dword [ebx + 4], eax
jmp 0x47e1b1
xor ebx, ebx
mov ecx, edi
mov dword [edi + 0x34], ebx
call fcn.0043a3b0
mov dword [edi], vtable.std::basic_stringbuf_char__struct_std::char_traits_char___class_std::allocator_char__.0
mov dword [edi + 0x38], 0
mov dword [edi + 0x3c], 4
mov eax, dword [ebp + 8]
lea edi, [esi + 0xa8]
mov dword [esi + 0x98], eax
mov eax, dword [ebp + 0xc]
mov dword [esi + 0x9c], eax
mov eax, dword [ebp + 0x10]
mov dword [esi + 0xa0], eax
mov dword [ebp - 4], 4
mov dword [ebp + 0x10], edi
mov dword [edi + 0x24], 0
mov eax, dword [ebp + 0x14]
mov byte [ebp - 4], 5
mov ecx, dword [eax + 0x24]
test ecx, ecx
je 0x47e217
mov eax, dword [ecx]
push edi
call dword [eax]
mov dword [edi + 0x24], eax
push dword [ebp + 0x18]
lea ecx, [esi + 0xd0]
mov byte [ebp - 4], 6
call fcn.00405420
mov eax, dword [ebp + 0x1c]
mov ecx, dword [ebp - 0xc]
mov dword [esi + 0xe8], eax
mov eax, esi
pop edi
pop esi
pop ebx
mov dword fs:[0], ecx
mov esp, ebp
pop ebp
ret 0x18
Function at 0x4a1120
Capabilities:
Hash data using fnv

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x5212d5
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x1c
push ebx
mov ebx, dword [ebp + 0xc]
push esi
push edi
mov edi, ecx
movzx eax, byte [ebx]
xor eax, 0x811c9dc5
imul edx, eax, 0x1000193
movzx eax, byte [ebx + 1]
xor edx, eax
movzx eax, byte [ebx + 2]
imul edx, edx, 0x1000193
xor edx, eax
movzx eax, byte [ebx + 3]
imul ecx, edx, 0x1000193
xor ecx, eax
imul eax, ecx, 0x1000193
mov ecx, edi
push eax
mov dword [ebp - 0x10], eax
lea eax, [ebp - 0x18]
push ebx
push eax
call fcn.00465c40
mov ecx, dword [ebp - 0x14]
test ecx, ecx
je 0x4a11a8
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 edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 8
cmp dword [edi + 8], 0xccccccc
je 0x4a12ff
lea eax, [edi + 4]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x28], eax
push 0x14
mov dword [ebp - 4], 0
mov dword [ebp - 0x24], 0
call fcn.004fa223
mov ecx, dword [ebx]
mov esi, eax
add esp, 4
mov dword [ebp - 0x20], esi
mov dword [ebp - 0x24], esi
mov dword [esi + 8], ecx
xor ecx, ecx
mov dword [esi + 0xc], ecx
mov dword [esi + 0x10], ecx
mov eax, dword [edi + 8]
fld dword [edi]
add eax, 1
mov dword [ebp + 0xc], eax
fild dword [ebp + 0xc]
mov dword [ebp - 4], 1
jns 0x4a1208
fadd dword [0x530074]
fstp dword [ebp + 0xc]
fld dword [ebp + 0xc]
mov ebx, dword [edi + 0x1c]
fild dword [edi + 0x1c]
test ebx, ebx
jns 0x4a121e
fadd dword [0x530074]
fstp dword [ebp + 0xc]
fld dword [ebp + 0xc]
fdivr st(1)
fcompi st(2)
jbe 0x4a129e
fdivrp st(1)
sub esp, 8
fstp dword [ebp + 0xc]
fld dword [ebp + 0xc]
fstp qword [esp]
call fcn.005067e0
fstp dword [ebp + 0xc]
fld dword [ebp + 0xc]
mov ecx, 8
fnstcw word [ebp + 0xe]
movzx eax, word [ebp + 0xe]
add esp, 8
or eax, 0xc00
mov dword [ebp - 0x14], eax
fldcw word [ebp - 0x14]
fistp qword [ebp - 0x18]
mov eax, dword [ebp - 0x18]
cmp eax, ecx
cmova ecx, eax
fldcw word [ebp + 0xe]
cmp ebx, ecx
jae 0x4a1280
cmp ebx, 0x200
jae 0x4a127e
shl ebx, 3
cmp ebx, ecx
jae 0x4a1280
mov ebx, ecx
push ebx
mov ecx, edi
call fcn.00467930
push dword [ebp - 0x10]
lea eax, [esi + 8]
mov ecx, edi
push eax
lea eax, [ebp - 0x28]
push eax
call fcn.00465c40
mov edx, dword [eax]
jmp 0x4a12a5
mov edx, dword [ebp - 0x18]
fstp st(0)
fstp st(0)
mov ebx, dword [edx + 4]
inc dword [edi + 8]
mov dword [esi], edx
mov dword [esi + 4], ebx
mov dword [ebx], esi
mov dword [edx + 4], esi
mov eax, dword [edi + 0x18]
and eax, dword [ebp - 0x10]
mov ecx, dword [edi + 0xc]
mov esi, dword [ebp - 0x1c]
mov edi, dword [ecx + eax*8]
cmp edi, dword [esi]
mov esi, dword [ebp - 0x20]
jne 0x4a12d0
mov dword [ecx + eax*8], esi
jmp 0x4a12df
cmp edi, edx
jne 0x4a12d9
mov dword [ecx + eax*8], esi
jmp 0x4a12e3
cmp dword [ecx + eax*8 + 4], ebx
jne 0x4a12e3
mov dword [ecx + eax*8 + 4], esi
mov eax, dword [ebp + 8]
mov ecx, dword [ebp - 0xc]
pop edi
mov dword [eax], esi
pop esi
mov byte [eax + 4], 1
mov dword fs:[0], ecx
pop ebx
mov esp, ebp
pop ebp
ret 8
push str.unordered_map_set_too_long
call fcn.004f7e11
int3
Function at 0x4ca430
Capabilities:
Hash data using fnv

Disassembly:
push ebp
mov ebp, esp
sub esp, 8
push ebx
mov ebx, dword [ebp + 8]
movzx eax, bl
xor eax, 0x811c9dc5
imul edx, eax, 0x1000193
mov eax, ebx
shr eax, 8
movzx eax, al
push esi
push edi
xor edx, eax
mov edi, ecx
imul ecx, edx, 0x1000193
mov eax, ebx
shr eax, 0x10
movzx eax, al
shr ebx, 0x18
xor ecx, eax
imul eax, ecx, 0x1000193
lea ecx, [edi + 0x274]
xor eax, ebx
imul eax, eax, 0x1000193
push eax
lea eax, [ebp + 8]
push eax
lea eax, [ebp - 8]
push eax
call fcn.00465c40
mov ecx, dword [eax + 4]
test ecx, ecx
jne 0x4ca498
mov ecx, dword [edi + 0x278]
xor edx, edx
lea eax, [ecx + 0xc]
cmp ecx, dword [edi + 0x278]
pop edi
pop esi
cmove eax, edx
pop ebx
mov esp, ebp
pop ebp
ret 4

Function at 0x4ca4b0
Capabilities:
Hash data using fnv

Disassembly:
push ebp
mov ebp, esp
sub esp, 8
push ebx
mov ebx, dword [ebp + 8]
movzx eax, bl
xor eax, 0x811c9dc5
imul edx, eax, 0x1000193
mov eax, ebx
shr eax, 8
movzx eax, al
push esi
push edi
xor edx, eax
mov edi, ecx
imul ecx, edx, 0x1000193
mov eax, ebx
shr eax, 0x10
movzx eax, al
shr ebx, 0x18
xor ecx, eax
imul eax, ecx, 0x1000193
lea ecx, [edi + 0x294]
xor eax, ebx
imul eax, eax, 0x1000193
push eax
lea eax, [ebp + 8]
push eax
lea eax, [ebp - 8]
push eax
call fcn.00465c40
mov ecx, dword [eax + 4]
test ecx, ecx
jne 0x4ca518
mov ecx, dword [edi + 0x298]
xor edx, edx
lea eax, [ecx + 0xc]
cmp ecx, dword [edi + 0x298]
pop edi
pop esi
cmove eax, edx
pop ebx
mov esp, ebp
pop ebp
ret 4
Function at 0x4def50
Capabilities:
Hash data using fnv

Disassembly:
push ebp
mov ebp, esp
mov ecx, dword [ebp + 0xc]
movzx eax, word [ecx + 0x1e]
cmp eax, 0x10
ja 0x4def91
je 0x4def98
sub eax, 0xe
je 0x4def7f
sub eax, 1
jne 0x4def7b
push ecx
push dword [ebp + 8]
call fcn.004df400
add esp, 8
test eax, eax
jne 0x4def7d
xor eax, eax
pop ebp
ret
push ecx
push dword [ebp + 8]
call fcn.004e15f0
add esp, 8
test eax, eax
je 0x4def7b
pop ebp
ret
cmp eax, 0x14b
jne 0x4def7b
mov dword [ebp + 0xc], ecx
pop ebp
jmp fcn.004e0080
Function at 0x4e6610
Capabilities:
Hash data using fnv

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x51ef95
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x1c
push ebx
mov ebx, dword [ebp + 0xc]
push esi
push edi
mov edi, ecx
movzx eax, byte [ebx]
xor eax, 0x811c9dc5
imul edx, eax, 0x1000193
movzx eax, byte [ebx + 1]
xor edx, eax
movzx eax, byte [ebx + 2]
imul edx, edx, 0x1000193
xor edx, eax
movzx eax, byte [ebx + 3]
imul ecx, edx, 0x1000193
xor ecx, eax
imul eax, ecx, 0x1000193
mov ecx, edi
push eax
mov dword [ebp - 0x10], eax
lea eax, [ebp - 0x18]
push ebx
push eax
call fcn.00465c40
mov ecx, dword [ebp - 0x14]
test ecx, ecx
je 0x4e6698
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 edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 8
cmp dword [edi + 8], 0xfffffff
je 0x4e67eb
lea eax, [edi + 4]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x28], eax
push 0x10
mov dword [ebp - 4], 0
mov dword [ebp - 0x24], 0
call fcn.004fa223
mov ecx, dword [ebx]
mov esi, eax
add esp, 4
mov dword [ebp - 0x20], esi
mov dword [ebp - 0x24], esi
mov dword [esi + 8], ecx
mov byte [esi + 0xc], 0
mov eax, dword [edi + 8]
fld dword [edi]
add eax, 1
mov dword [ebp + 0xc], eax
fild dword [ebp + 0xc]
mov dword [ebp - 4], 1
jns 0x4e66f4
fadd dword [0x530074]
fstp dword [ebp + 0xc]
fld dword [ebp + 0xc]
mov ebx, dword [edi + 0x1c]
fild dword [edi + 0x1c]
test ebx, ebx
jns 0x4e670a
fadd dword [0x530074]
fstp dword [ebp + 0xc]
fld dword [ebp + 0xc]
fdivr st(1)
fcompi st(2)
jbe 0x4e678a
fdivrp st(1)
sub esp, 8
fstp dword [ebp + 0xc]
fld dword [ebp + 0xc]
fstp qword [esp]
call fcn.005067e0
fstp dword [ebp + 0xc]
fld dword [ebp + 0xc]
mov ecx, 8
fnstcw word [ebp + 0xe]
movzx eax, word [ebp + 0xe]
add esp, 8
or eax, 0xc00
mov dword [ebp - 0x14], eax
fldcw word [ebp - 0x14]
fistp qword [ebp - 0x18]
mov eax, dword [ebp - 0x18]
cmp eax, ecx
cmova ecx, eax
fldcw word [ebp + 0xe]
cmp ebx, ecx
jae 0x4e676c
cmp ebx, 0x200
jae 0x4e676a
shl ebx, 3
cmp ebx, ecx
jae 0x4e676c
mov ebx, ecx
push ebx
mov ecx, edi
call fcn.004d2cb0
push dword [ebp - 0x10]
lea eax, [esi + 8]
mov ecx, edi
push eax
lea eax, [ebp - 0x28]
push eax
call fcn.00465c40
mov edx, dword [eax]
jmp 0x4e6791
mov edx, dword [ebp - 0x18]
fstp st(0)
fstp st(0)
mov ebx, dword [edx + 4]
inc dword [edi + 8]
mov dword [esi], edx
mov dword [esi + 4], ebx
mov dword [ebx], esi
mov dword [edx + 4], esi
mov eax, dword [edi + 0x18]
and eax, dword [ebp - 0x10]
mov ecx, dword [edi + 0xc]
mov esi, dword [ebp - 0x1c]
mov edi, dword [ecx + eax*8]
cmp edi, dword [esi]
mov esi, dword [ebp - 0x20]
jne 0x4e67bc
mov dword [ecx + eax*8], esi
jmp 0x4e67cb
cmp edi, edx
jne 0x4e67c5
mov dword [ecx + eax*8], esi
jmp 0x4e67cf
cmp dword [ecx + eax*8 + 4], ebx
jne 0x4e67cf
mov dword [ecx + eax*8 + 4], esi
mov eax, dword [ebp + 8]
mov ecx, dword [ebp - 0xc]
pop edi
mov dword [eax], esi
pop esi
mov byte [eax + 4], 1
mov dword fs:[0], ecx
pop ebx
mov esp, ebp
pop ebp
ret 8
push str.unordered_map_set_too_long
call fcn.004f7e11
int3
Function at 0x4e94e0
Capabilities:
Hash data using fnv

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x52b9bb
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x2c
push ebx
push esi
mov esi, dword [ebp + 8]
push edi
mov edi, ecx
mov dword [ebp - 0x20], edi
mov eax, dword [esi]
push 0xc
mov dword [edi], eax
mov dword [edi + 4], 0
mov dword [edi + 8], 0
call fcn.004fa223
add esp, 4
mov dword [eax], eax
mov dword [eax + 4], eax
mov dword [edi + 4], eax
lea ecx, [edi + 0xc]
mov dword [ebp - 4], 0
mov dword [ecx], 0
mov dword [ecx + 4], 0
mov dword [ecx + 8], 0
mov eax, dword [esi + 0x18]
mov dword [edi + 0x18], eax
mov eax, dword [esi + 0x1c]
mov dword [edi + 0x1c], eax
mov eax, dword [esi + 0x10]
sub eax, dword [esi + 0xc]
push dword [edi + 4]
sar eax, 2
push eax
mov byte [ebp - 4], 1
call fcn.004018e0
mov eax, dword [esi + 4]
mov dword [ebp - 0x1c], eax
mov esi, dword [eax]
cmp esi, eax
je 0x4e9692
lea ebx, [ebx]
movzx eax, byte [esi + 8]
lea ebx, [esi + 8]
xor eax, 0x811c9dc5
imul ecx, eax, 0x1000193
movzx eax, byte [ebx + 1]
xor ecx, eax
movzx eax, byte [ebx + 2]
imul ecx, ecx, 0x1000193
xor ecx, eax
movzx eax, byte [ebx + 3]
imul ecx, ecx, 0x1000193
xor ecx, eax
imul eax, ecx, 0x1000193
mov ecx, edi
push eax
mov dword [ebp + 8], eax
lea eax, [ebp - 0x28]
push ebx
push eax
call fcn.00465c40
cmp dword [ebp - 0x24], 0
jne 0x4e9687
cmp dword [edi + 8], 0x15555555
je 0x4e96a7
lea eax, [edi + 4]
mov dword [ebp - 0x30], eax
push 0xc
mov byte [ebp - 4], 2
mov dword [ebp - 0x2c], 0
call fcn.004fa223
mov ecx, dword [ebx]
add esp, 4
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x2c], eax
add eax, 8
mov dword [ebp - 0x14], eax
mov dword [eax], ecx
mov ecx, dword [edi + 8]
fld dword [edi]
add ecx, 1
mov dword [ebp - 0x10], ecx
fild dword [ebp - 0x10]
mov byte [ebp - 4], 3
jns 0x4e9622
fadd dword [0x530074]
fstp dword [ebp - 0x10]
fld dword [ebp - 0x10]
mov eax, dword [edi + 0x1c]
fild dword [edi + 0x1c]
test eax, eax
jns 0x4e9638
fadd dword [0x530074]
fstp dword [ebp - 0x10]
fdiv dword [ebp - 0x10]
fcompi st(1)
fstp st(0)
jbe 0x4e966a
mov ecx, edi
call fcn.00475f90
mov ebx, dword [ebp + 8]
lea eax, [ebp - 0x38]
push ebx
push dword [ebp - 0x14]
mov ecx, edi
push eax
call fcn.00465c40
mov ecx, dword [eax]
mov eax, dword [eax + 4]
mov dword [ebp - 0x28], ecx
mov dword [ebp - 0x24], eax
jmp 0x4e9670
mov ecx, dword [ebp - 0x28]
mov ebx, dword [ebp + 8]
push dword [ebp - 0x18]
mov dword [ebp - 0x2c], 0
push ecx
push ebx
mov ecx, edi
call fcn.00431350
mov byte [ebp - 4], 1
mov esi, dword [esi]
cmp esi, dword [ebp - 0x1c]
jne 0x4e9580
mov ecx, dword [ebp - 0xc]
mov eax, edi
pop edi
pop esi
pop ebx
mov dword fs:[0], ecx
mov esp, ebp
pop ebp
ret 8
push str.unordered_map_set_too_long
call fcn.004f7e11
int3
Function at 0x4e96c0
Capabilities:
Hash data using fnv

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x52b9fb
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x2c
push ebx
push esi
mov esi, dword [ebp + 8]
push edi
mov edi, ecx
mov dword [ebp - 0x20], edi
mov eax, dword [esi]
push 0x10
mov dword [edi], eax
mov dword [edi + 4], 0
mov dword [edi + 8], 0
call fcn.004fa223
add esp, 4
mov dword [eax], eax
mov dword [eax + 4], eax
mov dword [edi + 4], eax
lea ecx, [edi + 0xc]
mov dword [ebp - 4], 0
mov dword [ecx], 0
mov dword [ecx + 4], 0
mov dword [ecx + 8], 0
mov eax, dword [esi + 0x18]
mov dword [edi + 0x18], eax
mov eax, dword [esi + 0x1c]
mov dword [edi + 0x1c], eax
mov eax, dword [esi + 0x10]
sub eax, dword [esi + 0xc]
push dword [edi + 4]
sar eax, 2
push eax
mov byte [ebp - 4], 1
call fcn.004018e0
mov eax, dword [esi + 4]
mov dword [ebp - 0x1c], eax
mov esi, dword [eax]
cmp esi, eax
je 0x4e9878
lea ebx, [ebx]
movzx eax, byte [esi + 8]
lea ebx, [esi + 8]
xor eax, 0x811c9dc5
imul ecx, eax, 0x1000193
movzx eax, byte [ebx + 1]
xor ecx, eax
movzx eax, byte [ebx + 2]
imul ecx, ecx, 0x1000193
xor ecx, eax
movzx eax, byte [ebx + 3]
imul ecx, ecx, 0x1000193
xor ecx, eax
imul eax, ecx, 0x1000193
mov ecx, edi
push eax
mov dword [ebp + 8], eax
lea eax, [ebp - 0x28]
push ebx
push eax
call fcn.00465c40
cmp dword [ebp - 0x24], 0
jne 0x4e986d
cmp dword [edi + 8], 0xfffffff
je 0x4e988d
lea eax, [edi + 4]
mov dword [ebp - 0x30], eax
push 0x10
mov byte [ebp - 4], 2
mov dword [ebp - 0x2c], 0
call fcn.004fa223
mov ecx, dword [ebx]
add esp, 4
mov edx, dword [ebx + 4]
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x2c], eax
add eax, 8
mov dword [ebp - 0x14], eax
mov dword [eax], ecx
mov dword [eax + 4], edx
mov eax, dword [edi + 8]
fld dword [edi]
add eax, 1
mov dword [ebp - 0x10], eax
fild dword [ebp - 0x10]
mov byte [ebp - 4], 3
jns 0x4e9808
fadd dword [0x530074]
fstp dword [ebp - 0x10]
fld dword [ebp - 0x10]
mov eax, dword [edi + 0x1c]
fild dword [edi + 0x1c]
test eax, eax
jns 0x4e981e
fadd dword [0x530074]
fstp dword [ebp - 0x10]
fdiv dword [ebp - 0x10]
fcompi st(1)
fstp st(0)
jbe 0x4e9850
mov ecx, edi
call fcn.00475e70
mov ebx, dword [ebp + 8]
lea eax, [ebp - 0x38]
push ebx
push dword [ebp - 0x14]
mov ecx, edi
push eax
call fcn.00465c40
mov ecx, dword [eax]
mov eax, dword [eax + 4]
mov dword [ebp - 0x28], ecx
mov dword [ebp - 0x24], eax
jmp 0x4e9856
mov ecx, dword [ebp - 0x28]
mov ebx, dword [ebp + 8]
push dword [ebp - 0x18]
mov dword [ebp - 0x2c], 0
push ecx
push ebx
mov ecx, edi
call fcn.00431350
mov byte [ebp - 4], 1
mov esi, dword [esi]
cmp esi, dword [ebp - 0x1c]
jne 0x4e9760
mov ecx, dword [ebp - 0xc]
mov eax, edi
pop edi
pop esi
pop ebx
mov dword fs:[0], ecx
mov esp, ebp
pop ebp
ret 8
push str.unordered_map_set_too_long
call fcn.004f7e11
int3
Function at 0x4e98a0
Capabilities:
Hash data using fnv

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x52ba3b
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x2c
push ebx
push esi
mov esi, dword [ebp + 8]
push edi
mov edi, ecx
mov dword [ebp - 0x20], edi
mov eax, dword [esi]
push 0x18
mov dword [edi], eax
mov dword [edi + 4], 0
mov dword [edi + 8], 0
call fcn.004fa223
add esp, 4
mov dword [eax], eax
mov dword [eax + 4], eax
mov dword [edi + 4], eax
lea ecx, [edi + 0xc]
mov dword [ebp - 4], 0
mov dword [ecx], 0
mov dword [ecx + 4], 0
mov dword [ecx + 8], 0
mov eax, dword [esi + 0x18]
mov dword [edi + 0x18], eax
mov eax, dword [esi + 0x1c]
mov dword [edi + 0x1c], eax
mov eax, dword [esi + 0x10]
sub eax, dword [esi + 0xc]
push dword [edi + 4]
sar eax, 2
push eax
mov byte [ebp - 4], 1
call fcn.004018e0
mov eax, dword [esi + 4]
mov dword [ebp - 0x1c], eax
mov esi, dword [eax]
cmp esi, eax
je 0x4e9a5e
lea ebx, [ebx]
movzx eax, byte [esi + 8]
lea ebx, [esi + 8]
xor eax, 0x811c9dc5
imul ecx, eax, 0x1000193
movzx eax, byte [ebx + 1]
xor ecx, eax
movzx eax, byte [ebx + 2]
imul ecx, ecx, 0x1000193
xor ecx, eax
movzx eax, byte [ebx + 3]
imul ecx, ecx, 0x1000193
xor ecx, eax
imul eax, ecx, 0x1000193
mov ecx, edi
push eax
mov dword [ebp + 8], eax
lea eax, [ebp - 0x28]
push ebx
push eax
call fcn.00465c40
cmp dword [ebp - 0x24], 0
jne 0x4e9a53
cmp dword [edi + 8], 0xaaaaaaa
je 0x4e9a73
lea eax, [edi + 4]
mov dword [ebp - 0x30], eax
push 0x18
mov byte [ebp - 4], 2
mov dword [ebp - 0x2c], 0
call fcn.004fa223
mov ecx, dword [ebx]
lea edx, [ebx + 4]
mov dword [ebp - 0x18], eax
add esp, 4
mov dword [ebp - 0x2c], eax
add eax, 8
mov dword [ebp - 0x14], eax
push edx
mov dword [eax], ecx
lea ecx, [eax + 4]
call fcn.0047dfe0
mov eax, dword [edi + 8]
fld dword [edi]
add eax, 1
mov dword [ebp - 0x10], eax
fild dword [ebp - 0x10]
mov byte [ebp - 4], 3
jns 0x4e99ee
fadd dword [0x530074]
fstp dword [ebp - 0x10]
fld dword [ebp - 0x10]
mov eax, dword [edi + 0x1c]
fild dword [edi + 0x1c]
test eax, eax
jns 0x4e9a04
fadd dword [0x530074]
fstp dword [ebp - 0x10]
fdiv dword [ebp - 0x10]
fcompi st(1)
fstp st(0)
jbe 0x4e9a36
mov ecx, edi
call fcn.00475f00
mov ebx, dword [ebp + 8]
lea eax, [ebp - 0x38]
push ebx
push dword [ebp - 0x14]
mov ecx, edi
push eax
call fcn.00465c40
mov ecx, dword [eax]
mov eax, dword [eax + 4]
mov dword [ebp - 0x28], ecx
mov dword [ebp - 0x24], eax
jmp 0x4e9a3c
mov ecx, dword [ebp - 0x28]
mov ebx, dword [ebp + 8]
push dword [ebp - 0x18]
mov dword [ebp - 0x2c], 0
push ecx
push ebx
mov ecx, edi
call fcn.00431350
mov byte [ebp - 4], 1
mov esi, dword [esi]
cmp esi, dword [ebp - 0x1c]
jne 0x4e9940
mov ecx, dword [ebp - 0xc]
mov eax, edi
pop edi
pop esi
pop ebx
mov dword fs:[0], ecx
mov esp, ebp
pop ebp
ret 8
push str.unordered_map_set_too_long
call fcn.004f7e11
int3