Function at 0x1003bcc0
Capabilities:
Encode data using xor

Disassembly:
add al, 0x28
adc eax, dword [eax + eax]
push es
sub al, byte [eax]
add byte [ebx], dl
xor byte [eax + eax], cl
imul eax, dword [eax], 0
add byte [eax], al
add ebx, dword [edi]
adc byte [edi], ch
push es
jae 0x1003bc6f
add dword [eax], eax
or bh, byte [edx + 2]
sbb dword [eax + 0x47], ebx
pop ds
sbb byte [edx + 2], ah
sbb byte [eax + 0x47], bl
pop ds
adc byte [edx + 0x60], ah
add dl, byte [edi]
pop eax
inc edi
push ds
bound esp, qword [eax + 2]
inc edi
pushal
add bl, byte [ebx]
pop eax
inc edi
push ds
bound eax, qword [edx]
sbb bl, byte [eax + 0x47]
pushal
push 0x47581d02
push ds
bound eax, qword [edx]
sbb al, 0x58
inc edi
pushal
push 0x47581e02
add bl, byte [edi]
or dword [eax + 0x47], ebx
add bl, byte [edi]
or bl, byte [eax + 0x47]
add bl, byte [edi]
or ebx, dword [eax + 0x47]
add bl, byte [edi]
or al, 0x58
inc edi
add bl, byte [edi]
or eax, 0x1f024758
push cs
pop eax
inc edi
add bl, byte [edi]
addps xmm0, xmmword [edi + 0x73]
or eax, 0x2a0a0003
add byte [eax], al
add byte [ebx], bl
xor byte [edx], al
add byte [0x90000000], ch
add byte [eax], al
adc dword [edx], eax
outsd dx, dword [esi]
salc
add dword [eax], eax
or cl, byte [edx]
fisub word [edx]
or eax, dword [edi]
outsd dx, dword [esi]
push cs
add eax, dword [eax]
or ch, byte [edi + edx]
sub byte [ebx + 1], al
inc ebx
add dword [eax], eax
or al, byte [edi]
outsd dx, dword [esi]
push cs
add eax, dword [eax]
or ch, byte [edi + 0x78]
or al, byte [eax]
push es
pop es
outsd dx, dword [esi]
push cs
add eax, dword [eax]
or bh, byte [edx - 2]
sbb al, byte [esi]
sub al, byte [eax]
add byte [eax], al
add dword [eax], edx
add byte [eax], al
add byte [eax], al
add byte [eax], al
or dword [ecx], ecx
add byte [edx], ah
inc eax
add byte [eax], al
add dword [esi + 2], ecx
pop ss
and al, byte [eax]
add byte [ecx], al
dec esi
add dl, byte [edi]
lea esi, [edi + 0x25010000]
push ss
add ebx, dword [esi + edx + 0x26f6f17]
add byte [edx], cl
sub dl, byte [ebx]
xor byte [eax + eax], al
sbb byte [eax], al
add byte [eax], al
xchg ecx, eax
add byte [eax], al
adc dword [edi], edx
lea esi, [edi + 0xa010000]
add al, byte [esi]
push ss
pop ss
outsd dx, dword [esi]
outsb dx, byte [esi]
add al, byte [eax]
or ch, byte [0x62a1502]
push ss
xchg ecx, eax
sub al, byte [esi + 0x28]
inc ebx
add dword [eax], eax
or al, byte [edx]
outsd dx, dword [esi]
xchg esi, eax
or al, byte [eax]
push es
jae 0x1003bce8
add al, byte [eax]
or ch, byte [edx]
add byte [eax], al
adc esi, dword [eax]
or eax, dword [eax]
adc dword [eax], eax
add byte [eax], al
add byte [eax], al
add byte [eax], al
push ss
push ss
push ss
push ss
push ss
push ss
push ss
push ss
push ss
push ss
add dh, byte [ebx + 0xd]
add eax, dword [eax]
or ch, byte [edx]
add byte [eax], al
add byte [ebx], dl
xor byte [ebx], cl
add byte [0], bl
add byte [eax], al
add byte [esi], dl
push ss
push ss
push ss
push ss
push ss
push ss
add bl, byte [edi]
sbb byte [ebx - 0x2e], ah
add bl, byte [edi]
adc byte [ebx - 0x2e], ah
add bl, byte [esi]
arpl dx, dx
add dl, dl
jae 0x1003bd8b
add eax, dword [eax]
or ch, byte [edx]
add byte [eax], al
add byte [ebx], dl
xor byte [0x2c00], al
add byte [edx + 0x28110000], dl
add byte [eax], al
xchg edx, eax
add byte [eax], al
adc dword [eax], ebp
inc ebx
add dword [eax], eax
or al, byte [edx]
outsd dx, dword [esi]
xchg esi, eax
or al, byte [eax]
push es
or bl, byte [esi]
lea esi, [edi + 0xb010000]
add byte [eax], al
add dword [ebx], ecx