Function at 0x47afb8
Capabilities:
Encode data using xor

Disassembly:
pushal
mov esi, 0x632dde21
add edx, edx
add edx, 0x12b1f3b6
mov esi, edx
popal
or esi, esi
mov edx, esi
add esi, esi
mov ecx, 0
mov edx, ebx
mov eax, esi
inc eax
mov edi, edx
inc eax
sub eax, esi
add esi, 0xc2433880
mov ebx, edi
mov eax, 0xb6988afa
add esi, eax
or esi, eax
inc ecx
mov esi, 0x32a77619
sub eax, esi
cmp ecx, 0x10023bf
jne 0x47afd4
or eax, eax
or eax, eax
add esi, eax
cmp ecx, 0x10023bf
je 0x47b018
mov eax, 0
mov dword [eax], ebx
not eax
and esi, eax
add esi, 0x5548bc5e
and edx, esi
not esi
mov esi, edx
mov edx, 0x47ada2
inc eax
and edi, ecx
sub ecx, 0xaae38d71
mov esi, 0x47af96
and edi, ecx
mov edi, 0x5fe76811
mov ebx, dword [edx]
mov edi, 0xf3bf82b3
add ecx, ecx
and ecx, edi
and ebx, 0xff
mov edi, 0xcdb4e51d
add eax, 0xba38ec51
mov edi, ecx
xor dword [esi], ebx
add ecx, ecx
sub ecx, 0xdb5c980e
dec eax
add esi, 1
sub eax, 0x77dd2061
and edi, ecx
inc edx
inc ecx
add edi, ecx
cmp esi, entry0
jl 0x47b042
sub ecx, 0x28a72ae8
add edi, 0x25a78eb2
sub eax, 1
not edi
add edi, 1
mov esi, edx
sub esi, edi
mov ebx, 0x47af9a
and edx, esi
sub edx, ecx
inc edx
mov ebx, dword [ebx]
not esi
not edx
mov ebx, dword [ebx]
not ecx
mov edi, esi
add ecx, 0xc7e4b546
push ebx
mov ecx, esi
mov edx, 0xb6d3696a
and ecx, edi
mov ebx, 0x47af96
add edx, edx
add edx, 1
mov ebx, dword [ebx]
sub ecx, 0x53076e78
and edi, ecx
mov ebx, dword [ebx]
dec ecx
mov edx, 0x2c4e762f
mov ecx, edi
push 0x47af9e
add ecx, edx
add edi, 0x1866b6e0
call ebx
add edx, edx
dec esi
pop ebx
dec edx
mov edx, edi
and edx, edx
push 0x47afab
sub ecx, 0xff76bcb8
mov ecx, 0xaaf164c7
sub esp, 4
mov dword [esp], eax
sub edi, 0x4be3c538
sub esi, 1
call ebx
inc edi
add edi, 1
push 0x40
add esi, esi
add edx, ecx
push 0x3000
sub edi, 0xaf3a4090
sub ecx, 0xd5b0c3dc
sub esi, 0x8300d82f
sub esp, 4
mov dword [esp], 0x20000c73
add edx, esi
mov ecx, 0xee108a1f
push 0
sub esi, 0x6485575f
inc edx
sub esi, edx
call eax
or edi, ecx
mov edx, edi
add edi, esi
add eax, 0x20000bdc
mov ecx, edx
mov ecx, edi
add edi, edi
mov ebx, 0xaa64ebf5
sub esi, edx
mov edi, 0x7809abab
or edi, edi
mov dword [eax], ebx
not edx
sub edi, 0x7d6f318a
mov ebx, dword [eax]
add edx, 0x78543a42
or ecx, esi
sub edi, ecx
cmp ebx, 0xaa64ebf5
je 0x47b1b7
mov edx, 0
mov bl, byte [edx]
sub ecx, edx
add ecx, 0x4fac7770
sub ecx, edx
and edx, ecx
not esi
add esi, 0xd8ac0104
inc edx
add edx, edx
mov ebx, section.UPX1
not esi
add edx, edx
mov edx, esi
mov edi, 0x47ada1
dec edx
sub esi, 0x55f3faec
not edx
mov eax, 0
and esi, edx
mov esi, edx
mov ecx, 0x47ada2
add esi, 0x778f1398
sub edx, 0xaa595ff5
add edx, esi
lea ecx, [eax + ecx]
mov edx, 0x86ab7a88
or esi, esi
mov ecx, dword [ecx]
sub esi, 1
sub esi, edx
mov edx, esi
and ecx, 0xff
mov edx, esi
add edx, 0x54e50268
or esi, esi
inc eax
and edx, edx
mov edx, esi
cmp eax, 0x1f4
jne 0x47b23b
mov eax, 0
sub edx, 1
not edx
and esi, edx
or esi, edx
mov edx, esi
mov esi, edx
xor dword [ebx], ecx
mov edx, esi
not esi
not esi
add ebx, 2
sub esi, edx
not esi
cmp ebx, edi
jl 0x47b1f0
sub edx, 0xffc0e931
inc edx
and esi, edx
or edx, esi
and esi, edx
and esi, esi
mov ecx, section.UPX1
not eax
mov eax, esi
add eax, eax
mov edi, section.UPX1
not eax
mov esi, eax
mov ebx, 0x47ada1
add eax, esi
and eax, esi
sub esi, 0xb6487648
mov edx, 0
add eax, esi
dec esi
add eax, esi
mov dl, byte [edi]
sub eax, esi
sub esi, 0xf79026f6
mov esi, 0x38741e38
mov byte [ecx], dl
sub eax, 1
not esi
inc ecx
sub esi, 0x1ba8bee7
add eax, 0x9f912f0
sub esi, 0xaeee4ec2
add edi, 2
sub eax, esi
add eax, 0xedcaa0d6
sub eax, 0xe24a460a
cmp edi, ebx
jle 0x47b2a1
mov esi, 0xe4686441
sub esi, 0xbdb16c5
mov eax, esi
sub edx, esi
and esi, esi
add esi, edx
push 0x45e6a0
and edx, esi
dec edx
ret