Function at 0x47afb8
Capabilities:
Encode data using xor

Disassembly:
pushal
mov esi, 0x7c22b663
add ebx, 1
and ebx, ecx
popal
sub ebx, 1
add ecx, 0xf6524121
add ebx, ecx
mov ebx, 0
mov ecx, eax
mov edx, 0xa80c148e
add edx, 0x38194669
mov edi, ecx
add esi, esi
dec edx
mov eax, edi
mov edx, esi
mov edx, 0x7d74c0a
not esi
inc ebx
or edx, edx
and edx, edx
cmp ebx, 0x100bdae
jne 0x47afda
mov esi, 0x232831a7
dec esi
and edx, esi
cmp ebx, 0x100bdae
je 0x47b01f
mov eax, 0
mov byte [eax], cl
not esi
add edx, 0xc900ac55
add ebx, ebx
add ebx, 0x6c88f2af
mov edi, 0x47ada2
add esi, esi
inc esi
sub esi, 0xae415ef0
mov eax, 0x47af96
not ebx
sub esi, edx
mov ecx, dword [edi]
dec ebx
sub esi, ebx
not ebx
and ecx, 0xff
sub ebx, 0x8d9d8ca0
mov edx, esi
xor dword [eax], ecx
mov edx, ebx
and ebx, edx
sub esi, edx
inc eax
mov ebx, 0xbedeba28
sub esi, edx
inc edi
mov esi, 0x57d1fbb7
mov esi, edx
cmp eax, entry0
jl 0x47b046
add edx, 1
dec esi
not esi
add ebx, 0x30538d16
sub ebx, 0xafeec110
sub ebx, esi
mov edi, 0x47af9a
dec ebx
not edx
mov edi, dword [edi]
and ecx, ebx
dec ecx
mov esi, 0x7da15fe3
mov edi, dword [edi]
or ebx, esi
add ecx, ebx
sub esp, 4
mov dword [esp], edi
and esi, ebx
and ebx, ecx
sub ebx, 0xd71509d2
mov edi, 0x47af96
dec esi
sub ecx, 0x569f6df4
mov edi, dword [edi]
and ebx, ecx
and ecx, esi
mov edi, dword [edi]
sub ecx, 0xbb0e21db
mov ebx, 0xb1708bb9
mov edx, 0x3ac616d1
push 0x47af9e
sub ebx, 1
inc ebx
call edi
inc edx
sub esi, ebx
mov ecx, esi
pop edi
or ebx, ecx
not edx
push 0x47afab
add esi, 1
mov esi, ecx
or ecx, esi
push eax
mov ebx, 0x48014ad9
inc esi
add esi, 0xad0e695c
call edi
mov edx, esi
mov edx, ebx
push 0x40
or edx, ecx
not ebx
sub edx, 0xf8b6f744
push 0x3000
sub ecx, 0x7b672367
and edx, ebx
push 0x20000820
not ebx
inc esi
add edx, ebx
push 0
mov ecx, 0xdb3d52e5
sub ecx, 0xf25fa2b3
mov ecx, esi
call eax
sub edx, 0xb39d4eed
or ebx, ecx
sub ecx, 0xdafd1a68
add eax, 0x2000077b
sub ecx, 1
sub ecx, esi
add edx, 0x2fb0e358
mov edi, 0xf411dcfd
not ebx
add esi, 0xaa0fc7de
inc ebx
mov dword [eax], edi
dec edx
sub edx, ecx
mov edi, dword [eax]
mov esi, 0x8d41f422
add ebx, 0x75746f9f
mov ebx, 0xe5514ac8
cmp edi, 0xf411dcfd
je 0x47b1ac
mov eax, 0
mov byte [eax], bl
and ebx, edx
mov edx, 0xec1a7971
sub edx, 0xd905ec69
mov esi, 0x2bad3a96
not ebx
not ebx
and ebx, ebx
and ebx, ebx
not ebx
mov edx, section.UPX1
add ecx, ebx
not ecx
not ecx
mov esi, 0x47ada1
and ebx, ecx
sub ecx, 0x2024ac91
dec ecx
mov edi, 0
or ecx, ecx
add ecx, ecx
mov ecx, 0x797a9570
mov eax, 0x47ada2
mov ecx, 0x31b432d9
inc ebx
lea eax, [eax + edi]
and ecx, ebx
dec ecx
mov eax, dword [eax]
sub ebx, 1
add ebx, ecx
and ebx, ebx
and eax, 0xff
mov ebx, ecx
and ecx, ebx
add edi, 1
not ecx
not ecx
and ecx, ecx
cmp edi, 0x1f4
jne 0x47b22f
mov edi, 0
not ebx
sub ecx, ebx
or ebx, ebx
not ecx
mov ebx, 0x81c7a5bd
xor dword [edx], eax
and ebx, ecx
sub ebx, 0xf343519b
add edx, 2
dec ebx
sub ebx, ecx
cmp edx, esi
jl 0x47b1ef
and ebx, ecx
not ebx
sub ecx, ebx
mov ebx, ecx
or ecx, ebx
mov edx, section.UPX1
add edi, 1
add edi, 1
mov ebx, section.UPX1
sub esi, edi
mov edi, esi
mov ecx, 0x47ada1
not edi
sub esi, edi
add edi, esi
mov eax, 0
or edi, esi
mov edi, esi
sub esi, edi
mov al, byte [ebx]
and edi, edi
add edi, esi
and edi, esi
mov byte [edx], al
add edi, esi
not edi
and esi, edi
inc edx
add edi, esi
add esi, edi
or edi, edi
add ebx, 2
not edi
inc edi
sub edi, 0x12632ef3
cmp ebx, ecx
jle 0x47b291
and esi, esi
dec esi
add edi, 0x2979c03c
mov ebx, ecx
inc ecx
and ebx, ebx
push 0x45e6a0
mov ebx, ecx
and ebx, ecx
sub ebx, 1
ret