Function at 0x47afb8
Capabilities:
Encode data using xor

Disassembly:
pushal
mov esi, 0x4a9e6626
sub esi, 1
mov ebx, 0x187cdbc4
popal
mov ebx, esi
add esi, 1
mov edi, 0
mov edx, ecx
dec eax
mov esi, 0x5f3ea774
mov ebx, edx
add eax, 0x58c44d64
or esi, esi
or esi, eax
mov ecx, ebx
add esi, esi
inc eax
inc edi
mov eax, esi
mov eax, 0xe0ef04c9
mov esi, eax
cmp edi, 0x100073c
jne 0x47afd7
add eax, eax
or eax, eax
cmp edi, 0x100073c
je 0x47b019
mov edx, 0
mov dword [edx], eax
or eax, esi
sub eax, esi
mov eax, esi
not ebx
sub esi, ebx
or esi, ebx
mov edx, 0x47ada2
mov edi, 0xf97ecf7c
and ebx, ecx
mov esi, 0x47af96
mov ebx, edi
sub edi, ebx
mov eax, dword [edx]
or edi, ecx
and ecx, edi
mov ebx, 0xb32b2fba
and eax, 0xff
add ebx, 0x4f67629c
sub edi, 0x547b066
and ebx, edi
xor dword [esi], eax
sub edi, ebx
and ecx, ebx
sub ebx, 0xc0d4cd99
inc esi
sub ecx, ebx
add edi, edi
mov edi, ebx
inc edx
and edi, edi
sub ebx, edi
sub edi, ecx
cmp esi, entry0
jl 0x47b03a
add edi, ebx
add ebx, edi
add ebx, ecx
inc edi
sub ecx, 0xf9a637a
or edi, edi
not edi
dec esi
mov edx, 0x47af9a
add ecx, 0x661fa991
sub ebx, ecx
mov edx, dword [edx]
mov ecx, esi
mov edi, 0xf4b212e2
sub ebx, edi
mov edx, dword [edx]
not edi
and edi, ebx
or ebx, ecx
push edx
inc ecx
inc edi
inc ecx
mov edx, 0x47af96
add esi, 1
add ebx, 0x521fadee
sub ecx, edi
mov edx, dword [edx]
sub ebx, 0x3e261927
sub ebx, 0x238d0d2c
mov edx, dword [edx]
and ecx, ecx
dec ebx
sub esp, 4
mov dword [esp], 0x47af9e
mov edi, ebx
and esi, ecx
sub ebx, esi
call edx
mov edi, 0x1d5402ed
inc esi
mov edx, dword [esp]
add esp, 4
and edi, ebx
inc ecx
mov ebx, 0xcf2161d7
push 0x47afab
not ecx
sub edi, esi
sub edi, 0xe39cd8f4
push eax
or ecx, esi
and ecx, esi
call edx
add ebx, ebx
or esi, esi
mov ecx, ebx
push 0x40
and ecx, edi
not ebx
push 0x3000
or ebx, ecx
add esi, 1
push 0x20000282
mov ecx, edi
add esi, 0x663036e
mov ecx, 0xcf237bb6
push 0
and edi, ebx
add edi, 0xc16a1ba
call eax
or ecx, esi
add edi, 0x72e713c9
inc ecx
add eax, 0x200001d7
add esi, 0xc01933d4
dec ecx
mov edx, 0xdbe6dab5
add ecx, ebx
and esi, ebx
mov dword [eax], edx
and ecx, ebx
dec esi
mov edx, dword [eax]
and ebx, ecx
or esi, ecx
cmp edx, 0xdbe6dab5
je 0x47b18d
mov ecx, 0
mov byte [ecx], bl
dec ecx
mov esi, 0xaa5b4585
mov ecx, edi
and esi, edi
inc ebx
mov esi, ebx
mov esi, ebx
mov edi, section.UPX1
sub esi, ebx
not esi
mov ecx, 0x47ada1
sub esi, ebx
sub ebx, 0xa3e27e0e
or ebx, ebx
mov eax, 0
sub ebx, 0xe0900f70
or esi, ebx
add esi, 0x9c3e30b
mov edx, 0x47ada2
add ebx, 0xc92183d9
sub esi, 1
sub esi, ebx
lea edx, [edx + eax]
add esi, 0x903cc100
mov esi, 0x9d7d78d3
sub ebx, 0x84471266
mov edx, dword [edx]
sub esi, 0x516909dc
sub esi, ebx
and edx, 0xff
dec ebx
sub esi, 0xf9b25062
inc eax
mov ebx, 0x5ed7f164
mov ebx, 0xb7166bad
cmp eax, 0x1f4
jne 0x47b21d
mov eax, 0
mov esi, ebx
add ebx, ebx
add esi, esi
or ebx, esi
add ebx, 1
xor dword [edi], edx
sub esi, 0xbd3ad2b1
sub ebx, esi
add edi, 2
not ebx
sub ebx, 0xa9b1096
cmp edi, ecx
jl 0x47b1c7
dec ebx
sub ebx, esi
mov esi, ebx
dec esi
mov ecx, section.UPX1
mov ebx, 0x90c613d3
dec ebx
and ebx, ebx
mov esi, section.UPX1
dec edi
or edi, ebx
mov eax, 0x47ada1
inc ebx
not ebx
mov edi, 0xbaf67ced
mov edx, 0
sub edi, ebx
dec edi
and ebx, edi
mov dl, byte [esi]
not ebx
add ebx, 0x94ab734
add edi, edi
mov byte [ecx], dl
sub ebx, 0x55d08e91
or ebx, ebx
mov ebx, 0x156066fd
add ecx, 1
add ebx, ebx
add ebx, 1
add esi, 2
or edi, edi
not edi
add edi, ebx
cmp esi, eax
jle 0x47b27d
add ebx, 0x82209bda
sub edi, ebx
inc edi
mov esi, ebx
or esi, ebx
mov ebx, esi
push 0x45e6a0
dec esi
not esi
ret