Function at 0x47afb8
Capabilities:
Encode data using xor

Disassembly:
pushal
mov esi, 0x1aba6f30
add esi, eax
inc eax
or eax, eax
popal
or esi, esi
mov eax, 0xc4ab8989
and esi, eax
mov eax, 0
mov esi, edi
or ecx, ecx
sub ecx, ebx
not ebx
mov edx, esi
add ecx, ecx
add ebx, 0x7cbf558
mov edi, edx
dec ebx
inc ecx
inc eax
mov ecx, ebx
and ebx, ebx
cmp eax, 0x100ce4e
jne 0x47afd2
add ecx, 0xe7b67aa8
add ebx, 0xf6558b58
add ebx, ebx
cmp eax, 0x100ce4e
je 0x47b016
mov edx, 0
mov byte [edx], bl
not ebx
mov ebx, 0xcea8fce2
mov ecx, 0x2c2c1c3d
add eax, esi
or eax, eax
mov esi, 0x47ada2
sub eax, ecx
and edi, eax
mov edx, 0x47af96
add edi, edi
inc eax
mov ebx, dword [esi]
add eax, 0x546f8b94
inc edi
not edi
and ebx, 0xff
not eax
mov edi, 0x61c3caf9
mov eax, 0xde510350
xor dword [edx], ebx
mov edi, eax
add eax, 0x27e78eba
add edi, eax
inc edx
or ecx, eax
inc ecx
not eax
add esi, 1
and eax, ecx
not ecx
mov eax, edi
cmp edx, entry0
jl 0x47b037
add edi, 1
or edi, edi
sub ecx, eax
add eax, ecx
sub edi, eax
sub edi, 1
and edi, esi
mov edi, esi
mov ecx, 0x47af9a
not esi
mov edx, 0x5bd060a3
add edi, edi
mov ecx, dword [ecx]
not edi
sub ebx, edi
mov ecx, dword [ecx]
add ebx, 0x9794003e
sub esi, edi
push ecx
sub esi, edi
not ebx
mov ecx, 0x47af96
mov edx, 0xf0ebff8d
sub edi, ebx
mov edi, 0x2f90055e
mov ecx, dword [ecx]
add edi, 0xd3f7306f
not edx
sub ebx, 0xc87fd7b8
mov ecx, dword [ecx]
mov edx, 0x9cb46003
not edx
mov edx, esi
push 0x47af9e
sub edx, 1
and edx, edi
call ecx
mov edx, ebx
sub esi, 0xd3250775
pop ecx
sub ebx, 0x47ac13b6
sub edx, 0x7b28ceeb
dec ebx
sub esp, 4
mov dword [esp], 0x47afab
dec edx
or edx, edi
push eax
not esi
inc edi
call ecx
mov edx, edi
sub ebx, edi
mov edx, edi
push 0x40
add edx, 1
add edi, edx
push 0x3000
sub ebx, edx
mov edx, 0xa3f88e8a
sub esp, 4
mov dword [esp], 0x20000dd1
mov edi, ebx
add esi, edx
or edi, edi
sub esp, 4
mov dword [esp], 0
mov edx, 0xb5ae5d06
sub esi, edi
call eax
not edx
not ebx
sub edi, 0xfaf96e50
add eax, 0x20000d53
and esi, ebx
not edx
mov ecx, 0x1462fb31
or edi, esi
not edi
and edi, edx
mov dword [eax], ecx
mov esi, 0x1602012e
mov ebx, 0x6616a9c6
or esi, esi
mov ecx, dword [eax]
not edi
add edx, 1
sub edi, 0x52fd5532
cmp ecx, 0x1462fb31
je 0x47b1ab
mov ecx, 0
mov byte [ecx], al
inc edx
mov edi, 0x9f84bc0c
and ebx, edx
and ebx, edi
not edi
add eax, eax
inc eax
mov ecx, section.UPX1
add esi, 0xeed93562
sub eax, esi
mov ebx, 0x47ada1
sub esi, 1
add eax, eax
mov edi, 0
sub esi, 0x2312d7d5
and eax, esi
inc eax
mov edx, 0x47ada2
or esi, esi
inc eax
dec eax
lea edx, [edi + edx]
add eax, esi
sub eax, 1
mov edx, dword [edx]
or esi, eax
sub esi, 0x5cdc87be
and edx, 0xff
not eax
inc eax
add edi, 1
dec eax
inc eax
add eax, 0xb3d87331
cmp edi, 0x1f4
jne 0x47b224
mov edi, 0
and esi, esi
add eax, 0xe8b727e1
not eax
add eax, esi
mov eax, esi
and eax, esi
xor dword [ecx], edx
add esi, esi
add esi, eax
add ecx, 2
mov esi, eax
add esi, esi
cmp ecx, ebx
jl 0x47b1e2
mov esi, eax
dec esi
not esi
dec eax
and esi, esi
sub esi, eax
mov esi, section.UPX1
not ecx
add ebx, 0x21a0c578
mov ebx, 0x44927db7
mov eax, section.UPX1
mov ecx, 0xe186e23d
mov ecx, ebx
mov edi, 0x47ada1
add ecx, 1
sub ebx, ecx
mov edx, 0
mov ebx, 0xfa0c8eea
not ecx
or ebx, ebx
mov dl, byte [eax]
sub ebx, ecx
add ecx, 0x8d4d7114
mov byte [esi], dl
mov ebx, ecx
or ebx, ecx
inc esi
add ecx, 0x5bef51ff
sub ebx, 0x712b195f
add eax, 2
dec ecx
or ebx, ecx
cmp eax, edi
jle 0x47b28f
mov ebx, ecx
mov ebx, 0x2ca22eac
add eax, esi
sub esi, eax
sub esp, 4
mov dword [esp], 0x45e6a0
mov esi, eax
mov eax, 0xa07f40df
mov esi, 0xc77a706c
ret