Function at 0x47afb8
Capabilities:
Encode data using xor

Disassembly:
pushal
mov esi, 0x38f68fc0
dec ebx
or eax, eax
popal
and ebx, ebx
add ebx, ebx
sub ebx, eax
mov eax, 0
mov edi, ebx
add esi, edx
sub esi, edx
mov ecx, edi
mov esi, edx
and esi, esi
sub esi, edx
mov ebx, ecx
mov edx, 0xb8a2b238
not esi
inc edx
inc eax
or esi, esi
add edx, edx
cmp eax, 0x1006096
jne 0x47afcd
and esi, edx
inc edx
add edx, edx
cmp eax, 0x1006096
je 0x47b00a
mov ebx, 0
mov eax, dword [ebx]
inc edx
inc edx
add ebx, 1
sub ebx, 0xc197a87e
sub eax, ebx
mov esi, 0x47ada2
and ebx, edi
mov ebx, 0xeb6b392c
mov eax, 0x47af96
dec ebx
and ebx, edi
sub ebx, edx
mov ecx, dword [esi]
or ebx, edi
sub edx, 0xfc950fb7
add ebx, ebx
and ecx, 0xff
sub edx, ebx
sub ebx, 1
or ebx, edi
xor dword [eax], ecx
inc edi
add edi, 0x3eff03db
sub edx, 1
inc eax
or ebx, edi
and ebx, edx
not ebx
add esi, 1
sub edi, 0xd8b686ca
sub ebx, edx
cmp eax, entry0
jl 0x47b030
add ebx, edi
add edx, edi
add ebx, 0x4c9d222e
mov edx, 0x174b5085
sub ebx, ecx
mov ebx, esi
dec esi
mov edi, 0x47af9a
and esi, ecx
add esi, 1
not ecx
mov edi, dword [edi]
sub ecx, edx
or ebx, ecx
mov edi, dword [edi]
dec edx
mov ecx, edx
push edi
not esi
or esi, esi
mov edi, 0x47af96
inc ebx
sub esi, ebx
add ecx, 1
mov edi, dword [edi]
add ebx, esi
mov edx, ecx
inc edx
mov edi, dword [edi]
and esi, edx
sub esi, 0x89bb45e
add edx, 0x62b5494a
push 0x47af9e
add ecx, 0x6ee1fcce
or ebx, ecx
dec edx
call edi
add ecx, edx
add ebx, esi
mov edi, dword [esp]
add esp, 4
add ecx, edx
not esi
inc ebx
push 0x47afab
sub ebx, 0xb8664b1b
and ebx, ecx
sub esp, 4
mov dword [esp], eax
sub edx, ebx
inc ebx
call edi
sub ecx, edx
dec edx
or esi, ecx
sub esp, 4
mov dword [esp], 0x40
mov ecx, 0x6cc65cbb
not esi
sub esi, ebx
push 0x3000
mov esi, 0x92d0947c
add edx, 0xe001d718
sub esp, 4
mov dword [esp], 0x20000a8b
add ebx, 1
sub esi, 1
push 0
inc ecx
and ebx, edx
sub ebx, 0xaca14a1a
call eax
sub ecx, 0x20092d11
mov edx, ecx
mov ecx, 0xe5d1feb8
add eax, 0x200009c5
inc ecx
or ebx, ecx
mov edi, 0x2f823148
dec ebx
not ebx
mov dword [eax], edi
sub ebx, 1
mov edx, 0x9bff3dc3
sub edx, 0xf0438ed
mov edi, dword [eax]
inc esi
sub edx, ebx
add edx, 0xd7483799
cmp edi, 0x2f823148
je 0x47b1a4
mov ecx, 0
mov edx, dword [ecx]
sub edx, 1
not ebx
sub esi, 0xa32fcbb8
add edx, ecx
add ebx, 0xeb07d276
mov eax, ebx
sub eax, 0xd3b1e613
mov esi, section.UPX1
mov eax, ebx
add ebx, 0xb4ca7cf7
sub ebx, eax
mov ecx, 0x47ada1
mov ebx, 0x26254dac
add ebx, ebx
mov edx, 0
mov eax, 0x653b69f4
mov eax, ebx
add ebx, eax
mov edi, 0x47ada2
sub ebx, 0x7d132f5d
add eax, 1
lea edi, [edi + edx]
add ebx, 0x4b9b5771
sub ebx, 0xe48c4bb4
mov edi, dword [edi]
sub eax, 1
sub ebx, 1
and edi, 0xff
sub ebx, 0x2bec7ace
or eax, eax
inc edx
inc eax
and eax, eax
cmp edx, 0x1f4
jne 0x47b238
mov edx, 0
sub ebx, eax
add eax, 0x5fba3e72
sub eax, ebx
inc eax
sub ebx, 0xec97ee03
xor dword [esi], edi
mov eax, ebx
sub ebx, eax
add esi, 2
mov ebx, eax
and ebx, eax
or eax, ebx
cmp esi, ecx
jl 0x47b1eb
inc eax
sub eax, ebx
mov eax, 0x6a29e02b
dec ebx
add ebx, 0x951b6257
mov esi, section.UPX1
dec edx
not edx
mov eax, section.UPX1
add ebx, 0x2dcfc64e
dec ebx
mov edi, 0x47ada1
mov edx, 0x91880cf9
and edx, edx
mov ecx, 0
mov edx, ebx
add edx, 1
mov cl, byte [eax]
inc ebx
add edx, edx
mov byte [esi], cl
not edx
dec edx
add esi, 1
inc edx
dec ebx
add eax, 2
add ebx, edx
inc ebx
add ebx, 0xae65f060
cmp eax, edi
jle 0x47b29f
and ebx, edx
not ebx
mov edx, ebx
dec ebx
mov eax, ebx
push 0x45e6a0
sub eax, 1
or ebx, ebx
mov eax, 0x38f6bb13
ret