Function at 0x85ba70
Capabilities:
Encode data using xor

Disassembly:
test dword [0xbadc88], 0xfffe0000
jne 0x85f790
test dword [0xbadc88], 0xfffff800
jne 0x85fa50
test dword [0xbadc88], 0xfffffe00
jne 0x85fcd0
test dword [0xbadc88], 0xffffffff
jne 0x85fde0
call fcn.0085a300
jmp fcn.0085ba70
vmovdqa xmm4, xmmword [0xb5d250]
vmovdqa xmm3, xmmword [0xb5d280]
vmovdqa xmm2, xmmword [0xb5d260]
vmovaps xmm6, xmm0
vpand xmm4, xmm4, xmm0
vmovaps xmm5, xmmword [0xb5d2f0]
vmovaps xmm7, xmmword [0xb5d2f0]
vpaddd xmm2, xmm2, xmm4
vmovdqa xmm1, xmm0
vpand xmm2, xmm2, xmmword [0xb5d270]
vpxor xmm5, xmm5, xmm2
vpsrad xmm2, xmm2, 0x17
vpor xmm4, xmm4, xmm5
vpsrad xmm0, xmm0, 0x17
vaddps xmm7, xmm7, xmm4
vsubps xmm4, xmm4, xmmword [0xb5d2f0]
vpsubd xmm0, xmm0, xmmword [0xb5d2c0]
vmovaps xmm5, xmm4
vdivps xmm4, xmm4, xmm7
vpaddd xmm0, xmm0, xmm2
vpcmpgtd xmm3, xmm3, xmm1
vpcmpgtd xmm1, xmm1, xmmword [0xb5d250]
vmovaps xmm7, xmm4
vmulps xmm4, xmm4, xmm4
vpand xmm3, xmm3, xmm1
vmovaps xmm1, xmm4
vmulps xmm4, xmm4, xmm4
vpmovmskb edx, xmm3
vmovaps xmm3, xmmword [0xb5d2b0]
vmovaps xmm2, xmmword [0xb5d2a0]
vmulps xmm3, xmm3, xmm4
vmulps xmm2, xmm2, xmm4
vaddps xmm3, xmm3, xmmword [0xb5d290]
vcvtdq2ps xmm0, xmm0
vmulps xmm3, xmm3, xmm1
cmp edx, 0xffff
vmulps xmm0, xmm0, xmmword [0xb5d2d0]
vaddps xmm3, xmm3, xmm2
jne 0x85f873
vsubps xmm3, xmm3, xmm5
vmulps xmm3, xmm3, xmm7
vaddps xmm3, xmm3, xmm5
vaddps xmm0, xmm0, xmm3
ret
mov eax, esp
sub esp, 0x20
and esp, 0xfffffff0
vpxor xmm7, xmm7, xmm7
vmovdqa xmm0, xmm6
vpcmpeqd xmm0, xmm0, xmmword [0xb5d280]
vpand xmm0, xmm0, xmmword [0xb5d280]
vpor xmm7, xmm7, xmm0
vmovdqa xmm0, xmm6
vpand xmm0, xmm0, xmmword [0xb5d310]
vmovdqa xmm1, xmm0
vpcmpeqd xmm0, xmm0, xmmword [0xb5d320]
vpand xmm0, xmm0, xmmword [0xb5d300]
vpor xmm7, xmm7, xmm0
vpcmpgtd xmm1, xmm1, xmmword [0xb5d280]
vpand xmm1, xmm1, xmm6
vpor xmm7, xmm7, xmm1
vmovdqa xmm0, xmm6
vpaddd xmm0, xmm0, xmmword [0xb5d330]
vpcmpgtd xmm0, xmm0, xmmword [0xb5d340]
vpor xmm7, xmm7, xmm0
vmovdqa xmmword [esp], xmm7
vmovdqa xmm0, xmm6
vpaddd xmm0, xmm0, xmmword [0xb5d280]
vpcmpgtd xmm0, xmm0, xmmword [0xb5d280]
vmovdqa xmm1, xmm0
vpand xmm1, xmm1, xmmword [0xb5d2e0]
vmovdqa xmmword [esp + 0x10], xmm1
vmovdqa xmm1, xmm0
vmovdqa xmm2, xmm6
vorps xmm2, xmm2, xmmword [0xb5d2f0]
vsubps xmm2, xmm2, xmmword [0xb5d2f0]
vandps xmm0, xmm0, xmm2
vpcmpeqd xmm7, xmm7, xmmword [0xb5d320]
vpand xmm6, xmm6, xmm7
vpandn xmm7, xmm7, xmmword [0xb5d2f0]
vpor xmm7, xmm7, xmm6
vpandn xmm1, xmm1, xmm7
vpor xmm0, xmm0, xmm1
vmovdqa xmm4, xmmword [0xb5d250]
vmovdqa xmm3, xmmword [0xb5d280]
vmovdqa xmm2, xmmword [0xb5d260]
vmovaps xmm6, xmm0
vpand xmm4, xmm4, xmm0
vmovaps xmm5, xmmword [0xb5d2f0]
vmovaps xmm7, xmmword [0xb5d2f0]
vpaddd xmm2, xmm2, xmm4
vmovdqa xmm1, xmm0
vpand xmm2, xmm2, xmmword [0xb5d270]
vpxor xmm5, xmm5, xmm2
vpsrad xmm2, xmm2, 0x17
vpor xmm4, xmm4, xmm5
vpsrad xmm0, xmm0, 0x17
vaddps xmm7, xmm7, xmm4
vsubps xmm4, xmm4, xmmword [0xb5d2f0]
vpsubd xmm0, xmm0, xmmword [0xb5d2c0]
vmovaps xmm5, xmm4
vdivps xmm4, xmm4, xmm7
vpaddd xmm0, xmm0, xmm2
vpcmpgtd xmm3, xmm3, xmm1
vpcmpgtd xmm1, xmm1, xmmword [0xb5d250]
vmovaps xmm7, xmm4
vmulps xmm4, xmm4, xmm4
vpand xmm3, xmm3, xmm1
vmovaps xmm1, xmm4
vmulps xmm4, xmm4, xmm4
vpmovmskb edx, xmm3
vmovaps xmm3, xmmword [0xb5d2b0]
vmovaps xmm2, xmmword [0xb5d2a0]
vmulps xmm3, xmm3, xmm4
vmulps xmm2, xmm2, xmm4
vaddps xmm3, xmm3, xmmword [0xb5d290]
vcvtdq2ps xmm0, xmm0
vmulps xmm3, xmm3, xmm1
cmp edx, 0xffff
vmulps xmm0, xmm0, xmmword [0xb5d2d0]
vaddps xmm3, xmm3, xmm2
jne 0x85f873
vsubps xmm3, xmm3, xmm5
vmulps xmm3, xmm3, xmm7
vaddps xmm3, xmm3, xmm5
vaddps xmm0, xmm0, xmm3
vorps xmm0, xmm0, xmmword [esp]
vaddps xmm0, xmm0, xmmword [esp + 0x10]
mov esp, eax
jmp 0x85f872
movdqa xmm4, xmmword [0xb5d370]
movdqa xmm3, xmmword [0xb5d3a0]
movdqa xmm2, xmmword [0xb5d380]
movaps xmm6, xmm0
pand xmm4, xmm0
movaps xmm5, xmmword [0xb5d410]
movaps xmm7, xmmword [0xb5d410]
paddd xmm2, xmm4
movdqa xmm1, xmm0
pand xmm2, xmmword [0xb5d390]
pxor xmm5, xmm2
psrad xmm2, 0x17
por xmm4, xmm5
psrad xmm0, 0x17
addps xmm7, xmm4
subps xmm4, xmmword [0xb5d410]
psubd xmm0, xmmword [0xb5d3e0]
movaps xmm5, xmm4
divps xmm4, xmm7
paddd xmm0, xmm2
pcmpgtd xmm3, xmm1
pcmpgtd xmm1, xmmword [0xb5d370]
movaps xmm7, xmm4
mulps xmm4, xmm4
pand xmm3, xmm1
movaps xmm1, xmm4
mulps xmm4, xmm4
pmovmskb edx, xmm3
movaps xmm3, xmmword [0xb5d3d0]
movaps xmm2, xmmword [0xb5d3c0]
mulps xmm3, xmm4
mulps xmm2, xmm4
addps xmm3, xmmword [0xb5d3b0]
cvtdq2ps xmm0, xmm0
mulps xmm3, xmm1
cmp edx, 0xffff
mulps xmm0, xmmword [0xb5d3f0]
addps xmm3, xmm2
jne 0x85fb1b
subps xmm3, xmm5
mulps xmm3, xmm7
addps xmm3, xmm5
addps xmm0, xmm3
ret
mov eax, esp
sub esp, 0x20
and esp, 0xfffffff0
pxor xmm7, xmm7
movdqa xmm0, xmm6
pcmpeqd xmm0, xmmword [0xb5d3a0]
pand xmm0, xmmword [0xb5d3a0]
por xmm7, xmm0
movdqa xmm0, xmm6
pand xmm0, xmmword [0xb5d430]
movdqa xmm1, xmm0
pcmpeqd xmm0, xmmword [0xb5d440]
pand xmm0, xmmword [0xb5d420]
por xmm7, xmm0
pcmpgtd xmm1, xmmword [0xb5d3a0]
pand xmm1, xmm6
por xmm7, xmm1
movdqa xmm0, xmm6
paddd xmm0, xmmword [0xb5d450]
pcmpgtd xmm0, xmmword [0xb5d460]
por xmm7, xmm0
movdqa xmmword [esp], xmm7
movdqa xmm0, xmm6
paddd xmm0, xmmword [0xb5d3a0]
pcmpgtd xmm0, xmmword [0xb5d3a0]
movdqa xmm1, xmm0
pand xmm1, xmmword [0xb5d400]
movdqa xmmword [esp + 0x10], xmm1
movdqa xmm1, xmm0
movdqa xmm2, xmm6
orps xmm2, xmmword [0xb5d410]
subps xmm2, xmmword [0xb5d410]
andps xmm0, xmm2
pcmpeqd xmm7, xmmword [0xb5d440]
pand xmm6, xmm7
pandn xmm7, xmmword [0xb5d410]
por xmm7, xmm6
pandn xmm1, xmm7
por xmm0, xmm1
movdqa xmm4, xmmword [0xb5d370]
movdqa xmm3, xmmword [0xb5d3a0]
movdqa xmm2, xmmword [0xb5d380]
movaps xmm6, xmm0
pand xmm4, xmm0
movaps xmm5, xmmword [0xb5d410]
movaps xmm7, xmmword [0xb5d410]
paddd xmm2, xmm4
movdqa xmm1, xmm0
pand xmm2, xmmword [0xb5d390]
pxor xmm5, xmm2
psrad xmm2, 0x17
por xmm4, xmm5
psrad xmm0, 0x17
addps xmm7, xmm4
subps xmm4, xmmword [0xb5d410]
psubd xmm0, xmmword [0xb5d3e0]
movaps xmm5, xmm4
divps xmm4, xmm7
paddd xmm0, xmm2
pcmpgtd xmm3, xmm1
pcmpgtd xmm1, xmmword [0xb5d370]
movaps xmm7, xmm4
mulps xmm4, xmm4
pand xmm3, xmm1
movaps xmm1, xmm4
mulps xmm4, xmm4
pmovmskb edx, xmm3
movaps xmm3, xmmword [0xb5d3d0]
movaps xmm2, xmmword [0xb5d3c0]
mulps xmm3, xmm4
mulps xmm2, xmm4
addps xmm3, xmmword [0xb5d3b0]
cvtdq2ps xmm0, xmm0
mulps xmm3, xmm1
cmp edx, 0xffff
mulps xmm0, xmmword [0xb5d3f0]
addps xmm3, xmm2
jne 0x85fb1b
subps xmm3, xmm5
mulps xmm3, xmm7
addps xmm3, xmm5
addps xmm0, xmm3
orps xmm0, xmmword [esp]
addps xmm0, xmmword [esp + 0x10]
mov esp, eax
jmp 0x85fb1a
mov eax, esp
sub esp, 0x60
and esp, 0xfffffff0
mov dword [esp + 0x24], eax
movdqa xmm4, xmm0
movdqa xmm2, xmmword [0xb5d4a0]
movaps xmm6, xmm0
movdqa xmm1, xmmword [0xb5d530]
movdqa xmm3, xmmword [0xb5d4c0]
pand xmm4, xmmword [0xb5d490]
pcmpgtd xmm3, xmm0
paddd xmm2, xmm4
pand xmm2, xmmword [0xb5d4b0]
pxor xmm1, xmm2
psrad xmm2, 0x17
por xmm4, xmm1
movdqa xmm1, xmm0
psrad xmm1, 0x17
pcmpgtd xmm0, xmmword [0xb5d490]
psubd xmm1, xmmword [0xb5d480]
pand xmm3, xmm0
movdqa xmm0, xmm1
paddd xmm0, xmm2
movaps xmm2, xmm4
movaps xmm1, xmmword [0xb5d520]
subps xmm2, xmmword [0xb5d530]
pmovmskb edx, xmm3
movaps xmm3, xmmword [0xb5d4f0]
addps xmm1, xmm2
movaps xmm4, xmmword [0xb5d4e0]
movaps xmm5, xmm2
divps xmm2, xmm1
cvtdq2ps xmm0, xmm0
movaps xmm1, xmm2
mulps xmm2, xmm2
movaps xmm7, xmm2
mulps xmm2, xmm2
mulps xmm3, xmm2
mulps xmm4, xmm2
addps xmm3, xmmword [0xb5d4d0]
mulps xmm3, xmm7
addps xmm3, xmm4
mulps xmm0, xmmword [0xb5d500]
movaps xmm2, xmm5
subps xmm5, xmm3
mulps xmm5, xmm1
subps xmm5, xmm2
subps xmm0, xmm5
cmp edx, 0xffff
jne 0x85fdb3
jmp 0x85fdd1
mov edx, 0xc
movaps xmmword [esp], xmm6
fldln2
fld dword [esp + edx]
fyl2x
fstp dword [esp + edx]
sub edx, 4
jns 0x85fdbc
movaps xmm0, xmmword [esp]
jmp 0x85fdb1
mov esp, dword [esp + 0x24]
ret
mov eax, esp
sub esp, 0x70
and esp, 0xfffffff0
mov dword [esp + 0x34], eax
movlps qword [esp + 0x10], xmm0
movhps qword [esp + 0x18], xmm0
xorps xmm2, xmm2
movq mm4, qword [esp + 0x10]
movq mm5, qword [esp + 0x18]
movq mm7, qword [0xb5d580]
movq mm2, mm7
pcmpgtd mm2, mm4
pcmpgtd mm7, mm5
movq mm6, qword [0xb5d570]
movq mm1, mm4
pcmpgtd mm1, mm6
movq mm0, mm5
pcmpgtd mm0, mm6
pand mm2, mm7
pand mm1, mm0
pand mm2, mm1
pmovmskb eax, mm2
movq mm0, mm4
psrad mm0, 0x17
movq mm3, mm5
psrad mm3, 0x17
movq mm1, qword [0xb5d560]
psubd mm0, mm1
psubd mm3, mm1
movq mm1, qword [0xb5d570]
pand mm4, mm1
pand mm5, mm1
movq mm2, qword [0xb5d550]
movq mm1, mm4
paddd mm1, mm2
paddd mm2, mm5
movq mm6, qword [0xb5d540]
pand mm1, mm6
pand mm2, mm6
movq mm6, mm1
psrad mm6, 0x17
paddd mm0, mm6
movq mm6, mm2
psrad mm6, 0x17
paddd mm3, mm6
movq mm6, qword [0xb5d5e0]
pxor mm1, mm6
pxor mm2, mm6
por mm4, mm1
por mm5, mm2
movq qword [esp], mm4
movq qword [esp + 8], mm5
movaps xmm1, xmmword [esp]
movaps xmm0, xmm2
cvtpi2ps xmm0, mm0
cvtpi2ps xmm2, mm3
shufps xmm0, xmm2, 0x44
emms
cmp eax, 0xff
jne 0x85ff40
movaps xmm3, xmmword [0xb5d5e0]
subps xmm1, xmm3
movaps xmm2, xmmword [0xb5d5f0]
movaps xmm4, xmm1
addps xmm4, xmm2
rcpps xmm5, xmm4
mulps xmm4, xmm5
subps xmm2, xmm4
mulps xmm5, xmm1
mulps xmm2, xmm5
movaps xmm7, xmm2
mulps xmm7, xmm2
movaps xmm6, xmm7
mulps xmm6, xmm7
movaps xmm4, xmmword [0xb5d590]
mulps xmm4, xmm6
movaps xmm3, xmmword [0xb5d5a0]
mulps xmm3, xmm6
addps xmm4, xmmword [0xb5d5b0]
mulps xmm4, xmm7
addps xmm4, xmm3
movaps xmm3, xmm1
subps xmm3, xmm4
mulps xmm3, xmm2
movaps xmm2, xmmword [0xb5d5c0]
mulps xmm2, xmm0
subps xmm3, xmm2
subps xmm3, xmm1
movaps xmm1, xmmword [0xb5d5d0]
mulps xmm0, xmm1
subps xmm0, xmm3
jmp 0x85ff73
fldln2
fld dword [esp + 0x10]
fyl2x
fstp dword [esp]
fldln2
fld dword [esp + 0x14]
fyl2x
fstp dword [esp + 4]
fldln2
fld dword [esp + 0x18]
fyl2x
fstp dword [esp + 8]
fldln2
fld dword [esp + 0x1c]
fyl2x
fstp dword [esp + 0xc]
movaps xmm0, xmmword [esp]
mov esp, dword [esp + 0x34]
ret