Function at 0x47afb8
Capabilities:
Encode data using xor

Disassembly:
pushal
mov esi, 0xa7bc7af3
mov ebx, 0xd515a1f1
add ecx, ebx
sub ebx, ecx
popal
or ecx, ebx
dec ebx
mov ecx, 0xfdb47ceb
mov edi, 0
mov esi, edx
sub ebx, 0x67d3209d
mov eax, ebx
mov ebx, 0x15f9c936
mov ecx, esi
not ebx
add ebx, eax
mov edx, ecx
sub eax, 0xfec7542b
not eax
inc edi
and ebx, ebx
mov ebx, eax
not eax
cmp edi, 0x100692c
jne 0x47afd5
not eax
add eax, 0xe255ba8d
not eax
cmp edi, 0x100692c
je 0x47b020
mov ebx, 0
mov ecx, dword [ebx]
add eax, 0xd6d457a3
and ebx, ebx
add eax, 0x8501eec4
and ebx, ecx
not ebx
mov esi, 0x47ada2
sub eax, 0x3112f427
or ebx, ecx
mov edi, 0x47af96
add ecx, 0xbff3a94c
and eax, ebx
mov eax, ebx
mov edx, dword [esi]
sub ebx, 0x9d00a3a0
mov ebx, 0x5aa10708
mov eax, 0x3c16c05c
and edx, 0xff
mov ecx, eax
add eax, ecx
not eax
xor dword [edi], edx
add ecx, eax
mov eax, 0x6415e58e
mov ecx, 0x504eb660
inc edi
sub eax, 0xcbc1c789
and ecx, ecx
sub eax, ebx
inc esi
add ecx, ebx
dec eax
cmp edi, entry0
jl 0x47b04e
add eax, 1
or ebx, eax
add ebx, 0xe2a4b287
mov eax, ecx
inc ecx
inc ebx
add edx, 0xf541db8f
not ebx
sub esi, 0xdf75d0d2
mov edi, 0x47af9a
sub ebx, 0x471eb712
sub ecx, 1
mov edi, dword [edi]
or esi, edx
or edx, ecx
mov edi, dword [edi]
inc esi
mov ebx, 0x6500adb9
add esi, esi
sub esp, 4
mov dword [esp], edi
mov edx, 0x5a3eb3c1
not edx
mov edi, 0x47af96
sub ebx, ecx
add ebx, 0xd1de7950
mov edi, dword [edi]
or ebx, edx
mov esi, ecx
add esi, 0x3a752408
mov edi, dword [edi]
and edx, edx
sub ecx, 0x210b6705
or ebx, esi
push 0x47af9e
not ecx
or edx, esi
and esi, ecx
call edi
mov edx, esi
inc ebx
pop edi
sub ebx, esi
add edx, 0x196040a0
push 0x47afab
sub esi, 0x43a59fb1
add edx, 0x6b340429
mov esi, 0xd1ae2335
push eax
mov edx, 0xed1bcc7
and ecx, ecx
add ecx, ebx
call edi
or ebx, edx
sub edx, ebx
dec edx
push 0x40
or ecx, ebx
add ebx, 0x5f6bce60
sub esp, 4
mov dword [esp], 0x3000
or ecx, ecx
sub esi, edx
not edx
push 0x200003d0
and edx, ecx
and ecx, ecx
push 0
dec ebx
mov edx, 0xe753e900
call eax
mov esi, ecx
and ecx, edx
add eax, 0x20000332
add ecx, ebx
mov edx, esi
mov edi, 0x2ca2bc6e
not ecx
not edx
mov ebx, 0x8870157
mov dword [eax], edi
add ecx, 0x50a49932
add ebx, 0x171aebf4
mov edi, dword [eax]
inc ebx
sub ebx, edx
sub ecx, ebx
cmp edi, 0x2ca2bc6e
je 0x47b1bb
mov ecx, 0
mov byte [ecx], dl
and edx, esi
mov ebx, 0x98015d95
sub esi, 0x2b6a0376
and edx, edx
add edx, 1
add ebx, ecx
mov ebx, 0x9c1c152e
mov esi, section.UPX1
sub ebx, ecx
and ebx, ebx
and ecx, ecx
mov edx, 0x47ada1
sub ebx, ecx
dec ecx
mov eax, 0
sub ebx, ecx
inc ecx
mov edi, 0x47ada2
dec ecx
dec ecx
dec ebx
lea edi, [eax + edi]
mov ecx, 0x7e0bb3fe
add ecx, 0xdca3a131
mov ecx, 0xc15583f6
mov edi, dword [edi]
add ecx, 0x61bf49af
or ebx, ecx
mov ecx, 0xa47b11c1
and edi, 0xff
dec ebx
and ebx, ebx
inc eax
add ecx, 0x5c69c05
inc ecx
cmp eax, 0x1f4
jne 0x47b23a
mov eax, 0
sub ecx, 0xd8af2858
add ecx, 0xdbfbd28c
sub ebx, 0xadc31a75
add ecx, ecx
add ecx, 1
add ebx, 1
xor dword [esi], edi
sub ecx, 1
add ebx, ebx
not ebx
add esi, 2
sub ebx, 0xaf0f1192
mov ebx, 0xb2e50279
cmp esi, edx
jl 0x47b1f2
and ebx, ecx
or ebx, ebx
dec ecx
mov ebx, ecx
mov esi, section.UPX1
mov ebx, 0x5e7dc4d4
and ebx, ecx
mov edi, section.UPX1
dec ebx
or ebx, ebx
mov edx, 0x47ada1
or ecx, ebx
add ecx, 1
mov eax, 0
or ecx, ecx
mov ecx, 0x33f1715c
or ebx, ecx
mov al, byte [edi]
add ebx, 0xa552c340
sub ecx, ebx
mov byte [esi], al
sub ecx, ebx
dec ebx
sub ebx, ecx
inc esi
add ecx, 0x4c45e454
sub ebx, 0x2522a781
add edi, 2
mov ebx, ecx
not ecx
add ebx, ebx
cmp edi, edx
jle 0x47b2b5
not ecx
mov ecx, ebx
not ebx
add ebx, ebx
sub ebx, 0xfac09cc4
or ecx, ebx
push 0x45e6a0
and ecx, ecx
add ebx, 0xdca6165e
inc ebx
ret