Function at 0x91451c
Capabilities:
Encode data using xor

Disassembly:
pop esp
outsb dx, byte [esi]
cmc
sbb byte [esi + 0x62], al
xchg edi, eax
xor eax, 0x3992dafb
sbb eax, 0x3d2eb444
pop eax
leave
ret
inc esp
dec esp
out 0x2c, eax
push eax
pop esp
sub al, 0x5c
pop esp
invalid
loopne 0x91446b
xor byte [0xc1b3efa9], 0x42
jb 0x91448c
fld qword [ecx + 0x7e]
mov cl, 0xe9
inc eax
dec edx
mov ebp, 0x1c9ec0e5
enter 0xffffffffffff909e, 0xffffffffffffffe8
cmp dword [edx - 0x79c70370], edx
xchg esi, eax
jmp 0x914509
adc al, 0xd1
mov bh, 0xa1
loopne 0x9144cf
inc ebx
mov eax, dword [0xa15fd1ec]
clc
shr dword [ebx - 0x6f], 1
les ebp, [esp + edi*8 + 0x6c]
insb byte es:[edi], dx
cld
insb byte es:[edi], dx
xchg ecx, eax
push ss
cmp eax, 0x246a4158
retf
jmp 0x914526
pushal
call 0x91452c
pop ebp
sub ebp, 0x10
sub ebp, 0x51451c
jmp 0x914542
mov eax, 0x51451c
add eax, ebp
add eax, 0x4c
mov ecx, 0x605
mov edx, 0x13646080
xor byte [eax], dl
inc eax
dec ecx
jne 0x914559
jmp 0x91456c
or ecx, dword [ebp + 0xb]
or dword [eax + eax*4 + 0x41018080], edi
js 0x9144f8
add byte [eax - 0x79c7b27d], 0x80
add byte [eax - 0x7f7f57c6], 0x80
ja 0x9145ea
or dword [eax + 0xb], 1
mov word [eax + 0x45838080], es
rcl al, 1
call 0x811f7585
call 0x81535acb
sub dword [esp + 0x5f4a2fe8], 0x808568e3
add byte [eax - 0x7f7f5197], 0x80
or eax, 0x97ca4e4
lodsb al, byte [esi]
movsb byte es:[edi], byte [esi]
aam 0xdd
or eax, dword [0x80808088]
or edx, dword [0x8080808c]
or ecx, dword [0x80808090]
inc ecx
imul eax, dword [edx + 0x420382b1], 0x58fc984
je 0x914657
jg 0x914659
fld qword [edx - 0x74]
or byte [ebx], 0xc
movsb byte es:[edi], byte [esi]
test byte [eax - 0x13177f80], al
das
mov es, word [eax - 0x3dead218]
add byte [ecx - 0x1bf25b54], 0xa4
jl 0x914600
call 0x81535b1c
sub dword [esp + 0x7ca4e40d], 0x68a48c09
test dword [eax - 0x2e967f80], eax
mov word [eax + ebp*2 - 0x7f7f7f7b], fs
imul edx, ecx, 0xd808082
in al, 0xa4
jl 0x914611
add byte [eax - 0x5b1bf280], 0x7c
or dword [esp - 0xa80222c], ebp
or eax, 0x97ca4e4
lodsb al, byte [esi]
movsb byte es:[edi], byte [esi]
aam 0xdd
jg 0x914603
invalid
mov byte [eax - 2], ch
add byte [eax - 0x77c2f480], 0x80
add byte [eax + 0x796d7101], 0x83
sbb eax, 0x796d7101
sbb dword [0x720149b3], 0xffffffc3
mov bl, 0x49
add dword [edx - 0x3d], esi
pushfd
fild qword [edi]
add dword [edx - 0x3d], esi
pushfd
fild qword [edi]
mov bl, 0x52
add ebp, dword [eax - 0x7b]
enter 0x48f, 0xffffffffffffffce
add byte [eax - 0x37f77080], 0x80
add byte [eax - 0x4663f41a], 0
jnp 0x9146b8
push 0x809a048f
add byte [eax - 0x70968500], 4
xchg ecx, eax
pop dword [edx + ebx*4]
add byte [eax + 0x697b0080], 0x8f
add al, 0x91
jnp 0x9146c2
pop dword [ecx + edx*4]
add byte [eax + 0x7b01e680], 0x7f
movsd dword es:[edi], dword [esi]
pop dword [edx*4 - 0x3e7f7f80]
imul ecx, dword [edi + edi*2 + 0x7f], 0xb9cca97f
add dword [ebx], 0x68038541
test byte [ecx + 0x3d], ch
jg 0x9146fd
jg 0x914629
aam 0xb9
add byte [ebx], 0x41
xchg byte [ebx], al
push 0xffffffffffffff84
add ebp, dword [eax - 0x7b]
imul ebp, dword [ebx], 0xdd7f7f7f
inc edx
mov word [eax - 0x2993f42b], es
xlatb
aad 0xb
cmc
mov word [ebx], cs
std
mov byte [edx + esi], bh
or al, byte [esi - 0x7f7eb9ff]
add byte [eax + 0x47018708], 0x81
add byte [eax - 0x7f7dc480], 0x80
add byte [edx - 0x7afa70ae], 0x80
add byte [eax - 0x6d3969f6], 0x52
pop dword [ebx]
pop eax
jg 0x91474a
xchg esi, eax
invalid
jg 0x91464f
push edx
pop dword [0x80808085]
or dl, byte [esi - 0x70ad6d3a]
add ebp, edx
add byte [eax - 0x7dbf4c80], 0x52
pop dword [0x80808085]
or dl, byte [esi - 0x70ad6d3a]
add ebp, dword [edx - 0x7d7f7f7f]
push edx
pop dword [0x80808085]
or dl, byte [esi - 0x6cad6d3a]
inc eax
adc byte [edx - 0x71], 5
test dword [eax - 0x69f57f80], eax
invalid
xchg esi, eax
invalid
add dword [eax + 0x52828080], 0x8085058f
add byte [eax - 0x6d3969f6], 0x52
xchg ebx, eax
inc eax
adc byte [edx - 0x71], 5
test dword [eax - 0x69f57f80], eax
invalid