Function at 0x42f560
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff0
sub esp, 0x9f0
mov esi, esp
push 0x1000
call fcn.004088e0
add esp, 4
mov dword [esi + 0x734], 0xc796dcbe
mov dword [esi + 0x738], 0xf5da29d5
mov word [esi + 0x73c], 0xb190
mov dword [esi + 0x73e], 0
mov word [esi + 0x742], 0
xor ebx, ebx
xor ecx, ecx
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov edi, ebx
and edi, 0x1c
mov edx, ecx
xor edx, 0x1e
add edx, edi
xor dl, byte [esi + ecx + 0x734]
add dl, 0x6a
mov byte [esi + ecx + 0x734], dl
inc ecx
add ebx, 2
cmp ecx, 0x10
jne 0x42f5c0
mov dword [esi + 0x14], eax
mov eax, dword [0x4496a4]
mov dword [esi + 4], eax
mov dword [esi + 0x404], 0xcc26300e
mov dword [esi + 0x408], 0xe6ecf5f1
mov dword [esi + 0x40c], 0xeafcf0e5
mov dword [esi + 0x410], 0xe3fbe0f4
mov dword [esi + 0x414], 0x16372e
xor ecx, ecx
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
movzx eax, byte [esi + ecx + 0x404]
mov edi, ecx
and edi, 1
mov edx, ecx
or edx, 0x904c44c1
add edx, edi
mov edi, edx
and edi, eax
add edx, eax
add edi, edi
sub edx, edi
add dl, 0x3b
mov byte [esi + ecx + 0x404], dl
inc ecx
cmp ecx, 0x14
jne 0x42f630
mov eax, dword [str.6N4MYP__Feliz]
mov dword [esi + 8], eax
mov dword [esi + 0x9c], 0x1e50b1b3
mov dword [esi + 0xa0], 0x58588d25
mov dword [esi + 0xa4], 0x478a6327
mov dword [esi + 0xa8], 0x5366857b
mov dword [esi + 0xac], 0x4257542d
mov dword [esi + 0xb0], 0x48314a4a
mov dword [esi + 0xb4], 0x98a0424a
mov dword [esi + 0xb8], 0x3e3b7794
mov dword [esi + 0xbc], 0x474f628e
mov dword [esi + 0xc0], 0xb8ba6db8
mov dword [esi + 0xc4], 0x6b80bab7
mov dword [esi + 0xc8], 0xb2cbb184
mov dword [esi + 0xcc], 0xa2b7a0b5
mov dword [esi + 0xd0], 0xd3a3a6ae
mov dword [esi + 0xd4], 0xb8bbada8
mov dword [esi + 0xd8], 0xa0b4b2a9
mov dword [esi + 0xdc], 0x73674bdc
mov dword [esi + 0xe0], 0x9a9be0b8
mov dword [esi + 0xe4], 0x4b58aa89
mov dword [esi + 0xe8], 0x939fe8a6
mov dword [esi + 0xec], 0xb542ab9c
mov dword [esi + 0xf0], 0x4e5ef38b
mov dword [esi + 0xf4], 0x4b4859b5
mov dword [esi + 0xf8], 0x426cb946
mov dword [esi + 0xfc], 0xafaba550
mov word [esi + 0x100], 0x2dc6
mov byte [esi + 0x102], 0xe
mov dword [esi + 0x103], 0
xor edx, edx
xor edi, edi
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
movzx eax, byte [esi + edi + 0x9c]
mov ecx, edx
and ecx, 0xb8
mov ebx, edi
xor ebx, 0x5df34ddc
add ebx, ecx
xor ebx, eax
mov eax, ebx
mov ecx, 0x4c
sub ecx, ebx
and ebx, 1
and ecx, 0xfe
or ecx, ebx
not eax
and eax, 1
xor ecx, 0xfe
lea eax, [ecx + eax*2]
mov byte [esi + edi + 0x9c], al
inc edi
add edx, 2
cmp edi, 0x6b
jne 0x42f790
movzx edx, byte [esi + 0x9c]
mov edi, dword [esi + 0x14]
test dl, dl
je 0x42f80b
lea ebx, [esi + 0x9d]
mov edi, dword [esi + 0x14]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov byte [edi], dl
inc edi
movzx edx, byte [ebx]
inc ebx
test dl, dl
jne 0x42f800
mov byte [edi], 0
mov ecx, dword [esi + 8]
movzx edx, byte [ecx]
test dl, dl
je 0x42f82d
inc ecx
mov eax, dword [esi + 4]
nop
nop
nop
nop
mov byte [edi], dl
inc edi
movzx edx, byte [ecx]
inc ecx
test dl, dl
jne 0x42f820
jmp 0x42f830
mov eax, dword [esi + 4]
mov byte [edi], 0
movzx ecx, byte [esi + 0x404]
test cl, cl
je 0x42f85b
lea edx, [esi + 0x405]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov byte [edi], cl
inc edi
movzx ecx, byte [edx]
inc edx
test cl, cl
jne 0x42f850
mov byte [edi], 0
movzx ecx, byte [eax]
test cl, cl
je 0x42f87b
inc eax
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov byte [edi], cl
inc edi
movzx ecx, byte [eax]
inc eax
test cl, cl
jne 0x42f870
mov byte [edi], 0
movzx eax, byte [esi + 0x734]
test al, al
je 0x42f89b
lea ecx, [esi + 0x735]
nop
mov byte [edi], al
inc edi
movzx eax, byte [ecx]
inc ecx
test al, al
jne 0x42f890
mov byte [edi], 0
push 0
call fcn.004430f0
add esp, 4
xor ecx, ecx
test eax, eax
setne cl
mov ecx, dword [ecx*4 + 0x44c84c]
mov edx, 0x8684f561
xor edx, dword [0x44c854]
add ecx, edx
inc ecx
jmp ecx