Function at 0x1001f7e0
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x18
movaps xmm0, xmmword [0x10061cb0]
xor edx, edx
push esi
push edi
mov edi, ecx
movups xmmword [ebp - 0x18], xmm0
mov al, byte [ebp - 0x18]
xor byte [ebp + edx - 0x17], al
inc edx
cmp edx, 0xe
jb 0x1001f7f7
sub esp, 0x18
mov byte [ebp - 9], 0
mov edx, esp
mov dword [edx + 0x14], 0xf
mov dword [edx + 0x10], 0
cmp dword [edx + 0x14], 0x10
jb 0x1001f825
mov eax, dword [edx]
jmp 0x1001f827
mov eax, edx
mov byte [eax], 0
cmp byte [ebp - 0x17], 0
jne 0x1001f834
xor ecx, ecx
jmp 0x1001f849
lea ecx, [ebp - 0x17]
lea esi, [ecx + 1]
nop word [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1001f840
sub ecx, esi
push ecx
lea eax, [ebp - 0x17]
mov ecx, edx
push eax
call fcn.100048e0
mov ecx, dword [edi]
call fcn.100110f0
add esp, 0x18
mov dword [edi + 4], eax
mov cl, 0x68
mov dword [ebp - 0x14], 0x61c2a68
mov dword [ebp - 0x10], 0x1a1c3b37
xor eax, eax
mov dword [ebp - 0xc], 0x1c0f060d
mov word [ebp - 8], 0
xor byte [ebp + eax - 0x13], cl
inc eax
cmp eax, 0xc
jae 0x1001f890
mov cl, byte [ebp - 0x14]
jmp 0x1001f881
sub esp, 0x18
mov byte [ebp - 7], 0
mov edx, esp
mov dword [edx + 0x14], 0xf
mov dword [edx + 0x10], 0
cmp dword [edx + 0x14], 0x10
jb 0x1001f8b1
mov eax, dword [edx]
jmp 0x1001f8b3
mov eax, edx
mov byte [eax], 0
cmp byte [ebp - 0x13], 0
jne 0x1001f8c0
xor ecx, ecx
jmp 0x1001f8cf
lea ecx, [ebp - 0x13]
lea esi, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1001f8c6
sub ecx, esi
push ecx
lea eax, [ebp - 0x13]
mov ecx, edx
push eax
call fcn.100048e0
mov ecx, dword [edi]
call fcn.100110f0
add esp, 0x18
mov dword [edi + 8], eax
mov cl, 0x79
mov dword [ebp - 0x14], 0x170d3b79
mov dword [ebp - 0x10], 0x180d2a26
xor eax, eax
mov dword [ebp - 0xc], 0x18171014
mov byte [ebp - 8], 0
xor byte [ebp + eax - 0x13], cl
inc eax
cmp eax, 0xb
jae 0x1001f914
mov cl, byte [ebp - 0x14]
jmp 0x1001f905
sub esp, 0x18
mov byte [ebp - 8], 0
mov edx, esp
mov dword [edx + 0x14], 0xf
mov dword [edx + 0x10], 0
cmp dword [edx + 0x14], 0x10
jb 0x1001f935
mov eax, dword [edx]
jmp 0x1001f937
mov eax, edx
mov byte [eax], 0
cmp byte [ebp - 0x13], 0
jne 0x1001f944
xor ecx, ecx
jmp 0x1001f959
lea ecx, [ebp - 0x13]
lea esi, [ecx + 1]
nop word [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1001f950
sub ecx, esi
push ecx
lea eax, [ebp - 0x13]
mov ecx, edx
push eax
call fcn.100048e0
mov ecx, dword [edi]
call fcn.100110f0
add esp, 0x18
mov dword [edi + 0xc], eax
mov cl, 0x6e
mov dword [ebp - 0x18], 0x1a2c6e
mov dword [ebp - 0x14], 0x160b2a31
xor eax, eax
mov dword [ebp - 0x10], 0x71c0b1a
mov word [ebp - 0xc], 0x171a
mov byte [ebp - 0xa], 0
xor byte [ebp + eax - 0x17], cl
inc eax
cmp eax, 0xd
jae 0x1001f9a4
mov cl, byte [ebp - 0x18]
jmp 0x1001f995
sub esp, 0x18
mov byte [ebp - 0xa], 0
mov edx, esp
mov dword [edx + 0x14], 0xf
mov dword [edx + 0x10], 0
cmp dword [edx + 0x14], 0x10
jb 0x1001f9c5
mov eax, dword [edx]
jmp 0x1001f9c7
mov eax, edx
mov byte [eax], 0
cmp byte [ebp - 0x17], 0
jne 0x1001f9d4
xor ecx, ecx
jmp 0x1001f9e9
lea ecx, [ebp - 0x17]
lea esi, [ecx + 1]
nop word [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1001f9e0
sub ecx, esi
push ecx
lea eax, [ebp - 0x17]
mov ecx, edx
push eax
call fcn.100048e0
mov ecx, dword [edi]
call fcn.100110f0
movaps xmm0, xmmword [0x10061f90]
add esp, 0x18
mov dword [edi + 0x10], eax
xor ecx, ecx
movups xmmword [ebp - 0x18], xmm0
mov byte [ebp - 8], 0
mov al, byte [ebp - 0x18]
xor byte [ebp + ecx - 0x17], al
inc ecx
cmp ecx, 0xf
jb 0x1001fa13
sub esp, 0x18
mov byte [ebp - 8], 0
mov edx, esp
mov dword [edx + 0x14], 0xf
mov dword [edx + 0x10], 0
cmp dword [edx + 0x14], 0x10
jb 0x1001fa41
mov eax, dword [edx]
jmp 0x1001fa43
mov eax, edx
mov byte [eax], 0
cmp byte [ebp - 0x17], 0
jne 0x1001fa50
xor ecx, ecx
jmp 0x1001fa5f
lea ecx, [ebp - 0x17]
lea esi, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1001fa56
sub ecx, esi
push ecx
lea eax, [ebp - 0x17]
mov ecx, edx
push eax
call fcn.100048e0
mov ecx, dword [edi]
call fcn.100110f0
movaps xmm0, xmmword [0x10062780]
add esp, 0x18
mov dword [edi + 0x14], eax
xor ecx, ecx
movups xmmword [ebp - 0x18], xmm0
mov word [ebp - 8], 0x60
nop dword [eax + eax]
mov al, byte [ebp - 0x18]
xor byte [ebp + ecx - 0x17], al
inc ecx
cmp ecx, 0x10
jb 0x1001fa90
sub esp, 0x18
mov byte [ebp - 7], 0
mov edx, esp
mov dword [edx + 0x14], 0xf
mov dword [edx + 0x10], 0
mov byte [edx], 0
cmp byte [ebp - 0x17], 0
jne 0x1001fac1
xor ecx, ecx
jmp 0x1001fad0
lea ecx, [ebp - 0x17]
lea esi, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1001fac7
sub ecx, esi
push ecx
lea eax, [ebp - 0x17]
mov ecx, edx
push eax
call fcn.100048e0
mov ecx, dword [edi]
call fcn.100110f0
add esp, 0x18
mov dword [edi + 0x18], eax
pop edi
pop esi
mov esp, ebp
pop ebp
ret