Function at 0x27051c60
Capabilities:
Encode data using xor
Encrypt data using des

Disassembly:
push ebp
mov ebp, esp
sub esp, 0xc
movzx edx, byte [ecx]
push ebx
movzx ebx, byte [ecx + 5]
push esi
movzx esi, byte [ecx + 1]
shl edx, 8
or edx, esi
movzx esi, byte [ecx + 2]
shl edx, 8
or edx, esi
movzx esi, byte [ecx + 3]
shl edx, 8
or edx, esi
movzx esi, byte [ecx + 4]
shl esi, 8
or esi, ebx
movzx ebx, byte [ecx + 6]
movzx ecx, byte [ecx + 7]
shl esi, 8
or esi, ebx
shl esi, 8
or esi, ecx
mov ecx, edx
shr ecx, 4
xor ecx, esi
and ecx, 0xf0f0f0f
xor esi, ecx
shl ecx, 4
xor edx, ecx
mov ecx, edx
shr ecx, 0x10
xor ecx, esi
and ecx, 0xffff
xor esi, ecx
shl ecx, 0x10
xor edx, ecx
mov ecx, esi
shr ecx, 2
xor ecx, edx
and ecx, 0x33333333
xor edx, ecx
shl ecx, 2
xor esi, ecx
mov ebx, esi
shr ebx, 8
xor ebx, edx
and ebx, 0xff00ff
xor edx, ebx
shl ebx, 8
xor ebx, esi
rol ebx, 1
mov ecx, ebx
xor ecx, edx
and ecx, 0xaaaaaaaa
xor ebx, ecx
xor ecx, edx
rol ecx, 1
push 0x3f
mov dword [ebp - 8], ecx
mov dword [ebp - 0xc], 8
pop ecx
mov edx, dword [eax]
xor edx, ebx
mov esi, edx
mov dword [ebp - 4], edx
shr edx, 0x10
and edx, ecx
shr esi, 0x18
and esi, ecx
mov esi, dword [esi*4 + 0x27099740]
xor esi, dword [edx*4 + 0x27099940]
mov edx, dword [ebp - 4]
shr edx, 8
and edx, ecx
xor esi, dword [edx*4 + 0x27099b40]
mov edx, dword [ebp - 4]
and edx, ecx
xor esi, dword [edx*4 + 0x27099d40]
add eax, 4
xor dword [ebp - 8], esi
mov edx, ebx
ror edx, 4
xor edx, dword [eax]
add eax, 4
mov esi, edx
mov dword [ebp - 4], edx
shr edx, 0x10
and edx, ecx
shr esi, 0x18
and esi, ecx
mov esi, dword [esi*4 + 0x27099640]
xor esi, dword [edx*4 + 0x27099840]
mov edx, dword [ebp - 4]
shr edx, 8
and edx, ecx
xor esi, dword [edx*4 + 0x27099a40]
mov edx, dword [ebp - 4]
and edx, ecx
xor esi, dword [edx*4 + 0x27099c40]
mov edx, dword [eax]
xor dword [ebp - 8], esi
xor edx, dword [ebp - 8]
add eax, 4
mov esi, edx
mov dword [ebp - 4], edx
shr edx, 0x10
shr esi, 0x18
and edx, ecx
and esi, ecx
mov esi, dword [esi*4 + 0x27099740]
xor esi, dword [edx*4 + 0x27099940]
mov edx, dword [ebp - 4]
shr edx, 8
and edx, ecx
xor esi, dword [edx*4 + 0x27099b40]
mov edx, dword [ebp - 4]
and edx, ecx
xor esi, dword [edx*4 + 0x27099d40]
mov edx, dword [ebp - 8]
xor ebx, esi
ror edx, 4
xor edx, dword [eax]
add eax, 4
mov esi, edx
mov dword [ebp - 4], edx
shr esi, 0x18
shr edx, 0x10
and esi, ecx
mov esi, dword [esi*4 + 0x27099640]
and edx, ecx
xor esi, dword [edx*4 + 0x27099840]
mov edx, dword [ebp - 4]
shr edx, 8
and edx, ecx
xor esi, dword [edx*4 + 0x27099a40]
mov edx, dword [ebp - 4]
and edx, ecx
xor esi, dword [edx*4 + 0x27099c40]
xor ebx, esi
dec dword [ebp - 0xc]
jne 0x27051d14
mov dword [ebp - 0xc], 8
mov edx, dword [eax]
xor edx, dword [ebp - 8]
add eax, 4
mov esi, edx
mov dword [ebp - 4], edx
shr edx, 0x10
and edx, ecx
shr esi, 0x18
and esi, ecx
mov esi, dword [esi*4 + 0x27099740]
xor esi, dword [edx*4 + 0x27099940]
mov edx, dword [ebp - 4]
shr edx, 8
and edx, ecx
xor esi, dword [edx*4 + 0x27099b40]
mov edx, dword [ebp - 4]
and edx, ecx
xor esi, dword [edx*4 + 0x27099d40]
mov edx, dword [ebp - 8]
xor ebx, esi
ror edx, 4
xor edx, dword [eax]
add eax, 4
mov esi, edx
mov dword [ebp - 4], edx
shr edx, 0x10
and edx, ecx
shr esi, 0x18
and esi, ecx
mov esi, dword [esi*4 + 0x27099640]
xor esi, dword [edx*4 + 0x27099840]
mov edx, dword [ebp - 4]
shr edx, 8
and edx, ecx
xor esi, dword [edx*4 + 0x27099a40]
mov edx, dword [ebp - 4]
and edx, ecx
xor esi, dword [edx*4 + 0x27099c40]
mov edx, dword [eax]
xor ebx, esi
xor edx, ebx
mov esi, edx
mov dword [ebp - 4], edx
shr edx, 0x10
shr esi, 0x18
and edx, ecx
and esi, ecx
mov esi, dword [esi*4 + 0x27099740]
xor esi, dword [edx*4 + 0x27099940]
mov edx, dword [ebp - 4]
shr edx, 8
and edx, ecx
xor esi, dword [edx*4 + 0x27099b40]
mov edx, dword [ebp - 4]
and edx, ecx
xor esi, dword [edx*4 + 0x27099d40]
add eax, 4
xor dword [ebp - 8], esi
mov edx, ebx
ror edx, 4
xor edx, dword [eax]
add eax, 4
mov esi, edx
mov dword [ebp - 4], edx
shr esi, 0x18
shr edx, 0x10
and esi, ecx
mov esi, dword [esi*4 + 0x27099640]
and edx, ecx
xor esi, dword [edx*4 + 0x27099840]
mov edx, dword [ebp - 4]
shr edx, 8
and edx, ecx
xor esi, dword [edx*4 + 0x27099a40]
mov edx, dword [ebp - 4]
and edx, ecx
xor esi, dword [edx*4 + 0x27099c40]
xor dword [ebp - 8], esi
dec dword [ebp - 0xc]
jne 0x27051e32
mov dword [ebp - 0xc], 8
mov edx, dword [eax]
xor edx, ebx
mov esi, edx
mov dword [ebp - 4], edx
shr edx, 0x10
and edx, ecx
shr esi, 0x18
and esi, ecx
mov esi, dword [esi*4 + 0x27099740]
xor esi, dword [edx*4 + 0x27099940]
mov edx, dword [ebp - 4]
shr edx, 8
and edx, ecx
xor esi, dword [edx*4 + 0x27099b40]
mov edx, dword [ebp - 4]
and edx, ecx
xor esi, dword [edx*4 + 0x27099d40]
add eax, 4
xor dword [ebp - 8], esi
mov edx, ebx
ror edx, 4
xor edx, dword [eax]
add eax, 4
mov esi, edx
mov dword [ebp - 4], edx
shr edx, 0x10
and edx, ecx
shr esi, 0x18
and esi, ecx
mov esi, dword [esi*4 + 0x27099640]
xor esi, dword [edx*4 + 0x27099840]
mov edx, dword [ebp - 4]
shr edx, 8
and edx, ecx
xor esi, dword [edx*4 + 0x27099a40]
mov edx, dword [ebp - 4]
and edx, ecx
xor esi, dword [edx*4 + 0x27099c40]
mov edx, dword [eax]
xor dword [ebp - 8], esi
xor edx, dword [ebp - 8]
add eax, 4
mov esi, edx
mov dword [ebp - 4], edx
shr edx, 0x10
shr esi, 0x18
and edx, ecx
and esi, ecx
mov esi, dword [esi*4 + 0x27099740]
xor esi, dword [edx*4 + 0x27099940]
mov edx, dword [ebp - 4]
shr edx, 8
and edx, ecx
xor esi, dword [edx*4 + 0x27099b40]
mov edx, dword [ebp - 4]
and edx, ecx
xor esi, dword [edx*4 + 0x27099d40]
mov edx, dword [ebp - 8]
xor ebx, esi
ror edx, 4
xor edx, dword [eax]
add eax, 4
mov esi, edx
mov dword [ebp - 4], edx
shr esi, 0x18
shr edx, 0x10
and esi, ecx
mov esi, dword [esi*4 + 0x27099640]
and edx, ecx
xor esi, dword [edx*4 + 0x27099840]
mov edx, dword [ebp - 4]
shr edx, 8
and edx, ecx
xor esi, dword [edx*4 + 0x27099a40]
mov edx, dword [ebp - 4]
and edx, ecx
xor esi, dword [edx*4 + 0x27099c40]
xor ebx, esi
dec dword [ebp - 0xc]
jne 0x27051f50
ror ebx, 1
mov eax, ebx
xor eax, dword [ebp - 8]
pop esi
and eax, 0xaaaaaaaa
xor ebx, eax
xor eax, dword [ebp - 8]
ror eax, 1
mov ecx, eax
shr ecx, 8
xor ecx, ebx
and ecx, 0xff00ff
xor ebx, ecx
shl ecx, 8
xor eax, ecx
mov ecx, eax
shr ecx, 2
xor ecx, ebx
and ecx, 0x33333333
xor ebx, ecx
shl ecx, 2
xor eax, ecx
mov ecx, ebx
shr ecx, 0x10
xor ecx, eax
and ecx, 0xffff
xor eax, ecx
shl ecx, 0x10
xor ebx, ecx
mov ecx, ebx
shr ecx, 4
xor ecx, eax
and ecx, 0xf0f0f0f
xor eax, ecx
shl ecx, 4
xor ebx, ecx
mov ecx, ebx
shr ecx, 0x18
mov byte [edi], cl
mov ecx, ebx
shr ecx, 0x10
mov byte [edi + 1], cl
mov ecx, ebx
shr ecx, 8
mov byte [edi + 2], cl
mov ecx, eax
shr ecx, 0x18
mov byte [edi + 4], cl
mov ecx, eax
shr ecx, 0x10
mov byte [edi + 5], cl
mov ecx, eax
shr ecx, 8
mov byte [edi + 3], bl
mov byte [edi + 7], al
mov byte [edi + 6], cl
xor eax, eax
pop ebx
leave
ret