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

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x4f1a30
mov eax, dword fs:[0]
push eax
sub esp, 8
push ebx
push esi
push edi
mov eax, dword [0x53e060]
xor eax, ebp
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov eax, ecx
mov dword [ebp - 0x10], eax
push 8
mov dword [eax], vtable.std::basic_streambuf_char__struct_std::char_traits_char__.0
call fcn.004be4c6
mov esi, eax
push 1
mov dword [ebp - 4], 0
call fcn.004bdb06
mov dword [esi + 4], eax
add esp, 8
mov eax, dword [ebp - 0x10]
lea edi, [eax + 0x14]
lea ecx, [eax + 0x18]
lea edx, [eax + 0x24]
mov dword [eax + 0x34], esi
lea ebx, [eax + 4]
mov dword [eax + 0xc], ebx
lea esi, [eax + 8]
mov dword [eax + 0x10], esi
mov dword [eax + 0x1c], edi
mov dword [eax + 0x20], ecx
mov dword [eax + 0x2c], edx
add eax, 0x28
mov dword [ebp - 0x14], ebx
mov ebx, dword [ebp - 0x10]
mov dword [ebx + 0x30], eax
mov ebx, dword [ebp - 0x14]
mov dword [esi], 0
mov dword [ecx], 0
mov dword [eax], 0
mov eax, dword [ebp - 0x10]
mov dword [ebx], 0
mov dword [edi], 0
mov dword [edx], 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

Function at 0x48eb60
Capabilities:
Hash data using fnv

Disassembly:
push ebp
mov ebp, esp
sub esp, 0xc
movzx eax, dl
xor eax, 0x811c9dc5
mov dword [ebp - 4], edx
imul ecx, eax, 0x1000193
mov eax, edx
shr eax, 8
movzx eax, al
xor ecx, eax
mov eax, edx
shr eax, 0x10
movzx eax, al
imul ecx, ecx, 0x1000193
shr edx, 0x18
xor ecx, eax
imul eax, ecx, 0x1000193
xor eax, edx
imul eax, eax, 0x1000193
push eax
lea eax, [ebp - 4]
push eax
lea eax, [ebp - 0xc]
push eax
call fcn.00499d70
mov edx, dword [0x56c320]
mov eax, dword [eax + 4]
test eax, eax
cmovne edx, eax
cmp edx, dword [0x56c320]
je 0x48ebcd
lea eax, [edx + 0xc]
mov esp, ebp
pop ebp
ret
xor eax, eax
mov esp, ebp
pop ebp
ret

Function at 0x48f150
Capabilities:
Hash data using fnv

Disassembly:
push ebp
mov ebp, esp
mov edx, dword [ebp + 0xc]
sub esp, 8
movzx eax, byte [edx]
xor eax, 0x811c9dc5
imul ecx, eax, 0x1000193
movzx eax, byte [edx + 1]
xor ecx, eax
imul eax, ecx, 0x1000193
push eax
push edx
lea eax, [ebp - 8]
push eax
call fcn.00499b40
mov ecx, dword [0x561728]
mov eax, dword [eax + 4]
test eax, eax
cmovne ecx, eax
mov eax, dword [ebp + 8]
mov dword [eax], ecx
mov esp, ebp
pop ebp
ret 8

Function at 0x48f1a0
Capabilities:
Hash data using fnv

Disassembly:
push ebp
mov ebp, esp
sub esp, 8
push esi
mov esi, dword [ebp + 0xc]
push edi
mov edi, ecx
movzx eax, byte [esi]
xor eax, 0x811c9dc5
imul edx, eax, 0x1000193
movzx eax, byte [esi + 1]
xor edx, eax
imul eax, edx, 0x1000193
push eax
push esi
lea eax, [ebp - 8]
push eax
call fcn.00499c20
mov ecx, dword [eax + 4]
mov eax, dword [ebp + 8]
test ecx, ecx
jne 0x48f1df
mov ecx, dword [edi + 4]
pop edi
mov dword [eax], ecx
pop esi
mov esp, ebp
pop ebp
ret 8
Function at 0x48f1f0
Capabilities:
Hash data using fnv

