Function at 0x100e5d00
Capabilities:
Encode data using xor

Disassembly:
push ebx
mov ebx, esp
sub esp, 8
and esp, 0xfffffff0
add esp, 4
push ebp
mov ebp, dword [ebx + 4]
mov dword [esp + 4], ebp
mov ebp, esp
sub esp, 0xf8
mov eax, dword [0x101040b4]
xor eax, ebp
mov dword [ebp - 4], eax
push esi
push edi
mov ecx, dword [0x10122b60]
xorps xmm0, xmm0
mov dword [ebp - 0x74], 0
mov dword [ebp - 0x70], 0
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x14], 0
mov dword [ebp - 0x98], 0
mov dword [ebp - 0x24], 0xffffffff
mov dword [ebp - 0x68], 0
mov dword [ebp - 0x60], 0
mov dword [ebp - 0x6c], 0xffffffff
mov dword [ebp - 0x64], 0xffffffff
mov byte [ebp - 0x28], 1
mov dword [ebp - 0x20], 0
movups xmmword [ebp - 0x84], xmm0
test ecx, ecx
je 0x100e639c
cmp byte [0x10130e58], 0
je 0x100e639c
cmp byte [0x10122b6f], 0
jne 0x100e5dda
mov eax, dword [0x1013ab24]
cmp eax, dword [0x1013ab28]
je 0x100e639c
mov dword [0x1013ab28], eax
pop edi
pop esi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.100e7827
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
mov esi, dword [0x1013ab28]
mov edx, esi
sub edx, dword [0x1013ab24]
sar edx, 5
mov dword [ebp - 0xbc], edx
test edx, edx
je 0x100e639c
mov eax, dword [0x1013b6f0]
add eax, 0xffffffbd
xor eax, 0xee847b8a
movd xmm2, dword [eax + ecx]
mov ecx, edx
mov eax, dword [0x1013b508]
cvtdq2ps xmm2, xmm2
mulss xmm2, dword [eax + 0x20]
movss dword [ebp - 0xc8], xmm2
test edx, edx
je 0x100e639c
mov edi, edx
shl edi, 5
nop
sub edi, 0x20
mov edx, ecx
dec ecx
mov dword [ebp - 0xdc], edi
mov dword [ebp - 0xb8], ecx
add edi, dword [0x1013ab24]
je 0x100e638e
movd xmm1, dword [edi + 0x18]
movaps xmm0, xmm2
mov eax, dword [0x1013b508]
cvtdq2ps xmm1, xmm1
mulss xmm1, dword [eax + 0x20]
subss xmm0, xmm1
call fcn.10029cb0
comiss xmm0, dword [0x1013112c]
jbe 0x100e5eda
lea edx, [edi + 0x20]
cmp edx, esi
je 0x100e5ecc
lea ecx, [edi + 0x14]
nop
mov eax, dword [edx]
lea ecx, [ecx + 0x20]
mov dword [ecx - 0x34], eax
add edx, 0x20
mov eax, dword [ecx - 0x10]
mov dword [ecx - 0x30], eax
mov eax, dword [ecx - 0xc]
mov dword [ecx - 0x2c], eax
mov eax, dword [ecx - 8]
mov dword [ecx - 0x28], eax
mov eax, dword [ecx - 4]
mov dword [ecx - 0x24], eax
mov eax, dword [ecx]
mov dword [ecx - 0x20], eax
mov eax, dword [ecx + 4]
mov dword [ecx - 0x1c], eax
movzx eax, byte [ecx + 8]
mov byte [ecx - 0x18], al
movzx eax, byte [ecx + 9]
mov byte [ecx - 0x17], al
cmp edx, esi
jne 0x100e5e80
mov esi, dword [0x1013ab28]
mov ecx, dword [ebp - 0xb8]
sub esi, 0x20
mov dword [0x1013ab28], esi
jmp 0x100e638e
cmp byte [edi + 0x1c], 0
jne 0x100e638e
mov eax, dword [ebp - 0xbc]
dec eax
cmp ecx, eax
je 0x100e5f1a
mov eax, esi
sub eax, dword [0x1013ab24]
sar eax, 5
cmp eax, edx
jb 0x100e638e
cmp edx, dword [ebp - 0xbc]
jae 0x100e638e
mov eax, dword [edi + 0x18]
cmp eax, dword [edi + 0x38]
je 0x100e638e
movss xmm0, dword [edi + 0x10]
movss xmm7, dword [edi + 0xc]
movss xmm4, dword [edi]
movss xmm5, dword [edi + 4]
subss xmm4, xmm7
movss xmm3, dword [edi + 0x14]
subss xmm5, xmm0
movss xmm6, dword [edi + 8]
movss dword [ebp - 0xc4], xmm0
subss xmm6, xmm3
movss dword [ebp - 0xcc], xmm7
movaps xmm0, xmm4
movss dword [ebp - 0xc0], xmm3
movaps xmm1, xmm5
mulss xmm0, xmm4
mulss xmm1, xmm5
addss xmm0, xmm1
movaps xmm1, xmm6
mulss xmm1, xmm6
addss xmm0, xmm1
call fcn.1001eaf0
movaps xmm2, xmm0
movaps xmm1, xmm4
addss xmm2, dword [0x100f7e68]
movaps xmm0, xmm5
mulss xmm1, xmm4
mulss xmm0, xmm5
addss xmm0, xmm1
movaps xmm1, xmm6
mulss xmm1, xmm6
addss xmm0, xmm1
call fcn.1001eaf0
divss xmm4, xmm2
mov ecx, dword [0x1013b50c]
push 0xffffffffffffffff
mov eax, dword [ecx]
mov eax, dword [eax + 0x80]
divss xmm5, xmm2
divss xmm6, xmm2
mulss xmm4, xmm0
mulss xmm5, xmm0
mulss xmm6, xmm0
addss xmm4, xmm7
addss xmm5, dword [ebp - 0xc4]
addss xmm6, xmm3
movss dword [ebp - 0xd0], xmm4
movss dword [ebp - 0xd4], xmm5
movss dword [ebp - 0xd8], xmm6
call eax
movss xmm0, dword [ebp - 0xc0]
test eax, eax
jne 0x100e6010
subss xmm0, dword [0x100f8000]
movss xmm1, dword [ebp - 0xcc]
mov eax, dword [0x10130f0c]
movss dword [ebp - 0x7c], xmm0
movss xmm0, dword [ebp - 0xd0]
movss dword [ebp - 0x78], xmm0
movss xmm0, dword [ebp - 0xd4]
movss dword [ebp - 0x84], xmm1
movss xmm1, dword [ebp - 0xc4]
movss dword [ebp - 0x74], xmm0
movss xmm0, dword [ebp - 0xd8]
movss dword [ebp - 0x80], xmm1
movss dword [ebp - 0x70], xmm0
sub eax, 0
je 0x100e61d9
sub eax, 1
je 0x100e611a
sub eax, 1
jne 0x100e6267
movaps xmm0, xmmword [0x100f8a50]
mov eax, 0x10
pxor xmm0, xmmword [0x100f8660]
mov dword [ebp - 0xa0], 0x574e550d
mov byte [ebp - 0x9c], 0x23
movups xmmword [ebp - 0xb0], xmm0
nop word [eax + eax]
xor byte [ebp + eax - 0xb0], 0x23
inc eax
cmp eax, 0x15
jb 0x100e60b0
mov ecx, dword [0x1013b4e4]
lea edx, [ebp - 0xb0]
push edx
mov eax, dword [ecx]
mov eax, dword [eax + 8]
call eax
movaps xmm0, xmmword [0x100f8a50]
pxor xmm0, xmmword [0x100f8660]
mov dword [ebp - 0x6c], eax
mov eax, 0x10
mov dword [ebp - 0xa0], 0x574e550d
mov byte [ebp - 0x9c], 0x23
movups xmmword [ebp - 0xb0], xmm0
xor byte [ebp + eax - 0xb0], 0x23
inc eax
cmp eax, 0x15
jb 0x100e6101
lea eax, [ebp - 0xb0]
jmp 0x100e6264
movaps xmm1, xmmword [0x100f8660]
mov eax, 0x10
movaps xmm0, xmmword [0x100f8820]
pxor xmm0, xmm1
mov dword [ebp - 0xa4], 0x12514650
mov dword [ebp - 0xa0], 0x574e550d
mov byte [ebp - 0x9c], 0x23
movaps xmmword [ebp - 0xf0], xmm1
movups xmmword [ebp - 0xb4], xmm0
nop word [eax + eax]
xor byte [ebp + eax - 0xb4], 0x23
inc eax
cmp eax, 0x19
jb 0x100e6160
mov ecx, dword [0x1013b4e4]
lea edx, [ebp - 0xb4]
push edx
mov eax, dword [ecx]
mov eax, dword [eax + 8]
call eax
movaps xmm0, xmmword [ebp - 0xf0]
pxor xmm0, xmmword [0x100f8820]
mov dword [ebp - 0x6c], eax
mov eax, 0x10
mov dword [ebp - 0xa4], 0x12514650
mov dword [ebp - 0xa0], 0x574e550d
mov byte [ebp - 0x9c], 0x23
movups xmmword [ebp - 0xb4], xmm0
nop dword [eax + eax]
xor byte [ebp + eax - 0xb4], 0x23
inc eax
cmp eax, 0x19
jb 0x100e61c0
lea eax, [ebp - 0xb4]
jmp 0x100e6264
movaps xmm0, xmmword [0x100f8660]
mov eax, 0x10
movups xmmword [ebp - 0xf0], xmm0
mov word [ebp - 0xa0], 0x2357
pxor xmm0, xmmword [0x100f8a60]
movups xmmword [ebp - 0xb0], xmm0
xor byte [ebp + eax - 0xb0], 0x23
inc eax
cmp eax, 0x12
jb 0x100e6204
mov ecx, dword [0x1013b4e4]
lea edx, [ebp - 0xb0]
push edx
mov eax, dword [ecx]
mov eax, dword [eax + 8]
call eax
movups xmm0, xmmword [ebp - 0xf0]
mov dword [ebp - 0x6c], eax
mov eax, 0x10
mov word [ebp - 0xa0], 0x2357
pxor xmm0, xmmword [0x100f8a60]
movups xmmword [ebp - 0xb0], xmm0
nop dword [eax]
xor byte [ebp + eax - 0xb0], 0x23
inc eax
cmp eax, 0x12
jb 0x100e6250
lea eax, [ebp - 0xb0]
mov dword [ebp - 0x68], eax
mov eax, dword [0x10130f0c]
movss xmm0, dword [0x1013112c]
mov dword [ebp - 0x5c], 0
movss dword [ebp - 0x58], xmm0
sub eax, 0
je 0x100e62af
sub eax, 1
je 0x100e629f
sub eax, 1
jne 0x100e62bd
mov dword [ebp - 0x54], 0x40000000
mov dword [ebp - 0x50], 0x40000000
jmp 0x100e62bd
mov dword [ebp - 0x54], 0x40a00000
mov dword [ebp - 0x50], 0x40a00000
jmp 0x100e62bd
mov dword [ebp - 0x54], 0x3f19999a
mov dword [ebp - 0x50], 0x3f19999a
cmp byte [edi + 0x1d], 0
movaps xmm0, xmmword [0x100f87b0]
movups xmmword [ebp - 0x4c], xmm0
mov dword [ebp - 0x3c], 0
mov dword [ebp - 0x38], 0
mov dword [ebp - 0x24], 4
mov byte [ebp - 0x28], 1
mov dword [ebp - 0x20], 0
jne 0x100e631e
cmp byte [0x10130f80], 0
je 0x100e631e
mov eax, dword [0x10131024]
movzx ecx, al
shr eax, 8
movzx eax, al
movd xmm0, ecx
cvtdq2ps xmm0, xmm0
movss dword [ebp - 0x34], xmm0
movd xmm0, eax
movzx eax, byte [0x10131026]
jmp 0x100e6343
mov eax, dword [0x101310b4]
movzx ecx, al
shr eax, 8
movzx eax, al
movd xmm0, ecx
cvtdq2ps xmm0, xmm0
movss dword [ebp - 0x34], xmm0
movd xmm0, eax
movzx eax, byte [0x101310b6]
cvtdq2ps xmm0, xmm0
lea ecx, [ebp - 0x98]
movss dword [ebp - 0x30], xmm0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [ebp - 0x2c], xmm0
call fcn.100b6540
mov edx, eax
test edx, edx
je 0x100e637a
mov ecx, dword [0x1013b538]
push edx
mov eax, dword [ecx]
mov eax, dword [eax + 0x10]
call eax
mov byte [edi + 0x1c], 1
mov ecx, dword [ebp - 0xb8]
movss xmm2, dword [ebp - 0xc8]
mov esi, dword [0x1013ab28]
mov edi, dword [ebp - 0xdc]
test ecx, ecx
jne 0x100e5e30
mov ecx, dword [ebp - 4]
pop edi
xor ecx, ebp
pop esi
call fcn.100e7827
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret