Function at 0x1c236e8
Capabilities:
Encode data using xor

Disassembly:
xor cl, bl
xor dword [esp + edx - 0x7f6efe8d], edx
sal dl, 0x63
adc cl, 0xb9
pop eax
imul eax
and ax, 0xaab0
ror cl, 1
dec dl
imul eax, eax
adc cl, 0xae
neg cl
mul eax
neg dl
sar al, 0xe6
xor bl, cl
not edx
ror eax, 0x6c
lea eax, [eax*4 + 0x88e9311]
adc ecx, esp
not edx
shl eax, 0xf1
movzx dx, byte [ecx]
lea ecx, [eax + eax*8 - 0xd61af5]
shl cx, cl
sbb edi, 2
mov word [edi], dx
jmp fcn.01cc30f9
inc dx
neg ecx
cwd
ror ax, 0x46
rol ecx, 3
imul edx, eax
xor ebx, ecx
add eax, eax
add ebp, ecx
or edx, 0x730c6e8d
mov dword [esp + edx - 0x7f6efe8d], 0xa7ae9b89
lea esi, [esi + edx - 0x7f6efe8e]
pop eax
sar dword [esp + edx - 0x7f6efe8d], 0x79
ror byte [esp + edx - 0x7f6efe8a], 0x44
movzx ecx, byte [edx + esi - 0x7f6efe8d]
jbe 0x19ae5a5
add dword [ecx - 0x49f0bb80], edx
invalid
sbb byte [ebx + 0x50], ah
in eax, dx
adc al, 0x52
jns 0x1c23754
hlt
jge 0x1c2379a
or al, 0x6a
sbb byte [ebx], bh
loope 0x1c2372a
jb 0x1c23724
jecxz 0x1c2374c
xchg ebp, eax
das
push es
adc esi, dword [edi]
xchg ebp, eax
sbb dword [edi + 0x1785bcc5], eax
jb 0x1c237cc
cmc
sar dword fs:[edi], cl
pop esp
test dword [esi + ecx*2 - 0x64ccd797], esi
lodsd eax, dword [esi]
add ecx, edi
wait
mov bh, 5
sbb ch, byte [ecx - 0x1e89dd68]
or byte [ecx - 0x31], dl
fstp xword [eax]
pop es
dec edi
inc ecx
out 0x1b, eax
push esp
mov ebx, 0xc36ee1ba
push esp
sub esi, edx
pop ds
inc ebp
stosd dword es:[edi], eax
jg 0x1c23799
call [edi - 0x3655076e]
lahf
xchg edx, eax
clc
stosb byte es:[edi], al
leave
aaa
xchg dword [eax + 6], ebx
mov byte [eax], dh
mov bl, bl
push es
mov fs, word [edx + edi*4 + 0x7e]
cdq
pushal
dec ebx
mov ah, 0x4f
sub al, 0x81
imul esi, edi, 0xffffffd8
aaa
fdiv dword [edi]
jbe 0x1c23813
dec edi
daa
push ds
mov eax, dword [edx]
mov bh, 0xaf
iretd
je 0x1c2383b
js 0x1c23802
invalid
xor dword [edi + 0x58], 0xbd9c7011
mov al, byte [0x7be696ea]
and edi, eax
test dword [ecx + 8], ebp
out dx, eax
cli
leave
out 0x84, eax
test dword [edx - 0x4a4d2560], esp
xchg ecx, eax
imul ecx, dword [eax], 0xe7c9faef
test byte [ebp - 0x4d255f5e], al
mov ch, 0x91
mov al, byte [0x91b5b2da]
fst qword [ecx + 0x33]
or byte gs:[0x5ddafd58], 0xd0
mov bl, 0xbd
wait
loopne 0x1c237f2
outsb dx, byte [esi]
sar eax, 0x72
salc
xchg esp, eax
dec eax
jnp 0x1c2380b
mov ah, 0x4f
loope 0x1c237b5
adc bl, byte [edx - 0xaf093ca]
leave
imul edi, dword [eax - 0x4b16bdad], 0xffffffa9
sbb eax, 0x3a3d2d53
cwde
push ds
inc ecx
adc byte [0x92f9ecae], ch
jnp 0x1c238c6
mov edx, 0x29871c45
xchg dword [ecx - 0x20], esi
push ss
mov eax, 0xbc5eefac
inc eax
movsb byte es:[edi], byte [esi]
salc
and dword [esi + 0x37], edx
inc esi
add byte [esi + 0x49], ch
invalid
and al, 0x71
sub al, 0x1c
dec ebp
int 0xb3
int1
aad 0x58
btr dword [esi - 0x6b747c22], ebx
sbb dh, ah
dec ebp
or dh, bh
jo 0x1c23903
loopne 0x1c238f7
sub eax, 0xe863efbb
and eax, ecx
xchg esp, eax
popal
xchg esi, eax
mov esi, 0x5d49d91a
mov ebx, 0x23e863ef
rcl dword [ecx - 0x26e5416a], 0x49
pop ebp
mov esp, 0x84d96037
pop ebp
div esi
je 0x1c238b0
mov eax, 0x18a51f8e
insb byte es:[edi], dx
js 0x1c23934
dec edi
mov al, byte [0xf477ec35]
sar dword [ebx], 0xbf
stosd dword es:[edi], eax
in al, 0x10
inc ecx
mov esi, 0xd56f9519
jl 0x1c23922
sub al, 0xf4
retf
inc esp
mov gs, word [0xbe98d9bf]
push edi
mov al, 0xbc
rcr ah, 0x6c
je 0x1c238c9
xchg esi, eax
or dword [ebx + esi], ebp
mov ebp, 0xf9916d90
mov ebp, 0x4c3dd414
dec dword [ebx]
in eax, 0x16
cmp dword [edx - 0x5ec1a75e], eax
pop esp
inc ebx
xchg esp, eax
sal esi, 0x58
test byte [ebx], bl
xchg edx, eax
ljmp 0x8ae8
jb 0x1c23957
retf
mov edx, 0xf0993e83
fcmovu st(0), st(4)
sbb eax, esi
std
sub eax, 0xd3fe7438
push ss
call 0x444b761f
pop ebp
rcr byte [edx - 0x7c], cl
adc ah, byte [ecx - 0x6d2d6400]
inc ecx
invalid