Function at 0x47afb8
Capabilities:
Encode data using xor

Disassembly:
pushal
mov esi, 0xcaebb4ba
dec eax
sub eax, 0x311abcf3
sub eax, 0x9daab56a
popal
mov ecx, 0xd5661659
and ecx, eax
add eax, ecx
mov eax, 0
mov ebx, esi
add edi, 0x785a217d
add ecx, 0x4d2f88ac
mov edx, ebx
sub ecx, edi
mov ecx, edi
mov ecx, edi
mov esi, edx
and ecx, ecx
or ecx, edi
inc eax
mov ecx, edi
mov ecx, 0x700ecce5
inc edi
cmp eax, 0x1004ee5
jne 0x47afda
not edi
or edi, edi
cmp eax, 0x1004ee5
je 0x47b01e
mov ebx, 0
mov dword [ebx], eax
mov edi, 0xbe774e80
mov ecx, edi
sub edi, 0xc7aef55a
sub eax, ecx
dec eax
mov edx, 0x47ada2
add eax, 0xd483a5af
dec eax
add edi, esi
mov ebx, 0x47af96
not eax
mov edi, 0x68d76180
mov edi, eax
mov ecx, dword [edx]
and esi, esi
mov eax, 0x8d7472dc
sub edi, eax
and ecx, 0xff
mov eax, 0x854c5f1e
inc edi
xor dword [ebx], ecx
sub edi, 0xa37ca64c
sub edi, esi
mov eax, 0x750ee608
inc ebx
sub edi, esi
sub esi, 0xd13cc48a
add eax, edi
inc edx
add edi, 1
sub esi, 0xf3d18a7e
mov eax, esi
cmp ebx, entry0
jl 0x47b04a
or esi, esi
mov edi, eax
mov eax, 0xa6caa721
add eax, 0x99afe9e5
and edx, ecx
or edx, edx
add edx, 0xc939cd30
mov ebx, 0x47af9a
sub esi, ecx
sub esi, 0xe1da04d9
mov ebx, dword [ebx]
inc edi
add edi, 1
sub esi, 0x25206141
mov ebx, dword [ebx]
inc edi
and ecx, ecx
push ebx
mov esi, 0x8d89aeac
add ecx, 0x408bbd64
mov ebx, 0x47af96
or edi, esi
add esi, edx
inc ecx
mov ebx, dword [ebx]
mov esi, 0x991fa9c0
and edi, ecx
mov ebx, dword [ebx]
add ecx, edx
mov edx, edi
sub ecx, esi
sub esp, 4
mov dword [esp], 0x47af9e
not edx
inc ecx
call ebx
mov ecx, esi
add edx, edx
or ecx, edx
pop ebx
mov ecx, 0x9af0e677
add esi, 0x545d023c
sub edx, 1
push 0x47afab
not edi
or edi, edx
sub edx, 0x8494429a
push eax
dec ecx
and edi, esi
call ebx
inc edx
inc esi
and edx, esi
push 0x40
or edx, esi
not edx
sub edx, ecx
push 0x3000
add ecx, 0x319d069
sub ecx, 0xb5e1a5a8
sub esp, 4
mov dword [esp], 0x20000c85
mov edx, ecx
dec edi
not esi
push 0
sub edx, edi
and ecx, esi
add edx, esi
call eax
add edx, 0x50ee50b5
sub ecx, 0xa3d5f33a
add edi, 0x43a9fa1d
add eax, 0x20000bd9
sub edi, ecx
or ecx, edx
add edi, edx
mov ebx, 0xb212301
sub esi, edi
sub ecx, edx
sub edx, 0x93117c90
mov dword [eax], ebx
and ecx, esi
not ecx
mov ebx, dword [eax]
add ecx, 0x65ff3b83
not ecx
cmp ebx, 0xb212301
je 0x47b1bb
mov eax, 0
mov ecx, dword [eax]
mov esi, 0xf1349d67
mov esi, 0x9d86554e
or ecx, edi
and esi, esi
add ecx, edx
and eax, ecx
add eax, eax
and ecx, ecx
mov esi, section.UPX1
inc ecx
add ecx, 1
dec eax
mov ebx, 0x47ada1
and ecx, ecx
mov ecx, 0x515dd2
mov edi, 0
and eax, eax
not eax
mov eax, 0x4da17b4d
mov edx, 0x47ada2
add ecx, ecx
inc ecx
sub ecx, 1
lea edx, [edx + edi]
not eax
sub ecx, 1
and ecx, ecx
mov edx, dword [edx]
add ecx, 1
inc eax
and edx, 0xff
add ecx, eax
sub eax, ecx
inc edi
sub eax, ecx
not eax
cmp edi, 0x1f4
jne 0x47b238
mov edi, 0
not eax
dec ecx
mov ecx, eax
sub ecx, 0xe5dd90d0
xor dword [esi], edx
and ecx, eax
sub eax, 0x667727bd
dec ecx
add esi, 2
inc ecx
sub eax, 0x8603e58e
mov ecx, eax
cmp esi, ebx
jl 0x47b1f8
add ecx, 0x46c8fcf2
add eax, 1
inc eax
mov ecx, eax
add ecx, 0x4b246aea
inc ecx
mov eax, section.UPX1
add esi, 0x962c96f2
mov ebx, 0x1279e45
dec esi
mov ecx, section.UPX1
and esi, esi
inc esi
mov edi, 0x47ada1
mov ebx, 0x7a6756c4
add esi, esi
mov edx, 0
sub ebx, esi
inc esi
dec ebx
mov dl, byte [ecx]
mov esi, ebx
mov esi, ebx
and ebx, esi
mov byte [eax], dl
not esi
and esi, ebx
mov ebx, esi
inc eax
and esi, esi
not ebx
add ecx, 2
add ebx, 0x36aed99d
and ebx, ebx
cmp ecx, edi
jle 0x47b2a9
not esi
add ebx, ebx
inc esi
mov eax, ecx
mov eax, ecx
push 0x45e6a0
add eax, ecx
inc eax
ret