Function at 0x4de760
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
sub esp, 0xb0
mov eax, dword [0x592830]
xor eax, ebp
mov dword [ebp - 8], eax
push ebx
mov ebx, dword [ebp + 8]
push esi
push edi
push ecx
mov esi, ecx
push ebx
lea ecx, [ebp - 0x88]
mov edi, edx
mov dword [ebp - 0xac], ebx
call fcn.004de6e0
lea edx, [ebp - 0xa8]
lea ecx, [ebp - 0x88]
call fcn.004de560
lea edx, [ebp - 0xa8]
mov ecx, esi
call fcn.004da790
lea eax, [ebp - 0x28]
push eax
mov edx, edi
mov ecx, esi
call fcn.004d9410
add esp, 0xc
lea edx, [ebp - 0x48]
mov ecx, edi
call fcn.004de5c0
lea edx, [ebp - 0x68]
mov ecx, ebx
call fcn.004de5c0
lea edx, [ebp - 0x68]
mov ecx, edx
call fcn.004de5c0
push ecx
lea eax, [ebp - 0x68]
push eax
lea edx, [ebp - 0x48]
lea ecx, [ebp - 0x88]
call fcn.004de6e0
lea edx, [ebp - 0xa8]
lea ecx, [ebp - 0x88]
call fcn.004de560
lea edx, [ebp - 0xa8]
mov ecx, esi
call fcn.004da790
lea eax, [ebp - 0x20]
push eax
lea edx, [edi + 8]
mov ecx, esi
call fcn.004d9410
lea edx, [ebp - 0x48]
add esp, 0xc
mov ecx, edx
call fcn.004de5c0
not byte [ebp - 0x29]
not byte [ebp - 0x2b]
not byte [ebp - 0x2c]
not byte [ebp - 0x30]
not byte [ebp - 0x31]
not byte [ebp - 0x34]
not byte [ebp - 0x36]
not byte [ebp - 0x37]
not byte [ebp - 0x3a]
not byte [ebp - 0x3c]
not byte [ebp - 0x3e]
not byte [ebp - 0x40]
not byte [ebp - 0x41]
not byte [ebp - 0x43]
not byte [ebp - 0x45]
not byte [ebp - 0x47]
lea edx, [ebp - 0x68]
mov ecx, edx
call fcn.004de5c0
lea edx, [ebp - 0x68]
mov ecx, edx
call fcn.004de5c0
push ecx
lea eax, [ebp - 0x68]
push eax
lea edx, [ebp - 0x48]
lea ecx, [ebp - 0x88]
call fcn.004de6e0
lea edx, [ebp - 0xa8]
lea ecx, [ebp - 0x88]
call fcn.004de560
lea edx, [ebp - 0xa8]
mov ecx, esi
call fcn.004da790
lea eax, [ebp - 0x18]
push eax
lea edx, [edi + 0x10]
mov ecx, esi
call fcn.004d9410
lea edx, [ebp - 0x48]
add esp, 0xc
mov ecx, edx
call fcn.004de5c0
lea edx, [ebp - 0x68]
mov ecx, edx
call fcn.004de5c0
lea edx, [ebp - 0x68]
mov ecx, edx
call fcn.004de5c0
push ecx
lea eax, [ebp - 0x68]
push eax
lea edx, [ebp - 0x48]
lea ecx, [ebp - 0x88]
call fcn.004de6e0
lea edx, [ebp - 0xa8]
lea ecx, [ebp - 0x88]
call fcn.004de560
lea edx, [ebp - 0xa8]
mov ecx, esi
call fcn.004da790
lea eax, [ebp - 0x10]
push eax
lea edx, [edi + 0x18]
mov ecx, esi
call fcn.004d9410
mov al, byte [ebp - 9]
mov bl, byte [ebp - 0xa]
add esp, 0xc
mov esi, 0xc
lea esp, [esp]
xor al, byte [ebp - 0xf]
xor bl, byte [ebp - 0x10]
xor al, byte [ebp - 0x21]
xor bl, byte [ebp - 0x22]
xor al, byte [ebp - 0x23]
xor bl, byte [ebp - 0x24]
xor al, byte [ebp - 0x25]
xor bl, byte [ebp - 0x26]
xor al, byte [ebp - 0x27]
xor bl, byte [ebp - 0x28]
movzx ecx, al
movzx eax, bl
shl cx, 8
or cx, ax
push 0x1e
lea eax, [ebp - 0x26]
push eax
lea eax, [ebp - 0x28]
push eax
movzx ebx, cx
call fcn.004ebce0
mov eax, ebx
shr eax, 8
add esp, 0xc
mov byte [ebp - 0xa], bl
mov byte [ebp - 9], al
dec esi
jne 0x4de920
push ecx
push dword [ebp - 0xac]
lea edx, [ebp - 0x28]
mov ecx, edx
call fcn.004de6e0
movzx eax, byte [ebp - 9]
xor al, byte [ebp - 0xf]
push 0x1e
xor al, byte [ebp - 0x21]
xor al, byte [ebp - 0x23]
xor al, byte [ebp - 0x25]
xor al, byte [ebp - 0x27]
movzx ecx, al
movzx eax, byte [ebp - 0xa]
xor al, byte [ebp - 0x10]
shl cx, 8
xor al, byte [ebp - 0x22]
xor al, byte [ebp - 0x24]
xor al, byte [ebp - 0x26]
xor al, byte [ebp - 0x28]
movzx eax, al
or cx, ax
lea eax, [ebp - 0x26]
push eax
lea eax, [ebp - 0x28]
push eax
movzx ebx, cx
call fcn.004ebce0
mov byte [ebp - 0xa], bl
add esp, 0x10
lea edx, [ebp - 0x28]
shr ebx, 8
push edi
mov ecx, edx
mov byte [ebp - 9], bl
call fcn.004de6e0
mov al, byte [ebp - 9]
mov bl, byte [ebp - 0xa]
add esp, 8
mov esi, 0x3d
lea esp, [esp]
xor al, byte [ebp - 0xf]
xor bl, byte [ebp - 0x10]
xor al, byte [ebp - 0x21]
xor bl, byte [ebp - 0x22]
xor al, byte [ebp - 0x23]
xor bl, byte [ebp - 0x24]
xor al, byte [ebp - 0x25]
xor bl, byte [ebp - 0x26]
xor al, byte [ebp - 0x27]
xor bl, byte [ebp - 0x28]
movzx ecx, al
movzx eax, bl
shl cx, 8
or cx, ax
push 0x1e
lea eax, [ebp - 0x26]
push eax
lea eax, [ebp - 0x28]
push eax
movzx ebx, cx
call fcn.004ebce0
mov eax, ebx
shr eax, 8
add esp, 0xc
mov byte [ebp - 0xa], bl
mov byte [ebp - 9], al
dec esi
jne 0x4de9f0
movq xmm0, qword [ebp - 0x28]
mov ecx, dword [ebp - 8]
movq qword [edi], xmm0
movq xmm0, qword [ebp - 0x20]
movq qword [edi + 8], xmm0
movq xmm0, qword [ebp - 0x18]
movq qword [edi + 0x10], xmm0
movq xmm0, qword [ebp - 0x10]
movq qword [edi + 0x18], xmm0
pop edi
lea eax, [esi + 1]
pop esi
xor ecx, ebp
pop ebx
call fcn.004ebb9e
mov esp, ebp
pop ebp
ret