Function at 0x47afb8
Capabilities:
Encode data using xor

Disassembly:
pushal
mov esi, 0x1b722e3f
add ecx, ecx
not ecx
popal
inc ebx
add ebx, 0x12305d9d
and ecx, ecx
mov ecx, 0
mov ebx, edi
mov eax, esi
mov esi, 0xfda658ec
sub eax, 1
mov edx, ebx
not eax
add esi, eax
not eax
mov edi, edx
sub eax, 0xd54745bc
sub eax, esi
not eax
inc ecx
add eax, eax
and eax, eax
add eax, 1
cmp ecx, 0x100bf6c
jne 0x47afd1
or esi, esi
mov esi, 0xf4e62ab8
add esi, esi
cmp ecx, 0x100bf6c
je 0x47b023
mov edx, 0
mov byte [edx], bl
sub esi, 1
sub eax, esi
mov ebx, 0xb99e2b5a
or ecx, ecx
mov edx, 0x47ada2
inc esi
sub eax, ecx
mov edi, 0x47af96
and esi, ecx
mov ecx, 0x6b107c2a
or ecx, eax
mov ebx, dword [edx]
inc esi
add esi, ecx
mov ecx, esi
and ebx, 0xff
add esi, 0xf340cfe7
mov ecx, 0x36ab82c3
xor dword [edi], ebx
and eax, ecx
sub eax, 1
not eax
inc edi
add eax, 0x90b81c7f
and eax, ecx
inc edx
inc ecx
dec ecx
sub ecx, esi
cmp edi, entry0
jl 0x47b048
or esi, ecx
and esi, eax
mov eax, 0x80a7b88f
not ecx
sub edi, ecx
mov ecx, esi
mov ebx, 0x47af9a
not edx
dec ecx
mov ecx, edx
mov ebx, dword [ebx]
add esi, esi
add edx, 0xe68ba2f1
mov ebx, dword [ebx]
not edx
sub edi, edx
and ecx, esi
push ebx
sub edi, 0x11f4a385
mov edi, 0x81ef5aec
mov ebx, 0x47af96
or ecx, edx
sub edx, esi
mov esi, edi
mov ebx, dword [ebx]
mov esi, 0x95eaddec
inc ecx
mov ebx, dword [ebx]
sub esi, edi
mov esi, 0x9d9cb1c9
dec esi
push 0x47af9e
add edx, 0x38a3eb57
dec esi
or ecx, edx
call ebx
inc ecx
add edx, 0xd63ffbd9
pop ebx
or esi, esi
and esi, edx
push 0x47afab
mov edi, 0x3cddf7ff
sub esi, edx
and edx, edi
sub esp, 4
mov dword [esp], eax
mov edi, 0xa479fed2
mov esi, edi
call ebx
not ecx
sub edi, 0x74298980
push 0x40
add edx, edx
sub ecx, 0x1af6a862
push 0x3000
mov ecx, 0xa59048ae
inc edi
mov esi, edx
push 0x200002ab
add ecx, edi
dec esi
not ecx
push 0
not ecx
inc edi
mov esi, 0xb27767fc
call eax
add esi, esi
mov edi, esi
add eax, 0x200001ee
and ecx, edx
inc edx
and esi, esi
mov ebx, 0xd254d511
not ecx
add edx, ecx
sub edi, edx
mov dword [eax], ebx
sub esi, ecx
mov edi, 0x7cd657ce
or edx, edi
mov ebx, dword [eax]
and esi, edi
add edx, 0xbf7d4a9c
cmp ebx, 0xd254d511
je 0x47b18c
mov edx, 0
mov ebx, dword [edx]
add esi, 0xae100acf
add edx, 0x9c6733c3
sub edx, edi
add edx, ecx
sub ecx, edx
mov ecx, ebx
and ecx, ecx
sub ebx, ecx
mov esi, section.UPX1
not ebx
sub ecx, 0xa0ed014b
mov edx, 0x47ada1
and ecx, ebx
or ebx, ebx
dec ebx
mov edi, 0
sub ecx, 1
sub ecx, 1
mov eax, 0x47ada2
mov ecx, 0x631a81de
not ebx
inc ecx
lea eax, [eax + edi]
sub ebx, ecx
mov ecx, ebx
mov eax, dword [eax]
or ebx, ecx
not ebx
and eax, 0xff
add ecx, 0x1e84611a
add ebx, 0x137a37b8
inc edi
or ebx, ebx
mov ebx, 0xceb150fb
sub ecx, ebx
cmp edi, 0x1f4
jne 0x47b20f
mov edi, 0
add ecx, 0x3042334f
not ecx
and ecx, ecx
sub ebx, 0xde9bbac8
dec ecx
xor dword [esi], eax
sub ebx, 0xa873cc17
sub ecx, ebx
add esi, 2
add ebx, 1
sub ecx, 0xb639a569
dec ebx
cmp esi, edx
jl 0x47b1cc
not ebx
or ecx, ecx
sub ecx, 0x5fd96aff
add ecx, ebx
mov ecx, section.UPX1
inc edx
or ebx, edx
add edx, edx
mov esi, section.UPX1
mov edx, ebx
mov ebx, edx
not ebx
mov edi, 0x47ada1
not edx
sub edx, 0x9d847d6e
or ebx, edx
mov eax, 0
add ebx, 0x9c4416d1
sub ebx, 0xdddb095e
dec edx
mov al, byte [esi]
add edx, ebx
sub ebx, 0x6c2f87bf
mov byte [ecx], al
and edx, edx
inc edx
add ecx, 1
sub edx, 0xd44042cd
sub ebx, edx
add esi, 2
sub ebx, 0x3f400681
and ebx, ebx
cmp esi, edi
jle 0x47b287
add ebx, 0x1834af6f
and edx, ebx
dec ecx
not ebx
mov ecx, 0x815e804b
push 0x45e6a0
add ecx, ebx
add ecx, 0xc528ba37
ret