Function at 0x47afb8
Capabilities:
Encode data using xor

Disassembly:
pushal
mov esi, 0x58e45133
and edi, edi
inc edi
popal
dec edx
sub edi, edx
and edx, edi
mov ecx, 0
mov eax, edx
mov ebx, esi
sub esi, ebx
mov edi, eax
mov esi, ebx
mov ebx, esi
mov edx, edi
sub esi, 0xd8f759a
not esi
mov ebx, esi
inc ecx
dec ebx
not ebx
inc ebx
cmp ecx, 0x100e079
jne 0x47afcc
mov ebx, 0xb3087d25
mov ebx, 0x68a6e578
dec esi
cmp ecx, 0x100e079
je 0x47b00f
mov eax, 0
mov ecx, dword [eax]
or esi, esi
sub esi, 0x247736f6
mov ebx, esi
and edi, edx
or edx, edx
mov ecx, 0x47ada2
or edx, edx
sub edi, 0x34e420fd
mov esi, 0x47af96
sub edx, edi
add ebx, 1
mov edx, 0xd9e4fafa
mov eax, dword [ecx]
add edx, 0xb3e69754
inc ebx
add edx, edx
and eax, 0xff
sub edx, edi
dec edx
xor dword [esi], eax
add edx, ebx
sub edi, edx
inc esi
add ebx, 0xc1ee98d3
mov edx, ebx
inc ecx
sub edx, 1
or edx, edi
cmp esi, entry0
jl 0x47b03c
and edi, edi
sub ebx, 0x26e0e273
dec ebx
sub edx, edi
and edi, ecx
add edi, 0x6d8eb16a
add edx, 0x465244f5
mov esi, 0x47af9a
and ecx, edi
sub edi, edx
mov ebx, 0x994845a5
mov esi, dword [esi]
not edx
inc edi
inc ebx
mov esi, dword [esi]
add ecx, ebx
add ebx, 1
mov ebx, 0x1f3ffbd0
sub esp, 4
mov dword [esp], esi
inc ecx
add edx, edx
mov esi, 0x47af96
or ebx, ebx
sub edi, 0xe52aa10b
mov esi, dword [esi]
sub edi, 0xf4d904f4
add ebx, 1
mov esi, dword [esi]
inc edi
mov ecx, edx
sub ebx, 0xf137008e
push 0x47af9e
sub ebx, ecx
not ecx
and ebx, edx
call esi
sub ebx, edx
and ebx, ebx
inc ebx
pop esi
sub ecx, 0xdbdaade0
add edi, ecx
sub edx, 0xced834df
sub esp, 4
mov dword [esp], 0x47afab
inc edi
sub ebx, 0x6f538945
push eax
mov edx, edi
mov ecx, edi
sub ebx, 0xeceaa3bb
call esi
sub edi, 0x92c14694
or ebx, ebx
add ebx, 1
push 0x40
add edi, 0xc45b9d9
dec edx
push 0x3000
sub edi, ebx
add edx, ecx
mov ebx, edx
push 0x20000738
sub edx, 0xa7a6da44
add ebx, ebx
push 0
and ebx, edx
add edx, ebx
call eax
or ecx, edx
sub ebx, edi
add eax, 0x20000688
mov ebx, edi
add edi, 0xa2b0928c
mov esi, 0x21ac0b38
mov edx, edi
mov edi, 0xe70fe679
not ebx
mov dword [eax], esi
add edi, 0x2eea1d2a
inc edx
mov esi, dword [eax]
sub ebx, edi
sub ecx, 1
cmp esi, 0x21ac0b38
je 0x47b19d
mov edx, 0
mov byte [edx], bl
mov edx, edi
sub edi, ebx
dec ebx
or ecx, edi
inc edi
add edi, edx
not edi
mov ecx, section.UPX1
mov edi, edx
inc edx
mov ebx, 0x47ada1
add edi, 0x6874cefd
add edx, 0xcc5955ab
sub edi, 0x4c718902
mov esi, 0
or edx, edx
or edx, edx
dec edx
mov eax, 0x47ada2
not edi
mov edi, edx
sub edi, 0xd3919957
lea eax, [eax + esi]
mov edx, 0xa1987b4d
add edi, 0xb53f8e5b
sub edx, 0x630227ec
mov eax, dword [eax]
add edi, edi
mov edx, 0x2ae963b0
and eax, 0xff
add edi, 0xbe5d2c97
sub edx, edi
inc esi
sub edi, 0x9d419a85
dec edx
cmp esi, 0x1f4
jne 0x47b221
mov esi, 0
add edi, 0xa7112d17
dec edi
sub edx, 0x1036bf27
add edi, 0xb54fbef5
sub edx, 0x6db4a790
xor dword [ecx], eax
not edi
mov edi, 0x29d181d5
add ecx, 2
sub edx, 1
mov edx, edi
sub edi, edx
cmp ecx, ebx
jl 0x47b1d2
mov edi, 0xcc3adef
inc edi
and edi, edi
mov edx, edi
add edx, edx
not edi
mov eax, section.UPX1
sub ecx, edi
inc edi
sub edi, ecx
mov edx, section.UPX1
mov edi, 0x830e48b5
sub edi, 0x860928a7
mov esi, 0x47ada1
not edi
and ecx, ecx
mov ebx, 0
dec ecx
add ecx, 0xdf83ee60
not ecx
mov bl, byte [edx]
sub edi, 0xafa9a9f3
add ecx, edi
mov edi, ecx
mov byte [eax], bl
or edi, ecx
dec edi
add ecx, 0x5067a42
inc eax
mov ecx, 0x42724057
mov edi, ecx
add edx, 2
add edi, 0x86ca18e3
not edi
inc edi
cmp edx, esi
jle 0x47b29a
mov edi, 0xce904adb
add edi, 0x2dc4d9f2
sub edx, 0xbca11a56
sub edx, 0xd69044c2
add edi, edi
sub esp, 4
mov dword [esp], 0x45e6a0
dec edi
sub edi, edx
ret