Function at 0x140198894
Capabilities:
Enumerate pe sections

Disassembly:
push rbx
push rbp
push rsi
push r12
push r13
push r14
push r15
sub rsp, 0x50
test byte [rcx + 0xc], 0x10
mov r14, rdx
mov rsi, rcx
je 0x1401988b9
and qword [rdx], 0
jmp 0x140198b2e
call fcn.140198de0
test eax, eax
je 0x140198b27
mov rcx, qword [rsi]
mov eax, 0x1000
movsxd rbx, dword [rcx + 0x3c]
add rbx, rcx
test word [rbx + 0x16], ax
jne 0x140198b27
mov ecx, dword [rbx + 0x3c]
lea eax, [rcx - 1]
test ecx, eax
jne 0x140198b27
mov ebp, dword [rbx + 0x38]
lea eax, [rbp - 1]
test ebp, eax
jne 0x140198b27
test ecx, 0x1ff
jne 0x140198b27
dec ecx
test ebp, ecx
jne 0x140198b27
mov edx, 0xfff
test edx, ebp
jne 0x140198b27
lea eax, [rbp - 1]
test dword [rbx + 0x50], eax
jne 0x140198b27
mov r15d, dword [rbx + 0x54]
test ecx, r15d
jne 0x140198b27
mov eax, 0x10b
cmp word [rbx + 0x18], ax
jne 0x14019896f
movzx eax, word [rbx + 0x34]
test eax, eax
jne 0x140198b27
mov eax, dword [rbx + 0x60]
cmp dword [rbx + 0x64], eax
ja 0x140198b27
mov eax, dword [rbx + 0x68]
cmp dword [rbx + 0x6c], eax
ja 0x140198b27
lea rax, [rbx + 0xe8]
jmp 0x14019899e
movzx eax, word [rbx + 0x30]
test eax, eax
jne 0x140198b27
mov rax, qword [rbx + 0x60]
cmp qword [rbx + 0x68], rax
ja 0x140198b27
mov rax, qword [rbx + 0x70]
cmp qword [rbx + 0x78], rax
ja 0x140198b27
lea rax, [rbx + 0xf8]
mov r12d, dword [rsi + 0xc]
mov qword [rsp + 0xa0], rax
mov eax, r12d
and eax, 1
mov dword [rsp + 0x90], eax
je 0x1401989c1
test dword [rsi], edx
jne 0x140198b27
mov dword [rsp + 0x38], r15d
lea rdx, [rsp + 0xa8]
and dword [rsp + 0x30], 0
xor r9d, r9d
and dword [rsp + 0x28], 0
xor r8d, r8d
mov rcx, rsi
mov dword [rsp + 0x20], r15d
call fcn.140198bf4
cmp qword [rax], 0
jne 0x140198b27
movzx eax, word [rbx + 0x14]
mov r9d, r15d
mov edx, r15d
lea r15, [rbx + 0x18]
add r15, rax
movzx eax, word [rbx + 6]
lea rcx, [rax + rax*4]
lea rax, [r15 + rcx*8]
mov qword [rsp + 0xa8], rax
cmp rax, r15
jb 0x140198b27
jbe 0x140198ae7
lea r13, [r15 + 0x28]
cmp dword [rsp + 0x90], 0
jne 0x140198a61
mov ecx, dword [rbx + 0x54]
add rcx, rbx
cmp rcx, rbx
jb 0x140198b27
cmp r13, r15
jb 0x140198b27
cmp r15, rbx
jb 0x140198b27
cmp r13, rcx
ja 0x140198b27
mov eax, dword [r13 - 4]
test eax, 0x1ffff1f
jne 0x140198b27
and eax, 0x80000020
cmp eax, 0x80000020
je 0x140198b27
mov r8d, dword [r13 - 0x20]
mov eax, dword [r13 - 0x18]
mov ecx, dword [r13 - 0x14]
mov dword [rsp + 0x38], eax
mov dword [rsp + 0x30], ecx
mov rcx, rsi
mov dword [rsp + 0x28], r9d
mov r9d, dword [r13 - 0x1c]
mov dword [rsp + 0x20], r8d
mov r8d, edx
lea rdx, [rsp + 0x40]
call fcn.140198bf4
cmp qword [rax], 0
jne 0x140198b27
mov r9d, dword [r13 - 0x14]
lea edx, [rbp - 1]
add edx, dword [r13 - 0x20]
mov eax, ebp
add r9d, dword [r13 - 0x18]
neg eax
and edx, eax
add r15, 0x28
add edx, dword [r13 - 0x1c]
add r13, 0x28
cmp r15, qword [rsp + 0xa8]
jb 0x140198a2d
mov rax, qword [rsp + 0xa0]
lea rdx, [rsp + 0x90]
mov dword [rsp + 0x28], 1
mov rcx, rsi
and dword [rsp + 0x20], 0
mov r9d, dword [rax + 4]
mov r8d, dword [rax]
call fcn.140198b44
cmp qword [rax], 0
jne 0x140198b27
or r12d, 0x10
and qword [r14], 0
mov dword [rsi + 0xc], r12d
jmp 0x140198b2e
mov qword [r14], 1
mov rax, r14
add rsp, 0x50
pop r15
pop r14
pop r13
pop r12
pop rsi
pop rbp
pop rbx
ret