Function at 0x1401d5eb0
Capabilities:
Inspect section memory permissions

Disassembly:
mov dword [rsp + 0x20], r9d
mov qword [rsp + 0x18], r8
mov qword [rsp + 0x10], rdx
mov qword [rsp + 8], rcx
push rsi
push rdi
sub rsp, 0x208
mov rax, qword [rsp + 0x248]
mov rcx, qword [rsp + 0x220]
mov ecx, dword [rcx + 0x74]
cmp dword [rax + 0x4c], ecx
je 0x1401d5f32
mov rax, qword [rsp + 0x248]
mov edx, dword [rax + 0x4c]
mov rcx, qword [rsp + 0x220]
call fcn.1401da150
mov qword [rsp + 0x40], rax
mov rcx, qword [rsp + 0x40]
call fcn.1401d5ac0
test eax, eax
je 0x1401d5f2c
xor eax, eax
test eax, eax
je 0x1401d5f22
lea rcx, [0x14027b657]
call fcn.1401d5b00
mov rax, qword [rsp + 0x40]
jmp 0x1401d6669
xor eax, eax
test eax, eax
jne 0x1401d5ee5
mov rax, qword [rsp + 0x248]
cmp qword [rax + 0x50], 0
je 0x1401d5f63
mov rax, qword [rsp + 0x248]
cmp qword [rax + 0x50], 0x80000
jae 0x1401d5f63
mov rax, qword [rsp + 0x248]
mov qword [rax + 0x50], 0x80000
call fcn.1401d5a00
test eax, eax
je 0x1401d5f79
mov dword [rsp + 0x1d0], 0x20000000
jmp 0x1401d5f84
mov dword [rsp + 0x1d0], 0x40000000
movsxd rax, dword [rsp + 0x1d0]
mov rcx, qword [rsp + 0x248]
cmp qword [rcx + 0x50], rax
jbe 0x1401d5fcf
call fcn.1401d5a00
test eax, eax
je 0x1401d5fb0
mov dword [rsp + 0x1d4], 0x20000000
jmp 0x1401d5fbb
mov dword [rsp + 0x1d4], 0x40000000
movsxd rax, dword [rsp + 0x1d4]
mov rcx, qword [rsp + 0x248]
mov qword [rcx + 0x50], rax
mov rax, qword [rsp + 0x220]
cmp dword [rax + 0xb70], 0
jne 0x1401d600c
mov rcx, qword [rsp + 0x220]
call fcn.1401da020
mov rcx, qword [rsp + 0x220]
call fcn.1401d9e50
mov rax, qword [rsp + 0x220]
mov dword [rax + 0xb70], 1
mov rax, qword [rsp + 0x220]
lea rdi, [rax + 0x28]
mov rsi, qword [rsp + 0x248]
mov ecx, 0xd0
rep movsb byte [rdi], byte [rsi]
mov rax, qword [rsp + 0x220]
mov rcx, qword [rsp + 0x250]
mov qword [rax + 0xb78], rcx
cmp qword [rsp + 0x228], 0
je 0x1401d6127
mov rax, qword [rsp + 0x220]
mov rcx, qword [rax + 0xba8]
call fcn.1401692b0
lea rax, [rsp + 0xa0]
mov rcx, qword [rsp + 0x220]
mov rdi, rax
lea rsi, [rcx + 0xb90]
mov ecx, 0x18
rep movsb byte [rdi], byte [rsi]
lea rax, [rsp + 0x80]
mov rcx, qword [rsp + 0x248]
mov rdi, rax
lea rsi, [rcx + 4]
mov ecx, 0x1c
rep movsb byte [rdi], byte [rsi]
lea rax, [rsp + 0xa0]
mov qword [rsp + 0x28], rax
lea rax, [rsp + 0x80]
mov qword [rsp + 0x20], rax
mov r9d, dword [rsp + 0x238]
xor r8d, r8d
mov rdx, qword [rsp + 0x230]
mov rcx, qword [rsp + 0x228]
call fcn.14016ac50
mov rcx, qword [rsp + 0x220]
mov qword [rcx + 0xba8], rax
mov rax, qword [rsp + 0x220]
mov rcx, qword [rsp + 0x220]
mov rcx, qword [rcx + 0xba8]
mov qword [rax + 0xbb0], rcx
mov rax, qword [rsp + 0x220]
cmp qword [rax + 0xba8], 0
jne 0x1401d6125
mov rax, 0xffffffffffffffc0
jmp 0x1401d6669
jmp 0x1401d6165
mov rax, qword [rsp + 0x220]
mov rcx, qword [rax + 0xba8]
call fcn.1401692b0
mov rax, qword [rsp + 0x220]
mov qword [rax + 0xba8], 0
mov rax, qword [rsp + 0x220]
mov rcx, qword [rsp + 0x240]
mov qword [rax + 0xbb0], rcx
mov rcx, qword [rsp + 0x248]
call fcn.1401da410
mov rcx, qword [rsp + 0x220]
mov qword [rcx + 0x100], rax
mov rax, qword [rsp + 0x220]
mov rcx, qword [rsp + 0x248]
mov rcx, qword [rcx + 0x50]
mov qword [rax + 0xf8], rcx
mov rax, qword [rsp + 0x220]
cmp qword [rax + 0xf8], 0
jne 0x1401d61e5
mov rcx, qword [rsp + 0x248]
call fcn.1401da280
mov ecx, 1
mov qword [rsp + 0x1d8], rcx
movzx ecx, al
mov rax, qword [rsp + 0x1d8]
shl rax, cl
mov rcx, qword [rsp + 0x220]
mov qword [rcx + 0xf8], rax
mov rax, qword [rsp + 0x248]
cmp dword [rax + 0x5c], 0
je 0x1401d627b
mov rax, qword [rsp + 0x220]
mov rax, qword [rax + 0xf8]
shr rax, 0xa
mov dword [rsp + 0x48], eax
mov ecx, dword [rsp + 0x48]
call fcn.1401d5b80
add eax, 0xa
mov dword [rsp + 0x4c], eax
mov rax, qword [rsp + 0x220]
mov qword [rax + 0xb48], 0
mov eax, dword [rsp + 0x4c]
mov ecx, 1
mov qword [rsp + 0x1e0], rcx
movzx ecx, al
mov rax, qword [rsp + 0x1e0]
shl rax, cl
dec rax
mov rcx, qword [rsp + 0x220]
mov qword [rcx + 0xb50], rax
mov ecx, 0x20
call fcn.1401d7080
mov rcx, qword [rsp + 0x220]
mov qword [rcx + 0xb58], rax
mov rax, qword [rsp + 0x220]
mov rcx, qword [rsp + 0x220]
mov rcx, qword [rcx + 0x100]
cmp qword [rax + 0xf8], rcx
jae 0x1401d62b9
mov rax, qword [rsp + 0x220]
mov rcx, qword [rsp + 0x220]
mov rcx, qword [rcx + 0x100]
mov qword [rax + 0xf8], rcx
mov rax, qword [rsp + 0x220]
mov rcx, qword [rax + 0xf8]
call fcn.1401672c0
mov rdx, rax
mov rax, qword [rsp + 0x220]
mov rcx, qword [rax + 0x10]
call fcn.1401d7640
mov rax, qword [rsp + 0x220]
cmp dword [rax + 0x88], 1
jne 0x1401d631e
mov rax, qword [rsp + 0x220]
mov eax, dword [rax + 0x2c]
mov ecx, 1
mov dword [rsp + 0x1e8], ecx
movzx ecx, al
mov eax, dword [rsp + 0x1e8]
shl eax, cl
mov dword [rsp + 0x1ec], eax
jmp 0x1401d6329
mov dword [rsp + 0x1ec], 0
mov eax, dword [rsp + 0x1ec]
mov qword [rsp + 0x50], rax
mov rax, qword [rsp + 0x220]
cmp qword [rax + 0x100], 0
jbe 0x1401d6354
mov dword [rsp + 0x1f0], 1
jmp 0x1401d635f
mov dword [rsp + 0x1f0], 0
mov eax, dword [rsp + 0x1f0]
add eax, 2
cdqe
mov qword [rsp + 0x58], rax
mov rax, qword [rsp + 0x220]
mov rax, qword [rax + 0xf8]
imul rax, qword [rsp + 0x58]
mov qword [rsp + 0x60], rax
mov rax, qword [rsp + 0x220]
cmp dword [rax + 0x74], 1
jle 0x1401d63ac
mov rax, qword [rsp + 0x220]
mov eax, dword [rax + 0x74]
mov dword [rsp + 0x1f4], eax
jmp 0x1401d63b7
mov dword [rsp + 0x1f4], 1
movsxd rax, dword [rsp + 0x1f4]
mov qword [rsp + 0x68], rax
mov rax, qword [rsp + 0x220]
mov rax, qword [rax + 0xf8]
imul rax, qword [rsp + 0x68]
mov qword [rsp + 0x70], rax
mov rax, qword [rsp + 0x70]
cmp qword [rsp + 0x50], rax
jbe 0x1401d63f9
mov rax, qword [rsp + 0x50]
mov qword [rsp + 0x1f8], rax
jmp 0x1401d6406
mov rax, qword [rsp + 0x70]
mov qword [rsp + 0x1f8], rax
mov rax, qword [rsp + 0x60]
mov rcx, qword [rsp + 0x1f8]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x78], rax
mov rax, qword [rsp + 0x220]
mov rcx, qword [rsp + 0x78]
cmp qword [rax + 0x140], rcx
jae 0x1401d650e
mov rax, qword [rsp + 0x220]
cmp qword [rax + 0x138], 0
je 0x1401d6487
lea rax, [rsp + 0xc0]
mov rcx, qword [rsp + 0x220]
mov rdi, rax
lea rsi, [rcx + 0xb90]
mov ecx, 0x18
rep movsb byte [rdi], byte [rsi]
lea rdx, [rsp + 0xc0]
mov rax, qword [rsp + 0x220]
mov rcx, qword [rax + 0x138]
call fcn.1401d59a0
lea rax, [rsp + 0xe0]
mov rcx, qword [rsp + 0x220]
mov rdi, rax
lea rsi, [rcx + 0xb90]
mov ecx, 0x18
rep movsb byte [rdi], byte [rsi]
lea rdx, [rsp + 0xe0]
mov rcx, qword [rsp + 0x78]
call fcn.140167170
mov rcx, qword [rsp + 0x220]
mov qword [rcx + 0x138], rax
mov rax, qword [rsp + 0x220]
cmp qword [rax + 0x138], 0
jne 0x1401d64fa
mov rax, qword [rsp + 0x220]
mov qword [rax + 0x140], 0
mov rax, 0xffffffffffffffc0
jmp 0x1401d6669
mov rax, qword [rsp + 0x220]
mov rcx, qword [rsp + 0x78]
mov qword [rax + 0x140], rcx
mov rax, qword [rsp + 0x220]
mov qword [rax + 0x148], 0
mov rax, qword [rsp + 0x220]
lea rcx, [0x14020a7e0]
lea rdi, [rax + 0x120]
mov rsi, rcx
mov ecx, 0x10
rep movsb byte [rdi], byte [rsi]
mov rax, qword [rsp + 0x220]
mov qword [rax + 0x130], 0
mov rax, qword [rsp + 0x220]
lea rcx, [0x14020a7f0]
lea rdi, [rax + 0x110]
mov rsi, rcx
mov ecx, 0x10
rep movsb byte [rdi], byte [rsi]
mov rax, qword [rsp + 0x220]
mov dword [rax + 0xb64], 0
mov rax, qword [rsp + 0x220]
mov dword [rax + 0xb68], 0
mov rax, qword [rsp + 0x220]
mov dword [rax + 0xb6c], 0
mov rax, qword [rsp + 0x220]
mov dword [rax + 0xb70], 0
mov rax, qword [rsp + 0x220]
mov qword [rax + 0xb80], 0
mov rax, qword [rsp + 0x220]
mov qword [rax + 0xb88], 0
lea rax, [rsp + 0x100]
mov rdi, rax
mov rsi, qword [rsp + 0x248]
mov ecx, 0xd0
rep movsb byte [rdi], byte [rsi]
mov rax, qword [rsp + 0x220]
add rax, 0x150
mov ecx, dword [rsp + 0x238]
mov dword [rsp + 0x30], ecx
mov rcx, qword [rsp + 0x230]
mov qword [rsp + 0x28], rcx
mov rcx, qword [rsp + 0x228]
mov qword [rsp + 0x20], rcx
mov rcx, qword [rsp + 0x220]
mov r9, qword [rcx + 0xf8]
lea r8, [rsp + 0x100]
mov rcx, qword [rsp + 0x220]
mov rdx, qword [rcx + 0x20]
mov rcx, rax
call fcn.1401d82b0
test eax, eax
je 0x1401d6667
mov rax, 0xffffffffffffffc0
jmp 0x1401d6669
xor eax, eax
add rsp, 0x208
pop rdi
pop rsi
ret