Function at 0x4646db
Capabilities:
Encode data using xor

Disassembly:
xchg edi, eax
sahf
cmpsd dword [esi], dword es:[edi]
fsub qword [edi]
imul ecx, dword [edi + 0x43], 0x6ece5eac
jns 0x464721
jmp 0x46473a
cdq
cmp al, 0xfa
invalid
push eax
int 0x75
and al, 0x84
pop esi
add al, 0xd8
stosb byte es:[edi], al
jb 0x464728
lodsb al, byte [esi]
push cs
ljmp 0xb1fc
cld
mov cl, 0x69
mov ah, 0x82
dec edx
xor eax, 0x1cc963d7
insd dword es:[edi], dx
loop 0x464771
test dword [ecx + 0x48], edi
aad 0xf1
ret 0x1b3c
movsd dword es:[edi], dword [esi]
and eax, 0x8cfdd3b9
in al, 0xa2
nop
or byte [esi], dl
je 0x464727
sbb al, 0x7f
lahf
pop edi
xchg esi, eax
adc dword [eax - 0x19], edi
salc
jno 0x46474d
add eax, 0x654cc52e
mov esi, 0xee2251c5
aaa
sub al, 0xab
pop ebp
mov dword [0x6aa80e3b], eax
pop edi
salc
pop esp
sbb dword [ebx - 0x41], eax
jle 0x46481c
ret 0x4c62
mov ebp, 0xcc3324a7
rcl dword [esi + edi*2 - 0x7c], cl
out 0xc0, al
dec ebp
fisttp qword [ecx]
push ds
push ds
cmp bh, byte [esi]
jge 0x464845
bnd retf
push ds
pop eax
push cs
movsb byte es:[edi], byte [esi]
popfd
out dx, eax
adc edx, dword [ebp + eax*8 + 0x4648c895]
insd dword es:[edi], dx
out dx, al
jbe 0x46485c
jecxz 0x464882
in eax, 0xc4
aam 0xc5
salc
popfd
mov eax, dword [0x1131249e]
mov byte [0xd3e59cf8], al
dec edx
inc esi
and eax, 0x624cf813
in eax, dx
jns 0x46487e
lds esp, [eax + 0x410eab5d]
and eax, 0x4ccdec98
jp 0x4648d1
into
xchg edi, eax
imul ebp
pop ss
pop ebp
cmpsd dword [esi], dword es:[edi]
mov byte [0xd3635cdd], al
xor eax, 0x48337317
loope 0x464843
les ebp, [edx + esi - 0x7da1ae64]
sbb eax, 0x9a73cdaf
mov cs, word [edx - 0x36e68696]
int 0x62
mov eax, ebp
test dword [esi], ecx
imul ecx, dword [edi - 0x2ffa1272], 0xc7d06239
xor byte [edx + 0x25], ah
or dl, byte [ecx]
mov cl, byte [ecx]
bound esp, qword [0x98a110a]
sahf
ja 0x46492c
iretd
out dx, eax
push ecx
inc ebx
ror dword [ecx + esi*8], 0xa9
pop eax
cmpsd dword gs:[esi], dword es:[edi]
or eax, 0xac8f634a
bound edx, qword [ebp - 0x33060764]
jns 0x464948
dec esi
dec ebp
push cs
test al, 0xb0
mov eax, dword [0x36923487]
lds eax, [ecx + 0x5289a965]
out dx, al
or byte [ecx + edx + 0x6c6fe724], dl
xor dword [edx], ebx
push esp
cmpsd dword [esi], dword es:[edi]
test esp, edi
ljmp 0xfbae
add al, 0x1d
cmp bh, dl
xlatb
stosd dword es:[edi], eax
jne 0x4648b4
pop ebp
push edx
pop esi
xchg ebx, eax
in eax, 0xaa
je 0x46492d
invalid
cmp eax, 0x3dd66e25
inc ebx
popfd
and al, 0x52
push edx
das
and eax, 0x6f155920
xor cl, ah
cmpsb byte [esi], byte es:[edi]
shl dword [eax + 0x7fd785c8], 1
add byte [eax - 0x17c6159a], bl
je 0x4648e9
push ebp
ja 0x46497e
ljmp 0x5a0:0x6ef5f976
stc
cmc
outsb dx, byte [esi]
mov al, byte [0x1b22e205]
cmp cl, bl
cmovge esp, ebp
push cs
in al, 0xdd
loope 0x464929
adc al, dl
aas
mov esp, 0xdd81e298
ja 0x4649e7
frstor dword [esi]
ja 0x4649e7
mov ebx, 0xeec27810
cmp ecx, ecx
bound edx, qword [edx + 0x35]
cmp al, 0x62
xor bl, byte [0xd8156c83]
cmp al, 0x78
mov dl, 0xc4
cld
xor byte [ecx - 0x604e5150], cl
rcl dword [ecx + 0x72]
salc
pop ecx
mov dl, 0x71
jbe 0x464997
invalid
shr dh, cl
adc ebx, dword [edi]
push cs
and byte [ebx - 0x4c6cee18], 0x63
jnp 0x464940
sub eax, 0xdfae15ac
wait
ror dword [eax - 0x57f09d4f], 1
adc ebp, dword [esi]
pop es
sub eax, 0x30050d69
xor al, 0x31
int1
arpl word [esi + 0x1c], bp
mov ah, 0x81
wait
fmul qword [edi + 0x50d31cd2]
cmpsd dword [esi], dword es:[edi]
fdiv dword [edi - 0x67]
into
inc esi
loop 0x464965
mov word [edx + 5], ds
jae 0x464a64
mov ebp, dword [edx]
sbb ebp, ecx
leave
add byte [edx + 0x6a], bh
ror byte [edx - 0x3c60ab9], 0xf4
call 0xc2c4efed
add esp, eax
stosd dword es:[edi], eax
mov eax, 0xa2458cd4
jp 0x464a39
wait
sbb ch, bl
sub al, byte [0x28f9863f]
invalid
add dword [ecx + 0x3179c46d], 0x9bb48b5e
in eax, dx
push cs
pop esp
int 0x19
jmp 0xf8b86d13
in eax, 0xbd
sbb bh, byte [esi]
jo 0x4649d3
and cl, al
xchg byte [edi + 0x46], dh
jb 0x464a98
dec eax
stosd dword es:[edi], eax
shr cl, cl
add ecx, 0x7c7f5b3
mov dword [0xfbb2], eax
insb byte es:[edi], dx
stc
invalid
pop esi
xor eax, 0x2cb77290
jmp [eax + edi*8]
mov dl, 0x65
jp 0x464a1e
mov ch, 0xf7
leave
xchg edi, eax
cmp al, 0x18
push 0xffffffffffffffa7
add dword [ebp - 0x16], ebx
outsb dx, byte [esi]
enter 0x1808, 0x69
pushal
or al, 0x98
jae 0x464b09
lodsd eax, dword [esi]
inc edi
cwde
pushfd
fisttp dword [ebp - 0x62c11af4]
enter 0xffffffffffffce6d, 0x29
push ebx
pop esp
popal
test dword [ebp - 0x12], ecx
xacquire xchg byte [ebx], ch
invalid
xchg dword [ebx + 0x78], esi
pop esp
scasd eax, dword es:[edi]
jb 0x464b58
push es
and bl, bh
insb byte es:[edi], dx
and bh, byte [eax]
pop esp
test bl, ah
or byte [esi], al
loop 0x464af9
xor eax, 0x28c39522
iretd
mov esp, 0x17e8bd0d
cmpsb byte [esi], byte es:[edi]
mov fs, word [edi]
xchg edi, eax
bound ebp, qword [ecx + 0x6b921a9e]
or esi, esp
sub eax, 0x825baabe
push esp
insb byte es:[edi], dx
leave
xor bh, ah
lds edi, [esi]
add esp, dword [ecx - 0x58]
mov dword [edx - 0x17ed0db4], eax
invalid