Function at 0x10007730
Capabilities:
Encrypt data using des

Disassembly:
sub esp, 0xc
xor eax, eax
jmp 0x10007550
movzx ecx, byte [eax + str.80_]
movzx edx, byte [ecx + 0x10047d00]
movzx ecx, byte [eax + 0x10037ef9]
mov byte [eax + 0x100480a0], dl
movzx edx, byte [ecx + 0x10047d00]
movzx ecx, byte [eax + 0x10037efa]
mov byte [eax + 0x100480a1], dl
movzx edx, byte [ecx + 0x10047d00]
movzx ecx, byte [eax + 0x10037efb]
mov byte [eax + 0x100480a2], dl
movzx edx, byte [ecx + 0x10047d00]
mov byte [eax + 0x100480a3], dl
add eax, 4
cmp eax, 0x38
jl 0x10007550
push ebx
push ebp
push esi
xor ebp, ebp
push edi
mov dword [esp + 0x14], ebp
mov edi, 0x10047da1
jmp 0x100075c0
movzx edx, byte [ebp + 0x10037ee8]
movzx eax, byte [0x100480a1]
movzx ebx, byte [0x100480a0]
mov ecx, edx
neg ecx
mov dword [esp + 0x10], eax
lea esi, [ecx + 0x1c]
xor eax, eax
test esi, esi
mov dword [esp + 0x18], ebx
jle 0x1000760b
lea ebp, [edx + 0x100480a0]
mov bl, byte [ebp]
mov byte [eax + 0x100480a0], bl
add eax, 1
add ebp, 1
cmp eax, esi
jl 0x100075f0
mov ebx, dword [esp + 0x18]
mov ebp, dword [esp + 0x14]
cmp byte [ebp + 0x10037ee8], 2
jne 0x10007625
mov al, byte [esp + 0x10]
mov byte [0x100480ba], bl
mov byte [0x100480bb], al
jmp 0x1000762b
mov byte [0x100480bb], bl
movzx eax, byte [0x100480bd]
movzx ebx, byte [0x100480bc]
mov dword [esp + 0x10], eax
mov eax, 0x1c
add ecx, 0x38
cmp ecx, eax
jle 0x10007662
lea esi, [edx + 0x100480bc]
nop
mov dl, byte [esi]
mov byte [eax + 0x100480a0], dl
add eax, 1
add esi, 1
cmp eax, ecx
jl 0x10007650
cmp byte [ebp + 0x10037ee8], 2
jne 0x1000767c
mov al, byte [esp + 0x10]
mov byte [0x100480d6], bl
mov byte [0x100480d7], al
jmp 0x10007682
mov byte [0x100480d7], bl
xor eax, eax
jmp 0x10007690
movzx ecx, byte [eax + 0x10037f30]
movzx edx, byte [ecx + 0x100480a0]
movzx ecx, byte [eax + 0x10037f31]
mov byte [edi + eax - 1], dl
movzx edx, byte [ecx + 0x100480a0]
movzx ecx, byte [eax + 0x10037f32]
mov byte [edi + eax], dl
movzx edx, byte [ecx + 0x100480a0]
movzx ecx, byte [eax + 0x10037f33]
mov byte [edi + eax + 1], dl
movzx edx, byte [ecx + 0x100480a0]
movzx ecx, byte [eax + 0x10037f34]
mov byte [edi + eax + 2], dl
movzx edx, byte [ecx + 0x100480a0]
movzx ecx, byte [eax + 0x10037f35]
mov byte [edi + eax + 3], dl
movzx edx, byte [ecx + 0x100480a0]
mov byte [edi + eax + 4], dl
add eax, 6
cmp eax, 0x30
jl 0x10007690
add ebp, 1
add edi, 0x30
cmp edi, 0x100480a1
mov dword [esp + 0x14], ebp
jl 0x100075c0
pop edi
pop esi
pop ebp
pop ebx
add esp, 0xc
ret
push ecx
push ebx
push ebp
push esi
mov eax, 1
mov edx, 0x10047d00
xor ebp, ebp
sub edx, eax
push edi
mov edi, dword [esp + 0x18]
mov esi, 3
mov ecx, 2
mov dword [esp + 0x10], edx
jmp 0x10007760
mov edx, ebp
and edx, 7
movzx edx, byte [edx + 0x10038230]
mov ebx, ebp
sar ebx, 3
test byte [ebx + edi], dl
mov ebx, dword [esp + 0x10]
setne dl
mov byte [ebx + eax], dl
mov edx, eax
and edx, 7
movzx edx, byte [edx + 0x10038230]
mov ebx, eax
sar ebx, 3
test byte [ebx + edi], dl
mov ebx, ecx
setne dl
mov byte [eax + 0x10047d00], dl
mov edx, ecx
and edx, 7
movzx edx, byte [edx + 0x10038230]
sar ebx, 3
test byte [ebx + edi], dl
mov ebx, esi
setne dl
mov byte [ecx + 0x10047d00], dl
mov edx, esi
and edx, 7
movzx edx, byte [edx + 0x10038230]
sar ebx, 3
test byte [ebx + edi], dl
setne dl
mov byte [esi + 0x10047d00], dl
add eax, 4
add ebp, 4
add ecx, 4
add esi, 4
cmp eax, 0x41
jl 0x10007760
pop edi
pop esi
pop ebp
pop ebx
add esp, 4
jmp 0x10007540