Function at 0x473340
Capabilities:
Encode data using xor

Disassembly:
adc esi, eax
inc ebp
hlt
nop
sub bl, 0x1f
jl 0x45b701
insd dword es:[edi], dx
or eax, 0x8867e351
rcl byte [eax], 0x43
sbb bh, byte [ebp + 0x42f092e7]
mov dh, 0xd2
jle 0x45b7bc
or al, 0xaf
xchg esi, eax
sal byte [esi - 0x10b0b4e4], 1
out dx, al
fbstp tbyte [edi]
or byte [ebx + 0x1b5147d2], 0x86
lodsb al, byte [esi]
pushfd
pop ebp
or al, 0xc5
inc ecx
or al, 0x9e
add dword [ecx], 0x45
fidiv dword [ecx + 0x24b40bd8]
mov ah, 0x24
je 0x45b801
or ebx, dword [edi - 0x7b009986]
or dword [ebx], ebp
jo 0x45b7d8
or byte [eax - 0x14ee22d1], ch
xor byte [eax + 0x5a], bl
xor byte [edx + 0x37f99ccb], dh
mov cl, 0xdf
in al, dx
jmp 0x45b7ef
xor bl, byte [0x64691123]
jmp 0x45b7de
imul esp, dword [ebx + ebp*8 + 0x1a], 0x1f0ac25c
xchg esp, eax
jmp 0x45b7dc
add eax, 0xa
push 0xfac7c360
rcl byte [ecx], cl
fst dword [edi]
cld
jo 0x45b7c0
pushal
ret
invalid
and esi, edx
adc dword [edx - 0x41], eax
lcall 0x670a, 0x25614284
sub byte [eax + 0x40], bh
popal
and eax, 0x7828670a
inc eax
popfd
dec ebx
loope 0x45b7ef
hlt
jle 0x45b824
xlatb
fild word [edx]
ja 0x45b79b
mov ecx, edx
lodsb al, byte [esi]
lodsb al, byte [esi]
sbb cl, byte [edx - 0x704cd328]
adc eax, 0xa33b2e15
wait
inc eax
mov ah, al
push ss
out dx, eax
dec eax
xchg edi, eax
xor dl, al
inc esp
and dword [ecx + 0x6fde22eb], 0x52ed45f6
or al, 0xaa
out dx, al
inc ecx
push esi
daa
add cl, byte [edi]
cmp byte [ebp - 0x13], 0xc7
out dx, eax
nop
invalid
jmp 0x45b848
dec ebp
or dword [edi + 0x5e496941], ecx
cdq
dec eax
sahf
add al, 6
xchg dh, bh
adc ebx, dword [edi + 0x7549c1e3]
add dh, byte es:[ebp + 0x70]
inc esp
jg 0x45b888
mov edi, 0xa064e241
xlatb
adc byte [edi], bl
mov cl, 0x6d
sub bl, byte [eax + 0x29]
les edi, [ebx]
or al, 0x75
or bl, byte [0xb6eed207]
shl ecx, cl
push esp
out dx, al
mov dh, 0xd3
loope 0x45b8d2
adc al, 0x14
and byte [edi], al
xor ah, byte [ecx]
adc al, 0x18
lea esp, [0x18187213]
xchg ecx, eax
inc edi
mov edi, 0x24695f9a
cmp dword [esi + 0x73], 0x46
push 0xffffffffffffff90
adc esi, dword [edx + 0x18]
sbb byte [ecx + 0x5f9abf47], dl
imul esp, dword [ebx + eax*4], 0x6a46737e
nop
xor al, 0xd0
cmp esi, dword [0x34c094fc]
or dword [eax + 0xe], edi
dec ecx
or ebp, 0x8303351a
dec esp
imul dword [eax + 0x2794e43b]
sti
test dword [eax - 0x57], esi
adc byte [edi + 0x19536151], al
je 0x45b879
add eax, dword [edx]
xchg byte [0x1f25a62d], dh
sbb dword [edx], ecx
wait
add ebp, ebx
ror dword [esi - 0x17], 0x5c
lcall 0xa0b8, 0x80043776
mov dh, byte [eax - 0x1fb2638b]
invalid
add al, 0x80
mov eax, 0x75b08aa0
pushfd
dec ebp
loopne 0x45b8db
fisubr word [ecx]
in al, 0x31
cmp byte [0xb9282ba8], 0xd8
pop esp
out dx, al
sub esp, ebx
adc eax, 0xb01a88e0
fdiv qword [esi]
mov dword [0xa210b017], eax
popal
aas
or byte [ebp + 0x21b80833], ch
mov eax, dword [0x738b]
insd dword es:[edi], dx
loope 0x45b923
aam 0x7f
mov esi, 0xc2bfdbca
mov esi, edi
jmp 0x45b91e
imul edx, dword [edx + 0x45], 0x40c886c8
dec esi
adc ebp, ebp
enter 0x4e40, 0x13
in eax, dx
push es
les esp, [eax + esi*4]
xchg esi, eax
rol dword [eax + 0x6930d552], 1
xchg esp, eax
dec ebx
rol dword [esi - 0x16], 0xd6
inc ecx
pop ds
push esi
mov al, byte [0xf2a1e097]
and byte [ecx + 0x2b78875c], bh
push edi
pop ss
or cl, 0xc2
outsd dx, dword [esi]
push ebx
jmp dword [0x25c237eb]
pushal
mov esi, section.UPX1
lea edi, [esi - 0x49000]
mov dword [edi + 0x5b7ac], 0x793bc9d8
push edi
or ebp, 0xffffffff
jmp 0x47336a
mov al, byte [esi]
inc esi
mov byte [edi], al
inc edi
add ebx, ebx
jne 0x473371
mov ebx, dword [esi]
sub esi, 0xfffffffc
adc ebx, ebx
jb 0x473360
mov eax, 1
add ebx, ebx
jne 0x473383
mov ebx, dword [esi]
sub esi, 0xfffffffc
adc ebx, ebx
adc eax, eax
add ebx, ebx
jae 0x473394
jne 0x4733b3
mov ebx, dword [esi]
sub esi, 0xfffffffc
adc ebx, ebx
jb 0x4733b3
dec eax
add ebx, ebx
jne 0x4733a0
mov ebx, dword [esi]
sub esi, 0xfffffffc
adc ebx, ebx
adc eax, eax
jmp 0x473378
add ebx, ebx
jne 0x4733af
mov ebx, dword [esi]
sub esi, 0xfffffffc
adc ebx, ebx
adc ecx, ecx
jmp 0x473405
xor ecx, ecx
sub eax, 3
jb 0x4733cb
shl eax, 8
mov al, byte [esi]
inc esi
xor eax, 0xffffffff
je 0x47343a
sar eax, 1
mov ebp, eax
jmp 0x4733d6
add ebx, ebx
jne 0x4733d6
mov ebx, dword [esi]
sub esi, 0xfffffffc
adc ebx, ebx
jb 0x4733a4
inc ecx
add ebx, ebx
jne 0x4733e4
mov ebx, dword [esi]
sub esi, 0xfffffffc
adc ebx, ebx
jb 0x4733a4
add ebx, ebx
jne 0x4733f1
mov ebx, dword [esi]
sub esi, 0xfffffffc
adc ebx, ebx
adc ecx, ecx
add ebx, ebx
jae 0x4733e6
jne 0x473402
mov ebx, dword [esi]
sub esi, 0xfffffffc
adc ebx, ebx
jae 0x4733e6
add ecx, 2
cmp ebp, 0xfffffb00
adc ecx, 2
lea edx, [edi + ebp]
cmp ebp, 0xfffffffc
jbe 0x473424
mov al, byte [edx]
inc edx
mov byte [edi], al
inc edi
dec ecx
jne 0x473416
jmp 0x473366
mov eax, dword [edx]
add edx, 4
mov dword [edi], eax
add edi, 4
sub ecx, 4
ja 0x473424
add edi, ecx
jmp 0x473366
pop esi
mov edi, esi
mov ecx, 0x2cc9
mov al, byte [edi]
inc edi
sub al, 0xe8
cmp al, 1
ja 0x473442
cmp byte [edi], 0x1f
jne 0x473442
mov eax, dword [edi]
mov bl, byte [edi + 4]
shr ax, 8
rol eax, 0x10
xchg ah, al
sub eax, edi
sub bl, 0xe8
add eax, esi
mov dword [edi], eax
add edi, 5
mov al, bl
loop 0x473447
lea edi, [esi + 0x70000]
mov eax, dword [edi]
or eax, eax
je 0x4734b6
mov ebx, dword [edi + 4]
lea eax, [eax + esi + 0x73d6c]
add ebx, esi
push eax
add edi, 8
call dword [esi + 0x73e34]
xchg ebp, eax
mov al, byte [edi]
inc edi
or al, al
je 0x473474
mov ecx, edi
push edi
dec eax
repne scasb al, byte es:[edi]
push ebp
call dword [esi + 0x73e38]
or eax, eax
je 0x4734b0
mov dword [ebx], eax
add ebx, 4
jmp 0x473491
call dword [esi + 0x73e40]
mov ebp, dword [esi + 0x73e3c]
lea edi, [esi - 0x1000]
mov ebx, 0x1000
push eax
push esp
push 4
push ebx
push edi
call ebp
lea eax, [edi + 0x21f]
and byte [eax], 0x7f
and byte [eax + 0x28], 0x7f
pop eax
push eax
push esp
push eax
push ebx
push edi
call ebp
pop eax
popal
lea eax, [esp - 0x80]
push 0
cmp esp, eax
jne 0x4734ea
sub esp, 0xffffff80
jmp 0x45b760