Function at 0x47afb8
Capabilities:
Encode data using xor

Disassembly:
pushal
mov esi, 0xebcc4447
sub edx, edi
or edx, edi
or edx, edx
popal
and edx, edx
sub edi, 1
mov edx, edi
mov edi, 0
mov eax, ebx
add edx, esi
inc esi
sub esi, edx
mov ecx, eax
and edx, esi
add edx, 0xe8cfca1d
inc esi
mov ebx, ecx
not esi
add edx, 0x7bbc530e
not esi
inc edi
sub edx, esi
not esi
cmp edi, 0x10098b4
jne 0x47afd4
or edx, edx
add edx, 1
or edx, edx
cmp edi, 0x10098b4
je 0x47b01c
mov ecx, 0
mov ebx, dword [ecx]
sub edx, 1
not edx
and edx, esi
not edx
and edi, edx
mov edi, 0x47ada2
inc edx
mov esi, ebx
sub edx, 0x8317380b
mov eax, 0x47af96
add esi, 0x3ca1b7c6
sub ebx, esi
mov ecx, dword [edi]
add esi, 1
sub edx, 0x16d9271b
and ecx, 0xff
mov edx, 0xf368d16
mov esi, edx
xor dword [eax], ecx
mov esi, ebx
sub ebx, edx
mov edx, 0xb982e24
inc eax
add esi, 1
dec esi
sub edx, 0x3b9aff53
inc edi
add ebx, ebx
add esi, 0x505cb7c
cmp eax, entry0
jl 0x47b045
add esi, 0x96643d5c
add ebx, 0x4232a105
add edx, ebx
sub edx, esi
add ebx, edx
dec esi
add edi, ebx
add edi, 0xf38025bd
mov edx, 0x47af9a
inc edi
add esi, 0x85e92a22
mov edx, dword [edx]
sub esi, ebx
not esi
mov edx, dword [edx]
add edi, 0x63f50276
add ebx, 0xf129bcd
push edx
dec ecx
sub ebx, 0x697649b4
not ecx
mov edx, 0x47af96
add ecx, esi
mov esi, 0x7b213965
mov edx, dword [edx]
add edi, 0x7ac5a3ff
sub ecx, esi
mov edx, dword [edx]
inc ecx
sub esi, edi
push 0x47af9e
add edi, 0x2cdc8ea3
dec ecx
add ebx, ebx
call edx
dec ebx
mov esi, 0x9ef0aff9
mov edx, dword [esp]
add esp, 4
mov edi, ecx
mov ecx, esi
push 0x47afab
mov esi, 0x981164ec
or ebx, esi
mov esi, 0x4fd18326
push eax
sub edi, 0x9b3e1fe6
add ebx, 0x7ea45af7
call edx
inc esi
sub ecx, 0x2d15f78f
add ecx, 1
push 0x40
dec esi
not ebx
sub esp, 4
mov dword [esp], 0x3000
dec ecx
not ecx
push 0x200004ed
and edi, ebx
or ecx, ebx
push 0
or ebx, ebx
mov edi, 0xb8b62d02
call eax
add esi, 0xbd3b4d2e
not edi
inc ebx
add eax, 0x2000047b
add esi, ecx
mov ecx, 0x3c38aef5
inc ebx
mov edx, 0x61d7839b
add ebx, ecx
and ecx, ecx
add edi, edi
mov dword [eax], edx
sub ebx, 0xee6ec39b
mov ecx, 0xf253d98b
mov edx, dword [eax]
sub edi, ebx
sub ebx, 0xd47ca51b
cmp edx, 0x61d7839b
je 0x47b1af
mov eax, 0
mov dl, byte [eax]
or edi, esi
inc ecx
add esi, 0x1791d7d6
inc ebx
mov edi, esi
sub edx, 0xf663e622
add edi, 0x836488c9
add edi, edi
mov ebx, section.UPX1
mov edx, 0xf66c1d9c
add edi, 1
add edi, 0x6aa46549
mov esi, 0x47ada1
not edx
add edi, 0x7f1af0c0
mov ecx, 0
and edx, edx
mov edx, 0x44dbea01
or edx, edi
mov eax, 0x47ada2
add edx, 0xc9c20944
and edi, edi
lea eax, [ecx + eax]
or edx, edx
sub edi, 0x18b06874
mov eax, dword [eax]
sub edx, edi
and edx, edx
add edi, 0x1bd9f157
and eax, 0xff
sub edx, edi
not edx
add ecx, 1
add edx, 0xfd77edcc
mov edx, edi
cmp ecx, 0x1f4
jne 0x47b243
mov ecx, 0
mov edi, 0x29ac4aa7
sub edi, 1
not edi
sub edi, 0x4306dacd
xor dword [ebx], eax
dec edx
mov edx, 0x9ff28bf8
or edx, edx
add ebx, 2
dec edx
and edi, edi
sub edi, 0xc8d22614
cmp ebx, esi
jl 0x47b1fa
add edx, edi
mov edx, edi
add edi, 0x9ea92fa2
inc edx
and edx, edi
mov esi, section.UPX1
dec ebx
add edx, 0x2dc7a511
and ebx, ebx
mov edi, section.UPX1
add ebx, 1
sub edx, ebx
mov ecx, 0x47ada1
mov edx, ebx
add edx, ebx
mov eax, 0
sub ebx, edx
sub edx, 0xc421edb5
mov al, byte [edi]
sub ebx, 0xe9190912
dec edx
add ebx, ebx
mov byte [esi], al
add ebx, edx
mov ebx, edx
add edx, edx
add esi, 1
and edx, edx
add ebx, 0x6dee4739
add edi, 2
add ebx, 1
mov ebx, 0xc470a1c8
or ebx, edx
cmp edi, ecx
jle 0x47b2b5
add ebx, edx
dec edx
sub ebx, 0x8edbd360
not edx
dec edx
inc edi
push 0x45e6a0
and edi, edx
add edi, 0x48cf3cfc
ret