Function at 0x401000
Capabilities:
Encode data using xor

Disassembly:
mov eax, 0xa916f8
push eax
push dword fs:[0]
mov dword fs:[0], esp
xor eax, eax
mov dword [eax], ecx
push eax
inc ebp
inc ebx
outsd dx, dword [esi]
insd dword es:[edi], dx
jo 0x401080
arpl word [edx + esi], si
test eax, 0x6d7b5b12
add eax, 0x18fab024
adc esi, esp
enter 0x7513, 0xffffffffffffffda
add eax, 0x1e901b66
jl 0x40105d
adc al, 0x5e
fxam
cmp edx, eax
jns entry0
nop
mov ch, 0xc9
push ss
dec edx
jbe 0x401019
iretd
cmp ebx, dword [eax + esi*2 - 0x4f6a622d]
or bh, cl
mov eax, 0xaa550bf7
movsb byte es:[edi], byte [esi]
inc ecx
pop es
iretd
push esp
and byte [eax + edx*8], 0x3f
jp 0x401081
fst st(2)
aaa
ja 0x40110b
popfd
out 0x62, eax
sti
pop ebx
lea ebp, [edi]
lodsw ax, word [esi]
cmp dword [ecx - 0x65], edx
pop eax
and dl, byte [ebx]
add dword [esi + 0x7c3e3f32], eax
mov byte [0x32c513f3], al
mov edi, 0x69f0833
adc dword [eax], ecx
add edi, 0xf5b49a29
lodsd eax, dword [esi]
and ecx, ecx
sbb ah, byte [ebx - 0x12]
lodsd eax, dword [esi]
dec byte [esi + 0x6836bed]
and byte [ebx - 0x6f286b3f], cl
les edx, [edi - 0x6c]
pop esi
and byte [ecx + edx*8 + 0x75da310d], 0x92
and ch, byte [esi + edx*8]
push ebx
cli
rcr ecx, 0xde
loope 0x4010af
shr ebx, 1
std
jb 0x40110f
jmp 0x4010dd
jne 0x40112d
mov dword [ebx + 0x44], edi
fcmovnb st(0), st(1)
push 0xfffffffffffffff8
or eax, 0x67d106d3
jg 0x401156
lodsb al, byte [esi]
sub eax, 0x6e42bb96
invalid
and eax, 0xf1d81a05
int1
aad 0x59
scasb al, byte es:[edi]
mov ch, 0x48
inc dword [esi]
jns 0x401153
ja 0x401147
add byte [edi], bl
iretd
stosb byte es:[edi], al
bound esi, qword [eax]
dec ebx
sar byte [ecx + 0x16], 0xbb
add al, 6
push cs
or al, 0xd2
fiadd word [ebx + 0x7fabfe4f]
insb byte es:[edi], dx
sub al, 0x32
mov dword [0xcc0a80e5], eax
inc ebx
or byte [ebp - 0xd1293f6], al
xchg ebp, eax
cmp al, 0x54
push esp
frstor dword es:[eax + 0x23e134b]
xor byte [edi], dl
invalid
jae 0x4011d3
salc
sub dword [ebx], ebp
test byte [ebx - 0x23c78272], ch
jp 0x40118d
push ds
nop
insb byte es:[edi], dx
jecxz 0x401122
mov bh, 0x7a
stosd dword es:[edi], eax
mov ebx, 0x3057b304
add byte [edx], 0x6a
xchg edx, eax
add ebp, dword [esi - 0xaa5924b]
hlt
xchg ebx, eax
xchg byte [edi - 0x6e], bh
imul esi, ebp, 0x28834ebb
in eax, 4
cld
popal
adc byte [esi + 0x247768d0], ah
mov al, 0xd7
xchg byte [ecx - 0x24], bh
push ebx
lahf
or dword [edi + 0x461a5fe4], eax
push sp
jmp 0xfee27459
dec bx
shl cl, cl
scasd eax, dword es:[edi]
cmp ah, byte [ebx + 0x5d]
inc esp
jae 0x40119a
loop 0x401216
scasb al, byte es:[edi]
inc eax
retf
adc dword [0x2d6bfe9e], ecx
rol dword [edi + esi + 0x63904c0e], 1
jne 0x40127b
push ebx
mov bl, 0x8b
ret 0xad11
lodsd eax, dword [esi]
mov edi, edx
xor al, 0x2b
outsb dx, byte [esi]
and dword [edi], esi
jg 0x40121c
mov eax, 0xc3cd9831
cli
xor byte [ecx + 0xb5d9713], al
shr dh, 0x85
mov edx, 0x4769dbd8
push ebx
movsb byte es:[edi], byte [esi]
xchg ah, cl
aam 0xe8
add eax, 0x3b0192ad
push esi
aas
ret
fcomp st(3)
imul eax, dword [edi + 0x53], 0xd4cc86a4
call 0x1d2bfa8
cmp edx, dword [esi + 0x3f]
cmp ah, byte [ebx - 0x4dd10f5b]
pop edx
daa
rcl edi, 0x77
xchg esp, eax
pop ss
jnp 0x401289
cmc
cld
xchg ebp, eax
sub dword [0x5a4303ec], edi
dec ecx
idiv dword [eax]
jne 0x4012e7
add byte [ecx], bl
jmp 0x401295
add al, 0xac
adc al, 0x8f
mov ebp, 0x2130dd9
or ecx, dword [ecx + 0x7f72d3b5]
test al, 0xf2
bound edx, qword [edx - 0x42]
xor al, 0xa5
ret 0xae73