Function at 0x47afb8
Capabilities:
Encode data using xor

Disassembly:
pushal
mov esi, 0x30cf5c2e
sub esi, 0x65e56602
not ebx
popal
add ebx, 1
add esi, 0xa7501b3d
mov eax, 0
mov ecx, edi
add ebx, ebx
dec ebx
mov esi, ecx
add ebx, edx
and ebx, ebx
sub ebx, edx
mov edi, esi
not ebx
or ebx, ebx
inc eax
sub edx, ebx
or ebx, edx
add edx, 0xefa62501
cmp eax, 0x1004431
jne 0x47afd8
and edx, edx
inc ebx
cmp eax, 0x1004431
je 0x47b014
mov edx, 0
mov cl, byte [edx]
add ebx, 1
add edx, edx
dec ebx
sub ebx, 1
mov ebx, 0xa1368a53
mov ebx, 0x47ada2
add edi, 0xa36335c7
or eax, eax
mov ecx, edi
mov esi, 0x47af96
mov ecx, edi
mov edi, eax
mov edx, dword [ebx]
dec ecx
and eax, edi
add eax, 0x8c7ee21c
and edx, 0xff
add edi, 0xa7fe17d7
mov edi, 0x2e76603d
sub eax, 0x1be0ece4
xor dword [esi], edx
add eax, 0x694f69d
sub ecx, eax
or ecx, eax
inc esi
add eax, edi
add edi, edi
sub eax, 0x1e00ed1e
inc ebx
sub eax, edi
and edi, ecx
add eax, edi
cmp esi, entry0
jl 0x47b040
and eax, edi
mov edi, 0x1ab45a9c
sub eax, 1
add eax, 0x74627f43
and ebx, edi
sub ebx, edx
sub edi, 0x271af8e9
mov ecx, 0x47af9a
and esi, edx
add edx, esi
or ebx, esi
mov ecx, dword [ecx]
and ebx, edi
and ebx, edi
and edi, edi
mov ecx, dword [ecx]
sub edi, 1
add edi, 0x7648f65d
inc ebx
sub esp, 4
mov dword [esp], ecx
add edx, edx
or ebx, esi
sub esi, 0x128ee168
mov ecx, 0x47af96
add edx, 1
not esi
sub ebx, esi
mov ecx, dword [ecx]
dec edi
or esi, edi
mov ecx, dword [ecx]
and edi, ebx
dec edx
push 0x47af9e
mov edi, 0x78dbf0df
add edx, 0xfaa1b878
call ecx
dec edi
not ebx
pop ecx
not edx
mov ebx, 0x40b97e32
or edx, edi
sub esp, 4
mov dword [esp], 0x47afab
sub esi, ebx
not esi
dec esi
push eax
inc edx
mov ebx, esi
add edi, edi
call ecx
or esi, esi
add esi, ebx
or ebx, esi
push 0x40
sub ebx, 0x1716027a
dec edx
push 0x3000
add edx, ebx
mov edx, edi
mov esi, edx
push 0x20000597
dec ebx
add ebx, 0xbf7aec83
inc esi
sub esp, 4
mov dword [esp], 0
and edx, esi
not edi
add esi, esi
call eax
sub ebx, esi
or esi, ebx
not esi
add eax, 0x200004de
dec edx
or edx, edi
sub ebx, edx
mov ecx, 0xd57b52b
or ebx, edi
sub edi, 0x85663105
mov edi, ebx
mov dword [eax], ecx
mov edx, ebx
and esi, esi
mov ecx, dword [eax]
inc esi
or edx, edx
cmp ecx, 0xd57b52b
je 0x47b1a0
mov edx, 0
mov cl, byte [edx]
sub ebx, edx
and edi, ebx
not edx
add esi, 0x6a2ddde5
and esi, ebx
dec esi
not esi
mov ecx, section.UPX1
inc esi
inc esi
mov edi, 0x47ada1
add esi, 0xa546d392
sub ebx, 0x916a84d5
sub esi, ebx
mov eax, 0
dec esi
dec ebx
mov edx, 0x47ada2
add esi, 0x6cf62826
and esi, esi
sub ebx, esi
lea edx, [edx + eax]
dec esi
sub ebx, 1
add ebx, 0xfb5674bf
mov edx, dword [edx]
or esi, ebx
sub ebx, 0x62161d42
dec esi
and edx, 0xff
inc esi
add ebx, 0x4f61b7a0
mov ebx, esi
add eax, 1
add ebx, 1
not esi
and esi, esi
cmp eax, 0x1f4
jne 0x47b228
mov eax, 0
sub ebx, esi
or esi, esi
not ebx
sub esi, 0xacc863fc
dec esi
xor dword [ecx], edx
sub esi, 0x24654b8b
mov esi, ebx
add ecx, 2
mov ebx, esi
mov esi, 0x57fe6dc3
cmp ecx, edi
jl 0x47b1d2
dec ebx
inc esi
or esi, ebx
add esi, 0x3d29d67e
add ebx, 0x16ecd9b0
mov edi, section.UPX1
or eax, eax
mov eax, ebx
mov esi, section.UPX1
not eax
and eax, eax
mov edx, 0x47ada1
add ebx, eax
sub eax, ebx
mov ecx, 0
mov ebx, 0x65ce25ac
sub eax, 0x7a8000a1
mov cl, byte [esi]
inc eax
sub eax, 1
mov byte [edi], cl
add ebx, eax
sub eax, 0xf8e9c18b
and eax, ebx
add edi, 1
inc eax
mov ebx, eax
add ebx, 0x573c7f87
add esi, 2
mov ebx, eax
or eax, eax
dec ebx
cmp esi, edx
jle 0x47b28f
mov ebx, 0x3b8ebcdc
sub ebx, 0x46035be1
and esi, ebx
sub ebx, 0x341c908
add ebx, esi
push 0x45e6a0
inc esi
mov ebx, 0x6d5bfae3
ret