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

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x18
push ebx
mov dword [ebp - 0x14], ecx
mov ecx, dword [0x10141aa8]
mov dword [ebp - 0x10], edx
movss dword [ebp - 0x18], xmm2
movss dword [ebp - 4], xmm1
push esi
push edi
test cl, 1
jne 0x100b17c4
or ecx, 1
mov dword [0x10141aa8], ecx
mov ebx, dword [0x1013c208]
mov ebx, dword [ebx + 0x30]
mov dword [ebp - 8], ebx
test ebx, ebx
je 0x100b17a9
mov edi, dword [ebx + 0xc]
mov esi, 0x811c9dc5
xor ecx, ecx
nop dword [eax + eax]
inc ecx
cmp byte [edi + ecx], 0
jne 0x100b1770
xor edx, edx
test ecx, ecx
je 0x100b1799
nop dword [eax]
movsx eax, byte [edi + edx]
inc edx
xor eax, esi
imul esi, eax, 0x1000193
cmp edx, ecx
jb 0x100b1780
cmp esi, 0x51c2378
je 0x100b17b6
mov ebx, dword [ebx + 4]
mov dword [ebp - 8], ebx
test ebx, ebx
jne 0x100b1761
mov ecx, dword [0x10141aa8]
xor ebx, ebx
mov dword [ebp - 8], ebx
mov dword [0x10141ab0], ebx
jmp 0x100b17cc
mov ecx, dword [0x10141aa8]
mov dword [0x10141ab0], ebx
jmp 0x100b17cc
mov eax, dword [0x10141ab0]
mov dword [ebp - 8], eax
test cl, 2
jne 0x100b1832
or ecx, 2
mov dword [0x10141aa8], ecx
mov eax, dword [0x1013c208]
mov ebx, dword [eax + 0x30]
test ebx, ebx
je 0x100b182a
mov esi, dword [ebx + 0xc]
mov edi, 0x811c9dc5
xor ecx, ecx
inc ecx
cmp byte [esi + ecx], 0
jne 0x100b17f0
xor edx, edx
test ecx, ecx
je 0x100b181d
nop dword [eax]
movsx eax, byte [esi + edx]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x100b1800
cmp edi, 0x874b1932
je 0x100b18a6
mov ebx, dword [ebx + 4]
test ebx, ebx
jne 0x100b17e6
mov ecx, dword [0x10141aa8]
xor ebx, ebx
mov dword [0x10141aac], ebx
test cl, 4
jne 0x100b18bf
or ecx, 4
mov dword [0x10141aa8], ecx
mov eax, dword [0x1013c208]
mov ebx, dword [eax + 0x30]
mov dword [ebp - 0xc], ebx
test ebx, ebx
je 0x100b1899
mov esi, dword [ebx + 0xc]
mov edi, 0x811c9dc5
xor ecx, ecx
nop dword [eax]
inc ecx
cmp byte [ecx + esi], 0
jne 0x100b1860
xor edx, edx
test ecx, ecx
je 0x100b1889
nop dword [eax]
movsx eax, byte [edx + esi]
inc edx
xor eax, edi
imul edi, eax, 0x1000193
cmp edx, ecx
jb 0x100b1870
cmp edi, 0x2d45f02d
je 0x100b18b1
mov ebx, dword [ebx + 4]
mov dword [ebp - 0xc], ebx
test ebx, ebx
jne 0x100b1853
mov ecx, dword [0x10141aa8]
xor ebx, ebx
mov dword [ebp - 0xc], ebx
mov dword [0x10141a78], ebx
jmp 0x100b18c7
mov ecx, dword [0x10141aa8]
jmp 0x100b182c
mov ecx, dword [0x10141aa8]
mov dword [0x10141a78], ebx
jmp 0x100b18c7
mov eax, dword [0x10141a78]
mov dword [ebp - 0xc], eax
test cl, 8
jne 0x100b1926
or ecx, 8
mov dword [0x10141aa8], ecx
mov eax, dword [0x1013c208]
mov ebx, dword [eax + 0x30]
jmp 0x100b191c
mov edi, dword [ebx + 0xc]
mov esi, 0x811c9dc5
xor ecx, ecx
nop word [eax + eax]
inc ecx
cmp byte [ecx + edi], 0
jne 0x100b18f0
xor edx, edx
test ecx, ecx
je 0x100b1919
nop dword [eax]
movsx eax, byte [edx + edi]
inc edx
xor eax, esi
imul esi, eax, 0x1000193
cmp edx, ecx
jb 0x100b1900
cmp esi, 0x227932f
je 0x100b1920
mov ebx, dword [ebx + 4]
test ebx, ebx
jne 0x100b18e0
mov dword [0x10141aa4], ebx
mov eax, dword [0x1013c414]
mov ebx, dword [ebp - 0x14]
add eax, 0xffffffd5
xor eax, 0x20f6a00c
cmp dword [eax + ebx], 3
jne 0x100b1960
mov ecx, dword [ebp - 8]
mov eax, dword [ecx]
mov eax, dword [eax + 0x30]
mov dword [ebp - 0x14], eax
call dword [ebp - 0x14]
mov ecx, dword [0x10141aac]
fstp dword [ebp - 8]
mov eax, dword [ecx]
mov eax, dword [eax + 0x30]
mov dword [ebp - 0x14], eax
call dword [ebp - 0x14]
jmp 0x100b1982
mov ecx, dword [ebp - 0xc]
mov eax, dword [ecx]
mov eax, dword [eax + 0x30]
mov dword [ebp - 0x14], eax
call dword [ebp - 0x14]
mov ecx, dword [0x10141aa4]
fstp dword [ebp - 8]
mov eax, dword [ecx]
mov eax, dword [eax + 0x30]
mov dword [ebp - 0x14], eax
call dword [ebp - 0x14]
mov eax, dword [0x1013c484]
add eax, 0xffffffb9
xor eax, 0x20f6a028
fstp dword [ebp - 0xc]
mov dl, byte [eax + ebx]
mov eax, dword [0x1013c48c]
add eax, 0xffffffb7
xor eax, 0x20f6a02a
mov cl, byte [eax + ebx]
mov eax, dword [0x1013c4a4]
add eax, 0xffffffb1
xor eax, 0x20f6a030
movd xmm2, dword [eax + ebx]
mov ebx, dword [ebp - 0x10]
cvtdq2ps xmm2, xmm2
comiss xmm2, dword [0x10106cbc]
jbe 0x100b19f7
cmp ebx, 0xa
ja case.0x100b19d2.6
movzx eax, byte [ebx + 0x100b1af4]
jmp dword [eax*4 + 0x100b1ae8]
mov cl, 1
jmp case.0x100b19d2.6
test dl, dl
jne 0x100b19ed
test cl, cl
jne 0x100b19ed
movaps xmm3, xmm2
lea eax, [ebx - 1]
jmp 0x100b1a04
mov cl, 1
lea eax, [ebx - 1]
movaps xmm3, xmm2
jmp 0x100b1a04
xor cl, cl
lea eax, [ebx - 1]
movaps xmm3, xmm2
cmp eax, 9
ja case.0x100b1a0b.8
movzx eax, byte [eax + 0x100b1b14]
jmp dword [eax*4 + 0x100b1b00]
movss xmm4, dword [ebp - 4]
mulss xmm4, dword [0x10106dec]
mulss xmm4, dword [ebp - 8]
jmp 0x100b1a5f
movss xmm4, dword [ebp - 4]
mulss xmm4, dword [0x10106da4]
mulss xmm4, dword [ebp - 0xc]
jmp 0x100b1a5f
movss xmm4, dword [ebp - 0xc]
mulss xmm4, dword [ebp - 4]
jmp 0x100b1a5f
movss xmm4, dword [ebp - 4]
mulss xmm4, dword [0x10106d80]
mulss xmm4, dword [ebp - 0xc]
jmp 0x100b1a5f
movss xmm4, dword [ebp - 4]
test cl, cl
je 0x100b1a96
movss xmm5, dword [ebp - 0x18]
movaps xmm0, xmm4
mulss xmm5, dword [0x10106d68]
mulss xmm5, xmm4
subss xmm0, xmm5
mulss xmm0, dword [0x10106d68]
comiss xmm0, xmm3
jbe 0x100b1a93
addss xmm2, xmm2
movaps xmm5, xmm4
subss xmm5, xmm2
movaps xmm4, xmm5
movss xmm2, dword [0x10106eec]
movaps xmm0, xmm4
movss xmm1, dword [0x10106ee4]
andps xmm2, xmm4
xorps xmm0, xmm2
movss xmm3, dword [0x10106d9c]
cmpltss xmm0, xmm1
pop edi
pop esi
pop ebx
andps xmm1, xmm0
movaps xmm0, xmm4
orps xmm1, xmm2
addss xmm0, xmm1
subss xmm0, xmm1
movaps xmm1, xmm0
subss xmm1, xmm4
cmpnless xmm1, xmm2
andps xmm1, xmm3
subss xmm0, xmm1
mov esp, ebp
pop ebp
ret