Function at 0x42f7a0
Capabilities:
Encode data using xor

Disassembly:
bnd retf
push edi
push ecx
les ebp, [esi - 0x1fd009c9]
mov edi, 0x86b3a7a3
daa
loopne 0x42f6ba
mov dword [0x2786b3a7], eax
enter 0xffffffffffffcda8, 0x76
int 0x76
xor byte [ebx - 2], al
mov dl, 0xc
imul edi, dword [ebx + 0x36], 0xffffffc2
idiv dword [ebp - 0x2346ed85]
jecxz 0x42f6f9
mov al, byte [0x8f790b0e]
sbb dword [ebp - 0x57], ecx
pop es
adc dh, byte [eax - 0x2a10c8ca]
pop es
jmp 0x42f7a2
xchg byte [si - 0x37b9], al
xchg dword [ecx - 0x6c], ebx
mov esi, 0x2867629
loopne 0x42f6f2
mov bh, 0xa9
ja 0x42f6f3
add dword [edx - 0x78], ebx
cdq
mov esp, 0x47a7d6b
loop 0x42f702
mov bh, 0x57
sub al, 0xc1
sti
leave
nop
int3
hlt
jns 0x42f792
mov edx, 0xc8af87f1
xchg byte [edi + ebx - 4], cl
mov byte [0x26870ab3], al
jle 0x42f72c
jg 0x42f754
mov bl, 0x79
add eax, 0x69959f94
mov bh, 0x75
fild qword [eax + ebp - 0xe7de985]
scasd eax, dword es:[edi]
lahf
add byte [ebx + 0x5e904155], bl
sbb cl, byte [ecx]
push ecx
mov bl, 0x7b
mov edx, 0xcadb8ff1
cmpsb byte [esi], byte es:[edi]
dec eax
xchg edi, eax
inc ecx
iretd
loopne 0x42f75a
mov edi, 0x8622fab
sbb dword [edx - 0x67], 0xffffffe0
jne 0x42f7b6
cdq
loopne 0x42f81a
adc byte [ecx], dh
or eax, dword [ecx - 0x61]
xor dword [ebx], ecx
inc ecx
lahf
or bh, 0xb2
dec ecx
cmp ecx, dword [eax]
xchg ecx, eax
push esi
and edx, dword [ebp - 0x5a77289f]
out 0x68, eax
jns 0x42f7da
mov byte [ebp + 0x1e7968e7], ah
fdivrp st(0)
mul byte [ecx]
jno 0x42f799
shr byte [esi], cl
cmc
imul edi, dword [ebp + 0x78], 0xb7a7e203
push esp
jae 0x42f842
fld dword [ebx - 0x2e]
fcomp qword [edi*4 + 0x80a027e]
mov bl, 0x70
mov bl, 0x70
in eax, dx
or byte [ecx], ch
stosd dword es:[edi], eax
enter 0xffffffffffffb6d5, 0x18
mov ebp, 0xcc01066e
sub ebx, dword [edx - 0xd85edb5]
imul ebp, dword [ecx], 0xffffffd3
and ecx, dword [ecx - 0x28]
test al, 0x39
jle 0x42f788
lodsd eax, dword [esi]
neg byte [edi + ebp*4]
aaa
or ch, byte [ebp - 0x38]
cmpsb byte [esi], byte es:[edi]
aam 0x4d
mov byte fs:[0x3df362bb], al
sbb bl, 0xa9
jl 0x42f88a
jle 0x42f85c
pop eax
mov word [eax], fs
mov edi, 0x81d2fc67
push cs
push cs
sbb dword [eax + 0x3a], ecx
mov dword [0x289eca6b], eax
jecxz 0x42f886
fistp dword [esi - 0x701f334f]
inc ebx
test eax, 0xaafa0637
shr dword [edi], 1
mov bh, 0x55
mov ebx, 0xe0ecff75
scasd eax, dword es:[edi]
inc ebx
adc dword [ebx - 0x2f808387], esi
sbb edx, dword [edi + 0x507b7f64]
jp 0x42f8c3
jns 0x42f8c4
jns 0x42f804
mov eax, 0x2f788109
je 0x42f7e4
or dword [ecx - 0x6d8bd088], eax
push esp
or bh, byte [edi + 0x37c4aa7b]
mov eax, dword [0x1a9b980]
into
mov dh, 6
test eax, 0x6b6ce01
das
invalid
les edx, [esi]
and edi, dword [edx - 0x1d2b461]
inc ebp
dec ecx
lahf
dec ebx
and bh, byte [edx - 0x7c]
pop ecx
into
xchg byte [ecx + edx*4 - 0x7d], dl
and edi, edi
or byte [edx], 0xa7
inc dword [edx - 0x44581df4]
test eax, 0x35fb777c
loopne 0x42f849
cmpsd dword [esi], dword es:[edi]
mov ebx, 0xfb777ca9
xor eax, 0x5c18b6e0
sub ecx, esi
sbb byte [ebx + ebp - 0x32], bl
or byte [ebx + edi], 0x98
dec ebx
invalid
insb byte es:[edi], dx
leave
int1
xor dword [ecx], edi
push edi
inc ecx
cmp al, 0xa0
mov bl, 0x72
xchg dword [esi], ebp
push es
enter 0x7ee3, 0x71
std
imul ebx, dword [edx - 0x6f], 0xffffffec
pop edx
xchg ecx, eax
in al, dx
pop es
loop 0x42f86f
or dword [ebx + 0x6d], eax
mov dl, 0x70
jecxz 0x42f8d1
mov bh, 0xcf
xor dword [ecx + 0x4c], edi
xchg edi, eax
jae 0x42f965
jne 0x42f8bd
pop esp
pop eax
cmp esp, dword [eax - 0xe]
push cs
out 0x38, al
adc byte [edx - 0x2bc3a7e6], 0xfe
or dword [ebx + 0x3f], ecx
jns 0x42f918
jb 0x42f94f
and al, byte [eax]
mov dword [ecx - 0x57ad73d0], esp
add dword [esp + ecx + 0x22bfb7ac], 0x353bf27a
mov dl, byte [ecx + 0x59]
mov esp, 0xd8a71a6
imul esi, edx, 0xffffffc2
xchg esi, eax
or eax, 0x67c2f26b
xchg esi, eax
jns 0x42f94a
mov byte [ecx], 0xaa
pop es
jmp 0x42f9a2
leave
mov dword [eax - 0x62], edx
jns 0x42f9be
outsb dx, byte [esi]
scasd eax, dword es:[edi]
pop eax
cdq
call 0x23de30f
int 0x43
jnp 0x42f97a
into
dec ecx
and byte [ebp - 0x38], bl
test dl, bl
pop esp
psubsw mm6, qword [edi - 0x39]
clc
sbb dword [ecx - 0x25], eax
test eax, 0x433b72fd
jmp 0x1a3bc0e1
xbegin 0xaa1e3a86
std
jb 0x42f9ab
inc ebx
rcr dword [ecx - 0x24], cl
mov ecx, 0x790be61f
mov eax, dword [esi - 0xdbb5ed0]
dec esi
inc esp
xchg byte [eax], dh
mov eax, dword [0x444ef244]
pop eax
lcall 0x87ed, 0x8aebb10c
sub eax, 0xee2cefe
stosb byte es:[edi], al
cmp byte [eax + 0x3476dcb9], al
jnp 0x42f998
xlatb
in al, 0xe0
int3
cli
dec dword [0xa258404e]
or eax, 0xa258404e
mov byte [0xf66ebf0c], al
or dword [edx + 0x7b], edi
int1
or al, 0xbf
outsb dx, byte [esi]
test byte [ecx], 0x7a
jnp 0x42f99c
mov bl, 0xa9
stosb byte es:[edi], al
int1
leave
enter 0x59d4, 0xffffffffffffffdc
inc eax
add edx, dword [edi - 0x7e]
or al, 0x6b
jb 0x42f9fb
and eax, 0x43c40d5f
sal dword [edi], cl
or eax, 0x37d343c4
sbb edi, dword [edi + 0x480ff666]
arpl ax, si
sbb esi, dword [ecx - 0x7b]
cmpsd dword [esi], dword es:[edi]
out 0xc0, eax
adc al, 0xd8
xchg ebp, eax
xor ch, byte [eax + 0x6c878638]
ja 0x42f967
push edi
mov byte [0x58a34e79], al
mov eax, dword [0xf676bff8]
or dword [ebx + 0x224bf2eb], ecx
stc
xor al, 0x2f
invalid
dec eax
int1
repe cmpsd dword [esi], dword es:[edi]
xor edx, ebx
pop eax
cdq
adc al, 0xcb
sti
mov eax, dword [0x17e057dc]
push ss
loope 0x42f99e
nop
nop
push esi
push edi
push ebx
push ebp
mov ecx, dword [esp + 0x28]
cmp ecx, 0
jle 0x42fab7
mov ebp, dword [esp + 0x20]
mov edi, dword [esp + 0x1c]
mov edx, dword [esp + 0x24]
movd mm6, dword [esp + 0x14]
movd mm7, dword [esp + 0x18]
movss xmm1, dword [ebp]
movss xmm0, dword [edx]
unpcklps xmm0, xmm1
cvtps2pi mm0, xmm0
sub ecx, 1
je 0x42fa8f
movq mm1, mm0
pmuludq mm0, mm7
psrlq mm1, 0x1c
add edx, 4
add ebp, 4
paddd mm1, mm6
movss xmm0, dword [edx]
movss xmm1, dword [ebp]
movd esi, mm0
unpcklps xmm0, xmm1
movd ebx, mm1
cvtps2pi mm0, xmm0
add edi, 0x10
mov eax, dword [ebx + esi]
mov dword [edi - 0x10], eax
mov eax, dword [ebx + esi + 4]
mov dword [edi - 0xc], eax
mov eax, dword [ebx + esi + 8]
mov dword [edi - 8], eax
sub ecx, 1
jne 0x42fa4b
movq mm1, mm0
pmuludq mm0, mm7
psrlq mm1, 0x1c
paddd mm1, mm6
movd ebx, mm1
movd esi, mm0
mov eax, dword [ebx + esi]
mov dword [edi], eax
mov eax, dword [ebx + esi + 4]
mov dword [edi + 4], eax
mov eax, dword [ebx + esi + 8]
mov dword [edi + 8], eax
emms
pop ebp
pop ebx
pop edi
pop esi
ret