Function at 0x47afb8
Capabilities:
Encode data using xor

Disassembly:
pushal
mov esi, 0x948e0f31
sub edi, esi
sub edi, esi
inc edi
popal
dec esi
or esi, edi
or edi, edi
mov esi, 0
mov edx, edi
sub ecx, 0xbca9b77
sub ecx, 1
mov ecx, eax
mov ebx, edx
and ecx, eax
or eax, eax
mov edi, ebx
not eax
sub eax, 0x963135d3
inc esi
sub eax, 0x86cd6628
add eax, 1
mov ecx, eax
cmp esi, 0x10041fc
jne 0x47afce
and ecx, ecx
mov ecx, eax
dec ecx
cmp esi, 0x10041fc
je 0x47b01d
mov ebx, 0
mov al, byte [ebx]
mov eax, 0x4b721c80
sub eax, ecx
or esi, esi
inc edi
mov ebx, 0x47ada2
or esi, ecx
mov esi, edx
mov edi, 0x47af96
sub esi, edx
add edx, 0x7424ccb
add ecx, esi
mov eax, dword [ebx]
or edx, ecx
and edx, edx
add esi, esi
and eax, 0xff
sub esi, 0xe0e1cb20
mov ecx, 0xb044e9c2
mov ecx, esi
xor dword [edi], eax
sub esi, edx
mov edx, 0xdfce680b
add ecx, esi
inc edi
sub edx, ecx
add ecx, 0x7444b04a
add ebx, 1
sub ecx, 1
sub esi, edx
cmp edi, entry0
jl 0x47b03f
mov edx, 0x8558453f
mov esi, 0x7543c6d6
not esi
mov edx, ecx
sub ecx, 1
sub edi, 0x545e6a7c
or ecx, ebx
mov esi, 0x47af9a
inc ebx
add ecx, 0x1ae00449
mov esi, dword [esi]
mov edi, 0x997b928
sub edi, edx
dec ecx
mov esi, dword [esi]
add ebx, 0x4f7eb062
sub ebx, ecx
push esi
sub edx, ecx
sub edx, ecx
mov esi, 0x47af96
not edx
inc ebx
or ebx, edx
mov esi, dword [esi]
inc edx
mov edx, edi
mov esi, dword [esi]
inc ebx
inc ebx
mov edx, 0x161e7327
push 0x47af9e
add edi, 0xc753bc72
add ebx, 1
call esi
sub edx, 0x63f4936f
mov ecx, edi
or edx, ecx
pop esi
not edx
add ebx, ecx
inc edi
push 0x47afab
mov ecx, 0x2c564a0c
inc edx
push eax
add ecx, ebx
sub ebx, 0xf6242506
sub edx, ecx
call esi
sub ecx, edi
dec edx
push 0x40
add edi, ecx
dec edx
push 0x3000
mov ecx, 0xfe7eea73
inc edi
push 0x200001e8
mov edi, 0x91773a5d
or edx, edx
push 0
mov ecx, 0x634bfa50
mov edi, ebx
call eax
mov ebx, 0xf14f2beb
and edi, edx
sub edx, ebx
add eax, 0x20000164
sub edx, 1
not edx
mov esi, 0xe6b50efd
sub edi, 0x8dd5336
dec edi
mov dword [eax], esi
and edi, edx
add edi, ecx
add ecx, 0x2dbcb524
mov esi, dword [eax]
mov edx, 0xf48ad28
dec edi
cmp esi, 0xe6b50efd
je 0x47b192
mov edx, 0
mov dword [edx], ebx
dec edi
add edx, 0xfe2ac5c9
add ebx, ecx
dec ebx
add edi, 0xfe7fe844
add edi, 0xdcda08f4
inc edi
add edi, edi
mov edx, section.UPX1
add edi, edi
not esi
mov edi, esi
mov ebx, 0x47ada1
inc edi
add esi, edi
mov ecx, 0
add edi, 1
add esi, 0x25ffcb81
mov eax, 0x47ada2
sub esi, edi
mov esi, edi
add esi, esi
lea eax, [ecx + eax]
and esi, edi
and edi, edi
sub edi, esi
mov eax, dword [eax]
or esi, edi
add edi, 0xcbac8a87
and eax, 0xff
mov esi, 0xaae605dd
add edi, 0x25f8acb8
inc ecx
add edi, edi
sub edi, esi
cmp ecx, 0x1f4
jne 0x47b210
mov ecx, 0
not edi
or esi, esi
inc edi
mov edi, 0xcf4f1042
mov esi, 0xa106c9d3
xor dword [edx], eax
inc esi
mov esi, 0x36b1661a
add edx, 2
add esi, edi
mov esi, edi
sub esi, edi
cmp edx, ebx
jl 0x47b1cf
sub edi, 0xa6af185a
add edi, edi
sub edi, 1
mov esi, edi
or edi, edi
mov ebx, section.UPX1
add edx, 0xd6c7abdc
or edi, edi
add edi, edx
mov ecx, section.UPX1
add edi, edi
or edi, edx
mov esi, 0x47ada1
dec edx
sub edx, 0xc00592a1
mov eax, 0
add edi, edx
or edx, edi
sub edi, 0x863df089
mov al, byte [ecx]
add edx, edx
sub edi, edx
and edx, edi
mov byte [ebx], al
and edi, edx
or edx, edi
add ebx, 1
and edx, edi
mov edx, edi
add edx, 1
add ecx, 2
add edx, edx
sub edi, edx
cmp ecx, esi
jle 0x47b280
mov edi, edx
add edx, edi
not edx
not esi
or edi, esi
sub esp, 4
mov dword [esp], 0x45e6a0
sub esi, edi
not edi
add edi, 0x8e75525c
ret