// File: establishment[P]sandman/src/rules.hpp
// Function: Rules::FilePermissions::FilePermissions(ProcessConfig::FilePermissions const&)
FilePermissions(const ProcessConfig::FilePermissions& config) {
            this->fullPermissionsOverFolder = config.fullPermissionsOverFolder;

            if (fullPermissionsOverFolder) {
                addRule(".", "rxw");
                addRule("*", "rxw");
            }

            for (auto rule : config.rules) {
                addRule(rule);
            }
        }

// Assembly:
subq $0x148, %rsp            # imm = 0x148
movq %rdi, 0x140(%rsp)
movq %rsi, 0x138(%rsp)
movq 0x140(%rsp), %rdi
movq %rdi, 0x28(%rsp)
callq 0xaf850
movq 0x28(%rsp), %rax
movq 0x138(%rsp), %rcx
cmpl $0x0, 0x18(%rcx)
setne %cl
andb $0x1, %cl
movb %cl, 0x18(%rax)
testb $0x1, 0x18(%rax)
je 0xaf1f8
leaq 0x117(%rsp), %rdi
movq %rdi, 0x20(%rsp)
callq 0x8ca50
movq 0x20(%rsp), %rdx
leaq 0x473f9(%rip), %rsi     # 0xf63c4
leaq 0x118(%rsp), %rdi
callq 0xa0a90
jmp 0xaefda
leaq 0xdf(%rsp), %rdi
movq %rdi, 0x18(%rsp)
callq 0x8ca50
movq 0x18(%rsp), %rdx
leaq 0x47359(%rip), %rsi     # 0xf6351
leaq 0xe0(%rsp), %rdi
callq 0xa0a90
jmp 0xaf007
movq 0x28(%rsp), %rdi
leaq 0x118(%rsp), %rsi
leaq 0xe0(%rsp), %rdx
callq 0xaf860
jmp 0xaf023
leaq 0xe0(%rsp), %rdi
callq 0x8cbd8
leaq 0xdf(%rsp), %rdi
callq 0x8c630
leaq 0x118(%rsp), %rdi
callq 0x8cbd8
leaq 0x117(%rsp), %rdi
callq 0x8c630
leaq 0xb7(%rsp), %rdi
movq %rdi, 0x10(%rsp)
callq 0x8ca50
movq 0x10(%rsp), %rdx
leaq 0x47355(%rip), %rsi     # 0xf63ca
leaq 0xb8(%rsp), %rdi
callq 0xa0a90
jmp 0xaf084
leaq 0x8f(%rsp), %rdi
movq %rdi, 0x8(%rsp)
callq 0x8ca50
movq 0x8(%rsp), %rdx
leaq 0x472af(%rip), %rsi     # 0xf6351
leaq 0x90(%rsp), %rdi
callq 0xa0a90
jmp 0xaf0b1
movq 0x28(%rsp), %rdi
leaq 0xb8(%rsp), %rsi
leaq 0x90(%rsp), %rdx
callq 0xaf860
jmp 0xaf0cd
leaq 0x90(%rsp), %rdi
callq 0x8cbd8
leaq 0x8f(%rsp), %rdi
callq 0x8c630
leaq 0xb8(%rsp), %rdi
callq 0x8cbd8
leaq 0xb7(%rsp), %rdi
callq 0x8c630
jmp 0xaf1f8
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x108(%rsp)
movl %eax, 0x104(%rsp)
jmp 0xaf16d
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x108(%rsp)
movl %eax, 0x104(%rsp)
jmp 0xaf153
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x108(%rsp)
movl %eax, 0x104(%rsp)
leaq 0xe0(%rsp), %rdi
callq 0x8cbd8
leaq 0xdf(%rsp), %rdi
callq 0x8c630
leaq 0x118(%rsp), %rdi
callq 0x8cbd8
leaq 0x117(%rsp), %rdi
callq 0x8c630
jmp 0xaf2fd
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x108(%rsp)
movl %eax, 0x104(%rsp)
jmp 0xaf1e6
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x108(%rsp)
movl %eax, 0x104(%rsp)
jmp 0xaf1cc
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x108(%rsp)
movl %eax, 0x104(%rsp)
leaq 0x90(%rsp), %rdi
callq 0x8cbd8
leaq 0x8f(%rsp), %rdi
callq 0x8c630
leaq 0xb8(%rsp), %rdi
callq 0x8cbd8
leaq 0xb7(%rsp), %rdi
callq 0x8c630
jmp 0xaf2fd
movq 0x138(%rsp), %rax
movq %rax, 0x80(%rsp)
movq 0x80(%rsp), %rdi
callq 0xa8bd0
movq %rax, 0x78(%rsp)
movq 0x80(%rsp), %rdi
callq 0xa8c00
movq %rax, 0x70(%rsp)
leaq 0x78(%rsp), %rdi
leaq 0x70(%rsp), %rsi
callq 0xa9070
testb $0x1, %al
jne 0xaf244
jmp 0xaf2f5
leaq 0x78(%rsp), %rdi
callq 0xa90e0
movq %rax, %rsi
leaq 0x50(%rsp), %rdi
callq 0x8c220
jmp 0xaf25d
leaq 0x30(%rsp), %rdi
leaq 0x50(%rsp), %rsi
callq 0x8c220
jmp 0xaf26e
movq 0x28(%rsp), %rdi
leaq 0x30(%rsp), %rsi
callq 0xaf940
jmp 0xaf27f
leaq 0x30(%rsp), %rdi
callq 0x8cbd8
leaq 0x50(%rsp), %rdi
callq 0x8cbd8
leaq 0x78(%rsp), %rdi
callq 0xa90f0
jmp 0xaf22c
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x108(%rsp)
movl %eax, 0x104(%rsp)
jmp 0xaf2fd
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x108(%rsp)
movl %eax, 0x104(%rsp)
jmp 0xaf2e9
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x108(%rsp)
movl %eax, 0x104(%rsp)
leaq 0x30(%rsp), %rdi
callq 0x8cbd8
leaq 0x50(%rsp), %rdi
callq 0x8cbd8
jmp 0xaf2fd
addq $0x148, %rsp            # imm = 0x148
retq
movq 0x28(%rsp), %rdi
callq 0xafb30
movq 0x108(%rsp), %rdi
callq 0x8ca40
nopw %cs:(%rax,%rax)
nop