Disassembly:
push ebp
mov ebp, esp
mov edx, dword [ebp + 0xc]
sub esp, 8
movzx eax, byte [edx]
xor eax, 0x811c9dc5
imul ecx, eax, 0x1000193
movzx eax, byte [edx + 1]
xor ecx, eax
imul eax, ecx, 0x1000193
push eax
push edx
lea eax, [ebp - 8]
push eax
call fcn.00499c90
mov ecx, dword [0x5616e8]
mov eax, dword [eax + 4]
test eax, eax
cmovne ecx, eax
mov eax, dword [ebp + 8]
mov dword [eax], ecx
mov esp, ebp
pop ebp
ret 8

Function at 0x48f240
Capabilities:
Hash data using fnv

Disassembly:
push ebp
mov ebp, esp
mov edx, dword [ebp + 0xc]
sub esp, 8
movzx eax, byte [edx]
xor eax, 0x811c9dc5
imul ecx, eax, 0x1000193
movzx eax, byte [edx + 1]
xor ecx, eax
imul eax, ecx, 0x1000193
push eax
push edx
lea eax, [ebp - 8]
push eax
call fcn.00499bb0
mov ecx, dword [0x56c2c0]
mov eax, dword [eax + 4]
test eax, eax
cmovne ecx, eax
mov eax, dword [ebp + 8]
mov dword [eax], ecx
mov esp, ebp
pop ebp
ret 8
Function at 0x48fb50
Capabilities:
Hash data using fnv

