Function at 0x47afb8
Capabilities:
Encode data using xor

Disassembly:
pushal
mov esi, 0xc92146b1
and edi, ecx
sub ecx, 1
or edi, ecx
popal
sub edi, 1
sub edi, 0x1672a33f
sub ecx, edi
mov ecx, 0
mov edx, eax
add ebx, 0xe789cabe
add ebx, ebx
mov edi, edx
sub esi, ebx
not esi
and ebx, esi
mov eax, edi
dec ebx
dec esi
inc ecx
or ebx, esi
add esi, ebx
cmp ecx, 0x100ae25
jne 0x47afdc
add esi, esi
sub esi, ebx
add esi, 0x402205e6
cmp ecx, 0x100ae25
je 0x47b01c
mov edx, 0
mov bl, byte [edx]
inc ebx
add esi, 0x1bf36d22
inc ebx
mov ecx, 0x6ff7bb48
sub ecx, 0x7e061ca5
dec ecx
mov ebx, 0x47ada2
add esi, 0x749ac338
sub ecx, 0x27405761
mov edi, 0x47af96
mov edx, ecx
sub ecx, 0x34b0e4b6
sub edx, 0x844bac51
mov eax, dword [ebx]
sub edx, 0x515d69b7
add ecx, 0x1b95d748
or edx, edx
and eax, 0xff
add esi, 0xbb59ad5c
mov ecx, esi
not edx
xor dword [edi], eax
and ecx, esi
or ecx, esi
sub edx, 1
inc edi
sub edx, 0x455a1c63
and ecx, esi
inc ebx
and edx, esi
sub edx, ecx
cmp edi, entry0
jl 0x47b054
and ecx, ecx
mov edx, 0x93d0a3e2
add esi, edx
dec ecx
sub ecx, edi
sub edi, 1
mov esi, 0x47af9a
dec edx
add ecx, 0xbf05edd4
mov edx, 0x7a89b4d5
mov esi, dword [esi]
dec ebx
sub edx, 0x1f8271a9
sub edi, edx
mov esi, dword [esi]
and edi, edx
add edi, edx
push esi
or edx, edx
mov ecx, edx
dec edi
mov esi, 0x47af96
mov edx, 0x3673b082
add ecx, 1
mov esi, dword [esi]
mov ebx, edx
not edx
mov esi, dword [esi]
and edi, edx
and edi, edi
sub esp, 4
mov dword [esp], 0x47af9e
inc ecx
and ebx, ebx
call esi
add ebx, 1
or edx, edi
pop esi
add ebx, 1
dec edi
sub esp, 4
mov dword [esp], 0x47afab
sub edi, 0x6ffc358e
add edi, 0x4c15aa49
and edi, edi
push eax
add ebx, 0xeaf9de5
inc edx
and edx, ebx
call esi
inc ebx
dec ecx
or edi, ecx
sub esp, 4
mov dword [esp], 0x40
sub ebx, 1
not ecx
mov edx, ecx
push 0x3000
and ecx, ebx
add ebx, edx
sub esp, 4
mov dword [esp], 0x20000b8b
dec edi
dec edi
sub edi, edx
sub esp, 4
mov dword [esp], 0
sub edi, 0xebb8eed5
sub edx, ecx
call eax
and ecx, ecx
sub ecx, 0x3f18b180
add eax, 0x20000acb
add edx, edi
not ebx
mov ebx, 0x4bda2ef
mov esi, 0xa6525c24
mov edi, ecx
or ebx, edx
inc edi
mov dword [eax], esi
mov edx, 0x91ab3bc4
dec ecx
mov esi, dword [eax]
add ebx, 0x92b6c351
dec ecx
mov edi, 0xd8954a4
cmp esi, 0xa6525c24
je 0x47b1bc
mov ebx, 0
mov dword [ebx], eax
sub ecx, ebx
sub ecx, 0x695644ac
add ebx, 0x1fce5105
not edi
mov ecx, ebx
and edi, edi
mov ecx, edi
mov esi, section.UPX1
or edi, ecx
add ecx, 0x72e1893a
mov eax, 0x47ada1
add ecx, 0x38458d06
sub edi, 0x239a20e9
mov ebx, 0
sub ecx, edi
dec ecx
mov edx, 0x47ada2
add edi, 0x60388088
add edi, edi
lea edx, [edx + ebx]
sub ecx, 1
and edi, ecx
mov edx, dword [edx]
and edi, edi
dec ecx
not ecx
and edx, 0xff
mov ecx, 0xb641cf2c
sub ecx, 0xbf75cca9
inc ebx
sub edi, 0xa603fe4f
add ecx, edi
cmp ebx, 0x1f4
jne 0x47b23e
mov ebx, 0
sub edi, ecx
sub edi, 0xdba02198
dec edi
sub ecx, 1
xor dword [esi], edx
add ecx, 0x48b7e3d5
dec ecx
add edi, edi
add esi, 2
and ecx, ecx
not ecx
cmp esi, eax
jl 0x47b1f8
not edi
not ecx
sub edi, 0x76e848d0
dec ecx
add ecx, ecx
mov ebx, section.UPX1
sub esi, 0x895aab60
or esi, edi
mov esi, edi
mov edx, section.UPX1
sub edi, 0xc33e2c5f
add esi, esi
mov ecx, 0x47ada1
add esi, edi
or esi, edi
mov edi, 0x79ec3cb1
mov eax, 0
and esi, esi
mov edi, esi
mov al, byte [edx]
add esi, 1
inc esi
mov byte [ebx], al
add esi, edi
not esi
mov esi, 0x63ad5a04
add ebx, 1
or edi, edi
mov esi, edi
add edx, 2
add edi, 1
add edi, edi
mov esi, 0xd39df400
cmp edx, ecx
jle 0x47b2aa
sub edi, 0xe30a2a1b
mov esi, edi
sub ecx, edi
or ecx, edi
add edi, 0x61bcafe6
push 0x45e6a0
or edi, edi
add edi, 0x54fc8810
add edi, 0xd199aff5
ret