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

Disassembly:
push ebp
mov ebp, esp
sub esp, 0xc
mov edx, dword [ebp + 8]
mov eax, 0x1fffffff
push ebx
push esi
push edi
mov edi, ecx
mov esi, 1
bsr ecx, eax
mov eax, esi
mov dword [ebp - 4], edi
shl eax, cl
cmp edx, eax
ja 0x469d05
mov ebx, dword [edi + 4]
lea eax, [edx - 1]
or eax, esi
mov dword [ebp - 8], ebx
bsr ecx, eax
push ebx
lea ecx, [ecx + 1]
shl esi, cl
lea ecx, [edi + 0xc]
lea eax, [esi + esi]
push eax
call fcn.00401830
lea eax, [esi - 1]
mov dword [edi + 0x1c], esi
mov dword [edi + 0x18], eax
mov edx, dword [edi + 4]
mov edx, dword [edx]
cmp edx, ebx
je 0x469ce0
mov ecx, edx
movzx eax, byte [ecx + 8]
xor eax, 0x811c9dc5
mov edx, dword [edx]
imul esi, eax, 0x1000193
movzx eax, byte [ecx + 9]
xor esi, eax
movzx eax, byte [ecx + 0xa]
imul esi, esi, 0x1000193
xor esi, eax
movzx eax, byte [ecx + 0xb]
imul esi, esi, 0x1000193
xor esi, eax
imul eax, esi, 0x1000193
mov esi, dword [edi + 0x18]
and esi, eax
mov eax, dword [edi + 0xc]
lea ebx, [eax + esi*8]
mov eax, dword [ebp - 8]
mov dword [ebp + 8], ebx
cmp dword [ebx], eax
jne 0x469c63
mov dword [ebx], ecx
mov dword [ebx + 4], ecx
jmp 0x469cd0
mov eax, dword [ebx + 4]
mov edi, dword [ecx + 8]
cmp edi, dword [eax + 8]
jne 0x469c9a
mov eax, dword [eax]
mov dword [ebp - 0xc], eax
cmp eax, ecx
je 0x469c95
mov edi, dword [ecx + 4]
mov ebx, dword [ebp - 0xc]
mov dword [edi], edx
mov esi, dword [edx + 4]
mov dword [esi], eax
mov eax, dword [eax + 4]
mov dword [eax], ecx
mov dword [ebx + 4], esi
mov ebx, dword [ebp + 8]
mov dword [edx + 4], edi
mov dword [ecx + 4], eax
mov dword [ebx + 4], ecx
jmp 0x469ccd
mov ebx, dword [ebx]
mov esi, eax
cmp ebx, eax
je 0x469cb0
mov eax, dword [eax + 4]
mov esi, eax
cmp edi, dword [eax + 8]
je 0x469ce9
cmp ebx, eax
jne 0x469ca2
mov ebx, dword [ecx + 4]
mov dword [ebx], edx
mov edi, dword [edx + 4]
mov dword [edi], esi
mov eax, dword [esi + 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 edi, dword [ebp - 4]
mov ecx, edx
cmp edx, dword [ebp - 8]
jne 0x469c12
jmp 0x469ce0
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4
mov edi, dword [ecx + 4]
mov ebx, dword [eax]
mov dword [edi], edx
mov esi, dword [edx + 4]
mov dword [esi], ebx
mov eax, dword [ebx + 4]
mov dword [eax], ecx
mov dword [ebx + 4], esi
mov dword [edx + 4], edi
mov dword [ecx + 4], eax
jmp 0x469ccd
push str.invalid_hash_bucket_count
call fcn.004e3511
int3

Function at 0x469f80
Capabilities:
Hash data using fnv

Disassembly:
push ebp
mov ebp, esp
sub esp, 8
push esi
mov esi, dword [ebp + 8]
push edi
mov edi, ecx
movzx eax, byte [esi]
xor eax, 0x811c9dc5
imul edx, eax, 0x1000193
movzx eax, byte [esi + 1]
xor edx, eax
movzx eax, byte [esi + 2]
imul edx, edx, 0x1000193
xor edx, eax
movzx eax, byte [esi + 3]
imul ecx, edx, 0x1000193
xor ecx, eax
imul eax, ecx, 0x1000193
mov ecx, edi
push eax
push esi
lea eax, [ebp - 8]
push eax
call fcn.0045c130
mov eax, dword [ebp - 4]
pop edi
pop esi
test eax, eax
je 0x469fde
add eax, 0xc
mov esp, ebp
pop ebp
ret 4
push str.invalid_unordered_map_K__T__key
call fcn.004e3531
int3
Function at 0x46a030
Capabilities:
Hash data using fnv

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x50d415
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x18
push ebx
mov ebx, dword [ebp + 0xc]
push esi
mov esi, ecx
push edi
movzx eax, byte [ebx]
xor eax, 0x811c9dc5
mov edi, dword [ebp + 8]
imul edx, eax, 0x1000193
movzx eax, byte [ebx + 1]
xor edx, eax
movzx eax, byte [ebx + 2]
imul ecx, edx, 0x1000193
xor ecx, eax
movzx eax, byte [ebx + 3]
imul ecx, ecx, 0x1000193
xor ecx, eax
imul eax, ecx, 0x1000193
mov ecx, esi
push eax
mov dword [ebp + 8], eax
lea eax, [ebp - 0x1c]
push ebx
push eax
call fcn.0045c130
mov eax, dword [ebp - 0x18]
test eax, eax
je 0x46a0a8
mov dword [edi], eax
xor al, al
jmp 0x46a155
cmp dword [esi + 8], 0x15555555
je 0x46a16d
lea eax, [esi + 4]
mov dword [ebp - 0x24], eax
push 0xc
mov dword [ebp - 4], 0
mov dword [ebp - 0x20], 0
call fcn.004e5c9b
mov dword [ebp - 0x14], eax
add esp, 4
mov dword [ebp - 0x20], eax
lea ecx, [eax + 8]
mov eax, dword [ebx]
mov dword [ebp - 0x10], ecx
mov dword [ecx], eax
mov eax, dword [esi + 8]
fld dword [esi]
add eax, 1
mov dword [ebp + 0xc], eax
fild dword [ebp + 0xc]
mov dword [ebp - 4], 1
jns 0x46a100
fadd dword [0x5199b0]
fstp dword [ebp + 0xc]
fld dword [ebp + 0xc]
mov eax, dword [esi + 0x1c]
fild dword [esi + 0x1c]
test eax, eax
jns 0x46a116
fadd dword [0x5199b0]
fstp dword [ebp + 0xc]
fdiv dword [ebp + 0xc]
fcompi st(1)
fstp st(0)
jbe 0x46a13f
mov ecx, esi
call fcn.00469e40
mov ebx, dword [ebp + 8]
lea eax, [ebp - 0x1c]
push ebx
push dword [ebp - 0x10]
mov ecx, esi
push eax
call fcn.0045c130
mov ecx, dword [eax]
jmp 0x46a145
mov ecx, dword [ebp - 0x1c]
mov ebx, dword [ebp + 8]
push dword [ebp - 0x14]
push ecx
push ebx
mov ecx, esi
call fcn.0042b520
mov dword [edi], eax
mov al, 1
mov byte [edi + 4], al
mov eax, edi
mov ecx, dword [ebp - 0xc]
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.004e3511
int3
Function at 0x46a3f0
Capabilities:
Enumerate pe sections

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x50d43d
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x28
push ebx
mov ebx, ecx
mov ecx, dword [ebp + 8]
mov dword [ebp - 0x18], ebx
push esi
push edi
movzx eax, word [ecx + 4]
mov edx, dword [ecx]
mov dword [ebp - 0x10], edx
mov dword [ebx], 0
mov dword [ebx + 4], 0
lea edi, [eax*4]
mov dword [ebx + 8], 0
test eax, eax
je 0x46a468
push eax
mov ecx, ebx
call fcn.00402650
mov dword [ebx], eax
mov dword [ebx + 4], eax
add eax, edi
push edi
push dword [ebp - 0x10]
mov dword [ebx + 8], eax
mov esi, dword [ebx]
push esi
call fcn.004e74d0
mov ecx, dword [ebp + 8]
lea eax, [edi + esi]
add esp, 0xc
mov dword [ebx + 4], eax
movzx edi, word [ecx + 0x18]
mov eax, edi
mov dword [ebp - 4], 0
shl eax, 4
mov dword [ebp - 0x10], eax
mov eax, dword [ecx + 0x14]
mov dword [ebp - 0x14], eax
mov dword [ebx + 0xc], 0
mov dword [ebx + 0x10], 0
mov dword [ebx + 0x14], 0
test edi, edi
je 0x46a505
shl edi, 4
cmp edi, 0x1000
jb 0x46a4ce
lea eax, [edi + 0x23]
cmp eax, edi
jbe 0x46a586
push eax
call fcn.004e5c9b
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x46a58b
lea eax, [ecx + 0x23]
and eax, 0xffffffe0
mov dword [eax - 4], ecx
jmp 0x46a4df
test edi, edi
je 0x46a4dd
push edi
call fcn.004e5c9b
add esp, 4
jmp 0x46a4df
xor eax, eax
push dword [ebp - 0x10]
mov dword [ebx + 0xc], eax
push dword [ebp - 0x14]
mov dword [ebx + 0x10], eax
add eax, edi
mov dword [ebx + 0x14], eax
mov esi, dword [ebx + 0xc]
push esi
call fcn.004e74d0
mov ecx, dword [ebp + 8]
lea eax, [edi + esi]
add esp, 0xc
mov dword [ebx + 0x10], eax
mov eax, dword [ebx]
lea edi, [ebx + 0x18]
mov dword [ebp - 0x34], eax
lea esi, [ebp - 0x34]
movzx eax, word [ecx + 4]
mov word [ebp - 0x30], ax
movzx eax, word [ecx + 6]
mov word [ebp - 0x2e], ax
mov eax, dword [ecx + 8]
mov dword [ebp - 0x2c], eax
mov eax, dword [ecx + 0xc]
mov dword [ebp - 0x28], eax
mov eax, dword [ecx + 0x10]
mov dword [ebp - 0x24], eax
mov eax, dword [ebx + 0xc]
mov dword [ebp - 0x20], eax
movzx eax, word [ecx + 0x18]
mov ecx, 7
mov word [ebp - 0x1c], ax
mov eax, ebx
rep movsd dword es:[edi], dword [esi]
mov ecx, dword [ebp - 0xc]
mov dword [ebx + 0x34], 0
mov dword [ebx + 0x38], 0
mov dword [ebx + 0x3c], 0
pop edi
mov dword [ebx + 0x40], 0
mov dword [ebx + 0x44], 0
mov dword [ebx + 0x48], 0
pop esi
pop ebx
mov dword fs:[0], ecx
mov esp, ebp
pop ebp
ret 4
call fcn.00401930
call fcn.004ea5cf
int3
Function at 0x46ab10
Capabilities:
Encode data using xor
Hash data using fnv

Disassembly:
push ebp
mov ebp, esp
mov eax, dword fs:[0]
mov edx, dword [ebp + 0xc]
push 0xffffffffffffffff
push 0x50a755
push eax
mov dword fs:[0], esp
sub esp, 0x20
cmp dword [edx + 0x14], 0x10
push ebx
push esi
push edi
mov ebx, ecx
mov edi, edx
jb 0x46ab3d
mov edi, dword [edx]
xor ecx, ecx
mov esi, 0x811c9dc5
cmp dword [edx + 0x10], ecx
jbe 0x46ab62
lea esp, [esp]
movzx eax, byte [ecx + edi]
inc ecx
xor eax, esi
imul esi, eax, 0x1000193
cmp ecx, dword [edx + 0x10]
jb 0x46ab50
push esi
push edx
lea eax, [ebp - 0x1c]
mov ecx, ebx
push eax
call fcn.00404910
mov ecx, dword [ebp - 0x18]
test ecx, ecx
je 0x46ab92
mov eax, dword [ebp + 8]
pop edi
pop esi
pop ebx
mov dword [eax], ecx
mov byte [eax + 4], 0
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
mov esp, ebp
pop ebp
ret 8
cmp dword [ebx + 8], 0x7ffffff
je 0x46acf1
lea eax, [ebx + 4]
mov dword [ebp - 0x24], eax
push 0x20
mov dword [ebp - 4], 0
mov dword [ebp - 0x20], 0
call fcn.004e5c9b
add esp, 4
mov edi, eax
mov dword [ebp - 0x20], edi
push dword [ebp + 0xc]
lea ecx, [edi + 8]
call fcn.004054a0
mov eax, dword [ebx + 8]
fld dword [ebx]
mov dword [ebp - 0x10], eax
add eax, 1
mov dword [ebp + 0xc], eax
fild dword [ebp + 0xc]
mov dword [ebp - 4], 1
jns 0x46abed
fadd dword [0x5199b0]
fstp dword [ebp + 0xc]
fld dword [ebp + 0xc]
mov eax, dword [ebx + 0x1c]
mov dword [ebp + 0xc], eax
mov dword [ebp - 0x14], eax
fild dword [ebp + 0xc]
test eax, eax
jns 0x46ac09
fadd dword [0x5199b0]
fstp dword [ebp + 0xc]
fld dword [ebp + 0xc]
fdivr st(1)
fcompi st(2)
ja 0x46ac21
mov edx, dword [ebp - 0x1c]
fstp st(0)
mov eax, dword [ebp - 0x10]
fstp st(0)
jmp 0x46ac96
fdivrp st(1)
sub esp, 8
fstp dword [ebp + 0xc]
fld dword [ebp + 0xc]
fstp qword [esp]
call fcn.004f1910
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 - 0x10], eax
fldcw word [ebp - 0x10]
fistp qword [ebp - 0x1c]
mov eax, dword [ebp - 0x1c]
cmp eax, ecx
cmova ecx, eax
mov eax, dword [ebp - 0x14]
fldcw word [ebp + 0xe]
cmp eax, ecx
jae 0x46ac79
cmp eax, 0x200
jae 0x46ac77
shl eax, 3
cmp eax, ecx
jae 0x46ac79
mov eax, ecx
push eax
mov ecx, ebx
call fcn.00405cd0
push esi
lea eax, [edi + 8]
mov ecx, ebx
push eax
lea eax, [ebp - 0x2c]
push eax
call fcn.00404910
mov edx, dword [eax]
mov eax, dword [ebx + 8]
mov ecx, dword [edx + 4]
inc eax
mov dword [ebx + 8], eax
mov dword [edi], edx
mov dword [edi + 4], ecx
mov dword [ecx], edi
mov dword [edx + 4], edi
mov eax, dword [ebx + 0x18]
mov dword [ebp + 0xc], ecx
and eax, esi
mov ecx, dword [ebx + 0xc]
mov esi, dword [ecx + eax*8]
cmp esi, dword [ebx + 4]
jne 0x46acbf
mov dword [ecx + eax*8], edi
jmp 0x46acd1
cmp esi, edx
jne 0x46acc8
mov dword [ecx + eax*8], edi
jmp 0x46acd5
mov edx, dword [ebp + 0xc]
cmp dword [ecx + eax*8 + 4], edx
jne 0x46acd5
mov dword [ecx + eax*8 + 4], edi
mov eax, dword [ebp + 8]
mov ecx, dword [ebp - 0xc]
mov dword [eax], edi
pop edi
pop esi
mov byte [eax + 4], 1
pop ebx
mov dword fs:[0], ecx
mov esp, ebp
pop ebp
ret 8
push str.unordered_map_set_too_long
call fcn.004e3511
int3
Function at 0x46aec0
Capabilities:
Access peb ldr_data
Get process heap force flags

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x50d4a0
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 8
push ebx
mov eax, ecx
push esi
push edi
push 8
mov dword [ebp - 0x10], eax
mov dword [eax], vtable.std::basic_streambuf_char__struct_std::char_traits_char__.0
call fcn.004e5c9b
mov esi, eax
add esp, 4
test esi, esi
je 0x46af0f
push 1
mov dword [ebp - 4], 0
call fcn.004e41d1
add esp, 4
mov dword [esi + 4], eax
jmp 0x46af11
xor esi, esi
mov eax, dword [ebp - 0x10]
lea edi, [eax + 0x14]
lea ecx, [eax + 0x18]
lea edx, [eax + 0x24]
mov dword [eax + 0x20], ecx
lea ebx, [eax + 4]
mov dword [eax + 0xc], ebx
mov dword [eax + 0x34], esi
lea esi, [eax + 8]
mov dword [eax + 0x2c], edx
mov dword [eax + 0x10], esi
mov dword [eax + 0x1c], edi
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 dword [ebx], 0
mov ebx, dword [ebp + 8]
mov ecx, ebx
mov esi, dword [ebp - 0x10]
not ecx
and ecx, 1
mov dword [edi], 0
shl ecx, 2
mov eax, ebx
mov dword [edx], 0
mov edx, ecx
or edx, 2
mov dword [esi], vtable.std::basic_stringbuf_char__struct_std::char_traits_char___class_std::allocator_char__.0
and al, 2
mov dword [esi + 0x38], 0
mov eax, ebx
cmovne edx, ecx
mov ecx, edx
or ecx, 8
and al, 8
pop edi
cmove ecx, edx
mov eax, ecx
or eax, 0x10
and bl, 4
cmove eax, ecx
mov ecx, dword [ebp - 0xc]
mov dword [esi + 0x3c], eax
mov eax, esi
pop esi
pop ebx
mov dword fs:[0], ecx
mov esp, ebp
pop ebp
ret 4

