Function at 0x14005560c
Capabilities:
Inspect section memory permissions

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x88
mov r13d, 1
mov edi, 0x80000001
cmp r9d, 0x80000001
je 0x140055bc8
mov r10, rdx
movzx eax, word [rsp + 0xf0]
mov rbp, qword [rcx + 0x18]
movzx ebx, ax
cmp ebx, 0x100
jne 0x140055678
mov r14, qword [rcx]
cmp qword [r14 + 0x308], 0xff
jbe case.0x140055996.4
mov rax, qword [r14 + 0x2f8]
movzx eax, byte [rax + 0xff]
inc rax
jmp 0x140055696
mov r14, qword [rcx]
movzx eax, bl
cmp qword [r14 + 0x308], rax
jbe case.0x140055996.4
mov rdx, qword [r14 + 0x2f8]
movzx eax, byte [rdx + rax]
mov esi, r9d
add rax, rsi
cmp qword [rbp + 0x60], rax
jbe case.0x140055996.4
mov rdx, qword [rbp + 0x50]
mov edi, dword [rdx + rax*4]
cmp edi, 0x80000000
je 0x1400556d5
cmp edi, 0x80000001
je 0x1400557a7
cmp edi, 0x80000002
jne 0x140055bc8
xor r13d, r13d
jmp 0x140055bc8
mov dword [rsp + 0x34], r9d
mov qword [r10 + 0x10], 0
mov rdi, qword [rbp + 0x48]
test rdi, rdi
je case.0x140055996.4
mov rax, rsi
xor edx, edx
div rdi
cmp rax, qword [rbp + 0x40]
jae case.0x140055996.4
mov qword [rsp + 0x38], rbx
mov qword [rsp + 0x40], r8
mov qword [rsp + 0x60], rcx
mov qword [rsp + 0x58], rbp
mov rdx, qword [rbp + 0x30]
shl rax, 4
mov rcx, qword [rdx + rax + 8]
test rcx, rcx
je case.0x140055996.4
mov qword [rsp + 0x68], rsi
mov rax, qword [rdx + rax]
add rax, 0x11
dec rcx
lea rdi, [rsp + 0x70]
mov qword [rdi], 0
mov qword [rdi + 8], rax
mov qword [rdi + 0x10], rcx
mov rbp, qword [r10]
mov rbx, qword [r10 + 8]
mov rsi, qword [r10 + 0x20]
mov qword [rsp + 0x48], r10
mov r12, qword [r10 + 0x18]
xor r15d, r15d
xor r13d, r13d
mov rcx, rdi
call fcn.140054489
test rax, rax
je 0x1400557b1
cmp rbx, r13
je case.0x140055996.4
mov qword [rbp + r13*8], rdx
lea rax, [r13 + 1]
mov rcx, qword [rsp + 0x48]
mov qword [rcx + 0x10], rax
cmp rsi, rdx
jbe case.0x140055996.4
mov qword [r12 + rdx*8], r13
add r15, 0xfffffffffffffff8
mov r13, rax
jmp 0x140055769
mov edi, 0x80000001
jmp 0x140055bc8
mov qword [rsp + 0x50], rsi
mov rbx, qword [rsp + 0x58]
mov rcx, qword [rbx + 0x48]
test rcx, rcx
mov r10, qword [rsp + 0x40]
mov rsi, qword [rsp + 0x38]
je case.0x140055996.4
mov rax, qword [rsp + 0x68]
xor edx, edx
div rcx
cmp rax, qword [rbx + 0x40]
jae case.0x140055996.4
mov rcx, qword [rbx + 0x30]
shl rax, 4
cmp qword [rcx + rax + 8], 0
je case.0x140055996.4
mov rax, qword [rcx + rax]
mov al, byte [rax + 0x10]
cmp esi, 0x100
jne 0x14005580d
xor ecx, ecx
jmp 0x140055820
mov edx, esi
and dl, 0xdf
add dl, 0xbf
mov cl, 1
cmp dl, 0x1a
jae 0x140055abe
test al, 4
jne 0x14005582e
mov rbp, qword [rsp + 0x48]
jmp 0x140055904
and al, 2
shr al, 1
xor edi, edi
cmp esi, 0x100
sete r8b
cmp sil, 0xa
sete dl
xor al, cl
mov qword [r10 + 0x10], 0
movabs rcx, 0x100000000
movabs rax, 0x10000000000
cmovne rax, rcx
test r13, r13
mov rsi, qword [rsp + 0x50]
je 0x1400558bb
neg r15
or dl, r8b
movzx ecx, dl
shl rcx, 0x18
mov dil, r8b
shl rdi, 8
or rdi, rcx
or rdi, rax
mov r8, qword [rbp]
mov rax, r8
shr rax, 0x20
jne case.0x140055996.4
add rbp, 8
mov qword [rsp + 0x20], rdi
mov rcx, r14
mov rdx, rbx
mov r9, qword [rsp + 0x40]
call fcn.140054564
add r15, 0xfffffffffffffff8
jne 0x14005588b
mov rbp, qword [rsp + 0x48]
movups xmm0, xmmword [rbp]
movups xmm1, xmmword [rbp + 0x10]
mov r10, qword [rsp + 0x40]
movups xmm2, xmmword [r10]
mov rax, qword [r10 + 0x10]
mov qword [rbp + 0x10], rax
mov rax, qword [r10 + 0x18]
mov qword [rbp + 0x18], rax
movups xmmword [rbp], xmm2
movups xmmword [r10 + 0x10], xmm1
movups xmmword [r10], xmm0
mov rax, qword [r10 + 0x20]
mov qword [rbp + 0x20], rax
mov qword [r10 + 0x20], rsi
mov qword [rsp + 0x50], rax
mov rsi, qword [rsp + 0x38]
cmp esi, 0x100
sete al
cmp sil, 0xa
setne cl
cmp esi, 0x100
jne 0x140055921
xor r12d, r12d
jmp 0x140055935
mov edx, esi
and dl, 0xdf
add dl, 0xbf
cmp dl, 0x1a
jae 0x140055ae1
mov r12b, 2
mov qword [r10 + 0x10], 0
mov rdi, qword [rbp + 0x10]
test rdi, rdi
je 0x140055a5b
or al, cl
mov r13, qword [rbp]
xor al, 1
movzx eax, al
shl rax, 0x10
mov qword [rsp + 0x38], rax
shl rdi, 3
xor ebx, ebx
lea r15, [0x140055c44]
mov rax, qword [r13 + rbx]
cmp rax, qword [r14 + 0x2b0]
jae case.0x140055996.4
mov rcx, qword [r14 + 0x2a0]
mov rdx, rax
shl rdx, 5
mov rbp, qword [rcx + rdx]
movsxd rbp, dword [r15 + rbp*4]
add rbp, r15
jmp rbp
add rbx, 8
cmp rdi, rbx
jne 0x14005596b
jmp 0x140055a5b
or r12b, 1
cmp byte [r14 + 0x31b], 0
mov rcx, qword [r14 + 0x2c8]
je 0x140055a04
cmp rcx, 2
jb case.0x140055996.1
jmp 0x140055a0a
cmp esi, 0x100
je case.0x140055996.1
cmp byte [rcx + rdx + 0x10], sil
ja case.0x140055996.1
lea rax, [rcx + rdx]
add rax, 8
cmp byte [rax + 9], sil
jb case.0x140055996.1
mov r8d, dword [rax]
mov rax, qword [rsp + 0x38]
mov qword [rsp + 0x20], rax
mov rcx, r14
mov rdx, qword [rsp + 0x58]
mov r9, r10
call fcn.140054564
mov r10, qword [rsp + 0x40]
jmp case.0x140055996.1
cmp rcx, 1
jbe 0x140055a5b
cmp qword [r10 + 0x20], rax
jbe case.0x140055996.4
mov rcx, qword [r10 + 0x10]
mov rdx, qword [r10 + 0x18]
mov rbp, qword [rdx + rax*8]
cmp rbp, rcx
jae 0x140055a38
mov r8, rsi
mov rsi, qword [r10]
cmp qword [rsi + rbp*8], rax
mov rsi, r8
je case.0x140055996.1
cmp rcx, qword [r10 + 8]
jae case.0x140055996.4
mov rbp, qword [r10]
mov qword [rbp + rcx*8], rax
lea rbp, [rcx + 1]
mov qword [r10 + 0x10], rbp
mov qword [rdx + rax*8], rcx
jmp case.0x140055996.1
xor r13d, r13d
mov r15d, 0
cmp esi, 0x100
mov rbx, qword [rsp + 0x60]
jne 0x140055b07
cmp qword [r14 + 0x2c8], 2
jb 0x140055b04
mov rcx, qword [rsp + 0x48]
movups xmm0, xmmword [rcx]
movups xmm1, xmmword [rcx + 0x10]
movups xmm2, xmmword [r10]
movups xmm3, xmmword [r10 + 0x10]
movups xmmword [rcx + 0x10], xmm3
movups xmmword [rcx], xmm2
movups xmmword [r10 + 0x10], xmm1
movups xmmword [r10], xmm0
mov rax, qword [r10 + 0x20]
mov qword [rcx + 0x20], rax
mov rax, qword [rsp + 0x50]
mov qword [r10 + 0x20], rax
mov r15b, 1
jmp 0x140055b07
cmp sil, 0x30
jb 0x140055809
cmp sil, 0x3a
jb 0x140055820
cmp sil, 0x5f
jne 0x140055809
jmp 0x140055820
cmp sil, 0x30
jb 0x14005591c
cmp sil, 0x3a
jb 0x140055932
cmp sil, 0x5f
jne 0x14005591c
jmp 0x140055932
xor r15d, r15d
lea r9, [rsp + 0x34]
mov rcx, rbx
mov rdx, r10
mov r8d, r12d
call fcn.140054794
test eax, eax
je 0x140055bc8
mov edi, edx
mov eax, 0xbfffffff
and eax, dword [rbx + 0x20]
cmp eax, edx
jne 0x140055b40
mov rbp, qword [rbx]
cmp byte [rbp + 0x31b], 0
je 0x140055c16
cmp edi, 0x20000000
jae 0x140055b8e
mov rcx, qword [rbx + 0x18]
mov rbp, qword [rcx + 0x48]
test rbp, rbp
je case.0x140055996.4
mov eax, edi
xor edx, edx
div rbp
cmp rax, qword [rcx + 0x40]
jae case.0x140055996.4
mov rcx, qword [rcx + 0x30]
shl rax, 4
cmp qword [rcx + rax + 8], 0
je case.0x140055996.4
mov rax, qword [rcx + rax]
movzx eax, byte [rax + 0x10]
and eax, 1
shl eax, 0x1d
or edi, eax
mov r13d, 1
test r15b, r15b
jne 0x140055bc8
cmp esi, 0x100
jne 0x140055be1
mov rax, qword [rbx]
cmp qword [rax + 0x308], 0xff
jbe case.0x140055996.4
mov rax, qword [rax + 0x2f8]
movzx eax, byte [rax + 0xff]
inc rax
jmp 0x140055bfc
mov eax, r13d
mov edx, edi
add rsp, 0x88
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
mov rax, qword [rbx]
movzx ecx, sil
cmp qword [rax + 0x308], rcx
jbe case.0x140055996.4
mov rax, qword [rax + 0x2f8]
movzx eax, byte [rax + rcx]
mov rcx, qword [rbx + 0x18]
mov edx, dword [rsp + 0x34]
add rdx, rax
cmp qword [rcx + 0x60], rdx
jbe case.0x140055996.4
mov rax, qword [rcx + 0x50]
mov dword [rax + rdx*4], edi
jmp 0x140055bc8
mov rcx, rbp
call fcn.1400555c4
test rax, rax
je 0x140055b40
cmp byte [rbp + 0x31c], 0
jne 0x140055b40
or edi, 0x40000000
jmp 0x140055b8e
ud2