Function at 0x10012cd2
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x18
push ebx
push esi
push edi
mov ebx, ecx
mov dword [ebp - 0x14], 0x2d3f3c5e
sub esp, 0x18
mov dword [ebp - 0x10], 0x323d013b
lea ecx, [ebp - 0x14]
mov word [ebp - 0xc], 0x303f
mov byte [ebp - 0xa], 0
mov esi, esp
mov edi, dword [ebx + 0x34]
call fcn.10001431
push eax
mov ecx, esi
call fcn.10002604
mov ecx, edi
call fcn.10009101
movaps xmm0, xmmword [0x1003e340]
add esp, 0x18
mov esi, eax
mov byte [ebp - 8], 0
mov dword [ebx], esi
xor ecx, ecx
movups xmmword [ebp - 0x18], xmm0
push 0xf
pop edi
mov al, byte [ebp - 0x18]
xor byte [ebp + ecx - 0x17], al
inc ecx
cmp ecx, edi
jb 0x10012d2f
sub esp, 0x18
mov byte [ebp - 8], 0
lea eax, [ebp - 0x17]
mov ecx, esp
push eax
call fcn.10002604
mov ecx, esi
call fcn.10009101
movaps xmm0, xmmword [0x1003e230]
add esp, 0x18
mov esi, dword [ebx]
xor ecx, ecx
mov dword [ebx + 4], eax
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, edi
jb 0x10012d6d
sub esp, 0x18
mov byte [ebp - 8], 0
lea eax, [ebp - 0x17]
mov ecx, esp
push eax
call fcn.10002604
mov ecx, esi
call fcn.10009101
movaps xmm0, xmmword [0x1003e7a0]
add esp, 0x18
mov esi, dword [ebx]
xor ecx, ecx
mov dword [ebx + 8], eax
movups xmmword [ebp - 0x18], xmm0
mov word [ebp - 8], 0x34
mov al, byte [ebp - 0x18]
xor byte [ebp + ecx - 0x17], al
inc ecx
cmp ecx, 0x10
jb 0x10012dad
sub esp, 0x18
mov byte [ebp - 7], 0
lea eax, [ebp - 0x17]
mov ecx, esp
push eax
call fcn.10002604
mov ecx, esi
call fcn.10009101
movaps xmm0, xmmword [0x1003e170]
add esp, 0x18
mov esi, dword [ebx]
xor ecx, ecx
mov dword [ebx + 0xc], eax
movups xmmword [ebp - 0x18], xmm0
mov word [ebp - 8], 0x4f
mov al, byte [ebp - 0x18]
xor byte [ebp + ecx - 0x17], al
inc ecx
cmp ecx, 0x10
jb 0x10012dee
sub esp, 0x18
mov byte [ebp - 7], 0
lea eax, [ebp - 0x17]
mov ecx, esp
push eax
call fcn.10002604
mov ecx, esi
call fcn.10009101
movaps xmm0, xmmword [0x1003ead0]
add esp, 0x18
mov esi, dword [ebx]
xor ecx, ecx
mov dword [ebx + 0x10], eax
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, edi
jb 0x10012e2d
sub esp, 0x18
mov byte [ebp - 8], 0
lea eax, [ebp - 0x17]
mov ecx, esp
push eax
call fcn.10002604
mov ecx, esi
call fcn.10009101
movaps xmm0, xmmword [str..GCIqMBO_qCOEq]
add esp, 0x18
mov esi, dword [ebx]
xor ecx, ecx
mov dword [ebx + 0x14], eax
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, edi
jb 0x10012e6b
sub esp, 0x18
mov byte [ebp - 8], 0
lea eax, [ebp - 0x17]
mov ecx, esp
push eax
call fcn.10002604
mov ecx, esi
call fcn.10009101
mov esi, dword [ebx]
add esp, 0x18
mov dword [ebx + 0x18], eax
mov cl, 0x15
mov dword [ebp - 0x14], 0x72787c15
xor eax, eax
mov dword [ebp - 0x10], 0x6371744a
mov word [ebp - 0xc], 0x244a
mov byte [ebp - 0xa], 0
xor byte [ebp + eax - 0x13], cl
inc eax
cmp eax, 9
jae 0x10012ec3
mov cl, byte [ebp - 0x14]
jmp 0x10012eb4
sub esp, 0x18
mov byte [ebp - 0xa], 0
lea eax, [ebp - 0x13]
mov ecx, esp
push eax
call fcn.10002604
mov ecx, esi
call fcn.10009101
mov esi, dword [ebx]
add esp, 0x18
xor edx, edx
mov dword [ebx + 0x1c], eax
mov cl, 0x61
mov dword [ebp - 0x14], 0x60c0861
mov dword [ebp - 0x10], 0x1705003e
mov eax, edx
mov word [ebp - 0xc], 0x533e
mov byte [ebp - 0xa], dl
xor byte [ebp + eax - 0x13], cl
inc eax
cmp eax, 9
jae 0x10012f10
mov cl, byte [ebp - 0x14]
jmp 0x10012f01
sub esp, 0x18
mov byte [ebp - 0xa], dl
lea eax, [ebp - 0x13]
mov ecx, esp
push eax
call fcn.10002604
mov ecx, esi
call fcn.10009101
mov esi, dword [ebx]
add esp, 0x18
mov dword [ebx + 0x20], eax
mov cl, 0x44
mov dword [ebp - 0x14], 0x37252644
xor eax, eax
mov dword [ebp - 0x10], 0x2d301b21
mov word [ebp - 0xc], 0x2129
mov byte [ebp - 0xa], 0
xor byte [ebp + eax - 0x13], cl
inc eax
cmp eax, 9
jae 0x10012f5b
mov cl, byte [ebp - 0x14]
jmp 0x10012f4c
sub esp, 0x18
mov byte [ebp - 0xa], 0
lea eax, [ebp - 0x13]
mov ecx, esp
push eax
call fcn.10002604
mov ecx, esi
call fcn.10009101
mov esi, eax
mov dword [ebp - 0x10], 0x1c1a1d6e
add esp, 0x18
mov dword [ebx + 0x24], esi
mov cl, 0x6e
mov dword [ebp - 0xc], 0x3071a31
mov word [ebp - 8], 0xb
xor eax, eax
xor byte [ebp + eax - 0xf], cl
inc eax
cmp eax, 8
jae 0x10012fa3
mov cl, byte [ebp - 0x10]
jmp 0x10012f94
sub esp, 0x18
mov byte [ebp - 7], 0
lea eax, [ebp - 0xf]
mov ecx, esp
push eax
call fcn.10002604
mov ecx, esi
call fcn.10009101
add esp, 0x18
mov dword [ebx + 0x28], eax
pop edi
pop esi
pop ebx
leave
ret