Function at 0x60c2a0
Capabilities:
Encode data using xor

Disassembly:
mov eax, 0x9c
call fcn.006839e0
mov eax, dword [0x7b088c]
xor eax, esp
mov dword [esp + 0x98], eax
mov eax, dword [esp + 0xa0]
mov ecx, dword [esp + 0xb4]
push ebx
push ebp
push esi
mov esi, dword [esp + 0xbc]
xor ebx, ebx
mov dword [esp + 0x20], eax
or ebp, 0xffffffff
mov eax, dword [esp + 0xb4]
push edi
mov dword [esp + 0x18], eax
xor edi, edi
mov eax, dword [esp + 0xbc]
mov dword [esp + 0x14], eax
mov dword [esp + 0x20], ecx
mov dword [esp + 0x1c], 0
cmp dword [esp + 0xb4], ebx
jle 0x60c5eb
test eax, eax
jle 0x60c5eb
cmp esi, eax
jl 0x60c577
cmp esi, 0x2a
jl 0x60c577
push 0x7a
lea ebx, [esi - 0x15]
push 0x7489a8
push ebx
call fcn.0056a060
push 0x7b
push 0x7489a8
push esi
mov edi, eax
call fcn.0056a060
add esp, 0x18
mov dword [esp + 0x10], eax
test edi, edi
je 0x60c5a6
test eax, eax
je 0x60c5a6
push esi
mov ebp, eax
push 0
push ebp
call fcn.00689b00
mov eax, dword [esp + 0x20]
sub esi, eax
push eax
push dword [esp + 0x28]
add esi, ebp
push esi
call fcn.00689000
movzx eax, byte [ebp]
lea esi, [ebp + 1]
push ebx
add ebp, 0x15
push ebp
lea ecx, [eax - 1]
not eax
and ecx, eax
lea eax, [esp + 0x48]
push 0x14
push eax
mov dword [esp + 0x3c], ecx
call fcn.0060be70
add esp, 0x28
test eax, eax
jne 0x60c5c6
lea eax, [esi + 0x13]
xor edx, edx
lea ecx, [esp + 0x28]
cmp ecx, eax
ja 0x60c3c0
lea eax, [esp + 0x3b]
cmp eax, esi
jae 0x60c3d6
nop dword [eax + eax]
movups xmm1, xmmword [esi]
mov edx, 0x10
movups xmm0, xmmword [esp + 0x28]
pxor xmm1, xmm0
movups xmmword [esp + 0x28], xmm1
lea eax, [esp + 0x28]
sub esi, eax
nop dword [eax]
lea ecx, [esp + 0x28]
add ecx, edx
inc edx
mov al, byte [esi + ecx]
xor byte [ecx], al
cmp edx, 0x14
jl 0x60c3e0
call fcn.0058ff00
push eax
push 0x14
lea eax, [esp + 0x30]
push eax
push ebx
push edi
call fcn.0060be90
add esp, 0x14
test eax, eax
jne 0x60c5bd
xor edx, edx
test ebx, ebx
jle 0x60c48e
cmp ebx, 0x20
jb 0x60c470
lea eax, [ebp - 1]
lea ecx, [ebx - 1]
add eax, ebx
add ecx, edi
cmp edi, eax
ja 0x60c42d
cmp ecx, ebp
jae 0x60c470
mov eax, ebx
and eax, 0x8000001f
jns 0x60c43b
dec eax
or eax, 0xffffffe0
inc eax
mov ecx, ebx
mov esi, ebp
sub ecx, eax
mov eax, edi
sub esi, edi
movups xmm0, xmmword [eax]
lea eax, [eax + 0x20]
movups xmm1, xmmword [esi + eax - 0x20]
pxor xmm1, xmm0
movups xmmword [eax - 0x20], xmm1
movups xmm1, xmmword [edx + ebp + 0x10]
add edx, 0x20
movups xmm0, xmmword [eax - 0x10]
pxor xmm1, xmm0
movups xmmword [eax - 0x10], xmm1
cmp edx, ecx
jl 0x60c445
cmp edx, ebx
jge 0x60c48e
mov esi, ebx
lea ecx, [edx + edi]
sub ebp, edi
sub esi, edx
nop dword [eax]
mov al, byte [ecx + ebp]
lea ecx, [ecx + 1]
xor byte [ecx - 1], al
sub esi, 1
jne 0x60c480
push 0
call fcn.0058ff00
push eax
push 0
lea eax, [esp + 0x74]
push eax
push dword [esp + 0xd8]
push dword [esp + 0x34]
call fcn.0058f860
add esp, 0x18
test eax, eax
je 0x60c5c6
push 0x14
lea eax, [esp + 0x6c]
push eax
push edi
call fcn.0056e150
xor ecx, ecx
add esp, 0xc
lea ebp, [eax - 1]
not eax
shr eax, 0x1f
shr ebp, 0x1f
and ebp, eax
mov eax, dword [esp + 0x14]
shr eax, 0x1f
and ebp, eax
mov dword [esp + 0x14], ecx
mov eax, 0x14
mov dword [esp + 0x18], eax
cmp ebx, eax
jle 0x60c545
movzx esi, byte [eax + edi]
not ecx
mov eax, esi
xor eax, 1
lea edx, [eax - 1]
not eax
sar eax, 0x1f
sar edx, 0x1f
and edx, eax
and ecx, edx
mov eax, ecx
and ecx, dword [esp + 0x18]
not eax
and eax, dword [esp + 0x1c]
or eax, ecx
mov ecx, dword [esp + 0x14]
mov dword [esp + 0x1c], eax
or ecx, edx
lea eax, [esi - 1]
mov dword [esp + 0x14], ecx
sar eax, 0x1f
not esi
sar esi, 0x1f
and eax, esi
or eax, ecx
and ebp, eax
mov eax, dword [esp + 0x18]
inc eax
mov dword [esp + 0x18], eax
cmp eax, ebx
jl 0x60c4f1
test ebp, ecx
je 0x60c573
mov eax, dword [esp + 0x1c]
mov ebp, ebx
inc eax
sub ebp, eax
cmp dword [esp + 0xb4], ebp
jge 0x60c594
push 0xc1
push 0x7489a8
push 0x6d
push 0x7a
push 4
call fcn.0055b840
add esp, 0x14
mov ebx, dword [esp + 0x10]
push 0xcd
push 0x7489a8
push 0x79
push 0x7a
push 4
call fcn.0055b840
add esp, 0x14
or ebp, 0xffffffff
jmp 0x60c5cd
push ebp
add eax, edi
push eax
push dword [esp + 0x2c]
call fcn.00689000
add esp, 0xc
jmp 0x60c5c9
push 0x7e
push 0x7489a8
push 0x41
push 0x7a
push 4
call fcn.0055b840
add esp, 0x14
jmp 0x60c5c9
mov ebx, dword [esp + 0x10]
or ebp, 0xffffffff
jmp 0x60c5cd
or ebp, 0xffffffff
mov ebx, dword [esp + 0x10]
test edi, edi
je 0x60c5da
push edi
call fcn.00569e80
add esp, 4
test ebx, ebx
je 0x60c5e7
push ebx
call fcn.00569e80
add esp, 4
mov eax, ebp
jmp 0x60c5ee
or eax, 0xffffffff
mov ecx, dword [esp + 0xa8]
pop edi
pop esi
pop ebp
pop ebx
xor ecx, esp
call fcn.00682c16
add esp, 0x9c
ret