Function at 0xdd7077
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x44
push ebx
push esi
push edi
push 0x16
xor esi, esi
mov dword [ebp - 0x18], 0x58
mov bl, cl
mov dword [ebp - 0x14], 0xffffff93
pop ecx
mov eax, esi
add ecx, dword [ebp + eax*4 - 0x18]
inc eax
cmp eax, 2
jl 0xdd7097
mov edi, dword [0xe1a204]
mov eax, esi
push 0x5b
mov dword [ebp - 0x14], ecx
pop ecx
mov dword [ebp - 8], ecx
mov dword [ebp - 0x2c], 0x4b
mov dword [ebp - 0x28], 0x33
mov dword [ebp - 0x24], 0x1b
mov dword [ebp - 0x20], 0xffffff0d
mov dword [ebp - 0xc], eax
push 0x46
mov dword [ebp - 4], 0x1fd7
mov edx, 0xdd1130
pop esi
add dword [ebp - 4], esi
inc edx
cmp dword [ebp - 4], 0x21d7
ja 0xdd70f6
movsx esi, byte [edx]
test esi, esi
jne 0xdd70e0
jmp 0xdd7107
and edi, 0x831d51d1
call fcn.00dd4f60
mov eax, dword [ebp - 0xc]
mov ecx, dword [ebp - 8]
add ecx, dword [ebp + eax*4 - 0x2c]
and edi, 0x7b859567
xor edi, 0x704e0bc1
mov dword [ebp - 8], ecx
inc eax
mov dword [ebp - 0xc], eax
cmp eax, 4
jl 0xdd70d1
movzx eax, bl
push 0
mov dword [0xe1a204], edi
pop esi
cmp eax, dword [ebp - 0x14]
jne 0xdd7193
push 0x31
pop ecx
mov dword [ebp - 0x1c], 0x27
mov eax, esi
mov dword [ebp - 0x18], 0x1e
mov dword [ebp - 0x14], 0xffffff8a
add ecx, dword [ebp + eax*4 - 0x1c]
inc eax
cmp eax, 3
jl 0xdd714e
push 0xc
pop eax
mov dword [ebp - 0x30], 0x1c
mov dword [ebp - 0x2c], 0x5f
mov dword [ebp - 0x28], 0x10
mov dword [ebp - 0x24], 6
mov dword [ebp - 0x20], 0xffffff7a
sub eax, dword [ebp + esi*4 - 0x30]
inc esi
cmp esi, 5
jl 0xdd717e
mov byte [ecx + 0xe1a03c], al
jmp 0xdd72db
cmp eax, ecx
jle 0xdd72db
push 0x11
pop ecx
mov dword [ebp - 0x18], 0x49
mov eax, esi
mov dword [ebp - 0x14], 0xffffffa6
add ecx, dword [ebp + eax*4 - 0x18]
inc eax
cmp eax, 2
jl 0xdd71ae
push 0x18
pop edx
mov dword [ebp - 0x1c], 0x43
mov eax, esi
mov dword [ebp - 0x18], 0x48
mov dword [ebp - 0x14], 0xffffff8b
sub edx, dword [ebp + eax*4 - 0x1c]
inc eax
cmp eax, 3
jl 0xdd71d2
push 0x1d
mov eax, esi
mov dword [ebp - 0x1c], 0x42
mov dword [ebp - 0x18], 0x5b
mov dword [ebp - 0x14], 0xffffff47
pop esi
add esi, dword [ebp + eax*4 - 0x1c]
xor edi, 0xf293ed6d
inc eax
cmp eax, 3
jl 0xdd71f6
dec bl
mov dword [0xe1a204], edi
mov edi, esi
movzx eax, bl
mov dword [ebp - 0x14], esi
mov byte [ecx + 0xe1a03c], dl
push 0
pop esi
cmp eax, edi
jle 0xdd72db
mov dword [ebp - 0x2c], 0x2c
mov dword [ebp - 0x28], 0x3c
mov dword [ebp - 0x24], 0x1a
mov dword [ebp - 0x20], 0xffffff44
movups xmm3, xmmword [ebp - 0x2c]
mov dword [ebp - 0x10], 0x62
mov dword [ebp - 0xc], 0xffffff47
movups xmm1, xmm3
mov dword [ebp - 0x44], 0x1c
movaps xmm0, xmm1
mov dword [ebp - 0x40], 0x55
psrldq xmm0, 8
mov ecx, esi
paddd xmm1, xmm0
mov dword [ebp - 0x3c], 0x4f
movups xmm0, xmm1
mov dword [ebp - 0x38], 0x5a
psrldq xmm0, 4
paddd xmm1, xmm0
mov dword [ebp - 0x34], 0xfffffee6
movd eax, xmm1
add eax, 0x3a
mov dword [ebp - 0x14], eax
mov eax, esi
sub ecx, dword [ebp + eax*4 - 0x44]
inc eax
cmp eax, 5
jl 0xdd72a1
push 0x59
pop edx
mov eax, esi
add edx, dword [ebp + eax*4 - 0x10]
inc eax
cmp eax, 2
jl 0xdd72b0
mov cl, byte [ecx + 0xe1a03c]
call fcn.00dd5626
mov ecx, dword [ebp - 0x14]
dec bl
mov byte [ecx + 0xe1a03c], al
movzx eax, bl
cmp eax, edi
jg 0xdd7255
pop edi
pop esi
mov eax, 0xe1a03c
pop ebx
leave
ret