Function at 0x42f560
Capabilities:
Encode data using xor

Disassembly:
add ah, byte [eax + 7]
pop es
add byte [eax + 0x1028080], 0xc1
pushal
cmp byte [eax + ebp], bh
or byte [eax + 0x78c00041], al
and al, 0x18
pop ss
add al, byte [ebx]
add byte [eax + 0x1b1418a8], 7
add eax, 0x41a085
push eax
xor byte [edx + eax], ah
add eax, 0xb000c184
mov al, byte [0x3070c2e]
test dword [ecx + 0x18c0f020], eax
sbb bl, byte [eax]
add al, 0x83
inc edx
inc eax
dec ecx
pushal
and byte [edx], bl
sbb dword [edi + 0x49214243], eax
je 0x42f55e
adc al, 0x16
push es
add eax, dword [edx]
mov al, byte [0x183880a0]
or dword [ebx], ecx
add dword [eax + eax*4 + 0x1a1cc878], esp
pop ss
add al, 0x84
add byte [eax + 0x2c0c75c0], 0x18
add al, 4
inc ebx
add byte [eax + 0x16683678], ah
add eax, 0x30e1a002
js 0x42f5f9
pop eax
or dword [eax], ecx
add al, 0x41
and dword [eax + 0x50], ecx
dec edx
and dword [edi + 6], esp
xchg cl, al
and cl, ch
adc byte [eax], bh
das
or eax, dword cs:[edx + 0x30900102]
xor byte [eax - 0x1ebe7af7], ch
pushal
mov eax, 0xe16729c
push ss
push cs
add eax, 0x9880a0c3
pop edx
lea ebp, [edx]
pop es
into
and eax, 0x7048a0e0
push ss
or ebp, dword [ebp - 0x5f7f991d]
xor byte [esi + ebx], bh
or ecx, dword [ecx]
push es
and cl, 0xc0
nop
xor al, 0x22
sbb al, byte [ebx]
and dword [esi], 1
add byte [ebp + 0x80ea072], bl
add dword [edx - 0x5f], 0x1d483830
mov word [edx + 0x3d778282], ss
fst st(2)
bound edx, qword [edx]
add eax, dword [edi + esi*2]
pushal
shl al, 1
and byte [0xed5c08c3], cl
push esi
sub byte [ebp - 0x19], al
pushal
pop es
loope 0x42f6af
outsd dx, dword [esi]
cmp ch, byte [esi - 0x80]
dec edx
cmp ebx, dword [edx]
mov eax, dword [ebx - 0x6f3f6ebf]
outsd dx, dword [esi]
dec esp
sbb eax, 0xc1820407
add eax, ecx
mov al, 0x2e
adc ecx, dword [esi]
push esi
and cl, 0x20
loopne 0x42f5fc
sub al, 0xcb
mov dword [0xcf2e7840], eax
add eax, dword [eax - 0x7e]
push ds
add eax, 0x801aa9c0
mov ch, 0x81
or eax, 0x40e71ed4
pushal
js 0x42f703
add eax, 0x98aa4002
cld
mov ch, 0xa9
jl 0x42f6f1
xchg ebp, eax
and byte [edx + 0x20], ch
xor al, 1
add ah, byte [eax]
xchg edx, eax
int3
push cs
add esp, dword [ecx]
jo 0x42f748
or al, 5
popal
pushal
sbb byte [esi + eax], dl
add byte [eax + 0x62871e6e], dl
shl byte [edx + 0x48a30d26], 1
test al, 0x34
cpuid
test al, 0xae
mov byte ds:[edx - 0x67], ah
add byte [esi], ah
mov al, bl
call 0x225427b8
sar byte [esp + ecx*2 + 0x3449230b], 1
das
invalid
sbb byte [eax], 0xa2
aaa
pop es
xor byte [eax], 0x98
pop ss
mov byte [ebx], al
dec eax
pop esp
sbb eax, 0x6468e10a
xor eax, dword [esi + 0x21da4862]
mov dword [ebx + 0x70], esp
and byte [edx], 0xc
and dword [eax - 0x1e7ad296], esi
push 0x620616b4
nop
lcall 0x4cf0, 0x18839134
or al, 0x23
and dword [eax + 0x27], 0x6848448c
and byte [ebx + 0x244c58e1], cl
test byte [ecx + 0x10], ah
xchg esi, eax
or al, 4
loope 0x42f760
dec esi
adc dword [ebp + 0xa6e18ef], eax
add ah, byte [edx]
add esp, esi
and al, byte [ebx]
and al, dh
test byte [esi], cl
add eax, dword [edx + 0x80e4268]
popal
sub byte [ebx], bh
jb 0x42f7b1
bound eax, qword [eax]
dec edx
adc eax, 0x6a58c109
daa
rcr dword [eax + 0x6a], 0x27
push es
add byte [eax + 0x38919c2], 0x28
sbb ecx, dword fs:[edx + 0x2b741821]
add eax, 0x136e2821
add dword [ecx + 0x60a3cf8], 0x162ea820
and dword [ecx - 0x7ceb8000], 0x21
sal byte [esi], 0x16
xchg dword [eax - 0x18], esp
cmp al, 0x25
test byte [eax - 0x78], al
mov byte [esi], cl
test dword [edx - 0x68], esp
dec esp
pop ss
or esp, dword [ecx]
jo 0x42f850
xor eax, 0xbcb8c186
sbb dword [esi], eax
and byte [eax + 0x218a1d64], 0x78
outsb dx, byte [esi]
sub al, 0x85
bound ecx, qword [eax]
mov esp, 0x18620418
xor al, 0xe
add esp, dword [eax + 0x27141aa0]
popal
dec ebx
salc
and byte [ebx], al
rcr byte [eax + 0x204115e], 0x58
xor al, 0x13
or byte [ecx], ah
sub byte [edi - 0x7b], bl
shr dword [eax - 0x5cf8e622], 0x90
je 0x42f84f
push cs
shl eax, 0x8e
xchg edx, esp
cmp dl, dl
sbb eax, dword [esi]
add esi, dword [eax]
pushal
push ds
mov word [eax - 0x7cd6ab08], fs
loope 0x42f86c
movsb byte es:[edi], byte [esi]
push cs
and dword [edx - 0x78f5cbc0], 0xffffffe1
pushal
outsb dx, byte [esi]
xor al, byte [edi + 0x189a5041]
xchg dword [edx], esp
loopne 0x42f8c5
xchg dword [ecx + 0x50], eax
lcall 0x1d6c, 0xe0228718
or eax, dword [ecx]
shr byte [eax - 0x3e7d76c3], 1
sbb al, 0x25
mov eax, dword [eax + eax*8]
cmpsb byte [esi], byte es:[edi]
sbb eax, 0xa8d0010b
cmp eax, 0x1cc18289
and eax, 0xa6c0048b
xor dword [ecx + 0x42bc8862], edx
or bh, byte [ebx - 0x71d57f28]
mov esp, 0xd8bb0a42
sub byte [edx], 0x8e
cmp byte [eax], 0x8f
test eax, 0x50c04208
sbb byte [ecx + 0x29645801], cl
test byte [ecx + 0x40c7858], al
and cl, al
push edx
pop ds
or al, cl
or byte [esi - 0x5e9df6cb], 0x1a
mov ah, byte es:[ebx - 0x6eca4758]
jecxz 0x42f916
cli
dec ebp
or eax, 0x3228d123
lea esp, [eax + ebp*2 + 0x621131ac]
mov al, 0xac
inc esp
mov ah, dl
int1
add byte [ebx], ah
or al, byte [ebx - 0x71d98320]
inc ecx
mov al, 0x6c
sub eax, dword [0x2ea350c1]
mov esp, dword [ecx - 0x78d1a540]
rcr byte [edx + 0x2e], 0x87
and dword [eax - 0x5bf5db36], ebp
push eax
mov al, 0x29
adc dword [edx + 0x30], eax
insb byte es:[edi], dx
cmp byte [edx], cl
invalid
or ecx, eax
sub al, ch
mov eax, 0xe8e215cb
arpl word [edx - 0x3ad0972f], cx
or byte [eax + 0x537ce217], ch
or esp, dword [ecx + 0x48852512]
imul ecx, dword [esi], 0x893e39a2
add al, 0x1a
inc esp
test al, 0x5e
or al, 0x42
xor byte [eax], ch
test dword [ecx + 0x18], esi
pop ss
adc dword [eax - 0x35ef056], 0x5f
or cl, dl
sub byte [0x1482e003], ch
ret 0x503c