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

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x10078af5
mov eax, dword fs:[0]
push eax
sub esp, 0x1c
push ebx
push esi
push edi
mov eax, dword [0x100a900c]
xor eax, ebp
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov ebx, dword [ebp + 0xc]
mov edi, dword [ebp + 8]
mov dword [ebp - 0x20], edi
movzx eax, byte [ebx]
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
push eax
mov dword [ebp - 0x1c], eax
lea eax, [ebp - 0x18]
push ebx
push eax
call fcn.10030040
mov eax, dword [ebp - 0x14]
test eax, eax
je 0x1002b4f3
mov dword [edi], eax
mov byte [edi + 4], 0
jmp 0x1002b656
cmp dword [0x100b04fc], 0xccccccc
jne 0x1002b50a
push str.unordered_map_set_too_long
call dword [sym.imp.MSVCP140.dll_void___cdecl_std::_Xlength_error_char_const__]
mov dword [ebp - 0x28], 0x100b04f8
mov dword [ebp - 4], 0
push 0x14
mov dword [ebp - 0x24], 0
call fcn.10074b36
movq xmm0, qword [ebx]
mov esi, eax
lea edi, [esi + 8]
add esp, 4
movq qword [edi], xmm0
mov ecx, dword [ebx + 8]
mov dword [ebp - 0x24], esi
mov dword [edi + 8], ecx
mov dword [ebp - 4], 1
mov ecx, dword [0x100b04fc]
mov ebx, dword [0x100b0510]
lea eax, [ecx + 1]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x1009fc00]
mov eax, ebx
shr eax, 0x1f
cvtpd2ps xmm2, xmm0
movd xmm0, ebx
cvtdq2pd xmm0, xmm0
movaps xmm1, xmm2
addsd xmm0, qword [eax*8 + 0x1009fc00]
cvtpd2ps xmm0, xmm0
divss xmm1, xmm0
movss xmm0, dword [0x100b04f4]
comiss xmm1, xmm0
jbe 0x1002b605
divss xmm2, xmm0
sub esp, 8
cvtps2pd xmm0, xmm2
movsd qword [ebp - 0x18], xmm0
fld qword [ebp - 0x18]
fstp qword [esp]
call sub.api_ms_win_crt_math_l1_1_0.dll_ceil
fstp qword [ebp - 0x18]
movsd xmm0, qword [ebp - 0x18]
add esp, 8
cvtpd2ps xmm0, xmm0
call fcn.10075ea0
mov ecx, 8
cmp eax, ecx
cmova ecx, eax
cmp ebx, ecx
jae 0x1002b5e8
cmp ebx, 0x200
jae 0x1002b5e6
shl ebx, 3
cmp ebx, ecx
jae 0x1002b5e8
mov ebx, ecx
push ebx
call fcn.1002d610
push dword [ebp - 0x1c]
lea eax, [ebp - 0x28]
push edi
push eax
call fcn.10030040
mov ecx, dword [0x100b04fc]
mov edx, dword [eax]
jmp 0x1002b608
mov edx, dword [ebp - 0x18]
mov ebx, dword [edx + 4]
inc ecx
mov dword [0x100b04fc], ecx
mov dword [esi], edx
mov dword [esi + 4], ebx
mov dword [ebx], esi
mov dword [edx + 4], esi
mov eax, dword [0x100b050c]
and eax, dword [ebp - 0x1c]
mov ecx, dword [0x100b0500]
mov edi, dword [ecx + eax*8]
cmp edi, dword [0x100b04f8]
jne 0x1002b63a
mov dword [ecx + eax*8], esi
jmp 0x1002b649
cmp edi, edx
jne 0x1002b643
mov dword [ecx + eax*8], esi
jmp 0x1002b64d
cmp dword [ecx + eax*8 + 4], ebx
jne 0x1002b64d
mov dword [ecx + eax*8 + 4], esi
mov edi, dword [ebp - 0x20]
mov dword [edi], esi
mov byte [edi + 4], 1
mov eax, edi
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
Function at 0x1002d330
Capabilities:
Hash data using fnv

