Function at 0x100065ac
Capabilities:
Encode data using xor

Disassembly:
or byte [ebx + 0x11f01002], 2
adc byte [eax - 2], ah
add dword [eax], edx
pop esp
add byte [edx], ch
add byte [eax], al
add byte [eax], al
add byte [esi], ch
add byte [eax], al
add byte [edi], ch
add byte [eax], al
add byte [ebx], dh
je 0x100065cc
add byte fs:[edx], bh
add byte [edx], bh
add byte [edi], bl
push ebx
add byte [eax + eax + 0x72], dh
add byte [ecx], ch
outsb dx, byte [esi]
add byte [edi], ah
pop edi
add byte [ebx], ah
outsd dx, dword [esi]
add byte [esi], ch
jae 0x100065ea
je 0x100065ec
pop edi
add byte [ecx], ch
je 0x100065f2
add byte gs:[edx], dh
popal
add byte [eax + eax + 0x6f], dh
add byte [edx], dh
cmp al, 0
arpl word [eax], ax
insb byte es:[edi], dx
add byte [ecx], ah
jae 0x10006608
jae 0x1000660a
and byte [eax], al
jae 0x1000660e
je 0x10006610
add byte fs:[edx], bh
add byte [edx], bh
add byte [edi], bl
push ebx
add byte [eax + eax + 0x72], dh
add byte [ecx], ch
outsb dx, byte [esi]
add byte [edi], ah
pop edi
add byte [esi], dh
popal
add byte [eax + eax + 0x3c], ch
add byte [ebx], dh
je 0x10006632
jb 0x10006634
jne 0x10006636
arpl word [eax], ax
je 0x1000663a
and byte [eax], al
jae 0x1000663e
je 0x10006640
add byte fs:[edx], bh
add byte [edx], bh
add byte [edi], bl
push ebx
add byte [ecx], ch
insd dword es:[edi], dx
add byte [eax], dh
insb byte es:[edi], dx
add byte [ebp], ah
pop edi
add byte [eax + eax + 0x79], dh
add byte [eax], dh
add byte gs:[ebx], dh
cmp al, 0
ja 0x10006664
arpl word [eax], ax
push 0x72006100
add byte [edi], bl
je 0x10006670
add byte ds:[eax], ah
add byte [esi], bh
add byte [eax], ah
add byte [esi], bh
add byte [edx], bh
add byte [edx], bh
add byte [edi], ch
jo 0x10006682
add byte gs:[edx], dh
popal
add byte [eax + eax + 0x6f], dh
add byte [edx], dh
and byte [eax], al
sub al, byte [eax]
add byte [eax], al
add byte [eax], al
add byte [eax], al
jae 0x1000669a
je 0x1000669c
jb 0x1000669e
imul eax, dword [eax], 0x67006e
and byte [eax], al
imul eax, dword [eax], 0x650074
jb 0x100066ae
popal
add byte [eax + eax + 0x6f], dh
add byte [edx], dh
and byte [eax], al
sub eax, dword [eax]
and byte [eax], al
outsd dx, dword [esi]
add byte [esi], ah
add byte [ebx], dh
add byte gs:[eax + eax + 0x20], dh
add byte [edi], ch
jne 0x100066ce
je 0x100066d0
and byte [eax], al
outsd dx, dword [esi]
add byte [esi], ah
and byte [eax], al
jb 0x100066da
popal
add byte [esi], ch
add byte [di], ah
add byte [eax], al
add byte [eax], al
add byte [eax], al
jae 0x100066ea
je 0x100066ec
add byte fs:[edx], bh
add byte [edx], bh
add byte [edi], bl
push ebx
add byte [eax + eax + 0x72], dh
add byte [ecx], ch
outsb dx, byte [esi]
add byte [edi], ah
pop edi
add byte [ebx], ah
outsd dx, dword [esi]
add byte [esi], ch
jae 0x1000670a
je 0x1000670c
pop edi
add byte [ecx], ch
je 0x10006712
add byte gs:[edx], dh
popal
add byte [eax + eax + 0x6f], dh
add byte [edx], dh
cmp al, 0
arpl word [eax], ax
insb byte es:[edi], dx
add byte [ecx], ah
jae 0x10006728
jae 0x1000672a
and byte [eax], al
jae 0x1000672e
je 0x10006730
add byte fs:[edx], bh
add byte [edx], bh
add byte [edi], bl
push ebx
add byte [eax + eax + 0x72], dh
add byte [ecx], ch
outsb dx, byte [esi]
add byte [edi], ah
pop edi
add byte [esi], dh
popal
add byte [eax + eax + 0x3c], ch
add byte [ebx], dh
je 0x10006752
jb 0x10006754
jne 0x10006756
arpl word [eax], ax
je 0x1000675a
and byte [eax], al
jae 0x1000675e
je 0x10006760
add byte fs:[edx], bh
add byte [edx], bh
add byte [edi], bl
push ebx
add byte [ecx], ch
insd dword es:[edi], dx
add byte [eax], dh
insb byte es:[edi], dx
add byte [ebp], ah
pop edi
add byte [eax + eax + 0x79], dh
add byte [eax], dh
add byte gs:[ebx], dh
cmp al, 0
ja 0x10006784
arpl word [eax], ax
push 0x72006100
add byte [edi], bl
je 0x10006790
add byte ds:[eax], ah
add byte [esi], bh
add byte [eax], ah
add byte [esi], bh
add byte [edx], bh
add byte [edx], bh
add byte [edi], ch
jo 0x100067a2
add byte gs:[edx], dh
popal
add byte [eax + eax + 0x6f], dh
add byte [edx], dh
and byte [eax], al
sub eax, dword [eax]
cmp eax, 0
add ah, dh
add byte [bx + si], dl
clc
add byte [bx + si], dl
clc
add byte [bx + si], dl
cld
add byte [bx + si], dl
add byte [eax], ch
adc byte [eax + ebp*2], al
add byte [eax], dl
add al, 0x68
add byte [eax], dl
or byte [eax], ch
adc byte [eax + ebp*2], cl
add byte [eax], dl
adc byte [eax], ch
adc byte [eax + ebp*2], dl
add byte [eax], dl
sbb byte [eax], ch
adc byte [eax + ebp*2], bl
add byte [eax], dl
and byte [eax], ch
adc byte [eax], al
add byte [eax], al
add byte [edx], dh
add byte [eax], al
ja 0x100067fa
add byte [eax], al
popal
add byte [eax], al
add byte [edx + 0x62], dh
add byte [eax], al
ja 0x10006868
add byte [eax], al
popal
bound eax, qword [eax]
add byte [edx + 0x2b], dh
add byte [eax], al
ja 0x1000683d
add byte [eax], al
popal
sub eax, dword [eax]
add byte [edx + 0x2b], dh
bound eax, qword [eax]
ja 0x10006849
bound eax, qword [eax]
popal
sub esp, dword [edx]
pushal
push 0x68641000
add byte [eax], dl
push 0x68681000
add byte [eax], dl
insb byte es:[edi], dx
push 0x68741000
add byte [eax], dl
je 0x100068a6
push 0x687c1000
add byte [eax], dl
jl 0x100068aa
add byte [eax], dl
test byte [eax], ch
adc byte [eax + ebp*2 + 0x68941000], cl
push 0x68941000
add byte [eax], dl
pushfd
push 0x68a41000
add byte [eax], dl
lodsb al, byte [esi]
push 0x1000
add byte [eax], al
jb 0x10006862
add byte [eax], al
ja 0x10006866
add byte [eax], al
popal
add byte [eax], al
add byte [edx], dh
bound eax, qword [eax]
add byte [eax], al
add byte [eax], al
ja 0x10006876
bound eax, qword [eax]
add byte [eax], al
add byte [eax], al
popal
add byte [edx], ah
add byte [eax], al
add byte [eax], al
jb 0x10006886
sub eax, dword [eax]
add byte [eax], al
add byte [eax], al
ja 0x1000688e
sub eax, dword [eax]
add byte [eax], al
add byte [eax], al
popal
add byte [ebx], ch
add byte [eax], al
add byte [eax], al
add byte [edx], dh
sub eax, dword [eax]
bound eax, qword [eax]
add byte [eax], al
ja 0x100068a6
sub eax, dword [eax]
bound eax, qword [eax]
add byte [eax], al
popal
add byte [ebx], ch
add byte [edx], ah
add byte [eax], al
add dword [eax], eax
add byte [eax], al
add al, byte [eax]
add byte [eax], al
adc al, byte [eax]
add byte [eax], al
or al, byte [eax]
add byte [eax], al
and dword [eax], eax
add byte [eax], al
and al, byte [eax]
add byte [eax], al
xor al, byte [eax]
add byte [eax], al
sub al, byte [eax]
add byte [eax], al
add eax, dword [eax]
add byte [eax], al
adc eax, dword [eax]
add byte [eax], al
or eax, dword [eax]
add byte [eax], al
and eax, dword [eax]
add byte [eax], al
xor eax, dword [eax]
add byte [eax], al
sub eax, dword [eax]
add byte [eax], al
add byte [eax], al
add byte [eax], al
add dword [eax], eax
add byte [eax], al
add al, byte [eax]
add byte [eax], al
adc al, byte [eax]
add byte [eax], al
or al, byte [eax]
add byte [eax], al
and dword [eax], eax
add byte [eax], al
and al, byte [eax]
add byte [eax], al
xor al, byte [eax]
add byte [eax], al
sub al, byte [eax]
add byte [eax], al
add eax, dword [eax]
add byte [eax], al
adc eax, dword [eax]
add byte [eax], al
or eax, dword [eax]
add byte [eax], al
and eax, dword [eax]
add byte [eax], al
xor eax, dword [eax]
add byte [eax], al
sub eax, dword [eax]
add byte [eax], al
add byte [eax], al
add byte [eax], al
jo 0x100068d2
add byte [eax], dl
mov al, byte [0x501002ae]
cdq
add dword [eax], edx
bound esi, qword [edx + 0x6f]
imul esp, dword [ebp + 0x6e], 0x20
jo 0x100069b3
outsd dx, dword [esi]
insd dword es:[edi], dx
imul esi, dword [ebx + 0x65], 0x75660000
je 0x100069c1
jb 0x100069b3
and byte [ecx + 0x6c], ah
jb 0x100069b8
popal
jns 0x10006977
jb 0x100069be
je 0x100069cd
imul esp, dword [ebp + 0x76], 0x6465
add byte [eax], al
jo 0x100069d8
outsd dx, dword [esi]
insd dword es:[edi], dx
imul esi, dword [ebx + 0x65], 0x726c6120
popal
jns 0x10006994
jae 0x100069d7
je 0x100069e1
imul esi, dword [ebx + 0x66], 0x646569
add byte [eax], al
outsb dx, byte [esi]
jae sym.MSVCP140D.dll_const_std::num_put_char__class_std::ostreambuf_iterator_char__struct_std::char_traits_char___::vftable
imul esp, dword [ebp + 0x64], 0x6e000000
outsd dx, dword [esi]
and byte [ebx + 0x74], dh
adc byte [eax - 0x7feffd00], dl
inc dword [edx]
cmp bh, 2
adc byte [eax - 2], dh
add dl, byte [eax]
push eax
add al, 3
adc byte [eax], dl
add eax, dword [ebx]
adc byte [eax], dh
std
sti
add dl, byte [eax]
pushal
cli
add dl, byte [eax]
sar al, 1
add dl, byte [eax]
adc byte [eax + 0x60100305], dl
movsd dword es:[edi], dword [esi]
nop
add eax, 0xa5601003
add byte [eax], dl
loop 0x100069e9
inc byte [ecx]
adc byte [eax + 0xd], ah
add edx, dword [eax]
nop
or eax, dword [ebx]
adc al, al
or dword [ebx], eax