Function at 0x47afb8
Capabilities:
Encode data using xor

Disassembly:
pushal
mov esi, 0x3f8a0d1f
add ecx, ecx
mov ecx, 0x658e2fe3
popal
mov edx, 0xcd3848d6
add ecx, 0xcdc919a4
add ecx, edx
mov ebx, 0
mov esi, edi
inc ecx
and ecx, ecx
not ecx
mov edx, esi
add eax, 1
mov ecx, eax
mov edi, edx
mov ecx, eax
sub ecx, 0x3830b7fc
inc ebx
not eax
or ecx, ecx
add ecx, 1
cmp ebx, 0x100d6d9
jne 0x47afd8
add ecx, ecx
mov eax, ecx
mov eax, ecx
cmp ebx, 0x100d6d9
je 0x47b01f
mov ecx, 0
mov dl, byte [ecx]
and eax, eax
or eax, eax
and ecx, ecx
mov ecx, edx
add edx, 0xd2852ff5
mov eax, 0x47ada2
add ebx, 0x1ed804ae
not ecx
mov esi, 0x47af96
dec edx
sub ebx, 0xf548055e
and edx, ebx
mov edi, dword [eax]
or ebx, ecx
sub ebx, 0xfb03ee1d
and edi, 0xff
mov edx, 0x8af2b78b
inc ebx
xor dword [esi], edi
not ebx
sub edx, ecx
inc edx
inc esi
dec ebx
mov edx, 0x19c13be6
dec ecx
inc eax
sub ecx, 1
add ecx, ebx
cmp esi, entry0
jl 0x47b048
add ecx, ecx
sub ecx, 1
inc edx
mov edx, ebx
add ebx, 0xf5218efd
not edi
add edx, ebx
mov ecx, 0x47af9a
sub edi, 0x7af3c9c
sub ebx, 0xc5506526
mov ecx, dword [ecx]
add ebx, 0x3ae2899b
add edi, esi
sub edx, edi
mov ecx, dword [ecx]
mov esi, edi
or edi, edx
sub ebx, 1
push ecx
sub ebx, edi
or ebx, edx
mov ecx, 0x47af96
mov ebx, esi
sub esi, 1
mov ecx, dword [ecx]
not ebx
sub ebx, 0xd3c31068
mov ecx, dword [ecx]
add edi, 1
mov ebx, esi
mov ebx, esi
push 0x47af9e
sub ebx, edi
not ebx
call ecx
and esi, esi
mov esi, 0xec9449f1
mov ecx, dword [esp]
add esp, 4
add ebx, edi
dec esi
push 0x47afab
inc edx
inc esi
add esi, ebx
sub esp, 4
mov dword [esp], eax
mov ebx, 0x7859bc04
inc edi
call ecx
mov edi, ebx
or ebx, edx
inc edx
sub esp, 4
mov dword [esp], 0x40
sub edx, edi
or esi, edi
and edi, esi
push 0x3000
or edi, edx
sub edx, ebx
push 0x20000aae
not edi
add ebx, edx
push 0
add ebx, 0x530cf1bf
and esi, ebx
or esi, edi
call eax
or ebx, ebx
add edx, 0xba058aa2
add eax, 0x200009e7
sub ebx, 0x97452954
or edi, esi
add edx, 0xd6d3b06b
mov ecx, 0xf74b180a
not edx
sub ebx, 0x82e6e2fc
mov dword [eax], ecx
add edi, 0xe806983e
inc edi
mov ecx, dword [eax]
and esi, edx
mov edx, esi
cmp ecx, 0xf74b180a
je 0x47b199
mov eax, 0
mov ebx, dword [eax]
or edi, edi
dec esi
add edx, 0xf22f4ff1
add edx, edx
mov edx, ecx
add edx, 0xe436147d
mov ecx, 0x8d06500c
mov eax, section.UPX1
add ecx, 0x2140edad
sub ecx, 0x21e594a4
mov esi, 0x47ada1
add ecx, edx
add edx, 0x9e7e2dea
inc edx
mov edi, 0
sub ecx, edx
and edx, ecx
mov ebx, 0x47ada2
inc ecx
mov ecx, 0xfaca333a
lea ebx, [edi + ebx]
add edx, edx
and ecx, edx
mov ebx, dword [ebx]
or ecx, edx
sub edx, 0xc6e74bf1
sub ecx, 1
and ebx, 0xff
sub edx, ecx
inc ecx
and ecx, ecx
inc edi
not ecx
not ecx
cmp edi, 0x1f4
jne 0x47b218
mov edi, 0
mov ecx, 0x72e460bb
dec edx
and ecx, edx
sub edx, ecx
xor dword [eax], ebx
dec edx
and ecx, ecx
add eax, 2
add edx, 0x7909d455
dec ecx
cmp eax, esi
jl 0x47b1d9
and ecx, ecx
inc edx
mov edx, ecx
inc ecx
mov edx, section.UPX1
dec ecx
sub ecx, 0xe306126a
sub ecx, esi
mov edi, section.UPX1
inc esi
sub esi, 0x579fc7ab
sub ecx, esi
mov ebx, 0x47ada1
not ecx
mov ecx, esi
mov esi, 0x90724698
mov eax, 0
and ecx, esi
sub ecx, 0xea1b3a37
mov al, byte [edi]
inc ecx
add esi, 0xff2c66fb
mov ecx, 0x10edcd92
mov byte [edx], al
mov ecx, esi
add esi, 1
or ecx, ecx
inc edx
or esi, ecx
mov esi, ecx
add edi, 2
add esi, ecx
and esi, esi
cmp edi, ebx
jle 0x47b279
sub ecx, 0x386604c4
add esi, 0x209b62e6
dec ecx
inc edx
or ecx, edx
dec edx
push 0x45e6a0
mov edx, 0x28a20775
add ecx, ecx
ret