Disassembly:
push ebp
mov ebp, esp
mov eax, 0x1fffffff
sub esp, 0x10
bsr ecx, eax
push ebx
push esi
push edi
mov edi, 1
mov eax, edi
shl eax, cl
mov ecx, dword [ebp + 8]
cmp ecx, eax
jbe 0x1002d35c
push str.invalid_hash_bucket_count
call dword [sym.imp.MSVCP140.dll_void___cdecl_std::_Xlength_error_char_const__]
lea eax, [ecx - 1]
mov esi, dword [0x100b0534]
or eax, 1
mov dword [ebp - 8], esi
bsr ecx, eax
push esi
lea ecx, [ecx + 1]
shl edi, cl
mov ecx, 0x100b053c
lea eax, [edi + edi]
push eax
call fcn.10021650
mov eax, dword [0x100b0534]
lea ebx, [edi - 1]
mov dword [0x100b0548], ebx
mov dword [0x100b054c], edi
mov eax, dword [eax]
mov ecx, eax
cmp eax, esi
je 0x1002d496
movzx edx, byte [eax + 8]
xor edx, 0x811c9dc5
mov ecx, dword [ecx]
imul edi, edx, 0x1000193
movzx edx, byte [eax + 9]
xor edi, edx
movzx edx, byte [eax + 0xa]
imul edi, edi, 0x1000193
xor edi, edx
movzx edx, byte [eax + 0xb]
imul edi, edi, 0x1000193
xor edi, edx
mov edx, dword [0x100b053c]
imul edi, edi, 0x1000193
and edi, ebx
mov ebx, dword [edx + edi*8]
lea edx, [edx + edi*8]
mov dword [ebp - 0xc], edx
cmp ebx, esi
jne 0x1002d3f4
mov dword [edx], eax
mov dword [edx + 4], eax
jmp 0x1002d461
mov edx, dword [edx + 4]
mov edi, dword [eax + 8]
cmp edi, dword [edx + 8]
jne 0x1002d42e
mov edx, dword [edx]
mov dword [ebp - 4], edx
cmp edx, eax
je 0x1002d426
mov ebx, dword [eax + 4]
mov esi, dword [ebp - 4]
mov dword [ebx], ecx
mov edi, dword [ecx + 4]
mov dword [edi], edx
mov edx, dword [edx + 4]
mov dword [edx], eax
mov dword [esi + 4], edi
mov esi, dword [ebp - 8]
mov dword [ecx + 4], ebx
mov dword [eax + 4], edx
mov edx, dword [ebp - 0xc]
mov dword [edx + 4], eax
jmp 0x1002d461
cmp ebx, edx
je 0x1002d43e
mov edx, dword [edx + 4]
cmp edi, dword [edx + 8]
je 0x1002d472
cmp ebx, edx
jne 0x1002d432
mov ebx, dword [eax + 4]
mov dword [ebp - 4], ebx
mov dword [ebx], ecx
mov ebx, dword [ecx + 4]
mov dword [ebx], edx
mov edi, dword [edx + 4]
mov dword [edi], eax
mov dword [edx + 4], ebx
mov edx, dword [ebp - 4]
mov dword [ecx + 4], edx
mov edx, dword [ebp - 0xc]
mov dword [eax + 4], edi
mov dword [edx], eax
mov eax, ecx
cmp ecx, esi
je 0x1002d496
mov ebx, dword [0x100b0548]
jmp 0x1002d3a2
mov ebx, dword [eax + 4]
mov edx, dword [edx]
mov dword [ebp - 4], edx
mov esi, edx
mov dword [ebx], ecx
mov edi, dword [ecx + 4]
mov dword [edi], edx
mov edx, dword [edx + 4]
mov dword [edx], eax
mov dword [esi + 4], edi
mov esi, dword [ebp - 8]
mov dword [ecx + 4], ebx
mov dword [eax + 4], edx
jmp 0x1002d461
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4
Function at 0x1002d4a0
Capabilities:
Hash data using fnv

