Function at 0x47afb8
Capabilities:
Encode data using xor

Disassembly:
pushal
mov esi, 0x49ac002
and ebx, ecx
mov ebx, ecx
popal
inc ecx
and ecx, ecx
mov eax, 0
mov edx, esi
dec ebx
add ebx, 0xe396c8e
mov ecx, edx
and edi, edi
not ebx
or edi, ebx
mov esi, ecx
sub ebx, edi
inc ebx
sub edi, 0x73e0105d
inc eax
mov edi, ebx
sub edi, 0xc5e8049
or ebx, edi
cmp eax, 0x1006e2c
jne 0x47afcb
mov ebx, 0xc880532b
and edi, ebx
cmp eax, 0x1006e2c
je 0x47b014
mov eax, 0
mov dword [eax], ecx
add ebx, 0x739c638
add edi, ebx
or ebx, ecx
not ebx
sub ebx, 0xbebc2194
mov ecx, 0x47ada2
or edi, eax
mov ebx, edi
inc edi
mov esi, 0x47af96
mov ebx, 0xa7b502a0
and edi, edi
sub ebx, 0xf332a1d1
mov edx, dword [ecx]
dec edi
sub edi, 0x7e9ca9eb
inc edi
and edx, 0xff
sub ebx, eax
add ebx, 0x8cbc1707
xor dword [esi], edx
add edi, 0x4ded7a3a
or ebx, eax
and eax, ebx
add esi, 1
dec edi
mov edi, ebx
inc ecx
mov eax, edi
mov ebx, eax
dec ebx
cmp esi, entry0
jl 0x47b042
sub ebx, 0x250c5319
add eax, ebx
add eax, 0xa99fc46d
mov eax, ebx
add ebx, esi
add edx, 1
mov edi, 0x47af9a
add edx, edx
add edx, 1
or esi, ecx
mov edi, dword [edi]
or ecx, edx
and ecx, esi
mov edi, dword [edi]
add ecx, 0x842af16b
not edx
push edi
mov ecx, 0xc76cc495
mov edx, 0x69221e38
mov edi, 0x47af96
add ebx, ebx
and edx, ecx
add esi, ecx
mov edi, dword [edi]
mov ecx, edx
or esi, ecx
mov ecx, ebx
mov edi, dword [edi]
add ecx, 0x1028e7eb
mov ecx, 0x25a551bf
push 0x47af9e
mov esi, 0x388c1820
sub ecx, 0x36e00b1
call edi
add esi, 0x5cd1253
add ebx, 0xe0470768
pop edi
mov edx, 0x35e0cf51
mov ecx, 0x92522b07
and ebx, edx
push 0x47afab
mov edx, 0xe5346089
mov esi, ebx
push eax
add edx, edx
sub esi, edx
call edi
add edx, esi
add ecx, esi
not edx
sub esp, 4
mov dword [esp], 0x40
sub ecx, 1
mov esi, ecx
push 0x3000
mov edx, 0xe93e7593
add edx, ebx
mov esi, 0x231f50ab
sub esp, 4
mov dword [esp], 0x20000b9b
add edx, esi
mov ebx, 0x9caf937c
and ebx, esi
push 0
not esi
inc ebx
or ecx, edx
call eax
sub ecx, 0xec403074
sub ecx, 0x7f97ce21
sub esi, ecx
add eax, 0x20000b06
add ecx, ebx
inc edx
mov edi, 0xa16b6081
mov edx, ebx
add esi, edx
mov dword [eax], edi
sub esi, edx
and ebx, ebx
and ebx, edx
mov edi, dword [eax]
sub ebx, 0xfc50d26b
sub ecx, ebx
cmp edi, 0xa16b6081
je 0x47b1aa
mov ebx, 0
mov eax, dword [ebx]
sub ecx, esi
not ecx
add edx, esi
add ecx, ecx
inc ecx
mov ecx, ebx
and ecx, ecx
mov edi, section.UPX1
sub ecx, ebx
and ecx, ebx
not ecx
mov edx, 0x47ada1
sub ebx, ecx
sub ecx, ebx
mov esi, 0
add ecx, ecx
sub ebx, 0x80bc7da1
mov eax, 0x47ada2
inc ecx
and ecx, ebx
sub ebx, 0xe30a2be3
lea eax, [esi + eax]
and ecx, ecx
and ebx, ecx
mov eax, dword [eax]
add ecx, ebx
and ecx, ecx
and ebx, ebx
and eax, 0xff
add ecx, 0x2708e1a5
not ecx
not ecx
inc esi
inc ebx
add ebx, ecx
add ebx, ebx
cmp esi, 0x1f4
jne 0x47b218
mov esi, 0
not ecx
mov ecx, 0xd56cd576
mov ebx, ecx
mov ecx, 0xc5a7daa7
and ecx, ebx
inc ecx
xor dword [edi], eax
not ecx
sub ebx, ecx
add edi, 2
or ecx, ecx
add ecx, 0x32217ee9
dec ebx
cmp edi, edx
jl 0x47b1d8
sub ecx, 1
mov ebx, ecx
sub ebx, 1
add ebx, ebx
add ebx, ebx
mov ecx, section.UPX1
inc esi
sub esi, 1
inc esi
mov edi, section.UPX1
sub esi, 0xbfffcc72
mov esi, eax
sub esi, eax
mov edx, 0x47ada1
sub eax, esi
sub esi, 1
mov eax, esi
mov ebx, 0
mov eax, esi
add eax, 0x4bca7cb3
not esi
mov bl, byte [edi]
mov esi, 0x75ac5b16
sub esi, eax
add eax, 0x7cb4797e
mov byte [ecx], bl
not esi
mov esi, 0x7ba55543
and eax, eax
inc ecx
add eax, eax
or esi, esi
add edi, 2
not eax
or eax, esi
and esi, esi
cmp edi, edx
jle 0x47b292
add esi, esi
mov eax, esi
sub ecx, ebx
sub ebx, ecx
sub esp, 4
mov dword [esp], 0x45e6a0
or ebx, ecx
sub ebx, 0xf8e87a4b
ret