Function at 0x14000266c
Capabilities:
Parse pe header

Disassembly:
mov qword [rsp + 8], rbx
mov byte [rsp + 0x18], r8b
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x160
mov sil, r8b
mov rbp, rdx
mov rbx, rcx
test rdx, rdx
je 0x1400029bb
mov eax, 0xffff
mov word [rsp + 0x1a8], ax
cmp rdx, rax
jae 0x1400026b6
mov word [rsp + 0x1a8], dx
jmp 0x1400026db
cmp byte [rdx], 0x23
jne 0x1400026db
lea rcx, [rdx + 1]
call qword [0x140005100]
lea ecx, [rax - 1]
cmp ecx, 0xfffd
ja 0x1400026db
mov word [rsp + 0x1a8], ax
movzx ebp, ax
test rbx, rbx
je 0x1400029bb
mov eax, 0x5a4d
cmp word [rbx], ax
jne 0x1400029bb
movsxd r13, dword [rbx + 0x3c]
add r13, rbx
mov qword [rsp + 0x50], r13
cmp dword [r13], 0x4550
jne 0x1400029bb
and dword [rsp + 0x1b8], 0
lea r9, [rsp + 0x1b8]
xor r8d, r8d
mov dl, sil
mov rcx, rbx
call fcn.140002c1c
mov rdi, rax
test rax, rax
je 0x1400029bb
mov r15d, dword [rsp + 0x1b8]
test r15d, r15d
je 0x1400029bb
mov ecx, dword [rax + 0x14]
test ecx, ecx
je 0x1400029bb
cmp r15d, 0x28
ja 0x140002771
mov eax, dword [rax + 0x18]
cmp ecx, eax
cmova eax, ecx
imul r15d, eax, 0xff
add r15d, dword [rdi + 0x24]
sub r15d, edi
add r15d, ebx
mov r8d, dword [rdi + 0x20]
test sil, sil
je 0x14000278d
mov r14d, dword [rdi + 0x1c]
lea rsi, [rbx + r8]
mov edx, dword [rdi + 0x24]
add r14, rbx
add rdx, rbx
jmp 0x1400027bf
mov rdx, rbx
mov rcx, r13
call fcn.140002ed8
mov r8d, dword [rdi + 0x1c]
mov rdx, rbx
mov rcx, r13
mov rsi, rax
call fcn.140002ed8
mov r8d, dword [rdi + 0x24]
mov rdx, rbx
mov rcx, r13
mov r14, rax
call fcn.140002ed8
mov rdx, rax
xor eax, eax
mov qword [rsp + 0x20], rdx
mov dword [rsp + 0x28], eax
cmp dword [rdi + 0x14], eax
jbe 0x1400029bb
mov ecx, eax
movzx eax, word [rdx + rax*2]
mov word [rsp + 0x1b8], ax
mov r12d, dword [r14 + rax*4]
test r12d, r12d
je 0x14000297d
cmp byte [rsp + 0x1b0], 0
mov r8d, dword [rsi + rcx*4]
je 0x140002923
lea rcx, [rbx + r12]
lea rdx, [rbx + r8]
mov r12, rcx
mov r8, rdx
cmp rcx, rdi
jbe 0x140002949
mov eax, r15d
add rax, rdi
cmp rcx, rax
jae 0x140002949
xor r8d, r8d
mov qword [rsp + 0x48], rcx
xor eax, eax
mov qword [rsp + 0x30], rdx
mov r9, rcx
cmp byte [rax + rcx], r8b
je 0x14000284b
inc rax
cmp rax, 0x100
jb 0x140002838
jmp 0x14000285c
lea r8d, [rax + 1]
cmp r8d, 0x100
jae 0x140002978
xor edx, edx
mov r11d, r8d
test r8d, r8d
je 0x14000288b
lea rax, [rsp + 0x60]
mov r10, r9
sub r10, rax
lea rax, [rsp + 0x60]
add rax, rdx
mov cl, byte [r10 + rax]
mov byte [rax], cl
test cl, cl
je 0x14000288b
inc rdx
cmp rdx, r11
jb 0x140002871
xor eax, eax
test r8d, r8d
je 0x140002978
lea rcx, [rsp + 0x60]
cmp byte [rcx], 0x2e
lea edx, [rax + 1]
mov r12, rsi
je 0x1400028b5
inc rcx
mov eax, edx
cmp edx, r8d
jb 0x14000289b
jmp 0x140002978
mov byte [rsp + rax + 0x60], 0
add rdx, r9
je 0x140002978
cmp byte [rdx], 0x23
jne 0x140002910
lea rcx, [rdx + 1]
test rcx, rcx
je 0x140002978
mov eax, 0xffff
cmp word [rsp + 0x1a8], ax
jae 0x140002978
call qword [0x140005100]
mov esi, eax
lea ecx, [rsi - 1]
cmp ecx, 0xfffe
ja 0x14000290b
movzx ecx, word [rsp + 0x1a8]
cmp esi, ecx
je 0x140002996
mov rsi, r12
jmp 0x140002978
mov rcx, rbp
call fcn.140002ff8
test eax, eax
jne 0x140002978
mov r12, qword [rsp + 0x48]
jmp 0x140002944
mov rdx, rbx
mov rcx, r13
call fcn.140002ed8
mov r8d, r12d
mov qword [rsp + 0x30], rax
mov rdx, rbx
mov rcx, r13
call fcn.140002ed8
mov r12, rax
mov r8, qword [rsp + 0x30]
mov eax, 0xffff
cmp rbp, rax
jbe 0x140002962
mov rdx, r8
mov rcx, rbp
call fcn.140002ff8
test eax, eax
je 0x1400029b6
movzx ecx, word [rsp + 0x1b8]
movzx eax, word [rsp + 0x1a8]
inc ecx
cmp ecx, eax
je 0x1400029b6
mov rdx, qword [rsp + 0x20]
mov eax, dword [rsp + 0x28]
inc eax
mov dword [rsp + 0x28], eax
cmp eax, dword [rdi + 0x14]
jae 0x1400029bb
mov r13, qword [rsp + 0x50]
jmp 0x1400027d3
lea rcx, [rsp + 0x60]
call qword [0x140005180]
mov r8b, byte [rsp + 0x1b0]
mov rcx, rax
movzx edx, si
call fcn.14000266c
jmp 0x1400029bd
mov rax, r12
jmp 0x1400029bd
xor eax, eax
mov rbx, qword [rsp + 0x1a0]
add rsp, 0x160
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret