Function at 0x10092ab0
Capabilities:
Encode data using xor
Hash data using fnv
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xffffffe0
sub esp, 0x100
mov esi, esp
mov dword [esi + 0xd8], ebp
mov edi, dword [ebp + 0xc]
mov dword [esi + 0xdc], esp
mov dword [esi + 0xe8], 0xffffffff
lea eax, [esi + 0xe0]
mov dword [esi + 0xe4], 0x100a07b0
mov ecx, dword fs:[0]
mov dword [esi + 0xe0], ecx
mov dword fs:[0], eax
mov ecx, dword [edi + 0x3050]
xor edx, edx
test ecx, ecx
je 0x10092f0a
mov eax, dword [edi + 0x3040]
mov dword [esi + 0x34], eax
mov eax, dword [edi + 0x304c]
add ecx, eax
mov dword [esi + 0x10], ecx
jmp 0x10092ba6
mov ecx, dword [0x1025ae18]
mov eax, 0xf
sub eax, dword [ecx + 0x4d28]
mov dword [esi + 0xe8], 0xffffffff
mov ecx, dword [0x1025adc8]
add eax, dword [ecx + 0x188]
xorps xmm0, xmm0
cvtsi2ss xmm0, eax
mulss xmm2, xmm0
movaps xmmword [esi + 0xb0], xmm2
mov ecx, dword [ecx + 0x130]
mov eax, dword [ecx]
mov eax, dword [eax + 0x30]
mov dword [esi + 0xe8], 0xffffffff
call eax
fstp dword [esi + 0x38]
movaps xmm1, xmmword [esi + 0xb0]
subss xmm1, dword [esi + 0x38]
mov eax, dword [esi + 0xc]
movss xmm0, dword [eax + 0x30]
cvttps2dq xmm1, xmm1
cvtdq2ps xmm1, xmm1
ucomiss xmm0, xmm1
jae 0x10092f27
nop dword [eax]
mov eax, dword [edi + 0x304c]
mov ecx, dword [esi + 0x10]
cmp ecx, eax
je 0x10092f08
dec ecx
mov eax, dword [esi + 0x34]
mov eax, dword [eax]
mov ebx, ecx
shr ebx, 1
mov edx, dword [eax + 4]
mov eax, dword [eax + 8]
dec eax
and eax, ebx
mov dword [esi + 0x10], ecx
mov ebx, ecx
and ebx, 1
mov eax, dword [edx + eax*4]
mov dword [esi + 0x30], eax
mov eax, dword [eax + ebx*8]
mov dword [esi + 0xc], eax
cmp byte [eax], 0
jne 0x10092ba0
mov eax, dword [esi + 0xc]
movss xmm0, dword [eax + 0x30]
movss dword [esi + 0xb0], xmm0
mov edi, dword [0x1025adc8]
movss xmm0, dword [edi + 0x180]
movss dword [esi + 0x2c], xmm0
movss xmm0, dword [edi + 0x184]
movss dword [esi + 0x28], xmm0
mov ecx, dword [edi + 0x130]
mov eax, dword [ecx]
mov eax, dword [eax + 0x30]
mov dword [esi + 0xe8], 0xffffffff
call eax
fstp dword [esi + 0x3c]
movss xmm4, dword [esi + 0x3c]
movss xmm5, dword [edi + 0x17c]
mov eax, dword [0x1025ae04]
mov ecx, dword [eax]
mov eax, dword [0x1025af68]
test al, 1
je 0x10092d03
mov edi, dword [0x1025af64]
movss xmm2, dword [esi + 0x2c]
addss xmm2, dword [esi + 0x28]
xorps xmm0, xmm0
maxss xmm0, xmm2
movss xmm3, dword [0x101a8280]
movaps xmm1, xmm3
cmpltss xmm1, xmm2
movaps xmm2, xmm1
andnps xmm2, xmm0
andps xmm1, xmm3
orps xmm1, xmm2
addss xmm1, xmm5
xorps xmm2, xmm2
maxss xmm2, xmm1
movaps xmm0, xmm4
cmpltss xmm0, xmm1
movaps xmm1, xmm0
andnps xmm1, xmm2
andps xmm0, xmm4
orps xmm0, xmm1
mov eax, dword [edi + 4]
mov eax, dword [eax + ecx]
mov ecx, dword [0x1025add0]
mov ecx, dword [ecx + 0x10]
test ecx, ecx
mov edx, 0
cmovle ecx, edx
sub eax, ecx
xorps xmm1, xmm1
cvtsi2ss xmm1, eax
mov eax, dword [0x1025ae0c]
movss xmm2, dword [eax + 0x20]
mulss xmm1, xmm2
subss xmm1, dword [esi + 0xb0]
subss xmm0, xmm1
andps xmm0, xmmword [0x101a97c0]
ucomiss xmm0, dword [0x101a9840]
mov edi, dword [ebp + 0xc]
ja 0x10092ba0
mov eax, dword [0x1025add4]
cmp byte [eax + 0x10], 0
jne 0x10092b26
xor eax, eax
jmp 0x10092b41
movss dword [esi + 0x18], xmm5
movaps xmmword [esi + 0xc0], xmm4
mov dword [esi + 0x1c], ecx
mov dword [esi + 0x20], ebx
or eax, 1
mov dword [0x1025af68], eax
mov eax, 0xbb6d7426
mov ecx, 0x74d10de4
mov dword [esi + 0x44], ecx
mov dword [esi + 0x40], eax
mov eax, 0xa8bc7d4b
mov ecx, 0x82b726fa
mov dword [esi + 0x4c], ecx
mov dword [esi + 0x48], eax
mov eax, 0x16fa6ca3
mov ecx, 0xed44ffd9
mov dword [esi + 0x54], ecx
mov dword [esi + 0x50], eax
mov eax, 0x769f34ec
mov ecx, 0x4c76479e
mov edx, 0xc80c3665
mov edi, 0x15bd5d81
mov dword [esi + 0x84], edi
mov dword [esi + 0x80], edx
mov edx, 0x85ce1832
mov edi, 0xece84bc4
mov dword [esi + 0x8c], edi
mov dword [esi + 0x88], edx
mov edx, 0x7d9905f7
mov edi, 0x88379e9b
mov dword [esi + 0x94], edi
mov dword [esi + 0x90], edx
mov dword [esi + 0x5c], ecx
mov dword [esi + 0x58], eax
mov dword [esi + 0x9c], ecx
mov dword [esi + 0x98], eax
lea eax, [esi + 0x80]
xor ecx, ecx
movaps xmm0, xmmword [esi + 0x40]
xorps xmm0, xmmword [eax]
movaps xmmword [esi + 0x40], xmm0
movaps xmm0, xmmword [esi + 0x50]
xorps xmm0, xmmword [eax + 0x10]
mov eax, dword [0x1025adcc]
mov dword [esi + 0x24], eax
movaps xmmword [esi + 0x50], xmm0
mov dword [esi + 0xe8], 0
lea ecx, [esi + 0x68]
lea eax, [esi + 0x40]
push eax
call fcn.10015170
cmp dword [esi + 0x7c], 0x10
lea eax, [esi + 0x68]
mov dword [esi + 8], eax
jb 0x10092dfa
mov eax, dword [esi + 0x68]
mov dword [esi + 8], eax
mov eax, dword [esi + 0x78]
mov dword [esi + 4], eax
test eax, eax
je 0x10092e1d
mov eax, dword [esi + 4]
mov ecx, eax
and ecx, 3
mov dword [esi + 0x14], ecx
cmp eax, 4
jae 0x10092e24
mov ecx, 0x811c9dc5
xor edx, edx
jmp 0x10092e6e
mov ecx, 0x811c9dc5
jmp 0x10092e8b
mov edi, dword [esi + 4]
and edi, 0xfffffffc
mov ecx, 0x811c9dc5
xor edx, edx
mov eax, dword [esi + 8]
movzx ebx, byte [eax + edx]
xor ebx, ecx
imul ecx, ebx, 0x1000193
movzx ebx, byte [eax + edx + 1]
xor ebx, ecx
imul ecx, ebx, 0x1000193
movzx ebx, byte [eax + edx + 2]
xor ebx, ecx
imul ecx, ebx, 0x1000193
movzx ebx, byte [eax + edx + 3]
xor ebx, ecx
imul ecx, ebx, 0x1000193
add edx, 4
cmp edi, edx
jne 0x10092e31
mov eax, dword [esi + 0x14]
test eax, eax
je 0x10092e8b
add edx, dword [esi + 8]
xor edi, edi
movzx ebx, byte [edx + edi]
xor ebx, ecx
imul ecx, ebx, 0x1000193
inc edi
cmp eax, edi
jne 0x10092e7a
mov edx, dword [esi + 0x24]
and ecx, dword [edx + 0x18]
mov eax, dword [edx + 0xc]
mov edi, dword [eax + ecx*8 + 4]
cmp edi, dword [edx + 4]
mov edx, dword [esi + 4]
je 0x10092f50
add ecx, ecx
mov ebx, dword [eax + ecx*4]
cmp edx, dword [edi + 0x18]
je 0x10092ebe
cmp edi, ebx
je 0x10092f50
mov edi, dword [edi + 4]
cmp edx, dword [edi + 0x18]
jne 0x10092eae
cmp dword [edi + 0x1c], 0x10
jb 0x10092ec9
mov eax, dword [edi + 8]
jmp 0x10092ecc
lea eax, [edi + 8]
push edx
push eax
push dword [esi + 8]
call sub.VCRUNTIME140.dll_memcmp
mov edx, dword [esi + 4]
add esp, 0xc
test eax, eax
jne 0x10092eae
add edi, 0x20
lea ecx, [esi + 0x68]
call fcn.10015110
mov dword [0x1025af64], edi
mov ebx, dword [esi + 0x20]
mov ecx, dword [esi + 0x1c]
movaps xmm4, xmmword [esi + 0xc0]
movss xmm5, dword [esi + 0x18]
jmp 0x10092c4e
xor edx, edx
mov eax, dword [ebp + 8]
mov byte [eax + 0xc], dl
mov ecx, dword [esi + 0xe0]
mov dword fs:[0], ecx
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret 8
mov ecx, dword [esi + 0x30]
mov eax, dword [ecx + ebx*8 + 4]
test eax, eax
je 0x10092f3c
lock inc dword [eax + 4]
mov edx, dword [ecx + ebx*8 + 4]
jmp 0x10092f3e
xor edx, edx
mov ecx, dword [ecx + ebx*8]
mov eax, dword [ebp + 8]
mov dword [eax], edi
mov dword [eax + 4], ecx
mov dword [eax + 8], edx
mov dl, 1
jmp 0x10092f0d
mov dword [esi + 0xe8], 1
push str.invalid_unordered_map_K__T__key
call sub.MSVCP140.dll_void___cdecl_std::_Xout_of_range_char_const__
add esp, 4
nop word [eax + eax]
push ebp
sub esp, 0xc
lea esi, [ebp - 0xec]
mov ebp, dword [esi + 0xd8]
lea ecx, [esi + 0x68]
call fcn.10015110
add esp, 0xc
pop ebp
ret