Disassembly:
push ebp
mov ebp, esp
sub esp, 0xc
movzx eax, dl
xor eax, 0x811c9dc5
mov dword [ebp - 4], edx
imul ecx, eax, 0x1000193
mov eax, edx
sar eax, 8
movzx eax, al
xor ecx, eax
mov eax, edx
imul ecx, ecx, 0x1000193
sar eax, 0x10
movzx eax, al
sar edx, 0x18
xor ecx, eax
movzx eax, dl
imul ecx, ecx, 0x1000193
xor ecx, eax
imul eax, ecx, 0x1000193
push eax
lea eax, [ebp - 4]
push eax
lea eax, [ebp - 0xc]
push eax
call fcn.00499ad0
mov edx, dword [0x56c400]
mov eax, dword [eax + 4]
test eax, eax
cmovne edx, eax
cmp edx, dword [0x56c400]
je 0x48fbc0
lea eax, [edx + 0xc]
mov esp, ebp
pop ebp
ret
xor eax, eax
mov esp, ebp
pop ebp
ret
Function at 0x48fc00
Capabilities:
Hash data using fnv

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x4f1e25
mov eax, dword fs:[0]
push eax
sub esp, 0x14
push ebx
push esi
push edi
mov eax, dword [0x53e060]
xor eax, ebp
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov edi, dword [ebp + 0xc]
movzx eax, byte [edi]
xor eax, 0x811c9dc5
imul ecx, eax, 0x1000193
movzx eax, byte [edi + 1]
xor ecx, eax
lea eax, [ebp - 0x14]
imul ebx, ecx, 0x1000193
push ebx
push edi
push eax
call fcn.00499350
mov ecx, dword [ebp - 0x10]
test ecx, ecx
je 0x48fc74
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 [0x56c2e4], 0xaaaaaaa
je 0x48fdd2
mov dword [ebp - 0x1c], 0x56c2e0
mov dword [ebp - 4], 0
push 0x18
mov dword [ebp - 0x18], 0
call fcn.004be4c6
mov cx, word [edi]
mov esi, eax
add esp, 4
mov dword [ebp - 0x18], esi
mov word [esi + 8], cx
mov dword [esi + 0xc], 0
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 0
mov dword [ebp - 4], 1
mov ecx, dword [0x56c2e4]
mov edi, dword [0x56c2f8]
lea eax, [ecx + 1]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x534b20]
mov eax, edi
shr eax, 0x1f
cvtpd2ps xmm3, xmm0
movd xmm0, edi
cvtdq2pd xmm0, xmm0
movaps xmm2, xmm3
addsd xmm0, qword [eax*8 + 0x534b20]
cvtpd2ps xmm1, xmm0
movss xmm0, dword [0x56c2dc]
divss xmm2, xmm1
comiss xmm2, xmm0
jbe 0x48fd6e
divss xmm3, xmm0
movaps xmm0, xmm3
call fcn.004062f0
call fcn.004ec900
mov ecx, 8
cmp eax, ecx
cmova ecx, eax
cmp edi, ecx
jae 0x48fd50
cmp edi, 0x200
jae 0x48fd4e
shl edi, 3
cmp edi, ecx
jae 0x48fd50
mov edi, ecx
push edi
call fcn.00495bb0
push ebx
lea eax, [esi + 8]
push eax
lea eax, [ebp - 0x1c]
push eax
call fcn.00499350
mov ecx, dword [0x56c2e4]
mov edx, dword [eax]
jmp 0x48fd71
mov edx, dword [ebp - 0x14]
mov edi, dword [edx + 4]
inc ecx
mov dword [0x56c2e4], ecx
mov dword [esi], edx
mov dword [esi + 4], edi
mov dword [edi], esi
mov dword [edx + 4], esi
mov eax, dword [0x56c2f4]
mov ecx, dword [0x56c2e8]
and eax, ebx
mov ebx, dword [ecx + eax*8]
cmp ebx, dword [0x56c2e0]
jne 0x48fda2
mov dword [ecx + eax*8], esi
jmp 0x48fdb1
cmp ebx, edx
jne 0x48fdab
mov dword [ecx + eax*8], esi
jmp 0x48fdb5
cmp dword [ecx + eax*8 + 4], edi
jne 0x48fdb5
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.004bd7c6
int3
Function at 0x48fe50
Capabilities:
Hash data using fnv

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x4f1e65
mov eax, dword fs:[0]
push eax
sub esp, 0x14
push ebx
push esi
push edi
mov eax, dword [0x53e060]
xor eax, ebp
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov edi, dword [ebp + 0xc]
movzx eax, byte [edi]
xor eax, 0x811c9dc5
imul ecx, eax, 0x1000193
movzx eax, byte [edi + 1]
xor ecx, eax
lea eax, [ebp - 0x14]
imul ebx, ecx, 0x1000193
push ebx
push edi
push eax
call fcn.004993c0
mov ecx, dword [ebp - 0x10]
test ecx, ecx
je 0x48fec4
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 [0x56c3c4], 0xaaaaaaa
je 0x490022
mov dword [ebp - 0x1c], 0x56c3c0
mov dword [ebp - 4], 0
push 0x18
mov dword [ebp - 0x18], 0
call fcn.004be4c6
mov cx, word [edi]
mov esi, eax
add esp, 4
mov dword [ebp - 0x18], esi
mov word [esi + 8], cx
mov dword [esi + 0xc], 0
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 0
mov dword [ebp - 4], 1
mov ecx, dword [0x56c3c4]
mov edi, dword [0x56c3d8]
lea eax, [ecx + 1]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x534b20]
mov eax, edi
shr eax, 0x1f
cvtpd2ps xmm3, xmm0
movd xmm0, edi
cvtdq2pd xmm0, xmm0
movaps xmm2, xmm3
addsd xmm0, qword [eax*8 + 0x534b20]
cvtpd2ps xmm1, xmm0
movss xmm0, dword [0x56c3bc]
divss xmm2, xmm1
comiss xmm2, xmm0
jbe 0x48ffbe
divss xmm3, xmm0
movaps xmm0, xmm3
call fcn.004062f0
call fcn.004ec900
mov ecx, 8
cmp eax, ecx
cmova ecx, eax
cmp edi, ecx
jae 0x48ffa0
cmp edi, 0x200
jae 0x48ff9e
shl edi, 3
cmp edi, ecx
jae 0x48ffa0
mov edi, ecx
push edi
call fcn.00495d20
push ebx
lea eax, [esi + 8]
push eax
lea eax, [ebp - 0x1c]
push eax
call fcn.004993c0
mov ecx, dword [0x56c3c4]
mov edx, dword [eax]
jmp 0x48ffc1
mov edx, dword [ebp - 0x14]
mov edi, dword [edx + 4]
inc ecx
mov dword [0x56c3c4], ecx
mov dword [esi], edx
mov dword [esi + 4], edi
mov dword [edi], esi
mov dword [edx + 4], esi
mov eax, dword [0x56c3d4]
mov ecx, dword [0x56c3c8]
and eax, ebx
mov ebx, dword [ecx + eax*8]
cmp ebx, dword [0x56c3c0]
jne 0x48fff2
mov dword [ecx + eax*8], esi
jmp 0x490001
cmp ebx, edx
jne 0x48fffb
mov dword [ecx + eax*8], esi
jmp 0x490005
cmp dword [ecx + eax*8 + 4], edi
jne 0x490005
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.004bd7c6
int3
Function at 0x490250
Capabilities:
Hash data using fnv

