Function at 0x4119f4
Capabilities:
Encode data using xor

Disassembly:
inc ebx
add al, 0xa7
push ebp
ja 0x411762
in eax, 0xc2
jp 0x411750
test eax, 0x16ce320
adc dword [edx + 4], eax
inc edx
add al, 0xc9
inc edx
add al, 0xc9
push ebp
ja 0x411772
sar dword [ebx], 1
jl 0x41172e
jecxz 0x411714
add dword [ecx], edx
add dl, byte [edx]
pop edx
add byte [eax + ebx*2 + 0x6218808], ah
mov ah, 0x18
fild word [0xa28973ca]
or al, 5
add byte [eax], al
add bl, ah
clc
add dword [ecx], edx
inc ebx
add al, 0xdd
push ebp
ja 0x41179c
fst qword [ebp + 0x77]
dec eax
sar dword [ebx], 1
jl 0x411750
jmp 0x229faa6
aas
mov dword [edi + 0x30], eax
sal dword [eax + ebx - 0x1c36fcd6], cl
and al, byte [edx]
adc dword [edx + 4], eax
xchg esi, eax
push ebp
ja 0x4117be
sbb cl, byte [esi - 0xd1cff84]
add dword [ecx], edx
add dword [edi], ebp
inc edx
add al, 0xd4
push ebp
ja 0x4117ce
scasd eax, dword es:[edi]
pop es
add byte [eax], 0xe3
int3
inc ebx
add al, 0xcb
push ebp
ja 0x4117ea
out 0x2d, al
xor byte [ecx + 0x19], 0x94
jecxz 0x4117d7
add dl, byte [ecx]
add eax, 0x31371e12
push ds
inc edx
add al, 0xa2
push ebp
ja 0x411800
mov esp, 0xe3008437
mov esi, 0x14041101
add dword [ecx], edx
add al, 0x14
pop ds
dec esi
or eax, 0xc9044300
push ebp
ja 0x411814
loope 0x4117f6
test dword [edi], esp
cmp al, 0x2b
jecxz 0x411783
add dword [ecx], edx
add eax, 0x1f265a08
or byte [edx + 0x26], bl
pop ds
pop edi
inc ebx
add al, 0x96
push ebp
ja 0x41182a
loope 0x41180c
test dword [ebp*2 + 0x1d2e373], edx
adc dword [edx], eax
inc ebx
or eax, 0xab044200
add dword [ecx], edx
add al, byte [ebx + 0xd]
add byte [edx + 4], al
stosd dword es:[edi], eax
push ebp
ja 0x41183e
aad 0xb4
test dword [eax], eax
jecxz 0x41179d
add dword [ecx], edx
inc edx
add al, 0xa6
cmpsb byte [esi], byte es:[edi]
push ebp
ja 0x41184c
cmp dh, byte [esi + eax*4]
add bl, ah
inc edx
add dword [ecx], edx
movsb byte es:[edi], byte [esi]
pop ecx
mov word [edi + 0x4b], ds
xchg esp, eax
push 0xdf05ac1d
add bl, ah
pushfd
lodsb al, byte [esi]
add eax, 0x9ce300df
add dword [ecx], edx
inc edx
add al, 0x95
push ebp
ja 0x41186a
and ch, ch
xchg dword [eax], eax
jecxz 0x411872
add dword [ecx], edx
add cl, byte [ebp + ecx]
inc edx
add al, 0xc4
push ebp
ja 0x41187c
xor dl, byte [0x5ee30088]
add dword [ecx], edx
inc edx
add al, 0xa4
movsb byte es:[edi], byte [esi]
push ebp
ja 0x41188a
push es
insd dword es:[edi], dx
mov al, byte [eax]
jecxz 0x4118b5
add dword [ecx], edx
inc ebx
add al, 0xc6
push ebp
ja 0x411898
invalid
push es
insd dword es:[edi], dx
mov cl, al
mov dh, 0x67
jecxz 0x4117fa
add dword [ecx], edx
movsb byte es:[edi], byte [esi]
pop ecx
cmp bh, bl
dec ebx
wait
push 0x99046b1d
add bl, ah
inc byte [ecx]
adc dword [edi], eax
pop es
pop edi
and bl, byte [edx + 0x1e]
dec esp
sbb byte [edx + 0x43], bl
inc ebx
add al, 0x9f
push ebp
ja 0x4118c0
movsd dword es:[edi], dword [esi]
movsb byte es:[edi], byte [esi]
mov fs, word [ebp - 0x3f]
dec ecx
jecxz 0x41188c
ror dword [ecx - 0x1d], 0xc
add dl, byte [ecx]
add bl, byte [edx + 0x17]
add byte [edx + 4], al
fst qword [ebp + 0x77]
dec eax
ja 0x4118d4
sub dword [ebx - 0x1cff72], ebp
add dword [ecx], edx
inc edx
add al, 0xd9
push ebp
ja 0x4118e2
sbb al, 0xac
mov es, word [eax]
jecxz 0x4118a0
add dl, byte [ecx]
add edx, dword [esi]
inc edx
or eax, 0x55ad0443
ja 0x4118f4
sbb al, 0xac
mov cs, word [edx - 3]
dec ebx
jecxz 0x4118d8
add dl, byte [ecx]
add dword [edx + 0x43], ebx
adc dword [ecx], eax
pop edx
inc ebx
add al, 0xb6
push ebp
ja 0x411906
xor eax, 0x50e48ea8
mov fs, esp
push eax
pop ecx
jecxz 0x4118de
add dl, byte [ecx]
add ebx, dword [edi]
dec esi
or eax, 0x55e50442
ja 0x41191a
inc ecx
pop es
pop dword [eax]
jecxz 0x41188a
add dword [ecx], edx
add bl, byte [edx]
or eax, 0xcb044200
inc edx
add al, 0xcb
push ebp
ja 0x41192c
cld
cmp dword [eax + 0x1eae300], edx
adc dword [ecx], eax
push ss
movsb byte es:[edi], byte [esi]
pop ecx
cmp edi, ebx
dec ebx
pushfd
push 0x8f046b1d
add bl, ah
test byte [ecx], 0x11
movsb byte es:[edi], byte [esi]
pop ecx
sub al, 0x50
and dword [esi - 0x4b], ecx
sbb byte [eax], bl
add al, byte [ecx]
add bl, ah
mov bh, 1
adc dword [edx + 4], eax
retf
sbb byte [edx], al
add dword [eax], eax
jecxz 0x4118c3
add dword [ecx], edx
inc edx
add al, 0xcb
push ebp
ja 0x41195c
or al, 0x7e
xchg ecx, eax
add bl, ah
xchg byte [ecx], al
adc dword [ebx + 4], eax
lahf
add dword [ecx], edx
inc ebx
add al, 0x9f
push ebp
ja 0x41196a
or al, 0x7e
xchg ecx, eax
enter 0x67b6, 0xffffffffffffffe3
mov ebx, 0x4421101
out 0x55, al
inc edx
add al, 0xe6
push ebp
ja 0x41197a
std
invalid
push ebp
add dword [ecx], edx
add dword [esi - 0x3f], ecx
push es
js 0x4119a0
jecxz 0x411991
add dl, byte [ecx]
add dl, byte [ebp + 0x63c10077]
jle 0x4119ac
jecxz 0x41199f
add dl, byte [ecx]
add dword [0x4882a9c1], ebx
jecxz 0x4119ae
shr dword [ecx + 0x3ee34882], 2
adc dword [ecx], eax
ror dword [eax + 0x7b], 0x48
add dl, byte [ecx]
add edx, esi
ror dword [eax + 0x7b], 0x48
jecxz 0x4119b9
add dl, byte [ecx]
add dword [esi], esp
shr dword [ebx + 0x7d], 0x48
jecxz 0x4119d2
add dl, byte [ecx]
add dword [eax + 0x487bfcc1], esi
jecxz 0x4119df
add dl, byte [ecx]
sal dword [esp + edi*2], 0x48
xor al, 0x7c
dec eax
jecxz 0x4119e3
add dword [ecx], edx
sar dword [edi - 0x7c], 0x48
jecxz 0x41194f
add dword [ecx], edx
adc dword [ecx], eax
mov bl, 0xc1
sbb al, 0x79
dec eax
add dword [ebx + 0x48791cc1], esi
jecxz 0x411a1d
add dl, byte [ecx]
and ebx, 0xffffff84
dec eax
test byte [eax - 0x13], cl
in eax, dx
test byte [eax - 0x25], cl
test byte [eax - 0x20], cl
add byte [ebx + 0x4c430c59], ah
inc ebx
dec esp
dec edi
push 0x9705ac1d
add bl, ah
cld
add byte [ecx], dl
mov dword [0x4b7a8b59], eax
dec esi
push 0xe605ac1d
add bl, ah
cmpsb byte [esi], byte es:[edi]
jecxz 0x41197a
add byte [ecx], dl
add cl, byte [0x59a30020]
cmp bl, bh
dec ebx
or eax, 0x46b1d69
movsb byte es:[edi], byte [esi]
add al, 0xa4
add bl, ah
fadd qword [eax]
adc dword [ecx - 0x1fb77b07], eax
add byte [ecx], al
pop edi
mov dword [0x4bdf3b59], eax
cmp ebx, edi
dec ebx
scasb al, byte es:[edi]
push 0xb7046b1d
add bl, ah
cmc
add byte [ecx], dl
mov dword [0x47894158], eax
xor byte [ecx + 0x1310084], al
add ebx, esp
out dx, al
add byte [ecx], dl
or dword [0xe04885], 0x3435201
scasd eax, dword es:[edi]
sub esi, dword [edi + 0x48]
push esp
pop es
xor edx, dword [ebx]
mov dword [ecx + 0x11010de3], edx
inc edx
add eax, ebx
xor esi, dword [edi + 0x48]
aaa
cmp byte [eax + eax - 0x1d], al
clc
add byte [ecx], dl
sbb dword [edi], 0xe04885
mov dword [0x2090035a], eax
push es
enter 0xffffffffffffb01c, 0xffffffffffffffac
mov fs, word [edx + 0x30c]
jecxz 0x411a21
add byte [ecx], dl
mov dword [0x47894658], eax
xor byte [edx + 0x1310085], cl
add ebx, esp
inc byte [eax]
adc dword [ecx - 0x1fb77acb], eax
add byte [ecx], al
pop edi
mov dword [0x4bdf3c59], eax
ret 0x1d68