Function at 0x1001b6a0
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x18
movaps xmm0, xmmword [0x1004a250]
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 0x1001b6b7
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 0x1001b6e5
mov eax, dword [edx]
jmp 0x1001b6e7
mov eax, edx
mov byte [eax], 0
cmp byte [ebp - 0x17], 0
jne 0x1001b6f4
xor ecx, ecx
jmp 0x1001b709
lea ecx, [ebp - 0x17]
lea esi, [ecx + 1]
nop word [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1001b700
sub ecx, esi
push ecx
lea eax, [ebp - 0x17]
mov ecx, edx
push eax
call fcn.10004e90
mov ecx, dword [edi]
call fcn.1000e840
add esp, 0x18
mov dword [edi + 4], eax
mov cl, 0x4a
mov dword [ebp - 0x14], 0x243e084a
mov dword [ebp - 0x10], 0x383e1915
xor eax, eax
mov dword [ebp - 0xc], 0x3e2d242f
mov word [ebp - 8], 0x22
xor byte [ebp + eax - 0x13], cl
inc eax
cmp eax, 0xc
jae 0x1001b750
mov cl, byte [ebp - 0x14]
jmp 0x1001b741
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 0x1001b771
mov eax, dword [edx]
jmp 0x1001b773
mov eax, edx
mov byte [eax], 0
cmp byte [ebp - 0x13], 0
jne 0x1001b780
xor ecx, ecx
jmp 0x1001b78f
lea ecx, [ebp - 0x13]
lea esi, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1001b786
sub ecx, esi
push ecx
lea eax, [ebp - 0x13]
mov ecx, edx
push eax
call fcn.10004e90
mov ecx, dword [edi]
call fcn.1000e840
add esp, 0x18
mov dword [edi + 8], eax
mov cl, 0x7e
mov dword [ebp - 0x14], 0x100a3c7e
mov dword [ebp - 0x10], 0x1f0a2d21
xor eax, eax
mov dword [ebp - 0xc], 0x1f101713
mov byte [ebp - 8], 0
xor byte [ebp + eax - 0x13], cl
inc eax
cmp eax, 0xb
jae 0x1001b7d4
mov cl, byte [ebp - 0x14]
jmp 0x1001b7c5
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 0x1001b7f5
mov eax, dword [edx]
jmp 0x1001b7f7
mov eax, edx
mov byte [eax], 0
cmp byte [ebp - 0x13], 0
jne 0x1001b804
xor ecx, ecx
jmp 0x1001b819
lea ecx, [ebp - 0x13]
lea esi, [ecx + 1]
nop word [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1001b810
sub ecx, esi
push ecx
lea eax, [ebp - 0x13]
mov ecx, edx
push eax
call fcn.10004e90
mov ecx, dword [edi]
call fcn.1000e840
add esp, 0x18
mov dword [edi + 0xc], eax
mov cl, 0x4d
mov dword [ebp - 0x18], 0x23390f4d
mov dword [ebp - 0x14], 0x35280912
xor eax, eax
mov dword [ebp - 0x10], 0x243f2839
mov word [ebp - 0xc], 0x3439
mov byte [ebp - 0xa], 0
xor byte [ebp + eax - 0x17], cl
inc eax
cmp eax, 0xd
jae 0x1001b864
mov cl, byte [ebp - 0x18]
jmp 0x1001b855
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 0x1001b885
mov eax, dword [edx]
jmp 0x1001b887
mov eax, edx
mov byte [eax], 0
cmp byte [ebp - 0x17], 0
jne 0x1001b894
xor ecx, ecx
jmp 0x1001b8a9
lea ecx, [ebp - 0x17]
lea esi, [ecx + 1]
nop word [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1001b8a0
sub ecx, esi
push ecx
lea eax, [ebp - 0x17]
mov ecx, edx
push eax
call fcn.10004e90
mov ecx, dword [edi]
call fcn.1000e840
movaps xmm0, xmmword [0x1004a4e0]
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 0x1001b8d3
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 0x1001b901
mov eax, dword [edx]
jmp 0x1001b903
mov eax, edx
mov byte [eax], 0
cmp byte [ebp - 0x17], 0
jne 0x1001b910
xor ecx, ecx
jmp 0x1001b91f
lea ecx, [ebp - 0x17]
lea esi, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1001b916
sub ecx, esi
push ecx
lea eax, [ebp - 0x17]
mov ecx, edx
push eax
call fcn.10004e90
mov ecx, dword [edi]
call fcn.1000e840
movaps xmm0, xmmword [0x1004ad60]
add esp, 0x18
mov dword [edi + 0x14], eax
xor ecx, ecx
movups xmmword [ebp - 0x18], xmm0
mov word [ebp - 8], 0x59
nop dword [eax + eax]
mov al, byte [ebp - 0x18]
xor byte [ebp + ecx - 0x17], al
inc ecx
cmp ecx, 0x10
jb 0x1001b950
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 0x1001b981
xor ecx, ecx
jmp 0x1001b990
lea ecx, [ebp - 0x17]
lea esi, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1001b987
sub ecx, esi
push ecx
lea eax, [ebp - 0x17]
mov ecx, edx
push eax
call fcn.10004e90
mov ecx, dword [edi]
call fcn.1000e840
add esp, 0x18
mov dword [edi + 0x18], eax
pop edi
pop esi
mov esp, ebp
pop ebp
ret