Function at 0x1400d63c0
Capabilities:
Parse pe header

Disassembly:
mov byte [rsp + 0x20], r9b
nop
sub rsp, 8
mov qword [rsp], rbp
push rbx
push rsi
nop
push 0x5c7eb2d0
mov qword [rsp], r12
nop
sub rsp, 8
mov qword [rsp], r13
nop
sub rsp, 8
mov qword [rsp], r14
push r15
lea rbp, [rsp - 0x17]
sub rsp, 0xb0
movzx r12d, r9b
xchg r14, r8
mov rbx, r14
xchg r8, r14
xchg rdi, rdx
mov rsi, rdi
xchg rdi, rdx
xchg r13, rcx
mov rcx, r13
xchg r13, rcx
test rdx, rdx
je 0x1400d6e50
mov eax, 0x5a4d
cmp word [rdx], ax
jne 0x1400d6e50
movsxd r15, dword [rdx + 0x3c]
add r15, rdx
mov qword [rbp - 0x41], r15
cmp dword [r15], 0x4550
jne 0x1400d6e50
mov rcx, qword [rbp + 0x7f]
xor r14d, r14d
xchg r11, r14
mov qword [rbp - 0x59], r11
xchg r11, r14
mov eax, dword [r15 + 0x50]
xchg r9, rax
mov qword [rbp + 7], r9
xchg r9, rax
test rcx, rcx
je 0x1400d6475
xchg r12, rax
mov qword [rcx], r12
xchg r12, 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.1400d4860
test eax, eax
js 0x1400d6e50
mov r8d, dword [r15 + 0x54]
xchg rsi, r13
mov rdx, r13
xchg r13, rsi
xchg r9, rcx
mov r9, qword [rbp - 0x59]
xchg rcx, r9
mov qword [rsp + 0xf0], rdi
call fcn.14014fd80
mov edi, r14d
cmp r14w, word [r15 + 6]
jae 0x1400d651b
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.14014fd80
movzx eax, word [r15 + 6]
inc edi
cmp edi, eax
jb 0x1400d64e2
xchg r13, rdi
mov r13, qword [rbp - 0x59]
xchg rdi, r13
test rbx, rbx
mov eax, dword [r15 + 0xb0]
cmove rbx, rdi
xor esi, esi
mov edx, esi
test eax, eax
je 0x1400d6543
lea rdx, [rdi + rax]
mov eax, dword [r15 + 0x90]
xchg r14, rsi
mov r9, r14
xchg r14, rsi
test eax, eax
je 0x1400d655f
lea r9, [rdi + rax]
sub rbx, qword [r15 + 0x30]
xchg r9, r13
mov qword [rbp - 0x49], r13
xchg r9, r13
test rdx, rdx
je 0x1400d65d6
cmp dword [rdx], r14d
je 0x1400d65d6
mov eax, dword [rdx + 4]
cmp eax, 8
jb 0x1400d65ca
lea r8, [rax - 8]
mov ecx, esi
shr r8, 1
je 0x1400d65ca
mov rax, rsi
nop dword [rax]
movzx eax, word [rdx + rax*2 + 8]
test ax, ax
je 0x1400d65bd
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 0x1400d65a0
mov eax, dword [rdx + 4]
add rdx, rax
jne 0x1400d6576
movabs rdx, 0x852396afe3269
movabs rbx, 0xc562983199256
test r9, r9
je 0x1400d6b93
mov eax, dword [r9]
movabs r8, 0x85fec382c
movabs r15, 0x582359a27a94a75
test eax, eax
je 0x1400d6b8a
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, r8
mov qword [rbp - 0x11], r8
xchg rcx, r8
inc rax
cmp byte [rcx + rax], 0
jne 0x1400d6635
cmp qword [0x1401670e0], rdx
mov word [rbp - 0x19], ax
mov word [rbp - 0x17], ax
je 0x1400d66f1
mov rax, qword [0x1401670f0]
cmp rax, rbx
je 0x1400d66f1
cmp byte [0x140168220], 0
jne 0x1400d6685
xor rax, rbx
lea rdx, [0x1400d52c0]
mov ecx, 1
call rax
mov ecx, 1
call fcn.14014ecd8
xchg rdi, rbx
mov rdi, qword [r13 + 0xa0]
xchg rbx, rdi
lea rdx, [rbp - 0x51]
xchg r13, rcx
mov r13, rax
xchg rcx, r13
xor rbx, r15
movabs r15, 0x582359278457259
mov rdi, rax
xor rcx, r15
mov qword [rbp - 0x51], rcx
lea rcx, [0x140168210]
call fcn.140028f90
mov r8b, 1
lea rdx, [rbp - 0x19]
lea rcx, [rbp - 0x29]
xchg rcx, rbx
mov qword [rax], rcx
xchg rbx, rcx
call rdi
movabs rbx, 0xc562983199256
jmp 0x1400d6712
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 0x1400d67bc
mov rax, qword [0x1401670f0]
cmp rax, rbx
je 0x1400d67bc
cmp byte [0x140168220], 0
jne 0x1400d675b
xor rax, rbx
lea rdx, [0x1400d52c0]
mov ecx, 1
call rax
mov ecx, 1
call fcn.14014ecd8
mov rbx, qword [r13 + 0x90]
lea rdx, [rbp - 0x51]
xchg r11, rax
mov rdi, r11
xchg r11, rax
movabs rax, 0x582359b30125d9a
xchg rcx, rdi
mov rdi, rcx
xchg rdi, rcx
xor rbx, rax
xor rcx, r15
xchg rcx, r11
mov qword [rbp - 0x51], r11
xchg rcx, r11
lea rcx, [0x140168210]
call fcn.140028f90
lea r9, [rbp + 0x5f]
xor edx, edx
lea r8, [rbp - 0x29]
xor ecx, ecx
mov qword [rax], rbx
call rdi
jmp 0x1400d67e2
xchg rbx, rax
mov rbx, qword [r13 + 0x90]
xchg rbx, 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 0x1400d689c
mov rax, qword [0x1401670f0]
movabs rcx, 0xc562983199256
cmp rax, rcx
je 0x1400d689c
cmp byte [0x140168220], 0
jne 0x1400d6831
xor rax, rcx
lea rdx, [0x1400d52c0]
mov ecx, 1
call rax
mov ecx, 1
call fcn.14014ecd8
xchg rbx, rdi
mov rdi, qword [r13 + 0xb0]
xchg rdi, rbx
lea rdx, [rbp - 0x51]
xchg r14, rdi
mov r14, rax
xchg rdi, r14
movabs rax, 0x582359a27e94a75
xchg rdi, rcx
mov rdi, rcx
xchg rcx, rdi
xor rbx, rax
xor rcx, r15
xchg r14, rcx
mov qword [rbp - 0x51], r14
xchg r14, rcx
lea rcx, [0x140168210]
call fcn.140028f90
lea rcx, [rbp - 0x29]
mov qword [rax], rbx
call rdi
movabs rbx, 0x852396afe3269
jmp 0x1400d68ba
xchg rcx, rax
mov rcx, qword [r13 + 0xb0]
xchg rcx, rax
movabs rcx, 0x85fac382c
xor rax, rcx
lea rcx, [rbp - 0x29]
call rax
xchg r15, r9
mov r9, qword [rbp + 0x5f]
xchg r15, r9
test r15, r15
je 0x1400d6b54
mov rsi, qword [r12]
test rsi, rsi
je 0x1400d6b52
sub r12, r14
nop word [rax + rax]
test rsi, rsi
jns 0x1400d69ea
cmp qword [0x1401670e0], rbx
mov qword [rbp - 0x51], 0
je 0x1400d69b9
mov rax, qword [0x1401670f0]
movabs rcx, 0xc562983199256
cmp rax, rcx
je 0x1400d69b9
cmp byte [0x140168220], 0
jne 0x1400d6939
xor rax, rcx
lea rdx, [0x1400d52c0]
mov ecx, 1
call rax
mov ecx, 1
call fcn.14014ecd8
mov rbx, qword [r13 + 0xc0]
lea rdx, [rbp - 0x39]
xchg r13, rax
mov rdi, r13
xchg r13, rax
movabs rax, 0x5823592dc79f24b
xor rbx, rax
xchg rcx, rdi
mov rdi, rcx
xchg rcx, rdi
movabs rax, 0x582359278457259
xor rcx, rax
xchg rcx, r14
mov qword [rbp - 0x39], r14
xchg rcx, r14
lea rcx, [0x140168210]
call fcn.140028f90
lea r9, [rbp - 0x51]
movzx r8d, si
xor edx, edx
mov rcx, r15
xchg rbp, rbx
mov qword [rax], rbp
xchg rbp, rbx
call rdi
mov rax, qword [rbp - 0x51]
movabs rbx, 0x852396afe3269
jmp 0x1400d6b24
mov rax, qword [r13 + 0xc0]
lea r9, [rbp - 0x51]
mov ecx, 0xa43c8012
movzx r8d, si
xor rax, rcx
xor edx, edx
xchg rcx, rdi
mov rdi, r15
xchg rcx, rdi
call rax
xchg rbx, rax
mov rbx, qword [rbp - 0x51]
xchg rbx, rax
jmp 0x1400d6b24
mov rcx, qword [rbp - 0x59]
mov rax, 0xffffffffffffffff
nop
sub rcx, 0x7caae123
add rcx, 0x7caae125
add rcx, rsi
xchg r9, rcx
mov qword [rbp - 1], r9
xchg r9, rcx
nop dword [rax]
inc rax
cmp byte [rcx + rax], 0
jne 0x1400d6a18
cmp qword [0x1401670e0], rbx
mov word [rbp - 9], ax
mov word [rbp - 7], ax
mov qword [rbp - 0x31], 0
je 0x1400d6af3
mov rax, qword [0x1401670f0]
movabs rcx, 0xc562983199256
cmp rax, rcx
je 0x1400d6af3
cmp byte [0x140168220], 0
jne 0x1400d6a7a
xor rax, rcx
lea rdx, [0x1400d52c0]
mov ecx, 1
call rax
mov ecx, 1
call fcn.14014ecd8
mov rbx, qword [r13 + 0xc0]
lea rcx, [0x140168210]
xchg rdi, r11
mov r11, rax
xchg rdi, r11
movabs rax, 0x5823592dc79f24b
xor rbx, rax
xchg rdi, r9
mov rdx, r9
xchg rdi, r9
movabs rax, 0x582359278457259
xor rdx, rax
mov qword [rbp - 0x39], rdx
lea rdx, [rbp - 0x39]
call fcn.140028f90
xor r8d, r8d
lea r9, [rbp - 0x31]
lea rdx, [rbp - 9]
xchg r15, r10
mov rcx, r10
xchg r10, r15
mov qword [rax], rbx
call rdi
movabs rbx, 0x852396afe3269
jmp 0x1400d6b1c
xchg rsi, rax
mov rsi, qword [r13 + 0xc0]
xchg rsi, rax
lea r9, [rbp - 0x31]
mov ecx, 0xa43c8012
lea rdx, [rbp - 9]
xor rax, rcx
xor r8d, r8d
xchg r15, rsi
mov rcx, rsi
xchg rsi, r15
call rax
xchg r8, rax
mov r8, qword [rbp - 0x31]
xchg r8, rax
mov qword [r14], rax
nop
sub r14, 0x782908db
add r14, 0x782908e3
mov rsi, qword [r12 + r14]
test rsi, rsi
je 0x1400d6b52
xchg r11, r15
mov r11, qword [rbp + 0x5f]
xchg r11, r15
jmp 0x1400d68e3
xor esi, esi
xchg r15, r9
mov r15, qword [rbp - 0x49]
xchg r15, r9
movabs rbx, 0xc562983199256
xchg r9, rdi
mov r9, qword [rbp - 0x59]
xchg rdi, r9
add r9, 0x14
mov qword [rbp - 0x49], r9
movabs rdx, 0x852396afe3269
jne 0x1400d65f3
movzx r12d, byte [rbp + 0x6f]
mov r15, qword [rbp - 0x41]
mov r14d, esi
cmp si, word [r15 + 6]
jae 0x1400d6d3a
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 0x1400d6be6
mov esi, 2
jmp 0x1400d6c11
bt esi, 0x1d
jae 0x1400d6c04
sar esi, 0x1c
sar esi, 1
sar esi, 1
sar esi, 1
and esi, 0x20
sub esi, 0xffffffe0
jmp 0x1400d6c11
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 0x1400d6ccd
mov rax, qword [0x1401670f0]
cmp rax, rbx
je 0x1400d6ccd
cmp byte [0x140168220], 0
jne 0x1400d6c51
xor rax, rbx
lea rdx, [0x1400d52c0]
mov ecx, 1
call rax
mov ecx, 1
call fcn.14014ecd8
xchg rbx, r12
mov r12, qword [r13 + 0xd0]
xchg rbx, r12
lea rdx, [rbp - 0x39]
xchg rdi, r14
mov r14, rax
xchg r14, rdi
movabs rax, 0x582359264eb86c1
xor rbx, rax
xchg rdi, rcx
mov rdi, rcx
xchg rcx, rdi
movabs rax, 0x582359278457259
xor rcx, rax
mov qword [rbp - 0x39], rcx
lea rcx, [0x140168210]
call fcn.140028f90
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 0x1400d6d01
xchg r11, rax
mov r11, qword [r13 + 0xd0]
xchg r11, rax
lea rcx, [rbp + 0x5f]
xchg rdx, rcx
mov qword [rsp + 0x20], rdx
xchg rcx, rdx
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 r15, rdi
mov r15, qword [rbp - 0x59]
xchg rdi, r15
cmp r14d, eax
jae 0x1400d6d35
movabs rbx, 0xc562983199256
movabs rdx, 0x852396afe3269
jmp 0x1400d6ba8
movzx r12d, byte [rbp + 0x6f]
cmp byte [rbp + 0x77], 0
jne 0x1400d6e1b
mov eax, dword [r15 + 0x28]
test eax, eax
je 0x1400d6e1b
lea rsi, [rdi + rax]
movabs rax, 0x852396afe3269
cmp qword [0x1401670e0], rax
je 0x1400d6dff
mov rax, qword [0x1401670f0]
movabs rcx, 0xc562983199256
cmp rax, rcx
je 0x1400d6dff
cmp byte [0x140168220], 0
jne 0x1400d6da3
xor rax, rcx
lea rdx, [0x1400d52c0]
mov ecx, 1
call rax
mov ecx, 1
call fcn.14014ecd8
xchg r12, rax
mov r8, r12
xchg r12, 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.140028f90
xor r8d, r8d
xor rsi, r14
xchg rcx, r11
mov r11, rdi
xchg rcx, r11
xchg r14, rsi
mov qword [rax], r14
xchg r14, rsi
lea edx, [r8 + 1]
call rbx
jmp 0x1400d6e11
xor r8d, r8d
xchg rcx, r11
mov r11, rdi
xchg rcx, r11
lea edx, [r8 + 1]
call rsi
xchg rdi, rsi
mov rsi, qword [rbp - 0x59]
xchg rsi, rdi
test r12b, r12b
je 0x1400d6e3c
mov r8d, dword [r15 + 0x54]
xor edx, edx
mov rcx, rdi
call fcn.14014fd56
xchg rcx, rdi
mov rcx, qword [rbp - 0x59]
xchg rcx, rdi
xchg rsi, rax
mov rsi, rdi
xchg rsi, rax
mov rdi, qword [rsp + 0xf0]
jmp 0x1400d6e52
xor eax, eax
add rsp, 0xb0
nop
add rsp, 8
mov r15, qword [rsp - 8]
push rbx
push rcx
push rax
push rcx
push rbx
push rbx
xchg qword [rsp + 0x30], r14
add rsp, 0x38
nop
add rsp, 8
xchg qword [rsp - 8], r13
push rdx
xchg qword [rsp + 8], r12
pop rdx
add rsp, 8
nop
add rsp, 8
xchg qword [rsp - 8], rsi
push rax
push rcx
push rdx
push rax
push rax
push rcx
xchg qword [rsp + 0x30], rbx
add rsp, 0x38
nop
add rsp, 8
xchg qword [rsp - 8], rbp
ret