Function at 0x42d5b0
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.004082b0
add esp, 4
mov dword [esi + 0x3c], eax
mov dword [esi + 0x734], 0xd382bc9a
mov dword [esi + 0x738], 0xadfef1c5
mov word [esi + 0x73c], 0x59b8
mov dword [esi + 0x73e], 0
mov byte [esi + 0x742], 0
xor eax, eax
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov ecx, eax
add cl, 0x18
xor cl, byte [esi + eax + 0x734]
add cl, 0x88
mov byte [esi + eax + 0x734], cl
inc eax
cmp eax, 0xf
jne 0x42d610
mov eax, dword [0x4455e4]
mov dword [esi + 8], eax
mov dword [esi + 0x41c], 0xd42a381a
mov dword [esi + 0x420], 0xf2fcf5f9
mov dword [esi + 0x424], 0xfe8c88fd
mov dword [esi + 0x428], 0xefefe88c
mov dword [esi + 0x42c], 0x1a3bda
xor eax, eax
xor ebx, ebx
nop
nop
nop
nop
nop
nop
mov dword [esi + 4], eax
mov ecx, eax
and cl, 1
mov eax, ecx
or al, 2
mov edx, ebx
shr dl, 1
and dl, 1
mul dl
mov edx, eax
mov ah, bl
not ah
and ah, 2
mov al, cl
mul ah
add dl, dl
mov ecx, dword [esi + 4]
and cl, 3
add cl, cl
sub dl, cl
add dl, 0xc2
movzx ecx, dl
movzx eax, al
add eax, ebx
add eax, ecx
inc al
xor al, byte [esi + ebx + 0x41c]
add al, 0x31
mov byte [esi + ebx + 0x41c], al
mov eax, dword [esi + 4]
inc ebx
inc al
cmp ebx, 0x14
jne 0x42d670
mov eax, dword [str.yJEcaG__tres11]
mov dword [esi + 4], eax
mov dword [esi + 0x9c], 0xba681907
mov dword [esi + 0xa0], 0x404015bd
mov dword [esi + 0xa4], 0x236e77bb
mov dword [esi + 0xa8], 0x3f0a6d17
mov dword [esi + 0xac], 0x26333cc5
mov dword [esi + 0xb0], 0x30c93636
mov dword [esi + 0xb4], 0x604836ce
mov dword [esi + 0xb8], 0xd2d7037c
mov dword [esi + 0xbc], 0x232b3662
mov dword [esi + 0xc0], 0x20267520
mov dword [esi + 0xc4], 0x4f28de2b
mov dword [esi + 0xc8], 0x1ee7192c
mov dword [esi + 0xcc], 0x613081d
mov dword [esi + 0xd0], 0xef1f12ea
mov dword [esi + 0xd4], 0x1f1510
mov dword [esi + 0xd8], 0x8041e01
mov dword [esi + 0xdc], 0x57436ff4
mov dword [esi + 0xe0], 0x607f820
mov dword [esi + 0xe4], 0xafc02e11
mov dword [esi + 0xe8], 0xfff300d2
mov dword [esi + 0xec], 0xd5a6cff4
mov dword [esi + 0xf0], 0xcda20ff7
mov dword [esi + 0xf4], 0xafd0a1b1
mov dword [esi + 0xf8], 0xae8cd1d2
mov dword [esi + 0xfc], 0xcbcfcdb8
mov dword [esi + 0x100], 0x92b5d2
mov ecx, 6
mov edx, 0x8a5152c9
nop
nop
lea eax, [edx + 0x75aeae00]
mov edi, eax
and edi, 0xf9
mov ebx, ecx
and ebx, 6
or ebx, edi
movzx edi, byte [esi + ecx + 0x96]
xor ebx, 6
or ebx, eax
mov eax, edi
not eax
or ebx, eax
mov eax, edx
or eax, edi
add ebx, edi
mov edi, 0xfffffffe
sub edi, ebx
and edi, eax
mov eax, edi
and eax, 0x880000e0
and edi, 0x251521f
xor edi, 0x37f97e1f
sub edi, eax
add edi, 0x7b9d1fd1
mov eax, edi
and eax, 1
xor edi, 1
lea eax, [edi + eax*2]
mov byte [esi + ecx + 0x96], al
inc ecx
dec edx
cmp ecx, 0x6e
jne 0x42d7e0
movzx ecx, byte [esi + 0x9c]
mov eax, dword [esi + 0x3c]
mov edi, eax
test cl, cl
je 0x42d87b
lea edx, [esi + 0x9d]
mov edi, eax
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 0x42d870
mov byte [edi], 0
mov eax, dword [esi + 4]
movzx ecx, byte [eax]
test cl, cl
je 0x42d89b
inc eax
nop
nop
nop
nop
nop
nop
nop
mov byte [edi], cl
inc edi
movzx ecx, byte [eax]
inc eax
test cl, cl
jne 0x42d890
mov byte [edi], 0
movzx eax, byte [esi + 0x41c]
test al, al
je 0x42d8bb
lea ecx, [esi + 0x41d]
nop
mov byte [edi], al
inc edi
movzx eax, byte [ecx]
inc ecx
test al, al
jne 0x42d8b0
mov byte [edi], 0
mov ecx, dword [esi + 8]
movzx eax, byte [ecx]
test al, al
je 0x42d8db
inc ecx
nop
nop
nop
nop
nop
nop
nop
mov byte [edi], al
inc edi
movzx eax, byte [ecx]
inc ecx
test al, al
jne 0x42d8d0
mov byte [edi], 0
movzx eax, byte [esi + 0x734]
test al, al
je 0x42d8fb
lea ecx, [esi + 0x735]
nop
mov byte [edi], al
inc edi
movzx eax, byte [ecx]
inc ecx
test al, al
jne 0x42d8f0
mov byte [edi], 0
push 0
call fcn.0043f8d0
add esp, 4
mov ecx, eax
xor eax, eax
test ecx, ecx
setne al
mov eax, dword [eax*4 + 0x4486b0]
mov edx, 0xa1f80a15
xor edx, dword [0x4486b8]
add eax, edx
inc eax
jmp eax