Function at 0x47afb8
Capabilities:
Encode data using xor

Disassembly:
pushal
mov esi, 0xd90b0c38
add eax, 0x10611c0b
add eax, eax
popal
sub eax, esi
sub esi, 1
and eax, esi
mov eax, 0
mov edi, edx
add esi, ebx
dec esi
mov ecx, edi
inc ebx
and ebx, ebx
add esi, esi
mov edx, ecx
sub esi, 0x6a8dcea8
and ebx, ebx
not esi
inc eax
sub ebx, 0x88dc2114
add ebx, 0xe341a393
cmp eax, 0x1009afc
jne 0x47afd6
add ebx, 1
and esi, esi
add ebx, ebx
cmp eax, 0x1009afc
je 0x47b020
mov ecx, 0
mov eax, dword [ecx]
inc ebx
mov ebx, esi
inc ebx
add eax, eax
not esi
sub esi, 0xe9772329
mov esi, 0x47ada2
and ecx, ecx
dec ebx
mov ebx, edi
mov eax, 0x47af96
mov ebx, ecx
mov edi, 0xf6c3aeb9
mov edx, dword [esi]
inc edi
sub ebx, ecx
mov ecx, ebx
and edx, 0xff
not ebx
add ebx, ebx
dec ecx
xor dword [eax], edx
mov ebx, 0x9bed3678
sub edi, ebx
dec ebx
add eax, 1
sub ecx, 0xddd269b8
or ebx, ecx
inc esi
not ebx
dec ecx
cmp eax, entry0
jl 0x47b044
mov ecx, edi
not edi
sub ecx, 0x2a7e5bf4
mov ecx, ebx
dec esi
inc ecx
mov esi, ebx
mov edi, 0x47af9a
add ecx, 1
mov esi, 0x992a8b3c
and edx, edx
mov edi, dword [edi]
mov esi, 0xc717ffc5
add ecx, 0x365fa3e7
sub ecx, 0x5c010cc2
mov edi, dword [edi]
sub esi, 0x2bf8cfde
add edx, edx
sub esp, 4
mov dword [esp], edi
inc ebx
not ecx
mov edi, 0x47af96
add ecx, esi
sub esi, ebx
mov edi, dword [edi]
mov ecx, ebx
and ebx, ecx
mov edi, dword [edi]
mov esi, 0x7841ffda
or ecx, ecx
sub ecx, 0xd8984127
push 0x47af9e
or esi, ebx
sub ecx, 0x9865e306
mov edx, ebx
call edi
dec ecx
not ebx
mov ebx, 0x27b27348
pop edi
or esi, edx
inc ecx
add ebx, 0xcafba8d
push 0x47afab
add ecx, ecx
sub ecx, 0x77d4da7d
add ecx, ecx
sub esp, 4
mov dword [esp], eax
mov edx, ecx
or esi, ecx
not edx
call edi
add ebx, ecx
add ebx, edx
not ecx
push 0x40
mov ecx, 0xad4e921d
or ecx, edx
inc edx
push 0x3000
add ecx, edx
and ebx, ebx
push 0x200009da
not ebx
add esi, 0xc412b210
sub esp, 4
mov dword [esp], 0
not edx
not ebx
call eax
and edx, ecx
inc edx
add eax, 0x2000093f
not esi
add edx, 0x2ffdd799
mov edi, 0x460868a1
add esi, ebx
and ebx, ecx
mov dword [eax], edi
mov ebx, edx
mov esi, edx
add ecx, 0xb705f888
mov edi, dword [eax]
sub edx, 0x4a6319cd
mov esi, 0x20957c83
cmp edi, 0x460868a1
je 0x47b19f
mov ebx, 0
mov ecx, dword [ebx]
mov esi, 0xad99e280
add edx, edx
add edx, edx
mov edx, 0x68bc4070
and eax, esi
add esi, 0xbf1c66a4
mov edx, section.UPX1
sub eax, 0x449825c5
sub esi, eax
sub esi, eax
mov edi, 0x47ada1
and eax, esi
sub esi, eax
mov ebx, 0
and esi, esi
mov eax, esi
mov ecx, 0x47ada2
add eax, eax
and eax, esi
or esi, esi
lea ecx, [ecx + ebx]
sub eax, esi
dec esi
mov ecx, dword [ecx]
sub esi, eax
mov esi, 0x29b04849
and ecx, 0xff
mov eax, esi
mov eax, esi
add ebx, 1
not esi
sub eax, esi
cmp ebx, 0x1f4
jne 0x47b211
mov ebx, 0
inc eax
add esi, 0x98a6ac41
and esi, eax
add eax, eax
or eax, eax
xor dword [edx], ecx
and eax, eax
mov esi, 0xb861965e
sub eax, 0xa10bbf2d
add edx, 2
sub eax, 0x79ec9af7
mov esi, 0x20397a9e
cmp edx, edi
jl 0x47b1d6
inc esi
mov eax, esi
sub eax, 0x6dbf61d9
or esi, esi
sub esi, 0xb31db2da
add esi, 0x454968f1
mov edx, section.UPX1
sub ecx, 1
add edi, edi
mov esi, section.UPX1
add edi, ecx
not ecx
mov eax, 0x47ada1
sub edi, 0x7eaba794
inc ecx
mov ebx, 0
or ecx, edi
sub edi, ecx
mov ecx, 0xcfc5ce0d
mov bl, byte [esi]
sub ecx, edi
not edi
inc ecx
mov byte [edx], bl
sub edi, 0xa0f70841
dec edi
add ecx, edi
inc edx
sub edi, ecx
sub edi, 0xd3cf90c5
add ecx, edi
add esi, 2
inc edi
sub ecx, edi
cmp esi, eax
jle 0x47b28d
add edi, edi
mov ecx, edi
sub eax, esi
inc eax
mov esi, 0x61ceaf2e
push 0x45e6a0
and esi, eax
and eax, eax
ret