Function at 0x140258f50
Capabilities:
Encode data using xor

Disassembly:
mov rax, rsp
mov qword [rax + 8], rcx
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rax - 0xf8]
sub rsp, 0x1b8
mov qword [rbp], 0xfffffffffffffffe
movaps xmmword [rax - 0x58], xmm6
movaps xmmword [rax - 0x68], xmm7
movaps xmmword [rax - 0x78], xmm8
movaps xmmword [rax - 0x88], xmm9
movaps xmmword [rax - 0x98], xmm10
movaps xmmword [rax - 0xa8], xmm11
movaps xmmword [rax - 0xb8], xmm12
movaps xmmword [rax - 0xc8], xmm13
movaps xmmword [rax - 0xd8], xmm14
movaps xmmword [rax - 0xe8], xmm15
mov rsi, rcx
mov rdx, qword [rdx + 8]
mov edi, dword [rdx + 0x18]
sub edi, dword [rdx + 0x14]
inc edi
mov dword [rsp + 0x50], edi
mov r13d, dword [rdx + 0x20]
sub r13d, dword [rdx + 0x1c]
inc r13d
mov dword [rbp + 0x108], r13d
mov rcx, qword [rcx + 0x50]
call fcn.1400df020
mov rcx, qword [rsi + 0xe0]
mov rax, qword [rcx]
mov dword [rsp + 0x20], r13d
mov r9d, 1
mov r8d, r13d
mov edx, r9d
call qword [rax + 0x20]
mov r8d, r13d
mov edx, 1
lea rcx, [rsi + 0x178]
call fcn.1400b36c0
mov r11, qword [rsi + 0x50]
mov r12, qword [r11 + 0x48]
movsxd rax, dword [r11 + 0x58]
shl rax, 3
sub r12, rax
mov rax, qword [rsi + 0xe0]
mov rcx, qword [rax + 0x48]
movsxd rax, dword [rax + 0x58]
shl rax, 3
sub rcx, rax
mov qword [rsp + 0x30], rcx
mov rcx, qword [rsi + 0x198]
movsxd rax, dword [rsi + 0x1a8]
shl rax, 3
sub rcx, rax
mov qword [rsp + 0x48], rcx
mov byte [rsp + 0x78], 0
lea rax, vtable.DL_Vector.0
mov qword [rsp + 0x70], rax
mov byte [rbp - 0x78], 0
lea rax, vtable.DL_Array_double_.0
mov qword [rbp - 0x80], rax
lea rax, vtable.DL_Block_double_.0
mov qword [rbp - 0x70], rax
xor eax, eax
mov dword [rbp - 0x68], eax
mov qword [rbp - 0x60], rax
mov dword [rbp - 0x58], eax
mov byte [rbp - 0x54], al
lea rcx, [rbp - 0x80]
call fcn.14011e770
nop
mov r8d, r13d
mov edx, 1
lea rcx, [rbp - 0x80]
call fcn.1400b36c0
nop
movsxd rax, dword [rbp - 0x50]
shl rax, 3
mov rcx, qword [rbp - 0x60]
sub rcx, rax
mov qword [rsp + 0x40], rcx
xorpd xmm2, xmm2
movapd xmm9, xmm2
movsd qword [rsp + 0x58], xmm2
movapd xmm6, xmm2
movapd xmm3, xmm2
mov eax, 1
mov ebx, eax
mov qword [rsp + 0x38], rax
movsxd rsi, edi
mov qword [rsp + 0x60], rsi
movsxd r14, r13d
mov qword [rbp - 0x40], r14
lea r15d, [rax + 7]
movsd xmm14, qword [0x140329d10]
movsd xmm13, qword [0x14032a130]
cmp r14, rax
jl 0x140259a56
inc eax
mov dword [rbp + 0x110], eax
lea r13, [rbx + 1]
mov qword [rsp + 0x58], r13
mulsd xmm6, xmm3
movsd qword [rcx + rbx*8], xmm6
movapd xmm6, xmm2
movapd xmm7, xmm2
movapd xmm3, xmm2
cmp rbx, rsi
jg 0x140259515
mov rdx, rbx
mov r15, rsi
sub r15, rbx
inc r15
cmp r15, 4
jl 0x1402591d0
lea rcx, [r12 + rbx*8 + 0x10]
mov r8, rsi
sub r8, rbx
sub r8, 3
shr r8, 2
inc r8
lea rdx, [rbx + r8*4]
nop dword [rax]
mov rax, qword [rcx - 0x10]
movsd xmm0, qword [rax + rbx*8]
andpd xmm0, xmm13
addsd xmm6, xmm0
mov rax, qword [rcx - 8]
movsd xmm1, qword [rax + rbx*8]
andpd xmm1, xmm13
addsd xmm6, xmm1
mov rax, qword [rcx]
movsd xmm0, qword [rax + rbx*8]
andpd xmm0, xmm13
addsd xmm6, xmm0
mov rax, qword [rcx + 8]
movsd xmm1, qword [rax + rbx*8]
andpd xmm1, xmm13
addsd xmm6, xmm1
add rcx, 0x20
dec r8
jne 0x140259180
cmp rdx, rsi
jg 0x1402591ef
mov rax, qword [r12 + rdx*8]
movsd xmm0, qword [rax + rbx*8]
andpd xmm0, xmm13
addsd xmm6, xmm0
inc rdx
cmp rdx, rsi
jle 0x1402591d5
ucomisd xmm6, xmm2
jp 0x1402591fb
je 0x14025950f
mov rcx, rbx
cmp r15, 4
jl 0x140259292
lea rdx, [r12 + rbx*8 + 0x10]
mov r8, rsi
sub r8, rbx
sub r8, 3
shr r8, 2
inc r8
lea rcx, [rbx + r8*4]
mov rax, qword [rdx - 0x10]
movsd xmm0, qword [rax + rbx*8]
divsd xmm0, xmm6
movsd qword [rax + rbx*8], xmm0
mulsd xmm0, xmm0
addsd xmm7, xmm0
mov rax, qword [rdx - 8]
movsd xmm0, qword [rax + rbx*8]
divsd xmm0, xmm6
movsd qword [rax + rbx*8], xmm0
mulsd xmm0, xmm0
addsd xmm7, xmm0
mov rax, qword [rdx]
movsd xmm0, qword [rax + rbx*8]
divsd xmm0, xmm6
movsd qword [rax + rbx*8], xmm0
mulsd xmm0, xmm0
addsd xmm7, xmm0
mov rax, qword [rdx + 8]
movsd xmm0, qword [rax + rbx*8]
divsd xmm0, xmm6
movsd qword [rax + rbx*8], xmm0
mulsd xmm0, xmm0
addsd xmm7, xmm0
add rdx, 0x20
dec r8
jne 0x140259222
cmp rcx, rsi
jg 0x1402592b9
mov rax, qword [r12 + rcx*8]
movsd xmm0, qword [rax + rbx*8]
divsd xmm0, xmm6
movsd qword [rax + rbx*8], xmm0
mulsd xmm0, xmm0
addsd xmm7, xmm0
inc rcx
cmp rcx, rsi
jle 0x140259297
mov rdi, qword [r12 + rbx*8]
movsd xmm8, qword [rdi + rbx*8]
movapd xmm0, xmm7
call sub.MSVCR100.dll_sqrt
movapd xmm3, xmm0
xorpd xmm2, xmm2
andpd xmm3, xmm13
comisd xmm2, xmm8
jbe 0x1402592e5
xorpd xmm3, xmm14
xorpd xmm3, xmm14
movapd xmm4, xmm8
mulsd xmm4, xmm3
subsd xmm4, xmm7
subsd xmm8, xmm3
movsd qword [rdi + rbx*8], xmm8
mov rcx, r13
cmp r13, r14
jg 0x140259478
nop
mov r8, rbx
cmp r15, 4
jl 0x140259390
lea rdx, [r12 + rbx*8 + 0x10]
mov r9, rsi
sub r9, rbx
sub r9, 3
shr r9, 2
inc r9
lea r8, [rbx + r9*4]
nop word [rax + rax]
mov rax, qword [rdx - 0x10]
movsd xmm0, qword [rax + rcx*8]
mulsd xmm0, qword [rax + rbx*8]
addsd xmm2, xmm0
mov rax, qword [rdx - 8]
movsd xmm1, qword [rax + rcx*8]
mulsd xmm1, qword [rax + rbx*8]
addsd xmm2, xmm1
mov rax, qword [rdx]
movsd xmm0, qword [rax + rcx*8]
mulsd xmm0, qword [rax + rbx*8]
addsd xmm2, xmm0
mov rax, qword [rdx + 8]
movsd xmm1, qword [rax + rcx*8]
mulsd xmm1, qword [rax + rbx*8]
addsd xmm2, xmm1
add rdx, 0x20
dec r9
jne 0x140259340
cmp r8, rsi
jg 0x1402593af
mov rax, qword [r12 + r8*8]
movsd xmm0, qword [rax + rcx*8]
mulsd xmm0, qword [rax + rbx*8]
addsd xmm2, xmm0
inc r8
cmp r8, rsi
jle 0x140259395
divsd xmm2, xmm4
mov rdx, rbx
cmp r15, 4
jl 0x140259444
lea r8, [r12 + rbx*8 + 0x10]
mov r9, rsi
sub r9, rbx
sub r9, 3
shr r9, 2
inc r9
lea rdx, [rbx + r9*4]
nop word [rax + rax]
mov rax, qword [r8 - 0x10]
movapd xmm0, xmm2
mulsd xmm0, qword [rax + rbx*8]
addsd xmm0, qword [rax + rcx*8]
movsd qword [rax + rcx*8], xmm0
mov rax, qword [r8 - 8]
movapd xmm0, xmm2
mulsd xmm0, qword [rax + rbx*8]
addsd xmm0, qword [rax + rcx*8]
movsd qword [rax + rcx*8], xmm0
mov rax, qword [r8]
movapd xmm0, xmm2
mulsd xmm0, qword [rax + rbx*8]
addsd xmm0, qword [rax + rcx*8]
movsd qword [rax + rcx*8], xmm0
mov rax, qword [r8 + 8]
movapd xmm0, xmm2
mulsd xmm0, qword [rax + rbx*8]
addsd xmm0, qword [rax + rcx*8]
movsd qword [rax + rcx*8], xmm0
add r8, 0x20
dec r9
jne 0x1402593e0
cmp rdx, rsi
jg 0x140259468
mov rax, qword [r12 + rdx*8]
movapd xmm0, xmm2
mulsd xmm0, qword [rax + rbx*8]
addsd xmm0, qword [rax + rcx*8]
movsd qword [rax + rcx*8], xmm0
inc rdx
cmp rdx, rsi
jle 0x140259449
inc rcx
cmp rcx, r14
xorpd xmm2, xmm2
jle 0x140259310
mov rdx, rbx
cmp r15, 4
jl 0x1402594f0
lea rcx, [r12 + rbx*8 + 0x10]
mov r8, rsi
sub r8, rbx
sub r8, 3
shr r8, 2
inc r8
lea rdx, [rbx + r8*4]
nop dword [rax + rax]
mov rax, qword [rcx - 0x10]
movapd xmm0, xmm6
mulsd xmm0, qword [rax + rbx*8]
movsd qword [rax + rbx*8], xmm0
mov rax, qword [rcx - 8]
movapd xmm0, xmm6
mulsd xmm0, qword [rax + rbx*8]
movsd qword [rax + rbx*8], xmm0
mov rax, qword [rcx]
movapd xmm0, xmm6
mulsd xmm0, qword [rax + rbx*8]
movsd qword [rax + rbx*8], xmm0
mov rax, qword [rcx + 8]
movapd xmm0, xmm6
mulsd xmm0, qword [rax + rbx*8]
movsd qword [rax + rbx*8], xmm0
add rcx, 0x20
dec r8
jne 0x1402594a0
cmp rdx, rsi
jg 0x14025950f
mov rax, qword [r12 + rdx*8]
movapd xmm0, xmm6
mulsd xmm0, qword [rax + rbx*8]
movsd qword [rax + rbx*8], xmm0
inc rdx
cmp rdx, rsi
jle 0x1402594f5
mov r15d, 8
mulsd xmm6, xmm3
mov rax, qword [rsp + 0x48]
movsd qword [rax + rbx*8], xmm6
movapd xmm6, xmm2
movapd xmm7, xmm2
movapd xmm3, xmm2
cmp rbx, rsi
jg 0x1402599fa
cmp rbx, r14
je 0x1402599fa
mov rdx, r13
cmp r13, r14
jg 0x1402599fa
mov r8, r14
sub r8, r13
inc r8
mov qword [rbp + 0x118], r8
cmp r8, 4
jl 0x1402595c2
mov rax, qword [r12 + rbx*8]
lea rcx, [rax + r13*8 + 0x10]
mov rax, r14
sub rax, r13
sub rax, 3
shr rax, 2
inc rax
lea rdx, [r13 + rax*4]
movsd xmm0, qword [rcx - 0x10]
andpd xmm0, xmm13
addsd xmm6, xmm0
movsd xmm1, qword [rcx - 8]
andpd xmm1, xmm13
addsd xmm6, xmm1
movsd xmm0, qword [rcx]
andpd xmm0, xmm13
addsd xmm6, xmm0
movsd xmm1, qword [rcx + 8]
andpd xmm1, xmm13
addsd xmm6, xmm1
add rcx, 0x20
dec rax
jne 0x140259582
cmp rdx, r14
jg 0x1402595ee
mov rax, qword [r12 + rbx*8]
lea rcx, [rax + rdx*8]
mov rax, r14
sub rax, rdx
inc rax
movsd xmm0, qword [rcx]
andpd xmm0, xmm13
addsd xmm6, xmm0
add rcx, 8
dec rax
jne 0x1402595d8
ucomisd xmm6, xmm2
jp 0x1402595fa
je 0x1402599fa
mov rax, r13
cmp r8, 4
jl 0x140259677
mov rcx, qword [r12 + rbx*8]
lea rdx, [r14 - 3]
nop
movsd xmm0, qword [rcx + rax*8]
divsd xmm0, xmm6
movsd qword [rcx + rax*8], xmm0
mulsd xmm0, xmm0
addsd xmm7, xmm0
movsd xmm1, qword [rcx + rax*8 + 8]
divsd xmm1, xmm6
movsd qword [rcx + rax*8 + 8], xmm1
mulsd xmm1, xmm1
addsd xmm7, xmm1
movsd xmm0, qword [rcx + rax*8 + 0x10]
divsd xmm0, xmm6
movsd qword [rcx + rax*8 + 0x10], xmm0
mulsd xmm0, xmm0
addsd xmm7, xmm0
movsd xmm1, qword [rcx + rax*8 + 0x18]
divsd xmm1, xmm6
movsd qword [rcx + rax*8 + 0x18], xmm1
mulsd xmm1, xmm1
addsd xmm7, xmm1
add rax, 4
cmp rax, rdx
jle 0x140259610
cmp rax, r14
jg 0x14025969e
mov rcx, qword [r12 + rbx*8]
movsd xmm0, qword [rcx + rax*8]
divsd xmm0, xmm6
movsd qword [rcx + rax*8], xmm0
mulsd xmm0, xmm0
addsd xmm7, xmm0
inc rax
cmp rax, r14
jle 0x140259680
mov rdi, qword [r12 + rbx*8]
movsd xmm8, qword [rdi + r13*8]
movapd xmm0, xmm7
call sub.MSVCR100.dll_sqrt
movapd xmm3, xmm0
xorpd xmm11, xmm11
andpd xmm3, xmm13
comisd xmm11, xmm8
jbe 0x1402596cb
xorpd xmm3, xmm14
xorpd xmm3, xmm14
movapd xmm2, xmm8
mulsd xmm2, xmm3
subsd xmm2, xmm7
subsd xmm8, xmm3
movsd qword [rdi + r13*8], xmm8
mov rdx, r13
mov r8, qword [rbp + 0x118]
cmp r8, 4
jl 0x140259796
mov rax, qword [rsp + 0x40]
lea rcx, [rax + r13*8 + 0x10]
mov r9, rax
neg r9
mov r10, r15
mov r15, rax
sub r10, rax
mov r11, 0xfffffffffffffff0
sub r11, rax
mov r8, r14
sub r8, r13
sub r8, 3
shr r8, 2
inc r8
lea rdx, [r13 + r8*4]
nop word [rax + rax]
lea rax, [rdi + r11]
movsd xmm0, qword [rax + rcx]
divsd xmm0, xmm2
movsd qword [rcx - 0x10], xmm0
movsd xmm1, qword [rax + rcx + 8]
divsd xmm1, xmm2
movsd qword [rcx - 8], xmm1
lea rax, [rdi + r9]
movsd xmm0, qword [rax + rcx]
divsd xmm0, xmm2
movsd qword [rcx], xmm0
lea rax, [rdi + r10]
movsd xmm1, qword [rax + rcx]
divsd xmm1, xmm2
movsd qword [rcx + 8], xmm1
add rcx, 0x20
dec r8
jne 0x140259740
mov r8, qword [rbp + 0x118]
jmp 0x14025979b
mov r15, qword [rsp + 0x40]
cmp rdx, r14
jg 0x1402597b7
movsd xmm0, qword [rdi + rdx*8]
divsd xmm0, xmm2
movsd qword [r15 + rdx*8], xmm0
inc rdx
cmp rdx, r14
jle 0x1402597a0
mov r15, r13
cmp r13, rsi
jg 0x140259974
mov rbx, r13
mov r11, qword [rsp + 0x40]
nop dword [rax + rax]
movapd xmm2, xmm11
mov rdx, rbx
cmp r8, 4
jl 0x14025985a
mov r9, qword [r12 + r15*8]
lea rcx, [r9 + rbx*8 + 0x10]
neg r9
mov r8, r14
sub r8, rbx
sub r8, 3
shr r8, 2
inc r8
lea rdx, [rbx + r8*4]
nop
lea rax, [r9 + rcx - 0x10]
movsd xmm1, qword [rax + rdi + 8]
mulsd xmm1, qword [rcx - 8]
movsd xmm0, qword [rcx - 0x10]
mulsd xmm0, qword [rax + rdi]
addsd xmm0, xmm2
movapd xmm2, xmm1
addsd xmm2, xmm0
lea rax, [r9 + rcx]
movsd xmm0, qword [rax + rdi]
mulsd xmm0, qword [rcx]
addsd xmm2, xmm0
lea rax, [r9 + rcx + 8]
movsd xmm1, qword [rax + rdi]
mulsd xmm1, qword [rcx + 8]
addsd xmm2, xmm1
add rcx, 0x20
dec r8
jne 0x140259800
mov r8, qword [rbp + 0x118]
cmp rdx, r14
jg 0x140259879
mov rax, qword [r12 + r15*8]
movsd xmm0, qword [rax + rdx*8]
mulsd xmm0, qword [rdi + rdx*8]
addsd xmm2, xmm0
inc rdx
cmp rdx, r14
jle 0x140259863
mov rcx, rbx
cmp r8, 4
jl 0x140259939
mov r10, qword [r12 + r15*8]
mov rax, qword [rsp + 0x40]
lea rdx, [rax + rbx*8 + 0x10]
mov r13, rax
neg r13
mov r11d, 8
sub r11, rax
mov r9, 0xfffffffffffffff0
sub r9, rax
mov r8, r14
sub r8, rbx
sub r8, 3
shr r8, 2
inc r8
lea rcx, [rbx + r8*4]
lea rax, [rdx + r10]
movapd xmm0, xmm2
mulsd xmm0, qword [rdx - 0x10]
addsd xmm0, qword [rax + r9]
movsd qword [rax + r9], xmm0
movapd xmm1, xmm2
mulsd xmm1, qword [rdx - 8]
addsd xmm1, qword [rax + r9 + 8]
movsd qword [rax + r9 + 8], xmm1
lea rax, [r13 + rdx]
movapd xmm0, xmm2
mulsd xmm0, qword [rdx]
addsd xmm0, qword [rax + r10]
movsd qword [rax + r10], xmm0
lea rax, [rdx + r10]
movapd xmm0, xmm2
mulsd xmm0, qword [rdx + 8]
addsd xmm0, qword [rax + r11]
movsd qword [rax + r11], xmm0
add rdx, 0x20
dec r8
jne 0x1402598c2
mov r8, qword [rbp + 0x118]
mov r11, qword [rsp + 0x40]
cmp rcx, r14
jg 0x14025995e
mov rax, qword [r12 + r15*8]
movapd xmm0, xmm2
mulsd xmm0, qword [r11 + rcx*8]
addsd xmm0, qword [rax + rcx*8]
movsd qword [rax + rcx*8], xmm0
inc rcx
cmp rcx, r14
jle 0x140259942
inc r15
cmp r15, rsi
jle 0x1402597d0
mov rbx, qword [rsp + 0x38]
mov r13, qword [rsp + 0x58]
mov rax, r13
cmp r8, 4
jl 0x1402599d7
mov rcx, qword [r12 + rbx*8]
lea rdx, [r14 - 3]
nop word [rax + rax]
movapd xmm0, xmm6
mulsd xmm0, qword [rcx + rax*8]
movsd qword [rcx + rax*8], xmm0
movapd xmm1, xmm6
mulsd xmm1, qword [rcx + rax*8 + 8]
movsd qword [rcx + rax*8 + 8], xmm1
movapd xmm0, xmm6
mulsd xmm0, qword [rcx + rax*8 + 0x10]
movsd qword [rcx + rax*8 + 0x10], xmm0
movapd xmm1, xmm6
mulsd xmm1, qword [rcx + rax*8 + 0x18]
movsd qword [rcx + rax*8 + 0x18], xmm1
add rax, 4
cmp rax, rdx
jle 0x140259990
cmp rax, r14
jg 0x1402599f6
mov rcx, qword [r12 + rbx*8]
movapd xmm0, xmm6
mulsd xmm0, qword [rcx + rax*8]
movsd qword [rcx + rax*8], xmm0
inc rax
cmp rax, r14
jle 0x1402599e0
xorpd xmm2, xmm2
mov r15, qword [rsp + 0x48]
movsd xmm0, qword [r15 + rbx*8]
andpd xmm0, xmm13
mov rcx, qword [rsp + 0x40]
movsd xmm1, qword [rcx + rbx*8]
andpd xmm1, xmm13
addsd xmm1, xmm0
comisd xmm9, xmm1
ja 0x140259a29
movapd xmm9, xmm1
mov rbx, r13
mov qword [rsp + 0x38], rbx
cmp r13, r14
mov eax, dword [rbp + 0x110]
mov r15d, 8
jle 0x140259121
movsd qword [rsp + 0x58], xmm9
mov r13d, dword [rbp + 0x108]
jmp 0x140259a62
mov eax, dword [rbp + 0x100]
mov dword [rbp + 0x110], eax
mov r11d, r13d
mov dword [rbp + 0x118], r13d
mov r8, r14
cmp r13d, 1
jl 0x140259ea0
mov rdx, qword [rsp + 0x30]
mov r13, rdx
sub r13, r12
mov qword [rsp + 0x68], r13
mov r15, rcx
sub r15, r12
mov qword [rsp + 0x38], r15
mov esi, 8
movabs r9, 0x3ff0000000000000
cmp r8, r14
jge 0x140259e62
ucomisd xmm3, xmm2
jp 0x140259ab8
je 0x140259d8e
movsxd r11, eax
mov r9, r11
cmp r11, r14
jg 0x140259bd3
mov rax, r14
sub rax, r11
inc rax
cmp rax, 4
jl 0x140259ba8
mov r10, qword [r12 + r8*8]
lea rdx, [rdx + r11*8 + 0x10]
mov rax, qword [rsp + 0x30]
mov rdi, rax
neg rdi
mov r13, rsi
sub r13, rax
mov r15, 0xfffffffffffffff0
sub r15, rax
mov rbx, r14
sub rbx, r11
sub rbx, 3
shr rbx, 2
inc rbx
lea r9, [r11 + rbx*4]
nop word [rax + rax]
lea rcx, [r10 + r15]
movsd xmm0, qword [rcx + rdx]
divsd xmm0, qword [r10 + r11*8]
divsd xmm0, xmm3
mov rax, qword [rdx - 0x10]
movsd qword [rax + r8*8], xmm0
movsd xmm1, qword [rcx + rdx + 8]
divsd xmm1, qword [r10 + r11*8]
divsd xmm1, xmm3
mov rax, qword [rdx - 8]
movsd qword [rax + r8*8], xmm1
lea rax, [rdi + r10]
movsd xmm0, qword [rax + rdx]
divsd xmm0, qword [r10 + r11*8]
divsd xmm0, xmm3
mov rax, qword [rdx]
movsd qword [rax + r8*8], xmm0
lea rax, [r10 + r13]
movsd xmm1, qword [rax + rdx]
divsd xmm1, qword [r10 + r11*8]
divsd xmm1, xmm3
mov rax, qword [rdx + 8]
movsd qword [rax + r8*8], xmm1
add rdx, 0x20
dec rbx
jne 0x140259b20
mov r13, qword [rsp + 0x68]
mov r15, qword [rsp + 0x38]
mov rdx, qword [rsp + 0x30]
cmp r9, r14
jg 0x140259bd3
mov rcx, qword [r12 + r8*8]
movsd xmm0, qword [rcx + r9*8]
divsd xmm0, qword [rcx + r11*8]
divsd xmm0, xmm3
mov rax, qword [rdx + r9*8]
movsd qword [rax + r8*8], xmm0
inc r9
cmp r9, r14
jle 0x140259bb1
mov rcx, r11
cmp r11, r14
jg 0x140259d87
nop
mov rbx, r11
mov rdi, r14
sub rdi, r11
inc rdi
mov r15, qword [rsp + 0x30]
cmp rdi, 4
jl 0x140259c7b
lea rdx, [rdx + r11*8 + 8]
mov r10, qword [r12 + r8*8]
sub r10, r15
mov r9, r14
sub r9, r11
sub r9, 3
shr r9, 2
inc r9
lea rbx, [r11 + r9*4]
nop dword [rax]
mov rax, qword [rdx - 8]
movsd xmm1, qword [rax + rcx*8]
mulsd xmm1, qword [r10 + rdx - 8]
addsd xmm1, xmm2
mov rax, qword [rdx]
movsd xmm0, qword [r10 + rdx]
mulsd xmm0, qword [rax + rcx*8]
movapd xmm2, xmm1
addsd xmm2, xmm0
mov rax, qword [rdx + 8]
movsd xmm1, qword [rax + rcx*8]
mulsd xmm1, qword [r10 + rdx + 8]
addsd xmm2, xmm1
mov rax, qword [rdx + 0x10]
movsd xmm0, qword [rax + rcx*8]
mulsd xmm0, qword [r10 + rdx + 0x10]
addsd xmm2, xmm0
add rdx, 0x20
dec r9
jne 0x140259c20
cmp rbx, r14
jg 0x140259cae
lea rdx, [r15 + rbx*8]
mov r10, qword [r12 + r8*8]
sub r10, r15
mov r9, r14
sub r9, rbx
inc r9
mov rax, qword [rdx]
movsd xmm0, qword [rax + rcx*8]
mulsd xmm0, qword [rdx + r10]
addsd xmm2, xmm0
add rdx, rsi
dec r9
jne 0x140259c94
mov rdx, r11
mov rbx, qword [rsp + 0x30]
cmp rdi, 4
jl 0x140259d48
lea r9, [rbx + r11*8 + 0x10]
mov r10, r14
sub r10, r11
sub r10, 3
shr r10, 2
inc r10
lea rdx, [r11 + r10*4]
nop word [rax + rax]
mov rax, qword [r9 - 0x10]
movapd xmm0, xmm2
mulsd xmm0, qword [rax + r8*8]
addsd xmm0, qword [rax + rcx*8]
movsd qword [rax + rcx*8], xmm0
mov rax, qword [r9 - 8]
movapd xmm0, xmm2
mulsd xmm0, qword [rax + r8*8]
addsd xmm0, qword [rax + rcx*8]
movsd qword [rax + rcx*8], xmm0
mov rax, qword [r9]
movapd xmm0, xmm2
mulsd xmm0, qword [rax + r8*8]
addsd xmm0, qword [rax + rcx*8]
movsd qword [rax + rcx*8], xmm0
mov rax, qword [r9 + 8]
movapd xmm0, xmm2
mulsd xmm0, qword [rax + r8*8]
addsd xmm0, qword [rax + rcx*8]
movsd qword [rax + rcx*8], xmm0
add r9, 0x20
dec r10
jne 0x140259ce0
cmp rdx, r14
jg 0x140259d6d
mov rax, qword [rbx + rdx*8]
movapd xmm0, xmm2
mulsd xmm0, qword [rax + r8*8]
addsd xmm0, qword [rax + rcx*8]
movsd qword [rax + rcx*8], xmm0
inc rdx
cmp rdx, r14
jle 0x140259d4d
inc rcx
cmp rcx, r14
xorpd xmm2, xmm2
mov rdx, qword [rsp + 0x30]
jle 0x140259be0
mov r15, qword [rsp + 0x38]
mov r11d, dword [rbp + 0x118]
movsxd r10, dword [rbp + 0x110]
cmp r10, r14
jg 0x140259e53
mov rax, r14
sub rax, r10
inc rax
mov rbx, qword [rsp + 0x30]
cmp rax, 4
jl 0x140259e1d
lea rax, [r13 + r8*8]
mov rcx, qword [rax + r12]
lea rdx, [rcx + r10*8 + 8]
mov r9, rbx
sub r9, rcx
mov rcx, r14
sub rcx, r10
sub rcx, 3
shr rcx, 2
inc rcx
lea r10, [r10 + rcx*4]
xor edi, edi
nop dword [rax]
mov rax, qword [r9 + rdx - 8]
mov qword [rax + r8*8], rdi
mov qword [rdx - 8], rdi
mov rax, qword [r9 + rdx]
mov qword [rax + r8*8], rdi
mov qword [rdx], rdi
mov rax, qword [r9 + rdx + 8]
mov qword [rax + r8*8], rdi
mov qword [rdx + 8], rdi
mov rax, qword [r9 + rdx + 0x10]
mov qword [rax + r8*8], rdi
mov qword [rdx + 0x10], rdi
add rdx, 0x20
dec rcx
jne 0x140259de0
jmp 0x140259e1f
xor edi, edi
cmp r10, r14
jg 0x140259e53
lea rax, [r13 + r8*8]
mov rcx, qword [rax + r12]
lea rdx, [rcx + r10*8]
mov r9, rbx
sub r9, rcx
mov rcx, r14
sub rcx, r10
inc rcx
mov rax, qword [r9 + rdx]
mov qword [rax + r8*8], rdi
mov qword [rdx], rdi
add rdx, rsi
dec rcx
jne 0x140259e40
mov rdx, qword [rsp + 0x30]
movabs r9, 0x3ff0000000000000
lea rcx, [r12 + r8*8]
mov rax, qword [rcx + r13]
mov qword [rax + r8*8], r9
movsd xmm3, qword [rcx + r15]
mov eax, r11d
mov dword [rbp + 0x110], eax
dec r11d
mov dword [rbp + 0x118], r11d
dec r8
cmp r11d, 1
jge 0x140259aa3
mov rsi, qword [rsp + 0x60]
mov r13d, dword [rbp + 0x108]
mov eax, r13d
mov ecx, dword [rsp + 0x50]
cmp ecx, r13d
cmovl eax, ecx
movsxd rbx, eax
movsd xmm15, qword [0x1402ca4b0]
cmp eax, 1
jl 0x14025a2a0
lea rdi, [rbx + 1]
mov r15, rsi
sub r15, rbx
inc r15
mov r11, rsi
sub r11, r14
mov qword [rsp + 0x60], r11
mov r9, r14
sub r9, rsi
mov qword [rbp + 0x110], r9
mov r8d, 8
sub r8, r12
mov qword [rsp + 0x38], r8
mov rdx, qword [rsp + 0x48]
sub rdx, r12
mov qword [rsp + 0x68], rdx
mov ecx, eax
mov qword [rbp + 0x118], rcx
nop dword [rax + rax]
lea r13, [r12 + rbx*8 + 0x10]
movsd xmm6, qword [rdx + r13 - 0x10]
mov rdx, rdi
cmp rdi, r14
jg 0x140259f9a
lea rax, [r9 + r15 - 1]
cmp rax, 4
jl 0x140259f69
mov rax, qword [r13 - 0x10]
add rax, r8
add rax, r13
mov rcx, r14
sub rcx, rbx
sub rcx, 4
shr rcx, 2
inc rcx
lea rdx, [rdi + rcx*4]
xor r8d, r8d
mov qword [rax - 0x10], r8
mov qword [rax - 8], r8
mov qword [rax], r8
mov qword [rax + 8], r8
add rax, 0x20
dec rcx
jne 0x140259f51
cmp rdx, r14
jg 0x140259f9a
mov rax, qword [r13 - 0x10]
lea rcx, [rax + rdx*8]
mov r8, r14
sub r8, rdx
inc r8
shl r8, 3
xor edx, edx
call sub.MSVCR100.dll_memset
xorpd xmm2, xmm2
mov r9, qword [rbp + 0x110]
mov r11, qword [rsp + 0x60]
ucomisd xmm6, xmm2
jp 0x14025a01b
jne 0x14025a01b
mov rdx, rbx
cmp rbx, rsi
jg 0x14025a25f
cmp r15, 4
jl 0x140259ffa
mov rcx, r13
mov r8, rsi
sub r8, rbx
sub r8, 3
shr r8, 2
inc r8
lea rdx, [rbx + r8*4]
xor r9d, r9d
nop
mov rax, qword [rcx - 0x10]
mov qword [rax + rbx*8], r9
mov rax, qword [rcx - 8]
mov qword [rax + rbx*8], r9
mov rax, qword [rcx]
mov qword [rax + rbx*8], r9
mov rax, qword [rcx + 8]
mov qword [rax + rbx*8], r9
add rcx, 0x20
dec r8
jne 0x140259fd0
jmp 0x140259ffd
xor r9d, r9d
cmp rdx, rsi
jg 0x14025a25f
mov rax, qword [r12 + rdx*8]
mov qword [rax + rbx*8], r9
inc rdx
cmp rdx, rsi
jle 0x14025a006
jmp 0x14025a25f
movapd xmm3, xmm15
divsd xmm3, xmm6
mov rcx, rdi
cmp rdi, r14
jg 0x14025a1bf
mov r10, qword [r13 - 0x10]
mov r8, rdi
cmp rdi, rsi
jg 0x14025a0e1
lea rax, [r9 + r11 - 1]
add rax, r15
cmp rax, 4
jl 0x14025a0c2
mov rdx, qword [rsp + 0x38]
add rdx, r13
add rdx, r12
mov r9, rsi
sub r9, rdi
sub r9, 3
shr r9, 2
inc r9
lea r8, [rdi + r9*4]
mov rax, qword [rdx - 0x10]
movsd xmm0, qword [rax + rcx*8]
mulsd xmm0, qword [rax + rbx*8]
addsd xmm2, xmm0
mov rax, qword [rdx - 8]
movsd xmm1, qword [rax + rcx*8]
mulsd xmm1, qword [rax + rbx*8]
addsd xmm2, xmm1
mov rax, qword [rdx]
movsd xmm0, qword [rax + rcx*8]
mulsd xmm0, qword [rax + rbx*8]
addsd xmm2, xmm0
mov rax, qword [rdx + 8]
movsd xmm1, qword [rax + rcx*8]
mulsd xmm1, qword [rax + rbx*8]
addsd xmm2, xmm1
add rdx, 0x20
dec r9
jne 0x14025a072
cmp r8, rsi
jg 0x14025a0e1
mov rax, qword [r12 + r8*8]
movsd xmm0, qword [rax + rcx*8]
mulsd xmm0, qword [rax + rbx*8]
addsd xmm2, xmm0
inc r8
cmp r8, rsi
jle 0x14025a0c7
divsd xmm2, qword [r10 + rbx*8]
mulsd xmm2, xmm3
mov rdx, rbx
cmp rbx, rsi
jg 0x14025a1a8
cmp r15, 4
jl 0x14025a184
mov r8, r13
mov r9, rsi
sub r9, rbx
sub r9, 3
shr r9, 2
inc r9
lea rdx, [rbx + r9*4]
nop dword [rax]
mov rax, qword [r8 - 0x10]
movapd xmm0, xmm2
mulsd xmm0, qword [rax + rbx*8]
addsd xmm0, qword [rax + rcx*8]
movsd qword [rax + rcx*8], xmm0
mov rax, qword [r8 - 8]
movapd xmm0, xmm2
mulsd xmm0, qword [rax + rbx*8]
addsd xmm0, qword [rax + rcx*8]
movsd qword [rax + rcx*8], xmm0
mov rax, qword [r8]
movapd xmm0, xmm2
mulsd xmm0, qword [rax + rbx*8]
addsd xmm0, qword [rax + rcx*8]
movsd qword [rax + rcx*8], xmm0
mov rax, qword [r8 + 8]
movapd xmm0, xmm2
mulsd xmm0, qword [rax + rbx*8]
addsd xmm0, qword [rax + rcx*8]
movsd qword [rax + rcx*8], xmm0
add r8, 0x20
dec r9
jne 0x14025a120
cmp rdx, rsi
jg 0x14025a1a8
mov rax, qword [r12 + rdx*8]
movapd xmm0, xmm2
mulsd xmm0, qword [rax + rbx*8]
addsd xmm0, qword [rax + rcx*8]
movsd qword [rax + rcx*8], xmm0
inc rdx
cmp rdx, rsi
jle 0x14025a189
inc rcx
cmp rcx, r14
xorpd xmm2, xmm2
mov r9, qword [rbp + 0x110]
jle 0x14025a034
mov rdx, rbx
cmp rbx, rsi
jg 0x14025a25f
cmp r15, 4
jl 0x14025a240
mov rcx, r13
mov r8, rsi
sub r8, rbx
sub r8, 3
shr r8, 2
inc r8
lea rdx, [rbx + r8*4]
nop dword [rax]
mov rax, qword [rcx - 0x10]
movapd xmm0, xmm3
mulsd xmm0, qword [rax + rbx*8]
movsd qword [rax + rbx*8], xmm0
mov rax, qword [rcx - 8]
movapd xmm0, xmm3
mulsd xmm0, qword [rax + rbx*8]
movsd qword [rax + rbx*8], xmm0
mov rax, qword [rcx]
movapd xmm0, xmm3
mulsd xmm0, qword [rax + rbx*8]
movsd qword [rax + rbx*8], xmm0
mov rax, qword [rcx + 8]
movapd xmm0, xmm3
mulsd xmm0, qword [rax + rbx*8]
movsd qword [rax + rbx*8], xmm0
add rcx, 0x20
dec r8
jne 0x14025a1f0
cmp rdx, rsi
jg 0x14025a25f
mov rax, qword [r12 + rdx*8]
movapd xmm0, xmm3
mulsd xmm0, qword [rax + rbx*8]
movsd qword [rax + rbx*8], xmm0
inc rdx
cmp rdx, rsi
jle 0x14025a245
mov rax, qword [r13 - 0x10]
movsd xmm0, qword [rax + rbx*8]
addsd xmm0, xmm15
movsd qword [rax + rbx*8], xmm0
dec rbx
dec rdi
inc r15
dec qword [rbp + 0x118]
mov r9, qword [rbp + 0x110]
mov rdx, qword [rsp + 0x68]
mov r8, qword [rsp + 0x38]
jne 0x140259f10
mov r13d, dword [rbp + 0x108]
mov r10, r14
mov qword [rsp + 0x38], r14
cmp r13d, 1
jl 0x14025ade7
mov r8d, 1
mov dword [rbp + 0x110], r8d
mov rdi, qword [rsp + 0x40]
mov r9, qword [rsp + 0x48]
nop dword [rax]
mov edx, r13d
mov dword [rsp + 0x50], edx
mov rbx, r10
cmp r10, 1
jl 0x14025a343
lea rax, [rdi + r10*8]
mov rcx, r9
sub rcx, rdi
nop word [rax + rax]
lea r11d, [rdx - 1]
mov dword [rbp + 0x118], r11d
movsd xmm0, qword [rax]
andpd xmm0, xmm13
addsd xmm0, xmm9
ucomisd xmm0, xmm9
jp 0x14025a316
je 0x14025a5dc
movsd xmm0, qword [rcx + rax - 8]
andpd xmm0, xmm13
addsd xmm0, xmm9
ucomisd xmm0, xmm9
jp 0x14025a32f
je 0x14025a343
mov edx, r11d
mov dword [rsp + 0x50], edx
dec rbx
sub rax, 8
cmp rbx, 1
jge 0x14025a2f0
movapd xmm5, xmm2
movapd xmm4, xmm15
mov rdi, rbx
cmp rbx, r10
jg 0x14025a5d7
mov r15, qword [rsp + 0x40]
mov r14, qword [rsp + 0x48]
sub r15, r14
nop word [rax + rax]
lea r13, [r14 + rdi*8]
movsd xmm0, qword [r15 + r13]
movapd xmm8, xmm0
mulsd xmm8, xmm4
mulsd xmm0, xmm5
movsd qword [r15 + r13], xmm0
movapd xmm7, xmm8
andpd xmm7, xmm13
movapd xmm0, xmm7
addsd xmm0, xmm9
ucomisd xmm0, xmm9
jp 0x14025a3ae
je 0x14025a5bc
movsd xmm9, qword [r13]
movapd xmm6, xmm9
andpd xmm6, xmm13
comisd xmm7, xmm6
jbe 0x14025a3e0
divsd xmm6, xmm7
mulsd xmm6, xmm6
addsd xmm6, xmm15
movapd xmm0, xmm6
call sub.MSVCR100.dll_sqrt
mulsd xmm0, xmm7
jmp 0x14025a408
ucomisd xmm6, xmm2
jp 0x14025a3ee
jne 0x14025a3ee
movapd xmm0, xmm2
jmp 0x14025a40d
divsd xmm7, xmm6
mulsd xmm7, xmm7
addsd xmm7, xmm15
movapd xmm0, xmm7
call sub.MSVCR100.dll_sqrt
mulsd xmm0, xmm6
mov r10, qword [rsp + 0x38]
movsd qword [r13], xmm0
movapd xmm4, xmm15
divsd xmm4, xmm0
movapd xmm5, xmm4
mulsd xmm5, xmm9
mulsd xmm4, xmm8
xorpd xmm4, xmm14
mov ecx, 1
cmp rsi, 4
jl 0x14025a556
movsxd r11, dword [rbp + 0x118]
lea r9, [r12 + 0x18]
mov r8, rsi
shr r8, 2
lea rcx, [r8*4 + 1]
nop dword [rax]
mov rax, qword [r9 - 0x10]
movsd xmm3, qword [rax + r11*8]
movsd xmm2, qword [rax + rdi*8]
movapd xmm1, xmm3
mulsd xmm1, xmm5
movapd xmm0, xmm2
mulsd xmm0, xmm4
addsd xmm1, xmm0
movsd qword [rax + r11*8], xmm1
mulsd xmm2, xmm5
mulsd xmm3, xmm4
subsd xmm2, xmm3
movsd qword [rax + rdi*8], xmm2
mov rax, qword [r9 - 8]
movsd xmm3, qword [rax + r11*8]
movsd xmm2, qword [rax + rdi*8]
movapd xmm1, xmm3
mulsd xmm1, xmm5
movapd xmm0, xmm2
mulsd xmm0, xmm4
addsd xmm1, xmm0
movsd qword [rax + r11*8], xmm1
mulsd xmm2, xmm5
mulsd xmm3, xmm4
subsd xmm2, xmm3
movsd qword [rax + rdi*8], xmm2
mov rax, qword [r9]
movsd xmm3, qword [rax + r11*8]
movsd xmm2, qword [rax + rdi*8]
movapd xmm1, xmm3
mulsd xmm1, xmm5
movapd xmm0, xmm2
mulsd xmm0, xmm4
addsd xmm1, xmm0
movsd qword [rax + r11*8], xmm1
mulsd xmm2, xmm5
mulsd xmm3, xmm4
subsd xmm2, xmm3
movsd qword [rax + rdi*8], xmm2
mov rax, qword [r9 + 8]
movsd xmm3, qword [rax + r11*8]
movsd xmm2, qword [rax + rdi*8]
movapd xmm1, xmm3
mulsd xmm1, xmm5
movapd xmm0, xmm2
mulsd xmm0, xmm4
addsd xmm1, xmm0
movsd qword [rax + r11*8], xmm1
mulsd xmm2, xmm5
mulsd xmm3, xmm4
subsd xmm2, xmm3
movsd qword [rax + rdi*8], xmm2
add r9, 0x20
dec r8
jne 0x14025a460
jmp 0x14025a55d
mov r11d, dword [rbp + 0x118]
cmp rcx, rsi
jg 0x14025a5a5
movsxd rdx, r11d
mov rax, qword [r12 + rcx*8]
movsd xmm3, qword [rax + rdx*8]
movsd xmm2, qword [rax + rdi*8]
movapd xmm1, xmm3
mulsd xmm1, xmm5
movapd xmm0, xmm2
mulsd xmm0, xmm4
addsd xmm1, xmm0
movsd qword [rax + rdx*8], xmm1
mulsd xmm2, xmm5
mulsd xmm3, xmm4
subsd xmm2, xmm3
movsd qword [rax + rdi*8], xmm2
inc rcx
cmp rcx, rsi
jle 0x14025a565
inc rdi
cmp rdi, r10
xorpd xmm2, xmm2
movsd xmm9, qword [rsp + 0x58]
jle 0x14025a370
mov r14, qword [rbp - 0x40]
mov edx, dword [rsp + 0x50]
mov r8d, dword [rbp + 0x110]
mov r9, qword [rsp + 0x48]
mov r13d, dword [rbp + 0x108]
mov rdi, qword [rsp + 0x40]
movsd xmm11, qword [r9 + r10*8]
cmp edx, r13d
je 0x14025ac3e
cmp r8d, 0x1e
je 0x14025ad26
lea r15, [rbx*8]
mov qword [rsp + 0x60], r15
movsd xmm10, qword [r15 + r9]
lea eax, [r13 - 1]
mov dword [rbp + 0x118], eax
lea r13, [r10 - 1]
movsd xmm9, qword [r9 + r13*8]
movsd xmm12, qword [rdi + r10*8]
movapd xmm8, xmm9
subsd xmm8, xmm11
movapd xmm0, xmm11
addsd xmm0, xmm9
mulsd xmm8, xmm0
movsd xmm1, qword [rdi + r13*8]
subsd xmm1, xmm12
movapd xmm0, xmm12
addsd xmm0, qword [rdi + r13*8]
mulsd xmm1, xmm0
addsd xmm8, xmm1
movapd xmm0, xmm12
mulsd xmm0, qword [0x140329dc0]
mulsd xmm0, xmm9
divsd xmm8, xmm0
movapd xmm7, xmm8
andpd xmm7, xmm13
movapd xmm6, xmm15
andpd xmm6, xmm13
comisd xmm7, xmm6
jbe 0x14025a6a7
divsd xmm6, xmm7
mulsd xmm6, xmm6
addsd xmm6, xmm15
movapd xmm0, xmm6
call sub.MSVCR100.dll_sqrt
mulsd xmm0, xmm7
jmp 0x14025a6d3
xorpd xmm2, xmm2
ucomisd xmm6, xmm2
jp 0x14025a6b9
jne 0x14025a6b9
movapd xmm0, xmm2
jmp 0x14025a6e8
divsd xmm7, xmm6
mulsd xmm7, xmm7
addsd xmm7, xmm15
movapd xmm0, xmm7
call sub.MSVCR100.dll_sqrt
mulsd xmm0, xmm6
mov r9, qword [rsp + 0x48]
mov r8d, dword [rbp + 0x110]
mov r10, qword [rsp + 0x38]
xorpd xmm2, xmm2
andpd xmm0, xmm13
comisd xmm2, xmm8
jbe 0x14025a6f9
xorpd xmm0, xmm14
addsd xmm0, xmm8
divsd xmm9, xmm0
subsd xmm9, xmm12
mulsd xmm9, xmm12
movapd xmm1, xmm10
subsd xmm1, xmm11
movapd xmm0, xmm10
addsd xmm0, xmm11
mulsd xmm1, xmm0
addsd xmm9, xmm1
divsd xmm9, xmm10
movapd xmm6, xmm15
movapd xmm7, xmm15
cmp rbx, r13
jg 0x14025ac03
sub rdi, r9
mov r15, qword [rsp + 0x40]
nop word [rax + rax]
lea rax, [r9 + rbx*8 + 8]
movsd xmm11, qword [rdi + rax]
movsd xmm14, qword [rax]
mulsd xmm6, xmm11
mulsd xmm11, xmm7
movapd xmm8, xmm9
andpd xmm8, xmm13
movapd xmm7, xmm6
andpd xmm7, xmm13
comisd xmm8, xmm7
jbe 0x14025a7a2
divsd xmm7, xmm8
mulsd xmm7, xmm7
addsd xmm7, xmm15
movapd xmm0, xmm7
call sub.MSVCR100.dll_sqrt
mulsd xmm0, xmm8
jmp 0x14025a7cd
ucomisd xmm7, xmm2
jp 0x14025a7b0
jne 0x14025a7b0
movapd xmm0, xmm2
jmp 0x14025a7cd
divsd xmm8, xmm7
mulsd xmm8, xmm8
addsd xmm8, xmm15
movapd xmm0, xmm8
call sub.MSVCR100.dll_sqrt
mulsd xmm0, xmm7
movsd qword [r15 + rbx*8], xmm0
movapd xmm7, xmm9
divsd xmm7, xmm0
divsd xmm6, xmm0
movapd xmm12, xmm10
mulsd xmm12, xmm7
movapd xmm0, xmm6
mulsd xmm0, xmm11
addsd xmm12, xmm0
movapd xmm13, xmm7
mulsd xmm13, xmm11
mulsd xmm10, xmm6
subsd xmm13, xmm10
movapd xmm10, xmm14
mulsd xmm10, xmm6
mulsd xmm14, xmm7
mov ecx, 1
mov r9, qword [rsp + 0x30]
cmp r14, 4
jl 0x14025a944
lea r8, [r9 + 0x18]
mov rdx, r14
shr rdx, 2
lea rcx, [rdx*4 + 1]
nop word [rax + rax]
mov rax, qword [r8 - 0x10]
movsd xmm3, qword [rax + rbx*8]
movsd xmm2, qword [rax + rbx*8 + 8]
movapd xmm1, xmm3
mulsd xmm1, xmm7
movapd xmm0, xmm2
mulsd xmm0, xmm6
addsd xmm1, xmm0
movsd qword [rax + rbx*8], xmm1
mulsd xmm2, xmm7
mulsd xmm3, xmm6
subsd xmm2, xmm3
movsd qword [rax + rbx*8 + 8], xmm2
mov rax, qword [r8 - 8]
movsd xmm3, qword [rax + rbx*8]
movsd xmm2, qword [rax + rbx*8 + 8]
movapd xmm1, xmm3
mulsd xmm1, xmm7
movapd xmm0, xmm2
mulsd xmm0, xmm6
addsd xmm1, xmm0
movsd qword [rax + rbx*8], xmm1
mulsd xmm2, xmm7
mulsd xmm3, xmm6
subsd xmm2, xmm3
movsd qword [rax + rbx*8 + 8], xmm2
mov rax, qword [r8]
movsd xmm3, qword [rax + rbx*8]
movsd xmm2, qword [rax + rbx*8 + 8]
movapd xmm1, xmm3
mulsd xmm1, xmm7
movapd xmm0, xmm2
mulsd xmm0, xmm6
addsd xmm1, xmm0
movsd qword [rax + rbx*8], xmm1
mulsd xmm2, xmm7
mulsd xmm3, xmm6
subsd xmm2, xmm3
movsd qword [rax + rbx*8 + 8], xmm2
mov rax, qword [r8 + 8]
movsd xmm3, qword [rax + rbx*8]
movsd xmm2, qword [rax + rbx*8 + 8]
movapd xmm1, xmm3
mulsd xmm1, xmm7
movapd xmm0, xmm2
mulsd xmm0, xmm6
addsd xmm1, xmm0
movsd qword [rax + rbx*8], xmm1
mulsd xmm2, xmm7
mulsd xmm3, xmm6
subsd xmm2, xmm3
movsd qword [rax + rbx*8 + 8], xmm2
add r8, 0x20
dec rdx
jne 0x14025a850
cmp rcx, r14
jg 0x14025a98b
mov rax, qword [r9 + rcx*8]
movsd xmm3, qword [rax + rbx*8]
movsd xmm2, qword [rax + rbx*8 + 8]
movapd xmm1, xmm3
mulsd xmm1, xmm7
movapd xmm0, xmm2
mulsd xmm0, xmm6
addsd xmm1, xmm0
movsd qword [rax + rbx*8], xmm1
mulsd xmm2, xmm7
mulsd xmm3, xmm6
subsd xmm2, xmm3
movsd qword [rax + rbx*8 + 8], xmm2
inc rcx
cmp rcx, r14
jle 0x14025a949
movapd xmm9, xmm12
andpd xmm9, xmmword [0x14032a130]
movapd xmm8, xmm10
andpd xmm8, xmmword [0x14032a130]
comisd xmm9, xmm8
jbe 0x14025a9d3
divsd xmm8, xmm9
mulsd xmm8, xmm8
addsd xmm8, xmm15
movapd xmm0, xmm8
call sub.MSVCR100.dll_sqrt
mulsd xmm0, xmm9
xorpd xmm11, xmm11
jmp 0x14025aa06
xorpd xmm11, xmm11
ucomisd xmm8, xmm11
jp 0x14025a9e8
jne 0x14025a9e8
movapd xmm0, xmm11
jmp 0x14025aa06
divsd xmm9, xmm8
mulsd xmm9, xmm9
addsd xmm9, xmm15
movapd xmm0, xmm9
call sub.MSVCR100.dll_sqrt
mulsd xmm0, xmm8
mov r9, qword [rsp + 0x48]
movsd qword [r9 + rbx*8], xmm0
ucomisd xmm0, xmm11
jp 0x14025aa1a
je 0x14025aa31
movapd xmm6, xmm15
divsd xmm6, xmm0
movapd xmm7, xmm6
mulsd xmm7, xmm12
mulsd xmm6, xmm10
movapd xmm9, xmm14
mulsd xmm9, xmm6
movapd xmm0, xmm7
mulsd xmm0, xmm13
addsd xmm9, xmm0
movapd xmm10, xmm14
mulsd xmm10, xmm7
movapd xmm0, xmm6
mulsd xmm0, xmm13
subsd xmm10, xmm0
mov ecx, 1
cmp rsi, 4
jl 0x14025ab84
lea r8, [r12 + 0x18]
mov rdx, rsi
shr rdx, 2
lea rcx, [rdx*4 + 1]
nop word [rax + rax]
mov rax, qword [r8 - 0x10]
movsd xmm3, qword [rax + rbx*8]
movsd xmm2, qword [rax + rbx*8 + 8]
movapd xmm1, xmm3
mulsd xmm1, xmm7
movapd xmm0, xmm2
mulsd xmm0, xmm6
addsd xmm1, xmm0
movsd qword [rax + rbx*8], xmm1
mulsd xmm2, xmm7
mulsd xmm3, xmm6
subsd xmm2, xmm3
movsd qword [rax + rbx*8 + 8], xmm2
mov rax, qword [r8 - 8]
movsd xmm3, qword [rax + rbx*8]
movsd xmm2, qword [rax + rbx*8 + 8]
movapd xmm1, xmm3
mulsd xmm1, xmm7
movapd xmm0, xmm2
mulsd xmm0, xmm6
addsd xmm1, xmm0
movsd qword [rax + rbx*8], xmm1
mulsd xmm2, xmm7
mulsd xmm3, xmm6
subsd xmm2, xmm3
movsd qword [rax + rbx*8 + 8], xmm2
mov rax, qword [r8]
movsd xmm3, qword [rax + rbx*8]
movsd xmm2, qword [rax + rbx*8 + 8]
movapd xmm1, xmm3
mulsd xmm1, xmm7
movapd xmm0, xmm2
mulsd xmm0, xmm6
addsd xmm1, xmm0
movsd qword [rax + rbx*8], xmm1
mulsd xmm2, xmm7
mulsd xmm3, xmm6
subsd xmm2, xmm3
movsd qword [rax + rbx*8 + 8], xmm2
mov rax, qword [r8 + 8]
movsd xmm3, qword [rax + rbx*8]
movsd xmm2, qword [rax + rbx*8 + 8]
movapd xmm1, xmm3
mulsd xmm1, xmm7
movapd xmm0, xmm2
mulsd xmm0, xmm6
addsd xmm1, xmm0
movsd qword [rax + rbx*8], xmm1
mulsd xmm2, xmm7
mulsd xmm3, xmm6
subsd xmm2, xmm3
movsd qword [rax + rbx*8 + 8], xmm2
add r8, 0x20
dec rdx
jne 0x14025aa90
cmp rcx, rsi
jg 0x14025abcb
mov rax, qword [r12 + rcx*8]
movsd xmm3, qword [rax + rbx*8]
movsd xmm2, qword [rax + rbx*8 + 8]
movapd xmm1, xmm3
mulsd xmm1, xmm7
movapd xmm0, xmm2
mulsd xmm0, xmm6
addsd xmm1, xmm0
movsd qword [rax + rbx*8], xmm1
mulsd xmm2, xmm7
mulsd xmm3, xmm6
subsd xmm2, xmm3
movsd qword [rax + rbx*8 + 8], xmm2
inc rcx
cmp rcx, rsi
jle 0x14025ab89
inc rbx
cmp rbx, r13
movsd xmm13, qword [0x14032a130]
xorpd xmm2, xmm2
jle 0x14025a750
movsd xmm14, qword [0x140329d10]
mov r10, qword [rsp + 0x38]
mov r15, qword [rsp + 0x60]
mov r8d, dword [rbp + 0x110]
mov rdi, qword [rsp + 0x40]
mov qword [r15 + rdi], 0
movsd qword [rdi + r10*8], xmm9
movsd qword [r9 + r10*8], xmm10
inc r8d
mov dword [rbp + 0x110], r8d
cmp r8d, 0x1e
movsd xmm9, qword [rsp + 0x58]
mov r13d, dword [rbp + 0x108]
jle 0x14025a2d0
jmp 0x14025acfe
comisd xmm2, xmm11
jbe 0x14025acfe
xorpd xmm11, xmm14
movsd qword [r9 + r10*8], xmm11
mov edx, 1
mov r9, qword [rsp + 0x30]
cmp r14, 4
jl 0x14025acdc
lea rcx, [r9 + 0x18]
mov r8, r14
shr r8, 2
lea rdx, [r8*4 + 1]
nop word [rax + rax]
mov rax, qword [rcx - 0x10]
movsd xmm0, qword [rax + r10*8]
xorpd xmm0, xmm14
movsd qword [rax + r10*8], xmm0
mov rax, qword [rcx - 8]
movsd xmm0, qword [rax + r10*8]
xorpd xmm0, xmm14
movsd qword [rax + r10*8], xmm0
mov rax, qword [rcx]
movsd xmm0, qword [rax + r10*8]
xorpd xmm0, xmm14
movsd qword [rax + r10*8], xmm0
mov rax, qword [rcx + 8]
movsd xmm0, qword [rax + r10*8]
xorpd xmm0, xmm14
movsd qword [rax + r10*8], xmm0
add rcx, 0x20
dec r8
jne 0x14025ac80
cmp rdx, r14
jg 0x14025acfe
mov rax, qword [r9 + rdx*8]
movsd xmm0, qword [rax + r10*8]
xorpd xmm0, xmm14
movsd qword [rax + r10*8], xmm0
inc rdx
cmp rdx, r14
jle 0x14025ace1
dec r13d
mov dword [rbp + 0x108], r13d
dec r10
mov qword [rsp + 0x38], r10
cmp r13d, 1
jl 0x14025ade7
movsd xmm9, qword [rsp + 0x58]
jmp 0x14025a2b2
lea rdx, str.NR_SVD::decompose_:__No_convergence_in_30_iterations.
lea rcx, [rbp - 0x38]
call fcn.1401a6820
nop
mov rcx, qword [rbp + 0x100]
mov byte [rcx + 8], 0
movsxd rax, dword [rbp - 8]
mov rdx, qword [rbp - 0x18]
sub rdx, rax
add rcx, 0x10
call fcn.1401a6670
nop
lea rax, vtable.DL_Array_char_.0
mov qword [rbp - 0x38], rax
lea rax, vtable.DL_Block_char_.0
mov qword [rbp - 0x28], rax
lea rcx, [rbp - 0x28]
call fcn.1400b2ab0
nop
lea rbx, vtable.DL_Subject.0
mov qword [rbp - 0x38], rbx
cmp byte [rbp - 0x30], 0
je 0x14025ad9c
call fcn.14019a3c0
mov r8, qword [rax]
lea rdx, [rbp - 0x38]
mov rcx, rax
call qword [rreloc.OLEAUT32.dll_VariantClear + 8]
nop
lea rax, [rbp - 0x80]
mov qword [rbp + 0x100], rax
lea rax, vtable.DL_Array_double_.0
mov qword [rbp - 0x80], rax
lea rax, vtable.DL_Block_double_.0
mov qword [rbp - 0x70], rax
lea rcx, [rbp - 0x70]
call fcn.140074b20
nop
mov qword [rbp - 0x80], rbx
cmp byte [rbp - 0x78], 0
je 0x14025ade5
call fcn.14019a3c0
mov r8, qword [rax]
lea rdx, [rbp - 0x80]
mov rcx, rax
call qword [rreloc.OLEAUT32.dll_VariantClear + 8]
nop
jmp 0x14025ae53
mov rcx, qword [rbp + 0x100]
mov byte [rcx + 8], 1
add rcx, 0x10
lea rdx, [0x140323a58]
call fcn.1401a6670
nop
lea rax, [rbp - 0x80]
mov qword [rbp + 0x100], rax
lea rax, vtable.DL_Array_double_.0
mov qword [rbp - 0x80], rax
lea rax, vtable.DL_Block_double_.0
mov qword [rbp - 0x70], rax
lea rcx, [rbp - 0x70]
call fcn.140074b20
nop
lea rbx, vtable.DL_Subject.0
mov qword [rbp - 0x80], rbx
cmp byte [rbp - 0x78], 0
je 0x14025ae53
call fcn.14019a3c0
mov r8, qword [rax]
lea rdx, [rbp - 0x80]
mov rcx, rax
call qword [rreloc.OLEAUT32.dll_VariantClear + 8]
nop
cmp byte [rsp + 0x78], 0
mov qword [rsp + 0x70], rbx
je 0x14025ae73
call fcn.14019a3c0
mov r8, qword [rax]
lea rdx, [rsp + 0x70]
mov rcx, rax
call qword [rreloc.OLEAUT32.dll_VariantClear + 8]
lea r11, [rsp + 0x1b8]
movaps xmm6, xmmword [r11 - 0x18]
movaps xmm7, xmmword [r11 - 0x28]
movaps xmm8, xmmword [r11 - 0x38]
movaps xmm9, xmmword [r11 - 0x48]
movaps xmm10, xmmword [r11 - 0x58]
movaps xmm11, xmmword [r11 - 0x68]
movaps xmm12, xmmword [r11 - 0x78]
movaps xmm13, xmmword [r11 - 0x88]
movaps xmm14, xmmword [r11 - 0x98]
movaps xmm15, xmmword [r11 - 0xa8]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret