Function at 0x428ac0
Capabilities:
Encrypt data using des

Disassembly:
push ebx
push ebp
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 ebx, dword [eax + 0x7c]
mov edx, ecx
shr edx, 8
xor edx, esi
and edx, 0xff00ff
xor esi, edx
mov ebp, esi
shr ebp, 1
mov edi, edx
shl edi, 8
xor ecx, edi
xor ebp, ecx
and ebp, 0x55555555
mov edx, ebp
mov edi, dword [eax + 0x3c]
xor edx, ecx
lea ecx, [ebp + ebp]
xor ecx, esi
rol edx, 1
xor ebx, edx
mov esi, ebx
shr esi, 0x18
and esi, 0x3f
mov esi, dword [esi*4 + 0x477e28]
mov ebp, ebx
shr ebp, 0x10
and ebp, 0x3f
or esi, dword [ebp*4 + 0x478028]
xor edi, edx
ror edi, 4
mov ebp, ebx
shr ebp, 8
and ebp, 0x3f
or esi, dword [ebp*4 + 0x478228]
mov ebp, edi
shr ebp, 0x18
and ebp, 0x3f
or esi, dword [ebp*4 + 0x477d28]
mov ebp, edi
shr ebp, 0x10
and ebp, 0x3f
or esi, dword [ebp*4 + 0x477f28]
mov ebp, edi
shr ebp, 8
and ebp, 0x3f
or esi, dword [ebp*4 + 0x478128]
and ebx, 0x3f
or esi, dword [ebx*4 + 0x478428]
and edi, 0x3f
or esi, dword [edi*4 + 0x478328]
mov edi, dword [eax + 0x78]
rol ecx, 1
xor ecx, esi
xor edi, ecx
mov esi, dword [eax + 0x38]
mov ebx, edi
shr ebx, 0x18
and ebx, 0x3f
mov ebx, dword [ebx*4 + 0x477e28]
mov ebp, edi
shr ebp, 0x10
and ebp, 0x3f
or ebx, dword [ebp*4 + 0x478028]
xor esi, ecx
ror esi, 4
mov ebp, edi
shr ebp, 8
and ebp, 0x3f
or ebx, dword [ebp*4 + 0x478228]
mov ebp, esi
shr ebp, 0x18
and ebp, 0x3f
or ebx, dword [ebp*4 + 0x477d28]
mov ebp, esi
shr ebp, 0x10
and ebp, 0x3f
or ebx, dword [ebp*4 + 0x477f28]
mov ebp, esi
shr ebp, 8
and ebp, 0x3f
or ebx, dword [ebp*4 + 0x478128]
and edi, 0x3f
or ebx, dword [edi*4 + 0x478428]
mov edi, dword [eax + 0x74]
and esi, 0x3f
or ebx, dword [esi*4 + 0x478328]
mov esi, dword [eax + 0x34]
xor edx, ebx
xor edi, edx
mov ebx, edi
shr ebx, 0x18
and ebx, 0x3f
mov ebx, dword [ebx*4 + 0x477e28]
mov ebp, edi
shr ebp, 0x10
and ebp, 0x3f
or ebx, dword [ebp*4 + 0x478028]
mov ebp, edi
shr ebp, 8
and ebp, 0x3f
or ebx, dword [ebp*4 + 0x478228]
xor esi, edx
ror esi, 4
mov ebp, esi
shr ebp, 0x18
and ebp, 0x3f
or ebx, dword [ebp*4 + 0x477d28]
mov ebp, esi
shr ebp, 0x10
and ebp, 0x3f
or ebx, dword [ebp*4 + 0x477f28]
mov ebp, esi
shr ebp, 8
and ebp, 0x3f
or ebx, dword [ebp*4 + 0x478128]
and edi, 0x3f
or ebx, dword [edi*4 + 0x478428]
mov edi, dword [eax + 0x70]
and esi, 0x3f
or ebx, dword [esi*4 + 0x478328]
mov esi, dword [eax + 0x30]
xor ecx, ebx
xor edi, ecx
mov ebx, edi
shr ebx, 0x18
and ebx, 0x3f
mov ebx, dword [ebx*4 + 0x477e28]
mov ebp, edi
shr ebp, 0x10
and ebp, 0x3f
or ebx, dword [ebp*4 + 0x478028]
xor esi, ecx
mov ebp, edi
ror esi, 4
shr ebp, 8
and ebp, 0x3f
or ebx, dword [ebp*4 + 0x478228]
mov ebp, esi
shr ebp, 0x18
and ebp, 0x3f
or ebx, dword [ebp*4 + 0x477d28]
mov ebp, esi
shr ebp, 0x10
and ebp, 0x3f
or ebx, dword [ebp*4 + 0x477f28]
mov ebp, esi
shr ebp, 8
and ebp, 0x3f
or ebx, dword [ebp*4 + 0x478128]
and edi, 0x3f
or ebx, dword [edi*4 + 0x478428]
mov edi, dword [eax + 0x6c]
and esi, 0x3f
or ebx, dword [esi*4 + 0x478328]
mov esi, dword [eax + 0x2c]
xor edx, ebx
xor edi, edx
mov ebx, edi
shr ebx, 0x18
and ebx, 0x3f
mov ebx, dword [ebx*4 + 0x477e28]
mov ebp, edi
shr ebp, 0x10
and ebp, 0x3f
or ebx, dword [ebp*4 + 0x478028]
mov ebp, edi
shr ebp, 8
and ebp, 0x3f
or ebx, dword [ebp*4 + 0x478228]
xor esi, edx
ror esi, 4
mov ebp, esi
shr ebp, 0x18
and ebp, 0x3f
or ebx, dword [ebp*4 + 0x477d28]
mov ebp, esi
shr ebp, 0x10
and ebp, 0x3f
or ebx, dword [ebp*4 + 0x477f28]
mov ebp, esi
shr ebp, 8
and ebp, 0x3f
or ebx, dword [ebp*4 + 0x478128]
and edi, 0x3f
or ebx, dword [edi*4 + 0x478428]
mov edi, dword [eax + 0x68]
and esi, 0x3f
or ebx, dword [esi*4 + 0x478328]
mov esi, dword [eax + 0x28]
xor ecx, ebx
xor edi, ecx
mov ebx, edi
shr ebx, 0x18
and ebx, 0x3f
mov ebx, dword [ebx*4 + 0x477e28]
mov ebp, edi
shr ebp, 0x10
and ebp, 0x3f
or ebx, dword [ebp*4 + 0x478028]
mov ebp, edi
shr ebp, 8
and ebp, 0x3f
or ebx, dword [ebp*4 + 0x478228]
xor esi, ecx
ror esi, 4
mov ebp, esi
shr ebp, 0x18
and ebp, 0x3f
or ebx, dword [ebp*4 + 0x477d28]
mov ebp, esi
shr ebp, 0x10
and ebp, 0x3f
or ebx, dword [ebp*4 + 0x477f28]
mov ebp, esi
shr ebp, 8
and ebp, 0x3f
or ebx, dword [ebp*4 + 0x478128]
and edi, 0x3f
or ebx, dword [edi*4 + 0x478428]
mov edi, dword [eax + 0x64]
and esi, 0x3f
or ebx, dword [esi*4 + 0x478328]
mov esi, dword [eax + 0x24]
xor edx, ebx
xor edi, edx
mov ebx, edi
shr ebx, 0x18
and ebx, 0x3f
mov ebx, dword [ebx*4 + 0x477e28]
mov ebp, edi
shr ebp, 0x10
and ebp, 0x3f
or ebx, dword [ebp*4 + 0x478028]
xor esi, edx
ror esi, 4
mov ebp, edi
shr ebp, 8
and ebp, 0x3f
or ebx, dword [ebp*4 + 0x478228]
mov ebp, esi
shr ebp, 0x18
and ebp, 0x3f
or ebx, dword [ebp*4 + 0x477d28]
mov ebp, esi
shr ebp, 0x10
and ebp, 0x3f
or ebx, dword [ebp*4 + 0x477f28]
mov ebp, esi
shr ebp, 8
and ebp, 0x3f
or ebx, dword [ebp*4 + 0x478128]
and edi, 0x3f
or ebx, dword [edi*4 + 0x478428]
mov edi, dword [eax + 0x60]
and esi, 0x3f
or ebx, dword [esi*4 + 0x478328]
mov esi, dword [eax + 0x20]
xor ecx, ebx
xor edi, ecx
mov ebx, edi
shr ebx, 0x18
and ebx, 0x3f
mov ebx, dword [ebx*4 + 0x477e28]
mov ebp, edi
shr ebp, 0x10
and ebp, 0x3f
or ebx, dword [ebp*4 + 0x478028]
mov ebp, edi
shr ebp, 8
and ebp, 0x3f
or ebx, dword [ebp*4 + 0x478228]
xor esi, ecx
ror esi, 4
mov ebp, esi
shr ebp, 0x18
and ebp, 0x3f
or ebx, dword [ebp*4 + 0x477d28]
mov ebp, esi
shr ebp, 0x10
and ebp, 0x3f
or ebx, dword [ebp*4 + 0x477f28]
mov ebp, esi
shr ebp, 8
and ebp, 0x3f
or ebx, dword [ebp*4 + 0x478128]
and edi, 0x3f
or ebx, dword [edi*4 + 0x478428]
mov edi, dword [eax + 0x5c]
and esi, 0x3f
or ebx, dword [esi*4 + 0x478328]
mov esi, dword [eax + 0x1c]
xor edx, ebx
xor edi, edx
xor esi, edx
mov ebx, edi
ror esi, 4
shr ebx, 0x18
and ebx, 0x3f
mov ebx, dword [ebx*4 + 0x477e28]
mov ebp, edi
shr ebp, 0x10
and ebp, 0x3f
or ebx, dword [ebp*4 + 0x478028]
mov ebp, edi
shr ebp, 8
and ebp, 0x3f
or ebx, dword [ebp*4 + 0x478228]
mov ebp, esi
shr ebp, 0x18
and ebp, 0x3f
or ebx, dword [ebp*4 + 0x477d28]
mov ebp, esi
shr ebp, 0x10
and ebp, 0x3f
or ebx, dword [ebp*4 + 0x477f28]
mov ebp, esi
shr ebp, 8
and ebp, 0x3f
or ebx, dword [ebp*4 + 0x478128]
and edi, 0x3f
or ebx, dword [edi*4 + 0x478428]
mov edi, dword [eax + 0x58]
and esi, 0x3f
or ebx, dword [esi*4 + 0x478328]
mov esi, dword [eax + 0x18]
xor ecx, ebx
xor edi, ecx
mov ebx, edi
shr ebx, 0x18
and ebx, 0x3f
mov ebx, dword [ebx*4 + 0x477e28]
mov ebp, edi
shr ebp, 0x10
and ebp, 0x3f
or ebx, dword [ebp*4 + 0x478028]
mov ebp, edi
shr ebp, 8
and ebp, 0x3f
or ebx, dword [ebp*4 + 0x478228]
xor esi, ecx
ror esi, 4
mov ebp, esi
shr ebp, 0x18
and ebp, 0x3f
or ebx, dword [ebp*4 + 0x477d28]
mov ebp, esi
shr ebp, 0x10
and ebp, 0x3f
or ebx, dword [ebp*4 + 0x477f28]
mov ebp, esi
shr ebp, 8
and ebp, 0x3f
or ebx, dword [ebp*4 + 0x478128]
and edi, 0x3f
or ebx, dword [edi*4 + 0x478428]
mov edi, dword [eax + 0x54]
and esi, 0x3f
or ebx, dword [esi*4 + 0x478328]
mov esi, dword [eax + 0x14]
xor edx, ebx
xor edi, edx
mov ebx, edi
shr ebx, 0x18
and ebx, 0x3f
mov ebx, dword [ebx*4 + 0x477e28]
mov ebp, edi
shr ebp, 0x10
and ebp, 0x3f
or ebx, dword [ebp*4 + 0x478028]
mov ebp, edi
shr ebp, 8
and ebp, 0x3f
or ebx, dword [ebp*4 + 0x478228]
xor esi, edx
ror esi, 4
mov ebp, esi
shr ebp, 0x18
and ebp, 0x3f
or ebx, dword [ebp*4 + 0x477d28]
mov ebp, esi
shr ebp, 0x10
and ebp, 0x3f
or ebx, dword [ebp*4 + 0x477f28]
mov ebp, esi
shr ebp, 8
and ebp, 0x3f
or ebx, dword [ebp*4 + 0x478128]
and edi, 0x3f
or ebx, dword [edi*4 + 0x478428]
mov edi, dword [eax + 0x50]
and esi, 0x3f
or ebx, dword [esi*4 + 0x478328]
mov esi, dword [eax + 0x10]
xor ecx, ebx
xor edi, ecx
mov ebx, edi
shr ebx, 0x18
and ebx, 0x3f
mov ebx, dword [ebx*4 + 0x477e28]
mov ebp, edi
shr ebp, 0x10
and ebp, 0x3f
or ebx, dword [ebp*4 + 0x478028]
mov ebp, edi
shr ebp, 8
and ebp, 0x3f
or ebx, dword [ebp*4 + 0x478228]
xor esi, ecx
ror esi, 4
mov ebp, esi
shr ebp, 0x18
and ebp, 0x3f
or ebx, dword [ebp*4 + 0x477d28]
mov ebp, esi
shr ebp, 0x10
and ebp, 0x3f
or ebx, dword [ebp*4 + 0x477f28]
mov ebp, esi
shr ebp, 8
and ebp, 0x3f
or ebx, dword [ebp*4 + 0x478128]
and edi, 0x3f
or ebx, dword [edi*4 + 0x478428]
mov edi, dword [eax + 0x4c]
and esi, 0x3f
or ebx, dword [esi*4 + 0x478328]
mov esi, dword [eax + 0xc]
xor edx, ebx
xor edi, edx
mov ebx, edi
shr ebx, 0x18
and ebx, 0x3f
mov ebx, dword [ebx*4 + 0x477e28]
mov ebp, edi
shr ebp, 0x10
and ebp, 0x3f
or ebx, dword [ebp*4 + 0x478028]
mov ebp, edi
shr ebp, 8
and ebp, 0x3f
or ebx, dword [ebp*4 + 0x478228]
xor esi, edx
ror esi, 4
mov ebp, esi
shr ebp, 0x18
and ebp, 0x3f
or ebx, dword [ebp*4 + 0x477d28]
mov ebp, esi
shr ebp, 0x10
and ebp, 0x3f
or ebx, dword [ebp*4 + 0x477f28]
mov ebp, esi
shr ebp, 8
and ebp, 0x3f
or ebx, dword [ebp*4 + 0x478128]
and edi, 0x3f
or ebx, dword [edi*4 + 0x478428]
and esi, 0x3f
or ebx, dword [esi*4 + 0x478328]
mov edi, dword [eax + 0x48]
xor ecx, ebx
mov esi, dword [eax + 8]
xor edi, ecx
mov ebx, edi
shr ebx, 0x18
and ebx, 0x3f
mov ebx, dword [ebx*4 + 0x477e28]
mov ebp, edi
shr ebp, 0x10
and ebp, 0x3f
or ebx, dword [ebp*4 + 0x478028]
xor esi, ecx
ror esi, 4
mov ebp, edi
shr ebp, 8
and ebp, 0x3f
or ebx, dword [ebp*4 + 0x478228]
mov ebp, esi
shr ebp, 0x18
and ebp, 0x3f
or ebx, dword [ebp*4 + 0x477d28]
mov ebp, esi
shr ebp, 0x10
and ebp, 0x3f
or ebx, dword [ebp*4 + 0x477f28]
mov ebp, esi
shr ebp, 8
and ebp, 0x3f
or ebx, dword [ebp*4 + 0x478128]
and edi, 0x3f
or ebx, dword [edi*4 + 0x478428]
mov edi, dword [eax + 0x44]
and esi, 0x3f
or ebx, dword [esi*4 + 0x478328]
mov esi, dword [eax + 4]
xor edx, ebx
xor edi, edx
mov ebx, edi
shr ebx, 0x18
and ebx, 0x3f
mov ebx, dword [ebx*4 + 0x477e28]
mov ebp, edi
shr ebp, 0x10
and ebp, 0x3f
or ebx, dword [ebp*4 + 0x478028]
xor esi, edx
ror esi, 4
mov ebp, edi
shr ebp, 8
and ebp, 0x3f
or ebx, dword [ebp*4 + 0x478228]
mov ebp, esi
shr ebp, 0x18
and ebp, 0x3f
or ebx, dword [ebp*4 + 0x477d28]
mov ebp, esi
shr ebp, 0x10
and ebp, 0x3f
or ebx, dword [ebp*4 + 0x477f28]
mov ebp, esi
shr ebp, 8
and ebp, 0x3f
or ebx, dword [ebp*4 + 0x478128]
and edi, 0x3f
or ebx, dword [edi*4 + 0x478428]
mov edi, dword [eax + 0x40]
mov eax, dword [eax]
and esi, 0x3f
or ebx, dword [esi*4 + 0x478328]
xor ecx, ebx
xor edi, ecx
xor eax, ecx
mov esi, edi
shr esi, 0x18
mov ebx, edi
ror eax, 4
shr ebx, 0x10
ror ecx, 1
and esi, 0x3f
and ebx, 0x3f
mov esi, dword [esi*4 + 0x477e28]
or esi, dword [ebx*4 + 0x478028]
mov ebx, edi
shr ebx, 8
and ebx, 0x3f
or esi, dword [ebx*4 + 0x478228]
mov ebx, eax
shr ebx, 0x18
and ebx, 0x3f
or esi, dword [ebx*4 + 0x477d28]
mov ebx, eax
shr ebx, 0x10
and ebx, 0x3f
or esi, dword [ebx*4 + 0x477f28]
mov ebx, eax
shr ebx, 8
and ebx, 0x3f
or esi, dword [ebx*4 + 0x478128]
and edi, 0x3f
or esi, dword [edi*4 + 0x478428]
and eax, 0x3f
or esi, dword [eax*4 + 0x478328]
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
xor esi, ecx
lea edx, [ecx*4]
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 [esp + 0x14]
xor eax, ecx
mov ecx, esi
shr ecx, 4
xor ecx, eax
and ecx, 0xf0f0f0f
mov edi, ecx
shl edi, 4
xor edi, esi
mov dword [edx], edi
pop edi
pop esi
xor ecx, eax
pop ebp
mov dword [edx + 4], ecx
pop ebx
ret