Function at 0x1042b668
Capabilities:
Encode data using xor

Disassembly:
jmp 0x1042b672
pushal
call 0x1042b678
pop ebp
sub ebp, 0x10
sub ebp, 0x42b668
mov al, byte [esp + 0x28]
cmp al, 1
je 0x1042b69c
popal
xor eax, eax
inc eax
ret 0xc
jmp 0x1042b6a5
mov eax, 0x42b668
add eax, ebp
add eax, 0x63
mov ecx, 0x5e1
mov edx, 0xe502a259
xor byte [eax], dl
inc eax
dec ecx
jne 0x1042b6bc
jmp 0x1042b6cf
rcl byte [edx + edx*8 + 0x595965d0], cl
pop ecx
fcomp dword [eax + 0x595959a1]
pop edx
xchg esp, eax
loope 0x1042b740
pop ecx
pop ecx
pop ecx
jecxz 0x1042b757
pop ecx
pop ecx
pop ecx
scasb al, byte es:[edi]
mov ebx, 0xd8d2915a
push ebp
pop ecx
pop ecx
pop ecx
pop edx
pushfd
or esp, edx
cmp eax, 0x5dd0a57d
jge 0x1042b72f
loope 0x1042b725
push edi
pop ecx
xor edi, esi
pushal
insd dword es:[edi], dx
pop ecx
pop eax
jne 0x1042b787
xor dword [eax + 0x73], edx
adc eax, 0x595cb181
pop ecx
pop ecx
mov al, 0x77
pop ecx
pop ecx
pop ecx
or al, 0xd
add al, 0xd2
fcom qword [ecx + 0x59]
pop ecx
pop ecx
ror ah, cl
push ebp
pop ecx
pop ecx
pop ecx
rcl ah, cl
dec ecx
pop ecx
pop ecx
pop ecx
cwde
mov al, 0x5b
push 0x5d9bda5b
adc byte [esi - 0x24], dl
lodsd eax, dword [esi]
cmpsb byte [esi], byte es:[edi]
cmpsb byte [esi], byte es:[edi]
cmpsb byte [esi], byte es:[edi]
sal byte [ebp + 0x7d], cl
aam 0x3d
jge 0x1042b7a1
wait
push ebp
pop ecx
rcl ch, cl
jge 0x1042b7a8
pop ecx
pop ecx
pop ecx
xor ecx, esp
and eax, 0xf7315957
pushal
insd dword es:[edi], dx
pop ecx
pop eax
jne 0x1042b7d8
or byte [ecx + 0x5959595c], dh
mov al, 0x1c
pop ebx
pop ecx
pop ecx
or al, 0xd
add al, 0xa6
sub al, 0x55
cmpsb byte [esi], byte es:[edi]
sub al, 0x51
mov cl, 0x21
pop ecx
pop ecx
pop ecx
shl ah, cl
push ecx
pop ecx
pop ecx
pop ecx
fsubr dword [eax + 0x1332e52e]
fsubr dword [eax + 0x1332e52e]
push 0xffffffffffffff90
nop
push 0xffffffffffffff8b
fidiv dword [ecx - 0x22a9eea4]
pop ss
pop ecx
pop ecx
pop ecx
push esi
rcl dword [ecx]
pop ecx
pop ecx
pop ecx
aas
rol byte [ebp + 0x60], cl
fldenv [edx + 0x43dd56b1]
pop ecx
push esi
fld qword [ebx + 0x59]
pop ecx
pop ecx
fldenv [edx + 0x48dd56b0]
mov byte [0x48dd56b0], al
pop ecx
pop ecx
pop ecx
aas
fsub dword [edx - 0x22a9835a]
dec esp
pop ecx
pop ecx
pop ecx
sbb byte [eax - 0x5959596b], dh
jo 0x1042b7d8
pushal
pop eax
ficomp dword [eax + 0x5db1da5c]
mov al, 0xe4
cmpsb byte [esi], byte es:[edi]
cmpsb byte [esi], byte es:[edi]
cmpsb byte [esi], byte es:[edi]
jo 0x1042b7df
pushal
pop ebx
ficomp dword [eax + 0x5db3da5f]
mov bl, 0x5d
fidiv dword [ecx - 0x590d4fa4]
cmpsb byte [esi], byte es:[edi]
cmpsb byte [esi], byte es:[edi]
cmpsb byte [esi], byte es:[edi]
sal byte [ebp + 0x7d], cl
aam 0x3d
jge 0x1042b846
wait
push ebp
pop ecx
or al, 0xd2
mov ch, 0xf
push cs
or al, 0xd2
sub al, 0x55
shl byte [ecx + edx*2], cl
movsd dword es:[edi], dword [esi]
jmp 0x1042b7d4
fidiv dword [ebx + 0x58]
pop ecx
pop ecx
pop ebx
mov edx, dword [esi - 0x24]
pop esp
pop ecx
pop ecx
pop ecx
ror dword [edi + 0x1f], cl
dec ebx
mov ecx, dword [edx - 0x67]
pop ebx
mov edx, dword [esi - 0x24]
pop esp
pop ecx
pop ecx
pop ecx
ror dword [edi + 0x1f], cl
dec ebx
mov ecx, dword [edx - 0x67]
pop ebx
mov edx, dword [esi - 0x24]
pop esp
pop ecx
pop ecx
pop ecx
ror dword [edi + 0x1f], cl
dec ebx
mov ecx, dword [edx - 0x67]
pop ebx
mov edx, dword [esi - 0x24]
pop esp
pop ecx
pop ecx
pop ecx
ror dword [edi + 0x1f], cl
dec ebx
mov ecx, dword [edx - 0x67]
push esi
fstp qword [edi + 0x59]
pop ecx
pop ecx
rol byte [esi + 0x5ad38172], cl
rcr dword [esi + 0x1e], 1
loop 0x1042b8f3
pop ecx
pop ecx
pop ecx
mov al, 0x29
cmpsb byte [esi], byte es:[edi]
cmpsb byte [esi], byte es:[edi]
cmpsb byte [esi], byte es:[edi]
loope 0x1042b8fa
pop ecx
pop ecx
pop ecx
pop ebx
mov edx, dword [esi - 0x24]
pop esp
pop ecx
pop ecx
pop ecx
ror dword [edi + 0x1f], cl
dec ebx
mov ecx, dword [edx - 0x67]
pop ebx
mov edx, dword [esi - 0x24]
pop esp
pop ecx
pop ecx
pop ecx
ror dword [edi + 0x1f], cl
dec ebx
mov edx, dword [esi - 0x25]
xchg dword [esi - 0x658d595a], esp
loop 0x1042b923
pop ecx
pop ecx
pop ecx
push esi
fsubr qword [ebp + 0x59]
pop ecx
pop ecx
loopne 0x1042b92e
pop ecx
pop ecx
pop ecx
pop ebx
mov edx, dword [esi - 0x24]
pop esp
pop ecx
pop ecx
pop ecx
ror dword [edi + 0x1f], cl
dec ebx
mov ecx, dword [edx - 0x70]
pop ebx
mov edx, dword [esi - 0x24]
pop esp
pop ecx
pop ecx
pop ecx
ror dword [edi + 0x1f], cl
dec ebx
mov edx, dword [esi - 0x25]
xchg dword [esi - 0x2df0595a], esp
scasb al, byte es:[edi]
jb 0x1042b8ac
cmpsb byte [esi], byte es:[edi]
psrld mm5, qword [esi - 0x255538e]
stosb byte es:[edi], al
std
pop es
mov al, 0x51
cmpsb byte [esi], byte es:[edi]
cmpsb byte [esi], byte es:[edi]
cmpsb byte [esi], byte es:[edi]
adc dword [eax + 0x5fd351b9], ebx
pop ds
sal byte [ecx + 0x595958e0], cl
pop ecx
pop ebx
mov edx, dword [esi - 0x24]
pop esp
pop ecx
pop ecx
pop ecx
ror dword [edi + 0x1f], cl
dec ebx
mov ecx, dword [edx - 0x70]
dec edx
nop
pop ebx
mov edx, dword [esi - 0x24]
pop esp
pop ecx
pop ecx
pop ecx
ror dword [edi + 0x1f], cl
dec edi
pop ds
dec ebx
mov edx, dword [esi - 0x25]
xchg dword [esi - 0x5e27595a], esp
pop ecx
and al, 0x59
pop ecx
fadd dword [eax - 0x5959595a]
fsub dword [ecx + 0x59595c59]
fadd dword [eax - 0x5959595a]
fsub dword [ecx + 0x595959d9]
fmul dword [eax + 0x59595959]
fsub dword [ecx + 0x595959d9]
fstp dword [ecx + 0x59]
pop ecx
fmul dword [eax + 0x59595959]
psrld mm5, qword [esi - 0x255568e]
pop es
mov al, 0xc2
cmpsd dword [esi], dword es:[edi]
cmpsb byte [esi], byte es:[edi]
cmpsb byte [esi], byte es:[edi]
rcr dword [edi + 0x1f], cl
push 0xffffffffffffff90
cdq
mov cl, 0x58
push esi
fld qword [ebx + 0x59]
pop ecx
pop ecx
fmul dword [eax + 0x5959595b]
sal byte [ecx + 0x72aed20f], cl
test eax, 0xe207fdaa
pop eax
pop ecx
pop ecx
pop ecx
mov al, 0x2a
cmpsd dword [esi], dword es:[edi]
cmpsb byte [esi], byte es:[edi]
cmpsb byte [esi], byte es:[edi]
add al, 0x72
and al, 0x51
rcr byte [esi - 0x432df8fa], cl
add al, 0x9b
push ecx
pop ecx
push es
shr byte [ebp + 0x7d], cl
aam 0x3d
jge 0x1042ba10
cmp eax, 0x5db05d7d
mov al, 0x5d
pop ecx
pop ecx
pop ecx
loope 0x1042b9ce
mov ebp, 0xef31e1a1
sbb ebx, dword [ecx + 0x5a]
pushfd
fcomp dword [ecx + 0x59595a23]
loopne 0x1042b95e
pop ebx
pop ecx
pop ecx
jecxz 0x1042ba1f
pop edx
das
mov ecx, 0x10194969
push esi
fsubr qword [edi - 0x4f59595a]
pop ebp
pop ecx
pop ecx
pop ecx
shl byte [edi - 0x4e377ae1], cl
les esi, [ecx]
jae 0x1042b9b0
js 0x1042b9de
dec edi
dec edi
dec edi
dec esp
mov cl, 0xc2
adc dword [edi - 0x3c], ecx
or dword [ebx - 0x3c], esi
retf
dec edi
dec edi
dec edi
inc eax
retf
dec edi
dec edi
into
cmpsb byte [esi], byte es:[edi]
inc edi
dec edi
dec edi
dec edi
into
mov dh, 0x4f
dec edi
dec edi
dec edi
inc eax
retf