Function at 0x437f50
Capabilities:
Encrypt data using des

Disassembly:
sub esp, 0xc
push ebx
mov eax, edx
shr eax, 2
and eax, 0x7e000
push ebp
push esi
mov esi, ecx
mov ecx, edx
and ecx, 0x1f80000
or eax, ecx
shr eax, 2
mov ecx, edx
and ecx, 0x1f800000
or eax, ecx
shr eax, 2
mov ecx, edx
and ecx, 0xf8000001
or eax, ecx
shr eax, 1
mov ecx, edx
shl ecx, 0x1f
or eax, ecx
mov ecx, edx
and ecx, 0xfffff800
add ecx, ecx
add ecx, ecx
push edi
mov edi, edx
and edi, 0x1f80
or ecx, edi
add ecx, ecx
add ecx, ecx
mov edi, edx
and edi, 0x1f8
or ecx, edi
add ecx, ecx
add ecx, ecx
mov edi, edx
shr edx, 0x17
and edi, 0x1f
or ecx, edi
shl ecx, 9
mov ebx, eax
and edx, 0x100
or ecx, edx
mov edx, eax
shr eax, 8
mov byte [esp + 0x16], al
mov eax, ecx
shr eax, 0x18
mov byte [esp + 0x17], al
mov eax, ecx
shr eax, 0x10
mov byte [esp + 0x18], al
movzx eax, byte [esi + 2]
xor byte [esp + 0x16], al
movzx eax, byte [esi + 3]
xor byte [esp + 0x17], al
movzx eax, byte [esi + 4]
xor byte [esp + 0x18], al
movzx eax, byte [esp + 0x16]
movzx edi, byte [esp + 0x17]
shr ebx, 0x10
xor bl, byte [esi + 1]
shr ecx, 8
xor cl, byte [esi + 5]
shr edx, 0x18
xor dl, byte [esi]
movzx esi, byte [esp + 0x18]
movzx ebp, bl
movzx edx, dl
mov dword [esp + 0x14], esi
movzx esi, cl
mov ecx, ebp
mov ebx, edx
sar ecx, 4
and ebx, 1
and ecx, 0x1e
shl ebx, 4
mov dword [esp + 0x10], ebp
or ecx, ebx
mov ebx, edx
shl ebx, 4
shr ebp, 4
or ebp, ebx
mov ebx, dword [esp + 0x10]
and ebx, 0x10
sar ecx, 1
and ebp, 0x20
or ecx, ebp
or ecx, ebx
mov ebx, edx
movzx ecx, byte [ecx + 0x4dabe8]
mov ebp, edx
and edx, 4
add edx, edx
add edx, edx
shr ebx, 1
and ebx, 0x3c
and ebp, 0x80
or ebx, ebp
shr ebx, 2
or ebx, edx
movzx edx, byte [ebx + 0x4daba8]
shl edx, 4
or ecx, edx
mov edx, dword [esp + 0x10]
mov ebp, edx
add edx, edx
add edx, edx
mov ebx, eax
sar ebx, 6
and ebp, 7
and ebx, 0x1e
add ebp, ebp
add ebp, ebp
or ebx, ebp
mov ebp, eax
shr ebp, 6
or ebp, edx
mov edx, eax
shr edx, 2
and edx, 0x10
sar ebx, 1
and ebp, 0x20
or ebx, ebp
or ebx, edx
movzx edx, byte [ebx + 0x4dac28]
shl ecx, 4
or ecx, edx
mov edx, eax
shr edx, 1
mov ebx, eax
and edx, 0xf
and eax, 0x20
and ebx, 1
shl ebx, 4
or edx, ebx
or edx, eax
movzx eax, byte [edx + 0x4dac68]
shl ecx, 4
or ecx, eax
mov edx, edi
shr edx, 1
and edx, 0x3c
mov eax, edi
and eax, 0x80
or edx, eax
mov eax, edi
and eax, 4
shr edx, 2
add eax, eax
add eax, eax
or edx, eax
movzx edx, byte [edx + 0x4daca8]
mov eax, dword [esp + 0x14]
shl ecx, 4
or ecx, edx
mov edx, edi
and edx, 1
shl ecx, 4
shl edx, 4
mov ebx, eax
sar ebx, 4
shl edi, 4
and ebx, 0x1e
or edx, ebx
mov ebx, eax
sar edx, 1
shr ebx, 4
or ebx, edi
mov edi, eax
and edi, 0x10
and ebx, 0x20
or edx, ebx
or edx, edi
movzx edx, byte [edx + 0x4dace8]
mov edi, eax
or ecx, edx
add eax, eax
add eax, eax
and edi, 7
add edi, edi
mov edx, esi
sar edx, 6
and edx, 0x1e
add edi, edi
or edx, edi
sar edx, 1
mov edi, esi
shr edi, 6
or edi, eax
mov eax, esi
shr eax, 2
and eax, 0x10
and edi, 0x20
or edx, edi
or edx, eax
movzx edx, byte [edx + 0x4dad28]
shl ecx, 4
or ecx, edx
mov eax, esi
shr eax, 1
and eax, 0xf
mov edx, esi
and edx, 1
shl edx, 4
or eax, edx
and esi, 0x20
or eax, esi
movzx eax, byte [eax + 0x4dad68]
shl ecx, 4
or ecx, eax
mov eax, ecx
and eax, 8
add eax, eax
add eax, eax
add eax, eax
mov edx, ecx
and edx, 0x10
or eax, edx
shl eax, 4
mov edx, ecx
and edx, 0x1800
or eax, edx
add eax, eax
mov edx, ecx
and edx, 2
or eax, edx
add eax, eax
mov edx, ecx
and edx, 0xffff0000
or eax, edx
add eax, eax
mov edx, ecx
and edx, 0x40
or eax, edx
add eax, eax
mov edx, ecx
add eax, eax
and edx, 0x200
or eax, edx
add eax, eax
mov edx, ecx
and edx, 1
or eax, edx
add eax, eax
add eax, eax
mov edx, ecx
and edx, 0x8000
or eax, edx
add eax, eax
add eax, eax
add eax, eax
mov edx, ecx
and edx, 0x100000
or eax, edx
add eax, eax
mov edx, ecx
and edx, 0x2020120
or eax, edx
add eax, eax
mov edx, ecx
and edx, 0x4000
or eax, edx
add eax, eax
mov edx, ecx
and edx, 4
or eax, edx
mov edx, ecx
shr edx, 5
and edx, 0x800000
mov esi, ecx
and esi, 0x4000000
or edx, esi
shr edx, 2
mov esi, ecx
and esi, 0x20000000
or edx, esi
shr edx, 1
mov esi, ecx
and esi, 0x200000
or edx, esi
shr edx, 4
mov esi, ecx
and esi, 0x40800000
or edx, esi
shr edx, 2
mov esi, ecx
and esi, 0x80000
or edx, esi
shr edx, 3
mov esi, ecx
and esi, 0x1000000
or edx, esi
shr edx, 2
mov esi, ecx
and esi, 0x880000ff
or edx, esi
shr edx, 1
mov esi, ecx
and esi, 0x480
or edx, esi
add eax, eax
shr edx, 1
pop edi
and ecx, 0x442000
add eax, eax
or edx, ecx
pop esi
add eax, eax
shr edx, 6
pop ebp
or eax, edx
pop ebx
add esp, 0xc
ret