Function at 0x20001e80
Capabilities:
Encrypt data using des

Disassembly:
sub esp, 0x100
mov eax, dword [0x20026464]
xor eax, esp
mov dword [esp + 0xfc], eax
mov eax, dword [esp + 0x104]
push ebx
push ebp
push esi
mov esi, dword [esp + 0x114]
push edi
mov dword [esp + 0x14], eax
xor ecx, ecx
lea esp, [esp]
movzx edx, byte [ecx + 0x20025080]
mov eax, edx
sar eax, 3
movzx eax, byte [eax + esi]
and edx, 7
test byte [edx*2 + section..data], al
setne dl
mov byte [esp + ecx + 0xd4], dl
movzx edx, byte [ecx + 0x20025081]
mov eax, edx
sar eax, 3
movzx eax, byte [eax + esi]
and edx, 7
test byte [edx*2 + section..data], al
setne dl
mov byte [esp + ecx + 0xd5], dl
movzx edx, byte [ecx + 0x20025082]
mov eax, edx
sar eax, 3
movzx eax, byte [eax + esi]
and edx, 7
test byte [edx*2 + section..data], al
setne dl
mov byte [esp + ecx + 0xd6], dl
movzx edx, byte [ecx + 0x20025083]
mov eax, edx
sar eax, 3
movzx eax, byte [eax + esi]
and edx, 7
test byte [edx*2 + section..data], al
setne dl
mov byte [esp + ecx + 0xd7], dl
add ecx, 4
cmp ecx, 0x38
jl 0x20001eb0
xor eax, eax
mov dword [esp + 0x10], eax
movzx ebp, byte [eax + 0x20025070]
lea ecx, [eax + eax]
lea ebx, [esp + ecx*4 + 0x20]
lea ecx, [esp + ecx*4 + 0x1c]
mov dword [ebx], 0
mov dword [esp + 0x18], ecx
mov dword [ecx], 0
xor esi, esi
lea edx, [ebp + 3]
lea ecx, [ebp + 2]
lea esp, [esp]
lea edi, [edx - 3]
cmp edi, 0x1c
jge 0x20001f91
mov al, byte [esp + ecx + 0xd2]
jmp 0x20001f98
mov al, byte [esp + edi + 0xb8]
lea edi, [edx - 2]
cmp edi, 0x1c
mov byte [esp + esi + 0x9c], al
jge 0x20001fb0
mov al, byte [esp + ecx + 0xd3]
jmp 0x20001fb7
mov al, byte [esp + edi + 0xb8]
cmp ecx, 0x1c
mov byte [esp + esi + 0x9d], al
jge 0x20001fcc
mov al, byte [esp + ecx + 0xd4]
jmp 0x20001fd3
mov al, byte [esp + ecx + 0xb8]
cmp edx, 0x1c
mov byte [esp + esi + 0x9e], al
jge 0x20001fe8
mov al, byte [esp + ecx + 0xd5]
jmp 0x20001fef
mov al, byte [esp + edx + 0xb8]
mov byte [esp + esi + 0x9f], al
add esi, 4
add ecx, 4
add edx, 4
cmp esi, 0x1c
jl 0x20001f80
mov edi, 0x1c
lea esi, [ebp + 0x1f]
lea ecx, [ebp + 0x1e]
lea edx, [esi - 3]
cmp edx, 0x38
jge 0x2000202b
mov dl, byte [esp + ecx + 0xd2]
mov byte [esp + edi + 0x9c], dl
jmp 0x20002039
mov al, byte [esp + edx + 0xb8]
mov byte [esp + edi + 0x9c], al
lea edx, [esi - 2]
cmp edx, 0x38
jge 0x20002051
mov dl, byte [esp + ecx + 0xd3]
mov byte [esp + edi + 0x9d], dl
jmp 0x2000205f
mov al, byte [esp + edx + 0xb8]
mov byte [esp + edi + 0x9d], al
cmp ecx, 0x38
jge 0x20002074
mov dl, byte [esp + ecx + 0xd4]
mov byte [esp + edi + 0x9e], dl
jmp 0x20002082
mov al, byte [esp + ecx + 0xb8]
mov byte [esp + edi + 0x9e], al
cmp esi, 0x38
jge 0x20002097
mov dl, byte [esp + ecx + 0xd5]
mov byte [esp + edi + 0x9f], dl
jmp 0x200020a5
mov al, byte [esp + esi + 0xb8]
mov byte [esp + edi + 0x9f], al
add edi, 4
add ecx, 4
add esi, 4
cmp edi, 0x38
jl 0x20002013
mov eax, dword [esp + 0x18]
xor ecx, ecx
lea ecx, [ecx]
movzx edx, byte [ecx + 0x200250b8]
cmp byte [esp + edx + 0x9c], 0
je 0x200020da
mov edx, dword [ecx*4 + 0x20025010]
or dword [eax], edx
movzx edx, byte [ecx + 0x200250d0]
cmp byte [esp + edx + 0x9c], 0
je 0x200020f4
mov edx, dword [ecx*4 + 0x20025010]
or dword [ebx], edx
movzx edx, byte [ecx + 0x200250b9]
cmp byte [esp + edx + 0x9c], 0
je 0x2000210e
mov edx, dword [ecx*4 + 0x20025014]
or dword [eax], edx
movzx edx, byte [ecx + 0x200250d1]
cmp byte [esp + edx + 0x9c], 0
je 0x20002128
mov edx, dword [ecx*4 + 0x20025014]
or dword [ebx], edx
movzx edx, byte [ecx + 0x200250ba]
cmp byte [esp + edx + 0x9c], 0
je 0x20002142
mov edx, dword [ecx*4 + 0x20025018]
or dword [eax], edx
movzx edx, byte [ecx + 0x200250d2]
cmp byte [esp + edx + 0x9c], 0
je 0x2000215c
mov edx, dword [ecx*4 + 0x20025018]
or dword [ebx], edx
movzx edx, byte [ecx + 0x200250bb]
cmp byte [esp + edx + 0x9c], 0
je 0x20002176
mov edx, dword [ecx*4 + 0x2002501c]
or dword [eax], edx
movzx edx, byte [ecx + 0x200250d3]
cmp byte [esp + edx + 0x9c], 0
je 0x20002190
mov edx, dword [ecx*4 + 0x2002501c]
or dword [ebx], edx
movzx edx, byte [ecx + 0x200250bc]
cmp byte [esp + edx + 0x9c], 0
je 0x200021aa
mov edx, dword [ecx*4 + 0x20025020]
or dword [eax], edx
movzx edx, byte [ecx + 0x200250d4]
cmp byte [esp + edx + 0x9c], 0
je 0x200021c4
mov edx, dword [ecx*4 + 0x20025020]
or dword [ebx], edx
movzx edx, byte [ecx + 0x200250bd]
cmp byte [esp + edx + 0x9c], 0
je 0x200021de
mov edx, dword [ecx*4 + 0x20025024]
or dword [eax], edx
movzx edx, byte [ecx + 0x200250d5]
cmp byte [esp + edx + 0x9c], 0
je 0x200021f8
mov edx, dword [ecx*4 + 0x20025024]
or dword [ebx], edx
add ecx, 6
cmp ecx, 0x18
jl 0x200020c0
mov eax, dword [esp + 0x10]
inc eax
cmp eax, 0x10
mov dword [esp + 0x10], eax
jl 0x20001f52
mov edx, dword [esp + 0x11c]
mov eax, dword [esp + 0x14]
lea ecx, [esp + 0x1c]
call fcn.20001110
push 0x38
lea eax, [esp + 0xd8]
push 0
push eax
call section..text
push 0x38
lea ecx, [esp + 0xac]
push 0
push ecx
call section..text
push 0x80
lea edx, [esp + 0x38]
push 0
push edx
call section..text
mov ecx, dword [esp + 0x130]
add esp, 0x24
pop edi
pop esi
pop ebp
pop ebx
xor ecx, esp
call fcn.20012ef0
add esp, 0x100
ret