Function at 0x47afb8
Capabilities:
Encode data using xor

Disassembly:
pushal
mov esi, 0x8867ceae
inc eax
mov eax, edx
popal
sub eax, edx
dec edx
mov edi, 0
mov eax, esi
sub ebx, ecx
dec ebx
mov ecx, 0x3c445976
mov edx, eax
inc ebx
add ebx, 0xaced4919
sub ebx, 1
mov esi, edx
or ecx, ebx
mov ebx, 0xb24b5965
add edi, 1
add ecx, ecx
and ecx, ebx
cmp edi, 0x100224f
jne 0x47afca
sub ebx, ecx
not ebx
not ecx
cmp edi, 0x100224f
je 0x47b017
mov edx, 0
mov cl, byte [edx]
mov ebx, ecx
sub ecx, 0x2f950a3c
mov eax, 0xf8e2e02b
add edx, 1
mov eax, 0x47ada2
sub esi, 1
not edx
mov ecx, 0x47af96
sub edx, 0xdd4228d6
not edi
mov ebx, dword [eax]
sub edx, 0x5f48dbb2
add edx, 0x60815ad4
sub edi, 0xd6489730
and ebx, 0xff
mov esi, 0x352d89bb
not edx
sub edx, 1
xor dword [ecx], ebx
mov esi, 0x58bfe2ea
and esi, edi
inc edx
inc ecx
not esi
and edx, esi
inc eax
or edx, edx
dec esi
cmp ecx, entry0
jl 0x47b044
and esi, edi
dec edx
not edi
mov edi, 0x22727d07
dec edx
inc edi
inc edx
or esi, esi
add edx, 0xe2acf58c
mov ecx, 0x47af9a
add edx, edi
mov ebx, 0x45ce4e49
mov ecx, dword [ecx]
add esi, 0xf3a03b24
mov edi, 0x14c14baa
mov ecx, dword [ecx]
sub esi, 0x5257d108
or edx, esi
add edi, 0x1e0d9bb7
push ecx
mov edx, 0x2c8c8dfe
inc ebx
mov edi, esi
mov ecx, 0x47af96
add edi, ebx
not edx
add edx, 1
mov ecx, dword [ecx]
or edi, edx
dec edx
mov ecx, dword [ecx]
mov edi, 0x23a80fea
and esi, ebx
push 0x47af9e
sub edx, edi
inc esi
call ecx
dec esi
add edi, 0x99d58e6b
add edx, 0x9cad1ce7
pop ecx
sub edi, 0xbe12608f
or edx, edi
dec edi
push 0x47afab
sub ebx, 0xeaee2a87
mov ebx, 0x92068f60
sub esp, 4
mov dword [esp], eax
not edx
sub ebx, edx
call ecx
sub edi, 0xf5c7b954
or edi, esi
sub esi, 0xf0b23327
push 0x40
inc edi
or edi, edx
push 0x3000
add edi, esi
add ebx, 0x6b63b7e7
mov edx, edi
sub esp, 4
mov dword [esp], 0x200006c0
and esi, ebx
and edx, ebx
add ebx, edi
push 0
inc ebx
inc edi
call eax
not edi
mov edx, 0xcfafaa63
sub ebx, edi
add eax, 0x20000629
add esi, edi
dec edx
mov ecx, 0xf89218b0
and esi, edx
add esi, edx
mov dword [eax], ecx
and edi, edi
and ebx, edi
sub esi, edi
mov ecx, dword [eax]
or edi, esi
sub ebx, edx
cmp ecx, 0xf89218b0
je 0x47b1a1
mov ecx, 0
mov byte [ecx], dl
add edi, 0x8f214ee1
mov ebx, 0xf294251f
or edx, ebx
not edx
and eax, eax
sub eax, 0x2c3a3a70
mov edi, section.UPX1
mov eax, edx
dec edx
add eax, 0x896dd2be
mov esi, 0x47ada1
add edx, edx
sub edx, eax
mov ecx, 0
and edx, eax
or eax, eax
mov ebx, 0x47ada2
sub eax, 0xb37f994f
mov eax, 0xe7111431
lea ebx, [ebx + ecx]
dec edx
sub edx, 0xc2421d0c
mov eax, edx
mov ebx, dword [ebx]
and eax, edx
sub edx, eax
and ebx, 0xff
inc edx
not edx
sub eax, 0xa42b3433
inc ecx
or edx, eax
sub edx, 0xf7d5e6ca
mov edx, 0x445c7b26
cmp ecx, 0x1f4
jne 0x47b224
mov ecx, 0
sub eax, 0x96d21ed6
inc edx
add edx, eax
mov eax, edx
sub edx, eax
mov edx, 0x5ed1a6c7
xor dword [edi], ebx
sub eax, 0xb4978a0f
or edx, edx
mov edx, eax
add edi, 2
and edx, edx
or edx, eax
sub edx, 1
cmp edi, esi
jl 0x47b1d8
sub edx, 0xe57618a4
sub edx, eax
and eax, edx
mov edx, 0xc6a03da4
add eax, edx
dec edx
mov ecx, section.UPX1
add eax, 0x7803c736
sub esi, 0x82d31aed
sub eax, esi
mov ebx, section.UPX1
sub esi, eax
and eax, esi
mov edi, 0x47ada1
not eax
dec esi
or eax, eax
mov edx, 0
not eax
and esi, eax
not eax
mov dl, byte [ebx]
inc eax
and esi, eax
and esi, eax
mov byte [ecx], dl
add eax, eax
inc esi
mov esi, eax
inc ecx
or esi, eax
add eax, 0xd434426b
or esi, esi
add ebx, 2
not eax
mov eax, 0xc35894c9
or eax, esi
cmp ebx, edi
jle 0x47b29d
or esi, eax
not eax
or edx, eax
not eax
push 0x45e6a0
add edx, eax
not eax
inc eax
ret