Function at 0x180071dc0
Capabilities:
Inspect section memory permissions

Disassembly:
mov qword [rsp + 0x10], rbx
mov dword [rsp + 0x20], r9d
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0xa0]
sub rsp, 0x1a0
movsxd rsi, dword [rbp + 0x100]
mov r15d, dword [rbp + 0x108]
xor r10d, r10d
lea rbx, [rsi + r8]
mov r12, r8
mov rdi, rcx
lea rax, [rbx - 1]
mov dword [rbp + 0xf0], 0xffffffff
mov dword [rsp + 0x44], 0xffffffff
mov dword [rsp + 0x54], 0xffffffff
mov dword [rsp + 0x48], r10d
mov dword [rbp + 0xe0], r10d
mov qword [rbp + 0x30], rax
mov dword [rsp + 0x50], r10d
mov qword [rbp + 0x38], r10
mov qword [rbp + 0x40], rsi
mov r13, rcx
test r15d, 0xff8f5a6f
je 0x180071e4f
lea eax, [r10 - 3]
jmp 0x180072735
test rcx, rcx
je 0x180072730
test r8, r8
je 0x180072730
mov eax, dword [rbp + 0x118]
cmp qword [rbp + 0x110], r10
jne 0x180071e78
test eax, eax
jg 0x180072730
test eax, eax
jns 0x180071e86
mov eax, 0xfffffff1
jmp 0x180072735
mov r8, qword [rcx + 0x20]
mov r14, r10
mov dword [rsp + 0x74], 0x989680
mov dword [rsp + 0x78], 0x989680
mov qword [rbp + 0x20], r10
test rdx, rdx
je 0x180071edf
mov ecx, dword [rdx]
test cl, 1
je 0x180071eb1
mov r14, qword [rdx + 8]
test cl, 2
je 0x180071ebd
mov eax, dword [rdx + 0x10]
mov dword [rsp + 0x74], eax
test cl, 0x10
je 0x180071ec9
mov eax, dword [rdx + 0x28]
mov dword [rsp + 0x78], eax
test cl, 4
je 0x180071ed6
mov rax, qword [rdx + 0x18]
mov qword [rbp + 0x20], rax
test cl, 8
je 0x180071edf
mov r8, qword [rdx + 0x20]
test r8, r8
lea rdx, [0x1800880c0]
cmovne rdx, r8
cmp dword [rdi], 0x50435245
mov qword [rsp + 0x58], rdx
je 0x180071f3b
lea r9, [rbp + 0x48]
lea rdx, [rbp + 0x70]
mov r8, r14
mov rcx, rdi
call fcn.180078570
mov r13, rax
test rax, rax
jne 0x180071f1e
lea eax, [r13 - 4]
jmp 0x180072735
mov r9d, dword [rbp + 0xf8]
mov rdx, qword [rsp + 0x58]
test r14, r14
lea rax, [rbp + 0x48]
cmove rax, r14
xor r10d, r10d
mov r14, rax
mov ecx, dword [r13 + 8]
mov eax, ecx
or eax, r15d
shr eax, 4
and eax, 1
mov dword [rsp + 0x60], eax
mov eax, ecx
shr ecx, 0x12
shr eax, 0x1c
and ecx, 1
and eax, 1
mov dword [rbp + 0x108], ecx
movzx ecx, word [r13 + 0x1c]
mov dword [rsp + 0x40], eax
movzx eax, word [r13 + 0x1a]
imul eax, ecx
movzx ecx, word [r13 + 0x18]
cdqe
add rax, rdi
mov dword [rbp], esi
mov qword [rbp - 0x28], r12
add rcx, rax
movsxd rdi, r9d
mov qword [rbp - 0x30], rcx
add rdi, r12
mov qword [rbp - 0x20], rdi
mov eax, dword [r13 + 8]
mov rsi, rdi
shr eax, 5
and eax, 1
mov dword [rbp - 0x40], eax
mov ecx, dword [r13 + 8]
mov eax, r15d
shr eax, 7
shr ecx, 0xb
mov dword [rbp - 0x34], r10d
and eax, 1
and ecx, 1
mov qword [rbp + 0x18], r10
mov dword [rbp - 0x4c], eax
mov eax, r15d
mov dword [rsp + 0x4c], ecx
shr eax, 8
mov dword [rbp - 0x44], ecx
mov qword [rbp - 0x60], rdx
and eax, 1
mov dword [rbp - 0x48], eax
mov eax, r15d
shr eax, 0xa
and eax, 1
mov dword [rbp - 0x3c], eax
mov eax, r15d
shr eax, 0xf
and eax, 1
mov dword [rbp - 0x38], eax
mov rax, qword [rbp + 0x120]
mov qword [rbp + 8], rax
lea rax, [rdx + 0x340]
mov qword [rbp - 0x58], rax
test r15d, 0x700000
jne 0x180072017
mov eax, dword [r13 + 8]
jmp 0x18007201a
mov eax, r15d
and eax, 0x700000
mov edx, 1
je 0x180072064
cmp eax, 0x100000
je 0x18007205d
cmp eax, 0x200000
je 0x180072056
cmp eax, 0x300000
je 0x18007204f
cmp eax, 0x400000
je 0x18007204a
lea eax, [rdx - 0x18]
jmp 0x180072735
mov dword [rbp - 0x70], edx
jmp 0x180072093
mov ecx, 0xd0a
jmp 0x180072069
mov ecx, 0xa
jmp 0x180072069
mov ecx, 0xd
jmp 0x180072069
mov ecx, 0xa0d
mov dword [rbp - 0x70], r10d
cmp ecx, 0xff
jle 0x180072089
mov eax, ecx
mov dword [rbp - 0x6c], 2
mov byte [rbp - 0x67], cl
sar eax, 8
mov byte [rbp - 0x68], al
jmp 0x18007208f
mov dword [rbp - 0x6c], edx
mov byte [rbp - 0x68], cl
mov ecx, dword [rsp + 0x4c]
cmp dword [rbp - 0x38], 0
je 0x1800720ad
test dword [r13 + 8], 0x80000000
je 0x1800720ad
mov eax, 0xfffffff3
jmp 0x180072735
test ecx, ecx
je 0x180072107
bt r15d, 0xd
jb 0x180072107
mov edx, r9d
mov rcx, r12
call fcn.180078430
test eax, eax
js 0x1800720d1
mov eax, 0xfffffff6
jmp 0x180072735
mov eax, dword [rbp + 0x100]
test eax, eax
jle 0x180072103
cmp eax, dword [rbp + 0xf8]
jge 0x180072103
movzx eax, byte [rbx]
cmp eax, 0x7f
jle 0x180072103
and eax, 0xc0
je 0x180072103
cmp eax, 0xc0
je 0x180072103
mov eax, 0xfffffff5
jmp 0x180072735
mov rdi, qword [rbp - 0x20]
mov eax, dword [r13 + 8]
mov r15d, dword [rbp + 0x118]
and eax, 7
mov dword [rbp + 0x120], eax
mov eax, 0x55555556
imul r15d
mov eax, edx
shr eax, 0x1f
add edx, eax
movzx eax, word [r13 + 0x12]
lea r12d, [rdx + rdx*2]
test ax, ax
je 0x180072181
movzx ecx, ax
mov eax, 0x55555556
imul r12d
mov eax, edx
shr eax, 0x1f
add edx, eax
cmp ecx, edx
jl 0x180072181
lea r12d, [rcx + rcx*2 + 3]
movsxd rcx, r12d
shl rcx, 2
call qword [0x180092ee0]
mov qword [rbp - 0x80], rax
test rax, rax
jne 0x180072173
mov eax, 0xfffffffa
jmp 0x180072735
mov rdi, qword [rbp - 0x20]
mov dword [rsp + 0x48], 1
jmp 0x18007218c
mov rax, qword [rbp + 0x110]
mov qword [rbp - 0x80], rax
mov r11, qword [rbp - 0x80]
lea ecx, [r12 + r12]
mov eax, 0x55555556
mov dword [rbp - 0x78], r12d
mov dword [rbp - 0x50], 0
mov dword [rbp - 4], 0xffffffff
imul ecx
mov eax, edx
shr eax, 0x1f
add edx, eax
mov dword [rbp - 0x74], edx
movzx eax, word [r13 + 0x10]
lea ecx, [rax + rax + 2]
cmp ecx, r15d
cmovg ecx, r12d
mov dword [rbp + 0x100], ecx
test r11, r11
je 0x180072214
movsxd rax, r12d
lea r8, [r11 + rax*4]
mov eax, ecx
cdq
sub eax, edx
sar eax, 1
movsxd rcx, eax
mov rax, r8
sub r8, 4
shl rcx, 2
sub rax, rcx
add rax, 4
cmp r8, rax
jb 0x180072214
nop word [rax + rax]
mov dword [r8], 0xffffffff
sub r8, 4
cmp r8, rax
jae 0x180072200
mov rdi, qword [rbp - 0x20]
movsxd r8, dword [rsp + 0x60]
mov r9d, dword [rsp + 0x40]
test r8d, r8d
jne 0x180072277
test dword [r13 + 8], 0x40000000
je 0x18007224f
movzx ecx, word [r13 + 0x14]
movzx r14d, cl
shr ecx, 8
and ecx, 1
mov dword [rbp + 0xe0], ecx
je 0x180072293
mov rax, qword [rbp - 0x60]
movzx r14d, byte [r14 + rax]
jmp 0x18007228d
test r9d, r9d
jne 0x180072286
mov ecx, dword [rbp + 0xe0]
test r14, r14
je 0x18007227d
test byte [r14 + 4], 1
je 0x18007227d
add r14, 8
mov qword [rbp + 0x38], r14
mov r14d, dword [rbp + 0xf0]
jmp 0x180072293
mov ecx, dword [rbp + 0xe0]
mov r14d, dword [rbp + 0xf0]
jmp 0x180072293
mov r14d, dword [rbp + 0xf0]
mov ecx, dword [rbp + 0xe0]
test dword [r13 + 8], 0x20000000
je 0x1800722c9
movzx eax, word [r13 + 0x16]
mov rdx, qword [rsp + 0x58]
movzx r13d, al
shr eax, 8
and eax, 1
mov dword [rsp + 0x44], r13d
mov dword [rsp + 0x50], eax
movzx eax, byte [r13 + rdx + 0x100]
mov dword [rsp + 0x54], eax
jmp 0x1800722ce
mov r13d, dword [rsp + 0x44]
movsxd rdx, dword [rbp + 0x108]
mov r15d, dword [rsp + 0x4c]
movsxd rax, ecx
movsxd r9, r9d
mov qword [rbp + 0xf0], rax
mov qword [rsp + 0x58], r8
mov qword [rbp + 0xe0], r9
mov r11, qword [rbp - 0x80]
movsxd r10, r14d
mov r12, rsi
test r11, r11
je 0x18007232c
movsxd rax, dword [rbp + 0x100]
lea rcx, [r11 + rax*4]
cmp r11, rcx
jae 0x18007232c
sub rcx, r11
mov rdi, r11
dec rcx
shr rcx, 2
inc rcx
or rax, 0xffffffffffffffff
rep stosd dword [rdi], eax
mov rdi, qword [rbp - 0x20]
test rdx, rdx
je 0x180072399
mov rsi, rbx
cmp rbx, rdi
jae 0x180072399
nop dword [rax]
cmp dword [rbp - 0x70], 0
je 0x180072362
lea r8, [rbp - 0x6c]
mov r9d, r15d
mov rdx, rdi
mov rcx, rsi
call fcn.1800781c0
test eax, eax
jne 0x18007238f
mov rdi, qword [rbp - 0x20]
jmp 0x180072387
movsxd rdx, dword [rbp - 0x6c]
mov rcx, rdi
sub rcx, rdx
cmp rsi, rcx
ja 0x180072387
movzx eax, byte [rbp - 0x68]
cmp byte [rsi], al
jne 0x180072387
cmp edx, 1
je 0x18007238f
movzx eax, byte [rbp - 0x67]
cmp byte [rsi + 1], al
je 0x18007238f
inc rsi
cmp rsi, rdi
jb 0x180072340
mov r9, qword [rbp + 0xe0]
movsxd r10, r14d
test r10, r10
js 0x1800723f9
cmp qword [rbp + 0xf0], 0
je 0x1800723d2
cmp rbx, rsi
jae 0x1800724b3
movzx ecx, byte [rbx]
mov rax, qword [rbp - 0x60]
movzx ecx, byte [rcx + rax]
cmp ecx, r14d
je 0x1800724b3
inc rbx
cmp rbx, rsi
jb 0x1800723b1
jmp 0x1800724b3
cmp rbx, rsi
jae 0x1800724b3
nop dword [rax + rax]
movzx eax, byte [rbx]
cmp eax, r14d
je 0x1800724b3
inc rbx
cmp rbx, rsi
jb 0x1800723e0
jmp 0x1800724b3
test r9, r9
je 0x18007247b
mov rcx, qword [rbp + 0x40]
add rcx, qword [rbp - 0x28]
cmp rbx, rcx
jbe 0x1800724b3
cmp rbx, rsi
ja 0x1800724b3
nop dword [rax]
cmp dword [rbp - 0x70], 0
je 0x180072444
mov rdx, qword [rbp - 0x28]
cmp rbx, rdx
jbe 0x180072471
lea r8, [rbp - 0x6c]
mov r9d, r15d
mov rcx, rbx
call fcn.1800782f0
test eax, eax
jne 0x1800724b3
jmp 0x180072471
movsxd rdx, dword [rbp - 0x6c]
mov rax, qword [rbp - 0x28]
lea rcx, [rdx + rax]
cmp rbx, rcx
jb 0x180072471
movzx eax, byte [rbp - 0x68]
mov rcx, rbx
sub rcx, rdx
cmp byte [rcx], al
jne 0x180072471
cmp edx, 1
je 0x1800724b3
movzx eax, byte [rbp - 0x67]
cmp byte [rcx + 1], al
je 0x1800724b3
inc rbx
cmp rbx, rsi
jbe 0x180072420
jmp 0x1800724b3
mov r8, qword [rbp + 0x38]
test r8, r8
je 0x1800724b3
cmp rbx, rsi
jae 0x1800724b3
nop dword [rax]
movzx edx, byte [rbx]
mov edi, 1
mov ecx, edx
mov eax, edx
and ecx, 7
shr rax, 3
shl edi, cl
test byte [rax + r8], dil
jne 0x1800724b3
inc rbx
cmp rbx, rsi
jb 0x180072490
mov rsi, r12
test r13d, r13d
js 0x18007255e
mov rax, r12
sub rax, rbx
cmp rax, 0x3e8
jge 0x18007255e
cmp dword [rbp - 0x38], 0
jne 0x18007255e
xor ecx, ecx
test r14d, r14d
setns cl
add rcx, rbx
cmp rcx, qword [rbp + 0x30]
jbe 0x18007255e
movsxd rax, dword [rsp + 0x50]
test rax, rax
je 0x180072539
cmp rcx, r12
jae 0x180072514
mov edx, dword [rsp + 0x54]
nop
movzx eax, byte [rcx]
inc rcx
cmp eax, r13d
je 0x180072552
cmp eax, edx
je 0x180072552
cmp rcx, r12
jb 0x180072500
xor r13d, r13d
cmp dword [rsp + 0x48], 0
je 0x180072528
mov rcx, qword [rbp - 0x80]
call qword [0x180092ee8]
test r13d, r13d
je 0x180072718
mov eax, r13d
jmp 0x180072735
cmp rcx, r12
jae 0x180072514
nop
movzx eax, byte [rcx]
inc rcx
cmp eax, r13d
je 0x180072552
cmp rcx, r12
jb 0x180072540
jmp 0x180072514
dec rcx
cmp rcx, r12
jae 0x180072514
mov qword [rbp + 0x30], rcx
mov eax, dword [rbp + 0x120]
mov rdx, qword [rbp - 0x30]
xor ecx, ecx
mov dword [rsp + 0x38], ecx
mov dword [rsp + 0x30], ecx
mov qword [rsp + 0x28], rcx
lea r8d, [rcx + 2]
mov dword [rsp + 0x70], ecx
mov dword [rbp + 0x10], ecx
lea r9, [rsp + 0x70]
mov rcx, rbx
mov qword [rbp - 0x18], rbx
mov dword [rsp + 0x20], eax
call fcn.18006c6c0
mov r13d, eax
test eax, eax
jne 0x180072687
movsxd rdx, dword [rbp + 0x108]
mov rdi, qword [rbp - 0x20]
test rdx, rdx
je 0x180072610
cmp dword [rbp - 0x70], eax
je 0x1800725dc
cmp rbx, rdi
jae 0x180072610
lea r8, [rbp - 0x6c]
mov r9d, r15d
mov rdx, rdi
mov rcx, rbx
call fcn.1800781c0
test eax, eax
jne 0x180072517
mov rdi, qword [rbp - 0x20]
jmp 0x180072609
movsxd rdx, dword [rbp - 0x6c]
mov rax, rdi
sub rax, rdx
cmp rbx, rax
ja 0x180072609
movzx eax, byte [rbp - 0x68]
cmp byte [rbx], al
jne 0x180072609
cmp edx, 1
je 0x180072517
movzx eax, byte [rbp - 0x67]
cmp byte [rbx + 1], al
je 0x180072517
movsxd rdx, dword [rbp + 0x108]
inc rbx
test r15d, r15d
je 0x180072631
cmp rbx, r12
jae 0x180072631
nop dword [rax]
movzx eax, byte [rbx]
and al, 0xc0
cmp al, 0x80
jne 0x180072631
inc rbx
cmp rbx, r12
jb 0x180072620
cmp qword [rsp + 0x58], 0
jne 0x180072517
cmp rbx, r12
ja 0x180072517
cmp byte [rbx - 1], 0xd
jne 0x180072662
cmp dword [rbp - 0x70], 1
je 0x180072658
cmp dword [rbp - 0x6c], 2
jne 0x180072662
cmp rbx, r12
jae 0x180072662
cmp byte [rbx], 0xa
je 0x180072673
mov r13d, dword [rsp + 0x44]
mov r9, qword [rbp + 0xe0]
jmp 0x1800722f3
mov r13d, dword [rsp + 0x44]
mov r9, qword [rbp + 0xe0]
inc rbx
jmp 0x1800722f3
cmp eax, 1
jne 0x180072517
cmp dword [rsp + 0x48], 0
mov edi, dword [rbp + 0x118]
je 0x1800726df
cmp edi, 4
jl 0x1800726c4
mov rdx, qword [rbp - 0x80]
mov rcx, qword [rbp + 0x110]
lea eax, [rdi - 2]
movsxd r8, eax
add rdx, 8
add rcx, 8
shl r8, 2
call fcn.180046390
mov eax, dword [rbp - 0x50]
cmp dword [rbp - 8], edi
mov ecx, 1
cmovg eax, ecx
mov rcx, qword [rbp - 0x80]
mov dword [rbp - 0x50], eax
call qword [0x180092ee8]
cmp dword [rbp - 0x50], 0
je 0x1800726e9
xor edx, edx
jmp 0x1800726f3
mov eax, dword [rbp - 8]
cdq
sub eax, edx
sar eax, 1
mov edx, eax
cmp edi, 2
jge 0x1800726fe
xor edx, edx
mov eax, edx
jmp 0x180072735
mov ecx, dword [rbp - 0x28]
mov rdi, qword [rbp + 0x110]
mov eax, dword [rbp - 0x10]
sub ebx, ecx
sub eax, ecx
mov dword [rdi + 4], eax
mov eax, edx
mov dword [rdi], ebx
jmp 0x180072735
cmp dword [rbp - 0x38], 0
je 0x18007272b
cmp dword [rbp - 0x34], 0
je 0x18007272b
mov eax, 0xfffffff4
jmp 0x180072735
or eax, 0xffffffff
jmp 0x180072735
mov eax, 0xfffffffe
mov rbx, qword [rsp + 0x1e8]
add rsp, 0x1a0
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret