Function at 0x10098450
Capabilities:
Encode data using xor

Disassembly:
imul edi, dword [ecx + 0x48], 0x54458f7a
les edi, [0xa2f81fe5]
push 0xffffffffffffffe0
cmpsb byte [esi], byte es:[edi]
mov ecx, 0x86911748
push eax
fld dword [ebp - 0x169aa898]
ror dword [edx], 0xf1
test eax, 0x66635673
lds edx, [eax]
stosd dword es:[edi], eax
leave
dec eax
pop ss
xchg ecx, eax
xchg byte [eax - 0x27], dl
test dword [eax + 0x57], ebp
jmp 0xb9fa8eb2
dec ebx
fcom qword [esi - 0x3f]
mov bl, byte [edx]
dec ecx
lcall 0xe15c, 0x829ac06c
pop esi
pop esp
loope 0x10098467
ja 0x10098488
dec edx
pop ebx
loopne 0x100983e2
cmovo edi, dword [eax - 0x4b83a82d]
inc eax
mov eax, 0xb47c57d3
or al, 0x4d
push ds
popal
cdq
xlatb
and al, 0xf0
pop eax
rcr esi, cl
jne 0x10098406
pop ds
push ebp
push 0xecfed66a
mov ch, 0x1e
inc edx
in eax, dx
bound eax, qword [eax]
jg 0x100983d1
push 0xffffffffffffffd6
invalid
xchg esi, eax
ret 0x741f
xchg byte ds:[esi + 0x42], dh
pop ss
call 0xfd6e2590
movsd dword es:[edi], dword [esi]
loopne 0x100984d1
mov eax, dword [0xe0a5ed64]
je 0x10098426
enter 0xffffffffffffdd89, 0x11
push 0x35
mov ebp, ebx
adc dword [edx + 0x35], ebp
loopne 0x100983fa
and al, byte [esi + 0x7fa0ff22]
mov ah, 0xd9
add dl, ah
js 0x10098457
and bh, bh
mov al, byte [0xd9b47f]
loop 0x100984e8
out 0x9a, al
mov esp, 0xf3a96816
mov dl, 7
lcall 0xb2f3, 0xa96816bc
pop es
jnp 0x100984d6
test al, 0x5e
pop esi
jle 0x10098410
mov ah, 0x72
aad 0xf2
out 0xef, al
test dword [esi + 0x730633df], edx
dec esp
xor eax, dword [esi]
jae 0x100984d8
push esi
out dx, eax
xlatb
rcr dword [ebx], 0x5d
sub eax, dword [esi + 0x1a]
sub dl, ah
pop edx
pop edx
adc cl, ch
add dword [edx + 0x50b28f0b], ebx
mov eax, dword [0xb9beaaeb]
stosd dword es:[edi], eax
jmp 0x1009850b
sub byte [esp + ebx*4 - 0x454e416e], ch
xor dword [edx], edi
cmp ecx, dword fs:[ebp - 0x5cf44d54]
push esp
lea ebp, [edx + esi*4 + 0x5c54a30b]
pop esp
nop
mov cs, word [ecx + eax*8]
push 0x7fd63f69
mov al, byte [0xbe11bb1e]
ret
aas
salc
jg 0x1009847c
push ds
mov ebx, 0xc0c3be11
xchg esp, eax
jge 0x100984cb
push ds
dec esi
mov word [esi - 0x287547e7], ds
xchg byte [edx + 0x30b13f37], ch
sahf
sbb dword [eax - 0x55792876], edi
aaa
aas
mov cl, 0x30
inc esi
pop ebx
cmp esp, dword [edx + ebx + 0x68]
std
cwde
add al, 0x4f
push 0x4f0498fd
adc ch, byte [ebx - 0x38]
xor al, 0xd7
dec edi
test byte [ebp*4 - 0x7897d28a], dh
and dl, ah
and al, 6
loop 0x10098531
push es
test al, 0x87
adc edi, dword [edx - 0x468dfce6]
jnp 0x100984f8
movsd dword es:[edi], dword [esi]
xchg byte [edi + 0xb01966b], bl
pop ebp
push edi
mov eax, 0x7caa90b8
xor al, 0x77
add ecx, edi
jno 0x100984c0
jae 0x10098518
ret
sub ah, byte [esi]
jle 0x100985a0
push edx
mov byte [ebp + 0x46], dh
sub bl, byte [esi]
xchg edi, eax
mov dword [esi], esp
into
sub edx, edi
inc edi
or al, 0xd9
adc dh, byte cs:[eax + esi*2]
inc esi
mov al, byte [0x3a4853ba]
test al, 0x16
push cs
mov edi, 0x996486ad
cdq
mov edx, dword [0xc50f1496]
pushal
idiv dword [ebx]
aad 0xde
bound ebp, qword [edi]
mov dl, 0xdc
sahf
aas
push es
pop esi
cmp ebp, dword [edi + 0x67cfa30e]
mov eax, dword [0x34338639]
adc byte [edi + esi*4 + 0x4dd57822], cl
mov byte [ebp - 0x42], 0xbb
dec esi
push edi
mov dword [esi + 0x8be39e9], ecx
mov ebx, 0x4effaae
dec edi
jmp 0xa067f1a2
xor byte [eax - 0x5b], bh
push ebp
nop
cmp dword [esi - 0x59], ecx
pop esp
dec eax
insd dword es:[edi], dx
test byte [ecx], 0xbd
xor byte [bx + 0x4e90], al
sub eax, 0xffffff96
pop ebp
out dx, al
mov edx, 0x12c09768
mov dh, 0x52
xchg dword [ecx - 0x659a7d70], esi
dec eax
jle 0x10098555
out 0xf, eax
and al, 0x77
fsubr qword [esi + 0x73]
adc ah, dl
sahf
ret 0xf3d0