Function at 0x47afb8
Capabilities:
Encode data using xor

Disassembly:
pushal
mov esi, 0x312a5341
or ecx, ecx
and ebx, ebx
and ecx, ecx
popal
inc ecx
mov ecx, ebx
mov ebx, 0x66595c66
mov ebx, 0
mov esi, eax
sub ecx, 1
inc edi
mov edi, ecx
mov edx, esi
add ecx, 0xf7633b52
not ecx
mov eax, edx
add ecx, edi
inc ecx
mov edi, ecx
inc ebx
dec ecx
add ecx, 1
cmp ebx, 0x100c563
jne 0x47afd2
not edi
mov edi, ecx
cmp ebx, 0x100c563
je 0x47b015
mov ecx, 0
mov byte [ecx], bl
sub edi, 0x19f36b97
add ecx, 0x2505892
sub ecx, ebx
or ebx, ecx
mov edi, 0x47ada2
not eax
dec ebx
sub edx, 0x3ab55a65
mov ecx, 0x47af96
inc edx
sub edx, ebx
mov esi, dword [edi]
sub ebx, eax
sub ebx, 0x4e357d1d
or edx, eax
and esi, 0xff
not ebx
and ebx, eax
mov ebx, eax
xor dword [ecx], esi
or eax, eax
sub edx, eax
add ebx, ebx
inc ecx
mov ebx, edx
inc ebx
inc edi
add edx, 0x6f93b8c8
add ebx, 0x39401aed
cmp ecx, entry0
jl 0x47b03b
add eax, 0xc3022805
add edx, ebx
dec edx
mov edx, ebx
inc edi
inc edi
mov esi, 0x47af9a
add edi, 0xa1d609db
mov edx, edi
mov esi, dword [esi]
add ebx, 0x785a8d30
add ecx, edx
sub ecx, edx
mov esi, dword [esi]
sub ebx, 0x281c5ede
not edx
not edx
push esi
not edi
and ecx, edi
mov esi, 0x47af96
dec edx
or ecx, ecx
mov esi, dword [esi]
and ebx, ecx
add edi, 0x7833333c
add ecx, 0x13be6546
mov esi, dword [esi]
inc edx
add edx, edi
add edi, edx
push 0x47af9e
not ecx
sub ecx, 0x50694e5c
call esi
inc edx
add edx, ecx
mov ebx, ecx
pop esi
sub ebx, edx
add edx, 0xdb9fa71d
push 0x47afab
not edi
or ecx, ebx
and edx, ecx
push eax
inc edi
sub edx, ecx
sub edx, ecx
call esi
dec edx
sub ebx, edi
push 0x40
add ecx, edi
add edx, 0x698dce65
mov ecx, edi
push 0x3000
not ebx
and edi, ebx
push 0x20000523
add ecx, 0xf74bcd2
add ebx, 0xeb2345e9
sub esp, 4
mov dword [esp], 0
and ebx, ebx
inc ecx
add ebx, 0xcf115f7
call eax
add edx, edi
sub edx, edi
sub edx, ecx
add eax, 0x20000461
or ebx, ebx
dec edx
mov esi, 0xd4b1086b
mov edi, 0xee8385b5
sub ebx, ecx
mov dword [eax], esi
mov edi, ecx
inc edx
mov esi, dword [eax]
sub edx, 0xa20b107a
or ebx, ebx
inc edi
cmp esi, 0xd4b1086b
je 0x47b179
mov edx, 0
mov dword [edx], eax
not edx
add ebx, 0x42d527db
sub ebx, edx
or edi, ecx
mov ebx, 0x707d688a
dec ecx
and ebx, ebx
mov esi, section.UPX1
sub ecx, ebx
not ecx
mov ecx, ebx
mov edi, 0x47ada1
mov ecx, 0xa0e487ec
dec ebx
mov eax, 0
or ebx, ebx
or ebx, ecx
not ebx
mov edx, 0x47ada2
add ebx, 1
mov ebx, 0xcdcb10a3
sub ebx, 0x763995a6
lea edx, [eax + edx]
and ebx, ecx
mov ecx, ebx
mov edx, dword [edx]
mov ecx, ebx
not ecx
and edx, 0xff
add ecx, ecx
sub ebx, 1
add eax, 1
or ebx, ebx
sub ebx, ecx
cmp eax, 0x1f4
jne 0x47b1f6
mov eax, 0
or ebx, ebx
mov ebx, ecx
dec ebx
mov ecx, ebx
and ebx, ecx
xor dword [esi], edx
add ebx, ebx
mov ebx, ecx
add ebx, 0x51d0e9fb
add esi, 2
mov ecx, ebx
sub ecx, ebx
cmp esi, edi
jl 0x47b1ae
not ecx
and ecx, ebx
not ebx
sub ecx, ebx
not ebx
mov esi, section.UPX1
and ecx, ebx
add ebx, 0x30627669
mov edi, section.UPX1
add ebx, 1
mov ebx, 0x7123be8e
mov eax, 0x47ada1
or ebx, ebx
sub ecx, 1
not ecx
mov edx, 0
sub ebx, 0x6bd3deb0
and ebx, ebx
inc ebx
mov dl, byte [edi]
not ebx
add ebx, ebx
not ebx
mov byte [esi], dl
and ecx, ecx
or ebx, ebx
add ecx, 1
add esi, 1
add ebx, 1
not ebx
add edi, 2
sub ecx, ebx
sub ebx, 0x678c4e61
cmp edi, eax
jle 0x47b261
not ecx
inc ecx
sub ebx, ecx
mov ebx, 0xc2a46ba5
or ebx, ebx
push 0x45e6a0
or ecx, ebx
add ebx, 1
inc ecx
ret