Function at 0x47afb8
Capabilities:
Encode data using xor

Disassembly:
pushal
mov esi, 0x1c78624a
add eax, 0xebfae9f6
sub eax, ebx
popal
mov eax, 0x92fde281
mov ebx, 0xd1c2347b
and ebx, eax
mov edx, 0
mov ecx, ebx
dec esi
or edi, esi
mov eax, ecx
mov esi, edi
sub esi, 0x30d64688
mov ebx, eax
dec esi
not edi
inc edx
dec esi
mov edi, esi
sub esi, 0xc59d2471
cmp edx, 0x1006895
jne 0x47afd8
and esi, esi
inc esi
mov edi, esi
cmp edx, 0x1006895
je 0x47b016
mov ebx, 0
mov dword [ebx], eax
and edi, edi
and edi, edi
sub esi, edi
or eax, ebx
sub ebx, 0xe5d77c5c
mov eax, 0xdb1a17a5
mov edi, 0x47ada2
sub ebx, 0xcb2d0254
and eax, eax
sub ebx, eax
mov esi, 0x47af96
sub ebx, 0xa0da2828
add eax, ebx
add ebx, 0x7e5b4863
mov edx, dword [edi]
add ebx, 0x26c8fd64
add ebx, ecx
and edx, 0xff
add eax, 0xfdcec851
or eax, eax
add ebx, ecx
xor dword [esi], edx
inc ebx
add eax, 0x1baafd
inc esi
sub ebx, eax
add ecx, 0x621dd56c
inc edi
add eax, 0x3b11d87d
and ecx, ecx
mov eax, 0xb485d6c1
cmp esi, entry0
jl 0x47b04b
sub eax, 0x5dcbc15d
add eax, 0x4bc369b
sub eax, 0x788c0aa2
sub eax, ecx
or edi, esi
or esi, edi
mov ebx, 0x47af9a
sub edx, 1
mov esi, 0x7ef8fd9a
mov edx, 0x98570b00
mov ebx, dword [ebx]
add edx, edx
sub edx, ecx
or esi, esi
mov ebx, dword [ebx]
inc ecx
inc esi
sub esp, 4
mov dword [esp], ebx
mov edx, esi
sub edi, ecx
mov edx, 0x2b1b4236
mov ebx, 0x47af96
mov edx, 0x1b791425
not esi
mov ebx, dword [ebx]
inc ecx
add edx, 1
mov ebx, dword [ebx]
sub ecx, edx
inc esi
add edx, ecx
push 0x47af9e
mov esi, 0x5134c1c8
dec esi
call ebx
dec edx
mov ecx, 0x553c0791
pop ebx
and esi, ecx
sub esi, edi
mov edx, edi
sub esp, 4
mov dword [esp], 0x47afab
mov esi, 0xc46d7846
or edi, ecx
push eax
or edx, edi
not edi
call ebx
add ecx, 0x6f900df3
sub edi, 0xdd5357ff
mov ecx, 0x7a37ee54
push 0x40
and edi, ecx
mov ecx, esi
mov edx, 0x1059eafe
sub esp, 4
mov dword [esp], 0x3000
or ecx, esi
sub edx, esi
inc edi
push 0x20000e2d
or edx, ecx
sub ecx, edx
sub esp, 4
mov dword [esp], 0
not edi
mov esi, 0xbfb5dc11
call eax
add esi, edx
dec edx
add esi, 1
add eax, 0x20000d87
mov edi, ecx
add edi, ecx
mov ebx, 0xdb39d4ff
or ecx, edx
add edx, esi
mov dword [eax], ebx
mov edx, 0x2b85b843
mov ecx, edx
mov ebx, dword [eax]
sub edi, 0xd718adb5
mov esi, 0xe7d33603
dec edx
cmp ebx, 0xdb39d4ff
je 0x47b1b3
mov edx, 0
mov eax, dword [edx]
not esi
add edi, 0xf1884da7
inc ecx
inc edx
add eax, 1
sub ebx, 0xe6b559dd
add ebx, eax
mov esi, section.UPX1
sub eax, 0x62068d04
mov eax, 0x7bc1f31f
mov edi, 0x47ada1
add eax, 0x4ce830a
sub ebx, 0xdf12aab6
not eax
mov ecx, 0
sub eax, ebx
dec ebx
mov eax, 0x4eaf8a77
mov edx, 0x47ada2
add eax, 1
inc eax
lea edx, [ecx + edx]
add eax, ebx
not eax
mov edx, dword [edx]
or ebx, ebx
sub ebx, eax
mov eax, ebx
and edx, 0xff
add eax, eax
inc ebx
inc ecx
mov eax, ebx
sub eax, 1
or eax, ebx
cmp ecx, 0x1f4
jne 0x47b237
mov ecx, 0
sub ebx, 0xbfc5d057
mov eax, 0x5aa1aafb
and eax, ebx
add ebx, 1
or eax, eax
xor dword [esi], edx
mov eax, ebx
and ebx, ebx
and ebx, eax
add esi, 2
dec ebx
sub ebx, 1
cmp esi, edi
jl 0x47b1fb
mov eax, 0xe4e8f84
sub eax, ebx
and eax, eax
inc ebx
mov ecx, section.UPX1
mov esi, ebx
dec esi
mov edx, section.UPX1
mov ebx, esi
inc ebx
mov edi, 0x47ada1
sub esi, 0xc9200031
dec esi
add ebx, 0xf130d578
mov eax, 0
sub esi, ebx
dec ebx
mov esi, ebx
mov al, byte [edx]
and ebx, esi
add ebx, esi
and esi, ebx
mov byte [ecx], al
inc esi
mov ebx, 0x3dc21c43
add ecx, 1
add esi, esi
not esi
add edx, 2
add esi, 0xc3044548
or ebx, ebx
cmp edx, edi
jle 0x47b29f
not ebx
add ebx, ebx
mov esi, ebx
sub ebx, 0xad1ef62b
or ebx, ebx
push 0x45e6a0
sub ebx, eax
mov ebx, 0x484b7d41
add ebx, 1
ret