Function at 0x1400d6310
Capabilities:
Parse pe header

Disassembly:
mov byte [rsp + 0x20], r9b
nop
sub rsp, 8
mov qword [rsp], rbp
nop
sub rsp, 8
mov qword [rsp], rbx
nop
mov qword [rsp - 8], rsi
sub rsp, 8
nop
sub rsp, 8
mov qword [rsp], r12
nop
push 0x59012ef1
mov qword [rsp], r13
nop
mov qword [rsp - 8], r14
sub rsp, 8
nop
mov qword [rsp - 8], r15
sub rsp, 8
lea rbp, [rsp - 0x17]
sub rsp, 0xb0
movzx r12d, r9b
xchg rbx, r12
mov r12, r8
xchg rbx, r12
xchg rsi, r11
mov r11, rdx
xchg r11, rsi
xchg rsi, rcx
mov r13, rsi
xchg rcx, rsi
test rdx, rdx
je 0x1400d6d91
mov eax, 0x5a4d
cmp word [rdx], ax
jne 0x1400d6d91
movsxd r15, dword [rdx + 0x3c]
add r15, rdx
xchg r15, r13
mov qword [rbp - 0x41], r13
xchg r13, r15
cmp dword [r15], 0x4550
jne 0x1400d6d91
xchg r15, rcx
mov r15, qword [rbp + 0x7f]
xchg r15, rcx
xor r14d, r14d
mov qword [rbp - 0x59], r14
mov eax, dword [r15 + 0x50]
xchg r8, rax
mov qword [rbp + 7], r8
xchg r8, rax
test rcx, rcx
je 0x1400d63e5
xchg rbp, rax
mov qword [rcx], rbp
xchg rbp, rax
xor r9d, r9d
mov dword [rsp + 0x30], 0x40
lea rax, [rbp + 7]
mov dword [rsp + 0x28], 0x3000
lea rcx, [r13 + 0x50]
xchg r13, rax
mov qword [rsp + 0x20], r13
xchg r13, rax
lea r8, [rbp - 0x59]
lea rdx, [r9 - 1]
call fcn.1400d47c0
test eax, eax
js 0x1400d6d91
mov r8d, dword [r15 + 0x54]
mov rdx, rsi
mov rcx, qword [rbp - 0x59]
mov qword [rsp + 0xf0], rdi
call fcn.14014ff30
mov edi, r14d
cmp r14w, word [r15 + 6]
jae 0x1400d6483
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.14014ff30
movzx eax, word [r15 + 6]
inc edi
cmp edi, eax
jb 0x1400d644a
mov rdi, qword [rbp - 0x59]
test rbx, rbx
mov eax, dword [r15 + 0xb0]
cmove rbx, rdi
xor esi, esi
mov edx, esi
test eax, eax
je 0x1400d64a5
lea rdx, [rdi + rax]
mov eax, dword [r15 + 0x90]
xchg r8, r9
mov r8, rsi
xchg r8, r9
test eax, eax
je 0x1400d64c1
lea r9, [rdi + rax]
sub rbx, qword [r15 + 0x30]
mov qword [rbp - 0x49], r9
test rdx, rdx
je 0x1400d6538
cmp dword [rdx], r14d
je 0x1400d6538
mov eax, dword [rdx + 4]
cmp eax, 8
jb 0x1400d652c
lea r8, [rax - 8]
mov ecx, esi
shr r8, 1
je 0x1400d652c
xchg r11, rsi
mov rax, r11
xchg r11, rsi
nop dword [rax]
movzx eax, word [rdx + rax*2 + 8]
test ax, ax
je 0x1400d651f
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 0x1400d6502
mov eax, dword [rdx + 4]
add rdx, rax
jne 0x1400d64d2
movabs rdx, 0x852396afe3269
movabs rbx, 0xc562983199256
test r9, r9
je 0x1400d6ae0
mov eax, dword [r9]
movabs r8, 0x85fec382c
movabs r15, 0x582359a27a94a75
test eax, eax
je 0x1400d6ad1
mov r14d, dword [r9 + 0x10]
lea r12, [rdi + rax]
mov ecx, dword [r9 + 0xc]
add r14, rdi
add rcx, rdi
mov rax, 0xffffffffffffffff
mov qword [rbp - 0x11], rcx
inc rax
cmp byte [rcx + rax], 0
jne 0x1400d6591
cmp qword [0x1401670e0], rdx
mov word [rbp - 0x19], ax
mov word [rbp - 0x17], ax
je 0x1400d664f
mov rax, qword [0x1401670f0]
cmp rax, rbx
je 0x1400d664f
cmp byte [0x140168220], 0
jne 0x1400d65e1
xor rax, rbx
lea rdx, [0x1400d5220]
mov ecx, 1
call rax
mov ecx, 1
call fcn.14014ee88
xchg rbx, rsi
mov rsi, qword [r13 + 0xa0]
xchg rsi, rbx
lea rdx, [rbp - 0x51]
xchg rsi, rax
mov rcx, rsi
xchg rsi, rax
xor rbx, r15
movabs r15, 0x582359278457259
xchg rdi, rax
mov rax, rdi
xchg rdi, rax
xor rcx, r15
xchg rcx, r14
mov qword [rbp - 0x51], r14
xchg rcx, r14
lea rcx, [0x140168210]
call fcn.140028f50
mov r8b, 1
lea rdx, [rbp - 0x19]
lea rcx, [rbp - 0x29]
mov qword [rax], rbx
call rdi
movabs rbx, 0xc562983199256
jmp 0x1400d6674
xchg r12, rax
mov r12, qword [r13 + 0xa0]
xchg r12, rax
lea rdx, [rbp - 0x19]
xor rax, r8
lea rcx, [rbp - 0x29]
mov r8b, 1
call rax
movabs r15, 0x582359278457259
movabs rax, 0x852396afe3269
xchg rsi, r9
mov qword [rbp + 0x5f], r9
xchg r9, rsi
cmp qword [0x1401670e0], rax
je 0x1400d6720
mov rax, qword [0x1401670f0]
cmp rax, rbx
je 0x1400d6720
cmp byte [0x140168220], 0
jne 0x1400d66c3
xor rax, rbx
lea rdx, [0x1400d5220]
mov ecx, 1
call rax
mov ecx, 1
call fcn.14014ee88
mov rbx, qword [r13 + 0x90]
lea rdx, [rbp - 0x51]
mov rdi, rax
movabs rax, 0x582359b30125d9a
xchg r9, rcx
mov r9, rdi
xchg rcx, r9
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 rbx, rdi
mov qword [rax], rdi
xchg rdi, rbx
call rdi
jmp 0x1400d6746
xchg rcx, rax
mov rcx, qword [r13 + 0x90]
xchg rcx, rax
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 0x1400d67ee
mov rax, qword [0x1401670f0]
movabs rcx, 0xc562983199256
cmp rax, rcx
je 0x1400d67ee
cmp byte [0x140168220], 0
jne 0x1400d6795
xor rax, rcx
lea rdx, [0x1400d5220]
mov ecx, 1
call rax
mov ecx, 1
call fcn.14014ee88
mov rbx, qword [r13 + 0xb0]
lea rdx, [rbp - 0x51]
mov rdi, rax
movabs rax, 0x582359a27e94a75
mov rcx, rdi
xor rbx, rax
xor rcx, r15
xchg r12, rcx
mov qword [rbp - 0x51], r12
xchg r12, rcx
lea rcx, [0x140168210]
call fcn.140028f50
lea rcx, [rbp - 0x29]
mov qword [rax], rbx
call rdi
movabs rbx, 0x852396afe3269
jmp 0x1400d680c
xchg rbp, rax
mov rbp, qword [r13 + 0xb0]
xchg rbp, rax
movabs rcx, 0x85fac382c
xor rax, rcx
lea rcx, [rbp - 0x29]
call rax
xchg r13, r15
mov r13, qword [rbp + 0x5f]
xchg r15, r13
test r15, r15
je 0x1400d6aa1
mov rsi, qword [r12]
test rsi, rsi
je 0x1400d6a9f
sub r12, r14
nop word [rax + rax]
test rsi, rsi
jns 0x1400d6948
cmp qword [0x1401670e0], rbx
mov qword [rbp - 0x51], 0
je 0x1400d6917
mov rax, qword [0x1401670f0]
movabs rcx, 0xc562983199256
cmp rax, rcx
je 0x1400d6917
cmp byte [0x140168220], 0
jne 0x1400d688b
xor rax, rcx
lea rdx, [0x1400d5220]
mov ecx, 1
call rax
mov ecx, 1
call fcn.14014ee88
xchg rdi, rbx
mov rdi, qword [r13 + 0xc0]
xchg rdi, rbx
lea rdx, [rbp - 0x39]
xchg rsi, rax
mov rdi, rsi
xchg rsi, rax
movabs rax, 0x5823592dc79f24b
xor rbx, rax
xchg rbx, rcx
mov rbx, rdi
xchg rcx, rbx
movabs rax, 0x582359278457259
xor rcx, rax
xchg r11, rcx
mov qword [rbp - 0x39], r11
xchg rcx, r11
lea rcx, [0x140168210]
call fcn.140028f50
lea r9, [rbp - 0x51]
movzx r8d, si
xor edx, edx
xchg r15, rbx
mov rcx, rbx
xchg rbx, r15
xchg rbx, rdx
mov qword [rax], rdx
xchg rdx, rbx
call rdi
mov rax, qword [rbp - 0x51]
movabs rbx, 0x852396afe3269
jmp 0x1400d6a6d
mov rax, qword [r13 + 0xc0]
lea r9, [rbp - 0x51]
mov ecx, 0xa43c8012
movzx r8d, si
xor rax, rcx
xor edx, edx
xchg r8, rcx
mov r8, r15
xchg r8, rcx
call rax
xchg r11, rax
mov r11, qword [rbp - 0x51]
xchg r11, rax
jmp 0x1400d6a6d
mov rcx, qword [rbp - 0x59]
mov rax, 0xffffffffffffffff
sub rcx, 0xfffffffffffffffe
add rcx, rsi
mov qword [rbp - 1], rcx
nop dword [rax]
inc rax
cmp byte [rcx + rax], 0
jne 0x1400d6965
cmp qword [0x1401670e0], rbx
mov word [rbp - 9], ax
mov word [rbp - 7], ax
mov qword [rbp - 0x31], 0
je 0x1400d6a4a
mov rax, qword [0x1401670f0]
movabs rcx, 0xc562983199256
cmp rax, rcx
je 0x1400d6a4a
cmp byte [0x140168220], 0
jne 0x1400d69c7
xor rax, rcx
lea rdx, [0x1400d5220]
mov ecx, 1
call rax
mov ecx, 1
call fcn.14014ee88
xchg rbx, r15
mov r15, qword [r13 + 0xc0]
xchg r15, rbx
lea rcx, [0x140168210]
xchg rdx, rax
mov rdi, rdx
xchg rdx, rax
movabs rax, 0x5823592dc79f24b
xor rbx, rax
xchg rdi, rdx
mov rdi, rdx
xchg rdx, rdi
movabs rax, 0x582359278457259
xor rdx, rax
xchg rdx, rcx
mov qword [rbp - 0x39], rcx
xchg rcx, rdx
lea rdx, [rbp - 0x39]
call fcn.140028f50
xor r8d, r8d
lea r9, [rbp - 0x31]
lea rdx, [rbp - 9]
mov rcx, r15
xchg rbx, rdx
mov qword [rax], rdx
xchg rbx, rdx
call rdi
movabs rbx, 0x852396afe3269
jmp 0x1400d6a69
mov rax, qword [r13 + 0xc0]
lea r9, [rbp - 0x31]
mov ecx, 0xa43c8012
lea rdx, [rbp - 9]
xor rax, rcx
xor r8d, r8d
mov rcx, r15
call rax
mov rax, qword [rbp - 0x31]
xchg r8, rax
mov qword [r14], r8
xchg r8, rax
nop
sub r14, 0x4f6bd0d1
add r14, 0x4f6bd0d9
xchg r13, rsi
mov r13, qword [r12 + r14]
xchg r13, rsi
test rsi, rsi
je 0x1400d6a9f
mov r15, qword [rbp + 0x5f]
jmp 0x1400d6835
xor esi, esi
mov r9, qword [rbp - 0x49]
movabs rbx, 0xc562983199256
mov rdi, qword [rbp - 0x59]
add r9, 0x14
xchg r9, r13
mov qword [rbp - 0x49], r13
xchg r9, r13
movabs rdx, 0x852396afe3269
jne 0x1400d6555
movzx r12d, byte [rbp + 0x6f]
xchg r15, r12
mov r12, qword [rbp - 0x41]
xchg r12, r15
mov r14d, esi
cmp si, word [r15 + 6]
jae 0x1400d6c83
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]
xchg rsi, rax
mov qword [rbp - 0x41], rsi
xchg rsi, rax
bt esi, 0x19
jae 0x1400d6b37
mov esi, 2
jmp 0x1400d6b64
bt esi, 0x1d
jae 0x1400d6b57
sar esi, 0x1b
sar esi, 1
sar esi, 1
sar esi, 1
sar esi, 1
and esi, 0x20
add esi, 0x20
jmp 0x1400d6b64
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 0x1400d6c20
mov rax, qword [0x1401670f0]
cmp rax, rbx
je 0x1400d6c20
cmp byte [0x140168220], 0
jne 0x1400d6ba4
xor rax, rbx
lea rdx, [0x1400d5220]
mov ecx, 1
call rax
mov ecx, 1
call fcn.14014ee88
mov rbx, qword [r13 + 0xd0]
lea rdx, [rbp - 0x39]
xchg rdi, r10
mov r10, rax
xchg rdi, r10
movabs rax, 0x582359264eb86c1
xor rbx, rax
xchg rcx, rdi
mov rdi, rcx
xchg rdi, rcx
movabs rax, 0x582359278457259
xor rcx, rax
xchg rcx, r9
mov qword [rbp - 0x39], r9
xchg rcx, r9
lea rcx, [0x140168210]
call fcn.140028f50
mov r9d, esi
lea r8, [rbp - 0x41]
lea rdx, [rbp - 0x49]
mov rcx, 0xffffffffffffffff
mov qword [rax], rbx
lea rax, [rbp + 0x5f]
mov qword [rsp + 0x20], rax
call rdi
jmp 0x1400d6c4a
mov rax, qword [r13 + 0xd0]
lea rcx, [rbp + 0x5f]
mov qword [rsp + 0x20], rcx
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 rdi, r11
mov r11, qword [rbp - 0x59]
xchg rdi, r11
cmp r14d, eax
jae 0x1400d6c7e
movabs rbx, 0xc562983199256
movabs rdx, 0x852396afe3269
jmp 0x1400d6af5
movzx r12d, byte [rbp + 0x6f]
cmp byte [rbp + 0x77], 0
jne 0x1400d6d5a
mov eax, dword [r15 + 0x28]
test eax, eax
je 0x1400d6d5a
lea rsi, [rdi + rax]
movabs rax, 0x852396afe3269
cmp qword [0x1401670e0], rax
je 0x1400d6d44
mov rax, qword [0x1401670f0]
movabs rcx, 0xc562983199256
cmp rax, rcx
je 0x1400d6d44
cmp byte [0x140168220], 0
jne 0x1400d6cec
xor rax, rcx
lea rdx, [0x1400d5220]
mov ecx, 1
call rax
mov ecx, 1
call fcn.14014ee88
mov r8, rax
lea rdx, [rbp + 0x5f]
movabs r14, 0x582359278457259
lea rcx, [0x140168210]
xor r8, r14
xchg rbx, rax
mov rax, rbx
xchg rbx, rax
xchg r8, r14
mov qword [rbp + 0x5f], r14
xchg r8, r14
call fcn.140028f50
xor r8d, r8d
xor rsi, r14
xchg rdi, r13
mov rcx, r13
xchg rdi, r13
mov qword [rax], rsi
lea edx, [r8 + 1]
call rbx
jmp 0x1400d6d56
xor r8d, r8d
xchg r15, rdi
mov rcx, r15
xchg r15, rdi
lea edx, [r8 + 1]
call rsi
mov rdi, qword [rbp - 0x59]
test r12b, r12b
je 0x1400d6d81
mov r8d, dword [r15 + 0x54]
xor edx, edx
xchg rcx, rdi
mov rdi, rcx
xchg rcx, rdi
call fcn.14014ff06
xchg r12, rdi
mov r12, qword [rbp - 0x59]
xchg r12, rdi
mov rax, rdi
mov rdi, qword [rsp + 0xf0]
jmp 0x1400d6d93
xor eax, eax
add rsp, 0xb0
nop
add rsp, 8
mov r15, qword [rsp - 8]
push rcx
push rdx
push rbx
xchg qword [rsp + 0x18], r14
pop rbx
pop rdx
pop rcx
add rsp, 8
nop
add rsp, 8
xchg qword [rsp - 8], r13
nop
add rsp, 8
mov r12, qword [rsp - 8]
nop
xchg qword [rsp], rsi
add rsp, 8
push rax
push rax
xchg qword [rsp + 0x10], rbx
add rsp, 0x18
nop
add rsp, 8
mov rbp, qword [rsp - 8]
ret