Function at 0x47afb8
Capabilities:
Encode data using xor

Disassembly:
pushal
mov esi, 0xa9567b25
or ecx, esi
mov esi, 0x115ec0f3
add ecx, 0xad76ce9e
popal
inc ecx
sub esi, ecx
add ecx, 0x295b8a77
mov eax, 0
mov esi, ecx
not ebx
add edx, 0x5de2248f
mov edi, esi
add edx, edx
mov edx, 0x6309c688
mov ecx, edi
sub ebx, edx
not edx
inc eax
sub edx, 0x2dee07a6
and edx, edx
add ebx, 0x33e4fc8a
cmp eax, 0x10043be
jne 0x47afda
mov ebx, 0xa2dbc53f
add ebx, 0x6b88023d
cmp eax, 0x10043be
je 0x47b028
mov edx, 0
mov byte [edx], bl
add ebx, ebx
add ebx, 0x6842989a
or edx, edx
sub esi, 0x5313ab2a
sub ecx, 0x8c2b8853
mov ebx, 0x47ada2
or edi, ecx
add eax, 0xc1acdeaa
mov esi, 0x47af96
dec edi
mov edi, eax
mov edx, dword [ebx]
and eax, ecx
not ecx
mov eax, 0x1e0a8dae
and edx, 0xff
sub ecx, edi
add ecx, 1
sub ecx, edi
xor dword [esi], edx
and ecx, ecx
not eax
and ecx, ecx
add esi, 1
sub ecx, eax
sub ecx, edi
inc ebx
mov edi, 0x9bfaa588
not edi
cmp esi, entry0
jl 0x47b053
and eax, eax
dec eax
add ecx, edi
add edi, ecx
sub ecx, eax
add ecx, edi
or edx, ecx
not ebx
add edi, edx
mov esi, 0x47af9a
inc ecx
add edx, ecx
mov esi, dword [esi]
dec edi
mov edx, ebx
add edx, 0xc0a91c8c
mov esi, dword [esi]
not ebx
add ecx, edx
or ecx, ebx
push esi
inc ecx
dec ebx
add ecx, ecx
mov esi, 0x47af96
add ecx, ebx
sub ebx, edx
or edx, edx
mov esi, dword [esi]
add edx, ebx
inc ecx
mov esi, dword [esi]
inc edx
or edi, edx
push 0x47af9e
inc edx
add ecx, 0x5230e908
call esi
and edi, ecx
or edx, edx
pop esi
sub ebx, 1
and edi, edi
sub esp, 4
mov dword [esp], 0x47afab
not edi
inc ecx
mov ecx, edx
push eax
dec edi
inc ebx
add ebx, 0x891c8e29
call esi
dec edi
mov ebx, 0xb69ea097
sub esp, 4
mov dword [esp], 0x40
sub ebx, 0x1e29b311
sub edx, 0xa084174b
push 0x3000
dec edi
dec ebx
sub ecx, ebx
push 0x200003d7
inc edi
and ecx, ebx
not edx
push 0
mov edi, ebx
or edi, ecx
call eax
inc edi
and ebx, edi
add eax, 0x2000031c
inc ebx
and edi, ebx
sub ecx, edi
mov esi, 0x8401b891
and edi, ebx
mov edi, ebx
add edi, 0x4f95a19f
mov dword [eax], esi
sub edi, 0xb4953a0c
mov ebx, edx
mov esi, dword [eax]
and edi, edx
add edx, ecx
cmp esi, 0x8401b891
je 0x47b185
mov ebx, 0
mov byte [ebx], cl
sub edx, 0x2b4cdbd3
mov edi, ecx
mov ebx, edi
dec ebx
inc edi
and ecx, ecx
inc ecx
sub ecx, 0xd849466d
mov eax, section.UPX1
mov ecx, esi
not esi
mov edi, 0x47ada1
add ecx, ecx
sub ecx, esi
sub ecx, 0x14460b87
mov ebx, 0
mov esi, 0x24c2249e
mov esi, ecx
sub ecx, esi
mov edx, 0x47ada2
not ecx
sub ecx, 0xd5c94333
lea edx, [ebx + edx]
mov esi, 0x279dd68e
and esi, ecx
sub esi, ecx
mov edx, dword [edx]
sub ecx, esi
inc ecx
and edx, 0xff
sub esi, ecx
not esi
mov ecx, 0xe25bb45
add ebx, 1
inc esi
inc ecx
mov ecx, 0xe5c2f880
cmp ebx, 0x1f4
jne 0x47b207
mov ebx, 0
dec ecx
and ecx, ecx
mov ecx, 0x53f6e28b
sub esi, ecx
add esi, 0xe909f1f1
xor dword [eax], edx
sub esi, 1
add ecx, ecx
add eax, 2
sub esi, ecx
mov ecx, esi
dec esi
cmp eax, edi
jl 0x47b1c0
add ecx, esi
or ecx, esi
and esi, esi
mov esi, 0x7f17dd7f
mov esi, section.UPX1
and edi, edi
add edi, 0x8c87a3e1
mov edx, section.UPX1
mov edi, 0xddb21bda
and ecx, ecx
mov ebx, 0x47ada1
add ecx, 0x7fca352e
sub ecx, 0x62060d0c
mov eax, 0
add edi, edi
mov ecx, 0xf0f9eea6
mov al, byte [edx]
add edi, 0x35d25a7
inc edi
mov byte [esi], al
and ecx, edi
sub edi, ecx
inc edi
inc esi
sub edi, 0xa42bd799
add edi, 0x8a8c5265
add edx, 2
or edi, ecx
sub ecx, 0x397fb3b6
mov edi, ecx
cmp edx, ebx
jle 0x47b275
sub ecx, 0xcb63be
sub ecx, edi
sub ecx, edi
add ecx, 0x61639ca7
mov ecx, esi
mov ecx, 0x73a46092
sub esp, 4
mov dword [esp], 0x45e6a0
and esi, esi
sub esi, ecx
not ecx
ret