Function at 0x44f653
Capabilities:
Encode data using xor

Disassembly:
inc esi
repne outsb dx, byte [esi]
xchg edx, eax
mov edi, 0x37073b7e
lodsd eax, dword [esi]
stc
fbstp tbyte [esi - 0x2d66a21e]
jb 0x44f4c2
loop 0x44f521
cdq
sal byte [edx - 6], cl
retf 0x7636
fld dword [esi]
cmp al, ch
push es
stosd dword es:[edi], eax
lea esp, [esi + 0x51ab1cd8]
cmp dword [eax], eax
mov dword [0xd2f8aba8], eax
mov word [esi], es
push esi
pop ss
xchg esi, eax
sub eax, 0x17bc36e5
ficomp word [ebx + 0x4de72397]
wait
xchg edi, eax
and esp, edi
dec ebp
cli
test al, 0x1f
mov esi, 0x4485ae6b
or al, 0x33
movsd dword es:[edi], dword [esi]
enter 0x2e7e, 0xffffffffffffff84
js 0x44f5c5
sahf
test dword [edi], esi
sti
in al, 0x94
and cl, 0xf2
je 0x44f53f
and byte [edi + 0x5f], 0xf2
xchg byte [edi], ah
insb byte es:[edi], dx
and ebx, ebx
xor byte [edx + esi*8 + 0x75], 2
iretd
inc eax
fistp dword [eax + 0x740e76d8]
add dh, ah
mov byte [edi - 0x2f], bl
dec ecx
jg 0x44f620
mov ebp, 0x5fb1513
rcl bl, 8
mov ch, 0x68
inc edi
mov dh, 0xca
dec esi
ret
push 0x459ad876
sub al, 0x58
ja 0x44f624
jbe 0x44f5a0
lcall 0x8356, 0x77582c45
push ecx
add byte [ecx - 6], dl
push esi
adc dword [ecx], 0x51
cli
push ecx
cmp eax, edx
mov ebp, 0x26d5f2b8
and bh, byte [ebp - 0x17]
invalid
xchg esp, eax
adc al, 0x3a
int1
fimul dword [edi + 0x14]
dec esi
dec edi
adc al, 0x4e
add bh, byte [esi - 0x7fdb8f9e]
js 0x44f5c6
jno 0x44f607
jmp 0x44f5cd
cmp ecx, eax
mov al, byte [edx + 0x16]
push ss
sbb esi, dword [ebx + 0x33]
add byte [eax - 0x1a], ah
dec ecx
pop edi
sub eax, 0xd8fead04
push esi
push es
xor dword [esi], ecx
pop esi
not byte [edx]
lcall 0x4581, 0xb5763ca1
cmp bl, cl
pop edi
mov bh, 0xc5
jno 0x44f658
imul esp, ebp, 0xd0f6c8d7
not al
movsb byte es:[edi], byte [esi]
xchg ebp, eax
imul ebx, ebp, 0x62
frstor dword [edx + 0xe]
les esi, [ecx - 0x17]
mov ebx, 0x1fd92a56
popal
cld
cli
shr dword [esi], 1
mov edx, dword [edi - 0x147a3040]
insd dword es:[edi], dx
adc al, byte es:[edi]
sbb al, 0x59
pushfd
test byte [esi], bh
mov bh, 0x6c
jno 0x44f682
jmp 0xd96f4d18
ror dword [ebp - 0x2ecbc5b7], 1
push edx
push 0xe
in eax, dx
xor dword [eax + esi*4], ebp
jns 0x44f60c
mov al, 0x79
xchg dword [eax + 0xe], ebp
jmp 0x44f650
push 0x71c7eb0e
cmpsb byte [esi], byte es:[edi]
mov byte [0xd13b9625], al
pushal
js 0x44f6e6
jno 0x44f64d
lfs esp, [esi]
int 0x1c
add esp, dword [ecx]
push ds
sub ebx, edx
in al, dx
mov word [esi + ebx*8 + 0x60a9d7f9], cs
int1
push ebp
mov dword [ecx - 0x71], eax
sub dh, ah
pop ebx
outsd dx, dword [esi]
sub byte [eax], al
rol byte [edx + ebp*4 - 0x452a4cf2], cl
ljmp 0x9c7f
dec ebp
push ss
in eax, dx
inc ecx
pop edi
cdq
fdiv dword cs:[ebp + 0x54f2857c]
hlt
salc
lodsb al, byte [esi]
imul esi, dword [ecx - 0x23], 0xffffffc2
or byte [eax], dh
inc ebp
cmp byte [edi], cl
push ss
xor al, 0xbd
mov bl, 0x3f
imul edx, dword [edx*8 + 0x6c18dfca], 0x2d
xor dword [ecx - 0x2cfdab74], esp
push esi
aam 0x23
cmp eax, 0x8b73fdfa
jb 0x44f78a
ror dword [ebp + 0x2c8777f6], 0x1c
or esp, dword [edi - 0x40]
fcmovbe st(0), st(2)
pop ecx
mov cl, 0xca
lea esp, [ecx]
jne 0x44f6d7
xchg edi, eax
fldenv [ebx - 0x48]
sbb al, 0xfc
sbb esi, eax
out dx, eax
sbb dl, byte [0x7bf5cc99]
jp 0x44f79a
jecxz 0x44f6fe
push ecx
salc
cmc
aad 0x14
mov al, byte [0x15c9429f]
add ecx, dword [edi]
sbb dword [ebp + 0x20], ebx
inc eax
jb 0x44f74c
add dword [edx], ebx
push eax
or dh, byte [eax + 0x749e63ad]
test dword [ebx + 0x2a60171a], esp
sbb dh, ch
lodsd eax, dword [esi]
arpl word [esi + 0x1aa38574], bx
pop ss
pushal
sub bl, byte [edx]
cmc
salc
test eax, 0xb5d98eb7
xor al, 0x71
sbb eax, 0x72fffc49
loop 0x44f758
aaa
mov edx, 0x16ac5547
xor dh, byte [0x778e6359]
xor al, 0x4e
js 0x44f7d0
stc
invalid
adc byte [ebp - 0x3bb86f1], bh
rol dword [ebx], 1
aas
das
or ecx, ecx
jmp 0xe201f24a
loope 0x44f7f1
inc edi
aas
mov ah, 0x8a
adc ebp, dword [eax + 0xa]
mov ch, 0xed
push ebp
push es
mov dl, 0xe9
push esi
or byte [edi - 0x380b04fa], cl
dec edx
adc dword [ebp - 0x27], edi
bound esp, qword [ecx]
rcl dword [edx - 0x19], 0xde
dec edx
and ecx, dword [edx + 0x4f8a33a1]
pushal
xchg esi, eax
or bh, bl
and al, 0x5b
movsb byte es:[edi], byte [esi]
in eax, dx
jns 0x44f846
ljmp 0xea2b:0xbcde3cba
mov esp, 0x2669ea2b
loop 0x44f827
pop edx
insb byte es:[edi], dx
wait
push edx
retf
jg 0x44f869
xchg esp, eax
xor al, byte [ecx + 0x72]
pushal
xchg ebp, eax
aad 0xe5
in al, dx
stc
sbb ecx, 0x64679dc2
das
daa
cmp eax, 0xe1fd23c6
push esi
or byte [edx], al
mov cl, 0xc7
fnsave dword [ecx - 0x23]
jmp 0x44f839
push ebp
mov bl, 0x7f
xor dword [ebp + 0x350a3d9f], edi
sub dh, byte [ecx + 0x2fecdd0c]
aam 0x63
nop
sti
pop edx
jecxz 0x44f818
wait
pushfd
imul ebx, edi, 0xffffffb9
adc bl, cl
frstor dword [edi + 0x37]
jge 0x44f8a2
pushfd
test eax, 0x51ac67af
xor bl, bl
mov edi, 0xab77d5b5
ja 0x44f7f3
invalid
mov dh, 0x80
out 0x44, eax
div dword [ecx + 0x5c42373f]
push esp
inc eax
mov edx, 0xabf07c4b
stosb byte es:[edi], al
xchg dword [ebx + 0x4c], ebp
sub bh, 0x55
leave
mov bh, 0x95
sub esi, dword [ecx + 0x3f]
dec ebp
invalid
mov ebp, 0xa98ddc8e
mov word [eax], ds
pop ebp
pop eax
pop eax
cmp eax, 0x7a22121e
int1
int3