Function at 0x64a51a
Capabilities:
Encrypt data using des

Disassembly:
push ebp
mov ebp, esp
add esp, 0xfffffff8
push ebx
push esi
push edi
mov dword [ebp - 8], edx
mov dword [ebp - 4], eax
mov esi, 0x6932d8
mov edi, 0x6932c4
mov eax, 0x6932d0
mov edx, 0x6932c0
xor ecx, ecx
mov dword [eax + 4], ecx
mov dword [eax], ecx
mov ecx, dword [ebp - 4]
mov dword [esi], ecx
movsx ecx, byte [esi + 3]
mov bl, byte [esi]
mov byte [esi + 3], bl
mov byte [esi], cl
movsx ecx, byte [esi + 2]
mov bl, byte [esi + 1]
mov byte [esi + 2], bl
mov byte [esi + 1], cl
xor ecx, ecx
mov cl, byte [esi + 3]
shl ecx, 7
mov dword [0x6932cc], ecx
xor ecx, ecx
mov cl, byte [esi]
sar ecx, 1
add ecx, dword [0x6932cc]
mov dword [0x6932c8], ecx
xor ecx, ecx
mov cl, byte [esi]
shl ecx, 7
mov dword [0x6932cc], ecx
mov cl, byte [0x6932c8]
and cl, 0xff
mov byte [esi], cl
xor ecx, ecx
mov cl, byte [esi + 1]
sar ecx, 1
add ecx, dword [0x6932cc]
mov dword [0x6932c8], ecx
xor ecx, ecx
mov cl, byte [esi + 1]
shl ecx, 7
mov dword [0x6932cc], ecx
mov cl, byte [0x6932c8]
and cl, 0xff
mov byte [esi + 1], cl
xor ecx, ecx
mov cl, byte [esi + 2]
sar ecx, 1
add ecx, dword [0x6932cc]
mov dword [0x6932c8], ecx
xor ecx, ecx
mov cl, byte [esi + 2]
shl ecx, 7
mov dword [0x6932cc], ecx
mov cl, byte [0x6932c8]
and cl, 0xff
mov byte [esi + 2], cl
xor ecx, ecx
mov cl, byte [esi + 3]
sar ecx, 1
add ecx, dword [0x6932cc]
mov dword [0x6932c8], ecx
xor ecx, ecx
mov cl, byte [esi + 3]
shl ecx, 7
mov dword [0x6932cc], ecx
mov cl, byte [0x6932c8]
and cl, 0xff
mov byte [esi + 3], cl
mov cl, byte [esi]
and cl, 0xfc
xor ebx, ebx
mov bl, byte [esi]
sar ebx, 2
and bl, 3
or cl, bl
mov byte [eax], cl
xor ecx, ecx
mov cl, byte [esi + 1]
sar ecx, 2
and cl, 0x30
xor ebx, ebx
mov bl, byte [esi + 1]
sar ebx, 4
and bl, 0xf
or cl, bl
mov bl, byte [esi]
shl ebx, 6
and bl, 0xc0
or cl, bl
mov byte [eax + 1], cl
mov cl, byte [esi + 1]
shl ecx, 4
and cl, 0xc0
mov bl, byte [esi + 1]
shl ebx, 2
and bl, 0x3c
or cl, bl
xor ebx, ebx
mov bl, byte [esi + 2]
sar ebx, 6
and bl, 3
or cl, bl
mov byte [eax + 2], cl
mov cl, byte [esi + 2]
and cl, 0xfc
xor ebx, ebx
mov bl, byte [esi + 2]
sar ebx, 2
and bl, 3
or cl, bl
mov byte [eax + 3], cl
xor ecx, ecx
mov cl, byte [esi + 3]
sar ecx, 2
and cl, 0x30
xor ebx, ebx
mov bl, byte [esi + 3]
sar ebx, 4
and bl, 0xf
or cl, bl
mov bl, byte [esi + 2]
shl ebx, 6
and bl, 0xc0
or cl, bl
mov byte [eax + 4], cl
mov cl, byte [esi + 3]
shl ecx, 4
and cl, 0xc0
mov bl, byte [esi + 3]
shl ebx, 2
and bl, 0x3c
or cl, bl
xor ebx, ebx
mov bl, byte [esi]
sar ebx, 6
and bl, 3
or cl, bl
mov byte [eax + 5], cl
mov ecx, dword [ebp - 8]
mov ecx, dword [ecx]
xor dword [eax], ecx
mov ecx, dword [ebp - 8]
mov ecx, dword [ecx + 4]
xor dword [eax + 4], ecx
xor ecx, ecx
mov dword [esi], ecx
movsx ecx, byte [eax]
sar ecx, 2
and ecx, 0x3f
mov dword [edi], ecx
mov ecx, dword [edi]
sar ecx, 4
and ecx, 2
mov ebx, dword [edi]
and ebx, 1
or ecx, ebx
shl ecx, 4
add ecx, 0x68b144
mov ebx, dword [edi]
sar ebx, 1
and ebx, 0xf
movzx ecx, byte [ecx + ebx]
shl ecx, 0x1c
or dword [esi], ecx
movsx ecx, byte [eax]
shl ecx, 4
and ecx, 0x30
movsx ebx, byte [eax + 1]
sar ebx, 4
and ebx, 0xf
or ecx, ebx
mov dword [edi], ecx
mov ecx, dword [edi]
sar ecx, 4
and ecx, 2
mov ebx, dword [edi]
and ebx, 1
or ecx, ebx
shl ecx, 4
add ecx, 0x68b184
mov ebx, dword [edi]
sar ebx, 1
and ebx, 0xf
movzx ecx, byte [ecx + ebx]
shl ecx, 0x18
or dword [esi], ecx
movsx ecx, byte [eax + 1]
shl ecx, 2
and ecx, 0x3c
movsx ebx, byte [eax + 2]
sar ebx, 6
and ebx, 3
or ecx, ebx
mov dword [edi], ecx
mov ecx, dword [edi]
sar ecx, 4
and ecx, 2
mov ebx, dword [edi]
and ebx, 1
or ecx, ebx
shl ecx, 4
add ecx, 0x68b1c4
mov ebx, dword [edi]
sar ebx, 1
and ebx, 0xf
movzx ecx, byte [ecx + ebx]
shl ecx, 0x14
or dword [esi], ecx
movsx ecx, byte [eax + 2]
and ecx, 0x3f
mov dword [edi], ecx
mov ecx, dword [edi]
sar ecx, 4
and ecx, 2
mov ebx, dword [edi]
and ebx, 1
or ecx, ebx
shl ecx, 4
add ecx, 0x68b204
mov ebx, dword [edi]
sar ebx, 1
and ebx, 0xf
movzx ecx, byte [ecx + ebx]
shl ecx, 0x10
or dword [esi], ecx
movsx ecx, byte [eax + 3]
sar ecx, 2
and ecx, 0x3f
mov dword [edi], ecx
mov ecx, dword [edi]
sar ecx, 4
and ecx, 2
mov ebx, dword [edi]
and ebx, 1
or ecx, ebx
shl ecx, 4
add ecx, 0x68b244
mov ebx, dword [edi]
sar ebx, 1
and ebx, 0xf
movzx ecx, byte [ecx + ebx]
shl ecx, 0xc
or dword [esi], ecx
movsx ecx, byte [eax + 3]
shl ecx, 4
and ecx, 0x30
movsx ebx, byte [eax + 4]
sar ebx, 4
and ebx, 0xf
or ecx, ebx
mov dword [edi], ecx
mov ecx, dword [edi]
sar ecx, 4
and ecx, 2
mov ebx, dword [edi]
and ebx, 1
or ecx, ebx
shl ecx, 4
add ecx, 0x68b284
mov ebx, dword [edi]
sar ebx, 1
and ebx, 0xf
movzx ecx, byte [ecx + ebx]
shl ecx, 8
or dword [esi], ecx
movsx ecx, byte [eax + 4]
shl ecx, 2
and ecx, 0x3c
movsx ebx, byte [eax + 5]
sar ebx, 6
and ebx, 3
or ecx, ebx
mov dword [edi], ecx
mov ecx, dword [edi]
sar ecx, 4
and ecx, 2
mov ebx, dword [edi]
and ebx, 1
or ecx, ebx
shl ecx, 4
add ecx, 0x68b2c4
mov ebx, dword [edi]
sar ebx, 1
and ebx, 0xf
movzx ecx, byte [ecx + ebx]
shl ecx, 4
or dword [esi], ecx
movsx eax, byte [eax + 5]
and eax, 0x3f
mov dword [edi], eax
mov eax, dword [edi]
sar eax, 4
and eax, 2
mov ecx, dword [edi]
and ecx, 1
or eax, ecx
shl eax, 4
add eax, 0x68b304
mov ecx, dword [edi]
sar ecx, 1
and ecx, 0xf
movzx eax, byte [eax + ecx]
or dword [esi], eax
movsx eax, byte [esi + 3]
mov cl, byte [esi]
mov byte [esi + 3], cl
mov byte [esi], al
movsx eax, byte [esi + 2]
mov cl, byte [esi + 1]
mov byte [esi + 2], cl
mov byte [esi + 1], al
xor eax, eax
mov dword [edx], eax
mov eax, 0x68ad44
mov ecx, 0x68aac4
jmp 0x64a8eb
mov ebx, dword [eax]
and ebx, dword [esi]
je 0x64a8e5
mov ebx, dword [ecx]
or dword [edx], ebx
add eax, 4
add ecx, 4
cmp eax, 0x68adc4
jb 0x64a8db
movsx eax, byte [edx + 3]
mov cl, byte [edx]
mov byte [edx + 3], cl
mov byte [edx], al
movsx eax, byte [edx + 2]
mov cl, byte [edx + 1]
mov byte [edx + 2], cl
mov byte [edx + 1], al
mov eax, dword [edx]
pop edi
pop esi
pop ebx
pop ecx
pop ecx
pop ebp
ret