Function at 0xbf9ce673
Capabilities:
Encode data using xor

Disassembly:
add byte [ebx], dh
outsd dx, dword [esi]
add byte [esi], ah
je 0xbf9ce67c
sub eax, 0x69005700
add byte [esi], ch
add byte fs:[edi], ch
ja 0xbf9ce68a
jae 0xbf9ce68c
sub eax, 0x69005700
add byte [esi], ch
push eax
add byte [ebp], al
sub eax, 0x61004c00
add byte [esi], ch
add byte [di], dh
popal
add byte [edi], ah
add byte gs:[eax], dl
popal
add byte [ebx], ah
imul eax, dword [eax], 0x2d
add byte [eax], dl
popal
add byte [ebx], ah
imul eax, dword [eax], 0x61
add byte [edi], ah
add byte gs:[edx], ah
add byte [eax], ah
add byte [eax + eax + 0x61], ch
add byte [esi], ch
add byte [di], dh
popal
add byte [edi], ah
add byte gs:[0x6b002200], bh
add byte [edi], ch
sub eax, 0x52004b00
add byte [edx], ah
add byte [eax], ah
add byte [esi], dh
add byte gs:[edx], dh
jae 0xbf9ce6f0
imul eax, dword [eax], 0x6e006f
cmp eax, 0x36002200
add byte [esi], ch
add byte [ecx], dh
add byte [esi], ch
add byte [edi], dh
add byte [esi], dh
add byte [eax], dh
add byte [ecx], dh
add byte [esi], ch
add byte [ecx], dh
add byte [edi], dh
add byte [0x34003100], dh
add byte [edx], ah
add byte [eax], ah
add byte [eax], dh
jb 0xbf9ce71e
outsd dx, dword [esi]
add byte [ebx], ah
add byte gs:[ebx], dh
jae 0xbf9ce728
outsd dx, dword [esi]
add byte [edx], dh
inc ecx
add byte [edx], dh
arpl word [eax], ax
push 0x74006900
add byte [ebp], ah
arpl word [eax], ax
je 0xbf9ce73e
jne 0xbf9ce740
jb 0xbf9ce742
add byte gs:[0x78002200], bh
add byte [eax], bh
add byte [esi], dh
add byte [edx], ah
add byte [eax], ah
add byte [eax], dh
jne 0xbf9ce756
bound eax, qword [eax]
insb byte es:[edi], dx
add byte [ecx], ch
arpl word [eax], ax
dec ebx
add byte [ebp], ah
jns 0xbf9ce764
push esp
add byte [edi], ch
imul eax, dword [eax], 0x65
add byte [esi], ch
cmp eax, 0x33002200
add byte [ecx], dh
add byte [edx], ah
add byte [ebx], dh
add byte [eax], bh
add byte [0x61003600], dh
add byte [eax + eax + 0x33], ah
add byte [esi], dh
add byte [eax + eax], dh
add byte gs:[ebx], dh
add byte [0x20002200], dh
add byte [edx], ah
jne 0xbf9ce79a
imul eax, dword [eax], 0x64006c
push esp
add byte [ecx], bh
jo 0xbf9ce7a6
add byte gs:[0x72002200], bh
add byte [ebp], ah
insb byte es:[edi], dx
add byte [ebp], ah
popal
add byte [ebx], dh
add byte gs:[edx], ah
add byte [edi], ch
add byte [esi], bh
add byte [eax + eax], bh
popal
add byte [ebx], dh
jae 0xbf9ce7c8
add byte gs:[ebp], ch
bound eax, qword [eax]
insb byte es:[edi], dx
add byte [ecx], bh
dec ecx
add byte [eax + eax + 0x65], ah
add byte [esi], ch
je 0xbf9ce7dc
imul eax, dword [eax], 0x790074
and byte [eax], al
outsb dx, byte [esi]
add byte [ecx], ah
insd dword es:[edi], dx
add byte [ebp], ah
cmp eax, 0x4d002200
add byte [ecx], ch
arpl word [eax], ax
jb 0xbf9ce7f8
outsd dx, dword [esi]
add byte [ebx], dh
outsd dx, dword [esi]
add byte [esi], ah
je 0xbf9ce802
sub eax, 0x69005700
add byte [esi], ch
add byte fs:[edi], ch
ja 0xbf9ce810
jae 0xbf9ce812
sub eax, 0x69005700
add byte [esi], ch
push eax
add byte [ebp], al
sub eax, 0x61004c00
add byte [esi], ch
add byte [di], dh
popal
add byte [edi], ah
add byte gs:[eax], dl
popal
add byte [ebx], ah
imul eax, dword [eax], 0x2d
add byte [eax], dl
popal
add byte [ebx], ah
imul eax, dword [eax], 0x61
add byte [edi], ah
add byte gs:[edx], ah
add byte [eax], ah
add byte [eax + eax + 0x61], ch
add byte [esi], ch
add byte [di], dh
popal
add byte [edi], ah
add byte gs:[0x6c002200], bh
add byte [eax + eax + 0x2d], dh
add byte [eax + eax + 0x54], cl
add byte [edx], ah
add byte [eax], ah
add byte [esi], dh
add byte gs:[edx], dh
jae 0xbf9ce876
imul eax, dword [eax], 0x6e006f
cmp eax, 0x36002200
add byte [esi], ch
add byte [ecx], dh
add byte [esi], ch
add byte [edi], dh
add byte [esi], dh
add byte [eax], dh
add byte [ecx], dh
add byte [esi], ch
add byte [ecx], dh
add byte [edi], dh
add byte [0x34003100], dh
add byte [edx], ah
add byte [eax], ah
add byte [eax], dh
jb 0xbf9ce8a4
outsd dx, dword [esi]
add byte [ebx], ah
add byte gs:[ebx], dh
jae 0xbf9ce8ae
outsd dx, dword [esi]
add byte [edx], dh
inc ecx
add byte [edx], dh
arpl word [eax], ax
push 0x74006900
add byte [ebp], ah
arpl word [eax], ax
je 0xbf9ce8c4
jne 0xbf9ce8c6
jb 0xbf9ce8c8
add byte gs:[0x78002200], bh
add byte [eax], bh
add byte [esi], dh
add byte [edx], ah
add byte [eax], ah
add byte [eax], dh
jne 0xbf9ce8dc
bound eax, qword [eax]
insb byte es:[edi], dx
add byte [ecx], ch
arpl word [eax], ax
dec ebx
add byte [ebp], ah
jns 0xbf9ce8ea
push esp
add byte [edi], ch
imul eax, dword [eax], 0x65
add byte [esi], ch
cmp eax, 0x33002200
add byte [ecx], dh
add byte [edx], ah
add byte [ebx], dh
add byte [eax], bh
add byte [0x61003600], dh
add byte [eax + eax + 0x33], ah
add byte [esi], dh
add byte [eax + eax], dh
add byte gs:[ebx], dh
add byte [0x20002200], dh
add byte [edx], ah
jne 0xbf9ce920
imul eax, dword [eax], 0x64006c
push esp
add byte [ecx], bh
jo 0xbf9ce92c
add byte gs:[0x72002200], bh
add byte [ebp], ah
insb byte es:[edi], dx
add byte [ebp], ah
popal
add byte [ebx], dh
add byte gs:[edx], ah
add byte [edi], ch
add byte [esi], bh
add byte [eax + eax], bh
popal
add byte [ebx], dh
jae 0xbf9ce94e
add byte gs:[ebp], ch
bound eax, qword [eax]
insb byte es:[edi], dx
add byte [ecx], bh
dec ecx
add byte [eax + eax + 0x65], ah
add byte [esi], ch
je 0xbf9ce962
imul eax, dword [eax], 0x790074
and byte [eax], al
outsb dx, byte [esi]
add byte [ecx], ah
insd dword es:[edi], dx
add byte [ebp], ah
cmp eax, 0x4d002200
add byte [ecx], ch
arpl word [eax], ax
jb 0xbf9ce97e
outsd dx, dword [esi]
add byte [ebx], dh
outsd dx, dword [esi]
add byte [esi], ah
je 0xbf9ce988
sub eax, 0x69005700
add byte [esi], ch
add byte fs:[edi], ch
ja 0xbf9ce996
jae 0xbf9ce998
sub eax, 0x69005700
add byte [esi], ch
push eax
add byte [ebp], al
sub eax, 0x61004c00
add byte [esi], ch
add byte [di], dh
popal
add byte [edi], ah
add byte gs:[eax], dl
popal
add byte [ebx], ah
imul eax, dword [eax], 0x2d
add byte [eax], dl
popal
add byte [ebx], ah
imul eax, dword [eax], 0x61
add byte [edi], ah
add byte gs:[edx], ah
add byte [eax], ah
add byte [eax + eax + 0x61], ch
add byte [esi], ch
add byte [di], dh
popal
add byte [edi], ah
add byte gs:[0x6c002200], bh
add byte [esi], dh
sub eax, 0x56004c00
add byte [edx], ah
add byte [eax], ah
add byte [esi], dh
add byte gs:[edx], dh
jae 0xbf9ce9fc
imul eax, dword [eax], 0x6e006f
cmp eax, 0x36002200
add byte [esi], ch
add byte [ecx], dh
add byte [esi], ch
add byte [edi], dh
add byte [esi], dh
add byte [eax], dh
add byte [ecx], dh
add byte [esi], ch
add byte [ecx], dh
add byte [edi], dh
add byte [0x34003100], dh
add byte [edx], ah
add byte [eax], ah
add byte [eax], dh
jb 0xbf9cea2a
outsd dx, dword [esi]
add byte [ebx], ah
add byte gs:[ebx], dh
jae 0xbf9cea34
outsd dx, dword [esi]
add byte [edx], dh
inc ecx
add byte [edx], dh
arpl word [eax], ax
push 0x74006900
add byte [ebp], ah
arpl word [eax], ax
je 0xbf9cea4a
jne 0xbf9cea4c
jb 0xbf9cea4e
add byte gs:[0x78002200], bh
add byte [eax], bh
add byte [esi], dh
add byte [edx], ah
add byte [eax], ah
add byte [eax], dh
jne 0xbf9cea62
bound eax, qword [eax]
insb byte es:[edi], dx
add byte [ecx], ch
arpl word [eax], ax
dec ebx
add byte [ebp], ah
jns 0xbf9cea70
push esp
add byte [edi], ch
imul eax, dword [eax], 0x65
add byte [esi], ch
cmp eax, 0x33002200
add byte [ecx], dh
add byte [edx], ah
add byte [ebx], dh
add byte [eax], bh
add byte [0x61003600], dh
add byte [eax + eax + 0x33], ah
add byte [esi], dh
add byte [eax + eax], dh
add byte gs:[ebx], dh
add byte [0x20002200], dh
add byte [edx], ah
jne 0xbf9ceaa6
imul eax, dword [eax], 0x64006c
push esp
add byte [ecx], bh
jo 0xbf9ceab2
add byte gs:[0x72002200], bh
add byte [ebp], ah
insb byte es:[edi], dx
add byte [ebp], ah
popal
add byte [ebx], dh
add byte gs:[edx], ah
add byte [edi], ch
add byte [esi], bh
add byte [eax + eax], bh
popal
add byte [ebx], dh
jae 0xbf9cead4
add byte gs:[ebp], ch
bound eax, qword [eax]
insb byte es:[edi], dx
add byte [ecx], bh
dec ecx
add byte [eax + eax + 0x65], ah
add byte [esi], ch
je 0xbf9ceae8
imul eax, dword [eax], 0x790074
and byte [eax], al
outsb dx, byte [esi]
add byte [ecx], ah
insd dword es:[edi], dx
add byte [ebp], ah
cmp eax, 0x4d002200
add byte [ecx], ch
arpl word [eax], ax
jb 0xbf9ceb04
outsd dx, dword [esi]
add byte [ebx], dh
outsd dx, dword [esi]
add byte [esi], ah
je 0xbf9ceb0e
sub eax, 0x69005700
add byte [esi], ch
add byte fs:[edi], ch
ja 0xbf9ceb1c
jae 0xbf9ceb1e
sub eax, 0x69005700
add byte [esi], ch
push eax
add byte [ebp], al
sub eax, 0x61004c00
add byte [esi], ch
add byte [di], dh
popal
add byte [edi], ah
add byte gs:[eax], dl
popal
add byte [ebx], ah
imul eax, dword [eax], 0x2d
add byte [eax], dl
popal
add byte [ebx], ah
imul eax, dword [eax], 0x61
add byte [edi], ah
add byte gs:[edx], ah
add byte [eax], ah
add byte [eax + eax + 0x61], ch
add byte [esi], ch
add byte [di], dh
popal
add byte [edi], ah
add byte gs:[0x6e002200], bh
add byte [edx], ah
sub eax, 0x4f004e00
add byte [edx], ah
add byte [eax], ah
add byte [esi], dh
add byte gs:[edx], dh
jae 0xbf9ceb82