Function at 0x1400d6450
Capabilities:
Parse pe header

Disassembly:
mov byte [rsp + 0x20], r9b
push rbp
nop
sub rsp, 8
mov qword [rsp], rbx
push rsi
nop
sub rsp, 8
mov qword [rsp], r12
nop
mov qword [rsp - 8], r13
sub rsp, 8
nop
mov qword [rsp - 8], r14
sub rsp, 8
push r15
lea rbp, [rsp - 0x17]
sub rsp, 0xb0
movzx r12d, r9b
mov rbx, r8
xchg rsi, rdx
mov rdx, rsi
xchg rsi, rdx
xchg rcx, r13
mov rcx, r13
xchg r13, rcx
test rdx, rdx
je 0x1400d6ec0
mov eax, 0x5a4d
cmp word [rdx], ax
jne 0x1400d6ec0
movsxd r15, dword [rdx + 0x3c]
add r15, rdx
xchg r9, r15
mov qword [rbp - 0x41], r9
xchg r15, r9
cmp dword [r15], 0x4550
jne 0x1400d6ec0
xchg rcx, r11
mov r11, qword [rbp + 0x7f]
xchg r11, rcx
xor r14d, r14d
mov qword [rbp - 0x59], r14
mov eax, dword [r15 + 0x50]
xchg r10, rax
mov qword [rbp + 7], r10
xchg r10, rax
test rcx, rcx
je 0x1400d6506
xchg r14, rax
mov qword [rcx], r14
xchg r14, rax
xor r9d, r9d
mov dword [rsp + 0x30], 0x40
lea rax, [rbp + 7]
mov dword [rsp + 0x28], 0x3000
lea rcx, [r13 + 0x50]
mov qword [rsp + 0x20], rax
lea r8, [rbp - 0x59]
lea rdx, [r9 - 1]
call fcn.1400d4930
test eax, eax
js 0x1400d6ec0
mov r8d, dword [r15 + 0x54]
xchg rsi, rdx
mov rsi, rdx
xchg rsi, rdx
mov rcx, qword [rbp - 0x59]
mov qword [rsp + 0xf0], rdi
call fcn.14014fee0
mov edi, r14d
cmp r14w, word [r15 + 6]
jae 0x1400d65a6
nop word [rax + rax]
mov eax, edi
lea rcx, [rax + rax*4]
mov edx, dword [r15 + rcx*8 + 0x11c]
mov r8d, dword [r15 + rcx*8 + 0x118]
add rdx, rsi
mov ecx, dword [r15 + rcx*8 + 0x114]
add rcx, qword [rbp - 0x59]
call fcn.14014fee0
movzx eax, word [r15 + 6]
inc edi
cmp edi, eax
jb 0x1400d656d
xchg rdx, rdi
mov rdx, qword [rbp - 0x59]
xchg rdi, rdx
test rbx, rbx
mov eax, dword [r15 + 0xb0]
cmove rbx, rdi
xor esi, esi
mov edx, esi
test eax, eax
je 0x1400d65ce
lea rdx, [rdi + rax]
mov eax, dword [r15 + 0x90]
xchg r9, rbp
mov rbp, rsi
xchg rbp, r9
test eax, eax
je 0x1400d65ea
lea r9, [rdi + rax]
sub rbx, qword [r15 + 0x30]
mov qword [rbp - 0x49], r9
test rdx, rdx
je 0x1400d665f
cmp dword [rdx], r14d
je 0x1400d665f
mov eax, dword [rdx + 4]
cmp eax, 8
jb 0x1400d6653
lea r8, [rax - 8]
mov ecx, esi
shr r8, 1
je 0x1400d6653
xchg rbx, rax
mov rbx, rsi
xchg rbx, rax
nop dword [rax]
movzx eax, word [rdx + rax*2 + 8]
test ax, ax
je 0x1400d6646
and eax, 0xfff
add eax, dword [rdx]
add qword [rax + rdi], rbx
mov rdi, qword [rbp - 0x59]
inc ecx
mov eax, ecx
cmp rax, r8
jb 0x1400d6629
mov eax, dword [rdx + 4]
add rdx, rax
jne 0x1400d65fb
movabs rdx, 0x852396afe3269
movabs rbx, 0xc562983199256
test r9, r9
je 0x1400d6beb
mov eax, dword [r9]
movabs r8, 0x85fec382c
movabs r15, 0x582359a27a94a75
test eax, eax
je 0x1400d6bdc
mov r14d, dword [r9 + 0x10]
lea r12, [rdi + rax]
mov ecx, dword [r9 + 0xc]
add r14, rdi
add rcx, rdi
mov rax, 0xffffffffffffffff
xchg rcx, r13
mov qword [rbp - 0x11], r13
xchg r13, rcx
inc rax
cmp byte [rcx + rax], 0
jne 0x1400d66be
cmp qword [0x1401670e0], rdx
mov word [rbp - 0x19], ax
mov word [rbp - 0x17], ax
je 0x1400d677a
mov rax, qword [0x1401670f0]
cmp rax, rbx
je 0x1400d677a
cmp byte [0x140168220], 0
jne 0x1400d670e
xor rax, rbx
lea rdx, [0x1400d53f0]
mov ecx, 1
call rax
mov ecx, 1
call fcn.14014ee1c
mov rbx, qword [r13 + 0xa0]
lea rdx, [rbp - 0x51]
xchg rcx, r8
mov r8, rax
xchg r8, rcx
xor rbx, r15
movabs r15, 0x582359278457259
mov rdi, rax
xor rcx, r15
xchg rdi, rcx
mov qword [rbp - 0x51], rdi
xchg rdi, rcx
lea rcx, [0x140168210]
call fcn.140028f50
mov r8b, 1
lea rdx, [rbp - 0x19]
lea rcx, [rbp - 0x29]
xchg rbx, r13
mov qword [rax], r13
xchg rbx, r13
call rdi
movabs rbx, 0xc562983199256
jmp 0x1400d679b
mov rax, qword [r13 + 0xa0]
lea rdx, [rbp - 0x19]
xor rax, r8
lea rcx, [rbp - 0x29]
mov r8b, 1
call rax
movabs r15, 0x582359278457259
movabs rax, 0x852396afe3269
mov qword [rbp + 0x5f], rsi
cmp qword [0x1401670e0], rax
je 0x1400d6845
mov rax, qword [0x1401670f0]
cmp rax, rbx
je 0x1400d6845
cmp byte [0x140168220], 0
jne 0x1400d67e4
xor rax, rbx
lea rdx, [0x1400d53f0]
mov ecx, 1
call rax
mov ecx, 1
call fcn.14014ee1c
mov rbx, qword [r13 + 0x90]
lea rdx, [rbp - 0x51]
xchg rdi, rax
mov rax, rdi
xchg rdi, rax
movabs rax, 0x582359b30125d9a
xchg rcx, r10
mov r10, rdi
xchg r10, rcx
xor rbx, rax
xor rcx, r15
mov qword [rbp - 0x51], rcx
lea rcx, [0x140168210]
call fcn.140028f50
lea r9, [rbp + 0x5f]
xor edx, edx
lea r8, [rbp - 0x29]
xor ecx, ecx
xchg r8, rbx
mov qword [rax], r8
xchg r8, rbx
call rdi
jmp 0x1400d6867
mov rax, qword [r13 + 0x90]
lea r9, [rbp + 0x5f]
movabs rcx, 0x948572fc3
lea r8, [rbp - 0x29]
xor rax, rcx
xor edx, edx
xor ecx, ecx
call rax
movabs rbx, 0x852396afe3269
cmp qword [0x1401670e0], rbx
je 0x1400d691b
mov rax, qword [0x1401670f0]
movabs rcx, 0xc562983199256
cmp rax, rcx
je 0x1400d691b
cmp byte [0x140168220], 0
jne 0x1400d68b6
xor rax, rcx
lea rdx, [0x1400d53f0]
mov ecx, 1
call rax
mov ecx, 1
call fcn.14014ee1c
mov rbx, qword [r13 + 0xb0]
lea rdx, [rbp - 0x51]
xchg rdi, rsi
mov rsi, rax
xchg rdi, rsi
movabs rax, 0x582359a27e94a75
xchg rcx, rdi
mov rdi, rcx
xchg rdi, rcx
xor rbx, rax
xor rcx, r15
mov qword [rbp - 0x51], rcx
lea rcx, [0x140168210]
call fcn.140028f50
lea rcx, [rbp - 0x29]
xchg r10, rbx
mov qword [rax], r10
xchg rbx, r10
call rdi
movabs rbx, 0x852396afe3269
jmp 0x1400d6935
mov rax, qword [r13 + 0xb0]
movabs rcx, 0x85fac382c
xor rax, rcx
lea rcx, [rbp - 0x29]
call rax
xchg rbx, r15
mov rbx, qword [rbp + 0x5f]
xchg rbx, r15
test r15, r15
je 0x1400d6bac
xchg rsi, r8
mov r8, qword [r12]
xchg rsi, r8
test rsi, rsi
je 0x1400d6baa
sub r12, r14
nop word [rax + rax]
test rsi, rsi
jns 0x1400d6a5f
cmp qword [0x1401670e0], rbx
mov qword [rbp - 0x51], 0
je 0x1400d6a2e
mov rax, qword [0x1401670f0]
movabs rcx, 0xc562983199256
cmp rax, rcx
je 0x1400d6a2e
cmp byte [0x140168220], 0
jne 0x1400d69ba
xor rax, rcx
lea rdx, [0x1400d53f0]
mov ecx, 1
call rax
mov ecx, 1
call fcn.14014ee1c
mov rbx, qword [r13 + 0xc0]
lea rdx, [rbp - 0x39]
mov rdi, rax
movabs rax, 0x5823592dc79f24b
xor rbx, rax
xchg rcx, rdi
mov rdi, rcx
xchg rdi, rcx
movabs rax, 0x582359278457259
xor rcx, rax
mov qword [rbp - 0x39], rcx
lea rcx, [0x140168210]
call fcn.140028f50
lea r9, [rbp - 0x51]
movzx r8d, si
xor edx, edx
mov rcx, r15
mov qword [rax], rbx
call rdi
xchg r8, rax
mov r8, qword [rbp - 0x51]
xchg r8, rax
movabs rbx, 0x852396afe3269
jmp 0x1400d6b82
mov rax, qword [r13 + 0xc0]
lea r9, [rbp - 0x51]
mov ecx, 0xa43c8012
movzx r8d, si
xor rax, rcx
xor edx, edx
xchg r10, r15
mov rcx, r10
xchg r10, r15
call rax
xchg r12, rax
mov r12, qword [rbp - 0x51]
xchg r12, rax
jmp 0x1400d6b82
mov rcx, qword [rbp - 0x59]
mov rax, 0xffffffffffffffff
add rcx, 2
add rcx, rsi
mov qword [rbp - 1], rcx
nop dword [rax]
inc rax
cmp byte [rcx + rax], 0
jne 0x1400d6a7c
cmp qword [0x1401670e0], rbx
mov word [rbp - 9], ax
mov word [rbp - 7], ax
mov qword [rbp - 0x31], 0
je 0x1400d6b55
mov rax, qword [0x1401670f0]
movabs rcx, 0xc562983199256
cmp rax, rcx
je 0x1400d6b55
cmp byte [0x140168220], 0
jne 0x1400d6ade
xor rax, rcx
lea rdx, [0x1400d53f0]
mov ecx, 1
call rax
mov ecx, 1
call fcn.14014ee1c
xchg rbx, rcx
mov rcx, qword [r13 + 0xc0]
xchg rbx, rcx
lea rcx, [0x140168210]
xchg r15, rax
mov rdi, r15
xchg r15, rax
movabs rax, 0x5823592dc79f24b
xor rbx, rax
xchg rdi, rdx
mov rdi, rdx
xchg rdx, rdi
movabs rax, 0x582359278457259
xor rdx, rax
mov qword [rbp - 0x39], rdx
lea rdx, [rbp - 0x39]
call fcn.140028f50
xor r8d, r8d
lea r9, [rbp - 0x31]
lea rdx, [rbp - 9]
mov rcx, r15
mov qword [rax], rbx
call rdi
movabs rbx, 0x852396afe3269
jmp 0x1400d6b7e
xchg r15, rax
mov r15, qword [r13 + 0xc0]
xchg r15, rax
lea r9, [rbp - 0x31]
mov ecx, 0xa43c8012
lea rdx, [rbp - 9]
xor rax, rcx
xor r8d, r8d
xchg rcx, r15
mov r15, rcx
xchg r15, rcx
call rax
mov rax, qword [rbp - 0x31]
mov qword [r14], rax
nop
sub r14, 0x19d9d67b
add r14, 0x19d9d683
mov rsi, qword [r12 + r14]
test rsi, rsi
je 0x1400d6baa
mov r15, qword [rbp + 0x5f]
jmp 0x1400d6964
xor esi, esi
mov r9, qword [rbp - 0x49]
movabs rbx, 0xc562983199256
xchg r10, rdi
mov r10, qword [rbp - 0x59]
xchg rdi, r10
add r9, 0x14
mov qword [rbp - 0x49], r9
movabs rdx, 0x852396afe3269
jne 0x1400d667c
movzx r12d, byte [rbp + 0x6f]
xchg r15, r11
mov r11, qword [rbp - 0x41]
xchg r15, r11
mov r14d, esi
cmp si, word [r15 + 6]
jae 0x1400d6da4
mov r12d, 4
nop
mov eax, r14d
lea rcx, [rax + rax*4]
mov eax, dword [r15 + rcx*8 + 0x114]
mov esi, dword [r15 + rcx*8 + 0x12c]
add rax, rdi
mov qword [rbp - 0x49], rax
mov eax, dword [r15 + rcx*8 + 0x118]
mov qword [rbp - 0x41], rax
bt esi, 0x19
jae 0x1400d6c3e
mov esi, 2
jmp 0x1400d6c7d
bt esi, 0x1d
jae 0x1400d6c70
sar esi, 0xb
sar esi, 1
sar esi, 6
sar esi, 5
sar esi, 5
sar esi, 2
sar esi, 1
and esi, 0x20
nop
sub esi, 0x1be9cfc
add esi, 0x1be9d1c
jmp 0x1400d6c7d
test esi, esi
mov eax, 2
cmovs eax, r12d
mov esi, eax
xor eax, eax
cmp qword [0x1401670e0], rdx
mov dword [rbp + 0x5f], eax
je 0x1400d6d37
mov rax, qword [0x1401670f0]
cmp rax, rbx
je 0x1400d6d37
cmp byte [0x140168220], 0
jne 0x1400d6cbd
xor rax, rbx
lea rdx, [0x1400d53f0]
mov ecx, 1
call rax
mov ecx, 1
call fcn.14014ee1c
mov rbx, qword [r13 + 0xd0]
lea rdx, [rbp - 0x39]
xchg r14, rdi
mov r14, rax
xchg rdi, r14
movabs rax, 0x582359264eb86c1
xor rbx, rax
mov rcx, rdi
movabs rax, 0x582359278457259
xor rcx, rax
mov qword [rbp - 0x39], rcx
lea rcx, [0x140168210]
call fcn.140028f50
mov r9d, esi
lea r8, [rbp - 0x41]
lea rdx, [rbp - 0x49]
mov rcx, 0xffffffffffffffff
xchg r9, rbx
mov qword [rax], r9
xchg rbx, r9
lea rax, [rbp + 0x5f]
xchg rbp, rax
mov qword [rsp + 0x20], rbp
xchg rbp, rax
call rdi
jmp 0x1400d6d6b
xchg rdx, rax
mov rdx, qword [r13 + 0xd0]
xchg rdx, rax
lea rcx, [rbp + 0x5f]
xchg r10, rcx
mov qword [rsp + 0x20], r10
xchg rcx, r10
lea r8, [rbp - 0x41]
mov rcx, 0xffffffffffffffff
lea rdx, [rbp - 0x49]
xor rax, 0x1caef498
mov r9d, esi
call rax
movzx eax, word [r15 + 6]
inc r14d
xchg r14, rdi
mov r14, qword [rbp - 0x59]
xchg rdi, r14
cmp r14d, eax
jae 0x1400d6d9f
movabs rbx, 0xc562983199256
movabs rdx, 0x852396afe3269
jmp 0x1400d6c00
movzx r12d, byte [rbp + 0x6f]
cmp byte [rbp + 0x77], 0
jne 0x1400d6e7f
mov eax, dword [r15 + 0x28]
test eax, eax
je 0x1400d6e7f
lea rsi, [rdi + rax]
movabs rax, 0x852396afe3269
cmp qword [0x1401670e0], rax
je 0x1400d6e69
mov rax, qword [0x1401670f0]
movabs rcx, 0xc562983199256
cmp rax, rcx
je 0x1400d6e69
cmp byte [0x140168220], 0
jne 0x1400d6e0d
xor rax, rcx
lea rdx, [0x1400d53f0]
mov ecx, 1
call rax
mov ecx, 1
call fcn.14014ee1c
xchg r8, rax
mov rax, r8
xchg r8, rax
lea rdx, [rbp + 0x5f]
movabs r14, 0x582359278457259
lea rcx, [0x140168210]
xor r8, r14
xchg rbx, rax
mov rax, rbx
xchg rbx, rax
mov qword [rbp + 0x5f], r8
call fcn.140028f50
xor r8d, r8d
xor rsi, r14
xchg r11, rcx
mov r11, rdi
xchg r11, rcx
xchg rsi, r12
mov qword [rax], r12
xchg rsi, r12
lea edx, [r8 + 1]
call rbx
jmp 0x1400d6e7b
xor r8d, r8d
xchg rdi, rsi
mov rcx, rsi
xchg rdi, rsi
lea edx, [r8 + 1]
call rsi
mov rdi, qword [rbp - 0x59]
test r12b, r12b
je 0x1400d6ea6
mov r8d, dword [r15 + 0x54]
xor edx, edx
xchg rcx, rdi
mov rdi, rcx
xchg rcx, rdi
call fcn.14014feb6
xchg rdi, rbx
mov rbx, qword [rbp - 0x59]
xchg rbx, rdi
xchg rdi, rax
mov rdi, rax
xchg rdi, rax
xchg r15, rdi
mov r15, qword [rsp + 0xf0]
xchg r15, rdi
jmp 0x1400d6ec2
xor eax, eax
add rsp, 0xb0
nop
add rsp, 8
mov r15, qword [rsp - 8]
nop
mov r14, qword [rsp]
add rsp, 8
nop
xchg qword [rsp], r13
add rsp, 8
push rdx
push rdx
push rax
push rdx
xchg qword [rsp + 0x20], r12
pop rdx
pop rax
pop rdx
pop rdx
add rsp, 8
nop
xchg qword [rsp], rsi
add rsp, 8
nop
add rsp, 8
xchg qword [rsp - 8], rbx
push rbx
push rdx
push rax
push rax
push rax
push rdx
push rax
xchg qword [rsp + 0x38], rbp
add rsp, 0x40
ret