Function at 0x18003cc80
Capabilities:
Encode data using xor

Disassembly:
mov r11, rsp
mov dword [r11 + 0x20], r9d
mov qword [r11 + 0x18], r8
mov qword [r11 + 0x10], rdx
mov qword [r11 + 8], rcx
push rbp
push r12
push r13
lea rbp, [r11 - 0x328]
sub rsp, 0x410
imul eax, r9d, 0x156
mov r13, rcx
mov ecx, r9d
mov r12, r8
mov r8, rdx
mov dword [rsp + 0x30], ecx
mov dword [rsp + 0x70], eax
cmp r9d, eax
ja 0x18003db61
mov qword [r11 - 0x20], rbx
mov ebx, dword [rsp + 0x40]
mov qword [r11 - 0x28], rsi
mov rsi, qword [rsp + 0x60]
mov qword [r11 - 0x30], rdi
mov rdi, qword [rsp + 0x60]
mov qword [r11 - 0x38], r14
mov qword [r11 - 0x40], r15
movaps xmmword [r11 - 0x58], xmm6
movsd xmm6, qword [rsp + 0x60]
movaps xmmword [r11 - 0x68], xmm7
movsd xmm7, qword [rsp + 0x60]
movaps xmmword [r11 - 0x78], xmm8
movsd xmm8, qword [rsp + 0x60]
movaps xmmword [r11 - 0x88], xmm9
movsd xmm9, qword [0x18009f4a8]
nop
cmp ecx, 0xd95
ja 0x18003d35b
je 0x18003cf7f
cmp ecx, 0xb7
ja 0x18003cedd
je 0x18003ced3
mov eax, ecx
sub eax, 0x13
je 0x18003ceb3
sub eax, 0x1c
je 0x18003cdfb
sub eax, 2
je 0x18003cde2
cmp eax, 0x6b
jne 0x18003daf3
movdqu xmm1, xmmword [r13]
xor r15d, r15d
mov r14, r8
cmp dword [r12], r15d
jbe 0x18003cdd7
nop dword [rax]
mov rax, r14
lea r9, [rsp + 0x60]
xor r8d, r8d
lea rcx, [rbp - 0x70]
mov edx, 0x8b
add r14, 0x10
movdqu xmm0, xmmword [rax]
mov rax, qword [rbp + 0x350]
mov qword [rsp + 0x20], rax
pxor xmm0, xmm1
movdqa xmmword [rsp + 0x60], xmm0
call fcn.18001d6e0
add r15d, 0x10
movdqu xmm1, xmmword [rax]
cmp r15d, dword [r12]
jb 0x18003cd80
mov ecx, dword [rsp + 0x30]
mov r8, qword [rbp + 0x338]
mov r9d, dword [rbp + 0x348]
movdqu xmmword [r13], xmm1
jmp 0x18003daf3
mov rax, qword [rbp + 0x350]
cmp qword [rax], 0xffffffffffffffff
setne byte [rsp + 0x40]
mov ebx, dword [rsp + 0x40]
jmp 0x18003daf3
mov r15, qword [rbp + 0x350]
test r15, r15
je 0x18003db08
mov rax, qword [r15]
test rax, rax
je 0x18003db08
mov rcx, qword [rax + 0xeb48]
test rcx, rcx
je 0x18003ce39
call fcn.18006f74c
mov rax, qword [r15]
mov qword [rax + 0xeb48], 0
mov rax, qword [r15]
mov rcx, qword [rax + 0xeb50]
test rcx, rcx
je 0x18003ce5b
call fcn.18006f74c
mov rax, qword [r15]
mov qword [rax + 0xeb50], 0
mov rax, qword [r15]
mov rcx, qword [rax + 0xeb58]
test rcx, rcx
je 0x18003ce7d
call fcn.18006f74c
mov rax, qword [r15]
mov qword [rax + 0xeb58], 0
mov rax, qword [r15]
mov rcx, qword [rax + 0xeb60]
test rcx, rcx
je 0x18003ce9c
call fcn.18006f74c
mov rax, qword [r15]
mov qword [rax + 0xeb60], 0
mov ecx, dword [rsp + 0x30]
mov r8, qword [rbp + 0x338]
mov r9d, dword [rbp + 0x348]
jmp 0x18003daf3
movss xmm0, dword [r13]
xor ebx, ebx
mov rax, qword [rbp + 0x350]
cvtps2pd xmm0, xmm0
mov dword [rsp + 0x40], ebx
movsd qword [rax + 0x30], xmm0
jmp 0x18003daf3
mov rdi, qword [rsp + 0x60]
jmp 0x18003daf3
mov eax, ecx
sub eax, 0x169
je 0x18003db08
sub eax, 0x214
je 0x18003cf3b
sub eax, 0x26
je 0x18003db08
cmp eax, 0x328
jne 0x18003daf3
mov r15, qword [rbp + 0x350]
mov rcx, qword [r15]
test rcx, rcx
je 0x18003d352
call fcn.18006f74c
mov ecx, dword [rsp + 0x30]
mov r8, qword [rbp + 0x338]
mov r9d, dword [rbp + 0x348]
mov qword [r15], 0
jmp 0x18003daf3
mov r15, qword [rbp + 0x350]
mov rax, qword [r15]
mov rcx, qword [rax + 0xeb68]
test rcx, rcx
je 0x18003d352
call fcn.18006f74c
mov rax, qword [r15]
mov ecx, dword [rsp + 0x30]
mov r8, qword [rbp + 0x338]
mov r9d, dword [rbp + 0x348]
mov qword [rax + 0xeb68], 0
jmp 0x18003daf3
movsxd rcx, dword [r8]
mov r15, qword [rbp + 0x350]
mov eax, dword [r15 + rcx*4 + 0x3008]
shl eax, 8
movsxd rdx, eax
movsxd rax, dword [r15 + rcx*4 + 0x3000]
add rdx, rax
shl rcx, 9
movsx eax, word [r13]
add rdx, rcx
movd xmm0, eax
cvtdq2pd xmm0, xmm0
mulsd xmm0, xmm9
movsd qword [r15 + rdx*8 + 0x7c0], xmm0
movsx eax, word [r13 + 2]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
mulsd xmm1, xmm9
movsd qword [r15 + rdx*8 + 0x780], xmm1
movsx eax, word [r13 + 4]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
mulsd xmm0, xmm9
movsd qword [r15 + rdx*8 + 0x740], xmm0
movsx eax, word [r13 + 6]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
mulsd xmm1, xmm9
movsd qword [r15 + rdx*8 + 0x700], xmm1
movsx eax, word [r13 + 8]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
mulsd xmm0, xmm9
movsd qword [r15 + rdx*8 + 0x6c0], xmm0
movsx eax, word [r13 + 0xa]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
mulsd xmm1, xmm9
movsd qword [r15 + rdx*8 + 0x680], xmm1
movsx eax, word [r13 + 0xc]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
mulsd xmm0, xmm9
movsd qword [r15 + rdx*8 + 0x640], xmm0
movsx eax, word [r13 + 0xe]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
mulsd xmm1, xmm9
movsd qword [r15 + rdx*8 + 0x600], xmm1
movsx eax, word [r13 + 0x10]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
mulsd xmm0, xmm9
movsd qword [r15 + rdx*8 + 0x5c0], xmm0
movsx eax, word [r13 + 0x12]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
mulsd xmm1, xmm9
movsd qword [r15 + rdx*8 + 0x580], xmm1
movsx eax, word [r13 + 0x14]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
mulsd xmm0, xmm9
movsd qword [r15 + rdx*8 + 0x540], xmm0
movsx eax, word [r13 + 0x16]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
mulsd xmm1, xmm9
movsd qword [r15 + rdx*8 + 0x500], xmm1
movsx eax, word [r13 + 0x18]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
mulsd xmm0, xmm9
movsd qword [r15 + rdx*8 + 0x4c0], xmm0
movsx eax, word [r13 + 0x1a]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
mulsd xmm1, xmm9
movsd qword [r15 + rdx*8 + 0x480], xmm1
movsx eax, word [r13 + 0x1c]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
mulsd xmm0, xmm9
movsd qword [r15 + rdx*8 + 0x440], xmm0
movsx eax, word [r13 + 0x1e]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
mulsd xmm1, xmm9
movsd qword [r15 + rdx*8 + 0x400], xmm1
movsx eax, word [r13 + 0x20]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
mulsd xmm0, xmm9
movsd qword [r15 + rdx*8 + 0x3c0], xmm0
movsx eax, word [r13 + 0x22]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
mulsd xmm1, xmm9
movsd qword [r15 + rdx*8 + 0x380], xmm1
movsx eax, word [r13 + 0x24]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
mulsd xmm0, xmm9
movsd qword [r15 + rdx*8 + 0x340], xmm0
movsx eax, word [r13 + 0x26]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
mulsd xmm1, xmm9
movsd qword [r15 + rdx*8 + 0x300], xmm1
movsx eax, word [r13 + 0x28]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
mulsd xmm0, xmm9
movsd qword [r15 + rdx*8 + 0x2c0], xmm0
movsx eax, word [r13 + 0x2a]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
mulsd xmm1, xmm9
movsd qword [r15 + rdx*8 + 0x280], xmm1
movsx eax, word [r13 + 0x2c]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
mulsd xmm0, xmm9
movsd qword [r15 + rdx*8 + 0x240], xmm0
movsx eax, word [r13 + 0x2e]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
mulsd xmm1, xmm9
movsd qword [r15 + rdx*8 + 0x200], xmm1
movsx eax, word [r13 + 0x30]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
mulsd xmm0, xmm9
movsd qword [r15 + rdx*8 + 0x1c0], xmm0
movsx eax, word [r13 + 0x32]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
mulsd xmm1, xmm9
movsd qword [r15 + rdx*8 + 0x180], xmm1
movsx eax, word [r13 + 0x34]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
mulsd xmm0, xmm9
movsd qword [r15 + rdx*8 + 0x140], xmm0
movsx eax, word [r13 + 0x36]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
mulsd xmm1, xmm9
movsd qword [r15 + rdx*8 + 0x100], xmm1
movsx eax, word [r13 + 0x38]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
mulsd xmm0, xmm9
movsd qword [r15 + rdx*8 + 0xc0], xmm0
movsx eax, word [r13 + 0x3a]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
mulsd xmm1, xmm9
movsd qword [r15 + rdx*8 + 0x80], xmm1
movsx eax, word [r13 + 0x3c]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
mulsd xmm0, xmm9
movsd qword [r15 + rdx*8 + 0x40], xmm0
movsx eax, word [r13 + 0x3e]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
mulsd xmm1, xmm9
movsd qword [r15 + rdx*8], xmm1
movsxd rdx, dword [r8]
mov eax, dword [r15 + rdx*4 + 0x3008]
shl eax, 8
movsxd rcx, eax
mov rax, rdx
shl rax, 9
add rcx, rax
lea rax, [r15 + rcx*8]
mov ecx, dword [r15 + rdx*4 + 0x3000]
mov qword [rsp + 0x78], rax
mov dword [rsp + 0x54], ecx
mov ecx, dword [rsp + 0x30]
jmp 0x18003daf3
movsxd rdx, dword [rsp + 0x54]
movsxd r14, dword [rsp + 0x38]
mov rax, rdx
movsxd r13, dword [rsp + 0x34]
movsxd r15, dword [rsp + 0x3c]
mov qword [rbp - 0x80], rdx
cmp ecx, 0x4deb
ja 0x18003d5fa
je 0x18003d491
cmp ecx, 0x1a73
je 0x18003d44d
cmp ecx, 0x2751
je 0x18003d42a
cmp ecx, 0x342f
je 0x18003d408
cmp ecx, 0x410d
jne 0x18003daec
lea eax, [rdx + 5]
and eax, 0x80000007
mov dword [rsp + 0x48], eax
jge 0x18003d3cd
dec eax
or eax, 0xfffffff8
inc eax
mov dword [rsp + 0x48], eax
lea eax, [rdx + 6]
and eax, 0x80000007
mov dword [rsp + 0x4c], eax
jge 0x18003d3e6
dec eax
or eax, 0xfffffff8
inc eax
mov dword [rsp + 0x4c], eax
lea eax, [rdx + 7]
and eax, 0x80000007
mov dword [rsp + 0x50], eax
jge 0x18003daec
dec eax
or eax, 0xfffffff8
inc eax
mov dword [rsp + 0x50], eax
jmp 0x18003daec
lea eax, [rdx + 4]
and eax, 0x80000007
mov dword [rsp + 0x44], eax
jge 0x18003daec
dec eax
or eax, 0xfffffff8
inc eax
mov dword [rsp + 0x44], eax
jmp 0x18003daec
add edx, 3
and edx, 0x80000007
mov dword [rsp + 0x38], edx
jge 0x18003daec
dec edx
or edx, 0xfffffff8
inc edx
mov dword [rsp + 0x38], edx
jmp 0x18003daec
lea r8d, [rdx + 1]
and r8d, 0x80000007
mov dword [rsp + 0x34], r8d
jge 0x18003d46e
dec r8d
or r8d, 0xfffffff8
inc r8d
mov dword [rsp + 0x34], r8d
add edx, 2
and edx, 0x80000007
mov dword [rsp + 0x3c], edx
jge 0x18003dae5
dec edx
or edx, 0xfffffff8
inc edx
mov dword [rsp + 0x3c], edx
jmp 0x18003dae5
movsxd r10, dword [rsp + 0x44]
xor edx, edx
movsxd r11, dword [rsp + 0x48]
movsxd r8, dword [rsp + 0x4c]
movsxd r9, dword [rsp + 0x50]
mov r12, qword [rsp + 0x78]
nop dword [rax]
mov ecx, 0xfc
nop word [rax + rax]
mov eax, ecx
sub eax, 0xfa
je 0x18003d557
sub eax, 1
je 0x18003d50a
cmp eax, 1
jne 0x18003d584
mov rax, qword [rbp - 0x80]
lea rdi, [0x180089990]
movsd xmm6, qword [r12 + r13*8]
add rdi, rdx
mov rsi, r12
movsd xmm0, qword [r12 + rax*8]
mulsd xmm6, qword [rdi + 0x200]
mulsd xmm0, qword [rdi]
addsd xmm6, xmm0
jmp 0x18003d584
movsd xmm1, qword [rsi + r15*8]
mulsd xmm1, qword [rdi + 0x400]
movsd xmm0, qword [rsi + r14*8]
mulsd xmm0, qword [rdi + 0x600]
addsd xmm1, xmm6
movaps xmm6, xmm1
movsd xmm1, qword [rsi + r10*8]
mulsd xmm1, qword [rdi + 0x800]
addsd xmm6, xmm0
movsd xmm0, qword [rsi + r11*8]
mulsd xmm0, qword [rdi + 0xa00]
addsd xmm6, xmm1
addsd xmm6, xmm0
jmp 0x18003d584
movsd xmm1, qword [rsi + r8*8]
mulsd xmm1, qword [rdi + 0xc00]
movsd xmm0, qword [rsi + r9*8]
mulsd xmm0, qword [rdi + 0xe00]
addsd xmm1, xmm6
movaps xmm6, xmm1
addsd xmm6, xmm0
movsd qword [rbp + rdx - 0x60], xmm6
dec ecx
cmp ecx, 0xf9
ja 0x18003d4c0
add r12, 0x40
add rdx, 8
cmp rdx, 0x100
jl 0x18003d4b0
mov rax, qword [rbp + 0x338]
mov rdx, qword [rbp + 0x350]
movsd xmm0, qword [rbp + 0x20]
mov r12, qword [rbp + 0x340]
movsxd rcx, dword [rax]
mov r9d, dword [rbp + 0x348]
mov r8, rcx
shl r8, 0xc
add r8, rdx
movsd qword [rbp + 0x1a0], xmm0
cmp dword [rdx + rcx*4 + 0x3008], 0
lea rax, [r8 + 0x800]
cmove r8, rax
mov qword [rsp + 0x78], r8
jmp 0x18003dae1
cmp ecx, 0x5ac9
je 0x18003da7e
cmp ecx, 0x67a7
je 0x18003d42a
cmp ecx, 0x7485
je 0x18003d88c
cmp ecx, 0x8163
jne 0x18003daec
movsd xmm1, qword [rbp + 0x198]
lea rcx, [rbp + 0x138]
movhpd xmm1, qword [rbp + 0x190]
mov eax, 0xe8
movups xmm0, xmmword [rbp + 0xa8]
subpd xmm0, xmm1
movsd xmm1, qword [rbp + 0x188]
movhpd xmm1, qword [rbp + 0x180]
movups xmmword [rbp + 0x228], xmm0
movups xmm0, xmmword [rbp + 0xb8]
subpd xmm0, xmm1
movsd xmm1, qword [rbp + 0x178]
movhpd xmm1, qword [rbp + 0x170]
movups xmmword [rbp + 0x238], xmm0
movups xmm0, xmmword [rbp + 0xc8]
subpd xmm0, xmm1
movsd xmm1, qword [rbp + 0x168]
movhpd xmm1, qword [rbp + 0x160]
movups xmmword [rbp + 0x248], xmm0
movups xmm0, xmmword [rbp + 0xd8]
subpd xmm0, xmm1
movsd xmm1, qword [rbp + 0xf0]
subsd xmm1, qword [rbp + 0x150]
movups xmmword [rbp + 0x258], xmm0
movsd xmm0, qword [rbp + 0xe8]
subsd xmm0, qword [rbp + 0x158]
movsd qword [rbp + 0x270], xmm1
movsd xmm1, qword [rbp + 0x100]
subsd xmm1, qword [rbp + 0x140]
movsd qword [rbp + 0x268], xmm0
movsd xmm0, qword [rbp + 0xf8]
subsd xmm0, qword [rbp + 0x148]
movsd qword [rbp + 0x280], xmm1
movsd qword [rbp + 0x278], xmm0
movsd xmm0, qword [rbp + rax + 0x20]
subsd xmm0, qword [rcx]
sub rcx, 8
movsd qword [rbp + rax + 0x1a0], xmm0
add rax, 8
cmp rax, 0x100
jl 0x18003d71e
mov r15, qword [rbp + 0x350]
lea r9, [r12 + 0x78]
mov r14d, 0xf
lea r10, [r12 + 0x80]
lea r11, [r15 + 0x2f00]
nop dword [rax]
nop word [rax + rax]
mov r8d, 0xfe
mov eax, r8d
sub eax, 0xfe
je 0x18003d7a8
sub eax, 1
je 0x18003d799
cmp eax, 1
jne 0x18003d806
movaps xmm0, xmm7
subsd xmm0, xmm8
movsd qword [r10], xmm0
jmp 0x18003d806
movaps xmm0, xmm8
addsd xmm0, xmm7
movsd qword [r9], xmm0
jmp 0x18003d806
xorps xmm7, xmm7
lea rcx, [rbp + 0x1a0]
xorps xmm8, xmm8
mov rax, r11
mov edx, 8
nop
movsd xmm0, qword [rcx]
mulsd xmm0, qword [rax]
addsd xmm7, xmm0
movsd xmm0, qword [rcx + 8]
mulsd xmm0, qword [rax + 8]
addsd xmm8, xmm0
movsd xmm0, qword [rcx + 0x10]
mulsd xmm0, qword [rax + 0x10]
addsd xmm7, xmm0
movsd xmm0, qword [rcx + 0x18]
mulsd xmm0, qword [rax + 0x18]
add rcx, 0x20
add rax, 0x20
addsd xmm8, xmm0
sub rdx, 1
jne 0x18003d7c0
inc r8d
cmp r8d, 0x101
jb 0x18003d776
sub r11, 0x100
add r10, 8
sub r9, 8
sub r14d, 1
jns 0x18003d770
mov r8, qword [rbp + 0x338]
mov r13, qword [rbp + 0x330]
mov r9d, dword [rbp + 0x348]
movsxd rcx, dword [r8]
mov eax, dword [r15 + rcx*4 + 0x3008]
dec eax
and eax, 1
mov dword [r15 + rcx*4 + 0x3008], eax
movsxd rcx, dword [r8]
cmp dword [r15 + rcx*4 + 0x3008], 1
jne 0x18003d352
mov eax, dword [r15 + rcx*4 + 0x3000]
dec eax
and eax, 7
mov dword [r15 + rcx*4 + 0x3000], eax
mov ecx, dword [rsp + 0x30]
jmp 0x18003daf3
lea r11d, [rdx + 4]
and r11d, 0x80000007
mov dword [rsp + 0x44], r11d
jge 0x18003d8ad
dec r11d
or r11d, 0xfffffff8
inc r11d
mov dword [rsp + 0x44], r11d
lea r10d, [rdx + 5]
and r10d, 0x80000007
mov dword [rsp + 0x48], r10d
jge 0x18003d8ce
dec r10d
or r10d, 0xfffffff8
inc r10d
mov dword [rsp + 0x48], r10d
lea r8d, [rdx + 6]
and r8d, 0x80000007
mov dword [rsp + 0x4c], r8d
jge 0x18003d8ef
dec r8d
or r8d, 0xfffffff8
inc r8d
mov dword [rsp + 0x4c], r8d
lea ecx, [rdx + 7]
and ecx, 0x80000007
mov dword [rsp + 0x50], ecx
jge 0x18003d909
dec ecx
or ecx, 0xfffffff8
inc ecx
mov dword [rsp + 0x50], ecx
movsxd rbx, dword [rsp + 0x3c]
xor r9d, r9d
movsxd r14, r10d
xor edx, edx
movsxd r15, r8d
lea r10, [rbp + 0x20]
mov r8, qword [rsp + 0x78]
movsxd r11, r11d
movsxd r12, ecx
nop dword [rax + rax]
mov ecx, 0x19
cmp ecx, 0x19
je 0x18003d9ea
cmp ecx, 0xaf0
je 0x18003d986
cmp ecx, 0x15c7
jne 0x18003da3c
lea rax, [r9 - 1]
movsd qword [rbp + rdx + 0xa0], xmm6
cmp rax, 0xf
mov rax, qword [rbp - 0x80]
ja 0x18003da3c
movsd xmm0, qword [rbp + rdx + 0x20]
addsd xmm0, qword [r10]
movsd qword [rbp + rdx + 0x1a0], xmm0
jmp 0x18003da3c
movsd xmm0, qword [rsi + r11*8]
mulsd xmm0, qword [rdi + 0x800]
movsxd r13, dword [rsp + 0x38]
movsd xmm1, qword [rsi + r13*8]
mulsd xmm1, qword [rdi + 0x600]
addsd xmm1, xmm6
movaps xmm6, xmm1
movsd xmm1, qword [rsi + r14*8]
mulsd xmm1, qword [rdi + 0xa00]
addsd xmm6, xmm0
movsd xmm0, qword [rsi + r15*8]
mulsd xmm0, qword [rdi + 0xc00]
addsd xmm6, xmm1
movsd xmm1, qword [rsi + r12*8]
mulsd xmm1, qword [rdi + 0xe00]
addsd xmm6, xmm0
addsd xmm6, xmm1
jmp 0x18003da37
movsd xmm6, qword [r8 + r13*8]
lea rdi, [0x180089990]
movsd xmm0, qword [r8 + rax*8]
lea r13, [0x180089990]
mulsd xmm6, qword [rdx + r13 + 0x300]
add rdi, 0x100
add rdi, rdx
mov rsi, r8
mulsd xmm0, qword [rdi]
addsd xmm6, xmm0
movsd xmm0, qword [r8 + rbx*8]
mulsd xmm0, qword [rdx + r13 + 0x500]
addsd xmm6, xmm0
movsxd r13, dword [rsp + 0x34]
add ecx, 0xad7
cmp ecx, 0x2085
jbe 0x18003d935
inc r9
add r8, 0x40
add rdx, 8
sub r10, 8
cmp rdx, 0x100
jl 0x18003d930
mov ebx, dword [rsp + 0x40]
mov r12, qword [rbp + 0x340]
mov r9d, dword [rbp + 0x348]
jmp 0x18003dae1
movsxd rax, dword [r8]
mov rcx, qword [rbp + 0x350]
cmp dword [rcx + rax*4 + 0x3008], 0
mov edx, dword [rcx + rax*4 + 0x3000]
mov dword [rsp + 0x54], edx
je 0x18003daa6
inc edx
and edx, 7
mov dword [rsp + 0x54], edx
lea r8d, [rdx + 1]
and r8d, 0x80000007
mov dword [rsp + 0x34], r8d
jge 0x18003dac7
dec r8d
or r8d, 0xfffffff8
inc r8d
mov dword [rsp + 0x34], r8d
add edx, 2
and edx, 0x80000007
mov dword [rsp + 0x3c], edx
jge 0x18003dae1
dec edx
or edx, 0xfffffff8
inc edx
mov dword [rsp + 0x3c], edx
mov ecx, dword [rsp + 0x30]
mov r8, qword [rbp + 0x338]
mov r13, qword [rbp + 0x330]
lea eax, [r9 + r9*8]
lea ecx, [rcx + rax*2]
mov dword [rsp + 0x30], ecx
cmp ecx, dword [rsp + 0x70]
jbe 0x18003cd20
movaps xmm8, xmmword [rsp + 0x3b0]
mov eax, ebx
mov rbx, qword [rsp + 0x408]
movaps xmm7, xmmword [rsp + 0x3c0]
movaps xmm6, xmmword [rsp + 0x3d0]
mov r15, qword [rsp + 0x3e8]
mov r14, qword [rsp + 0x3f0]
mov rdi, qword [rsp + 0x3f8]
mov rsi, qword [rsp + 0x400]
movaps xmm9, xmmword [rsp + 0x3a0]
add rsp, 0x410
pop r13
pop r12
pop rbp
ret
mov eax, dword [rsp + 0x40]
add rsp, 0x410
pop r13
pop r12
pop rbp
ret