Function at 0x47afb8
Capabilities:
Encode data using xor

Disassembly:
pushal
mov esi, 0xaa7e6472
and esi, esi
inc esi
sub ebx, 1
popal
inc ebx
not esi
not esi
mov eax, 0
mov edi, ecx
mov ebx, 0x90e0edaf
sub esi, 0xc14b8dba
dec ebx
mov edx, edi
inc ebx
mov esi, 0x26c396dc
mov ecx, edx
sub esi, 0xb24d9325
mov ebx, 0x8117194b
sub esi, 0xa9219789
inc eax
add esi, ebx
dec ebx
add ebx, ebx
cmp eax, 0x1008e16
jne 0x47afd2
inc esi
not ebx
cmp eax, 0x1008e16
je 0x47b01f
mov eax, 0
mov dword [eax], edx
dec esi
sub ebx, 1
add esi, esi
mov ebx, esi
mov edi, 0x47ada2
mov esi, edx
not esi
sub esi, 0xbe463e
mov ecx, 0x47af96
or esi, ebx
add ebx, ebx
sub esi, 1
mov eax, dword [edi]
add edx, 1
sub edx, ebx
and eax, 0xff
not edx
sub edx, 0x329973f3
xor dword [ecx], eax
or ebx, esi
sub edx, 0xe863b787
not esi
inc ecx
mov ebx, 0x86e3bab4
sub esi, edx
inc edi
dec esi
add esi, 0xcdc149a8
not edx
cmp ecx, entry0
jl 0x47b048
or edx, edx
sub ebx, 0x58f861e4
sub ebx, 1
not edx
add ebx, ebx
not ebx
dec ebx
not edi
mov esi, 0x47af9a
mov edx, edi
add edi, 0x2c893e34
mov edx, 0x80d04ea3
mov esi, dword [esi]
mov ebx, 0xf3e27c4b
and ecx, edi
mov esi, dword [esi]
sub edi, 0x8d06bef0
add ebx, edx
mov ecx, edx
sub esp, 4
mov dword [esp], esi
mov ebx, edi
not ecx
sub edx, ecx
mov esi, 0x47af96
sub ecx, edx
mov edx, 0x8afecf7f
mov esi, dword [esi]
or edi, ecx
not edx
and edi, edi
mov esi, dword [esi]
mov edi, ecx
mov edi, ecx
dec edi
push 0x47af9e
add ecx, 0xa600049d
sub edi, 1
call esi
mov edx, edi
not ebx
mov esi, dword [esp]
add esp, 4
add ecx, 0x4bac7837
sub ebx, edi
inc edx
push 0x47afab
mov edx, 0x81893bf1
dec ebx
dec ecx
push eax
mov ebx, 0x151b3c93
sub edi, 0xe6817c40
call esi
add ebx, ebx
not edi
push 0x40
sub ebx, ecx
add edi, 0x55676fbe
add ebx, 0xf648fd7c
push 0x3000
add edx, 0xf0a7ce5b
or edx, edi
push 0x200005a5
not edi
sub edx, ecx
mov ecx, ebx
push 0
add edi, edi
sub ecx, 0x594cbb92
add ebx, 1
call eax
or ebx, ebx
sub edx, 0x37b74e71
add eax, 0x20000523
sub edi, 0x2555fb20
and ebx, edi
not edi
mov esi, 0x8c0c02c3
mov ebx, edi
and edx, ebx
add ebx, ecx
mov dword [eax], esi
sub edx, ecx
add edx, ebx
sub edi, edx
mov esi, dword [eax]
add edx, ecx
mov ebx, 0x59e84eec
cmp esi, 0x8c0c02c3
je 0x47b1b6
mov ecx, 0
mov dword [ecx], eax
sub edi, 0x21d5640b
inc ecx
sub edi, ecx
add ebx, 0x52cc5b62
add edx, 0x9b922ed9
or esi, ebx
inc ebx
mov edi, section.UPX1
inc ebx
and esi, esi
mov ecx, 0x47ada1
add esi, esi
and ebx, ebx
mov eax, 0
mov esi, ebx
add esi, esi
inc ebx
mov edx, 0x47ada2
sub esi, 0xec081cef
not ebx
lea edx, [eax + edx]
not esi
add esi, 0xbc0ff7a5
mov edx, dword [edx]
add ebx, esi
dec ebx
and edx, 0xff
or ebx, esi
and ebx, esi
add eax, 1
mov ebx, esi
add ebx, esi
cmp eax, 0x1f4
jne 0x47b227
mov eax, 0
or esi, esi
sub ebx, 0x50e1d873
add esi, 0x85c47d4f
and ebx, esi
not esi
xor dword [edi], edx
sub esi, 1
sub ebx, esi
sub esi, 0xa609fb0a
add edi, 2
mov ebx, esi
sub esi, ebx
dec esi
cmp edi, ecx
jl 0x47b1e9
sub esi, 0xa680975f
add ebx, ebx
add esi, 1
dec esi
sub esi, 1
mov ecx, section.UPX1
dec esi
not esi
sub eax, esi
mov edi, section.UPX1
mov esi, 0xd3ae82a
add esi, 0xf713e9e3
mov edx, 0x47ada1
add eax, 0xd3fce36e
inc esi
not esi
mov ebx, 0
add esi, 0x9fef8a1d
sub esi, 1
inc esi
mov bl, byte [edi]
mov eax, esi
and esi, esi
mov byte [ecx], bl
add esi, esi
sub esi, eax
or esi, esi
inc ecx
sub eax, 0xad082b0b
inc esi
add edi, 2
mov esi, 0xb1686a05
sub eax, esi
cmp edi, edx
jle 0x47b2ab
dec eax
and esi, esi
and esi, esi
mov esi, 0xc486b98e
sub ebx, 0x2f7455fa
push 0x45e6a0
and ebx, ebx
sub ebx, esi
ret