Function at 0x1400016a0
Capabilities:
Parse pe header

Disassembly:
mov qword [rsp + 0x18], rbx
push rbp
lea rbp, [rsp - 0x3a0]
sub rsp, 0x4a0
mov rax, qword gs:[0x30]
mov qword [rbp + 0xa8], rax
test rax, rax
je 0x14000227f
mov dword [rbp + 0x48], 4
mov rcx, qword [rax + 0x60]
mov qword [rbp + 0x170], rcx
test rcx, rcx
je 0x14000227f
xor ebx, ebx
mov dword [rbp + 0x148], ebx
mov rax, qword [rcx + 0x18]
mov qword [rbp + 0x20], rax
test rax, rax
je 0x14000227f
add rax, 0x20
mov qword [rbp - 0x18], rax
je 0x14000227f
mov edx, 0xa75edf33
mov dword [rbp + 0x108], 4
mov r8d, 0x1d80e79b
mov dword [rbp - 0x80], ebx
lea rcx, [rsp + 0x40]
call section..text
mov qword [rbp + 0x90], rax
test rax, rax
je 0x14000227f
mov edx, 0x3ceac232
mov r8d, 0x8c75e1cc
mov rcx, rax
call fcn.1400010f0
mov qword [rbp + 0x50], rax
test rax, rax
je 0x14000227f
mov rcx, qword [rbp + 0x90]
mov edx, 0xa1999020
mov r8d, 0x45d1f0d3
call fcn.1400010f0
mov qword [rbp + 0xf0], rax
test rax, rax
je 0x14000227f
mov rcx, qword [rbp + 0x90]
mov edx, 0x1beccb7d
mov r8d, 0x73d2205b
call fcn.1400010f0
mov qword [rbp + 0x100], rax
test rax, rax
je 0x14000228f
mov rcx, qword [rbp + 0x90]
mov edx, 0xd508127c
mov r8d, 0xc77936bb
call fcn.1400010f0
mov qword [rbp - 0x28], rax
test rax, rax
je 0x14000227f
mov edx, 0x787798c3
lea rcx, [rsp + 0x40]
call fcn.140001090
mov rcx, qword [rbp + 0x90]
mov edx, 0x5c260325
mov r8d, 0xd955520f
mov dword [rbp + 0x10], eax
call fcn.1400010f0
mov qword [rbp + 8], rax
test rax, rax
je 0x14000227f
mov rcx, qword [rbp + 0x90]
mov edx, 0x7255dc64
mov r8d, 0xe97c191a
call fcn.1400010f0
mov qword [rbp + 0xe0], rax
test rax, rax
je 0x14000227f
mov rcx, qword [rbp + 0x90]
mov edx, 0x4945fba8
mov r8d, 0xf8d2651c
call fcn.1400010f0
mov qword [rbp - 0x30], rax
test rax, rax
je 0x14000227f
mov rcx, qword [rbp + 0x90]
mov edx, 0x259f7a4e
mov r8d, 0x102ea19a
call fcn.1400010f0
mov qword [rbp - 8], rax
test rax, rax
je 0x14000227f
mov rcx, qword [rbp + 0x90]
mov edx, 0xa26e311a
mov r8d, 0xad86a35a
call fcn.1400010f0
mov qword [rbp + 0x158], rax
test rax, rax
je 0x14000227f
mov rcx, qword [rbp + 0x90]
mov edx, 0x63d11af3
mov r8d, 0x58d95147
call fcn.1400010f0
mov qword [rbp + 0xb8], rax
test rax, rax
je 0x14000227f
mov rcx, qword [rbp + 0x90]
mov edx, 0x6be1f25c
mov r8d, 0xf423d588
call fcn.1400010f0
mov qword [rbp + 0x140], rax
test rax, rax
je 0x14000227f
mov edx, 0xdbfb6357
lea rcx, [rsp + 0x40]
call fcn.140001090
mov rcx, qword [rbp + 0x90]
or eax, 1
mov edx, 0x710c7bf1
mov dword [rbp - 0x50], eax
mov r8d, 0x8e3ce5bd
call fcn.1400010f0
mov qword [rbp + 0x30], rax
test rax, rax
je 0x14000227f
mov rcx, qword [rbp + 0x90]
mov edx, 0xe0f5a42a
mov r8d, 0x570144f4
call fcn.1400010f0
mov qword [rbp + 0xc8], rax
test rax, rax
je 0x14000227f
mov edx, 0xd090a3ac
lea rcx, [rsp + 0x40]
call fcn.140001090
mov rcx, qword [rbp + 0x90]
mov edx, 0xdc558948
mov r8d, 0x573ae3b6
mov dword [rsp + 0x60], eax
call fcn.1400010f0
mov qword [rbp + 0xd0], rax
test rax, rax
je 0x14000227f
mov edx, 0x8ab04fbf
mov dword [rsp + 0x20], 0x5d7aa9d1
mov r9d, 0xb6b36931
lea rcx, [rsp + 0x40]
mov r8d, 0xd9ff2d96
call fcn.1400014b0
lea rcx, [rsp + 0x40]
call fcn.140001660
test eax, eax
je 0x14000227f
lea rcx, [rbp + 0x38]
call qword [rbp + 0x50]
mov qword [rbp], rax
test rax, rax
je 0x14000227f
mov edx, 0xb91c9904
mov dword [rsp + 0x20], 0xba39af72
mov r9d, 0xb45f3cc6
lea rcx, [rsp + 0x40]
mov r8d, 0xb4502d4f
call fcn.1400014b0
lea rcx, [rbp + 0x38]
call qword [rbp + 0x50]
mov qword [rbp + 0x130], rax
test rax, rax
je 0x14000227f
mov edx, 0x5ff601f4
mov dword [rsp + 0x20], 0xf1529738
mov r9d, 0x361646a1
lea rcx, [rsp + 0x40]
mov r8d, 0xb3a3b657
call fcn.1400014b0
lea rcx, [rbp + 0x38]
call qword [rbp + 0x50]
mov qword [rsp + 0x40], rax
test rax, rax
je 0x14000227f
mov rcx, qword [rbp + 0x90]
mov edx, 0x653a3098
mov r8d, 0x141c7fef
call fcn.1400010f0
mov qword [rbp + 0xe8], rax
test rax, rax
je 0x14000227f
lea edx, [rbx + 0x20]
xor ecx, ecx
lea r9d, [rbx + 4]
mov r8d, 0x3000
call qword [rbp + 0xf0]
mov qword [rbp + 0x70], rax
test rax, rax
je 0x14000227f
mov rcx, qword [rbp + 0x130]
mov edx, 0xddbbcad7
mov r8d, 0x4104ed71
call fcn.1400010f0
mov qword [rbp - 0x70], rax
test rax, rax
je 0x14000227f
lea edx, [rbx + 0x27]
xor ecx, ecx
lea r9d, [rbx + 4]
mov r8d, 0x3000
call qword [rbp + 0xf0]
mov qword [rbp + 0x80], rax
test rax, rax
je 0x14000227f
mov qword [rsp + 0x4b0], rsi
lea rcx, [rsp + 0x40]
mov edx, 0x96447ad
mov qword [rsp + 0x4b8], rdi
mov r9d, 0x2cda5014
mov dword [rsp + 0x20], 0x82ee6a9d
mov r8d, 0x807dda23
call fcn.1400014b0
mov rdi, qword [rbp + 0x80]
lea rsi, [rbp + 0x38]
add rdi, 0x10
mov dword [rsp + 0x20], 0xf05a002f
mov ecx, 0x10
mov edx, 0x3ab3c472
rep movsb byte [rdi], byte [rsi]
lea rcx, [rsp + 0x40]
mov r9d, 0xc8fefe83
mov r8d, 0xa14a7f6e
call fcn.1400014b0
mov rdi, qword [rbp + 0x70]
lea rsi, [rbp + 0x38]
add rdi, 0x10
mov dword [rsp + 0x20], 0xc605737b
mov ecx, 0x10
mov edx, 0xd7f73395
rep movsb byte [rdi], byte [rsi]
lea rcx, [rsp + 0x40]
mov r9d, 0x83aa1eb0
mov r8d, 0x257ffc18
call fcn.1400014b0
lea rcx, [rbp + 0x38]
call qword [rbp + 0x50]
mov qword [rbp - 0x40], rax
test rax, rax
je 0x14000226f
mov edx, 0x8cd3abf2
mov r8d, 0x9b5bc3b4
mov rcx, rax
call fcn.1400010f0
mov qword [rbp - 0x58], rax
test rax, rax
je 0x14000226f
mov rcx, qword [rbp - 0x40]
mov edx, 0x63f4abb8
mov r8d, 0xce2274b3
call fcn.1400010f0
mov qword [rbp + 0x78], rax
test rax, rax
je 0x14000226f
mov edx, 0x9581a05d
mov dword [rsp + 0x20], 0x596c762a
mov r9d, 0x7b170328
lea rcx, [rsp + 0x40]
mov r8d, 0x9848066a
call fcn.1400014b0
mov rdi, qword [rbp + 0x70]
lea rsi, [rbp + 0x38]
mov ecx, 0x10
mov dword [rsp + 0x20], 0xadb64591
rep movsb byte [rdi], byte [rsi]
lea rcx, [rsp + 0x40]
mov edx, 0x61d50b33
mov r9d, 0xd8f04db6
mov r8d, 0xb62dc4fb
call fcn.1400014b0
mov rdi, qword [rbp + 0x80]
lea rsi, [rbp + 0x38]
mov ecx, 0x10
mov edx, 0xac67a036
rep movsb byte [rdi], byte [rsi]
mov rcx, qword [rbp]
mov r8d, 0x521ae89f
call fcn.1400010f0
mov qword [rbp + 0xf8], rax
test rax, rax
je 0x14000226f
mov rcx, qword [rbp - 0x40]
mov edx, 0x6bb1e5a0
mov r8d, 0x85cfeaa
call fcn.1400010f0
mov qword [rbp + 0xb0], rax
test rax, rax
je 0x14000226f
mov rcx, qword [rbp - 0x40]
mov edx, 0x3ee67888
mov r8d, 0xe3bdbf63
call fcn.1400010f0
mov qword [rbp + 0x28], rax
test rax, rax
je 0x14000226f
mov rcx, qword [rbp - 0x40]
mov edx, 0xa312eb19
mov r8d, 0x2a324162
call fcn.1400010f0
mov qword [rbp + 0x110], rax
test rax, rax
je 0x14000226f
mov rcx, qword [rsp + 0x40]
mov edx, 0x81f6d47e
mov r8d, 0xac2a4dec
call fcn.1400010f0
mov qword [rbp - 0x38], rax
test rax, rax
je 0x14000226f
mov edx, 0xac69f2af
mov dword [rsp + 0x20], 0xe1a1fb15
mov r9d, 0x2aacadb0
lea rcx, [rsp + 0x40]
mov r8d, 0x9e4caf92
call fcn.1400014b0
mov rdi, qword [rbp + 0x80]
lea rsi, [rbp + 0x38]
add rdi, 0x20
mov ecx, 0x10
rep movsb byte [rdi], byte [rsi]
xor ecx, ecx
call qword [rbp - 0x70]
mov dword [rbp + 0xd8], eax
test eax, eax
js 0x14000226f
mov rcx, qword [rbp - 0x40]
mov edx, 0x9a5c887c
mov r8d, 0x6eba1a62
call fcn.1400010f0
mov qword [rbp + 0x98], rax
test rax, rax
je 0x14000226f
lea rdx, [rbp + 0x190]
mov ecx, 0x104
call qword [rbp + 0xe0]
test eax, eax
je 0x14000226f
lea rcx, [rbp + 0x190]
call qword [rbp - 0x28]
test eax, eax
je 0x14000226f
mov rcx, qword [rbp - 0x40]
mov edx, 0x264024d
mov r8d, 0x1f2f7a84
call fcn.1400010f0
mov qword [rbp + 0x150], rax
test rax, rax
je 0x14000226f
lea edx, [rbx + 0x13]
xor ecx, ecx
lea r9d, [rbx + 4]
mov r8d, 0x3000
call qword [rbp + 0xf0]
mov qword [rbp - 0x10], rax
test rax, rax
je 0x14000226f
lea rcx, [rsp + 0x40]
call fcn.140001540
mov rax, qword [rsp + 0x50]
dec rax
cmp rax, 0xfffffffffffffffd
ja 0x14000226f
mov edx, 0xebd7effc
mov dword [rsp + 0x20], 0x5eee1fbc
mov r9d, 0xe7178fda
lea rcx, [rsp + 0x40]
mov r8d, 0x94466d64
call fcn.1400014b0
mov rdi, qword [rbp - 0x10]
lea rsi, [rbp + 0x38]
mov ecx, 0x10
mov dword [rsp + 0x20], ebx
rep movsb byte [rdi], byte [rsi]
xor ecx, ecx
lea edx, [rbx + 1]
xor r9d, r9d
xor r8d, r8d
call qword [rbp + 0x150]
mov qword [rsp + 0x68], rax
test rax, rax
je 0x14000226f
mov edx, 0xc12b27a
mov dword [rsp + 0x20], 0xf301a10f
mov r9d, 0x9595fe73
lea rcx, [rsp + 0x40]
mov r8d, 0x39bad554
call fcn.1400014b0
mov rcx, qword [rsp + 0x68]
lea rdx, [rbp + 0x38]
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 + 0x28]
mov qword [rbp + 0x58], rax
test rax, rax
je 0x14000226f
mov edx, 0xe7b09215
mov dword [rsp + 0x20], 0x8489b81e
mov r9d, 0xdccd69f1
lea rcx, [rsp + 0x40]
mov r8d, 0xbe337af6
call fcn.1400014b0
mov rdi, qword [rbp - 0x10]
lea rsi, [rbp + 0x38]
add rdi, 0x10
mov dword [rsp + 0x20], 0xea5df41
mov ecx, 0x10
mov edx, 0xa1f9a2d2
rep movsb byte [rdi], byte [rsi]
lea rcx, [rsp + 0x40]
mov r9d, 0x7051b32
mov r8d, 0xb376418d
call fcn.1400014b0
mov rcx, qword [rbp + 0x58]
lea r8, [rbp + 0x3c]
mov qword [rsp + 0x38], rbx
lea rdx, [rbp + 0x38]
mov dword [rsp + 0x30], 0x80800000
xor r9d, r9d
mov qword [rsp + 0x28], rbx
mov qword [rsp + 0x20], rbx
call qword [rbp + 0x98]
mov qword [rbp - 0x78], rax
test rax, rax
je 0x14000226f
xor r9d, r9d
mov dword [rsp + 0x20], ebx
xor r8d, r8d
xor edx, edx
mov rcx, rax
call qword [rbp + 0x110]
test eax, eax
je 0x14000226f
mov rcx, qword [rbp - 0x78]
lea rax, [rbp + 0x148]
lea r9, [rbp + 0x48]
mov qword [rsp + 0x20], rax
lea r8, [rbp - 0x68]
mov edx, 0x20000005
call qword [rbp + 0x78]
test eax, eax
je 0x14000226f
mov edx, dword [rbp - 0x68]
lea r9d, [rbx + 4]
xor ecx, ecx
mov r8d, 0x3000
call qword [rbp + 0xf0]
mov qword [rbp - 0x20], rax
test rax, rax
je 0x14000226f
mov r8d, dword [rbp - 0x68]
lea r9, [rbp + 0x120]
mov rcx, qword [rbp - 0x78]
mov rdx, rax
call qword [rbp - 0x58]
test eax, eax
je 0x14000226f
mov r8d, dword [rbp - 0x68]
cmp dword [rbp + 0x120], r8d
jne 0x14000226f
mov rdx, qword [rbp - 0x20]
lea r9, [rbp + 0x160]
mov rcx, qword [rsp + 0x50]
mov qword [rsp + 0x20], rbx
call qword [rbp + 0x140]
test eax, eax
je 0x14000226f
mov rcx, qword [rbp + 0x58]
call qword [rbp + 0xb0]
mov rcx, qword [rsp + 0x50]
call qword [rbp + 8]
mov edx, 0x7ae637ba
mov dword [rsp + 0x20], 0x84c96d11
mov r9d, 0x3c61c9f9
lea rcx, [rsp + 0x40]
mov r8d, 0xf136e6a4
call fcn.1400014b0
mov rcx, qword [rsp + 0x68]
lea rdx, [rbp + 0x38]
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 + 0x28]
mov qword [rbp + 0x60], rax
test rax, rax
je 0x14000226f
mov edx, 0x8efc0e24
mov dword [rsp + 0x20], 0x98445714
mov r9d, 0xab499f3e
lea rcx, [rsp + 0x40]
mov r8d, 0x15cac84e
call fcn.1400014b0
mov rcx, qword [rbp + 0x60]
lea r8, [rbp + 0x3c]
mov qword [rsp + 0x38], rbx
lea rdx, [rbp + 0x38]
mov dword [rsp + 0x30], 0x80800000
xor r9d, r9d
mov qword [rsp + 0x28], rbx
mov qword [rsp + 0x20], rbx
call qword [rbp + 0x98]
mov qword [rbp + 0x180], rax
test rax, rax
je 0x14000226f
mov rcx, qword [rbp - 0x78]
call qword [rbp + 0xb0]
mov rdx, qword [rbp + 0x70]
lea r8d, [rbx + 1]
xor ecx, ecx
call qword [rbp - 0x38]
mov dword [rbp + 0x118], eax
test eax, eax
js 0x14000226f
mov r8, qword [rbp - 0x10]
mov r9d, 0x1040
mov rdx, qword [rbp + 0x80]
xor ecx, ecx
call qword [rbp + 0xf8]
mov rcx, qword [rbp + 0x180]
xor r9d, r9d
xor r8d, r8d
mov dword [rsp + 0x20], ebx
xor edx, edx
call qword [rbp + 0x110]
test eax, eax
je 0x14000226f
mov rcx, qword [rbp + 0x180]
lea rax, [rbp - 0x80]
lea r9, [rbp + 0x108]
mov qword [rsp + 0x20], rax
lea r8, [rsp + 0x78]
mov edx, 0x20000005
call qword [rbp + 0x78]
test eax, eax
je 0x14000226f
mov edx, dword [rsp + 0x78]
lea r9d, [rbx + 4]
xor ecx, ecx
mov r8d, 0x3000
call qword [rbp + 0xf0]
mov qword [rsp + 0x70], rax
test rax, rax
je 0x14000226f
mov r8d, dword [rsp + 0x78]
lea r9, [rbp + 0x18]
mov rcx, qword [rbp + 0x180]
mov rdx, rax
call qword [rbp - 0x58]
test eax, eax
je 0x14000226f
mov eax, dword [rsp + 0x78]
cmp dword [rbp + 0x18], eax
jne 0x14000226f
mov rcx, qword [rsp + 0x70]
mov eax, 0x5a4d
mov qword [rbp + 0x138], rcx
cmp word [rcx], ax
jne 0x14000226f
movsxd rdx, dword [rcx + 0x3c]
add rdx, rcx
mov qword [rbp + 0x128], rdx
cmp dword [rdx], 0x4550
jne 0x14000226f
mov eax, 0x8664
cmp word [rdx + 4], ax
jne 0x14000226f
mov eax, 0x20b
cmp word [rdx + 0x18], ax
jne 0x14000226f
mov rcx, qword [rsp + 0x68]
call qword [rbp + 0xb0]
mov rcx, qword [rbp + 0x128]
movzx eax, word [rcx + 0x14]
add rcx, 0x18
add rcx, rax
mov qword [rsp + 0x48], rcx
mov rcx, qword [rbp + 0x60]
call qword [rbp + 0xb0]
mov rcx, qword [rbp + 0x180]
call qword [rbp + 0xb0]
mov rax, qword [rbp + 0x128]
lea r9d, [rbx + 0x40]
xor ecx, ecx
mov r8d, 0x3000
mov edx, dword [rax + 0x50]
call qword [rbp + 0xf0]
mov qword [rbp + 0x188], rax
test rax, rax
je 0x14000226f
mov rcx, qword [rbp + 0x128]
mov rdi, rax
mov rsi, qword [rsp + 0x70]
mov ecx, dword [rcx + 0x54]
rep movsb byte [rdi], byte [rsi]
lea rcx, [rsp + 0x40]
call fcn.140001220
lea rcx, [rsp + 0x40]
call fcn.1400012a0
lea rcx, [rsp + 0x40]
call fcn.140001390
lea rcx, [rsp + 0x40]
call fcn.140001440
mov rsi, qword [rsp + 0x4b0]
mov rdi, qword [rsp + 0x4b8]
mov rax, qword [rbp + 0x100]
test rax, rax
je 0x14000228f
xor ecx, ecx
call rax
mov rbx, qword [rsp + 0x4c0]
xor eax, eax
add rsp, 0x4a0
pop rbp
ret