Disassembly:
push ebp
mov ebp, esp
mov eax, 0x1fffffff
sub esp, 0x10
bsr ecx, eax
push ebx
push esi
push edi
mov edi, 1
mov eax, edi
shl eax, cl
mov ecx, dword [ebp + 8]
cmp ecx, eax
jbe 0x1002d4cc
push str.invalid_hash_bucket_count
call dword [sym.imp.MSVCP140.dll_void___cdecl_std::_Xlength_error_char_const__]
lea eax, [ecx - 1]
mov esi, dword [0x100b0404]
or eax, 1
mov dword [ebp - 8], esi
bsr ecx, eax
push esi
lea ecx, [ecx + 1]
shl edi, cl
mov ecx, 0x100b040c
lea eax, [edi + edi]
push eax
call fcn.10021650
mov eax, dword [0x100b0404]
lea ebx, [edi - 1]
mov dword [0x100b0418], ebx
mov dword [0x100b041c], edi
mov eax, dword [eax]
mov ecx, eax
cmp eax, esi
je 0x1002d606
movzx edx, byte [eax + 8]
xor edx, 0x811c9dc5
mov ecx, dword [ecx]
imul edi, edx, 0x1000193
movzx edx, byte [eax + 9]
xor edi, edx
movzx edx, byte [eax + 0xa]
imul edi, edi, 0x1000193
xor edi, edx
movzx edx, byte [eax + 0xb]
imul edi, edi, 0x1000193
xor edi, edx
mov edx, dword [0x100b040c]
imul edi, edi, 0x1000193
and edi, ebx
mov ebx, dword [edx + edi*8]
lea edx, [edx + edi*8]
mov dword [ebp - 0xc], edx
cmp ebx, esi
jne 0x1002d564
mov dword [edx], eax
mov dword [edx + 4], eax
jmp 0x1002d5d1
mov edx, dword [edx + 4]
mov edi, dword [eax + 8]
cmp edi, dword [edx + 8]
jne 0x1002d59e
mov edx, dword [edx]
mov dword [ebp - 4], edx
cmp edx, eax
je 0x1002d596
mov ebx, dword [eax + 4]
mov esi, dword [ebp - 4]
mov dword [ebx], ecx
mov edi, dword [ecx + 4]
mov dword [edi], edx
mov edx, dword [edx + 4]
mov dword [edx], eax
mov dword [esi + 4], edi
mov esi, dword [ebp - 8]
mov dword [ecx + 4], ebx
mov dword [eax + 4], edx
mov edx, dword [ebp - 0xc]
mov dword [edx + 4], eax
jmp 0x1002d5d1
cmp ebx, edx
je 0x1002d5ae
mov edx, dword [edx + 4]
cmp edi, dword [edx + 8]
je 0x1002d5e2
cmp ebx, edx
jne 0x1002d5a2
mov ebx, dword [eax + 4]
mov dword [ebp - 4], ebx
mov dword [ebx], ecx
mov ebx, dword [ecx + 4]
mov dword [ebx], edx
mov edi, dword [edx + 4]
mov dword [edi], eax
mov dword [edx + 4], ebx
mov edx, dword [ebp - 4]
mov dword [ecx + 4], edx
mov edx, dword [ebp - 0xc]
mov dword [eax + 4], edi
mov dword [edx], eax
mov eax, ecx
cmp ecx, esi
je 0x1002d606
mov ebx, dword [0x100b0418]
jmp 0x1002d512
mov ebx, dword [eax + 4]
mov edx, dword [edx]
mov dword [ebp - 4], edx
mov esi, edx
mov dword [ebx], ecx
mov edi, dword [ecx + 4]
mov dword [edi], edx
mov edx, dword [edx + 4]
mov dword [edx], eax
mov dword [esi + 4], edi
mov esi, dword [ebp - 8]
mov dword [ecx + 4], ebx
mov dword [eax + 4], edx
jmp 0x1002d5d1
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4
Function at 0x1002d610
Capabilities:
Hash data using fnv