Disassembly:
push ebx
mov ebx, esp
sub esp, 8
and esp, 0xfffffff8
add esp, 4
push ebp
mov ebp, dword [ebx + 4]
mov dword [esp + 4], ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x4f1ee5
mov eax, dword fs:[0]
push eax
push ebx
sub esp, 0x18
push esi
push edi
mov eax, dword [0x53e060]
xor eax, ebp
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov edi, dword [ebx + 0xc]
movzx eax, byte [edi]
xor eax, 0x811c9dc5
imul ecx, eax, 0x1000193
movzx eax, byte [edi + 1]
xor ecx, eax
movzx eax, byte [edi + 2]
imul ecx, ecx, 0x1000193
xor ecx, eax
movzx eax, byte [edi + 3]
imul ecx, ecx, 0x1000193
xor ecx, eax
imul eax, ecx, 0x1000193
push eax
mov dword [ebp - 0x14], eax
lea eax, [ebp - 0x1c]
push edi
push eax
call fcn.004994a0
mov ecx, dword [ebp - 0x18]
test ecx, ecx
je 0x4902e3
mov eax, dword [ebx + 8]
mov dword [eax], ecx
mov byte [eax + 4], 0
jmp 0x49042f
cmp dword [0x56c384], 0x71c71c7
je 0x490445
mov dword [ebp - 0x24], 0x56c380
mov dword [ebp - 4], 0
push 0x24
mov dword [ebp - 0x20], 0
call fcn.004be4c6
movups xmm0, xmmword [edi]
mov esi, eax
add esp, 4
mov dword [ebp - 0x20], esi
movups xmmword [esi + 8], xmm0
movq xmm0, qword [edi + 0x10]
movq qword [esi + 0x18], xmm0
mov ecx, dword [edi + 0x18]
mov dword [esi + 0x20], ecx
mov dword [ebp - 4], 1
mov ecx, dword [0x56c384]
mov edi, dword [0x56c398]
lea eax, [ecx + 1]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x534b20]
mov eax, edi
shr eax, 0x1f
cvtpd2ps xmm3, xmm0
movd xmm0, edi
cvtdq2pd xmm0, xmm0
movaps xmm2, xmm3
addsd xmm0, qword [eax*8 + 0x534b20]
cvtpd2ps xmm1, xmm0
movss xmm0, dword [0x56c37c]
divss xmm2, xmm1
comiss xmm2, xmm0
jbe 0x4903da
divss xmm3, xmm0
movaps xmm0, xmm3
call fcn.004062f0
call fcn.004ec900
mov ecx, 8
cmp eax, ecx
cmova ecx, eax
cmp edi, ecx
jae 0x4903ba
cmp edi, 0x200
jae 0x4903b8
shl edi, 3
cmp edi, ecx
jae 0x4903ba
mov edi, ecx
push edi
call fcn.00496000
push dword [ebp - 0x14]
lea eax, [esi + 8]
push eax
lea eax, [ebp - 0x1c]
push eax
call fcn.004994a0
mov ecx, dword [0x56c384]
mov edx, dword [eax]
jmp 0x4903dd
mov edx, dword [ebp - 0x1c]
mov edi, dword [edx + 4]
inc ecx
mov dword [0x56c384], ecx
mov dword [esi], edx
mov dword [esi + 4], edi
mov dword [edi], esi
mov dword [edx + 4], esi
mov eax, dword [0x56c394]
and eax, dword [ebp - 0x14]
mov ecx, dword [0x56c388]
mov esi, dword [ecx + eax*8]
cmp esi, dword [0x56c380]
mov esi, dword [ebp - 0x20]
jne 0x490412
mov dword [ecx + eax*8], esi
jmp 0x490422
cmp dword [ecx + eax*8], edx
jne 0x49041c
mov dword [ecx + eax*8], esi
jmp 0x490426
cmp dword [ecx + eax*8 + 4], edi
jne 0x490426
mov dword [ecx + eax*8 + 4], esi
mov eax, dword [ebx + 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
mov esp, ebx
pop ebx
ret 8
push str.unordered_map_set_too_long
call fcn.004bd7c6
int3
Function at 0x490450
Capabilities:
Hash data using fnv

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x4f1f25
mov eax, dword fs:[0]
push eax
sub esp, 0x10
push ebx
push esi
push edi
mov eax, dword [0x53e060]
xor eax, ebp
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov edi, dword [ebp + 0xc]
movzx eax, byte [edi]
xor eax, 0x811c9dc5
imul ecx, eax, 0x1000193
movzx eax, byte [edi + 1]
xor ecx, eax
movzx eax, byte [edi + 2]
imul ecx, ecx, 0x1000193
xor ecx, eax
movzx eax, byte [edi + 3]
imul ecx, ecx, 0x1000193
xor ecx, eax
lea eax, [ebp - 0x14]
imul ebx, ecx, 0x1000193
push ebx
push edi
push eax
call fcn.00499510
mov ecx, dword [ebp - 0x10]
test ecx, ecx
je 0x4904dc
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 [0x56176c], 0xaaaaaaa
je 0x49064a
mov dword [ebp - 0x1c], 0x561768
mov dword [ebp - 4], 0
push 0x18
mov dword [ebp - 0x18], 0
call fcn.004be4c6
mov ecx, dword [edi]
mov esi, eax
add esp, 4
mov dword [ebp - 0x18], esi
mov dword [esi + 8], ecx
mov edx, dword [edi + 0xc]
mov ecx, dword [edi + 8]
mov eax, dword [edi + 4]
mov dword [edi + 0xc], 0
mov dword [edi + 8], 0
mov dword [edi + 4], 0
mov dword [esi + 0xc], eax
mov dword [esi + 0x10], ecx
mov dword [esi + 0x14], edx
mov dword [ebp - 4], 1
mov ecx, dword [0x56176c]
mov edi, dword [0x561780]
lea eax, [ecx + 1]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x534b20]
mov eax, edi
shr eax, 0x1f
cvtpd2ps xmm3, xmm0
movd xmm0, edi
cvtdq2pd xmm0, xmm0
movaps xmm2, xmm3
addsd xmm0, qword [eax*8 + 0x534b20]
cvtpd2ps xmm1, xmm0
movss xmm0, dword [0x561764]
divss xmm2, xmm1
comiss xmm2, xmm0
jbe 0x4905e6
divss xmm3, xmm0
movaps xmm0, xmm3
call fcn.004062f0
call fcn.004ec900
mov ecx, 8
cmp eax, ecx
cmova ecx, eax
cmp edi, ecx
jae 0x4905c8
cmp edi, 0x200
jae 0x4905c6
shl edi, 3
cmp edi, ecx
jae 0x4905c8
mov edi, ecx
push edi
call fcn.00496180
push ebx
lea eax, [esi + 8]
push eax
lea eax, [ebp - 0x1c]
push eax
call fcn.00499510
mov ecx, dword [0x56176c]
mov edx, dword [eax]
jmp 0x4905e9
mov edx, dword [ebp - 0x14]
mov edi, dword [edx + 4]
inc ecx
mov dword [0x56176c], ecx
mov dword [esi], edx
mov dword [esi + 4], edi
mov dword [edi], esi
mov dword [edx + 4], esi
mov eax, dword [0x56177c]
mov ecx, dword [0x561770]
and eax, ebx
mov ebx, dword [ecx + eax*8]
cmp ebx, dword [0x561768]
jne 0x49061a
mov dword [ecx + eax*8], esi
jmp 0x490629
cmp ebx, edx
jne 0x490623
mov dword [ecx + eax*8], esi
jmp 0x49062d
cmp dword [ecx + eax*8 + 4], edi
jne 0x49062d
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.004bd7c6
int3
Function at 0x4906b0
Capabilities:
Hash data using fnv

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x4f1f25
mov eax, dword fs:[0]
push eax
sub esp, 0x10
push ebx
push esi
push edi
mov eax, dword [0x53e060]
xor eax, ebp
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov edi, dword [ebp + 0xc]
movzx eax, byte [edi]
xor eax, 0x811c9dc5
imul ecx, eax, 0x1000193
movzx eax, byte [edi + 1]
xor ecx, eax
lea eax, [ebp - 0x14]
imul ebx, ecx, 0x1000193
push ebx
push edi
push eax
call fcn.004995d0
mov ecx, dword [ebp - 0x10]
test ecx, ecx
je 0x490724
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 [0x56174c], 0xaaaaaaa
je 0x490894
mov dword [ebp - 0x1c], 0x561748
mov dword [ebp - 4], 0
push 0x18
mov dword [ebp - 0x18], 0
call fcn.004be4c6
mov cx, word [edi]
mov esi, eax
add esp, 4
mov dword [ebp - 0x18], esi
mov word [esi + 8], cx
mov edx, dword [edi + 0xc]
mov ecx, dword [edi + 8]
mov eax, dword [edi + 4]
mov dword [edi + 0xc], 0
mov dword [edi + 8], 0
mov dword [edi + 4], 0
mov dword [esi + 0xc], eax
mov dword [esi + 0x10], ecx
mov dword [esi + 0x14], edx
mov dword [ebp - 4], 1
mov ecx, dword [0x56174c]
mov edi, dword [0x561760]
lea eax, [ecx + 1]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x534b20]
mov eax, edi
shr eax, 0x1f
cvtpd2ps xmm3, xmm0
movd xmm0, edi
cvtdq2pd xmm0, xmm0
movaps xmm2, xmm3
addsd xmm0, qword [eax*8 + 0x534b20]
cvtpd2ps xmm1, xmm0
movss xmm0, dword [0x561744]
divss xmm2, xmm1
comiss xmm2, xmm0
jbe 0x490830
divss xmm3, xmm0
movaps xmm0, xmm3
call fcn.004062f0
call fcn.004ec900
mov ecx, 8
cmp eax, ecx
cmova ecx, eax
cmp edi, ecx
jae 0x490812
cmp edi, 0x200
jae 0x490810
shl edi, 3
cmp edi, ecx
jae 0x490812
mov edi, ecx
push edi
call fcn.00496300
push ebx
lea eax, [esi + 8]
push eax
lea eax, [ebp - 0x1c]
push eax
call fcn.004995d0
mov ecx, dword [0x56174c]
mov edx, dword [eax]
jmp 0x490833
mov edx, dword [ebp - 0x14]
mov edi, dword [edx + 4]
inc ecx
mov dword [0x56174c], ecx
mov dword [esi], edx
mov dword [esi + 4], edi
mov dword [edi], esi
mov dword [edx + 4], esi
mov eax, dword [0x56175c]
mov ecx, dword [0x561750]
and eax, ebx
mov ebx, dword [ecx + eax*8]
cmp ebx, dword [0x561748]
jne 0x490864
mov dword [ecx + eax*8], esi
jmp 0x490873
cmp ebx, edx
jne 0x49086d
mov dword [ecx + eax*8], esi
jmp 0x490877
cmp dword [ecx + eax*8 + 4], edi
jne 0x490877
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.004bd7c6
int3
Function at 0x491bc0
Capabilities:
Hash data using fnv

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x4f20a5
mov eax, dword fs:[0]
push eax
sub esp, 0x14
push ebx
push esi
push edi
mov eax, dword [0x53e060]
xor eax, ebp
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov edi, dword [ebp + 0xc]
movzx eax, byte [edi]
xor eax, 0x811c9dc5
imul ecx, eax, 0x1000193
movzx eax, byte [edi + 1]
xor ecx, eax
movzx eax, byte [edi + 2]
imul ecx, ecx, 0x1000193
xor ecx, eax
movzx eax, byte [edi + 3]
imul ecx, ecx, 0x1000193
xor ecx, eax
lea eax, [ebp - 0x14]
imul ebx, ecx, 0x1000193
push ebx
push edi
push eax
call fcn.00499ad0
mov ecx, dword [ebp - 0x10]
test ecx, ecx
je 0x491c4c
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 [0x56c404], 0xaaaaaaa
je 0x491da8
mov dword [ebp - 0x1c], 0x56c400
mov dword [ebp - 4], 0
push 0x18
mov dword [ebp - 0x18], 0
call fcn.004be4c6
mov ecx, dword [edi]
mov esi, eax
add esp, 4
mov dword [ebp - 0x18], esi
mov dword [esi + 8], ecx
mov dword [esi + 0xc], 0
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 0
mov dword [ebp - 4], 1
mov ecx, dword [0x56c404]
mov edi, dword [0x56c418]
lea eax, [ecx + 1]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x534b20]
mov eax, edi
shr eax, 0x1f
cvtpd2ps xmm3, xmm0
movd xmm0, edi
cvtdq2pd xmm0, xmm0
movaps xmm2, xmm3
addsd xmm0, qword [eax*8 + 0x534b20]
cvtpd2ps xmm1, xmm0
movss xmm0, dword [0x56c3fc]
divss xmm2, xmm1
comiss xmm2, xmm0
jbe 0x491d44
divss xmm3, xmm0
movaps xmm0, xmm3
call fcn.004062f0
call fcn.004ec900
mov ecx, 8
cmp eax, ecx
cmova ecx, eax
cmp edi, ecx
jae 0x491d26
cmp edi, 0x200
jae 0x491d24
shl edi, 3
cmp edi, ecx
jae 0x491d26
mov edi, ecx
push edi
call fcn.00496ee0
push ebx
lea eax, [esi + 8]
push eax
lea eax, [ebp - 0x1c]
push eax
call fcn.00499ad0
mov ecx, dword [0x56c404]
mov edx, dword [eax]
jmp 0x491d47
mov edx, dword [ebp - 0x14]
mov edi, dword [edx + 4]
inc ecx
mov dword [0x56c404], ecx
mov dword [esi], edx
mov dword [esi + 4], edi
mov dword [edi], esi
mov dword [edx + 4], esi
mov eax, dword [0x56c414]
mov ecx, dword [0x56c408]
and eax, ebx
mov ebx, dword [ecx + eax*8]
cmp ebx, dword [0x56c400]
jne 0x491d78
mov dword [ecx + eax*8], esi
jmp 0x491d87
cmp ebx, edx
jne 0x491d81
mov dword [ecx + eax*8], esi
jmp 0x491d8b
cmp dword [ecx + eax*8 + 4], edi
jne 0x491d8b
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.004bd7c6
int3
Function at 0x491dc0
Capabilities:
Hash data using fnv

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x4f20e5
mov eax, dword fs:[0]
push eax
sub esp, 0x14
push ebx
push esi
push edi
mov eax, dword [0x53e060]
xor eax, ebp
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov edi, dword [ebp + 0xc]
movzx eax, byte [edi]
xor eax, 0x811c9dc5
imul ecx, eax, 0x1000193
movzx eax, byte [edi + 1]
xor ecx, eax
lea eax, [ebp - 0x14]
imul ebx, ecx, 0x1000193
push ebx
push edi
push eax
call fcn.00499b40
mov ecx, dword [ebp - 0x10]
test ecx, ecx
je 0x491e34
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 [0x56172c], 0xfffffff
je 0x491f83
mov dword [ebp - 0x1c], 0x561728
mov dword [ebp - 4], 0
push 0x10
mov dword [ebp - 0x18], 0
call fcn.004be4c6
mov ecx, dword [edi]
mov esi, eax
add esp, 4
mov dword [ebp - 0x18], esi
mov dword [esi + 8], ecx
mov cx, word [edi + 4]
mov word [esi + 0xc], cx
mov dword [ebp - 4], 1
mov ecx, dword [0x56172c]
mov edi, dword [0x561740]
lea eax, [ecx + 1]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x534b20]
mov eax, edi
shr eax, 0x1f
cvtpd2ps xmm3, xmm0
movd xmm0, edi
cvtdq2pd xmm0, xmm0
movaps xmm2, xmm3
addsd xmm0, qword [eax*8 + 0x534b20]
cvtpd2ps xmm1, xmm0
movss xmm0, dword [0x561724]
divss xmm2, xmm1
comiss xmm2, xmm0
jbe 0x491f1f
divss xmm3, xmm0
movaps xmm0, xmm3
call fcn.004062f0
call fcn.004ec900
mov ecx, 8
cmp eax, ecx
cmova ecx, eax
cmp edi, ecx
jae 0x491f01
cmp edi, 0x200
jae 0x491eff
shl edi, 3
cmp edi, ecx
jae 0x491f01
mov edi, ecx
push edi
call fcn.00497060
push ebx
lea eax, [esi + 8]
push eax
lea eax, [ebp - 0x1c]
push eax
call fcn.00499b40
mov ecx, dword [0x56172c]
mov edx, dword [eax]
jmp 0x491f22
mov edx, dword [ebp - 0x14]
mov edi, dword [edx + 4]
inc ecx
mov dword [0x56172c], ecx
mov dword [esi], edx
mov dword [esi + 4], edi
mov dword [edi], esi
mov dword [edx + 4], esi
mov eax, dword [0x56173c]
mov ecx, dword [0x561730]
and eax, ebx
mov ebx, dword [ecx + eax*8]
cmp ebx, dword [0x561728]
jne 0x491f53
mov dword [ecx + eax*8], esi
jmp 0x491f62
cmp ebx, edx
jne 0x491f5c
mov dword [ecx + eax*8], esi
jmp 0x491f66
cmp dword [ecx + eax*8 + 4], edi
jne 0x491f66
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.004bd7c6
int3