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

Disassembly:
push ebx
push ebp
mov ebp, dword [esp + 0xc]
mov edx, dword [ebp]
push esi
push edi
mov edi, dword [ebp + 4]
mov esi, eax
mov ecx, edi
shr ecx, 0x10
mov eax, edi
shr eax, 0x18
movzx ebx, cl
mov ecx, dword [eax*8 + 0x41d1d0]
xor ecx, dword [ebx*8 + 0x41c9d0]
mov eax, dword [eax*8 + 0x41d1d4]
xor eax, dword [ebx*8 + 0x41c9d4]
mov ebx, edi
shr ebx, 8
movzx edi, bl
xor ecx, dword [edi*8 + 0x41c1d0]
xor eax, dword [edi*8 + 0x41c1d4]
mov edi, edx
shr edi, 0x18
xor ecx, dword [edi*8 + 0x41b1d0]
xor eax, dword [edi*8 + 0x41b1d4]
mov ebx, edx
shr ebx, 0x10
movzx edi, bl
xor ecx, dword [edi*8 + 0x41a9d0]
xor eax, dword [edi*8 + 0x41a9d4]
mov ebx, edx
shr ebx, 8
movzx edi, bl
xor ecx, dword [edi*8 + 0x41a1d0]
xor eax, dword [edi*8 + 0x41a1d4]
movzx edi, byte [ebp + 4]
xor ecx, dword [edi*8 + 0x41b9d0]
xor eax, dword [edi*8 + 0x41b9d4]
movzx edx, dl
xor ecx, dword [edx*8 + 0x4199d0]
xor eax, dword [edx*8 + 0x4199d4]
mov dword [esp + 0x14], 8
lea esp, [esp]
mov edx, ecx
ror edx, 4
xor edx, dword [esi]
add esi, 4
mov edi, edx
shr edi, 0x18
and edi, 0x3f
mov edi, dword [edi*4 + 0x4191d0]
mov ebx, edx
shr ebx, 0x10
and ebx, 0x3f
xor edi, dword [ebx*4 + 0x4193d0]
mov ebx, edx
shr ebx, 8
and ebx, 0x3f
xor edi, dword [ebx*4 + 0x4195d0]
and edx, 0x3f
xor edi, dword [edx*4 + 0x4197d0]
mov edx, dword [esi]
xor eax, edi
xor edx, ecx
mov edi, edx
shr edi, 0x18
and edi, 0x3f
mov edi, dword [edi*4 + 0x4192d0]
mov ebx, edx
shr ebx, 0x10
and ebx, 0x3f
xor edi, dword [ebx*4 + 0x4194d0]
mov ebx, edx
shr ebx, 8
and ebx, 0x3f
xor edi, dword [ebx*4 + 0x4196d0]
and edx, 0x3f
xor edi, dword [edx*4 + 0x4198d0]
add esi, 4
xor eax, edi
mov edx, eax
ror edx, 4
xor edx, dword [esi]
add esi, 4
mov edi, edx
shr edi, 0x18
and edi, 0x3f
mov edi, dword [edi*4 + 0x4191d0]
mov ebx, edx
shr ebx, 0x10
and ebx, 0x3f
xor edi, dword [ebx*4 + 0x4193d0]
mov ebx, edx
shr ebx, 8
and ebx, 0x3f
xor edi, dword [ebx*4 + 0x4195d0]
and edx, 0x3f
xor edi, dword [edx*4 + 0x4197d0]
mov edx, dword [esi]
xor ecx, edi
xor edx, eax
mov edi, edx
shr edi, 0x18
and edi, 0x3f
mov edi, dword [edi*4 + 0x4192d0]
mov ebx, edx
shr ebx, 0x10
and ebx, 0x3f
xor edi, dword [ebx*4 + 0x4194d0]
mov ebx, edx
shr ebx, 8
and ebx, 0x3f
xor edi, dword [ebx*4 + 0x4196d0]
and edx, 0x3f
xor edi, dword [edx*4 + 0x4198d0]
add esi, 4
xor ecx, edi
sub dword [esp + 0x14], 1
jne 0x4032f0
mov edx, ecx
shr edx, 0x10
movzx edi, dl
mov esi, ecx
shr esi, 0x18
mov edx, dword [esi*8 + 0x4211d0]
xor edx, dword [edi*8 + 0x4209d0]
mov esi, dword [esi*8 + 0x4211d4]
xor esi, dword [edi*8 + 0x4209d4]
mov ebx, ecx
shr ebx, 8
movzx edi, bl
xor esi, dword [edi*8 + 0x4201d4]
xor edx, dword [edi*8 + 0x4201d0]
mov edi, eax
shr edi, 0x18
xor esi, dword [edi*8 + 0x41f1d4]
xor edx, dword [edi*8 + 0x41f1d0]
mov ebx, eax
shr ebx, 0x10
movzx edi, bl
xor esi, dword [edi*8 + 0x41e9d4]
xor edx, dword [edi*8 + 0x41e9d0]
mov ebx, eax
shr ebx, 8
movzx edi, bl
xor esi, dword [edi*8 + 0x41e1d4]
xor edx, dword [edi*8 + 0x41e1d0]
movzx ecx, cl
xor esi, dword [ecx*8 + 0x41f9d4]
xor edx, dword [ecx*8 + 0x41f9d0]
movzx eax, al
xor esi, dword [eax*8 + 0x41d9d4]
xor edx, dword [eax*8 + 0x41d9d0]
pop edi
mov dword [ebp + 4], esi
pop esi
mov dword [ebp], edx
pop ebp
pop ebx
ret