Function at 0x40309c
Capabilities:
Encrypt data using des
Resolve function by parsing pe exports

Disassembly:
push edi
push esi
push ebp
push ebx
mov ebp, edx
movzx edx, byte [ebp]
movzx ebx, byte [ebp + 1]
movzx esi, byte [ebp + 5]
shl edx, 0x18
shl ebx, 0x10
or edx, ebx
movzx ebx, byte [ebp + 2]
shl ebx, 8
or edx, ebx
movzx ebx, byte [ebp + 3]
or edx, ebx
movzx ebx, byte [ebp + 4]
shl ebx, 0x18
shl esi, 0x10
or ebx, esi
movzx esi, byte [ebp + 6]
movzx ebp, byte [ebp + 7]
shl esi, 8
or ebx, esi
mov esi, dword [eax]
or ebx, ebp
mov ebp, edx
shr ebp, 4
xor ebp, ebx
and ebp, 0xf0f0f0f
xor ebx, ebp
shl ebp, 4
xor edx, ebp
mov ebp, edx
shr ebp, 0x10
xor ebp, ebx
movzx ebp, bp
xor ebx, ebp
shl ebp, 0x10
xor edx, ebp
mov ebp, ebx
shr ebp, 2
xor ebp, edx
and ebp, 0x33333333
xor edx, ebp
shl ebp, 2
xor ebx, ebp
mov ebp, ebx
shr ebp, 8
xor ebp, edx
and ebp, 0xff00ff
xor edx, ebp
shl ebp, 8
xor ebx, ebp
rol ebx, 1
mov ebp, edx
xor ebp, ebx
and ebp, 0xaaaaaaaa
xor ebx, ebp
xor edx, ebp
rol edx, 1
xor esi, ebx
mov ebp, esi
and ebp, 0x3f
mov edi, esi
mov ebp, dword [ebp*4 + 0x4222a0]
shr edi, 8
and edi, 0x3f
xor ebp, dword [edi*4 + 0x4223a0]
mov edi, esi
shr edi, 0x10
and edi, 0x3f
shr esi, 0x18
and esi, 0x3f
xor ebp, dword [edi*4 + 0x4224a0]
xor ebp, dword [esi*4 + 0x4225a0]
xor edx, ebp
mov esi, ebx
rol esi, 0x1c
xor esi, dword [eax + 4]
mov ebp, esi
and ebp, 0x3f
mov ebp, dword [ebp*4 + 0x4226a0]
mov edi, esi
shr edi, 8
and edi, 0x3f
xor ebp, dword [edi*4 + 0x4227a0]
mov edi, esi
shr edi, 0x10
and edi, 0x3f
shr esi, 0x18
xor ebp, dword [edi*4 + 0x4228a0]
and esi, 0x3f
xor ebp, dword [esi*4 + 0x4229a0]
mov esi, dword [eax + 8]
xor edx, ebp
xor esi, edx
mov ebp, esi
and ebp, 0x3f
mov ebp, dword [ebp*4 + 0x4222a0]
mov edi, esi
shr edi, 8
and edi, 0x3f
xor ebp, dword [edi*4 + 0x4223a0]
mov edi, esi
shr edi, 0x10
and edi, 0x3f
shr esi, 0x18
xor ebp, dword [edi*4 + 0x4224a0]
and esi, 0x3f
xor ebp, dword [esi*4 + 0x4225a0]
xor ebx, ebp
mov esi, edx
rol esi, 0x1c
xor esi, dword [eax + 0xc]
mov ebp, esi
and ebp, 0x3f
mov edi, esi
shr edi, 8
mov ebp, dword [ebp*4 + 0x4226a0]
and edi, 0x3f
xor ebp, dword [edi*4 + 0x4227a0]
mov edi, esi
shr edi, 0x10
and edi, 0x3f
xor ebp, dword [edi*4 + 0x4228a0]
shr esi, 0x18
and esi, 0x3f
xor ebp, dword [esi*4 + 0x4229a0]
mov esi, dword [eax + 0x10]
xor ebx, ebp
xor esi, ebx
mov ebp, esi
and ebp, 0x3f
mov ebp, dword [ebp*4 + 0x4222a0]
mov edi, esi
shr edi, 8
and edi, 0x3f
xor ebp, dword [edi*4 + 0x4223a0]
mov edi, esi
shr edi, 0x10
and edi, 0x3f
shr esi, 0x18
xor ebp, dword [edi*4 + 0x4224a0]
and esi, 0x3f
xor ebp, dword [esi*4 + 0x4225a0]
xor edx, ebp
mov esi, ebx
rol esi, 0x1c
xor esi, dword [eax + 0x14]
mov ebp, esi
and ebp, 0x3f
mov edi, esi
shr edi, 8
mov ebp, dword [ebp*4 + 0x4226a0]
and edi, 0x3f
xor ebp, dword [edi*4 + 0x4227a0]
mov edi, esi
shr edi, 0x10
and edi, 0x3f
xor ebp, dword [edi*4 + 0x4228a0]
shr esi, 0x18
and esi, 0x3f
xor ebp, dword [esi*4 + 0x4229a0]
mov esi, dword [eax + 0x18]
xor edx, ebp
xor esi, edx
mov ebp, esi
and ebp, 0x3f
mov ebp, dword [ebp*4 + 0x4222a0]
mov edi, esi
shr edi, 8
and edi, 0x3f
xor ebp, dword [edi*4 + 0x4223a0]
mov edi, esi
shr edi, 0x10
and edi, 0x3f
shr esi, 0x18
xor ebp, dword [edi*4 + 0x4224a0]
and esi, 0x3f
xor ebp, dword [esi*4 + 0x4225a0]
xor ebx, ebp
mov esi, edx
rol esi, 0x1c
xor esi, dword [eax + 0x1c]
mov ebp, esi
and ebp, 0x3f
mov edi, esi
shr edi, 8
mov ebp, dword [ebp*4 + 0x4226a0]
and edi, 0x3f
xor ebp, dword [edi*4 + 0x4227a0]
mov edi, esi
shr edi, 0x10
and edi, 0x3f
xor ebp, dword [edi*4 + 0x4228a0]
shr esi, 0x18
and esi, 0x3f
xor ebp, dword [esi*4 + 0x4229a0]
mov esi, dword [eax + 0x20]
xor ebx, ebp
xor esi, ebx
mov ebp, esi
and ebp, 0x3f
mov ebp, dword [ebp*4 + 0x4222a0]
mov edi, esi
shr edi, 8
and edi, 0x3f
xor ebp, dword [edi*4 + 0x4223a0]
mov edi, esi
shr edi, 0x10
and edi, 0x3f
shr esi, 0x18
xor ebp, dword [edi*4 + 0x4224a0]
and esi, 0x3f
xor ebp, dword [esi*4 + 0x4225a0]
xor edx, ebp
mov esi, ebx
rol esi, 0x1c
xor esi, dword [eax + 0x24]
mov ebp, esi
and ebp, 0x3f
mov edi, esi
shr edi, 8
mov ebp, dword [ebp*4 + 0x4226a0]
and edi, 0x3f
xor ebp, dword [edi*4 + 0x4227a0]
mov edi, esi
shr edi, 0x10
and edi, 0x3f
xor ebp, dword [edi*4 + 0x4228a0]
shr esi, 0x18
and esi, 0x3f
xor ebp, dword [esi*4 + 0x4229a0]
mov esi, dword [eax + 0x28]
xor edx, ebp
xor esi, edx
mov ebp, esi
and ebp, 0x3f
mov ebp, dword [ebp*4 + 0x4222a0]
mov edi, esi
shr edi, 8
and edi, 0x3f
xor ebp, dword [edi*4 + 0x4223a0]
mov edi, esi
shr edi, 0x10
and edi, 0x3f
shr esi, 0x18
xor ebp, dword [edi*4 + 0x4224a0]
and esi, 0x3f
xor ebp, dword [esi*4 + 0x4225a0]
xor ebx, ebp
mov esi, edx
rol esi, 0x1c
xor esi, dword [eax + 0x2c]
mov ebp, esi
and ebp, 0x3f
mov edi, esi
shr edi, 8
mov ebp, dword [ebp*4 + 0x4226a0]
and edi, 0x3f
xor ebp, dword [edi*4 + 0x4227a0]
mov edi, esi
shr edi, 0x10
and edi, 0x3f
xor ebp, dword [edi*4 + 0x4228a0]
shr esi, 0x18
and esi, 0x3f
xor ebp, dword [esi*4 + 0x4229a0]
mov esi, dword [eax + 0x30]
xor ebx, ebp
xor esi, ebx
mov ebp, esi
and ebp, 0x3f
mov ebp, dword [ebp*4 + 0x4222a0]
mov edi, esi
shr edi, 8
and edi, 0x3f
xor ebp, dword [edi*4 + 0x4223a0]
mov edi, esi
shr edi, 0x10
and edi, 0x3f
shr esi, 0x18
xor ebp, dword [edi*4 + 0x4224a0]
and esi, 0x3f
xor ebp, dword [esi*4 + 0x4225a0]
xor edx, ebp
mov esi, ebx
rol esi, 0x1c
xor esi, dword [eax + 0x34]
mov ebp, esi
and ebp, 0x3f
mov edi, esi
shr edi, 8
mov ebp, dword [ebp*4 + 0x4226a0]
and edi, 0x3f
xor ebp, dword [edi*4 + 0x4227a0]
mov edi, esi
shr edi, 0x10
and edi, 0x3f
xor ebp, dword [edi*4 + 0x4228a0]
shr esi, 0x18
and esi, 0x3f
xor ebp, dword [esi*4 + 0x4229a0]
mov esi, dword [eax + 0x38]
xor edx, ebp
xor esi, edx
mov ebp, esi
and ebp, 0x3f
mov ebp, dword [ebp*4 + 0x4222a0]
mov edi, esi
shr edi, 8
and edi, 0x3f
xor ebp, dword [edi*4 + 0x4223a0]
mov edi, esi
shr edi, 0x10
and edi, 0x3f
shr esi, 0x18
xor ebp, dword [edi*4 + 0x4224a0]
and esi, 0x3f
xor ebp, dword [esi*4 + 0x4225a0]
xor ebx, ebp
mov esi, edx
rol esi, 0x1c
xor esi, dword [eax + 0x3c]
mov ebp, esi
and ebp, 0x3f
mov edi, esi
shr edi, 8
mov ebp, dword [ebp*4 + 0x4226a0]
and edi, 0x3f
xor ebp, dword [edi*4 + 0x4227a0]
mov edi, esi
shr edi, 0x10
and edi, 0x3f
xor ebp, dword [edi*4 + 0x4228a0]
shr esi, 0x18
and esi, 0x3f
xor ebp, dword [esi*4 + 0x4229a0]
mov esi, dword [eax + 0x40]
xor ebx, ebp
xor esi, ebx
mov ebp, esi
and ebp, 0x3f
mov ebp, dword [ebp*4 + 0x4222a0]
mov edi, esi
shr edi, 8
and edi, 0x3f
xor ebp, dword [edi*4 + 0x4223a0]
mov edi, esi
shr edi, 0x10
and edi, 0x3f
shr esi, 0x18
xor ebp, dword [edi*4 + 0x4224a0]
and esi, 0x3f
xor ebp, dword [esi*4 + 0x4225a0]
xor edx, ebp
mov ebp, ebx
rol ebp, 0x1c
xor ebp, dword [eax + 0x44]
mov esi, ebp
and esi, 0x3f
mov edi, dword [esi*4 + 0x4226a0]
mov esi, ebp
shr esi, 8
and esi, 0x3f
xor edi, dword [esi*4 + 0x4227a0]
mov esi, ebp
shr esi, 0x10
and esi, 0x3f
shr ebp, 0x18
and ebp, 0x3f
xor edi, dword [esi*4 + 0x4228a0]
xor edi, dword [ebp*4 + 0x4229a0]
mov ebp, dword [eax + 0x48]
xor edx, edi
xor ebp, edx
mov esi, ebp
and esi, 0x3f
mov esi, dword [esi*4 + 0x4222a0]
mov edi, ebp
shr edi, 8
and edi, 0x3f
xor esi, dword [edi*4 + 0x4223a0]
mov edi, ebp
shr edi, 0x10
and edi, 0x3f
shr ebp, 0x18
xor esi, dword [edi*4 + 0x4224a0]
and ebp, 0x3f
xor esi, dword [ebp*4 + 0x4225a0]
xor ebx, esi
mov esi, edx
rol esi, 0x1c
xor esi, dword [eax + 0x4c]
mov ebp, esi
and ebp, 0x3f
mov edi, esi
shr edi, 8
mov ebp, dword [ebp*4 + 0x4226a0]
and edi, 0x3f
mov edi, dword [edi*4 + 0x4227a0]
xor ebp, edi
mov edi, esi
shr edi, 0x10
and edi, 0x3f
shr esi, 0x18
and esi, 0x3f
xor ebp, dword [edi*4 + 0x4228a0]
xor ebp, dword [esi*4 + 0x4229a0]
mov esi, dword [eax + 0x50]
xor ebx, ebp
xor esi, ebx
mov ebp, esi
and ebp, 0x3f
mov ebp, dword [ebp*4 + 0x4222a0]
mov edi, esi
shr edi, 8
and edi, 0x3f
xor ebp, dword [edi*4 + 0x4223a0]
mov edi, esi
shr edi, 0x10
and edi, 0x3f
shr esi, 0x18
xor ebp, dword [edi*4 + 0x4224a0]
and esi, 0x3f
xor ebp, dword [esi*4 + 0x4225a0]
xor edx, ebp
mov esi, ebx
rol esi, 0x1c
xor esi, dword [eax + 0x54]
mov ebp, esi
and ebp, 0x3f
mov edi, esi
shr edi, 8
mov ebp, dword [ebp*4 + 0x4226a0]
and edi, 0x3f
xor ebp, dword [edi*4 + 0x4227a0]
mov edi, esi
shr edi, 0x10
and edi, 0x3f
xor ebp, dword [edi*4 + 0x4228a0]
shr esi, 0x18
and esi, 0x3f
xor ebp, dword [esi*4 + 0x4229a0]
mov esi, dword [eax + 0x58]
xor edx, ebp
xor esi, edx
mov ebp, esi
and ebp, 0x3f
mov ebp, dword [ebp*4 + 0x4222a0]
mov edi, esi
shr edi, 8
and edi, 0x3f
xor ebp, dword [edi*4 + 0x4223a0]
mov edi, esi
shr edi, 0x10
and edi, 0x3f
shr esi, 0x18
xor ebp, dword [edi*4 + 0x4224a0]
and esi, 0x3f
xor ebp, dword [esi*4 + 0x4225a0]
xor ebx, ebp
mov esi, edx
rol esi, 0x1c
xor esi, dword [eax + 0x5c]
mov ebp, esi
and ebp, 0x3f
mov edi, esi
shr edi, 8
mov ebp, dword [ebp*4 + 0x4226a0]
and edi, 0x3f
xor ebp, dword [edi*4 + 0x4227a0]
mov edi, esi
shr edi, 0x10
and edi, 0x3f
xor ebp, dword [edi*4 + 0x4228a0]
shr esi, 0x18
and esi, 0x3f
xor ebp, dword [esi*4 + 0x4229a0]
mov esi, dword [eax + 0x60]
xor ebx, ebp
xor esi, ebx
mov ebp, esi
and ebp, 0x3f
mov ebp, dword [ebp*4 + 0x4222a0]
mov edi, esi
shr edi, 8
and edi, 0x3f
xor ebp, dword [edi*4 + 0x4223a0]
mov edi, esi
shr edi, 0x10
and edi, 0x3f
shr esi, 0x18
xor ebp, dword [edi*4 + 0x4224a0]
and esi, 0x3f
xor ebp, dword [esi*4 + 0x4225a0]
xor edx, ebp
mov esi, ebx
rol esi, 0x1c
xor esi, dword [eax + 0x64]
mov ebp, esi
and ebp, 0x3f
mov edi, esi
shr edi, 8
mov ebp, dword [ebp*4 + 0x4226a0]
and edi, 0x3f
xor ebp, dword [edi*4 + 0x4227a0]
mov edi, esi
shr edi, 0x10
and edi, 0x3f
xor ebp, dword [edi*4 + 0x4228a0]
shr esi, 0x18
and esi, 0x3f
xor ebp, dword [esi*4 + 0x4229a0]
mov esi, dword [eax + 0x68]
xor edx, ebp
xor esi, edx
mov ebp, esi
and ebp, 0x3f
mov ebp, dword [ebp*4 + 0x4222a0]
mov edi, esi
shr edi, 8
and edi, 0x3f
xor ebp, dword [edi*4 + 0x4223a0]
mov edi, esi
shr edi, 0x10
and edi, 0x3f
shr esi, 0x18
xor ebp, dword [edi*4 + 0x4224a0]
and esi, 0x3f
xor ebp, dword [esi*4 + 0x4225a0]
xor ebx, ebp
mov esi, edx
rol esi, 0x1c
xor esi, dword [eax + 0x6c]
mov ebp, esi
and ebp, 0x3f
mov edi, esi
shr edi, 8
mov ebp, dword [ebp*4 + 0x4226a0]
and edi, 0x3f
xor ebp, dword [edi*4 + 0x4227a0]
mov edi, esi
shr edi, 0x10
and edi, 0x3f
xor ebp, dword [edi*4 + 0x4228a0]
shr esi, 0x18
and esi, 0x3f
xor ebp, dword [esi*4 + 0x4229a0]
mov esi, dword [eax + 0x70]
xor ebx, ebp
xor esi, ebx
mov ebp, esi
and ebp, 0x3f
mov ebp, dword [ebp*4 + 0x4222a0]
mov edi, esi
shr edi, 8
and edi, 0x3f
xor ebp, dword [edi*4 + 0x4223a0]
mov edi, esi
shr edi, 0x10
and edi, 0x3f
shr esi, 0x18
xor ebp, dword [edi*4 + 0x4224a0]
and esi, 0x3f
xor ebp, dword [esi*4 + 0x4225a0]
xor edx, ebp
mov esi, ebx
rol esi, 0x1c
xor esi, dword [eax + 0x74]
mov ebp, esi
and ebp, 0x3f
mov edi, esi
shr edi, 8
mov ebp, dword [ebp*4 + 0x4226a0]
and edi, 0x3f
xor ebp, dword [edi*4 + 0x4227a0]
mov edi, esi
shr edi, 0x10
and edi, 0x3f
xor ebp, dword [edi*4 + 0x4228a0]
mov edi, dword [eax + 0x78]
shr esi, 0x18
and esi, 0x3f
xor ebp, dword [esi*4 + 0x4229a0]
xor edx, ebp
xor edi, edx
mov ebp, edi
and ebp, 0x3f
mov esi, dword [ebp*4 + 0x4222a0]
mov ebp, edi
shr ebp, 8
and ebp, 0x3f
xor esi, dword [ebp*4 + 0x4223a0]
mov ebp, edi
shr ebp, 0x10
and ebp, 0x3f
shr edi, 0x18
xor esi, dword [ebp*4 + 0x4224a0]
and edi, 0x3f
mov ebp, edx
rol ebp, 0x1c
xor esi, dword [edi*4 + 0x4225a0]
xor ebp, dword [eax + 0x7c]
xor ebx, esi
mov eax, ebp
and eax, 0x3f
mov esi, dword [eax*4 + 0x4226a0]
mov eax, ebp
shr eax, 8
and eax, 0x3f
xor esi, dword [eax*4 + 0x4227a0]
mov eax, ebp
shr eax, 0x10
and eax, 0x3f
shr ebp, 0x18
xor esi, dword [eax*4 + 0x4228a0]
and ebp, 0x3f
mov eax, edx
xor esi, dword [ebp*4 + 0x4229a0]
xor ebx, esi
rol ebx, 0x1f
xor eax, ebx
and eax, 0xaaaaaaaa
xor ebx, eax
xor edx, eax
rol edx, 0x1f
mov eax, edx
shr eax, 8
xor eax, ebx
and eax, 0xff00ff
xor ebx, eax
shl eax, 8
xor edx, eax
mov eax, edx
shr eax, 2
xor eax, ebx
and eax, 0x33333333
xor ebx, eax
shl eax, 2
xor edx, eax
mov eax, ebx
shr eax, 0x10
xor eax, edx
movzx eax, ax
xor edx, eax
shl eax, 0x10
xor ebx, eax
mov eax, ebx
shr eax, 4
xor eax, edx
and eax, 0xf0f0f0f
xor edx, eax
shl eax, 4
xor ebx, eax
mov eax, ebx
shr eax, 0x18
mov byte [ecx], al
mov eax, ebx
shr eax, 0x10
mov byte [ecx + 1], al
mov eax, ebx
shr eax, 8
mov byte [ecx + 2], al
mov byte [ecx + 3], bl
mov ebx, edx
shr ebx, 0x18
mov byte [ecx + 4], bl
mov eax, edx
shr eax, 0x10
mov byte [ecx + 5], al
mov eax, edx
shr eax, 8
mov byte [ecx + 6], al
mov byte [ecx + 7], dl
pop ebx
pop ebp
pop esi
pop edi
ret