Function at 0x140001680
Capabilities:
Parse pe header

Disassembly:
mov qword [rsp + 0x18], rbx
push rbp
lea rbp, [rsp - 0x380]
sub rsp, 0x480
mov rax, qword gs:[0x30]
mov qword [rbp + 0x148], rax
test rax, rax
je 0x140002296
xor ebx, ebx
mov dword [rbp - 0x30], 4
mov dword [rbp + 0x18], ebx
mov dword [rbp + 0x70], ebx
mov rcx, qword [rax + 0x60]
mov qword [rbp + 0x120], rcx
test rcx, rcx
je 0x140002296
mov rax, qword [rcx + 0x18]
mov qword [rbp + 0x10], rax
test rax, rax
je 0x140002296
lea rdx, [rax + 0x20]
mov qword [rbp], rdx
test rdx, rdx
je 0x140002296
mov rdx, qword [rdx]
lea r8d, [rbx + 0x11]
mov ecx, 0x6d74da7
mov rdx, qword [rdx + 0x50]
call section..text
mov edx, 0x624cb24f
mov dword [rbp + 0x28], eax
mov r8d, 0x2bd7b0d4
lea rcx, [rsp + 0x40]
call fcn.140001040
mov qword [rbp + 0x100], rax
test rax, rax
je 0x140002296
mov edx, 0x3e1f590e
mov r8d, 0xd48d9dcb
mov rcx, rax
call fcn.1400010d0
mov qword [rbp + 0x40], rax
test rax, rax
je 0x140002296
mov rcx, qword [rbp + 0x100]
mov edx, 0x41d259a6
mov r8d, 0x5c1f628e
call fcn.1400010d0
mov qword [rbp - 0x40], rax
test rax, rax
je 0x140002296
mov rcx, qword [rbp + 0x100]
mov edx, 0xed3e0a3b
mov r8d, 0x7d826884
call fcn.1400010d0
mov qword [rbp - 0x38], rax
test rax, rax
je 0x1400022a3
mov rcx, qword [rbp + 0x100]
mov edx, 0x6c5ba62a
mov r8d, 0xb1860399
call fcn.1400010d0
mov qword [rbp + 0x118], rax
test rax, rax
je 0x140002296
mov rcx, qword [rbp + 0x100]
mov edx, 0x4b20444d
mov r8d, 0x6e832294
call fcn.1400010d0
mov qword [rbp + 0xd8], rax
test rax, rax
je 0x140002296
mov rcx, qword [rbp + 0x100]
mov edx, 0x2f133434
mov r8d, 0xd207b315
call fcn.1400010d0
mov qword [rbp + 0x150], rax
test rax, rax
je 0x140002296
mov rcx, qword [rbp + 0x100]
mov edx, 0x672f0e1e
mov r8d, 0x846191cf
call fcn.1400010d0
mov qword [rbp + 0x128], rax
test rax, rax
je 0x140002296
mov rax, qword [rbp]
lea r8d, [rbx + 0x11]
mov ecx, 0xe6e87309
mov rdx, qword [rax]
mov rdx, qword [rdx + 0x50]
call section..text
mov dword [rbp - 0x80], eax
lea r8d, [rbx + 0x11]
mov rax, qword [rbp]
mov ecx, 0xcec3a6c3
mov rdx, qword [rax]
mov rdx, qword [rdx + 0x50]
call section..text
mov rcx, qword [rbp + 0x100]
or eax, 1
mov edx, 0x7b07c0fa
mov dword [rbp - 0x70], eax
mov r8d, 0x910a31ba
call fcn.1400010d0
mov qword [rbp - 0x18], rax
test rax, rax
je 0x140002296
mov rcx, qword [rbp + 0x100]
mov edx, 0x3ddc1d97
mov r8d, 0x677dec34
mov dword [rbp + 0xe0], 4
call fcn.1400010d0
mov qword [rbp + 0xb0], rax
test rax, rax
je 0x140002296
mov rcx, qword [rbp + 0x100]
mov edx, 0x100ebcbe
mov r8d, 0xa76a56ae
call fcn.1400010d0
mov qword [rbp - 0x78], rax
test rax, rax
je 0x140002296
mov rcx, qword [rbp + 0x100]
mov edx, 0x523b4504
mov r8d, 0x706a4c44
call fcn.1400010d0
mov qword [rbp - 0x58], rax
test rax, rax
je 0x140002296
mov rcx, qword [rbp + 0x100]
mov edx, 0xa4e31964
mov r8d, 0xa6771aae
call fcn.1400010d0
mov qword [rbp - 0x50], rax
test rax, rax
je 0x140002296
mov edx, 0x674c9d5e
mov dword [rsp + 0x20], 0xc6b822c8
mov r9d, 0x883fb0f6
lea rcx, [rsp + 0x40]
mov r8d, 0xe643de14
call fcn.140001490
lea rcx, [rsp + 0x40]
call fcn.140001640
test eax, eax
je 0x140002296
lea rcx, [rbp + 0x15c]
call qword [rbp + 0x40]
mov qword [rsp + 0x50], rax
test rax, rax
je 0x140002296
mov edx, 0x5a517d10
mov r8d, 0xe7aeabd5
mov rcx, rax
call fcn.1400010d0
mov qword [rbp - 8], rax
test rax, rax
je 0x140002296
mov edx, 0x3f230bc7
mov dword [rsp + 0x20], 0xce9904fe
mov r9d, 0x7be389cf
lea rcx, [rsp + 0x40]
mov r8d, 0xd2b2f418
call fcn.140001490
lea rcx, [rbp + 0x15c]
call qword [rbp + 0x40]
mov qword [rsp + 0x70], rax
test rax, rax
je 0x140002296
mov rcx, qword [rbp + 0x100]
mov edx, 0xf73abafa
mov r8d, 0x74db17d3
call fcn.1400010d0
mov qword [rsp + 0x60], rax
test rax, rax
je 0x140002296
mov rcx, qword [rsp + 0x70]
mov edx, 0xad1d8332
mov r8d, 0xd98a0553
call fcn.1400010d0
mov qword [rbp - 0x28], rax
test rax, rax
je 0x140002296
mov rcx, qword [rsp + 0x70]
mov edx, 0xb2a86b9b
mov r8d, 0x5fb2bb4c
call fcn.1400010d0
mov qword [rbp + 0x108], rax
test rax, rax
je 0x140002296
mov rcx, qword [rbp + 0x100]
mov edx, 0xa1f6653c
mov r8d, 0xdf0dcf92
call fcn.1400010d0
mov qword [rbp + 0x38], rax
test rax, rax
je 0x140002296
mov rcx, qword [rsp + 0x70]
mov edx, 0xff834dca
mov r8d, 0x8caf76a2
call fcn.1400010d0
mov qword [rbp - 0x68], rax
test rax, rax
je 0x140002296
mov rcx, qword [rsp + 0x70]
mov edx, 0x2abbac16
mov r8d, 0x878dd8d0
call fcn.1400010d0
mov qword [rbp + 0x58], rax
test rax, rax
je 0x140002296
lea edx, [rbx + 0x13]
xor ecx, ecx
lea r9d, [rbx + 4]
mov r8d, 0x3000
call qword [rbp - 0x40]
mov qword [rbp + 0xc0], rax
test rax, rax
je 0x140002296
lea edx, [rbx + 0x27]
xor ecx, ecx
lea r9d, [rbx + 4]
mov r8d, 0x3000
call qword [rbp - 0x40]
mov qword [rbp + 0x80], rax
test rax, rax
je 0x140002296
xor r9d, r9d
mov dword [rsp + 0x20], ebx
xor r8d, r8d
lea edx, [rbx + 1]
xor ecx, ecx
call qword [rbp - 0x68]
mov qword [rbp - 0x10], rax
test rax, rax
je 0x140002296
mov rcx, qword [rbp + 0x100]
mov edx, 0x1bb0e645
mov r8d, 0xec126d4b
call fcn.1400010d0
mov qword [rsp + 0x78], rax
test rax, rax
je 0x140002296
mov edx, 0xf690890a
mov dword [rsp + 0x20], 0x42253ba1
mov r9d, 0x358438fd
lea rcx, [rsp + 0x40]
mov r8d, 0xe3ab5c22
call fcn.140001490
lea rcx, [rbp + 0x15c]
call qword [rbp + 0x40]
mov qword [rbp + 0xf0], rax
test rax, rax
je 0x140002296
mov qword [rsp + 0x490], rsi
lea rcx, [rsp + 0x40]
mov edx, 0x5262b6e2
mov qword [rsp + 0x498], rdi
mov r9d, 0xc6a267d5
mov dword [rsp + 0x20], 0xba0a8ef9
mov r8d, 0x387bf6d8
call fcn.140001490
mov rdi, qword [rbp + 0x80]
lea rsi, [rbp + 0x15c]
add rdi, 0x10
mov ecx, 0x10
rep movsb byte [rdi], byte [rsi]
mov rcx, qword [rsp + 0x70]
mov edx, 0x6ec73cc2
mov r8d, 0xc467e813
call fcn.1400010d0
mov qword [rsp + 0x68], rax
test rax, rax
je 0x140002286
lea edx, [rbx + 0x20]
xor ecx, ecx
lea r9d, [rbx + 4]
mov r8d, 0x3000
call qword [rbp - 0x40]
mov qword [rbp + 0x48], rax
test rax, rax
je 0x140002286
mov edx, 0xaf3e17b3
mov dword [rsp + 0x20], 0xe4885304
mov r9d, 0x34f6092
lea rcx, [rsp + 0x40]
mov r8d, 0x7c38e562
call fcn.140001490
mov rdi, qword [rbp + 0x48]
lea rsi, [rbp + 0x15c]
add rdi, 0x10
mov ecx, 0x10
rep movsb byte [rdi], byte [rsi]
mov rcx, qword [rbp + 0xf0]
mov edx, 0x1ac8f249
mov r8d, 0x2b7a5a17
call fcn.1400010d0
mov qword [rbp - 0x48], rax
test rax, rax
je 0x140002286
mov edx, 0x254e574e
mov dword [rsp + 0x20], 0x5d339533
mov r9d, 0xd76f4842
lea rcx, [rsp + 0x40]
mov r8d, 0xff71648d
call fcn.140001490
mov rdi, qword [rbp + 0xc0]
lea rsi, [rbp + 0x15c]
mov ecx, 0x10
mov dword [rsp + 0x20], 0xdc95bddc
rep movsb byte [rdi], byte [rsi]
lea rcx, [rsp + 0x40]
mov edx, 0x32ab8e1a
mov r9d, 0xe277ad53
mov r8d, 0xc83ee2c7
call fcn.140001490
lea rcx, [rbp + 0x15c]
call qword [rbp + 0x40]
mov qword [rbp + 0x90], rax
test rax, rax
je 0x140002286
mov rcx, qword [rsp + 0x70]
mov edx, 0x35e7bb66
mov r8d, 0x62283a53
call fcn.1400010d0
mov qword [rbp + 0xd0], rax
test rax, rax
je 0x140002286
mov edx, 0x44196233
mov dword [rsp + 0x20], 0xcad7976a
mov r9d, 0x824fc9d7
lea rcx, [rsp + 0x40]
mov r8d, 0xf5573c2c
call fcn.140001490
mov rdi, qword [rbp + 0x80]
lea rsi, [rbp + 0x15c]
add rdi, 0x20
mov ecx, 0x10
rep movsb byte [rdi], byte [rsi]
mov rcx, qword [rsp + 0x70]
mov edx, 0xd619a506
mov r8d, 0x8fff9c4d
call fcn.1400010d0
mov qword [rbp + 0x68], rax
test rax, rax
je 0x140002286
mov edx, 0x8e668364
mov dword [rsp + 0x20], 0xf7b89d19
mov r9d, 0xd48ba049
lea rcx, [rsp + 0x40]
mov r8d, 0xd9352147
call fcn.140001490
mov rdi, qword [rbp + 0x80]
lea rsi, [rbp + 0x15c]
mov ecx, 0x10
mov edx, 0x3847a0e0
rep movsb byte [rdi], byte [rsi]
mov rcx, qword [rbp + 0x90]
mov r8d, 0x680091dc
call fcn.1400010d0
mov qword [rbp + 0x30], rax
test rax, rax
je 0x140002286
xor ecx, ecx
call qword [rbp - 8]
mov dword [rbp + 0x78], eax
test eax, eax
js 0x140002286
mov edx, 0xde68051
mov dword [rsp + 0x20], 0xc5a889fe
mov r9d, 0x9857bbb3
lea rcx, [rsp + 0x40]
mov r8d, 0x384ad66d
call fcn.140001490
mov rdi, qword [rbp + 0xc0]
lea rsi, [rbp + 0x15c]
add rdi, 0x10
mov dword [rsp + 0x20], 0x45567e9a
mov ecx, 0x10
mov edx, 0x408ec237
rep movsb byte [rdi], byte [rsi]
lea rcx, [rsp + 0x40]
mov r9d, 0x640058b9
mov r8d, 0x765f70ec
call fcn.140001490
mov rdi, qword [rbp + 0x48]
lea rsi, [rbp + 0x15c]
mov ecx, 0x10
mov dword [rsp + 0x20], 0x5409958f
rep movsb byte [rdi], byte [rsi]
lea rcx, [rsp + 0x40]
mov edx, 0xfe61c913
mov r9d, 0xb5c533bc
mov r8d, 0x60b4e24b
call fcn.140001490
mov rcx, qword [rbp - 0x10]
lea rdx, [rbp + 0x15c]
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 [rsp + 0x68]
mov qword [rbp + 0x140], rax
test rax, rax
je 0x140002286
lea rdx, [rbp + 0x170]
mov ecx, 0x104
call qword [rbp - 0x50]
test eax, eax
je 0x140002286
lea rcx, [rbp + 0x170]
call qword [rbp + 0xd8]
test eax, eax
je 0x140002286
lea rcx, [rsp + 0x40]
call fcn.140001520
mov rax, qword [rbp + 0x138]
dec rax
cmp rax, 0xfffffffffffffffd
ja 0x140002286
mov edx, 0x518d4282
mov dword [rsp + 0x20], 0x584bd21d
mov r9d, 0xec53c45a
lea rcx, [rsp + 0x40]
mov r8d, 0x995c5f37
call fcn.140001490
mov rcx, qword [rbp + 0x140]
lea r8, [rbp + 0x160]
mov qword [rsp + 0x38], rbx
lea rdx, [rbp + 0x15c]
mov dword [rsp + 0x30], 0x80800000
xor r9d, r9d
mov qword [rsp + 0x28], rbx
mov qword [rsp + 0x20], rbx
call qword [rbp + 0x58]
mov qword [rbp + 0x88], rax
test rax, rax
je 0x140002286
xor r9d, r9d
mov dword [rsp + 0x20], ebx
xor r8d, r8d
xor edx, edx
mov rcx, rax
call qword [rbp + 0x108]
test eax, eax
je 0x140002286
mov rcx, qword [rbp + 0x88]
lea rax, [rbp + 0x18]
lea r9, [rbp - 0x30]
mov qword [rsp + 0x20], rax
lea r8, [rsp + 0x40]
mov edx, 0x20000005
call qword [rbp + 0x68]
test eax, eax
je 0x140002286
mov edx, dword [rsp + 0x40]
lea r9d, [rbx + 4]
xor ecx, ecx
mov r8d, 0x3000
call qword [rbp - 0x40]
mov qword [rsp + 0x58], rax
test rax, rax
je 0x140002286
mov r8d, dword [rsp + 0x40]
lea r9, [rbp + 8]
mov rcx, qword [rbp + 0x88]
mov rdx, rax
call qword [rbp - 0x28]
test eax, eax
je 0x140002286
mov eax, dword [rsp + 0x40]
cmp dword [rbp + 8], eax
jne 0x140002286
mov rcx, qword [rbp + 0x140]
call qword [rbp + 0xd0]
mov r8d, dword [rsp + 0x40]
lea r9, [rbp - 0x60]
mov rdx, qword [rsp + 0x58]
mov rcx, qword [rbp + 0x138]
mov qword [rsp + 0x20], rbx
call qword [rbp - 0x58]
test eax, eax
je 0x140002286
mov edx, 0xc521dfe8
mov dword [rsp + 0x20], 0xe8f94908
mov r9d, 0xeb86c606
lea rcx, [rsp + 0x40]
mov r8d, 0x5f11a69c
call fcn.140001490
mov rcx, qword [rbp - 0x10]
lea rdx, [rbp + 0x15c]
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 [rsp + 0x68]
mov qword [rbp + 0x60], rax
test rax, rax
je 0x140002286
mov edx, 0xad46d102
mov dword [rsp + 0x20], 0x673f4b2d
mov r9d, 0xbd64f219
lea rcx, [rsp + 0x40]
mov r8d, 0x2085150c
call fcn.140001490
mov rcx, qword [rbp + 0x60]
lea r8, [rbp + 0x160]
mov qword [rsp + 0x38], rbx
lea rdx, [rbp + 0x15c]
mov dword [rsp + 0x30], 0x80800000
xor r9d, r9d
mov qword [rsp + 0x28], rbx
mov qword [rsp + 0x20], rbx
call qword [rbp + 0x58]
mov qword [rbp + 0xa0], rax
test rax, rax
je 0x140002286
mov rcx, qword [rbp + 0x88]
call qword [rbp + 0xd0]
mov rcx, qword [rbp + 0x138]
call qword [rsp + 0x60]
mov rdx, qword [rbp + 0x48]
lea r8d, [rbx + 1]
xor ecx, ecx
call qword [rbp + 0x30]
mov dword [rbp + 0x158], eax
test eax, eax
js 0x140002286
mov r8, qword [rbp + 0xc0]
mov r9d, 0x1040
mov rdx, qword [rbp + 0x80]
xor ecx, ecx
call qword [rbp - 0x48]
mov rcx, qword [rbp + 0xa0]
xor r9d, r9d
xor r8d, r8d
mov dword [rsp + 0x20], ebx
xor edx, edx
call qword [rbp + 0x108]
test eax, eax
je 0x140002286
mov rcx, qword [rbp + 0xa0]
lea rax, [rbp + 0x70]
lea r9, [rbp + 0xe0]
mov qword [rsp + 0x20], rax
lea r8, [rbp + 0x98]
mov edx, 0x20000005
call qword [rbp + 0x68]
test eax, eax
je 0x140002286
mov edx, dword [rbp + 0x98]
lea r9d, [rbx + 4]
xor ecx, ecx
mov r8d, 0x3000
call qword [rbp - 0x40]
mov qword [rbp - 0x20], rax
test rax, rax
je 0x140002286
mov r8d, dword [rbp + 0x98]
lea r9, [rbp + 0xe8]
mov rcx, qword [rbp + 0xa0]
mov rdx, rax
call qword [rbp - 0x28]
test eax, eax
je 0x140002286
mov eax, dword [rbp + 0x98]
cmp dword [rbp + 0xe8], eax
jne 0x140002286
mov rcx, qword [rbp - 0x10]
call qword [rbp + 0xd0]
mov rcx, qword [rbp + 0x60]
call qword [rbp + 0xd0]
mov rcx, qword [rbp + 0xa0]
call qword [rbp + 0xd0]
mov rcx, qword [rbp - 0x20]
mov eax, 0x5a4d
mov qword [rbp + 0x110], rcx
cmp word [rcx], ax
jne 0x140002286
movsxd rdx, dword [rcx + 0x3c]
add rdx, rcx
mov qword [rbp + 0xf8], rdx
cmp dword [rdx], 0x4550
jne 0x140002286
mov eax, 0x8664
cmp word [rdx + 4], ax
jne 0x140002286
mov eax, 0x20b
cmp word [rdx + 0x18], ax
jne 0x140002286
movzx ecx, word [rdx + 0x14]
lea r9d, [rbx + 0x40]
add rcx, 0x18
mov r8d, 0x3000
add rcx, rdx
mov qword [rbp + 0xc8], rcx
xor ecx, ecx
mov edx, dword [rdx + 0x50]
call qword [rbp - 0x40]
mov qword [rbp + 0x50], rax
test rax, rax
je 0x140002286
lea rcx, [rsp + 0x40]
call fcn.140001200
mov rax, qword [rbp + 0xf8]
mov rdi, qword [rbp + 0x50]
mov rsi, qword [rbp - 0x20]
mov ecx, dword [rax + 0x54]
rep movsb byte [rdi], byte [rsi]
lea rcx, [rsp + 0x40]
call fcn.140001280
lea rcx, [rsp + 0x40]
call fcn.140001370
lea rcx, [rsp + 0x40]
call fcn.140001420
mov rsi, qword [rsp + 0x490]
mov rdi, qword [rsp + 0x498]
mov rax, qword [rbp - 0x38]
test rax, rax
je 0x1400022a3
xor ecx, ecx
call rax
mov rbx, qword [rsp + 0x4a0]
xor eax, eax
add rsp, 0x480
pop rbp
ret