Function at 0x485f11
Capabilities:
Encode data using xor

Disassembly:
xchg ebp, eax
push edi
pop ebx
retf 0xced
pushfd
xor byte [eax + 0x5417228c], 0x27
in eax, dx
pop eax
pop eax
xchg ebp, eax
jbe 0x485f86
movsd dword es:[edi], dword [esi]
sahf
add byte [ebx], ah
pop ebp
sbb cl, byte [edi - 0x23ba5dd7]
jecxz 0x485fa0
loope 0x485ef0
test al, 0xa3
sahf
add byte [ebx + 0x4e], al
test al, 0xc6
add eax, 0x229ff1fc
and esp, dword [esi - 0x598f79ee]
xchg dword [eax + ebx*8], ecx
cmpsd dword [esi], dword es:[edi]
and ebp, dword [esi + edi*4 - 0x1f]
rol esi, 1
push ecx
mov ebp, 0x42171e9f
push es
int3
dec esi
push ds
std
xchg ebx, eax
clc
salc
sub ecx, edx
adc cl, byte [esi + ecx - 0x40]
outsb dx, byte [esi]
xchg edi, eax
pushal
push ss
jg 0x485fe5
test eax, 0xa2b1a86e
cmp dl, byte cs:[ebp - 0x646ba4d5]
sub ebx, dword [ebx - 0x6c]
wait
jae 0x485ffc
pop esp
mov dh, pe_nt_image_headers32
mov bl, 0xa1
and dh, byte [esi + ebp*2 - 0x205d211e]
pop ss
sub al, 0x47
jnp 0x485fc2
add ebp, dword [0x3f7aff9]
lcall 0xe439, 0x33e647f7
cmp esp, esp
mov ebp, 0x25d3395f
adc byte [ebx + 0x7060258f], ch
cdq
aas
dec esi
daa
push ss
xchg esi, eax
bound ebp, qword [ecx + 0x62]
stosd dword es:[edi], eax
cdq
pop ss
in eax, 0x99
dec esp
aaa
test byte [eax + eax - 0x4816eeed], bl
xchg ebp, eax
mov bh, 0x95
test dword [ebx], 0xa451d69a
pop edx
mov dl, 0xa
bound ecx, qword [ebx - 0x666bd562]
pop ss
test eax, 0xab29088
bound ecx, qword [ebx + ebx*8 - 0x17]
test dword [eax], 0xa56dbdbd
mov ebp, dword [eax + 0x31]
cmp al, cl
js 0x48606c
aas
mov dl, 0xa
bound edi, qword [esi + 9]
inc ebx
jno 0x486095
invalid
cmp esi, edi
mov ebp, 0xc5d5f3a1
sub eax, 0x70859bfd
mov ecx, 0xa84621d3
std
wait
test dword [eax + 0x65], esi
mov ecx, 0xa84621d3
xor byte [ecx + 0x13], 0xba
popfd
sub ebp, ebp
in eax, dx
xchg ebx, eax
cmp eax, 0xefc57187
sbb eax, 0x89faa046
movsx esp, cl
psllq mm3, qword [ecx + 0x684597f3]
jle 0x486064
outsb dx, byte [esi]
in al, 5
push esp
daa
jo 0x486111
push ecx
cli
mov bl, 0x39
jg 0x48609c
ret
adc edx, ecx
imul ecx, dword [ebx + 0x2751986f], 0x73cf05ed
scasb al, byte es:[edi]
and dword [edx], ecx
stc
jbe 0x48607c
shr byte [ebx - 0x5f], 1
cmp byte [esi + 0x52], dh
jo 0x48607c
mov eax, dword [0x70527638]
cdq
push ebp
cmp eax, 0xd8d7678f
or bh, byte [edx + esi*8]
jecxz 0x4860dd
add eax, 0xdac2f4d7
push ecx
mov esp, edx
and bl, byte [edi - 0x652ce7aa]
das
push ss
add eax, 0xdb198b80
adc dword [ebp*8 - 0x4dd9abfb], edx
cmp dword [ebx + ebp*4 + 0x275458a3], ebp
in eax, dx
mov esp, 0x577044f
dec edx
jo 0x48ad2a
jg 0x48612f
arpl word [edx], bp
mov byte [0x3a573405], al
mov al, byte cs:[0xcd4e40b9]
popfd
loope 0x4860c9
mov al, byte [0xa46e1e36]
sbb cl, byte [edx + esi*2 - 0x5d]
div dword [edi - 0x4a33331]
mov bh, 0xc0
jecxz 0x4860fe
popal
mov esp, 0xfc3e565c
fdivr qword [ebp + 0x5ed275a]
sbb eax, 0x27b26aad
sar byte [ebx + 0x7f4a9038], 1
xlatb
mov ebp, 0x379b5fcc
aaa
pop esp
cmp dword [ebp - 0x2e23a2e5], ebp
int3
push ecx
and eax, 0x7b1c3de4
ret
jbe 0x48ad7b
and bl, byte [edi + 0x59]
daa
retf
add eax, 0xd410c9a7
jno 0x48ad08
xor al, 0x2d
invalid
jns 0x48ada9
sub eax, esi
jp 0x48adb6
jmp 0x48adb9
jecxz 0x48adfe
xlatb
lahf
and dword [esi - 6], 0xffffffe8
in al, dx
xor dl, byte [ecx]
fimul dword [esp + ecx*8 - 0x16fb75d3]
mov ebx, 0xf12c9acd
cmp al, al
test dword [edi], edi
in eax, 0x19
call 0xa93596a9
xchg edi, eax
mov byte [0xadf84e8a], al
call 0xa2e0569a
mov cl, byte [esi - 8]
lodsd eax, dword [esi]
jecxz 0x48ad3e
sbb byte [esi], ch
xor al, 0xce
shl dword [ebp - 0x4e3c261], 1
inc ebx
invalid
movsd dword es:[edi], dword [esi]
lahf
cmp eax, 0x8f43fb1c
and eax, 0x25c42227
mov esp, cs
in eax, 0xb9
mov esi, dword [0x91af1812]
enter 0xffffffffffffaf9f, 0x5a
add al, 0x5e
xchg ecx, eax
std
or dword [esi + eax + 0x1c], ebx
mov ebx, 0x21025c10
sub al, 5
sar byte [esi], 0xd7
call [ebx]
mov esp, 0xd8e79e6c
int1
mov bh, 0xef
dec ecx
into
pop esp
inc eax
xchg dword [esi + 0x2f2d0dd9], eax
mov cl, byte [edi]
mov dword [ecx], edi
dec eax
mov dh, 0x70
jp 0x48ad8a
add byte [eax - 0x4a], cl
jo 0x48ae7d
xchg byte [edx + ebp], bh
cmp al, 0x2a
sbb ecx, eax
js 0x48ada9
retf
lahf
jae 0x48ae68
push 0x33
xor dword [ebx], esp
inc ebp
cdq
sub ecx, dword [ebp + 0x2533316b]
inc ebx
mov fs, word [esi]
xchg esp, eax
jb 0x48ae9f
aas
sbb dword [edx - 0x6c], ecx
mov ah, 0x4f
stosb byte es:[edi], al
inc esp
push ds
sbb eax, 0x1376c4be
xchg esp, eax
out dx, al
xor edi, dword [ecx + 0xb]
fidiv dword [edx - 0x67]
outsd dx, dword [esi]
int1
in al, dx
rol byte [edx], 1
dec esi
dec eax
add cl, byte [esi + 0x48]
mov dh, 0x6f
rcl cl, 0x74
xor edx, dword [0x3304a625]
jns 0x48ae98
les ecx, [eax]
dec eax
fcmovb st(0), st(4)
and al, 0xbf
outsd dx, dword [esi]
int1
in al, dx
or eax, 0x18bab2eb
pop es
aam 0x59
jmp 0x48ae4c
out dx, al
push ebx
or dh, 0xc8
invalid