Function at 0x46b370
Capabilities:
Hash data using fnv

Disassembly:
push ebp
mov ebp, esp
sub esp, 8
push ebx
mov ebx, dword [ebp + 0xc]
movzx eax, bl
xor eax, 0x811c9dc5
imul edx, eax, 0x1000193
mov eax, ebx
shr eax, 8
movzx eax, al
push esi
mov esi, ecx
xor edx, eax
mov eax, ebx
shr eax, 0x10
movzx eax, al
imul ecx, edx, 0x1000193
xor ecx, eax
mov eax, ebx
imul ecx, ecx, 0x1000193
shr eax, 0x18
xor ecx, eax
imul eax, ecx, 0x1000193
mov ecx, esi
push eax
lea eax, [ebp + 0xc]
push eax
lea eax, [ebp - 8]
push eax
call fcn.0045c130
mov eax, dword [eax + 4]
test eax, eax
je 0x46b3eb
cmp eax, dword [esi + 4]
je 0x46b3eb
mov ecx, dword [ebp + 8]
add eax, 0xc
push eax
call fcn.004054a0
mov eax, dword [ebp + 8]
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 8
mov esi, dword [ebp + 8]
push ebx
push esi
call fcn.0046d310
add esp, 8
mov eax, esi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 8
Function at 0x46ed10
Capabilities:
Access peb ldr_data

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x50d4a0
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 8
push ebx
mov eax, ecx
push esi
push edi
push 8
mov dword [ebp - 0x10], eax
mov dword [eax], vtable.std::basic_streambuf_char__struct_std::char_traits_char__.0
call fcn.004e5c9b
mov esi, eax
add esp, 4
test esi, esi
je 0x46ed5f
push 1
mov dword [ebp - 4], 0
call fcn.004e41d1
add esp, 4
mov dword [esi + 4], eax
jmp 0x46ed61
xor esi, esi
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 ecx, dword [ebp - 0xc]
mov dword [eax], 0
mov eax, dword [ebp - 0x10]
mov dword [ebx], 0
mov dword [edi], 0
pop edi
pop esi
mov dword [edx], 0
pop ebx
mov dword fs:[0], ecx
mov esp, ebp
pop ebp
ret
Function at 0x471070
Capabilities:
Hash data using fnv

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x50dbd5
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x24
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.0045c130
mov ecx, dword [ebp - 0x14]
test ecx, ecx
je 0x4710f8
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 0x471264
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.004e5c9b
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 ecx, dword [edi + 8]
fld dword [edi]
mov dword [ebp - 4], 1
lea eax, [ecx + 1]
mov dword [ebp + 0xc], eax
fild dword [ebp + 0xc]
test eax, eax
jns 0x471167
fadd dword [0x5199b0]
fstp dword [ebp + 0xc]
fld dword [ebp + 0xc]
mov ebx, dword [edi + 0x1c]
fild dword [edi + 0x1c]
test ebx, ebx
jns 0x47117d
fadd dword [0x5199b0]
fstp dword [ebp + 0xc]
fld dword [ebp + 0xc]
fdivr st(1)
fcompi st(2)
ja 0x471192
mov edx, dword [ebp - 0x18]
fstp st(0)
fstp st(0)
jmp 0x471207
fdivrp st(1)
sub esp, 8
fstp dword [ebp + 0xc]
fld dword [ebp + 0xc]
fstp qword [esp]
call fcn.004f1910
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 0x4711e8
cmp ebx, 0x200
jae 0x4711e6
shl ebx, 3
cmp ebx, ecx
jae 0x4711e8
mov ebx, ecx
push ebx
mov ecx, edi
call fcn.00474150
push dword [ebp - 0x10]
lea eax, [esi + 8]
mov ecx, edi
push eax
lea eax, [ebp - 0x30]
push eax
call fcn.0045c130
mov ecx, dword [edi + 8]
mov edx, dword [eax]
mov ebx, dword [edx + 4]
lea eax, [ecx + 1]
mov dword [edi + 8], eax
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 0x471235
mov dword [ecx + eax*8], esi
jmp 0x471244
cmp edi, edx
jne 0x47123e
mov dword [ecx + eax*8], esi
jmp 0x471248
cmp dword [ecx + eax*8 + 4], ebx
jne 0x471248
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.004e3511
int3
Function at 0x47abc0
Capabilities:
Access peb ldr_data

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x50e8cc
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 8
cmp dword [ebp + 8], 0
push ebx
mov ebx, ecx
push esi
mov dword [ebp - 0x14], ebx
push edi
mov dword [ebp - 0x10], 0
je 0x47ac2a
mov dword [ebx], 0x51d160
mov dword [ebx + 0x58], 0
mov dword [ebx + 0x78], 0
mov dword [ebx + 0x7c], 0
mov dword [ebx + 0x80], 0
mov dword [ebx + 0x50], vtable.std::basic_ios_char__struct_std::char_traits_char__.0
mov dword [ebp - 4], 0
mov dword [ebp - 0x10], 1
push 0
lea esi, [ebx + 4]
mov ecx, ebx
push 0
push esi
mov dword [ebp + 8], esi
call fcn.00433aa0
mov eax, dword [ebx]
push 8
mov dword [ebp - 4], 1
mov eax, dword [eax + 4]
mov dword [ebx + eax], vtable.std::basic_ostringstream_char__struct_std::char_traits_char___class_std::allocator_char__.0
mov eax, dword [ebx]
mov ecx, dword [eax + 4]
lea eax, [ecx - 0x50]
mov dword [ecx + ebx - 4], eax
mov dword [esi], vtable.std::basic_streambuf_char__struct_std::char_traits_char__.0
call fcn.004e5c9b
mov esi, eax
add esp, 4
test esi, esi
je 0x47ac84
push 1
mov byte [ebp - 4], 2
call fcn.004e41d1
add esp, 4
mov dword [esi + 4], eax
jmp 0x47ac86
xor esi, esi
lea eax, [ebx + 4]
mov dword [eax + 0x34], esi
lea ebx, [eax + 4]
mov dword [eax + 0xc], ebx
lea esi, [eax + 8]
mov dword [eax + 0x10], esi
lea edi, [eax + 0x14]
mov dword [eax + 0x1c], edi
lea ecx, [eax + 0x18]
mov dword [eax + 0x20], ecx
lea edx, [eax + 0x24]
mov dword [eax + 0x2c], edx
add eax, 0x28
mov dword [ebp - 0x10], ebx
mov ebx, dword [ebp + 8]
mov dword [ebx + 0x30], eax
mov ebx, dword [ebp - 0x10]
mov dword [esi], 0
mov dword [ecx], 0
mov ecx, dword [ebp - 0xc]
mov dword [eax], 0
mov eax, dword [ebp + 8]
mov dword [ebx], 0
mov dword [edi], 0
mov dword [edx], 0
pop edi
mov dword [eax], vtable.std::basic_stringbuf_char__struct_std::char_traits_char___class_std::allocator_char__.0
mov dword [eax + 0x38], 0
mov dword [eax + 0x3c], 4
mov eax, dword [ebp - 0x14]
pop esi
pop ebx
mov dword fs:[0], ecx
mov esp, ebp
pop ebp
ret 4
Function at 0x47e5a0
Capabilities:
Hash data using fnv

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x50eb0d
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x34
mov edx, dword [ebp + 8]
push esi
push edi
mov edi, ecx
movzx eax, word [edx + 0x1e]
mov dword [ebp - 0x24], edi
mov esi, eax
cmp eax, 0x36
jne 0x47e76d
mov eax, dword [edx + 0x28]
push ebx
lea ebx, [edi + 0x20]
mov dword [edi + 0xc], eax
mov ecx, ebx
call fcn.0048edb0
push dword [edi + 0xc]
mov ecx, dword [edi]
call fcn.004dac40
mov dword [edi + 0x1c], eax
mov ecx, dword [eax]
mov eax, dword [eax + 4]
mov dword [ebp + 8], ecx
mov dword [ebp - 0x20], eax
cmp ecx, eax
je 0x47e799
mov edx, dword [ecx]
movzx eax, dl
xor eax, 0x811c9dc5
mov edi, dword [edi]
imul ecx, eax, 0x1000193
mov eax, edx
shr eax, 8
movzx eax, al
mov dword [ebp - 0x10], edx
xor ecx, eax
mov eax, edx
shr eax, 0x10
imul ecx, ecx, 0x1000193
movzx eax, al
shr edx, 0x18
xor ecx, eax
imul eax, ecx, 0x1000193
lea ecx, [edi + 0x274]
xor eax, edx
imul eax, eax, 0x1000193
push eax
lea eax, [ebp - 0x10]
push eax
lea eax, [ebp - 0x34]
push eax
call fcn.0045c130
mov eax, dword [eax + 4]
test eax, eax
jne 0x47e666
mov eax, dword [edi + 0x278]
cmp eax, dword [edi + 0x278]
je 0x47e757
add eax, 0xc
je 0x47e757
mov edi, dword [eax]
mov ecx, dword [ebx]
mov dword [ebp - 0x18], edi
mov dword [ebp - 0x1c], ecx
mov esi, dword [edi]
cmp esi, edi
je 0x47e757
nop
lea eax, [esi + 0x10]
push eax
push ecx
lea eax, [ebp - 0x40]
mov ecx, ebx
push eax
call fcn.0047a6f0
cmp byte [eax + 8], 0
mov ecx, dword [eax]
mov dword [ebp - 0x14], ecx
mov ecx, dword [eax + 4]
mov dword [ebp - 0x10], ecx
jne 0x47e70e
cmp dword [ebx + 4], 0xccccccc
je 0x47e7ac
mov edi, dword [ebx]
mov dword [ebp - 0x2c], ebx
push 0x14
mov dword [ebp - 4], 0
mov dword [ebp - 0x28], 0
call fcn.004e5c9b
mov ecx, dword [esi + 0x10]
add esp, 4
mov dword [ebp - 4], 0xffffffff
mov dword [ebp - 0x28], 0
mov dword [eax + 0x10], ecx
mov ecx, ebx
push eax
push dword [ebp - 0x10]
mov dword [eax], edi
push dword [ebp - 0x14]
mov dword [eax + 4], edi
mov dword [eax + 8], edi
mov word [eax + 0xc], 0
call fcn.0044b9a0
mov edi, dword [ebp - 0x18]
mov eax, dword [esi + 8]
cmp byte [eax + 0xd], 0
je 0x47e734
mov eax, dword [esi + 4]
cmp byte [eax + 0xd], 0
jne 0x47e730
cmp esi, dword [eax + 8]
jne 0x47e730
mov esi, eax
mov eax, dword [eax + 4]
cmp byte [eax + 0xd], 0
je 0x47e720
mov esi, eax
jmp 0x47e74c
mov esi, eax
mov ecx, dword [esi]
cmp byte [ecx + 0xd], 0
jne 0x47e74c
mov edi, edi
mov eax, dword [ecx]
mov esi, ecx
mov ecx, eax
cmp byte [eax + 0xd], 0
je 0x47e740
mov ecx, dword [ebp - 0x1c]
cmp esi, edi
jne 0x47e690
mov ecx, dword [ebp + 8]
add ecx, 4
mov dword [ebp + 8], ecx
cmp ecx, dword [ebp - 0x20]
je 0x47e799
mov edi, dword [ebp - 0x24]
jmp 0x47e605
cmp esi, 0x38
jne 0x47e79a
lea eax, [edi + 0x10]
mov dword [edi + 0xc], 0
lea ecx, [edi + 0x20]
mov dword [edi + 0x1c], eax
call fcn.0048edb0
pop edi
pop esi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
mov esp, ebp
pop ebp
ret 4
pop ebx
mov ecx, dword [ebp - 0xc]
pop edi
pop esi
mov dword fs:[0], ecx
mov esp, ebp
pop ebp
ret 4
call fcn.0044c400
int3