Function at 0x41ee94
Capabilities:
Encode data using xor

Disassembly:
mov byte [ebp], dl
pop ebp
mov ch, 3
jns 0x41ed36
add esp, eax
les ebp, [edx*8 - 0x580efe07]
sub al, 0xd5
stc
add ecx, esi
cmpsd dword [esi], dword es:[edi]
movsd dword es:[edi], dword [esi]
dec ebx
stosd dword es:[edi], eax
jge 0x41ed87
invalid
sal ebp, cl
adc ecx, dword [edi + ecx*4 - 0x1e]
inc edi
test ebx, edi
adc esp, eax
cmc
dec ebx
jae 0x41ed73
invalid
lds ecx, [ebx + 0x4a]
wait
cli
add al, ah
retf
sti
xchg dword [ebx + ecx*4], eax
ja 0x41ed69
inc edi
pushal
leave
dec edi
dec edx
test dword [ebp + 0x38], edi
arpl word [ebp - 0x5a], di
jno 0x41ed2c
dec ebp
aad 0xc4
outsb dx, byte [esi]
loop 0x41eda2
invalid
insd dword es:[edi], dx
les edi, [ecx + 0x6a]
jnp 0x41ed34
add bl, byte [edx]
stosd dword es:[edi], eax
test ebx, 0xe4b1747e
rcl dl, cl
and eax, edx
outsb dx, byte [esi]
outsb dx, byte [esi]
sbb dword [esi + 0x34], ebp
mov cl, 0xc1
scasb al, byte es:[edi]
jp 0x41ed81
std
dec edx
fdivrp st(2)
dec edi
inc dword [ebx - 0x4a]
add dword [eax], eax
xchg edi, eax
ret
jle 0x41ee62
inc esp
sbb ebx, dword [ebx]
mov eax, dword [edx + esi*2 + 0x15024bea]
in eax, 0xd5
mov dh, 0x1f
mov al, byte [0x7b64d6e]
fidiv word [ecx]
jl 0x41eda6
invalid
aam 0xb0
xor byte [eax + edx*4 - 0x68a85666], 0xf2
push cs
jno 0x41ee7c
push eax
xor byte [edi - 0x36], 0x5b
mov word [esi - 0x61], ss
pop ss
sbb ah, byte [esi + 0x520a66e1]
mov al, byte [ebx - 0x6c]
sahf
sal dword [ebx - 0x64], 1
fisttp qword [esi + 0x32]
xor al, 0x9e
invalid
sub byte [eax - 0x23c00272], dh
sub byte [eax - 0x23c00272], dh
xor dword [ecx - 0x7f708ea], esp
jnp 0x41ee06
aam 0x99
popfd
cmp byte [ebp - 0x59], dl
sbb eax, 0x2baaa58
sub byte [edx - 0x51], dh
mov al, byte [0x67b53cf0]
pop es
sahf
scasd eax, dword es:[edi]
sub al, bh
cli
bound ebp, qword [ecx - 0x61e3db6d]
mov edi, 0xd48a9862
aam 0x12
pop ss
bound ebx, qword [eax + 0x1712d48a]
aam 0x12
pop ss
push edx
jg 0x41ee91
test eax, 0x2f04b2b4
jb 0x41ee30
cmp esp, dword [ecx - 0x44]
dec edx
mul dh
inc eax
cmp eax, dword [ebp - 0x59]
aas
dec edi
push ecx
mov al, byte [0x53966eb0]
cmp eax, 0x26e8eb1e
pushal
jno 0x41ee63
sub eax, 0x368a2c64
stosd dword es:[edi], eax
pop ecx
jecxz 0x41ee62
xor ch, dl
mov byte [esi + 0x21], ah
call 0x7164502a
sbb al, 0xbc
mov edi, 0xa6cff938
sbb eax, 0xa2d5d63b
mov cs, word [esi - 0x58]
jl 0x41ef40
ljmp 0x33c8:0xf8756da3
retf 0x4f9d
cmp dword [edi - 4], ebx
inc ebp
invalid
sbb byte [eax], 0xf5
or byte [ebx - 0x46aac3d1], ah
or byte [ebx - 0x46aac3d1], ah
push 0x50
xchg edi, eax
fstp qword [eax - 0x2a]
xchg esp, ebx
pop edx
test al, 0x86
xchg edx, eax
sub edx, dword [ebx + ebx*2 + 0x4f]
fcomp qword [edx - 0x58]
xchg byte [edx + 0x4f5b542b], dl
arpl word [0xbf8fbaed], dx
jbe 0x41eef6
jle 0x41ef73
sbb dword [edx + 0xd], esp
xor edx, ebp
pop ds
xor al, 0xa5
sbb dword [edx - 0x162c163a], esp
ja 0x41efc5
push ecx
xor cl, ah
loope 0x41ef44
test eax, 0x975da4e7
jecxz 0x41ef08
sti
leave
add byte [ebx + edx*2 + 0x7266d3ed], 0x89
xor ecx, dword [esi + 0x20e6305b]
cmp al, byte [esp + esi - 0x5b]
lodsb al, byte [esi]
stc
cmpsd dword [esi], dword es:[edi]
ja 0x41ef51
dec ecx
sub al, 0x90
push edx
push esi
xor byte [0x999da1e8], al
mov ebx, 0x522e1606
test byte [eax - 0x2ca9b5b6], ch
fist word [edx]
or eax, 0x7ad99f54
push edx
bnd js 0x41efb8
add eax, 0xb83dafdc
jns 0x41f02c
int 0xfe
outsd dx, dword [esi]
dec edi
out dx, eax
test eax, 0x4372544b
rol byte [edx], cl
pop ebp
aad 0x67
xchg edi, eax
or dword [ecx - 0x16], ebx
mov ebx, 0x8f50c3a2
mov ebp, 0x73fba4bd
sbb eax, 0xaad11e08
inc esi
por mm0, qword [0x6120d073]
pop ss
ficom dword [edx]
or eax, 0x84bf0192
push eax
std
and al, 0xc7
add eax, 0x9f32deb0
inc ecx
mov ebx, 0x810edb51
pushfd
pop edx
inc ebx
cmp edx, dword [esi + edi + 0x7d]
sbb al, 0xda
sal ebx, 0x78
bound ebx, qword [edx]
les edx, ds:[esi + 0x54]
test byte [ebx], ah
inc esp
mov eax, 0x2d1cd7e4
cmpsb byte [esi], byte es:[edi]
push cs
ficom dword [edx + 0x2f41b36e]
adc ecx, esi
cmp ch, byte [ebp + 0x72e9b4f7]
jbe 0x41f02f
jb 0x41f0a4
add byte [ecx - 0x5f], ah
and eax, 0x48e9a6fd
popal
mov eax, dword [0xe9a6fd25]
dec eax
loope 0x41f08e
test al, 0x5b
add eax, 0xd50ada29
cmpsb byte [esi], byte es:[edi]
pop ecx
pop ebp
not esi
scasd eax, dword es:[edi]
pushal
push ds
add dword [edx], 0x6dfc7f22
inc eax
add ah, byte [0x5840629b]
xchg esi, eax
js 0x41f0c7
clc
fstp st(7)
ret
mov esi, 0xd7105335
fistp qword [esi + 0x64a6ee47]
mov esi, 0x64a6ee47
mov eax, dword [0x539d599e]
xor edi, dword [ecx]
or esp, eax
and edx, dword [ebx]
inc edx
adc byte [edx - 0x6915820a], ah
jge 0x41f07a
xchg esi, eax
mov bl, byte [ebp - 0x43]
test eax, 0x5e0bd211
xor dword [ebx + ebp - 0x24ecd67b], ebp
out dx, eax
ficomp word [edx + 0x78d05203]
push esi
add edx, dword [edx - 0x30]
js 0x41f0ff
push eax
mov al, 0xdd
dec esi
mov dh, 0xcb
movsd dword es:[edi], dword [esi]
xchg ecx, eax
jle 0x41f074
xor eax, dword [edx - 0x17833d5c]
fdiv qword [ecx - 0x78024948]
inc esi
dec edx
sbb bh, al
salc
jmp 0x32a79311
xor ah, bh
mov eax, dword [0x172bcc3a]
jl 0x41f144
xor dl, ch
invalid
and ecx, esi
cmp byte [edx], bh
sar eax, 0x85
test byte [ebx - 0x12], dh
invalid
xor ebx, dword [ebx + 0x4f]
add eax, 0x6794bb64
inc edi
jmp 0x794c26c5