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

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x103a99fd
mov eax, dword fs:[0]
push eax
sub esp, 0x24
push ebx
push esi
push edi
mov eax, dword [0x1049b0c0]
xor eax, ebp
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x10], edx
mov dword [ebp - 0x1c], ecx
mov ebx, dword [edx + 0x9960]
mov dword [ebp - 0x28], ebx
test ebx, ebx
je 0x1027204c
mov eax, dword [edx + 0x2990]
lea ecx, [edx + 4]
mov dword [ebp - 0x30], eax
mov edi, dword [eax + 0xc0]
mov eax, dword [0x11b92250]
add eax, 0xc6c19814
xor eax, 0x26996288
mov esi, dword [eax + 0xec]
mov eax, dword [ecx]
call dword [eax + 0x20]
xor edx, edx
mov ecx, esi
test esi, esi
push eax
cmovne edx, esi
mov edx, dword [edx]
mov edx, dword [edx + 0x80]
call edx
mov edx, eax
test edx, edx
jne 0x10271a3d
mov edi, dword [ebp - 0x10]
mov dword [ebp - 0x2c], eax
jmp 0x10271a4d
mov eax, dword [0x1055d058]
push edi
mov edi, dword [ebp - 0x10]
mov ecx, edi
call eax
mov dword [ebp - 0x2c], eax
mov ecx, dword [0x120772c8]
movss xmm3, dword [0x1046f504]
movss xmm1, dword [0x1046f3d8]
movss xmm2, dword [0x1046f384]
test cl, 1
jne 0x10271c0a
or ecx, 1
mov dword [0x120772c8], ecx
mov dword [ebp - 4], 0
mov eax, dword [0x1054161c]
test al, 1
jne 0x10271bca
or eax, 1
mov dword [0x1054161c], eax
mov byte [ebp - 4], 1
mov ebx, dword [0x1053ebb8]
cmp ebx, dword [0x1053ebbc]
je 0x10271af4
nop dword [eax + eax]
mov eax, dword [ebx]
mov dword [ebp - 0x14], eax
test eax, eax
je 0x10271ae9
mov esi, dword [eax + 0xc]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [esi + ecx], 0
jne 0x10271ac3
xor edx, edx
test ecx, ecx
je 0x10271ae9
movsx eax, byte [esi + edx]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x10271ad0
cmp edi, 0x72e242a1
je 0x10271b06
add ebx, 4
cmp ebx, dword [0x1053ebbc]
jne 0x10271ab0
mov ebx, dword [ebp - 0x28]
xor eax, eax
mov edi, dword [ebp - 0x10]
mov dword [0x10541678], eax
jmp 0x10271bcf
mov eax, dword [ebp - 0x14]
xor esi, esi
mov dword [ebp - 0x18], esi
mov dword [ebp - 0x20], esi
cmp dword [eax + 4], esi
jle 0x10271ba8
xor ecx, ecx
mov dword [ebp - 0x24], ecx
nop
mov ebx, dword [eax]
add ebx, ecx
mov ecx, dword [ebx + 0x28]
test ecx, ecx
je 0x10271b51
cmp dword [ecx + 4], 0
jle 0x10271b51
push 0
mov edx, 0xf3c2c786
call fcn.10238b60
add esp, 4
test eax, eax
je 0x10271b4e
mov ecx, dword [ebx + 0x2c]
add ecx, eax
add esi, ecx
mov dword [ebp - 0x18], esi
mov eax, dword [ebp - 0x14]
mov esi, dword [ebx]
mov edi, 0x811c9dc5
xor ecx, ecx
nop word [eax + eax]
inc ecx
cmp byte [esi + ecx], 0
jne 0x10271b60
xor edx, edx
test ecx, ecx
je 0x10271b8c
nop dword [eax]
movsx eax, byte [esi + edx]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x10271b70
cmp edi, 0xf3c2c786
je 0x10271bb7
mov eax, dword [ebp - 0x14]
mov edx, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x24]
inc edx
mov esi, dword [ebp - 0x18]
add ecx, 0x3c
mov dword [ebp - 0x20], edx
mov dword [ebp - 0x24], ecx
cmp edx, dword [eax + 4]
jl 0x10271b20
mov ebx, dword [ebp - 0x28]
mov eax, esi
mov edi, dword [ebp - 0x10]
mov dword [0x10541678], eax
jmp 0x10271bcf
mov eax, dword [ebx + 0x2c]
add eax, dword [ebp - 0x18]
mov ebx, dword [ebp - 0x28]
mov edi, dword [ebp - 0x10]
mov dword [0x10541678], eax
jmp 0x10271bcf
mov eax, dword [0x10541678]
movss xmm0, dword [eax + edi + 4]
comiss xmm3, xmm0
jbe 0x10271be9
nop word [eax + eax]
addss xmm0, xmm1
comiss xmm3, xmm0
ja 0x10271be0
comiss xmm0, xmm2
jbe 0x10271bf9
nop
subss xmm0, xmm1
comiss xmm0, xmm2
ja 0x10271bf0
movss dword [0x120772c4], xmm0
mov dword [ebp - 4], 0xffffffff
jmp 0x10271c12
movss xmm0, dword [0x120772c4]
subss xmm0, dword [ebx + 0x78]
subss xmm0, dword [ebx + 0x80]
comiss xmm3, xmm0
movss dword [ebp - 0x20], xmm0
jbe 0x10271c2f
addss xmm0, xmm1
jmp 0x10271c38
comiss xmm0, xmm2
jbe 0x10271c3d
subss xmm0, xmm1
movss dword [ebp - 0x20], xmm0
mov esi, dword [ebp + 8]
mov edx, edi
mov ebx, dword [ebp - 0x1c]
mov ecx, ebx
push esi
call fcn.10270da0
add esp, 4
cmp dword [ebp + 0xc], 0
je 0x10271c64
push ecx
push esi
mov edx, edi
mov ecx, ebx
call fcn.10271790
add esp, 8
cmp byte [esi + 1], 0
je 0x10272035
mov edx, dword [0x10541638]
test dl, 1
jne 0x10271dba
or edx, 1
mov dword [0x10541638], edx
mov dword [ebp - 4], 2
mov ebx, dword [0x1053ebb8]
cmp ebx, dword [0x1053ebbc]
je 0x10271ce4
nop dword [eax + eax]
mov eax, dword [ebx]
mov dword [ebp - 0x18], eax
test eax, eax
je 0x10271cd9
mov esi, dword [eax + 0xc]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + esi], 0
jne 0x10271cb3
xor edx, edx
test ecx, ecx
je 0x10271cd9
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x10271cc0
cmp edi, 0x4e9f1122
je 0x10271d04
add ebx, 4
cmp ebx, dword [0x1053ebbc]
jne 0x10271ca0
xor ecx, ecx
mov ebx, dword [ebp - 0x1c]
mov edi, dword [ebp - 0x10]
mov dword [ebp - 4], 0xffffffff
mov edx, dword [0x10541638]
mov dword [0x105446ac], ecx
jmp 0x10271dc0
mov eax, dword [ebp - 0x18]
xor esi, esi
mov dword [ebp - 0x14], esi
mov dword [ebp - 0x24], esi
cmp dword [eax + 4], esi
jle 0x10271da8
xor ecx, ecx
mov dword [ebp - 0x28], ecx
nop dword [eax]
mov ebx, dword [eax]
add ebx, ecx
mov ecx, dword [ebx + 0x28]
test ecx, ecx
je 0x10271d51
cmp dword [ecx + 4], 0
jle 0x10271d51
push 0
mov edx, 0x53630d14
call fcn.10238b60
add esp, 4
test eax, eax
je 0x10271d4e
mov ecx, dword [ebx + 0x2c]
add ecx, eax
add esi, ecx
mov dword [ebp - 0x14], esi
mov eax, dword [ebp - 0x18]
mov esi, dword [ebx]
mov edi, 0x811c9dc5
xor ecx, ecx
nop word [eax + eax]
inc ecx
cmp byte [ecx + esi], 0
jne 0x10271d60
xor edx, edx
test ecx, ecx
je 0x10271d8c
nop dword [eax]
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x10271d70
cmp edi, 0x53630d14
je 0x10271daf
mov eax, dword [ebp - 0x18]
mov edx, dword [ebp - 0x24]
mov ecx, dword [ebp - 0x28]
inc edx
mov esi, dword [ebp - 0x14]
add ecx, 0x3c
mov dword [ebp - 0x24], edx
mov dword [ebp - 0x28], ecx
cmp edx, dword [eax + 4]
jl 0x10271d20
mov ecx, esi
jmp 0x10271ce6
mov ecx, dword [ebx + 0x2c]
add ecx, dword [ebp - 0x14]
jmp 0x10271ce6
mov ecx, dword [0x105446ac]
movss xmm1, dword [ecx + edi + 4]
movss xmm2, dword [ecx + edi]
movss xmm0, dword [ecx + edi + 8]
mulss xmm1, xmm1
mulss xmm2, xmm2
mulss xmm0, xmm0
addss xmm2, xmm1
xorps xmm1, xmm1
addss xmm2, xmm0
movss xmm0, dword [0x1046f178]
sqrtss xmm1, xmm2
comiss xmm0, xmm1
jae 0x10271fe5
cmp dword [ebp - 0x2c], 0x3d3
mov esi, dword [ebp - 0x30]
jne 0x10271e32
movss xmm0, dword [esi + 0xd4]
xorps xmm1, xmm1
ucomiss xmm0, xmm1
lahf
test ah, 0x44
jp 0x10271e32
movss xmm0, dword [esi + 0xc8]
ucomiss xmm0, xmm1
lahf
test ah, 0x44
jnp 0x10271fe5
movss xmm0, dword [esi + 0x178]
comiss xmm0, dword [0x1046ef7c]
jbe 0x1027204c
mov dword [ebx + 0xc], 2
mov dword [ebx + 8], 4
test dl, 1
jne 0x10271ed2
or edx, 1
mov dword [0x10541638], edx
mov dword [ebp - 4], 3
mov ebx, dword [0x1053ebb8]
cmp ebx, dword [0x1053ebbc]
je 0x10271ec4
nop dword [eax]
mov eax, dword [ebx]
mov dword [ebp - 0x18], eax
test eax, eax
je 0x10271eb9
mov esi, dword [eax + 0xc]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [ecx + esi], 0
jne 0x10271e93
xor edx, edx
test ecx, ecx
je 0x10271eb9
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x10271ea0
cmp edi, 0x4e9f1122
je 0x10271f11
add ebx, 4
cmp ebx, dword [0x1053ebbc]
jne 0x10271e80
xor ecx, ecx
mov ebx, dword [ebp - 0x1c]
mov edi, dword [ebp - 0x10]
mov dword [0x105446ac], ecx
movss xmm1, dword [ecx + edi + 4]
movss xmm2, dword [ecx + edi]
movss xmm0, dword [ecx + edi + 8]
mulss xmm2, xmm2
mulss xmm1, xmm1
mulss xmm0, xmm0
addss xmm2, xmm1
addss xmm2, xmm0
comiss xmm2, dword [0x1046f444]
jb 0x10271fca
movss xmm0, dword [0x1046f22c]
jmp 0x10271fd2
mov eax, dword [ebp - 0x18]
xor esi, esi
mov dword [ebp - 0x14], esi
mov dword [ebp - 0x30], esi
cmp dword [eax + 4], esi
jle 0x10271fb8
xor ecx, ecx
mov dword [ebp - 0x2c], ecx
nop word [eax + eax]
mov ebx, dword [eax]
add ebx, ecx
mov ecx, dword [ebx + 0x28]
test ecx, ecx
je 0x10271f61
cmp dword [ecx + 4], 0
jle 0x10271f61
push 0
mov edx, 0x53630d14
call fcn.10238b60
add esp, 4
test eax, eax
je 0x10271f5e
mov ecx, dword [ebx + 0x2c]
add ecx, eax
add esi, ecx
mov dword [ebp - 0x14], esi
mov eax, dword [ebp - 0x18]
mov esi, dword [ebx]
mov edi, 0x811c9dc5
xor ecx, ecx
nop word [eax + eax]
inc ecx
cmp byte [ecx + esi], 0
jne 0x10271f70
xor edx, edx
test ecx, ecx
je 0x10271f9c
nop dword [eax]
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x10271f80
cmp edi, 0x53630d14
je 0x10271fbf
mov eax, dword [ebp - 0x18]
mov edx, dword [ebp - 0x30]
mov ecx, dword [ebp - 0x2c]
inc edx
mov esi, dword [ebp - 0x14]
add ecx, 0x3c
mov dword [ebp - 0x30], edx
mov dword [ebp - 0x2c], ecx
cmp edx, dword [eax + 4]
jl 0x10271f30
mov ecx, esi
jmp 0x10271ec6
mov ecx, dword [ebx + 0x2c]
add ecx, dword [ebp - 0x14]
jmp 0x10271ec6
movss xmm0, dword [0x1046f274]
cmp byte [ebx + 0x6c], 0
movss dword [ebx + 0x10], xmm0
je 0x1027204c
mov eax, dword [ebx + 0x70]
mov dword [ebx + 4], eax
jmp 0x10272049
movss xmm1, dword [0x1046f2ac]
movss xmm0, dword [ebp - 0x20]
comiss xmm0, xmm1
mov dword [ebx + 0xc], 1
mov dword [ebx + 8], 3
ja 0x10272014
comiss xmm1, xmm0
ja 0x10272014
movss xmm0, dword [0x1046f274]
jmp 0x1027201c
movss xmm0, dword [0x1046f2e4]
cmp byte [ebx + 0x9c], 0
movss dword [ebx + 0x10], xmm0
je 0x1027204c
mov eax, dword [ebx + 0xa0]
mov dword [ebx + 4], eax
jmp 0x10272049
mov dword [ebx + 0xc], 3
mov dword [ebx + 8], 2
mov eax, dword [esi + 0x68]
mov dword [ebx + 0x10], eax
mov byte [ebx], 1
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret