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

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x46a2be
mov eax, dword fs:[0]
push eax
sub esp, 0xc8
mov eax, dword [0x487274]
xor eax, ebp
mov dword [ebp - 0x10], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov esi, ecx
mov dword [ebp - 0xa4], esi
lea edi, [esi + 0x2c]
push edi
push dword [edi + 4]
push dword [edi]
call fcn.004016a0
mov eax, dword [edi]
add esp, 0xc
mov dword [edi + 4], eax
lea eax, [esi + 0xc]
mov ecx, eax
mov dword [ebp - 0x98], eax
call fcn.00423ee0
mov eax, dword [ebp + 8]
test eax, eax
je 0x42834d
mov ecx, dword [ebp + 0xc]
test ecx, ecx
je 0x42834d
mov edi, 1
mov dword [esi + 4], eax
mov dword [esi + 8], ecx
mov dword [ebp - 0xa0], edi
cmp eax, edi
jle 0x42834d
nop word [eax + eax]
mov eax, dword [esi + 8]
push 0x46e388
push dword [eax + edi*4]
call fcn.00445050
add esp, 8
mov dword [ebp - 0x8c], eax
test eax, eax
je 0x42836a
mov ecx, eax
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x427eb6
sub ecx, edx
je 0x42833d
mov eax, dword [esi + 8]
mov edx, dword [eax + edi*4]
mov ecx, edx
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x14], 0xf
mov byte [ebp - 0x28], 0
lea edi, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x427ee2
sub ecx, edi
push ecx
push edx
lea ecx, [ebp - 0x28]
call fcn.00403b20
cmp dword [ebp - 0x14], 0x10
lea edi, [ebp - 0x28]
mov eax, dword [ebp - 0x18]
cmovae edi, dword [ebp - 0x28]
mov dword [ebp - 4], 0
test eax, eax
je 0x427f24
push eax
push 0x3d
push edi
call fcn.00444fa0
mov ecx, eax
add esp, 0xc
test ecx, ecx
je 0x427f24
sub ecx, edi
jmp 0x427f27
or ecx, 0xffffffff
cmp dword [ebp - 0x18], ecx
lea eax, [ebp - 0x28]
mov dword [ebp - 0x30], 0
cmovb ecx, dword [ebp - 0x18]
cmp dword [ebp - 0x14], 0x10
push ecx
cmovae eax, dword [ebp - 0x28]
lea ecx, [ebp - 0x40]
push eax
mov dword [ebp - 0x2c], 0xf
mov byte [ebp - 0x40], 0
call fcn.00403b20
mov edx, dword [ebp - 0x14]
cmp edx, 0x10
jb 0x427f89
mov ecx, dword [ebp - 0x28]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x427f7f
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x428433
push edx
push ecx
call fcn.0042cf26
add esp, 8
movups xmm1, xmmword [ebp - 0x40]
cmp dword [ebp - 0x2c], 0x10
lea ecx, [ebp - 0x28]
movq xmm0, qword [ebp - 0x30]
movd eax, xmm1
movups xmmword [ebp - 0x28], xmm1
cmovae ecx, eax
movq qword [ebp - 0x18], xmm0
push ecx
mov ecx, esi
call fcn.00425f90
test al, al
jne 0x4282fc
mov edx, dword [ebp - 0x8c]
inc edx
mov dword [ebp - 0x30], 0
mov ecx, edx
mov dword [ebp - 0x2c], 0xf
mov byte [ebp - 0x40], al
lea esi, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x427fd6
sub ecx, esi
push ecx
push edx
lea ecx, [ebp - 0x40]
call fcn.00403b20
cmp dword [ebp - 0x14], 0x10
lea eax, [ebp - 0x28]
mov esi, dword [ebp - 0x18]
cmovae eax, dword [ebp - 0x28]
mov byte [ebp - 4], 1
mov dword [ebp - 0x90], eax
cmp esi, 0x10
jae 0x428029
movups xmm0, xmmword [eax]
mov edi, 0xf
mov dword [ebp - 0x8c], edi
movups xmmword [ebp - 0x88], xmm0
mov eax, dword [ebp - 0x88]
mov dword [ebp - 0x9c], eax
jmp 0x42807d
mov edi, esi
lea ecx, [ebp - 0x88]
or edi, 0xf
mov eax, closesocket
cmp edi, 0x7fffffff
cmova edi, eax
mov dword [ebp - 0x8c], edi
lea eax, [edi + 1]
push eax
call fcn.00403960
lea ecx, [esi + 1]
mov dword [ebp - 0x9c], eax
push ecx
push dword [ebp - 0x90]
mov dword [ebp - 0x88], eax
push eax
call fcn.00444340
movups xmm0, xmmword [ebp - 0x88]
mov eax, dword [ebp - 0x9c]
add esp, 0xc
movups xmmword [ebp - 0xcc], xmm0
mov dword [ebp - 0x74], edi
movups xmm0, xmmword [ebp - 0x40]
mov dword [ebp - 0x78], esi
mov byte [ebp - 0x40], 0
movups xmmword [ebp - 0x50], xmm0
movups xmmword [ebp - 0x70], xmm0
movq xmm0, qword [ebp - 0x30]
movq qword [ebp - 0xbc], xmm0
movq qword [ebp - 0x60], xmm0
mov dword [ebp - 0x30], 0
mov dword [ebp - 0x2c], 0xf
cmp edi, 0x10
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x88]
mov edx, 0x811c9dc5
cmovae ecx, eax
mov dword [ebp - 0x90], edx
mov dword [ebp - 0x94], ecx
xor ecx, ecx
test esi, esi
je 0x428104
mov edi, dword [ebp - 0x94]
movzx eax, byte [ecx + edi]
inc ecx
xor eax, edx
imul edx, eax, 0x1000193
cmp ecx, esi
jb 0x4280e7
mov edi, dword [ebp - 0x8c]
mov dword [ebp - 0x90], edx
mov esi, dword [ebp - 0x98]
lea eax, [ebp - 0x88]
push edx
push eax
lea eax, [ebp - 0xac]
mov ecx, esi
push eax
call fcn.0041b3d0
cmp dword [ebp - 0xa8], 0
jne 0x42828a
cmp dword [esi + 8], 0x4924924
je 0x428438
lea eax, [esi + 4]
mov dword [ebp - 0xb4], eax
push 0x38
mov byte [ebp - 4], 3
mov dword [ebp - 0xb0], 0
call fcn.0042cef6
movups xmm0, xmmword [ebp - 0xcc]
mov ecx, eax
mov byte [ebp - 0x88], 0
mov edi, 0xf
mov dword [ebp - 0x8c], ecx
add esp, 4
mov dword [ebp - 0xb0], ecx
mov dword [ebp - 0x60], 0
mov dword [ecx + 0x18], 0
mov dword [ecx + 0x1c], 0
movups xmmword [ecx + 8], xmm0
mov dword [ebp - 0x5c], edi
movq xmm0, qword [ebp - 0x78]
movq qword [ecx + 0x18], xmm0
movups xmm0, xmmword [ebp - 0x50]
mov dword [ecx + 0x30], 0
mov dword [ecx + 0x34], 0
movups xmmword [ecx + 0x20], xmm0
mov dword [ebp - 0x78], 0
movq xmm0, qword [ebp - 0xbc]
mov dword [ebp - 0x74], edi
movq qword [ecx + 0x30], xmm0
mov byte [ebp - 0x70], 0
mov eax, dword [esi + 8]
inc eax
mov byte [ebp - 4], 4
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x46e740]
mov eax, dword [esi + 0x1c]
cvtpd2ps xmm1, xmm0
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x46e740]
cvtpd2ps xmm0, xmm0
divss xmm1, xmm0
comiss xmm1, dword [esi]
seta al
test al, al
je 0x428259
mov ecx, esi
call fcn.00421af0
mov eax, dword [ebp - 0x8c]
mov esi, dword [ebp - 0x90]
add eax, 8
mov ecx, dword [ebp - 0x98]
push esi
push eax
lea eax, [ebp - 0xd4]
push eax
call fcn.0041b3d0
mov ecx, dword [eax]
mov eax, dword [eax + 4]
mov dword [ebp - 0xac], ecx
mov dword [ebp - 0xa8], eax
jmp 0x428265
mov ecx, dword [ebp - 0xac]
mov esi, dword [ebp - 0x90]
push dword [ebp - 0x8c]
mov dword [ebp - 0xb0], 0
push ecx
mov ecx, dword [ebp - 0x98]
push esi
call fcn.00421a40
mov esi, dword [ebp - 0x88]
jmp 0x428290
mov esi, dword [ebp - 0x9c]
mov edx, dword [ebp - 0x5c]
mov byte [ebp - 4], 1
cmp edx, 0x10
jb 0x4282c8
mov ecx, dword [ebp - 0x70]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x4282be
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x428433
push edx
push ecx
call fcn.0042cf26
add esp, 8
cmp edi, 0x10
jb 0x4282f6
inc edi
mov eax, esi
cmp edi, 0x1000
jb 0x4282ec
mov esi, dword [esi - 4]
add edi, 0x23
sub eax, esi
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x428433
push edi
push esi
call fcn.0042cf26
add esp, 8
mov esi, dword [ebp - 0xa4]
mov edx, dword [ebp - 0x14]
mov dword [ebp - 4], 0xffffffff
cmp edx, 0x10
jb 0x428337
mov ecx, dword [ebp - 0x28]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x42832d
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x428433
push edx
push ecx
call fcn.0042cf26
add esp, 8
mov edi, dword [ebp - 0xa0]
inc edi
mov dword [ebp - 0xa0], edi
cmp edi, dword [esi + 4]
jl 0x427e90
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.0042cf39
mov esp, ebp
pop ebp
ret 8
mov eax, dword [esi + 8]
mov ecx, esi
push dword [eax + edi*4]
call fcn.00425ec0
test al, al
jne 0x42833d
mov eax, dword [esi + 8]
mov dword [ebp - 0x48], 0
mov dword [ebp - 0x44], 0xf
mov byte [ebp - 0x58], 0
mov edx, dword [eax + edi*4]
mov ecx, edx
lea eax, [ecx + 1]
mov dword [ebp - 0x94], eax
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4283a0
sub ecx, dword [ebp - 0x94]
push ecx
push edx
lea ecx, [ebp - 0x58]
call fcn.00403b20
mov eax, dword [esi + 0x30]
mov dword [ebp - 4], 5
cmp eax, dword [esi + 0x34]
je 0x4283e6
movups xmm0, xmmword [ebp - 0x58]
mov edx, 0xf
mov byte [ebp - 0x58], 0
movups xmmword [eax], xmm0
movq xmm0, qword [ebp - 0x48]
movq qword [eax + 0x10], xmm0
add dword [esi + 0x30], 0x18
jmp 0x4283f6
lea ecx, [ebp - 0x58]
push ecx
push eax
lea ecx, [esi + 0x2c]
call fcn.00405830
mov edx, dword [ebp - 0x44]
mov dword [ebp - 4], 0xffffffff
cmp edx, 0x10
jb 0x42833d
mov ecx, dword [ebp - 0x58]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x428424
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x428433
push edx
push ecx
call fcn.0042cf26
add esp, 8
jmp 0x42833d
call fcn.0044807a
push str.unordered_map_set_too_long
call fcn.0042ad8f
int3