Function at 0x140014940
Capabilities:
Enumerate pe sections

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x48
mov rax, qword [rcx]
mov r11d, dword [rax + 0x3c]
movzx r10d, word [rax + r11 + 6]
test r10, r10
je 0x140014e2e
lea rcx, [rax + r11]
movzx r8d, word [rax + r11 + 0x14]
lea r9, [rcx + r8]
lea r12, [r8 + rcx]
add r12, 0x18
lea rsi, [r10 + r10*4]
lea r9, [r9 + rsi*8]
add r9, 0x18
add r11, rax
add r11, 0x18
mov qword [rsp + 0x40], r11
shl r10, 3
lea r8, [r10 + r10*4]
mov qword [rsp + 0x30], r8
xor r8d, r8d
movabs rdi, 0xc3c10348fffff6fb
movabs r14, 0xfff8e18112e9c148
vpbroadcastb ymm0, byte [0x1400f8026]
movabs r15, 0xf6fb40000000b848
mov dword [rsp], 0
mov qword [rsp + 0x38], r12
jmp 0x1400149ed
add r12, 0x28
cmp r12, r9
je 0x140014e17
test byte [r12 + 0x27], 0x20
je 0x1400149e0
mov esi, dword [r12 + 0x10]
cmp rsi, 0x18
jb 0x1400149e0
mov ebx, dword [r12 + 0x14]
add rbx, rax
lea r10, [rbx + rsi]
add r10, 0xffffffffffffffe9
cmp r10, rbx
jbe 0x140014d3c
cmp qword [rbx + 0x10], rdi
je 0x140014d4d
lea r13, [rbx + 0xa]
cmp esi, 0x41
jb 0x140014ad8
cmp esi, 0xa1
jb 0x140014aa5
lea rbp, [rsi + rbx]
add rbp, 0xffffffffffffff69
nop word cs:[rax + rax]
vpcmpeqb ymm1, ymm0, ymmword [r13]
vpmovmskb r11d, ymm1
test r11d, r11d
jne 0x140014b04
vpcmpeqb ymm1, ymm0, ymmword [r13 + 0x20]
vpmovmskb r11d, ymm1
test r11d, r11d
jne 0x140014b0e
vpcmpeqb ymm1, ymm0, ymmword [r13 + 0x40]
vpmovmskb r11d, ymm1
test r11d, r11d
jne 0x140014b1c
vpcmpeqb ymm1, ymm0, ymmword [r13 + 0x60]
vpmovmskb r11d, ymm1
test r11d, r11d
jne 0x140014b2a
sub r13, 0xffffffffffffff80
cmp r13, rbp
jbe 0x140014a50
lea rbp, [rsi + rbx]
add rbp, 0xffffffffffffffc9
cmp r13, rbp
ja 0x140014ad8
nop word cs:[rax + rax]
vpcmpeqb ymm1, ymm0, ymmword [r13]
vpmovmskb r11d, ymm1
test r11d, r11d
jne 0x140014b04
add r13, 0x20
cmp r13, rbp
jbe 0x140014ac0
cmp r13, r10
jae 0x140014b40
mov rbp, r10
sub rbp, r13
nop word cs:[rax + rax]
cmp byte [r13], 0x3f
je 0x140014b40
inc r13
dec rbp
jne 0x140014af0
mov r13, r10
jmp 0x140014b40
tzcnt r11d, r11d
add r13, r11
jmp 0x140014b40
tzcnt r11d, r11d
add r13, r11
add r13, 0x20
jmp 0x140014b40
tzcnt r11d, r11d
add r13, r11
add r13, 0x40
jmp 0x140014b40
tzcnt r11d, r11d
add r13, r11
add r13, 0x60
nop word cs:[rax + rax]
add r13, 0xfffffffffffffff7
cmp r13, r10
jae 0x1400149e0
add rbx, rsi
lea rsi, [rbx - 0x37]
add rbx, 0xffffffffffffff69
jmp 0x140014b75
tzcnt r11d, r11d
add r13, r11
add r13, 0xfffffffffffffff7
cmp r13, r10
jae 0x1400149e0
cmp qword [r13 + 0xa], r15
je 0x140014c6b
add r13, 0xa
cmp rsi, r13
jb 0x140014c40
cmp rbx, r13
jb 0x140014bf4
nop word cs:[rax + rax]
vpcmpeqb ymm1, ymm0, ymmword [r13]
vpmovmskb r11d, ymm1
test r11d, r11d
jne 0x140014b60
vpcmpeqb ymm1, ymm0, ymmword [r13 + 0x20]
vpmovmskb r11d, ymm1
test r11d, r11d
jne 0x140014c0d
vpcmpeqb ymm1, ymm0, ymmword [r13 + 0x40]
vpmovmskb r11d, ymm1
test r11d, r11d
jne 0x140014c1e
vpcmpeqb ymm1, ymm0, ymmword [r13 + 0x60]
vpmovmskb r11d, ymm1
test r11d, r11d
jne 0x140014c2f
sub r13, 0xffffffffffffff80
cmp r13, rbx
jbe 0x140014ba0
jmp 0x140014bf4
add r13, 0x20
cmp r13, rsi
ja 0x140014c40
vpcmpeqb ymm1, ymm0, ymmword [r13]
vpmovmskb r11d, ymm1
test r11d, r11d
je 0x140014bf0
jmp 0x140014b60
tzcnt r11d, r11d
add r13, r11
add r13, 0x20
jmp 0x140014b68
tzcnt r11d, r11d
add r13, r11
add r13, 0x40
jmp 0x140014b68
tzcnt r11d, r11d
add r13, r11
add r13, 0x60
jmp 0x140014b68
cmp r13, r10
jae 0x140014b68
mov rbp, r10
sub rbp, r13
nop
cmp byte [r13], 0x3f
je 0x140014b68
inc r13
dec rbp
jne 0x140014c50
mov r13, r10
jmp 0x140014b68
cmp qword [r13], r14
jne 0x140014b7f
cmp dword [r13 + 0x12], 0x348ffff
jne 0x140014b7f
mov qword [rsp + 8], rcx
movzx r11d, word [r13 + 0x16]
cmp r11d, 0xc3c1
je 0x140014ca0
mov rcx, qword [rsp + 8]
jmp 0x140014b7f
cmp byte [r13 + 8], 0xff
jne 0x140014c96
mov r11, r13
sub r11, rax
add r11, 0xc
mov rbp, r11
mov qword [rsp + 0x18], r11
shr r11, 0x20
jne 0x140014c96
mov r11, qword [rsp + 0x30]
mov qword [rsp + 0x28], r11
mov r11, qword [rsp + 0x38]
mov qword [rsp + 0x10], r11
jmp 0x140014ce3
add qword [rsp + 0x10], 0x28
add qword [rsp + 0x28], 0xffffffffffffffd8
je 0x140014c96
mov r11, qword [rsp + 0x10]
mov ecx, dword [r11 + 0x14]
mov r11, qword [rsp + 0x18]
mov dword [rsp + 0x24], ecx
sub r11d, ecx
jb 0x140014cd5
mov ebp, dword [rsp + 0x24]
mov rcx, qword [rsp + 0x10]
add ebp, dword [rcx + 0x10]
cmp ebp, dword [rsp + 0x18]
jbe 0x140014cd5
mov rcx, qword [rsp + 0x10]
add r11d, dword [rcx + 0xc]
cmp dword [rsp + 4], r11d
movzx ecx, byte [rsp]
mov ebp, 1
cmove ebp, ecx
test r8, r8
cmove ebp, ecx
mov dword [rsp], ebp
inc r8
mov dword [rsp + 4], r11d
jmp 0x140014c96
mov r13, rbx
cmp r13, r10
jb 0x140014b4d
jmp 0x1400149e0
movabs r11, 0x40000000b8483fff
cmp qword [rbx + 8], r11
jne 0x140014a23
cmp qword [rbx], r14
jne 0x140014a23
mov r11, rbx
sub r11, rax
add r11, 0xc
mov r13, r11
mov qword [rsp + 8], r11
shr r11, 0x20
jne 0x140014a23
movzx r13d, word [rcx + 6]
test r13, r13
je 0x140014a23
movzx ebp, word [rcx + 0x14]
add rbp, qword [rsp + 0x40]
shl r13, 3
lea r11, [r13*4]
add r11, r13
mov qword [rsp + 0x18], r11
jmp 0x140014dc3
add rbp, 0x28
add qword [rsp + 0x18], 0xffffffffffffffd8
je 0x140014a23
mov r13d, dword [rbp + 0x14]
mov r11, qword [rsp + 8]
mov dword [rsp + 0x10], r13d
sub r11d, r13d
jb 0x140014db3
mov r13d, dword [rsp + 0x10]
add r13d, dword [rbp + 0x10]
cmp r13d, dword [rsp + 8]
jbe 0x140014db3
mov r13d, r11d
add r13d, dword [rbp + 0xc]
cmp dword [rsp + 4], r13d
movzx r11d, byte [rsp]
mov ebp, 1
cmove ebp, r11d
test r8, r8
cmove ebp, r11d
mov dword [rsp], ebp
inc r8
mov dword [rsp + 4], r13d
jmp 0x140014a23
xor eax, eax
test r8, r8
je 0x140014e30
cmp byte [rsp], 0
jne 0x140014e30
mov eax, dword [rsp + 4]
mov dword [rdx], eax
mov al, 1
jmp 0x140014e30
xor eax, eax
mov byte [rdx + 4], al
add rsp, 0x48
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
vzeroupper
ret