Function at 0x8de194
Capabilities:
Encode data using xor

Disassembly:
pushal
call 0x8de19a
pop ebp
sub ebp, 6
sub ebp, 0x4de194
jmp 0x8de1f8
jmp 0x8de201
mov eax, 0x4de194
add eax, ebp
add eax, 0x93
mov ecx, 0x633
mov edx, 0x74127055
xor byte [eax], dl
inc eax
dec ecx
jne 0x8de218
jmp 0x8de22b
aas
adc eax, 0x5545553d
push ebp
cmp eax, 0x55799955
xchg bp, ax
add eax, 0x7469c0aa
adc dword [ebp + 5], edx
ficomp word [eax + 0x5569dcde]
push ebp
push ebp
aam 0x94
lodsd eax, dword [esi]
push ebp
push ebp
push ebp
push esi
cwde
in eax, dx
push ebx
push ebp
push ebp
push ebp
out dx, eax
jge 0x8de2ae
push ebp
push ebp
mov byte [0xde9d56b7], al
aam 0x59
push ebp
push ebp
push ebp
push esi
nop
add eax, 0x5c631a3d
push ebp
cmp eax, 0x5511fe10
push esp
jns 0x8de2e6
cmp eax, 0x55555555
mov ebp, 0x55555550
mov esp, 0x5555557d
add byte [ecx], al
or dh, bl
rcr byte [ebp + 0x55], 1
push ebp
push ebp
faddp st(0)
pop ecx
push ebp
push ebp
push ebp
invalid
jno 0x8de301
push ebp
push ebp
push ebp
cmp eax, 0x555c631a
cmp eax, 0x5511fe10
push esp
jns 0x8de331
add al, 0xbd
push eax
push ebp
push ebp
push ebp
mov esp, 0x5555571e
add dh, bl
mov ecx, 0xaa5920aa
and byte [ebp - 0x43], bl
sub edx, dword [ebp + 0x55]
push ebp
fsubp st(0)
pop ebp
push ebp
push ebp
push ebp
aam 0xa4
or dword [esi - 0xa], edx
mov esp, ss
movsb byte es:[edi], byte [esi]
or dword [esi - 0xa], edx
mov word [esi - 0x64], fs
aam 0xa7
dec edi
xor eax, 0xa7d44c7e
dec edi
xor eax, 0x87664c7e
salc
mov ebp, 0xd15a1d50
sbb edx, dword [ebp + 0x55]
push ebp
pop edx
fstp qword [0x33555555]
fimul word [ecx + 0x6c]
aad 0xae
mov ebp, 0x554fd15a
push ebp
push ebp
aad 0xae
mov esp, 0x5544d15a
push ebp
push ebp
xor edx, esp
scasb al, byte es:[edi]
stosb byte es:[edi], al
jo 0x8de381
rol dword [eax + 0x55], 1
push ebp
push ebp
adc al, 0xbc
cdq
stosb byte es:[edi], al
stosb byte es:[edi], al
stosb byte es:[edi], al
jl 0x8de34d
insb byte es:[edi], dx
push esp
salc
xchg esp, eax
push eax
salc
mov ebp, 0xaae8bc51
stosb byte es:[edi], al
stosb byte es:[edi], al
jl 0x8de344
insb byte es:[edi], dx
push edi
salc
xchg esp, eax
push ebx
salc
mov edi, 0x50bdd651
push eax
mov esp, 0xaaaaaafe
or byte [edi - 0x21ffaaa7], dl
mov ecx, 0xde000203
and byte [ecx - 0x22], bl
sub byte [ebp - 0x57], bl
out 0xd5, eax
fist word [ebx - 0x2c]
xchg ebx, eax
push esp
push ebp
push ebp
push ebp
fst qword [edx - 0x2c]
xchg edx, eax
push esp
push ebp
push ebp
push ebp
out dx, al
push edi
push ebp
push ebp
push ebp
push edi
xchg dword [edx - 0x30], ebx
push eax
push ebp
push ebp
push ebp
fild word [ebx + 0x13]
inc edi
xchg dword [edx - 0x2a], ebx
lea ebp, [edx - 0x78a85556]
pop edx
rcl byte [eax + 0x55]
push ebp
push ebp
fild word [ebx + 0x13]
inc edi
xchg dword [edx - 0x2a], ebx
aas
push ebp
push ebp
push ebp
xchg bp, ax
push edi
xchg dword [edx - 0x30], ebx
push eax
push ebp
push ebp
push ebp
fild word [ebx + 0x13]
inc edi
xchg dword [edx - 0x2a], ebx
jg 0x8de408
push ebp
push ebp
push edi
xchg dword [edx - 0x30], ebx
push eax
push ebp
push ebp
push ebp
fild word [ebx + 0x13]
inc edi
xchg dword [esi - 0x6b], eax
push edi
xchg dword [edx - 0x30], ebx
push eax
push ebp
push ebp
push ebp
fild word [ebx + 0x13]
inc edi
xchg dword [esi - 0x6b], eax
push edi
xchg dword [edx - 0x30], ebx
push eax
push ebp
push ebp
push ebp
fild word [ebx + 0x13]
inc edi
xchg dword [esi - 0x6b], eax
push edi
xchg dword [edx - 0x30], ebx
push eax
push ebp
push ebp
push ebp
fild word [ebx + 0x13]
inc edi
xchg dword [esi - 0x6b], eax
pop edx
rcl dword [ebx + 0x55]
push ebp
push ebp
fimul word [edx + 0x56df8d7e]
fst qword [edx + 0x12]
out dx, al
push edi
push ebp
push ebp
push ebp
mov esp, 0xaaaaaa25
stosb byte es:[edi], al
stosb byte es:[edi], al
stosb byte es:[edi], al
in eax, dx
push esp
push ebp
push ebp
push ebp
push edi
xchg dword [edx - 0x30], ebx
push eax
push ebp
push ebp
push ebp
fild word [ebx + 0x13]
inc edi
xchg dword [esi - 0x6b], eax
push edi
xchg dword [edx - 0x30], ebx
push eax
push ebp
push ebp
push ebp
fild word [ebx + 0x13]
inc edi
xchg dword [edx - 0x29], ebx
mov ebp, dword [edx - 0x69815556]
out dx, al
push esp
push ebp
push ebp
push ebp
pop edx
shl byte [ecx + 0x55], 1
push ebp
push ebp
in al, dx
push esp
push ebp
push ebp
push ebp
push edi
xchg dword [edx - 0x30], ebx
push eax
push ebp
push ebp
push ebp
fild word [ebx + 0x13]
inc edi
xchg dword [esi - 0x64], eax
push edi
xchg dword [edx - 0x30], ebx
push eax
push ebp
push ebp
push ebp
fild word [ebx + 0x13]
inc edi
xchg dword [edx - 0x29], ebx
mov ebp, dword [edx - 0x21fc5556]
mov byte [0xf1a6a07e], al
or edi, dword [ebp + ebx*2 + 0x1daaaaaa]
xchg esp, eax
mov ch, 0x5d
fist word [ebx + 0x13]
fidivr word [ebp + 0x555554ec]
push ebp
push edi
xchg dword [edx - 0x30], ebx
push eax
push ebp
push ebp
push ebp
fild word [ebx + 0x13]
inc edi
xchg dword [esi - 0x64], eax
push edi
xchg dword [edx - 0x30], ebx
push eax
push ebp
push ebp
push ebp
fild word [ebx + 0x13]
inc edi
xchg dword [edx - 0x29], ebx
mov ebp, dword [edx - 0x522b5556]
push ebp
sub byte [ebp + 0x55], dl
aam 0x8c
stosb byte es:[edi], al
stosb byte es:[edi], al
stosb byte es:[edi], al
stosb byte es:[edi], al
aam 0xad
push ebp
push eax
push ebp
push ebp
aam 0x8c
stosb byte es:[edi], al
stosb byte es:[edi], al
stosb byte es:[edi], al
stosb byte es:[edi], al
aam 0xad
aad 0x55
push ebp
push ebp
aam 0x84
push ebp
push ebp
push ebp
push ebp
aam 0xad
aad 0x55
push ebp
push ebp
aam 0x84
push ebp
push ebp
push ebp
push ebp
add ebx, esi
mov byte [0xf1a6a57e], al
or edi, dword [esi + ecx*8 - 0x20555555]
push ebx
adc esp, dword [esi - 0x64]
xchg ebp, eax
mov ebp, 0x4fd15a54
push ebp
push ebp
push ebp
aam 0x84
push edi
push ebp
push ebp
push ebp
fidivr word [ebp + 0x7ea2de03]
movsd dword es:[edi], dword [esi]
cmpsb byte [esi], byte es:[edi]
int1
or ebp, esi
push esp
push ebp
push ebp
push ebp
mov esp, 0xaaaaab26
or byte [esi + 0x28], bh
pop ebp
ficom word [edx - 0x4f21f4f6]
or byte [edi + 0xb0a555d], dl
mov esp, 0x55555551
adc dword [esi - 0x3e12801d], ecx
mov ah, 0x18
push ebp
push esi
nop
aam 0x95
out 0x56, al
push ebp
push ebp
in al, dx
inc esi
push esi
push ebp
push ebp
out dx, eax
xchg edi, eax
loopne 0x8de541
cmp dword [ebp + 0x45], esp
adc eax, 0xa3d05a1c
stosb byte es:[edi], al
stosb byte es:[edi], al
stosb byte es:[edi], al
mov esp, 0x55555551
into
dec ebx
pop esi
mov bh, 0xc1
rol al, 0xa4
push edi
sbb al, 0x19
invalid