Function at 0x497b50
Capabilities:
Encode data using xor
Hash data using fnv

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x529f3d
mov eax, dword fs:[0]
push eax
sub esp, 0x38
mov eax, dword [0x58b18c]
xor eax, ebp
mov dword [ebp - 0x14], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x3c], edx
mov dword [ebp - 0x44], ecx
mov eax, dword [ebp + 8]
lea ebx, [ecx + 0x98]
push ebx
lea ecx, [ebp - 0x2c]
mov dword [ebp - 0x40], eax
mov dword [ebp - 0x30], ebx
call fcn.00414ed0
mov dword [ebp - 4], 0
lea eax, [ebp - 0x2c]
cmp dword [ebp - 0x18], 0x10
lea ecx, [ebp - 0x38]
mov esi, dword [ebp - 0x2c]
mov edi, dword [ebp - 0x1c]
cmovae eax, esi
push str...
mov dword [ebp - 0x38], eax
mov dword [ebp - 0x34], edi
call fcn.00430520
test al, al
jne 0x497be8
cmp dword [ebp - 0x18], 0x10
lea eax, [ebp - 0x2c]
push 0x56abd8
cmovae eax, esi
mov dword [ebp - 0x34], edi
lea ecx, [ebp - 0x38]
mov dword [ebp - 0x38], eax
call fcn.00430520
test al, al
je 0x497c2c
cmp dword [ebp - 0x18], 0x10
lea edi, [ebp - 0x2c]
mov edx, 0x811c9dc5
cmovae edi, esi
xor ecx, ecx
cmp dword [ebp - 0x1c], ecx
jbe 0x497c15
mov ebx, dword [ebp - 0x1c]
movzx eax, byte [ecx + edi]
inc ecx
xor eax, edx
imul edx, eax, 0x1000193
cmp ecx, ebx
jb 0x497c01
mov ebx, dword [ebp - 0x30]
mov ecx, dword [ebp - 0x40]
lea eax, [ebp - 0x2c]
push edx
push eax
lea eax, [ebp - 0x38]
push eax
call fcn.00432ea0
cmp dword [eax + 4], 0
jne 0x497c33
xor bl, bl
jmp 0x497dc2
mov eax, dword [ebp - 0x3c]
mov edi, dword [eax + 4]
mov esi, dword [eax]
cmp esi, edi
je 0x497d4a
nop dword [eax]
nop word [eax + eax]
cmp dword [esi + 0xac], 0x10
lea eax, [esi + 0x98]
jb 0x497c61
mov eax, dword [eax]
cmp dword [ebx + 0x14], 0x10
mov ecx, ebx
jb 0x497c6b
mov ecx, dword [ebx]
push dword [esi + 0xa8]
push eax
push dword [ebx + 0x10]
push ecx
call fcn.0041ae20
add esp, 0x10
test al, al
jne 0x497c8c
add esi, 0xe0
cmp esi, edi
jne 0x497c50
cmp esi, edi
je 0x497d4a
lea ebx, [esi + 0xe0]
cmp ebx, edi
je 0x497ced
nop
cmp dword [ebx + 0xac], 0x10
lea ecx, [ebx + 0x98]
jb 0x497cb1
mov ecx, dword [ecx]
mov eax, dword [ebp - 0x30]
mov edx, eax
cmp dword [eax + 0x14], 0x10
jb 0x497cbe
mov edx, dword [eax]
push dword [ebx + 0xa8]
push ecx
push dword [eax + 0x10]
push edx
call fcn.0041ae20
add esp, 0x10
test al, al
jne 0x497ce3
push ebx
mov ecx, esi
call fcn.00470b30
add esi, 0xe0
add ebx, 0xe0
cmp ebx, edi
jne 0x497ca0
mov ebx, dword [ebp - 0x30]
cmp esi, edi
je 0x497d4a
mov eax, dword [ebp - 0x3c]
mov eax, dword [eax + 4]
cmp edi, eax
je 0x497d1b
mov ebx, eax
push edi
mov ecx, esi
call fcn.00470b30
add edi, 0xe0
add esi, 0xe0
cmp edi, ebx
jne 0x497d00
mov ebx, dword [ebp - 0x30]
mov eax, dword [ebp - 0x3c]
mov edi, esi
mov eax, dword [eax + 4]
cmp esi, eax
je 0x497d44
mov ebx, eax
nop dword [eax]
mov ecx, edi
call fcn.0042ba50
add edi, 0xe0
cmp edi, ebx
jne 0x497d30
mov ebx, dword [ebp - 0x30]
mov eax, dword [ebp - 0x3c]
mov dword [eax + 4], esi
cmp dword [ebx + 0x14], 0x10
mov esi, ebx
mov edi, dword [ebx + 0x10]
jb 0x497d57
mov esi, dword [ebx]
xor ecx, ecx
mov edx, 0x811c9dc5
test edi, edi
je 0x497d73
movzx eax, byte [ecx + esi]
inc ecx
xor eax, edx
imul edx, eax, 0x1000193
cmp ecx, edi
jb 0x497d62
mov esi, dword [ebp - 0x40]
lea eax, [ebp - 0x38]
push edx
push ebx
push eax
mov ecx, esi
call fcn.00432ea0
mov eax, dword [ebp - 0x34]
test eax, eax
je 0x497e0f
mov ecx, dword [ebp - 0x44]
add eax, 0x20
push eax
call fcn.00470b30
push ebx
mov ecx, esi
call fcn.004da450
cmp dword [0x598fec], 0x10
mov ecx, 0x598fd8
mov edx, dword [ebp - 0x3c]
cmovae ecx, dword [0x598fd8]
call fcn.00495870
mov esi, dword [ebp - 0x2c]
mov bl, 1
mov eax, dword [ebp - 0x18]
cmp eax, 0x10
jb 0x497df1
lea ecx, [eax + 1]
mov eax, esi
cmp ecx, 0x1000
jb 0x497de7
mov esi, dword [eax - 4]
add ecx, 0x23
sub eax, esi
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x497e19
push ecx
push esi
call fcn.004f79ae
add esp, 8
mov al, bl
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x14]
xor ecx, ebp
call fcn.004f7466
mov esp, ebp
pop ebp
ret
push str.invalid_unordered_map_K__T__key
call fcn.004f4bc6
call fcn.005094c8
int3