Function at 0x140095420
Capabilities:
Inspect section memory permissions

Disassembly:
mov rax, rsp
mov qword [rax + 0x20], rbx
mov qword [rax + 0x18], r8
mov qword [rax + 0x10], rdx
mov qword [rax + 8], rcx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rax - 0x118]
sub rsp, 0x1e0
movaps xmmword [rax - 0x48], xmm6
movaps xmmword [rax - 0x58], xmm7
movaps xmmword [rax - 0x68], xmm8
movaps xmmword [rax - 0x78], xmm9
movaps xmmword [rax - 0x88], xmm10
movaps xmmword [rax - 0x98], xmm11
mov rax, qword [0x1401b2190]
xor rax, rsp
mov qword [rbp + 0x70], rax
mov rsi, qword [rbp + 0x120]
mov rdi, qword [rbp + 0x128]
mov r14, qword [rbp + 0x130]
cmp qword [rsi + 0x18], 0
jne 0x1400954f5
mov ebx, dword [rsi + 0x2e8]
mov ecx, 0x288
call fcn.140126628
mov qword [rsp + 0x40], rax
mov edx, ebx
mov rcx, rax
call fcn.1400db0c0
mov rcx, rax
mov qword [rsi + 0x18], rax
test rax, rax
jne 0x1400954cd
mov eax, 0xf969ffde
jmp 0x140095b07
mov rax, qword [rax]
lea r8, [rsi + 0x148]
mov edx, 0x70001
mov rax, qword [rax + 0x10]
call qword [case.0x14008f836.32]
mov ecx, eax
neg ecx
movzx ecx, cx
neg ecx
js 0x140095b07
mov r11, qword [rsi + 0x18]
test r11, r11
je 0x140095af8
mov dword [rsi + 0xb0], 1
cmp qword [rdi], 0
je 0x140095af1
cmp qword [r14], 0
je 0x140095af1
mov ecx, dword [rdi + 0x40]
cmp ecx, 1
jl 0x140095aea
mov r8d, dword [rdi + 0x44]
cmp r8d, 1
jl 0x140095aea
mov r9d, dword [r14 + 0x40]
cmp r9d, 1
jl 0x140095aea
mov r10d, dword [r14 + 0x44]
cmp r10d, 1
jl 0x140095aea
mov eax, dword [rdi + 0x6c]
cmp eax, dword [r14 + 0x6c]
je 0x140095569
mov eax, 0xf949ffbb
jmp 0x140095b07
cmp eax, 0x500
je 0x140095577
cmp eax, 0x800
jne 0x14009559e
test cl, 1
jne 0x140095ae3
test r8b, 1
jne 0x140095ae3
test r9b, 1
jne 0x140095ae3
test r10b, 1
jne 0x140095ae3
xor r15d, r15d
mov qword [rbp + 0x60], r15
mov dword [rbp + 0x68], r9d
mov dword [rbp + 0x6c], r10d
lea r12d, [r15 + 1]
cmp eax, 0xd
ja 0x1400955db
je 0x1400955f7
sub eax, 5
je 0x1400955c0
sub eax, r12d
mov rax, qword [r11]
mov r8, r14
mov rdx, rdi
mov rcx, r11
mov rax, qword [rax + 8]
call qword [case.0x14008f836.32]
jmp 0x140095b07
cmp eax, 0x500
je 0x140095601
cmp eax, 0x600
je 0x1400955f7
cmp eax, 0xd00
jne 0x1400955c0
mov ebx, 4
jmp 0x140095604
mov ebx, 3
mov r12d, r15d
jmp 0x140095604
mov ebx, r12d
movd xmm3, r9d
cvtdq2pd xmm3, xmm3
movd xmm0, ecx
cvtdq2pd xmm0, xmm0
divsd xmm3, xmm0
movd xmm2, r10d
cvtdq2pd xmm2, xmm2
movd xmm1, r8d
cvtdq2pd xmm1, xmm1
divsd xmm2, xmm1
ucomisd xmm3, xmm2
jp 0x1400957ed
jne 0x1400957ed
cmp ecx, r9d
jg 0x1400957ed
cmp r8d, r10d
jg 0x1400957ed
cmp ecx, r9d
jne 0x14009566a
cmp r8d, r10d
jne 0x14009566a
mov dword [rsi + 0x138], 0x80000000
jmp 0x1400957f7
lea eax, [rcx + rcx]
cmp eax, r9d
jne 0x14009568a
lea eax, [r8 + r8]
cmp eax, r10d
jne 0x14009568a
mov dword [rsi + 0x138], 0x80000001
jmp 0x1400957f7
lea eax, [rcx + rcx*2]
cmp eax, r9d
jne 0x1400956aa
lea eax, [r8 + r8*2]
cmp eax, r10d
jne 0x1400956aa
mov dword [rsi + 0x138], 0x80000002
jmp 0x1400957f7
lea eax, [rcx*4]
cmp eax, r9d
jne 0x1400956d2
lea eax, [r8*4]
cmp eax, r10d
jne 0x1400956d2
mov dword [rsi + 0x138], 0x80000003
jmp 0x1400957f7
mov eax, r9d
cdq
idiv ecx
test edx, edx
jne 0x1400956ee
mov eax, r10d
cdq
idiv r8d
test edx, edx
jne 0x1400956ee
mov eax, 0x40000000
jmp 0x140095725
lea eax, [r9 + r9]
cdq
idiv ecx
test edx, edx
jne 0x1400957ed
cmp ecx, 2
je 0x1400957ed
lea eax, [r10 + r10]
cdq
idiv r8d
test edx, edx
jne 0x1400957ed
cmp r8d, 2
je 0x1400957ed
mov eax, 0x40000001
mov dword [rsi + 0x138], eax
mov edx, dword [r14 + 0x40]
movd xmm7, edx
cvtdq2pd xmm7, xmm7
movd xmm0, dword [rdi + 0x40]
cvtdq2pd xmm0, xmm0
divsd xmm7, xmm0
mov r8d, dword [r14 + 0x44]
movd xmm6, r8d
cvtdq2pd xmm6, xmm6
movd xmm0, dword [rdi + 0x44]
cvtdq2pd xmm0, xmm0
divsd xmm6, xmm0
mov rax, qword [rsi + 0x68]
cmp edx, eax
jg 0x14009576f
shr rax, 0x20
cmp r8d, eax
jle 0x1400957b0
mov rcx, rsi
call fcn.140094fb0
mov ecx, eax
neg ecx
movzx ecx, cx
neg ecx
js 0x140095b07
mov rax, qword [rdi + 0x50]
mov qword [rsp + 0x20], rax
mov r9, qword [rdi + 0x48]
movaps xmm2, xmm6
movaps xmm1, xmm7
mov rcx, rsi
call fcn.140095280
mov ecx, eax
neg ecx
movzx ecx, cx
neg ecx
js 0x140095b07
ucomisd xmm7, qword [rsi + 0x70]
jp 0x1400957c2
jne 0x1400957c2
ucomisd xmm6, qword [rsi + 0x78]
jp 0x1400957c2
je 0x1400957f7
mov rax, qword [rdi + 0x50]
mov qword [rsp + 0x20], rax
mov r9, qword [rdi + 0x48]
movaps xmm2, xmm6
movaps xmm1, xmm7
mov rcx, rsi
call fcn.140095280
mov ecx, eax
neg ecx
movzx ecx, cx
neg ecx
jns 0x1400957f7
jmp 0x140095b07
mov dword [rsi + 0x138], 0x20000000
mov r11d, dword [rsi + 0x138]
test r11d, 0xc0000000
jne 0x140095823
mov rcx, qword [rsi + 0x18]
mov rax, qword [rcx]
mov r8, r14
mov rdx, rdi
mov rax, qword [rax + 8]
call qword [case.0x14008f836.32]
jmp 0x140095b07
movups xmm6, xmmword [rdi]
movaps xmmword [rsp + 0x60], xmm6
movups xmm10, xmmword [rdi + 0x10]
movaps xmmword [rsp + 0x70], xmm10
movups xmm0, xmmword [rdi + 0x20]
movaps xmmword [rbp - 0x80], xmm0
movups xmm3, xmmword [rdi + 0x30]
movaps xmmword [rbp - 0x70], xmm3
movups xmm2, xmmword [rdi + 0x40]
movaps xmmword [rbp - 0x60], xmm2
movups xmm5, xmmword [rdi + 0x50]
movaps xmmword [rbp - 0x50], xmm5
movups xmm0, xmmword [rdi + 0x60]
movaps xmmword [rbp - 0x40], xmm0
movups xmm1, xmmword [rdi + 0x70]
movaps xmmword [rbp - 0x30], xmm1
movups xmm8, xmmword [r14]
movaps xmmword [rbp - 0x20], xmm8
movups xmm11, xmmword [r14 + 0x10]
movaps xmmword [rbp - 0x10], xmm11
movups xmm0, xmmword [r14 + 0x20]
movaps xmmword [rbp], xmm0
movups xmm7, xmmword [r14 + 0x30]
movaps xmmword [rbp + 0x10], xmm7
movups xmm4, xmmword [r14 + 0x40]
movaps xmmword [rbp + 0x20], xmm4
movups xmm9, xmmword [r14 + 0x50]
movaps xmmword [rbp + 0x30], xmm9
movups xmm0, xmmword [r14 + 0x60]
movaps xmmword [rbp + 0x40], xmm0
movups xmm1, xmmword [r14 + 0x70]
movaps xmmword [rbp + 0x50], xmm1
movdqa xmm0, xmm3
psrldq xmm0, 0xc
movd eax, xmm0
movsxd r9, eax
mov rdx, r9
psrldq xmm2, 8
movq rax, xmm2
imul rdx, rax
psrldq xmm3, 8
movd r8d, xmm3
movsxd rcx, r8d
movq rax, xmm6
add rax, rcx
add rax, rdx
mov qword [rsp + 0x60], rax
mov ecx, r12d
sar r9, cl
movq rax, xmm5
imul r9, rax
movsxd rax, r8d
mov ecx, r12d
sar rax, cl
lea rcx, [r9 + rax]
add qword [rsp + 0x68], rcx
movq rax, xmm10
add rax, rcx
mov qword [rsp + 0x70], rax
movdqa xmm0, xmm7
psrldq xmm0, 0xc
movd eax, xmm0
movsxd r9, eax
mov r8, r9
psrldq xmm4, 8
movq rax, xmm4
imul r8, rax
psrldq xmm7, 8
movd edx, xmm7
movsxd rcx, edx
movq rax, xmm8
add rax, rcx
add rax, r8
mov qword [rbp - 0x20], rax
movsxd r8, edx
mov ecx, r12d
sar r8, cl
mov ecx, r12d
sar r9, cl
movq rax, xmm9
imul r9, rax
lea rax, [r8 + r9]
add qword [rbp - 0x18], rax
lea rcx, [r8 + r9]
movq rax, xmm11
add rax, rcx
mov qword [rbp - 0x10], rax
mov qword [rbp - 0x68], r15
mov qword [rbp + 0x18], r15
lea r14, [rsp + 0x60]
cmp r11d, 0x80000000
je 0x1400959cb
mov r8d, ebx
lea rdx, [rsp + 0x60]
mov rcx, rsi
call fcn.1400966f0
mov ecx, eax
neg ecx
movzx ecx, cx
neg ecx
js 0x140095b07
lea r14, [rsi + 0xb8]
mov r11d, dword [rsi + 0x138]
mov dword [rsp + 0x54], ebx
mov dword [rsp + 0x50], r11d
cmp dword [rsi + 0x144], r15d
je 0x140095a9c
mov r13d, dword [rsi + 0x15c]
mov eax, dword [rbp + 0x68]
mov dword [rsp + 0x40], eax
mov eax, dword [rbp + 0x6c]
mov dword [rsp + 0x44], eax
mov rbx, qword [rsp + 0x40]
mov r9, rbx
mov rdi, qword [0x14018e0f8]
mov r8, rdi
mov edx, 8
lea rcx, [rsi + 0x148]
call fcn.14010d2a0
mov ecx, dword [rsi + 0x140]
cmp ecx, eax
jl 0x140095a3c
mov r9, rbx
mov r8, rdi
mov edx, 8
lea rcx, [rsi + 0x148]
call fcn.14010d2a0
mov ecx, eax
mov dword [rsi + 0x13c], ecx
cmp ecx, 1
jle 0x140095a59
lea eax, [r13*4]
cmp dword [rbp - 0x5c], eax
jle 0x140095a59
cmp dword [rbp + 0x6c], eax
jg 0x140095a68
mov dword [rsi + 0x13c], 1
mov ecx, 1
cmp ecx, 1
jle 0x140095aa6
mov eax, dword [rsi + 0x138]
shr eax, 0x1e
and eax, 1
mov dword [rsp + 0x28], eax
lea rax, [rbp + 0x60]
mov qword [rsp + 0x20], rax
lea r9, [rsp + 0x50]
lea r8, [rbp - 0x20]
mov rdx, r14
mov rcx, rsi
call fcn.140095bc0
jmp 0x140095b07
mov dword [rsi + 0x13c], 1
mov dword [rsp + 0x40], r15d
mov dword [rsp + 0x48], r15d
lea rax, [rsp + 0x48]
mov qword [rsp + 0x30], rax
lea rax, [rsp + 0x40]
mov qword [rsp + 0x28], rax
lea rax, [rbp + 0x60]
mov qword [rsp + 0x20], rax
lea r9, [rsp + 0x50]
lea r8, [rbp - 0x20]
mov rdx, r14
mov rcx, rsi
call fcn.140095e50
jmp 0x140095b07
mov eax, 0xf944ffbd
jmp 0x140095b07
mov eax, 0xf94cffbd
jmp 0x140095b07
mov eax, 0xf94fffbf
jmp 0x140095b07
xor r15d, r15d
mov dword [rsi + 0xb0], r15d
mov eax, 0xf952fff5
mov rcx, qword [rbp + 0x70]
xor rcx, rsp
call fcn.140126360
lea r11, [rsp + 0x1e0]
mov rbx, qword [r11 + 0x58]
movaps xmm6, xmmword [r11 - 0x10]
movaps xmm7, xmmword [r11 - 0x20]
movaps xmm8, xmmword [r11 - 0x30]
movaps xmm9, xmmword [r11 - 0x40]
movaps xmm10, xmmword [r11 - 0x50]
movaps xmm11, xmmword [r11 - 0x60]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret