Function at 0x47afb8
Capabilities:
Encode data using xor

Disassembly:
pushal
mov esi, 0x968d9c9c
add edi, 0xa2b2465f
or edi, edi
mov edi, esi
popal
not esi
mov edi, 0xe53902b8
mov eax, 0
mov esi, edi
mov edx, ecx
and ecx, edx
mov ecx, 0x3f5844c9
mov ebx, esi
sub edx, 0x3d04a52c
not ecx
add edx, edx
mov edi, ebx
sub ecx, 0x8da8695b
mov ecx, 0x665c33c2
inc eax
not ecx
not ecx
add edx, ecx
cmp eax, 0x10076c4
jne 0x47afd5
and ecx, edx
not ecx
cmp eax, 0x10076c4
je 0x47b01f
mov ecx, 0
mov al, byte [ecx]
and edx, edx
sub edx, 0xfb5059d0
and edi, esi
and esi, edi
mov edi, 0x47ada2
not ebx
add ebx, 0xd406bb3f
mov ecx, 0x47af96
not esi
add esi, ebx
dec eax
mov edx, dword [edi]
sub esi, eax
sub esi, ebx
and edx, 0xff
mov esi, 0xf5180a96
sub esi, 0x4f259775
add esi, eax
xor dword [ecx], edx
sub eax, esi
sub eax, 0xe4484771
inc ecx
add eax, esi
not esi
or esi, eax
add edi, 1
sub esi, 0x59e9e5b0
dec ebx
mov eax, esi
cmp ecx, entry0
jl 0x47b042
mov eax, esi
and ebx, esi
add eax, ebx
or ebx, eax
dec esi
mov ebx, 0xd068c991
or edi, esi
add edi, 0xed3b4c38
mov esi, 0x955a4539
mov edx, 0x47af9a
sub esi, ecx
dec edi
sub esi, 0xa834ac6c
mov edx, dword [edx]
sub edi, esi
sub ecx, edi
not ecx
mov edx, dword [edx]
or esi, edi
mov ecx, edi
mov edi, 0x33e43478
push edx
add edi, 0xb9c42530
sub esi, 0x13fcc56f
mov edx, 0x47af96
add esi, 1
and esi, ecx
sub esi, edi
mov edx, dword [edx]
dec edi
add ebx, 0x5c8afd10
or esi, ebx
mov edx, dword [edx]
add ebx, 0x7b904e54
and ecx, ecx
mov ebx, 0xec38e331
sub esp, 4
mov dword [esp], 0x47af9e
and ebx, ecx
add ecx, 0xc19b4f09
call edx
sub esi, 0x5a2f3796
sub esi, 0x9873a7d6
mov ecx, ebx
mov edx, dword [esp]
add esp, 4
or esi, edi
inc esi
add esi, ecx
push 0x47afab
or esi, esi
add edi, 0x82d51449
add ecx, 0xf65573c2
push eax
sub edi, 1
sub ebx, esi
call edx
sub edi, 0x572faa88
add esi, edi
push 0x40
not esi
add ecx, 0x33e8d55f
add ebx, ebx
push 0x3000
mov ecx, 0x85c66c7d
or ecx, ecx
sub esp, 4
mov dword [esp], 0x2000077a
sub ebx, 0x17000770
mov edi, 0xef539bd2
add ebx, ebx
push 0
add ecx, 0x319006b7
add esi, 0x9037ef7
add esi, 0x1cdf2a00
call eax
add ecx, 1
mov edi, ecx
add eax, 0x200006ba
inc ecx
add esi, edi
mov edx, 0x135a63ea
mov esi, 0xec061f71
add esi, 0x97dd0797
mov dword [eax], edx
or ebx, ecx
sub ecx, 0x3a9844a0
inc esi
mov edx, dword [eax]
sub ecx, 0x2c310505
and edi, esi
and esi, ebx
cmp edx, 0x135a63ea
je 0x47b1de
mov ebx, 0
mov byte [ebx], cl
mov edi, ecx
sub edi, 0x6027eb42
add esi, esi
add ecx, ebx
mov esi, edi
sub edi, 1
mov eax, section.UPX1
sub esi, 0x6e3c007f
dec esi
mov esi, 0xb391bfc9
mov edx, 0x47ada1
not esi
sub edi, esi
mov ebx, 0
or esi, edi
mov edi, 0x3ca3b266
inc esi
mov ecx, 0x47ada2
add esi, 1
add esi, esi
not edi
lea ecx, [ebx + ecx]
mov edi, esi
add esi, esi
sub esi, edi
mov ecx, dword [ecx]
mov esi, 0x81bd8d1c
not esi
and ecx, 0xff
and esi, esi
add esi, 0x8727646f
dec edi
inc ebx
and esi, edi
sub esi, edi
mov edi, 0xe56981fd
cmp ebx, 0x1f4
jne 0x47b260
mov ebx, 0
not edi
add esi, 0xc61ba3ff
or edi, esi
mov esi, edi
inc esi
xor dword [eax], ecx
sub esi, 0x1bd51e29
sub esi, edi
add eax, 2
not edi
mov esi, edi
add edi, 1
cmp eax, edx
jl 0x47b219
sub edi, esi
inc edi
mov esi, 0xe3b35473
add edi, edi
or edi, edi
add esi, 1
mov esi, section.UPX1
dec edi
sub edi, 0x9b5cf1aa
add edx, edi
mov eax, section.UPX1
sub edi, edx
mov edi, edx
mov edx, edi
mov ecx, 0x47ada1
add edi, edx
dec edi
mov ebx, 0
not edx
add edx, edi
mov bl, byte [eax]
dec edi
not edx
sub edx, 0x17ba24a6
mov byte [esi], bl
mov edi, edx
add edi, 0x41025ffa
inc esi
sub edx, 0xd9f2116c
add edx, 0x559a3d36
add eax, 2
or edi, edi
sub edx, edi
cmp eax, ecx
jle 0x47b2cb
mov edx, 0x3c91eb4c
add edi, edx
sub edi, 0xe638d3e8
mov edi, esi
add esi, esi
push 0x45e6a0
inc esi
mov esi, edi
add edi, edi
ret