Function at 0x47afb8
Capabilities:
Encode data using xor

Disassembly:
pushal
mov esi, 0x8efd8536
not ebx
mov ecx, ebx
popal
add ebx, ecx
sub ebx, 0x339151d4
and ebx, ecx
mov esi, 0
mov edi, ebx
sub eax, edx
mov eax, 0x3485e3ee
sub edx, 1
mov ecx, edi
add edx, edx
sub edx, eax
or edx, eax
mov ebx, ecx
or edx, eax
inc edx
inc esi
not eax
add edx, 0x26b494af
cmp esi, 0x1005cf7
jne 0x47afd2
mov eax, edx
mov eax, edx
cmp esi, 0x1005cf7
je 0x47b016
mov eax, 0
mov cl, byte [eax]
or eax, edx
mov eax, 0x917b4ec7
mov ecx, 0xfd4d195f
not ecx
inc ebx
mov edi, 0x47ada2
and ecx, edx
dec edx
mov ebx, 0x47af96
sub ecx, 0x3b71e562
or edx, eax
mov esi, dword [edi]
not eax
sub ecx, edx
add edx, eax
and esi, 0xff
not eax
sub edx, 0x731b9c51
mov edx, eax
xor dword [ebx], esi
or eax, edx
sub ecx, 0xcad0beb
mov edx, 0x7e570622
inc ebx
not edx
dec edx
dec eax
add edi, 1
add edx, ecx
sub edx, ecx
cmp ebx, entry0
jl 0x47b03a
add eax, 0x3385166f
inc ecx
add eax, edx
sub eax, ecx
inc ecx
or edi, ecx
or edi, edi
mov ebx, 0x47af9a
sub ecx, edx
not edx
mov ebx, dword [ebx]
inc esi
mov ecx, 0xadb71051
mov edx, edi
mov ebx, dword [ebx]
mov edi, 0x7caeba84
add edi, 0x6e81b9c0
mov edx, 0xec1d8f97
push ebx
sub edx, 0x8fa760b9
add edi, esi
add esi, edi
mov ebx, 0x47af96
dec edx
add edi, 0x6ad81ef
mov ebx, dword [ebx]
add edi, edi
sub edi, 0xfdd7b3ac
not ecx
mov ebx, dword [ebx]
sub esi, 0xe1e8442c
mov esi, 0x951d9a75
push 0x47af9e
add edi, 1
mov ecx, 0xca7cf9d5
add ecx, edi
call ebx
add esi, 1
add ecx, 0x89fe9932
and edx, edi
mov ebx, dword [esp]
add esp, 4
not esi
mov ecx, 0x88c0e8d7
or edx, edx
push 0x47afab
add edx, 0xd1c8b049
add edx, esi
sub esp, 4
mov dword [esp], eax
add ecx, 0xcba3c494
mov edi, edx
call ebx
not esi
mov edx, esi
sub edx, 0x4a17e187
push 0x40
add esi, 0xa6a38b18
mov esi, ecx
push 0x3000
dec esi
mov esi, edi
sub esi, ecx
push 0x20000771
mov edx, ecx
and ecx, ecx
or ecx, esi
push 0
add edx, 0x7f4ed18d
inc esi
mov edi, ecx
call eax
add edi, edx
inc edi
add eax, 0x20000707
or esi, edi
or esi, ecx
sub edx, 0x62474e33
mov ebx, 0x9e676bc1
sub edx, 0xfb2d8a1b
mov edx, esi
add edx, 0x979fd8c7
mov dword [eax], ebx
not ecx
mov edx, 0x46d17da6
sub edi, edx
mov ebx, dword [eax]
inc esi
sub edi, esi
sub edi, esi
cmp ebx, 0x9e676bc1
je 0x47b1b2
mov ecx, 0
mov dword [ecx], ebx
add edi, 0x613a415d
mov ecx, edx
or ecx, edx
inc ecx
add ecx, 0x5591f380
and edi, edx
mov ebx, ecx
or ecx, ecx
mov edi, section.UPX1
sub ebx, 0x743a5ad
dec ebx
mov edx, 0x47ada1
sub ecx, ebx
sub ebx, 1
not ecx
mov eax, 0
add ecx, ebx
add ecx, 0xc7ea6697
mov esi, 0x47ada2
add ebx, ecx
mov ebx, ecx
mov ecx, ebx
lea esi, [eax + esi]
mov ebx, ecx
add ecx, 0xe737154
mov esi, dword [esi]
sub ecx, ebx
mov ecx, 0xf537e58
and esi, 0xff
or ecx, ebx
add ebx, 0xc8a667b1
dec ebx
inc eax
sub ecx, 0x4407c43c
sub ecx, 0x7356887e
inc ecx
cmp eax, 0x1f4
jne 0x47b23a
mov eax, 0
and ecx, ebx
mov ebx, ecx
add ecx, 1
add ecx, 0x92ccc937
and ecx, ebx
xor dword [edi], esi
mov ebx, 0x976e4387
add ecx, 0xec106fe1
mov ebx, 0x53efcf9b
add edi, 2
add ecx, ebx
dec ebx
cmp edi, edx
jl 0x47b1f1
inc ebx
add ecx, ebx
mov ebx, ecx
inc ecx
mov eax, section.UPX1
inc esi
or esi, ecx
add esi, 0x294a38f2
mov ebx, section.UPX1
mov ecx, 0x829d2cc5
add esi, 0x38feae19
and ecx, esi
mov edi, 0x47ada1
dec esi
sub ecx, esi
mov edx, 0
add ecx, ecx
dec esi
or esi, ecx
mov dl, byte [ebx]
not ecx
add esi, 0x3601eeec
mov byte [eax], dl
dec ecx
add ecx, ecx
or esi, ecx
inc eax
and ecx, esi
add esi, esi
inc esi
add ebx, 2
sub ecx, 0x50321c07
mov esi, 0x3a74942
inc esi
cmp ebx, edi
jle 0x47b2a7
sub ecx, 0xad23019
dec esi
sub ecx, 1
dec ecx
push 0x45e6a0
or ecx, ecx
sub ebx, ecx
ret