Function at 0x1400016e0
Capabilities:
Parse pe header

Disassembly:
mov qword [rsp + 0x18], rbx
push rbp
lea rbp, [rsp - 0x2d0]
sub rsp, 0x3d0
xor ebx, ebx
mov dword [rbp + 0x48], 4
mov dword [rbp + 0x38], ebx
mov rax, qword gs:[0x30]
mov qword [rbp + 0x28], rax
test rax, rax
je 0x140001f75
mov rcx, qword [rax + 0x60]
mov qword [rbp - 0x48], rcx
test rcx, rcx
je 0x140001f75
mov rax, qword [rcx + 0x18]
mov qword [rbp - 0x58], rax
test rax, rax
je 0x140001f75
lea rdx, [rax + 0x20]
mov qword [rsp + 0x50], rdx
test rdx, rdx
je 0x140001f75
mov rdx, qword [rdx]
mov ecx, 0xce413e44
mov rdx, qword [rdx + 0x50]
call section..text
or eax, 1
mov ecx, 0xbf991968
mov dword [rsp + 0x68], eax
mov rax, qword [rsp + 0x50]
mov rdx, qword [rax]
mov rdx, qword [rdx + 0x50]
call section..text
mov edx, 0x50e2b9d
mov dword [rbp + 0x68], eax
mov r8d, 0x8eee0900
lea rcx, [rsp + 0x40]
call fcn.140001030
mov qword [rbp + 8], rax
test rax, rax
je 0x140001f75
mov edx, 0x5eee77fe
mov r8d, 0x8456c28a
mov rcx, rax
call fcn.140001090
mov qword [rsp + 0x78], rax
test rax, rax
je 0x140001f75
mov rcx, qword [rbp + 8]
mov edx, 0x7edba114
mov r8d, 0xe1f8ee0d
call fcn.140001090
mov qword [rbp + 0x70], rax
test rax, rax
je 0x140001f75
mov rcx, qword [rbp + 8]
mov edx, 0xc09445c9
mov r8d, 0x704811bd
call fcn.140001090
mov qword [rbp - 0x80], rax
test rax, rax
je 0x140001f75
mov rcx, qword [rbp + 8]
mov edx, 0x87f0a6ab
mov r8d, 0x8503eb88
call fcn.140001090
mov qword [rbp - 0x40], rax
test rax, rax
je 0x140001f75
mov rax, qword [rsp + 0x50]
mov ecx, 0x4ab54d2
mov rdx, qword [rax]
mov rdx, qword [rdx + 0x50]
call section..text
mov rcx, qword [rbp + 8]
mov edx, 0xbf91087c
mov r8d, 0xf2fed724
mov dword [rbp - 0x38], eax
call fcn.140001090
mov qword [rbp + 0x90], rax
test rax, rax
je 0x140001f75
mov rcx, qword [rbp + 8]
mov edx, 0x5edb8104
mov r8d, 0x11b593ef
call fcn.140001090
mov qword [rsp + 0x70], rax
test rax, rax
je 0x140001f75
mov rcx, qword [rbp + 8]
mov edx, 0x1c97434e
mov r8d, 0x1158fcf1
call fcn.140001090
mov qword [rbp - 0x10], rax
test rax, rax
je 0x140001f75
mov rcx, qword [rbp + 8]
mov edx, 0x8032e473
mov r8d, 0x5c5a658b
call fcn.140001090
mov qword [rbp + 0x80], rax
test rax, rax
je 0x140001f75
mov rcx, qword [rbp + 8]
mov edx, 0x5790d028
mov r8d, 0xbb8fedfa
call fcn.140001090
mov qword [rbp - 0x60], rax
test rax, rax
je 0x140001f75
mov rcx, qword [rbp + 8]
mov edx, 0x5fe577ca
mov r8d, 0xc045fb4f
call fcn.140001090
mov qword [rbp + 0x60], rax
test rax, rax
je 0x140001f75
mov rcx, qword [rbp + 8]
mov edx, 0xa88f94c3
mov r8d, 0xd1a3ee93
call fcn.140001090
mov qword [rbp - 0x30], rax
test rax, rax
je 0x140001f75
mov edx, 0xba3eb60b
mov dword [rsp + 0x20], 0xd9ec3bff
mov r9d, 0xf31e432a
lea rcx, [rsp + 0x40]
mov r8d, 0x61062fc3
call fcn.140001400
lea rcx, [rsp + 0x40]
call fcn.1400016a0
test eax, eax
je 0x140001f75
lea rcx, [rbp + 0x4c]
call qword [rsp + 0x70]
mov qword [rbp + 0x78], rax
test rax, rax
je 0x140001f75
mov rcx, qword [rbp + 8]
mov edx, 0x58347b84
mov r8d, 0xa4d9d152
call fcn.140001090
mov qword [rbp + 0x98], rax
test rax, rax
je 0x140001f75
mov rcx, qword [rbp + 0x78]
mov edx, 0x72f79529
mov r8d, 0xa39ee31
call fcn.140001090
mov qword [rbp + 0x18], rax
test rax, rax
je 0x140001f75
mov rcx, qword [rbp + 8]
mov edx, 0x3576306a
mov r8d, 0xe0f08eef
call fcn.140001090
mov qword [rbp - 0x20], rax
test rax, rax
je 0x140001f75
mov rcx, qword [rbp + 0x78]
mov edx, 0x8316fe09
mov r8d, 0xe5c730c1
call fcn.140001090
mov qword [rbp + 0x30], rax
test rax, rax
je 0x140001f75
mov rcx, qword [rbp + 0x78]
mov edx, 0xba4b60cf
mov r8d, 0x1d038902
call fcn.140001090
mov qword [rbp], rax
test rax, rax
je 0x140001f75
mov rcx, qword [rbp + 0x78]
mov edx, 0x237c37a0
mov r8d, 0xcbad1abf
call fcn.140001090
mov qword [rbp - 0x70], rax
test rax, rax
je 0x140001f75
mov rcx, qword [rbp + 0x78]
mov edx, 0x8a559528
mov r8d, 0x114f5dac
call fcn.140001090
mov qword [rbp + 0x88], rax
test rax, rax
je 0x140001f75
lea edx, [rbx + 0x71]
xor ecx, ecx
lea r9d, [rbx + 4]
mov r8d, 0x3000
call qword [rbp - 0x20]
mov qword [rbp - 0x78], rax
test rax, rax
je 0x140001f75
xor r9d, r9d
mov dword [rsp + 0x20], ebx
xor r8d, r8d
lea edx, [rbx + 1]
xor ecx, ecx
call qword [rbp - 0x70]
mov qword [rbp + 0x20], rax
test rax, rax
je 0x140001f75
mov rcx, qword [rbp + 0x78]
mov edx, 0x400bf3b8
mov r8d, 0xcca6641b
call fcn.140001090
mov qword [rbp + 0x40], rax
test rax, rax
je 0x140001f75
mov edx, 0xd7b9a189
mov dword [rsp + 0x20], 0x42f8297e
mov r9d, 0xedc13c66
lea rcx, [rsp + 0x40]
mov r8d, 0x18e0c364
call fcn.140001400
lea rcx, [rbp + 0x4c]
call qword [rsp + 0x70]
mov qword [rsp + 0x58], rax
test rax, rax
je 0x140001f75
mov edx, 0x48c5ebe9
mov r8d, 0xa250557f
mov rcx, rax
call fcn.140001090
mov qword [rsp + 0x48], rax
test rax, rax
je 0x140001f75
mov qword [rsp + 0x3e0], rsi
lea rcx, [rsp + 0x40]
mov edx, 0x76fffa3
mov qword [rsp + 0x3e8], rdi
mov r9d, 0x7c6289b5
mov dword [rsp + 0x20], 0xa44e9a4c
mov r8d, 0x4930d66e
call fcn.140001400
mov rdi, qword [rbp - 0x78]
lea rsi, [rbp + 0x4c]
mov ecx, 0x10
mov dword [rsp + 0x20], 0x9bb5909e
rep movsb byte [rdi], byte [rsi]
lea rcx, [rsp + 0x40]
mov edx, 0xe1ec590f
mov r9d, 0xee84b9b2
mov r8d, 0xb78c013e
call fcn.140001400
mov rcx, qword [rbp + 0x20]
lea rdx, [rbp + 0x4c]
mov qword [rsp + 0x38], rbx
mov r8d, 0x1bb
mov dword [rsp + 0x30], ebx
xor r9d, r9d
mov dword [rsp + 0x28], 3
mov qword [rsp + 0x20], rbx
call qword [rbp + 0x88]
mov qword [rbp - 0x50], rax
test rax, rax
je 0x140001f65
mov rcx, qword [rbp + 0x78]
mov edx, 0x3bdc4984
mov r8d, 0x9c59936f
call fcn.140001090
mov qword [rbp - 8], rax
test rax, rax
je 0x140001f65
mov rcx, qword [rbp + 8]
mov edx, 0x382cd78a
mov r8d, 0xea2fd1fe
call fcn.140001090
mov qword [rsp + 0x60], rax
test rax, rax
je 0x140001f65
mov edx, 0xcaf46a68
mov dword [rsp + 0x20], 0x3e1b7de3
mov r9d, 0xb7a7f31b
lea rcx, [rsp + 0x40]
mov r8d, 0x5d72dc7f
call fcn.140001400
mov rcx, qword [rbp - 0x50]
lea r8, [rbp + 0x50]
mov qword [rsp + 0x38], rbx
lea rdx, [rbp + 0x4c]
mov dword [rsp + 0x30], 0x80800000
xor r9d, r9d
mov qword [rsp + 0x28], rbx
mov qword [rsp + 0x20], rbx
call qword [rbp]
mov qword [rbp + 0xa8], rax
test rax, rax
je 0x140001f65
lea rdx, [rbp + 0xc0]
mov ecx, 0x104
call qword [rbp - 0x60]
test eax, eax
je 0x140001f65
lea rcx, [rbp + 0xc0]
call qword [rbp + 0x60]
test eax, eax
je 0x140001f65
mov edx, 0x65e7f329
mov dword [rsp + 0x20], 0x8466676f
mov r9d, 0xfac8554b
lea rcx, [rsp + 0x40]
mov r8d, 0xb10992d4
call fcn.140001400
mov rdi, qword [rbp - 0x78]
lea rsi, [rbp + 0x4c]
add rdi, 0x10
mov dword [rsp + 0x20], 0x5ebd9f9a
mov ecx, 0x10
mov edx, 0x3a5a44c7
rep movsb byte [rdi], byte [rsi]
lea rcx, [rsp + 0x40]
mov r9d, 0xa62c04ec
mov r8d, 0x3f5ac456
call fcn.140001400
mov rdi, qword [rbp - 0x78]
lea rsi, [rbp + 0x4c]
add rdi, 0x20
mov dword [rsp + 0x20], 0x1ee0e1fd
mov ecx, 0x10
mov edx, 0x114e49db
rep movsb byte [rdi], byte [rsi]
lea rcx, [rsp + 0x40]
mov r9d, 0xa653a338
mov r8d, 0xd438941
call fcn.140001400
mov rdi, qword [rbp - 0x78]
lea rsi, [rbp + 0x4c]
add rdi, 0x30
mov dword [rsp + 0x20], 0xa6662acf
mov ecx, 0x10
mov edx, 0xcfb2a1cd
rep movsb byte [rdi], byte [rsi]
lea rcx, [rsp + 0x40]
mov r9d, 0x75ed3566
mov r8d, 0xff4c0ac2
call fcn.140001400
mov rdi, qword [rbp - 0x78]
lea rsi, [rbp + 0x4c]
add rdi, 0x40
mov dword [rsp + 0x20], 0xd876413c
mov ecx, 0x10
mov edx, 0x78b0f620
rep movsb byte [rdi], byte [rsi]
lea rcx, [rsp + 0x40]
mov r9d, 0xae4031ee
mov r8d, 0x86fd7157
call fcn.140001400
mov rdi, qword [rbp - 0x78]
lea rsi, [rbp + 0x4c]
add rdi, 0x50
mov dword [rsp + 0x20], 0xcaf54152
mov ecx, 0x10
mov edx, 0xc3a74653
rep movsb byte [rdi], byte [rsi]
lea rcx, [rsp + 0x40]
mov r9d, 0xf39d0db5
mov r8d, 0x9d7df390
call fcn.140001400
mov rdi, qword [rbp - 0x78]
lea rsi, [rbp + 0x4c]
add rdi, 0x60
mov dword [rsp + 0x20], 0xd9e52f07
mov ecx, 0x10
mov edx, 0x92e32f3e
rep movsb byte [rdi], byte [rsi]
lea rcx, [rsp + 0x40]
mov r9d, 0x78999bb
mov r8d, 0x9487695c
call fcn.140001400
mov rdi, qword [rbp - 0x78]
lea rsi, [rbp + 0x4c]
add rdi, 0x70
mov ecx, 0x10
rep movsb byte [rdi], byte [rsi]
lea rcx, [rsp + 0x40]
call fcn.140001490
xor r9d, r9d
mov dword [rsp + 0x20], ebx
mov rcx, qword [rbp + 0xa8]
xor r8d, r8d
xor edx, edx
call qword [rbp + 0x30]
test eax, eax
je 0x140001f65
mov rcx, qword [rbp + 0xa8]
lea rax, [rbp + 0x38]
lea r9, [rbp + 0x48]
mov qword [rsp + 0x20], rax
lea r8, [rbp + 0x10]
mov edx, 0x20000005
call qword [rbp + 0x40]
test eax, eax
je 0x140001f65
mov edx, dword [rbp + 0x10]
lea r9d, [rbx + 4]
xor ecx, ecx
mov r8d, 0x3000
call qword [rbp - 0x20]
mov qword [rbp + 0xa0], rax
test rax, rax
je 0x140001f65
mov r8d, dword [rbp + 0x10]
lea r9, [rbp + 0xb0]
mov rcx, qword [rbp + 0xa8]
mov rdx, rax
call qword [rbp - 8]
test eax, eax
je 0x140001f65
mov eax, dword [rbp + 0x10]
cmp dword [rbp + 0xb0], eax
jne 0x140001f65
mov rcx, qword [rbp - 0x50]
call qword [rbp + 0x18]
mov rcx, qword [rbp + 0x20]
call qword [rbp + 0x18]
mov rcx, qword [rbp + 0xa8]
call qword [rbp + 0x18]
mov rcx, qword [rbp + 0xa0]
mov eax, 0x5a4d
mov qword [rbp - 0x18], rcx
cmp word [rcx], ax
jne 0x140001f65
movsxd rax, dword [rcx + 0x3c]
add rcx, rax
mov qword [rbp - 0x28], rcx
cmp dword [rcx], 0x4550
jne 0x140001f65
mov eax, 0x8664
cmp word [rcx + 4], ax
jne 0x140001f65
mov eax, 0x20b
cmp word [rcx + 0x18], ax
jne 0x140001f65
mov edx, dword [rcx + 0x50]
lea r9d, [rbx + 0x40]
xor ecx, ecx
mov r8d, 0x3000
call qword [rbp - 0x20]
mov qword [rsp + 0x40], rax
test rax, rax
je 0x140001f65
mov rcx, qword [rbp - 0x28]
movzx eax, word [rcx + 0x14]
add rcx, 0x18
add rcx, rax
mov qword [rbp - 0x68], rcx
lea rcx, [rsp + 0x40]
call fcn.1400011b0
lea rcx, [rsp + 0x40]
call fcn.140001300
mov rax, qword [rbp - 0x28]
mov rdi, qword [rsp + 0x40]
mov rsi, qword [rbp + 0xa0]
mov ecx, dword [rax + 0x54]
rep movsb byte [rdi], byte [rsi]
lea rcx, [rsp + 0x40]
call fcn.140001230
lea rcx, [rsp + 0x40]
call fcn.1400013a0
mov rsi, qword [rsp + 0x3e0]
mov rdi, qword [rsp + 0x3e8]
mov rbx, qword [rsp + 0x3f0]
xor eax, eax
add rsp, 0x3d0
pop rbp
ret