Function at 0x47afb8
Capabilities:
Encode data using xor

Disassembly:
pushal
mov esi, 0xe6bf6
not edx
mov edx, 0xa055bf3a
sub ebx, 1
popal
add edx, edx
sub edx, ebx
mov edx, 0
mov eax, esi
add ebx, 0x6ab2a00e
mov edi, ebx
mov ecx, eax
inc ebx
and edi, edi
mov esi, ecx
add edi, 0x2361ce21
sub ebx, 0x7a4ded02
sub ebx, 0x9651a816
add edx, 1
or edi, ebx
mov edi, 0x3487b9e5
cmp edx, 0x100d171
jne 0x47afd5
sub edi, 0x421d2596
mov ebx, edi
mov ebx, edi
cmp edx, 0x100d171
je 0x47b02a
mov eax, 0
mov dl, byte [eax]
add ebx, ebx
sub ebx, 1
mov edx, 0x87f80cd
and ebx, ebx
sub edx, ebx
mov edi, 0x47ada2
mov eax, ebx
add ecx, 0x6d58ce33
mov esi, 0x47af96
mov ebx, ecx
mov ebx, eax
not eax
mov edx, dword [edi]
mov ebx, 0x39be8dc4
add eax, eax
sub ecx, eax
and edx, 0xff
add ecx, 0xacffed58
dec ebx
xor dword [esi], edx
sub eax, ecx
dec eax
add esi, 1
or ebx, ebx
add ecx, ebx
inc edi
sub ebx, ecx
or eax, ebx
cmp esi, entry0
jl 0x47b053
sub eax, ebx
add ebx, ecx
not ecx
add eax, ecx
mov ebx, eax
not ebx
not edi
not esi
mov ecx, 0x47af9a
add esi, ebx
sub ebx, 0xf9039189
inc edx
mov ecx, dword [ecx]
and edx, edi
add ebx, 0x12c0a505
mov ecx, dword [ecx]
mov edx, 0xaefdc5ac
add edi, 0xededb074
push ecx
or esi, ebx
sub esi, 0xfbc5b1ff
mov ecx, 0x47af96
sub esi, 1
inc edx
not esi
mov ecx, dword [ecx]
mov edx, 0xcbe212a
add edi, esi
mov ecx, dword [ecx]
add edi, 0xfd3f2fc7
sub edi, 1
add edi, ebx
sub esp, 4
mov dword [esp], 0x47af9e
and edi, esi
or edx, esi
mov ebx, 0x756c70d5
call ecx
not esi
dec ebx
mov ebx, esi
mov ecx, dword [esp]
add esp, 4
mov edi, ebx
sub ebx, edi
mov esi, 0x18bf3634
push 0x47afab
and edx, esi
and edx, ebx
push eax
mov ebx, 0xef0b6d43
mov edi, 0xdb97b6e9
and esi, esi
call ecx
sub ebx, 0x8afa4a5c
mov ebx, 0xfa2c9294
not edx
push 0x40
sub ebx, 0x98acf0aa
sub ebx, edi
not esi
sub esp, 4
mov dword [esp], 0x3000
dec esi
inc ebx
add esi, edx
push 0x200001ca
add ebx, 0xc9d1a1ea
sub esi, edi
push 0
add edi, 0x237589e0
sub edx, 0xdd36c3f0
call eax
sub edx, 1
inc edx
add eax, 0x20000113
dec esi
not edx
mov ecx, 0xecd07909
add esi, edi
mov edi, ebx
mov dword [eax], ecx
sub edx, 0x9f578ef6
sub edx, 0x5dc7ec15
mov ecx, dword [eax]
or edx, edx
not esi
cmp ecx, 0xecd07909
je 0x47b1b7
mov ebx, 0
mov dword [ebx], ecx
add edx, 0x49d9744e
add esi, 0xe710b80d
sub edx, ebx
sub edi, 0xb756ea03
sub ebx, edx
not edx
mov ecx, section.UPX1
or edx, edx
and edx, edx
or edx, ebx
mov esi, 0x47ada1
dec ebx
sub edx, ebx
mov eax, 0
add edx, 0x37ded95
and edx, edx
mov edi, 0x47ada2
sub ebx, 0x3d5855ef
mov edx, 0xfd2336d9
lea edi, [eax + edi]
mov edx, 0x749dcd8
add ebx, ebx
mov edi, dword [edi]
mov edx, 0xe89ad40c
add edx, edx
add ebx, 0xe3ffce28
and edi, 0xff
inc edx
not edx
inc eax
add ebx, ebx
sub edx, ebx
cmp eax, 0x1f4
jne 0x47b233
mov eax, 0
add ebx, edx
sub edx, 0x149e8020
sub ebx, 0xe76dd83c
add edx, 0x4743c7bc
mov edx, 0x6bf355e0
xor dword [ecx], edi
mov ebx, edx
inc edx
and edx, ebx
add ecx, 2
dec edx
inc ebx
not ebx
cmp ecx, esi
jl 0x47b1ef
not edx
not ebx
and ebx, ebx
sub ebx, 0x1eaa8f21
mov eax, section.UPX1
sub ebx, 0xea781fde
add esi, esi
add ebx, 0xcfc823c1
mov edx, section.UPX1
add ebx, ebx
sub ebx, esi
mov edi, 0x47ada1
dec ebx
add esi, 0xec14695d
or esi, esi
mov ecx, 0
inc ebx
add ebx, ebx
mov cl, byte [edx]
mov ebx, esi
add ebx, esi
mov byte [eax], cl
and ebx, ebx
not ebx
add eax, 1
add esi, 1
sub ebx, esi
and esi, ebx
add edx, 2
sub esi, 1
dec esi
add esi, 0x89f65332
cmp edx, edi
jle 0x47b2a3
or esi, ebx
sub ebx, 0xd323e423
add edx, ebx
inc ebx
push 0x45e6a0
add ebx, ebx
add ebx, edx
mov ebx, 0x2478be91
ret