Function at 0x14001b720
Capabilities:
Enumerate pe sections
Hash data using djb2
Parse pe header

Disassembly:
mov qword [rsp + 0x10], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
mov eax, 0x1070
call fcn.140032820
sub rsp, rax
mov rax, qword [0x14003d010]
xor rax, rsp
mov qword [rsp + 0x1060], rax
mov r12, r9
mov qword [rsp + 0x38], r9
mov r14, r8
mov rbp, rdx
mov r13, rcx
mov qword [rsp + 0x40], rcx
xor r15d, r15d
mov dword [rsp + 0x30], r15d
mov rcx, qword [rcx + 0x50]
mov rsi, qword [rcx + 0x50]
test r9, r9
je 0x14001ba07
mov ebx, dword [rsp + 0x10d0]
test ebx, ebx
je 0x14001b94b
mov qword [rsp + 0x28], 0x1000
lea rax, [rsp + 0x60]
mov qword [rsp + 0x20], rax
mov r8, qword [r13 + 8]
mov rdx, qword [r13 + 0x48]
call rsi
mov eax, 0x5a4d
cmp word [rsp + 0x60], ax
jne 0x14001ba07
movsxd rax, dword [rsp + 0x9c]
lea r8, [rsp + 0x60]
add r8, rax
mov qword [rsp + 0x48], r8
cmp dword [r8], 0x4550
jne 0x14001ba07
movzx edi, word [r8 + 0x14]
add rdi, 0x18
add rdi, r8
mov r13d, r15d
cmp r15w, word [r8 + 6]
jae 0x14001b9fb
lea r12, [r15 - 1]
nop word [rax + rax]
test rdi, rdi
je 0x14001b916
mov eax, 0x1505
movsx ecx, byte [rdi]
lea rdx, [rdi + 1]
test ecx, ecx
je 0x14001b830
nop dword [rax]
imul eax, eax, 0x21
add eax, ecx
movsx ecx, byte [rdx]
lea rdx, [rdx + 1]
test ecx, ecx
jne 0x14001b820
cmp eax, ebx
jne 0x14001b916
cmp dword [rdi + 0xc], 0
je 0x14001ba07
mov eax, dword [rdi + 8]
test eax, eax
je 0x14001ba07
mov ebx, eax
mov ecx, eax
call fcn.140001390
mov rsi, rax
mov r8d, ebx
xor edx, edx
mov rcx, rax
call fcn.1400326e4
mov qword [rsp + 0x50], rsi
or dword [rsp + 0x30], 2
mov ecx, dword [rdi + 8]
mov r8d, dword [rdi + 0xc]
add r8, qword [rsp + 0x38]
mov qword [rsp + 0x20], rcx
mov r9, rsi
mov rax, qword [rsp + 0x40]
mov rdx, qword [rax + 8]
mov rcx, rax
call fcn.14001bbf0
mov rax, r12
nop dword [rax + rax]
inc rax
cmp byte [r14 + rax], 0
jne 0x14001b8a0
mov ebx, dword [rdi + 8]
sub rbx, rax
mov r10, r15
je 0x14001b902
movzx r11d, byte [r14]
nop dword [rax]
mov r8, r14
mov rax, rbp
test r11b, r11b
je 0x14001b8f4
movzx edx, r11b
mov r9, rsi
sub r9, rbp
add r9, r10
cmp dl, 0x78
jne 0x14001b8e6
movzx ecx, byte [rax]
cmp byte [r9 + rax], cl
jne 0x14001b8fa
inc r8
inc rax
movzx edx, byte [r8]
test dl, dl
jne 0x14001b8d8
cmp byte [r8], 0
je 0x14001b930
inc r10
cmp r10, rbx
jb 0x14001b8c0
mov rcx, rsi
call fcn.140031ba4
mov r8, qword [rsp + 0x48]
mov ebx, dword [rsp + 0x10d0]
add rdi, 0x28
inc r13
movzx eax, word [r8 + 6]
cmp r13, rax
jae 0x14001b9fb
jmp 0x14001b800
mov ebx, dword [rdi + 0xc]
add rbx, qword [rsp + 0x38]
add rbx, r10
mov rcx, rsi
call fcn.140031ba4
mov rax, rbx
jmp 0x14001ba09
mov ebx, 0x32
mov ecx, ebx
call fcn.140001390
mov rdi, rax
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rdi], xmm0
movups xmmword [rdi + 0x10], xmm0
movups xmmword [rdi + 0x20], xmm0
mov word [rdi + 0x30], ax
mov qword [rsp + 0x50], rdi
mov qword [rsp + 0x28], rbx
mov qword [rsp + 0x20], rdi
mov r9, r12
mov r8, qword [r13 + 8]
mov rdx, qword [r13 + 0x48]
mov rcx, qword [r13 + 0x50]
call rsi
mov r12, 0xffffffffffffffff
inc r12
cmp byte [r14 + r12], 0
jne 0x14001b995
sub rbx, r12
je 0x14001b9f3
movzx r10d, byte [r14]
nop dword [rax + rax]
mov rdx, r14
mov rcx, rbp
test r10b, r10b
je 0x14001b9e6
movzx r8d, r10b
mov r9, rdi
sub r9, rbp
add r9, r15
cmp r8b, 0x78
jne 0x14001b9d7
movzx eax, byte [rcx]
cmp byte [r9 + rcx], al
jne 0x14001b9eb
inc rdx
inc rcx
movzx r8d, byte [rdx]
test r8b, r8b
jne 0x14001b9c8
cmp byte [rdx], 0
je 0x14001ba34
inc r15
cmp r15, rbx
jb 0x14001b9b0
mov rcx, rdi
call fcn.140031ba4
lea rcx, str.Failed__n
call fcn.140001150
xor eax, eax
mov rcx, qword [rsp + 0x1060]
xor rcx, rsp
call fcn.1400318f0
mov rbx, qword [rsp + 0x10b8]
add rsp, 0x1070
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
mov rbx, qword [rsp + 0x38]
add rbx, r15
mov rcx, rdi
call fcn.140031ba4
mov rax, rbx
jmp 0x14001ba09