Function at 0x451d96
Capabilities:
Encode data using xor

Disassembly:
test byte [eax + 0x6b], cl
fiadd word [ecx + 0x4376b778]
xchg ebp, eax
daa
or cl, byte ss:[edx]
add al, 0x61
or al, 0x9c
inc esp
pop ebp
cmp esp, dword [ebp + 0x54698b2]
add byte [ecx], ch
call 0xddfd8af8
insd dword es:[edi], dx
inc esi
jge 0x451d30
jg 0x451cfa
xor al, byte [edx + ecx*2 + 0x16]
neg byte [eax - 0x28]
imul ebx, dword [edi], 0xf649c09b
or dword [eax - 0x14], ecx
in al, dx
popfd
iretd
sbb bl, byte [eax]
int1
push edi
or eax, 0xe1ba6f45
salc
je 0x451d16
dec eax
test ebp, 0x77180e57
dec eax
sbb al, 0x85
jmp 0xcaa9dd64
pop ebx
mov ch, byte [esp + edi*4]
ror dword [ebp - 0x6f], 1
and bl, byte [ecx]
cmp cl, byte [eax]
lodsb al, byte [esi]
popal
stosb byte es:[edi], al
mov ecx, 0xb78b09b7
aaa
cmp byte [ecx], al
sub eax, 0x56d52def
xor dword [ecx + 0x76], edx
je 0x451ddc
mov ecx, dword [ebx + 3]
inc edi
push ecx
inc esi
adc ebp, esp
xor bh, byte [edi - 0x1e6d1bf]
leave
jne 0x451d75
invalid
xchg dword [edx + 0x3a3e769c], edx
fst dword [esi + 0x59]
mov edi, 0xf675d675
push ebp
sbb byte [ebp - 0xa], dh
adc eax, 0xd576595d
sahf
push ecx
pop es
adc eax, 0x7922d350
fidivr dword [ecx - 6]
fild dword [ebp + 0x2b]
mov edi, 0x7679c60f
dec ecx
xchg esi, eax
jne 0x451e25
pop esp
ficom dword [eax]
mov ebx, 0x9e38fa19
sbb byte [esi], ah
cmc
sub ebx, dword [ecx]
idiv dh
xor al, 0x1b
jbe 0x451e49
invalid
sbb dword es:[edx + 0x56787af9], ebx
clc
arpl dx, dx
cmp al, 0x38
mov es, word [ebp + 0x14]
inc eax
add eax, dword [esp + edx*8]
movsd dword es:[edi], dword [esi]
ja 0x451e18
pop ebp
push edi
mov bh, 8
xchg dword [ebp - 0x47323763], eax
jo 0x451e81
push edi
stc
mov bh, 0xdc
test eax, 0xd98ab977
push ebx
adc dword [0x321076f9], edx
adc eax, 0x3a4a7476
add dh, byte [ebp + 0x4d0ee633]
dec esi
xchg ebp, eax
arpl word [ebx + 0xea577e6], si
sub eax, 0x6773b14f
int3
cmp ch, byte [esi + 0x234720ee]
or eax, 0xb843bd05
outsb dx, byte [esi]
xchg byte [ecx], bl
or edi, ebp
daa
push cs
call 0xa7d3dbf4
add bh, ch
mov bh, 0x16
mov fs, word [edi + 0x16b7fd02]
arpl word [eax - 0x562dfff2], dx
xchg esp, eax
sal byte [ebp + 0x47], 1
bound edx, qword [eax + 0x30b491c1]
loopne 0x451efa
jnp 0x451ee6
inc edx
sub esi, dword [edx + 0x37]
sbb eax, 0x60a80450
rol dword [edx + 0x4436e4a1], cl
sar byte [edx], 0x47
sbb al, 0xf3
adc al, 0xf4
mov dword [0xf1c745b0], eax
mov word [esp + esi*4], ss
loopne 0x451e6c
xor cl, byte [eax - 0x21]
and dword [0x6aa6b086], ebp
aas
and eax, 0xd431cb6
push ss
push eax
stc
outsb dx, byte [esi]
mov cl, 0x22
movsd dword es:[edi], dword [esi]
mov bh, 0xda
pop edi
movsd dword es:[edi], dword [esi]
xchg ebp, eax
xchg byte [edi + 0x6d485727], ch
das
xchg edx, eax
push esi
and al, 0x50
mov bl, 0xbc
mov esp, 0x223094a5
mov esp, 0x3094a5bc
and dh, byte [ecx - 0x2f]
xor byte [edx], ah
jno 0x451ebb
loopne 0x451f48
mov dh, 0xff
fcmovnbe st(0), st(4)
test ebx, edi
les edi, [ebx + 0x76]
mov dh, 0xe4
sbb bh, byte [ecx - 0x1d09e81e]
loop 0x451f13
mul dl
loop 0x451ee2
loope 0x451ead
nop
jne 0x451f7b
scasb al, byte es:[edi]
div esp
pop eax
sbb byte [ebx + 0x14], al
push es
push es
mov ah, 0x70
xchg ecx, eax
xchg dword [eax - 0x5bdb9f85], edx
jnp 0x451f75
and al, 0xa4
pushal
jmp 0xf9c38efc
fld xword [ebx + 0x5e]
loop 0x451f8a
invalid
lcall 0xf387, 0x2ec85f08
lcall 0x53c2, 0x37b17e58
mov eax, dword [0x5b0e12f7]
push ss
add ah, byte [edx + esi*2]
insb byte es:[edi], dx
ja 0x451fc6
in eax, 0xe5
mov bl, 0xa0
lodsb al, byte [esi]
or byte [esi], bl
xor byte [ecx], ah
and dl, byte [edx]
jb 0x451f9c
and dword [edx], esp
adc dh, byte [edx + 0x1c]
xchg byte [ebp - 0x1f508d20], dl
rcl dword [edx], cl
invalid
movsd dword es:[edi], dword [esi]
aam 0xb
test dword [ebx + 0x38f34578], 0xc7b9e82d
xor ecx, dword [eax - 0x77]
insd dword es:[edi], dx
jae 0x451fca
cmp byte [0x33c7b9e8], ch
dec eax
mov dword [ebp + 0x73], ebp
sub eax, 0x9b6f475b
pop ebx
inc edi
outsd dx, dword [esi]
wait
sal byte [edi], 1
inc edi
jmp 0x451fd7
invalid
sbb eax, 0x3cb55351
pushfd
out dx, eax
arpl ax, bp
xlatb
loopne 0x451f59
rol dword [ebx], 1
fld qword [ebx]
jl 0x45201b
add ebx, ebp
add edi, dword [edi + edi + 0x29]
pop ebx
jnp 0x451f91
sub dword [ebx + 0x7b], ebx
mov cl, 0xf5
cmc
sub ecx, 0xe954dad3
fsubr qword [eax + 0x76]
inc esp
clc
pop eax
invalid
mov ah, 4
and dword [eax], ebx
pushfd
std
and esi, dword [ecx - 0x5e9a1699]
out dx, al
pop ebx
push edx
pushal
mov byte [0x6cbe582a], al
lcall 0xc9c0, 0xe9c306e0
je 0x4520b2
out 0x66, al
cwde
mov ah, 0xf4
and dword [eax - 0x7d293cc3], esp
dec eax
xor dh, dh
xor byte [eax + 0x436678ca], cl
mov ch, 0xef
mov bl, 0xe6
xor dword [ebp + 0xadb7b34], eax
pop edi
dec esp
lahf
das
mov eax, dword [0xb41ce0b8]
invalid
jmp 0x4658dee8