Function at 0x49cb86
Capabilities:
Encrypt data using des

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x88
mov eax, dword [0x4f1410]
xor eax, dword [ebp + 4]
mov dword [ebp - 4], eax
push esi
cmp dword [0x4f55a0], 2
jne 0x49cc00
and dword [ebp - 0x40], 0
jmp 0x49cbb1
mov eax, dword [ebp - 0x40]
inc eax
mov dword [ebp - 0x40], eax
cmp dword [ebp - 0x40], 0x10
jge 0x49cbfb
and dword [ebp - 0x84], 0
jmp 0x49cbcd
mov eax, dword [ebp - 0x84]
inc eax
mov dword [ebp - 0x84], eax
cmp dword [ebp - 0x84], 8
jge 0x49cbf9
mov eax, dword [ebp - 0x40]
mov ecx, dword [0x4f55a4]
lea eax, [ecx + eax*8]
mov ecx, dword [ebp - 0x84]
mov edx, dword [ebp + 8]
mov dl, byte [edx]
mov byte [eax + ecx], dl
mov eax, dword [ebp + 8]
inc eax
mov dword [ebp + 8], eax
jmp 0x49cbc0
jmp 0x49cbaa
jmp 0x49cdd5
and dword [ebp - 0x40], 0
jmp 0x49cc0d
mov eax, dword [ebp - 0x40]
inc eax
mov dword [ebp - 0x40], eax
cmp dword [ebp - 0x40], 0x10
jge 0x49cc4c
and dword [ebp - 0x84], 0
jmp 0x49cc29
mov eax, dword [ebp - 0x84]
inc eax
mov dword [ebp - 0x84], eax
cmp dword [ebp - 0x84], 8
jge 0x49cc4a
mov eax, dword [ebp - 0x40]
mov ecx, dword [0x4f55a4]
lea eax, [ecx + eax*8]
mov ecx, dword [ebp - 0x84]
and byte [eax + ecx], 0
jmp 0x49cc1c
jmp 0x49cc06
and dword [ebp - 0x84], 0
jmp 0x49cc62
mov eax, dword [ebp - 0x84]
inc eax
mov dword [ebp - 0x84], eax
cmp dword [ebp - 0x84], 0x38
jge 0x49ccae
mov eax, dword [ebp - 0x84]
movsx eax, byte [eax + str.91__]
dec eax
mov dword [ebp - 0x7c], eax
mov eax, dword [ebp - 0x7c]
and eax, 7
mov dword [ebp - 0x80], eax
mov eax, dword [ebp - 0x7c]
sar eax, 3
mov ecx, dword [ebp + 8]
movsx eax, byte [ecx + eax]
mov ecx, dword [ebp - 0x80]
and eax, dword [ecx*4 + 0x4f07c0]
neg eax
sbb eax, eax
neg eax
mov ecx, dword [ebp - 0x84]
mov byte [ebp + ecx - 0x3c], al
jmp 0x49cc55
and dword [ebp - 0x40], 0
jmp 0x49ccbb
mov eax, dword [ebp - 0x40]
inc eax
mov dword [ebp - 0x40], eax
cmp dword [ebp - 0x40], 0x10
jge 0x49cdd5
and dword [ebp - 0x84], 0
jmp 0x49ccdb
mov eax, dword [ebp - 0x84]
inc eax
mov dword [ebp - 0x84], eax
cmp dword [ebp - 0x84], 0x38
jge 0x49cd3e
mov eax, dword [ebp - 0x40]
movsx eax, byte [eax + 0x4f0560]
mov ecx, dword [ebp - 0x84]
add ecx, eax
mov dword [ebp - 0x7c], ecx
xor eax, eax
cmp dword [ebp - 0x84], 0x1c
setge al
dec eax
and eax, 0xffffffe4
add eax, 0x38
cmp dword [ebp - 0x7c], eax
jge 0x49cd1c
mov eax, dword [ebp - 0x7c]
mov dword [ebp - 0x88], eax
jmp 0x49cd28
mov eax, dword [ebp - 0x7c]
sub eax, 0x1c
mov dword [ebp - 0x88], eax
mov eax, dword [ebp - 0x84]
mov ecx, dword [ebp - 0x88]
mov cl, byte [ebp + ecx - 0x3c]
mov byte [ebp + eax - 0x78], cl
jmp 0x49ccce
and dword [ebp - 0x84], 0
jmp 0x49cd54
mov eax, dword [ebp - 0x84]
inc eax
mov dword [ebp - 0x84], eax
cmp dword [ebp - 0x84], 0x30
jge 0x49cdd0
mov eax, dword [ebp - 0x84]
movsx eax, byte [eax + 0x4f0570]
movsx eax, byte [ebp + eax - 0x79]
test eax, eax
je 0x49cdcb
mov eax, dword [ebp - 0x84]
cdq
push 6
pop ecx
idiv ecx
mov dword [ebp - 0x7c], edx
mov eax, dword [ebp - 0x40]
mov ecx, dword [0x4f55a4]
lea ecx, [ecx + eax*8]
mov eax, dword [ebp - 0x84]
cdq
push 6
pop esi
idiv esi
mov edx, dword [ebp - 0x7c]
mov edx, dword [edx*4 + 0x4f07c0]
sar edx, 2
movzx edx, dl
movzx ecx, byte [ecx + eax]
or ecx, edx
mov eax, dword [ebp - 0x84]
cdq
push 6
pop esi
idiv esi
mov edx, dword [ebp - 0x40]
mov esi, dword [0x4f55a4]
lea edx, [esi + edx*8]
mov byte [edx + eax], cl
jmp 0x49cd47
jmp 0x49ccb4
mov ecx, dword [ebp - 4]
xor ecx, dword [ebp + 4]
call fcn.004b3f19
pop esi
leave
ret