Disassembly:
push ebp
mov ebp, esp
mov eax, 0x1fffffff
sub esp, 0x10
bsr ecx, eax
push ebx
push esi
push edi
mov edi, 1
mov eax, edi
shl eax, cl
mov ecx, dword [ebp + 8]
cmp ecx, eax
jbe 0x1002d63c
push str.invalid_hash_bucket_count
call dword [sym.imp.MSVCP140.dll_void___cdecl_std::_Xlength_error_char_const__]
lea eax, [ecx - 1]
mov esi, dword [0x100b04f8]
or eax, 1
mov dword [ebp - 8], esi
bsr ecx, eax
push esi
lea ecx, [ecx + 1]
shl edi, cl
mov ecx, 0x100b0500
lea eax, [edi + edi]
push eax
call fcn.10021650
mov eax, dword [0x100b04f8]
lea ebx, [edi - 1]
mov dword [0x100b050c], ebx
mov dword [0x100b0510], edi
mov eax, dword [eax]
mov ecx, eax
cmp eax, esi
je 0x1002d776
movzx edx, byte [eax + 8]
xor edx, 0x811c9dc5
mov ecx, dword [ecx]
imul edi, edx, 0x1000193
movzx edx, byte [eax + 9]
xor edi, edx
movzx edx, byte [eax + 0xa]
imul edi, edi, 0x1000193
xor edi, edx
movzx edx, byte [eax + 0xb]
imul edi, edi, 0x1000193
xor edi, edx
mov edx, dword [0x100b0500]
imul edi, edi, 0x1000193
and edi, ebx
mov ebx, dword [edx + edi*8]
lea edx, [edx + edi*8]
mov dword [ebp - 0xc], edx
cmp ebx, esi
jne 0x1002d6d4
mov dword [edx], eax
mov dword [edx + 4], eax
jmp 0x1002d741
mov edx, dword [edx + 4]
mov edi, dword [eax + 8]
cmp edi, dword [edx + 8]
jne 0x1002d70e
mov edx, dword [edx]
mov dword [ebp - 4], edx
cmp edx, eax
je 0x1002d706
mov ebx, dword [eax + 4]
mov esi, dword [ebp - 4]
mov dword [ebx], ecx
mov edi, dword [ecx + 4]
mov dword [edi], edx
mov edx, dword [edx + 4]
mov dword [edx], eax
mov dword [esi + 4], edi
mov esi, dword [ebp - 8]
mov dword [ecx + 4], ebx
mov dword [eax + 4], edx
mov edx, dword [ebp - 0xc]
mov dword [edx + 4], eax
jmp 0x1002d741
cmp ebx, edx
je 0x1002d71e
mov edx, dword [edx + 4]
cmp edi, dword [edx + 8]
je 0x1002d752
cmp ebx, edx
jne 0x1002d712
mov ebx, dword [eax + 4]
mov dword [ebp - 4], ebx
mov dword [ebx], ecx
mov ebx, dword [ecx + 4]
mov dword [ebx], edx
mov edi, dword [edx + 4]
mov dword [edi], eax
mov dword [edx + 4], ebx
mov edx, dword [ebp - 4]
mov dword [ecx + 4], edx
mov edx, dword [ebp - 0xc]
mov dword [eax + 4], edi
mov dword [edx], eax
mov eax, ecx
cmp ecx, esi
je 0x1002d776
mov ebx, dword [0x100b050c]
jmp 0x1002d682
mov ebx, dword [eax + 4]
mov edx, dword [edx]
mov dword [ebp - 4], edx
mov esi, edx
mov dword [ebx], ecx
mov edi, dword [ecx + 4]
mov dword [edi], edx
mov edx, dword [edx + 4]
mov dword [edx], eax
mov dword [esi + 4], edi
mov esi, dword [ebp - 8]
mov dword [ecx + 4], ebx
mov dword [eax + 4], edx
jmp 0x1002d741
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4
Function at 0x1002e540
Capabilities:
Encode data using xor
Hash data using fnv

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x10078bf5
mov eax, dword fs:[0]
push eax
sub esp, 0x20
push ebx
push esi
push edi
mov eax, dword [0x100a900c]
xor eax, ebp
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov edi, ecx
mov dword [ebp - 0x18], edi
mov edx, dword [ebp + 0xc]
mov ebx, dword [ebp + 8]
mov dword [ebp - 0x1c], edx
mov dword [ebp - 0x14], edx
cmp dword [edx + 0x14], 0x10
jb 0x1002e584
mov eax, dword [edx]
mov dword [ebp - 0x14], eax
xor ecx, ecx
mov esi, 0x811c9dc5
cmp dword [edx + 0x10], ecx
jbe 0x1002e5a8
mov edi, dword [ebp - 0x14]
movzx eax, byte [ecx + edi]
inc ecx
xor eax, esi
imul esi, eax, 0x1000193
cmp ecx, dword [edx + 0x10]
jb 0x1002e593
mov edi, dword [ebp - 0x18]
push esi
push edx
lea eax, [ebp - 0x24]
mov ecx, edi
push eax
call fcn.1002e4c0
mov eax, dword [ebp - 0x20]
test eax, eax
je 0x1002e5c7
mov dword [ebx], eax
mov byte [ebx + 4], 0
jmp 0x1002e6d8
cmp dword [edi + 8], 0x38e38e3
jne 0x1002e5db
push str.unordered_map_set_too_long
call dword [sym.imp.MSVCP140.dll_void___cdecl_std::_Xlength_error_char_const__]
lea eax, [edi + 4]
mov dword [ebp - 0x2c], eax
mov dword [ebp - 4], 0
push 0x48
mov dword [ebp - 0x28], 0
call fcn.10074b36
add esp, 4
mov edi, eax
mov dword [ebp - 0x28], edi
push dword [ebp - 0x1c]
lea ecx, [edi + 8]
call fcn.100210a0
mov eax, dword [ebp + 0x10]
lea ecx, [edi + 0x20]
mov dword [ecx + 0x24], 0
mov dword [ecx], vtable.std::_Func_impl_no_alloc_class__public:_void___thiscall_patch::access_key_t::switch_load_class_ConfigReader__::_2::_lambda_1___void__struct_json_value_s__.0
mov eax, dword [eax]
mov dword [ecx + 4], eax
mov dword [ecx + 0x24], ecx
mov ecx, dword [ebp - 0x18]
mov dword [ebp - 4], 1
mov eax, dword [ecx + 8]
inc eax
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x1009fc00]
mov eax, dword [ecx + 0x1c]
cvtpd2ps xmm1, xmm0
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x1009fc00]
cvtpd2ps xmm0, xmm0
divss xmm1, xmm0
comiss xmm1, dword [ecx]
jbe 0x1002e68b
call fcn.1003f000
mov ecx, dword [ebp - 0x18]
lea eax, [edi + 8]
push esi
push eax
lea eax, [ebp - 0x24]
push eax
call fcn.1002e4c0
mov ecx, dword [ebp - 0x18]
mov edx, dword [eax]
jmp 0x1002e68e
mov edx, dword [ebp - 0x24]
mov eax, dword [edx + 4]
inc dword [ecx + 8]
mov dword [edi + 4], eax
mov dword [edi], edx
mov dword [eax], edi
mov dword [edx + 4], edi
mov dword [ebp - 0x1c], eax
mov eax, dword [ecx + 0x18]
and eax, esi
mov dword [ebp - 0x14], edx
mov edx, dword [ecx + 0xc]
mov esi, dword [ebp - 0x2c]
mov ecx, dword [edx + eax*8]
cmp ecx, dword [esi]
jne 0x1002e6bb
mov dword [edx + eax*8], edi
jmp 0x1002e6ce
cmp ecx, dword [ebp - 0x14]
jne 0x1002e6c5
mov dword [edx + eax*8], edi
jmp 0x1002e6d2
mov ecx, dword [ebp - 0x1c]
cmp dword [edx + eax*8 + 4], ecx
jne 0x1002e6d2
mov dword [edx + eax*8 + 4], edi
mov dword [ebx], edi
mov byte [ebx + 4], 1
mov eax, ebx
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
Function at 0x1002e6f0
Capabilities:
Encode data using xor
Hash data using fnv

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x10078bf5
mov eax, dword fs:[0]
push eax
sub esp, 0x20
push ebx
push esi
push edi
mov eax, dword [0x100a900c]
xor eax, ebp
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov edi, ecx
mov dword [ebp - 0x18], edi
mov edx, dword [ebp + 0xc]
mov ebx, dword [ebp + 8]
mov dword [ebp - 0x1c], edx
mov dword [ebp - 0x14], edx
cmp dword [edx + 0x14], 0x10
jb 0x1002e734
mov eax, dword [edx]
mov dword [ebp - 0x14], eax
xor ecx, ecx
mov esi, 0x811c9dc5
cmp dword [edx + 0x10], ecx
jbe 0x1002e758
mov edi, dword [ebp - 0x14]
movzx eax, byte [ecx + edi]
inc ecx
xor eax, esi
imul esi, eax, 0x1000193
cmp ecx, dword [edx + 0x10]
jb 0x1002e743
mov edi, dword [ebp - 0x18]
push esi
push edx
lea eax, [ebp - 0x24]
mov ecx, edi
push eax
call fcn.1002e4c0
mov eax, dword [ebp - 0x20]
test eax, eax
je 0x1002e777
mov dword [ebx], eax
mov byte [ebx + 4], 0
jmp 0x1002e888
cmp dword [edi + 8], 0x38e38e3
jne 0x1002e78b
push str.unordered_map_set_too_long
call dword [sym.imp.MSVCP140.dll_void___cdecl_std::_Xlength_error_char_const__]
lea eax, [edi + 4]
mov dword [ebp - 0x2c], eax
mov dword [ebp - 4], 0
push 0x48
mov dword [ebp - 0x28], 0
call fcn.10074b36
add esp, 4
mov edi, eax
mov dword [ebp - 0x28], edi
push dword [ebp - 0x1c]
lea ecx, [edi + 8]
call fcn.100210a0
mov eax, dword [ebp + 0x10]
lea ecx, [edi + 0x20]
mov dword [ecx + 0x24], 0
mov dword [ecx], vtable.std::_Func_impl_no_alloc_class__public:_void___thiscall_patch::exo_sceneidx_t::switch_load_class_ConfigReader__::_2::_lambda_1___void__struct_json_value_s__.0
mov eax, dword [eax]
mov dword [ecx + 4], eax
mov dword [ecx + 0x24], ecx
mov ecx, dword [ebp - 0x18]
mov dword [ebp - 4], 1
mov eax, dword [ecx + 8]
inc eax
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x1009fc00]
mov eax, dword [ecx + 0x1c]
cvtpd2ps xmm1, xmm0
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x1009fc00]
cvtpd2ps xmm0, xmm0
divss xmm1, xmm0
comiss xmm1, dword [ecx]
jbe 0x1002e83b
call fcn.1003f000
mov ecx, dword [ebp - 0x18]
lea eax, [edi + 8]
push esi
push eax
lea eax, [ebp - 0x24]
push eax
call fcn.1002e4c0
mov ecx, dword [ebp - 0x18]
mov edx, dword [eax]
jmp 0x1002e83e
mov edx, dword [ebp - 0x24]
mov eax, dword [edx + 4]
inc dword [ecx + 8]
mov dword [edi + 4], eax
mov dword [edi], edx
mov dword [eax], edi
mov dword [edx + 4], edi
mov dword [ebp - 0x1c], eax
mov eax, dword [ecx + 0x18]
and eax, esi
mov dword [ebp - 0x14], edx
mov edx, dword [ecx + 0xc]
mov esi, dword [ebp - 0x2c]
mov ecx, dword [edx + eax*8]
cmp ecx, dword [esi]
jne 0x1002e86b
mov dword [edx + eax*8], edi
jmp 0x1002e87e
cmp ecx, dword [ebp - 0x14]
jne 0x1002e875
mov dword [edx + eax*8], edi
jmp 0x1002e882
mov ecx, dword [ebp - 0x1c]
cmp dword [edx + eax*8 + 4], ecx
jne 0x1002e882
mov dword [edx + eax*8 + 4], edi
mov dword [ebx], edi
mov byte [ebx + 4], 1
mov eax, ebx
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
Function at 0x1002e8a0
Capabilities:
Encode data using xor
Hash data using fnv

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x10078bf5
mov eax, dword fs:[0]
push eax
sub esp, 0x20
push ebx
push esi
push edi
mov eax, dword [0x100a900c]
xor eax, ebp
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov edi, ecx
mov dword [ebp - 0x18], edi
mov edx, dword [ebp + 0xc]
mov ebx, dword [ebp + 8]
mov dword [ebp - 0x1c], edx
mov dword [ebp - 0x14], edx
cmp dword [edx + 0x14], 0x10
jb 0x1002e8e4
mov eax, dword [edx]
mov dword [ebp - 0x14], eax
xor ecx, ecx
mov esi, 0x811c9dc5
cmp dword [edx + 0x10], ecx
jbe 0x1002e908
mov edi, dword [ebp - 0x14]
movzx eax, byte [ecx + edi]
inc ecx
xor eax, esi
imul esi, eax, 0x1000193
cmp ecx, dword [edx + 0x10]
jb 0x1002e8f3
mov edi, dword [ebp - 0x18]
push esi
push edx
lea eax, [ebp - 0x24]
mov ecx, edi
push eax
call fcn.1002e4c0
mov eax, dword [ebp - 0x20]
test eax, eax
je 0x1002e927
mov dword [ebx], eax
mov byte [ebx + 4], 0
jmp 0x1002ea38
cmp dword [edi + 8], 0x38e38e3
jne 0x1002e93b
push str.unordered_map_set_too_long
call dword [sym.imp.MSVCP140.dll_void___cdecl_std::_Xlength_error_char_const__]
lea eax, [edi + 4]
mov dword [ebp - 0x2c], eax
mov dword [ebp - 4], 0
push 0x48
mov dword [ebp - 0x28], 0
call fcn.10074b36
add esp, 4
mov edi, eax
mov dword [ebp - 0x28], edi
push dword [ebp - 0x1c]
lea ecx, [edi + 8]
call fcn.100210a0
mov eax, dword [ebp + 0x10]
lea ecx, [edi + 0x20]
mov dword [ecx + 0x24], 0
mov dword [ecx], vtable.std::_Func_impl_no_alloc_class__public:_void___thiscall_patch::exo_trackparam_t::switch_load_class_ConfigReader__::_2::_lambda_1___void__struct_json_value_s__.0
mov eax, dword [eax]
mov dword [ecx + 4], eax
mov dword [ecx + 0x24], ecx
mov ecx, dword [ebp - 0x18]
mov dword [ebp - 4], 1
mov eax, dword [ecx + 8]
inc eax
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x1009fc00]
mov eax, dword [ecx + 0x1c]
cvtpd2ps xmm1, xmm0
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x1009fc00]
cvtpd2ps xmm0, xmm0
divss xmm1, xmm0
comiss xmm1, dword [ecx]
jbe 0x1002e9eb
call fcn.1003f000
mov ecx, dword [ebp - 0x18]
lea eax, [edi + 8]
push esi
push eax
lea eax, [ebp - 0x24]
push eax
call fcn.1002e4c0
mov ecx, dword [ebp - 0x18]
mov edx, dword [eax]
jmp 0x1002e9ee
mov edx, dword [ebp - 0x24]
mov eax, dword [edx + 4]
inc dword [ecx + 8]
mov dword [edi + 4], eax
mov dword [edi], edx
mov dword [eax], edi
mov dword [edx + 4], edi
mov dword [ebp - 0x1c], eax
mov eax, dword [ecx + 0x18]
and eax, esi
mov dword [ebp - 0x14], edx
mov edx, dword [ecx + 0xc]
mov esi, dword [ebp - 0x2c]
mov ecx, dword [edx + eax*8]
cmp ecx, dword [esi]
jne 0x1002ea1b
mov dword [edx + eax*8], edi
jmp 0x1002ea2e
cmp ecx, dword [ebp - 0x14]
jne 0x1002ea25
mov dword [edx + eax*8], edi
jmp 0x1002ea32
mov ecx, dword [ebp - 0x1c]
cmp dword [edx + eax*8 + 4], ecx
jne 0x1002ea32
mov dword [edx + eax*8 + 4], edi
mov dword [ebx], edi
mov byte [ebx + 4], 1
mov eax, ebx
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
Function at 0x1002ea50
Capabilities:
Encode data using xor
Hash data using fnv

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x10078bf5
mov eax, dword fs:[0]
push eax
sub esp, 0x20
push ebx
push esi
push edi
mov eax, dword [0x100a900c]
xor eax, ebp
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov edi, ecx
mov dword [ebp - 0x18], edi
mov edx, dword [ebp + 0xc]
mov ebx, dword [ebp + 8]
mov dword [ebp - 0x1c], edx
mov dword [ebp - 0x14], edx
cmp dword [edx + 0x14], 0x10
jb 0x1002ea94
mov eax, dword [edx]
mov dword [ebp - 0x14], eax
xor ecx, ecx
mov esi, 0x811c9dc5
cmp dword [edx + 0x10], ecx
jbe 0x1002eab8
mov edi, dword [ebp - 0x14]
movzx eax, byte [ecx + edi]
inc ecx
xor eax, esi
imul esi, eax, 0x1000193
cmp ecx, dword [edx + 0x10]
jb 0x1002eaa3
mov edi, dword [ebp - 0x18]
push esi
push edx
lea eax, [ebp - 0x24]
mov ecx, edi
push eax
call fcn.1002e4c0
mov eax, dword [ebp - 0x20]
test eax, eax
je 0x1002ead7
mov dword [ebx], eax
mov byte [ebx + 4], 0
jmp 0x1002ebe8
cmp dword [edi + 8], 0x38e38e3
jne 0x1002eaeb
push str.unordered_map_set_too_long
call dword [sym.imp.MSVCP140.dll_void___cdecl_std::_Xlength_error_char_const__]
lea eax, [edi + 4]
mov dword [ebp - 0x2c], eax
mov dword [ebp - 4], 0
push 0x48
mov dword [ebp - 0x28], 0
call fcn.10074b36
add esp, 4
mov edi, eax
mov dword [ebp - 0x28], edi
push dword [ebp - 0x1c]
lea ecx, [edi + 8]
call fcn.100210a0
mov eax, dword [ebp + 0x10]
lea ecx, [edi + 0x20]
mov dword [ecx + 0x24], 0
mov dword [ecx], vtable.std::_Func_impl_no_alloc_class__public:_void___thiscall_patch::tra_aviutlfilter_t::switch_load_class_ConfigReader__::_2::_lambda_1___void__struct_json_value_s__.0
mov eax, dword [eax]
mov dword [ecx + 4], eax
mov dword [ecx + 0x24], ecx
mov ecx, dword [ebp - 0x18]
mov dword [ebp - 4], 1
mov eax, dword [ecx + 8]
inc eax
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x1009fc00]
mov eax, dword [ecx + 0x1c]
cvtpd2ps xmm1, xmm0
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x1009fc00]
cvtpd2ps xmm0, xmm0
divss xmm1, xmm0
comiss xmm1, dword [ecx]
jbe 0x1002eb9b
call fcn.1003f000
mov ecx, dword [ebp - 0x18]
lea eax, [edi + 8]
push esi
push eax
lea eax, [ebp - 0x24]
push eax
call fcn.1002e4c0
mov ecx, dword [ebp - 0x18]
mov edx, dword [eax]
jmp 0x1002eb9e
mov edx, dword [ebp - 0x24]
mov eax, dword [edx + 4]
inc dword [ecx + 8]
mov dword [edi + 4], eax
mov dword [edi], edx
mov dword [eax], edi
mov dword [edx + 4], edi
mov dword [ebp - 0x1c], eax
mov eax, dword [ecx + 0x18]
and eax, esi
mov dword [ebp - 0x14], edx
mov edx, dword [ecx + 0xc]
mov esi, dword [ebp - 0x2c]
mov ecx, dword [edx + eax*8]
cmp ecx, dword [esi]
jne 0x1002ebcb
mov dword [edx + eax*8], edi
jmp 0x1002ebde
cmp ecx, dword [ebp - 0x14]
jne 0x1002ebd5
mov dword [edx + eax*8], edi
jmp 0x1002ebe2
mov ecx, dword [ebp - 0x1c]
cmp dword [edx + eax*8 + 4], ecx
jne 0x1002ebe2
mov dword [edx + eax*8 + 4], edi
mov dword [ebx], edi
mov byte [ebx + 4], 1
mov eax, ebx
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc