Function at 0x42e7b0
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.0040c8e0
add esp, 4
mov dword [esi + 0x1c], eax
mov dword [esi + 0x734], 0x794a582a
mov dword [esi + 0x738], 0x53869b8f
mov word [esi + 0x73c], 0x334c
mov dword [esi + 0x73e], 0
mov word [esi + 0x742], 0
xor eax, eax
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov ecx, eax
xor ecx, 0xf8
mov edx, eax
or edx, 7
and ecx, edx
add ecx, edx
xor cl, byte [esi + eax + 0x734]
add cl, 0xdd
mov byte [esi + eax + 0x734], cl
inc eax
cmp eax, 0x10
jne 0x42e810
mov eax, dword [0x447764]
mov dword [esi + 8], eax
mov dword [esi + 0x404], 0x8ce690ce
mov dword [esi + 0x408], 0xa6ac5551
mov dword [esi + 0x40c], 0xaa5c50a5
mov dword [esi + 0x410], 0x635ba054
mov word [esi + 0x414], 0xd7ae
mov byte [esi + 0x416], 0xf6
mov dword [esi + 0x417], 0
xor ecx, ecx
xor edx, edx
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov ebx, ecx
and ebx, 0x22
mov edi, edx
xor edi, 0xb5384ad1
add edi, ebx
movzx ebx, byte [esi + edx + 0x404]
xor edi, ebx
add edi, 0x7e5e8e3f
mov ebx, edi
and ebx, 0x2b
xor edi, 0xab
lea ebx, [edi + ebx*2]
inc bl
mov byte [esi + edx + 0x404], bl
inc edx
add ecx, 2
cmp edx, 0x17
jne 0x42e890
mov ecx, dword [str.c2CoW0__1source]
mov dword [esi + 0x9c], 0x6a38e9e7
mov dword [esi + 0xa0], 0x6060156d
mov dword [esi + 0xa4], 0x431e376b
mov dword [esi + 0xa8], 0x6f3a1d37
mov dword [esi + 0xac], 0x46736c65
mov dword [esi + 0xb0], 0x70797676
mov dword [esi + 0xb4], 0x18767e
mov dword [esi + 0xb8], 0x7277230c
mov dword [esi + 0xbc], 0x437b5602
mov dword [esi + 0xc0], 0x40463540
mov dword [esi + 0xc4], 0x3f184e7b
mov dword [esi + 0xc8], 0x4e47491c
mov dword [esi + 0xcc], 0x6653784d
mov dword [esi + 0xd0], 0x5f6f525a
mov dword [esi + 0xd4], 0x3952526e
mov dword [esi + 0xd8], 0x567e2d19
mov dword [esi + 0xdc], 0x78175c5d
mov dword [esi + 0xe0], 0x2e7c556a
mov dword [esi + 0xe4], 0x79122519
mov dword [esi + 0xe8], 0x27150e5c
mov dword [esi + 0xec], 0x47776758
mov dword [esi + 0xf0], 0x7f7c757a
mov dword [esi + 0xf4], 0x1b4e7456
mov dword [esi + 0xf8], 0x4b6c6165
mov byte [esi + 0xfc], 0xa8
mov word [esi + 0x101], 0
mov dword [esi + 0xfd], 0
xor edx, edx
xor edi, edi
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov eax, edi
xor eax, 0x82
mov ebx, edx
and ebx, 0xfa
sub ebx, eax
xor bl, byte [esi + edi + 0x9c]
add bl, 0x8a
mov byte [esi + edi + 0x9c], bl
inc edi
add edx, 2
cmp edi, 0x67
jne 0x42e9f0
movzx edx, byte [esi + 0x9c]
mov eax, dword [esi + 0x1c]
mov ebx, eax
test dl, dl
je 0x42ea4b
lea edi, [esi + 0x9d]
mov ebx, eax
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov byte [ebx], dl
inc ebx
movzx edx, byte [edi]
inc edi
test dl, dl
jne 0x42ea40
mov byte [ebx], 0
movzx edx, byte [ecx]
test dl, dl
je 0x42ea6d
inc ecx
mov eax, dword [esi + 8]
nop
nop
nop
nop
nop
nop
nop
mov byte [ebx], dl
inc ebx
movzx edx, byte [ecx]
inc ecx
test dl, dl
jne 0x42ea60
jmp 0x42ea70
mov eax, dword [esi + 8]
mov byte [ebx], 0
movzx ecx, byte [esi + 0x404]
test cl, cl
je 0x42ea9b
lea edx, [esi + 0x405]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov byte [ebx], cl
inc ebx
movzx ecx, byte [edx]
inc edx
test cl, cl
jne 0x42ea90
mov byte [ebx], 0
movzx ecx, byte [eax]
test cl, cl
je 0x42eabb
inc eax
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov byte [ebx], cl
inc ebx
movzx ecx, byte [eax]
inc eax
test cl, cl
jne 0x42eab0
mov byte [ebx], 0
movzx eax, byte [esi + 0x734]
test al, al
je 0x42eadb
lea ecx, [esi + 0x735]
nop
mov byte [ebx], al
inc ebx
movzx eax, byte [ecx]
inc ecx
test al, al
jne 0x42ead0
mov byte [ebx], 0
push 0
call fcn.00441630
add esp, 4
xor ecx, ecx
test eax, eax
setne cl
jmp dword [ecx*4 + 0x44b42c]