Function at 0x42c970
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.00408730
add esp, 4
mov dword [esi + 0x734], 0xd106f01e
mov dword [esi + 0x738], 0x17baafc3
mov dword [esi + 0x73c], 0xdffc
xor edx, edx
nop
nop
mov ecx, edx
add cl, 0x79
xor cl, byte [esi + edx + 0x734]
add cl, 0xa3
mov byte [esi + edx + 0x734], cl
inc edx
cmp edx, 0xc
jne 0x42c9b0
mov dword [esi + 0x10], eax
mov eax, dword [0x445744]
mov dword [esi], eax
mov dword [esi + 0x404], 0xa8968c6e
mov dword [esi + 0x408], 0xcac8c7c7
mov dword [esi + 0x40c], 0xeec0fccb
mov dword [esi + 0x410], 0xf9f9f4c0
mov dword [esi + 0x414], 0x46a98e
xor ecx, ecx
xor edx, edx
nop
nop
nop
nop
mov edi, ecx
and edi, 0x2c
mov eax, edx
xor eax, 0x16
add eax, edi
xor al, byte [esi + edx + 0x404]
add al, 0x92
mov byte [esi + edx + 0x404], al
inc edx
add ecx, 2
cmp edx, 0x14
jne 0x42ca10
mov eax, dword [str.yau6Na__7661518663]
mov dword [esi + 4], eax
mov dword [esi + 0x9c], 0xe507173
mov dword [esi + 0xa0], 0x8087d05
mov dword [esi + 0xa4], 0x277a4307
mov dword [esi + 0xa8], 0x1346654b
mov dword [esi + 0xac], 0x2217141d
mov dword [esi + 0xb0], 0x18111a1a
mov dword [esi + 0xb4], 0x6880221a
mov dword [esi + 0xb8], 0xeeebb794
mov dword [esi + 0xbc], 0xe7dfc29e
mov dword [esi + 0xc0], 0xe8ea9de8
mov dword [esi + 0xc4], 0x9ba0ead7
mov dword [esi + 0xc8], 0xf2fbf1a4
mov dword [esi + 0xcc], 0xc2f7c0f5
mov dword [esi + 0xd0], 0xf3c3c6fe
mov dword [esi + 0xd4], 0xc8cbfdf8
mov dword [esi + 0xd8], 0xc0f4f2f9
mov dword [esi + 0xdc], 0xb3875bcc
mov dword [esi + 0xe0], 0xcacbc0e8
mov dword [esi + 0xe4], 0xbb889af9
mov dword [esi + 0xe8], 0xd3efd886
mov dword [esi + 0xec], 0xf5a29bec
mov dword [esi + 0xf0], 0x9eaed3db
mov dword [esi + 0xf4], 0x9b98a995
mov dword [esi + 0xf8], 0xe23ce9e6
mov dword [esi + 0xfc], 0xfffb85d0
mov word [esi + 0x100], 0xdde6
mov byte [esi + 0x102], 0x3e
mov byte [esi + 0x105], 0
mov word [esi + 0x103], 0
xor ecx, ecx
xor eax, eax
nop
nop
nop
nop
nop
movzx ebx, byte [esi + eax + 0x9c]
mov edx, ecx
and edx, 0xc8
mov edi, eax
xor edi, 0x834343e4
add edi, edx
xor edi, ebx
lea ebx, [edi*2 - 0x20a0a6ea]
add edi, 0x6fafac8b
and ebx, 2
mov edx, ebx
and edx, edi
or ebx, edi
xor ebx, 1
add ebx, edx
mov byte [esi + eax + 0x9c], bl
inc eax
add ecx, 2
cmp eax, 0x6a
jne 0x42cb60
movzx edx, byte [esi + 0x9c]
mov eax, dword [esi + 0x10]
mov ecx, eax
test dl, dl
je 0x42cbcb
lea edi, [esi + 0x9d]
mov ecx, eax
nop
mov byte [ecx], dl
inc ecx
movzx edx, byte [edi]
inc edi
test dl, dl
jne 0x42cbc0
mov byte [ecx], 0
mov ebx, dword [esi + 4]
movzx edx, byte [ebx]
test dl, dl
mov edi, ecx
je 0x42cbed
inc ebx
mov eax, dword [esi]
nop
nop
nop
mov byte [edi], dl
inc edi
movzx edx, byte [ebx]
inc ebx
test dl, dl
jne 0x42cbe0
jmp 0x42cbef
mov eax, dword [esi]
mov byte [edi], 0
movzx ecx, byte [esi + 0x404]
test cl, cl
je 0x42cc1b
lea edx, [esi + 0x405]
nop
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 0x42cc10
mov byte [edi], 0
movzx ecx, byte [eax]
test cl, cl
je 0x42cc3b
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 0x42cc30
mov byte [edi], 0
movzx eax, byte [esi + 0x734]
test al, al
je 0x42cc5b
lea ecx, [esi + 0x735]
nop
mov byte [edi], al
inc edi
movzx eax, byte [ecx]
inc ecx
test al, al
jne 0x42cc50
mov dword [esi + 4], edi
mov byte [edi], 0
push 0
call fcn.0043f110
add esp, 4
xor ecx, ecx
test eax, eax
setne cl
mov ecx, dword [ecx*4 + 0x44841c]
mov edx, dword [0x448424]
mov edi, edx
or edi, 0x37bceea1
not edx
or edx, 0xc843115e
and edx, edi
add ecx, edx
inc ecx
jmp ecx