Function at 0x46b390
Capabilities:
Encrypt data using des

Disassembly:
push ebp
mov ebp, esp
push ecx
push ebx
push esi
mov esi, edx
shr edx, 4
xor edx, ecx
and edx, 0xf0f0f0f
xor ecx, edx
push edi
mov edi, edx
shl edi, 4
xor esi, edi
mov edx, esi
shr edx, 0x10
xor edx, ecx
and edx, 0xffff
xor ecx, edx
mov edi, edx
shl edi, 0x10
xor esi, edi
mov edx, ecx
shr edx, 2
xor edx, esi
and edx, 0x33333333
xor esi, edx
lea edi, [edx*4]
xor ecx, edi
mov edx, ecx
shr edx, 8
xor edx, esi
and edx, 0xff00ff
xor esi, edx
mov ebx, esi
shr ebx, 1
mov edi, edx
shl edi, 8
xor ecx, edi
xor ebx, ecx
and ebx, 0x55555555
mov edx, ebx
mov edi, dword [eax]
xor edx, ecx
mov ecx, dword [eax + 0x40]
rol edx, 1
xor ecx, edx
mov dword [ebp - 4], ecx
lea ecx, [ebx + ebx]
xor ecx, esi
mov esi, dword [ebp - 4]
mov ebx, esi
shr esi, 0x10
and esi, 0x3f
shr ebx, 0x18
and ebx, 0x3f
mov ebx, dword [ebx*4 + 0x4e22b0]
or ebx, dword [esi*4 + 0x4e24b0]
mov esi, dword [ebp - 4]
shr esi, 8
and esi, 0x3f
or ebx, dword [esi*4 + 0x4e26b0]
xor edi, edx
ror edi, 4
mov esi, edi
shr esi, 0x18
and esi, 0x3f
or ebx, dword [esi*4 + 0x4e21b0]
mov esi, edi
shr esi, 0x10
and esi, 0x3f
or ebx, dword [esi*4 + 0x4e23b0]
mov esi, edi
shr esi, 8
and esi, 0x3f
or ebx, dword [esi*4 + 0x4e25b0]
mov esi, dword [ebp - 4]
and esi, 0x3f
or ebx, dword [esi*4 + 0x4e28b0]
and edi, 0x3f
or ebx, dword [edi*4 + 0x4e27b0]
mov edi, dword [eax + 0x44]
rol ecx, 1
xor ecx, ebx
xor edi, ecx
mov ebx, edi
mov dword [ebp - 4], edi
shr edi, 0x10
and edi, 0x3f
shr ebx, 0x18
mov esi, dword [eax + 4]
and ebx, 0x3f
mov ebx, dword [ebx*4 + 0x4e22b0]
or ebx, dword [edi*4 + 0x4e24b0]
mov edi, dword [ebp - 4]
shr edi, 8
and edi, 0x3f
or ebx, dword [edi*4 + 0x4e26b0]
xor esi, ecx
ror esi, 4
mov edi, esi
shr edi, 0x18
and edi, 0x3f
or ebx, dword [edi*4 + 0x4e21b0]
mov edi, esi
shr edi, 0x10
and edi, 0x3f
or ebx, dword [edi*4 + 0x4e23b0]
mov edi, esi
shr edi, 8
and edi, 0x3f
or ebx, dword [edi*4 + 0x4e25b0]
mov edi, dword [ebp - 4]
and edi, 0x3f
or ebx, dword [edi*4 + 0x4e28b0]
mov edi, dword [eax + 0x48]
and esi, 0x3f
or ebx, dword [esi*4 + 0x4e27b0]
mov esi, dword [eax + 8]
xor edx, ebx
xor edi, edx
mov ebx, edi
mov dword [ebp - 4], edi
shr edi, 0x10
and edi, 0x3f
shr ebx, 0x18
and ebx, 0x3f
mov ebx, dword [ebx*4 + 0x4e22b0]
or ebx, dword [edi*4 + 0x4e24b0]
mov edi, dword [ebp - 4]
shr edi, 8
and edi, 0x3f
or ebx, dword [edi*4 + 0x4e26b0]
xor esi, edx
ror esi, 4
mov edi, esi
shr edi, 0x18
and edi, 0x3f
or ebx, dword [edi*4 + 0x4e21b0]
mov edi, esi
shr edi, 0x10
and edi, 0x3f
or ebx, dword [edi*4 + 0x4e23b0]
mov edi, esi
shr edi, 8
and edi, 0x3f
or ebx, dword [edi*4 + 0x4e25b0]
mov edi, dword [ebp - 4]
and edi, 0x3f
or ebx, dword [edi*4 + 0x4e28b0]
mov edi, dword [eax + 0x4c]
and esi, 0x3f
or ebx, dword [esi*4 + 0x4e27b0]
mov esi, dword [eax + 0xc]
xor ecx, ebx
xor edi, ecx
mov ebx, edi
shr ebx, 0x18
mov dword [ebp - 4], edi
xor esi, ecx
and ebx, 0x3f
mov ebx, dword [ebx*4 + 0x4e22b0]
shr edi, 0x10
ror esi, 4
and edi, 0x3f
or ebx, dword [edi*4 + 0x4e24b0]
mov edi, dword [ebp - 4]
shr edi, 8
and edi, 0x3f
or ebx, dword [edi*4 + 0x4e26b0]
mov edi, esi
shr edi, 0x18
and edi, 0x3f
or ebx, dword [edi*4 + 0x4e21b0]
mov edi, esi
shr edi, 0x10
and edi, 0x3f
or ebx, dword [edi*4 + 0x4e23b0]
mov edi, esi
shr edi, 8
and edi, 0x3f
or ebx, dword [edi*4 + 0x4e25b0]
mov edi, dword [ebp - 4]
and edi, 0x3f
or ebx, dword [edi*4 + 0x4e28b0]
mov edi, dword [eax + 0x50]
and esi, 0x3f
or ebx, dword [esi*4 + 0x4e27b0]
mov esi, dword [eax + 0x10]
xor edx, ebx
xor edi, edx
mov ebx, edi
mov dword [ebp - 4], edi
shr edi, 0x10
and edi, 0x3f
shr ebx, 0x18
and ebx, 0x3f
mov ebx, dword [ebx*4 + 0x4e22b0]
or ebx, dword [edi*4 + 0x4e24b0]
mov edi, dword [ebp - 4]
shr edi, 8
and edi, 0x3f
or ebx, dword [edi*4 + 0x4e26b0]
xor esi, edx
ror esi, 4
mov edi, esi
shr edi, 0x18
and edi, 0x3f
or ebx, dword [edi*4 + 0x4e21b0]
mov edi, esi
shr edi, 0x10
and edi, 0x3f
or ebx, dword [edi*4 + 0x4e23b0]
mov edi, esi
shr edi, 8
and edi, 0x3f
or ebx, dword [edi*4 + 0x4e25b0]
mov edi, dword [ebp - 4]
and edi, 0x3f
or ebx, dword [edi*4 + 0x4e28b0]
mov edi, dword [eax + 0x54]
and esi, 0x3f
or ebx, dword [esi*4 + 0x4e27b0]
mov esi, dword [eax + 0x14]
xor ecx, ebx
xor edi, ecx
mov ebx, edi
mov dword [ebp - 4], edi
shr edi, 0x10
shr ebx, 0x18
and edi, 0x3f
and ebx, 0x3f
mov ebx, dword [ebx*4 + 0x4e22b0]
or ebx, dword [edi*4 + 0x4e24b0]
mov edi, dword [ebp - 4]
shr edi, 8
and edi, 0x3f
or ebx, dword [edi*4 + 0x4e26b0]
xor esi, ecx
ror esi, 4
mov edi, esi
shr edi, 0x18
and edi, 0x3f
or ebx, dword [edi*4 + 0x4e21b0]
mov edi, esi
shr edi, 0x10
and edi, 0x3f
or ebx, dword [edi*4 + 0x4e23b0]
mov edi, esi
shr edi, 8
and edi, 0x3f
or ebx, dword [edi*4 + 0x4e25b0]
mov edi, dword [ebp - 4]
and edi, 0x3f
or ebx, dword [edi*4 + 0x4e28b0]
mov edi, dword [eax + 0x58]
and esi, 0x3f
or ebx, dword [esi*4 + 0x4e27b0]
mov esi, dword [eax + 0x18]
xor edx, ebx
xor edi, edx
mov ebx, edi
mov dword [ebp - 4], edi
shr edi, 0x10
and edi, 0x3f
shr ebx, 0x18
and ebx, 0x3f
mov ebx, dword [ebx*4 + 0x4e22b0]
or ebx, dword [edi*4 + 0x4e24b0]
mov edi, dword [ebp - 4]
shr edi, 8
and edi, 0x3f
or ebx, dword [edi*4 + 0x4e26b0]
xor esi, edx
ror esi, 4
mov edi, esi
shr edi, 0x18
and edi, 0x3f
or ebx, dword [edi*4 + 0x4e21b0]
mov edi, esi
shr edi, 0x10
and edi, 0x3f
or ebx, dword [edi*4 + 0x4e23b0]
mov edi, esi
shr edi, 8
and edi, 0x3f
or ebx, dword [edi*4 + 0x4e25b0]
mov edi, dword [ebp - 4]
and edi, 0x3f
or ebx, dword [edi*4 + 0x4e28b0]
mov edi, dword [eax + 0x5c]
and esi, 0x3f
or ebx, dword [esi*4 + 0x4e27b0]
mov esi, dword [eax + 0x1c]
xor ecx, ebx
xor edi, ecx
mov ebx, edi
mov dword [ebp - 4], edi
shr edi, 0x10
and edi, 0x3f
shr ebx, 0x18
and ebx, 0x3f
mov ebx, dword [ebx*4 + 0x4e22b0]
or ebx, dword [edi*4 + 0x4e24b0]
mov edi, dword [ebp - 4]
shr edi, 8
and edi, 0x3f
or ebx, dword [edi*4 + 0x4e26b0]
xor esi, ecx
ror esi, 4
mov edi, esi
shr edi, 0x18
and edi, 0x3f
or ebx, dword [edi*4 + 0x4e21b0]
mov edi, esi
shr edi, 0x10
and edi, 0x3f
or ebx, dword [edi*4 + 0x4e23b0]
mov edi, esi
shr edi, 8
and edi, 0x3f
or ebx, dword [edi*4 + 0x4e25b0]
mov edi, dword [ebp - 4]
and edi, 0x3f
or ebx, dword [edi*4 + 0x4e28b0]
and esi, 0x3f
or ebx, dword [esi*4 + 0x4e27b0]
mov edi, dword [eax + 0x60]
xor edx, ebx
xor edi, edx
mov ebx, edi
mov dword [ebp - 4], edi
shr edi, 0x10
and edi, 0x3f
shr ebx, 0x18
mov esi, dword [eax + 0x20]
and ebx, 0x3f
mov ebx, dword [ebx*4 + 0x4e22b0]
or ebx, dword [edi*4 + 0x4e24b0]
mov edi, dword [ebp - 4]
shr edi, 8
and edi, 0x3f
or ebx, dword [edi*4 + 0x4e26b0]
xor esi, edx
ror esi, 4
mov edi, esi
shr edi, 0x18
and edi, 0x3f
or ebx, dword [edi*4 + 0x4e21b0]
mov edi, esi
shr edi, 0x10
and edi, 0x3f
or ebx, dword [edi*4 + 0x4e23b0]
mov edi, esi
shr edi, 8
and edi, 0x3f
or ebx, dword [edi*4 + 0x4e25b0]
mov edi, dword [ebp - 4]
and edi, 0x3f
or ebx, dword [edi*4 + 0x4e28b0]
mov edi, dword [eax + 0x64]
and esi, 0x3f
or ebx, dword [esi*4 + 0x4e27b0]
mov esi, dword [eax + 0x24]
xor ecx, ebx
xor edi, ecx
mov ebx, edi
mov dword [ebp - 4], edi
shr edi, 0x10
and edi, 0x3f
shr ebx, 0x18
and ebx, 0x3f
mov ebx, dword [ebx*4 + 0x4e22b0]
or ebx, dword [edi*4 + 0x4e24b0]
mov edi, dword [ebp - 4]
shr edi, 8
and edi, 0x3f
or ebx, dword [edi*4 + 0x4e26b0]
xor esi, ecx
ror esi, 4
mov edi, esi
shr edi, 0x18
and edi, 0x3f
or ebx, dword [edi*4 + 0x4e21b0]
mov edi, esi
shr edi, 0x10
and edi, 0x3f
or ebx, dword [edi*4 + 0x4e23b0]
mov edi, esi
shr edi, 8
and edi, 0x3f
or ebx, dword [edi*4 + 0x4e25b0]
mov edi, dword [ebp - 4]
and edi, 0x3f
or ebx, dword [edi*4 + 0x4e28b0]
mov edi, dword [eax + 0x68]
and esi, 0x3f
or ebx, dword [esi*4 + 0x4e27b0]
mov esi, dword [eax + 0x28]
xor edx, ebx
xor edi, edx
mov ebx, edi
xor esi, edx
shr ebx, 0x18
mov dword [ebp - 4], edi
ror esi, 4
and ebx, 0x3f
shr edi, 0x10
mov ebx, dword [ebx*4 + 0x4e22b0]
and edi, 0x3f
or ebx, dword [edi*4 + 0x4e24b0]
mov edi, dword [ebp - 4]
shr edi, 8
and edi, 0x3f
or ebx, dword [edi*4 + 0x4e26b0]
mov edi, esi
shr edi, 0x18
and edi, 0x3f
or ebx, dword [edi*4 + 0x4e21b0]
mov edi, esi
shr edi, 0x10
and edi, 0x3f
or ebx, dword [edi*4 + 0x4e23b0]
mov edi, esi
shr edi, 8
and edi, 0x3f
or ebx, dword [edi*4 + 0x4e25b0]
mov edi, dword [ebp - 4]
and edi, 0x3f
or ebx, dword [edi*4 + 0x4e28b0]
mov edi, dword [eax + 0x6c]
and esi, 0x3f
or ebx, dword [esi*4 + 0x4e27b0]
mov esi, dword [eax + 0x2c]
xor ecx, ebx
xor edi, ecx
mov ebx, edi
mov dword [ebp - 4], edi
shr edi, 0x10
and edi, 0x3f
shr ebx, 0x18
and ebx, 0x3f
mov ebx, dword [ebx*4 + 0x4e22b0]
or ebx, dword [edi*4 + 0x4e24b0]
mov edi, dword [ebp - 4]
shr edi, 8
and edi, 0x3f
or ebx, dword [edi*4 + 0x4e26b0]
xor esi, ecx
ror esi, 4
mov edi, esi
shr edi, 0x18
and edi, 0x3f
or ebx, dword [edi*4 + 0x4e21b0]
mov edi, esi
shr edi, 0x10
and edi, 0x3f
or ebx, dword [edi*4 + 0x4e23b0]
mov edi, esi
shr edi, 8
and edi, 0x3f
or ebx, dword [edi*4 + 0x4e25b0]
mov edi, dword [ebp - 4]
and edi, 0x3f
or ebx, dword [edi*4 + 0x4e28b0]
mov edi, dword [eax + 0x70]
and esi, 0x3f
or ebx, dword [esi*4 + 0x4e27b0]
mov esi, dword [eax + 0x30]
xor edx, ebx
xor edi, edx
mov ebx, edi
mov dword [ebp - 4], edi
shr edi, 0x10
shr ebx, 0x18
and edi, 0x3f
and ebx, 0x3f
mov ebx, dword [ebx*4 + 0x4e22b0]
or ebx, dword [edi*4 + 0x4e24b0]
mov edi, dword [ebp - 4]
shr edi, 8
and edi, 0x3f
or ebx, dword [edi*4 + 0x4e26b0]
xor esi, edx
ror esi, 4
mov edi, esi
shr edi, 0x18
and edi, 0x3f
or ebx, dword [edi*4 + 0x4e21b0]
mov edi, esi
shr edi, 0x10
and edi, 0x3f
or ebx, dword [edi*4 + 0x4e23b0]
mov edi, esi
shr edi, 8
and edi, 0x3f
or ebx, dword [edi*4 + 0x4e25b0]
mov edi, dword [ebp - 4]
and edi, 0x3f
or ebx, dword [edi*4 + 0x4e28b0]
mov edi, dword [eax + 0x74]
and esi, 0x3f
or ebx, dword [esi*4 + 0x4e27b0]
mov esi, dword [eax + 0x34]
xor ecx, ebx
xor edi, ecx
mov ebx, edi
mov dword [ebp - 4], edi
shr edi, 0x10
and edi, 0x3f
shr ebx, 0x18
and ebx, 0x3f
mov ebx, dword [ebx*4 + 0x4e22b0]
or ebx, dword [edi*4 + 0x4e24b0]
mov edi, dword [ebp - 4]
shr edi, 8
and edi, 0x3f
or ebx, dword [edi*4 + 0x4e26b0]
xor esi, ecx
ror esi, 4
mov edi, esi
shr edi, 0x18
and edi, 0x3f
or ebx, dword [edi*4 + 0x4e21b0]
mov edi, esi
shr edi, 0x10
and edi, 0x3f
or ebx, dword [edi*4 + 0x4e23b0]
mov edi, esi
shr edi, 8
and edi, 0x3f
or ebx, dword [edi*4 + 0x4e25b0]
mov edi, dword [ebp - 4]
and edi, 0x3f
or ebx, dword [edi*4 + 0x4e28b0]
mov edi, dword [eax + 0x78]
and esi, 0x3f
or ebx, dword [esi*4 + 0x4e27b0]
mov esi, dword [eax + 0x38]
xor edx, ebx
xor edi, edx
mov ebx, edi
mov dword [ebp - 4], edi
shr edi, 0x10
and edi, 0x3f
shr ebx, 0x18
and ebx, 0x3f
mov ebx, dword [ebx*4 + 0x4e22b0]
or ebx, dword [edi*4 + 0x4e24b0]
mov edi, dword [ebp - 4]
shr edi, 8
and edi, 0x3f
or ebx, dword [edi*4 + 0x4e26b0]
xor esi, edx
ror esi, 4
mov edi, esi
shr edi, 0x18
and edi, 0x3f
or ebx, dword [edi*4 + 0x4e21b0]
mov edi, esi
shr edi, 0x10
and edi, 0x3f
or ebx, dword [edi*4 + 0x4e23b0]
mov edi, esi
shr edi, 8
and edi, 0x3f
or ebx, dword [edi*4 + 0x4e25b0]
mov edi, dword [ebp - 4]
and edi, 0x3f
or ebx, dword [edi*4 + 0x4e28b0]
mov edi, dword [eax + 0x7c]
mov eax, dword [eax + 0x3c]
and esi, 0x3f
or ebx, dword [esi*4 + 0x4e27b0]
xor ecx, ebx
xor edi, ecx
xor eax, ecx
mov esi, edi
shr esi, 0x18
and esi, 0x3f
mov esi, dword [esi*4 + 0x4e22b0]
mov ebx, edi
shr ebx, 0x10
and ebx, 0x3f
or esi, dword [ebx*4 + 0x4e24b0]
ror eax, 4
mov ebx, edi
shr ebx, 8
and ebx, 0x3f
or esi, dword [ebx*4 + 0x4e26b0]
mov ebx, eax
shr ebx, 0x18
and ebx, 0x3f
or esi, dword [ebx*4 + 0x4e21b0]
mov ebx, eax
shr ebx, 0x10
and ebx, 0x3f
or esi, dword [ebx*4 + 0x4e23b0]
mov ebx, eax
ror ecx, 1
shr ebx, 8
and ebx, 0x3f
or esi, dword [ebx*4 + 0x4e25b0]
and edi, 0x3f
or esi, dword [edi*4 + 0x4e28b0]
and eax, 0x3f
or esi, dword [eax*4 + 0x4e27b0]
mov eax, ecx
xor esi, edx
ror esi, 1
mov edx, esi
shr edx, 1
xor edx, ecx
and edx, 0x55555555
xor eax, edx
lea ecx, [edx + edx]
xor esi, ecx
mov ecx, eax
shr ecx, 8
xor ecx, esi
and ecx, 0xff00ff
mov edx, ecx
xor esi, ecx
shl edx, 8
xor eax, edx
mov ecx, eax
shr ecx, 2
xor ecx, esi
and ecx, 0x33333333
lea edx, [ecx*4]
xor esi, ecx
xor eax, edx
mov ecx, esi
shr ecx, 0x10
xor ecx, eax
and ecx, 0xffff
mov edx, ecx
shl edx, 0x10
xor esi, edx
mov edx, dword [ebp + 8]
xor eax, ecx
mov ecx, esi
shr ecx, 4
xor ecx, eax
and ecx, 0xf0f0f0f
mov edi, ecx
shl edi, 4
xor edi, esi
xor ecx, eax
mov dword [edx], edi
mov dword [edx + 4], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret