Function at 0x47afb8
Capabilities:
Encode data using xor

Disassembly:
pushal
mov esi, 0x813febf7
sub ecx, 0xd89fbf97
and ecx, ecx
popal
sub ecx, 1
sub ecx, ebx
and ebx, ecx
mov ebx, 0
mov edi, ecx
dec eax
mov eax, 0xc227ccb1
mov edx, edi
add eax, 0x6c9710ca
and eax, esi
not esi
mov ecx, edx
add esi, 0x510a7db2
add eax, eax
inc ebx
not eax
mov eax, 0x29157897
cmp ebx, 0x1007fae
jne 0x47afd6
dec eax
mov eax, 0x77c45f51
cmp ebx, 0x1007fae
je 0x47b01d
mov eax, 0
mov dword [eax], ecx
add eax, eax
add eax, esi
sub ebx, ecx
mov ecx, ebx
and ebx, ebx
mov eax, 0x47ada2
inc edi
sub edi, esi
mov edi, 0x1d52e
mov ecx, 0x47af96
or ebx, ebx
not ebx
mov edx, dword [eax]
add ebx, 1
sub esi, 1
and edx, 0xff
sub ebx, 0xf36a89a2
inc edi
add ebx, 0x1785bb39
xor dword [ecx], edx
and edi, edi
inc ebx
inc ecx
add esi, 1
add ebx, 0x4818a2c1
sub ebx, 0xfd9cd9ff
add eax, 1
or ebx, ebx
sub edi, 0x42aaed9
cmp ecx, entry0
jl 0x47b03d
or esi, ebx
inc ebx
sub edi, ebx
not ebx
or edi, esi
and edx, ecx
sub edx, ebx
mov esi, 0x47af9a
sub ecx, 0x3922cb4c
add ecx, edi
mov esi, dword [esi]
inc edx
mov edx, 0xc59c1c94
add ebx, 0x8b7d9b7c
mov esi, dword [esi]
dec ecx
and ecx, edi
dec ecx
push esi
dec edx
add edx, edx
mov esi, 0x47af96
not edx
sub ebx, 0x3812d139
mov ecx, 0x93171958
mov esi, dword [esi]
add ebx, 0x3e1b4a41
add edx, 0xc3a8c328
sub ecx, 0x803ad29e
mov esi, dword [esi]
inc edx
dec ecx
push 0x47af9e
dec edx
inc edx
sub edi, ecx
call esi
add edx, edx
not edi
mov esi, dword [esp]
add esp, 4
sub ecx, 0x6160918
add edi, 0xa2ea2f08
and ebx, edx
sub esp, 4
mov dword [esp], 0x47afab
and edx, ecx
dec ebx
push eax
add edi, ecx
not ebx
call esi
mov edi, 0x1d10f6be
dec edi
sub edx, 0xca333f8a
push 0x40
and edx, edx
and edi, edx
and ecx, ecx
push 0x3000
dec edi
sub ebx, 1
push 0x20000192
mov edx, edi
not ecx
sub esp, 4
mov dword [esp], 0
or edi, ecx
sub edx, ecx
and edx, edx
call eax
mov edx, 0x477f67df
sub ebx, ecx
mov ecx, 0xc94761fc
add eax, 0x20000124
sub edi, ecx
add edx, 1
mov ebx, 0x2d6e1282
mov esi, 0xf13797b5
and ebx, ecx
and edx, edi
mov dword [eax], esi
sub edx, ebx
dec ebx
not ecx
mov esi, dword [eax]
mov edx, ebx
not ecx
sub ecx, ebx
cmp esi, 0xf13797b5
je 0x47b1a7
mov eax, 0
mov dword [eax], ecx
or edx, edi
sub ecx, edx
add edx, 0xaf1fd7fa
add ecx, ebx
mov ecx, 0xebd080cd
sub ebx, ecx
inc ebx
mov edx, section.UPX1
and ebx, ecx
or ebx, ecx
sub ebx, 0x8b6026ce
mov esi, 0x47ada1
add ecx, 0x4fc8da75
add ebx, 0x590fdf85
mov edi, 0
add ebx, 0xb4bba2aa
add ecx, ecx
dec ecx
mov eax, 0x47ada2
or ebx, ebx
sub ebx, 0xca72d486
lea eax, [edi + eax]
sub ebx, 0xe26822e3
not ebx
mov eax, dword [eax]
and ebx, ecx
mov ebx, ecx
and eax, 0xff
add ebx, ebx
not ecx
not ebx
inc edi
add ebx, ecx
add ebx, ecx
cmp edi, 0x1f4
jne 0x47b225
mov edi, 0
add ebx, 0xf7fc4c25
sub ebx, 1
add ebx, ebx
inc ebx
inc ebx
xor dword [edx], eax
add ecx, 0x139a6fc2
add ecx, 1
add edx, 2
and ebx, ebx
add ebx, 0xf34a2a31
and ebx, ecx
cmp edx, esi
jl 0x47b1e9
not ecx
sub ecx, 0xb831b93e
not ebx
and ecx, ebx
add ecx, 0x9f0c169d
add ecx, ecx
mov ecx, section.UPX1
add edi, edi
add edi, esi
or esi, edi
mov edx, section.UPX1
sub edi, esi
mov edi, 0xa41c9d88
mov eax, 0x47ada1
add esi, esi
sub edi, 0x56cffc
sub edi, esi
mov ebx, 0
and esi, esi
or edi, esi
mov bl, byte [edx]
inc esi
not edi
mov byte [ecx], bl
add esi, 1
add esi, 0x62ff45d5
add edi, esi
inc ecx
inc esi
dec esi
add esi, edi
add edx, 2
add esi, 0x9b1a02e1
mov edi, esi
inc esi
cmp edx, eax
jle 0x47b29e
not esi
add esi, 0x84455651
dec esi
add ebx, ecx
dec ebx
sub ebx, 1
push 0x45e6a0
add ebx, ebx
sub ecx, 1
ret