Function at 0x47afb8
Capabilities:
Encode data using xor

Disassembly:
pushal
mov esi, 0xe3b19d3e
inc edx
sub eax, 0xa933cdbb
mov eax, edx
popal
dec eax
add eax, 0x1320b2fb
mov eax, 0
mov ebx, edi
or edx, ecx
add ecx, edx
mov esi, ebx
add ecx, 0x14e2922b
add edx, 0x41546a10
mov edi, esi
mov ecx, 0xf8d1d11c
add ecx, ecx
dec edx
add eax, 1
dec edx
and edx, edx
add ecx, ecx
cmp eax, 0x100860a
jne 0x47afd4
mov edx, 0x63f10599
not edx
dec edx
cmp eax, 0x100860a
je 0x47b020
mov edx, 0
mov cl, byte [edx]
or edx, edx
not ecx
sub ecx, 1
sub eax, edx
sub eax, 0x3120794f
add edx, edx
mov ebx, 0x47ada2
mov eax, ecx
add ecx, edi
mov edx, 0x47af96
sub ecx, eax
add ecx, eax
mov esi, dword [ebx]
add eax, eax
sub ecx, 1
and esi, 0xff
sub eax, 1
add ecx, 0xf4cc1033
add edi, 0x11ddad9
xor dword [edx], esi
or eax, eax
dec edi
or ecx, ecx
inc edx
not ecx
add ecx, 0xbbbb2fcb
dec edi
inc ebx
inc edi
sub eax, ecx
cmp edx, entry0
jl 0x47b046
add ecx, eax
add ecx, 0xb0ca00c
inc eax
mov edi, 0xbc2924b5
and edi, eax
mov ebx, edx
sub edx, 0x551b0d6e
or ecx, edx
mov edi, 0x47af9a
mov edx, 0xe3d8f5d5
add ebx, ecx
mov edi, dword [edi]
add ebx, 0x4a0a980
sub esi, ecx
sub esi, ecx
mov edi, dword [edi]
not ebx
add ebx, edx
sub esp, 4
mov dword [esp], edi
add esi, esi
and edx, ebx
mov edi, 0x47af96
not edx
sub esi, edx
mov ecx, 0xae0fa69a
mov edi, dword [edi]
mov ecx, ebx
sub edx, 0xe8b97c8e
mov edi, dword [edi]
sub edx, 0x760629e5
dec esi
push 0x47af9e
add ecx, ebx
sub edx, 0xefd45c62
dec ebx
call edi
add esi, 0xfec93a62
mov ecx, 0x50a0f330
pop edi
add ecx, 0x4ecd0cc8
or ecx, esi
sub esi, ebx
push 0x47afab
and esi, ecx
mov ecx, 0x16323d3b
add ecx, ebx
push eax
add ebx, 0x1273bd7f
sub esi, 0x177dcddf
call edi
sub esi, ecx
mov ebx, 0xa8bd6ba5
push 0x40
and ebx, esi
mov esi, 0xf6dc6919
push 0x3000
sub edx, 0x630e174d
mov ebx, 0xb2ac973b
push 0x20000ca0
mov esi, 0xc0427a9f
add ecx, 0x6dda9b6
add edx, esi
push 0
not edx
dec esi
add esi, 0x3a515fef
call eax
add ecx, 0xb49b5282
sub esi, 0xec1e2108
inc ecx
add eax, 0x20000c34
add esi, 0x55221aef
mov ecx, 0xe15ccf00
mov edi, 0x1aa13d57
add ebx, edx
sub esi, 1
sub ecx, ebx
mov dword [eax], edi
mov esi, ecx
not esi
mov edi, dword [eax]
add edx, 0xe9c67506
sub esi, 0x9766a085
cmp edi, 0x1aa13d57
je 0x47b1c4
mov ebx, 0
mov dl, byte [ebx]
or ecx, ebx
not esi
dec edx
mov ecx, edx
and edx, esi
sub edx, esi
mov edx, 0xc881a95b
add edx, 0x7414e36b
mov esi, section.UPX1
add eax, eax
sub eax, edx
inc edx
mov ecx, 0x47ada1
or edx, edx
sub eax, edx
mov ebx, 0
sub eax, 1
dec edx
mov edi, 0x47ada2
add edx, eax
mov eax, 0x5602c012
lea edi, [edi + ebx]
add edx, 0x41870ae7
inc eax
mov eax, 0xedde3f00
mov edi, dword [edi]
mov eax, 0x341ce4f9
and eax, eax
and edi, 0xff
add eax, 0xa90a1a71
sub eax, edx
inc ebx
add eax, 1
add eax, 1
cmp ebx, 0x1f4
jne 0x47b245
mov ebx, 0
add eax, 0x8e0c4a2d
inc edx
sub edx, 1
and edx, edx
xor dword [esi], edi
and eax, eax
sub eax, 0x66d2757e
not edx
add esi, 2
mov eax, edx
mov edx, 0x2338e5fa
cmp esi, ecx
jl 0x47b1f9
sub eax, 0xc925e6a7
or edx, eax
sub eax, edx
mov edx, 0x7d743c4c
not eax
mov eax, section.UPX1
mov esi, ebx
not esi
sub esi, 0x8fc9865b
mov ecx, section.UPX1
dec esi
or ebx, ebx
mov edi, 0x47ada1
not esi
not esi
mov ebx, 0x47335d64
mov edx, 0
or esi, esi
or ebx, ebx
mov ebx, esi
mov dl, byte [ecx]
mov ebx, esi
mov ebx, esi
mov byte [eax], dl
sub esi, 0x8a92691d
add ebx, 0x6293f0f6
sub esi, 0x9c05e8c8
add eax, 1
add ebx, ebx
sub esi, ebx
or esi, esi
add ecx, 2
and esi, esi
add ebx, 0xf1004b99
cmp ecx, edi
jle 0x47b2b6
mov esi, 0x88839397
mov esi, 0x1173cbc9
mov edx, eax
add eax, 1
or eax, edx
push 0x45e6a0
add edx, eax
inc eax
add edx, 0x5b76ad0
ret