Function at 0x140031a80
Capabilities:
Resolve function by parsing pe exports

Disassembly:
mov rax, rsp
mov qword [rax + 8], rcx
push rsi
push rdi
push r14
sub rsp, 0x80
mov r14, qword [0x1400c3c30]
lea rcx, str.magic_number:_0x_08x_n
mov qword [rax + 0x10], rbx
mov qword [rax + 0x20], r12
mov qword [rax - 0x28], r15
mov edx, dword [r14]
movsxd rdi, dword [r14 + 8]
mov qword [rsp + 0xa0], r14
call fcn.1400011a0
mov edx, dword [r14 + 4]
lea rcx, str.hashed_identifier:_0x_08x_n
call fcn.1400011a0
mov edx, edi
lea rcx, str.node_count:__u_n
call fcn.1400011a0
xor ebx, ebx
mov r12, rdi
mov r15d, ebx
test edi, edi
jle 0x140032327
mov qword [rsp + 0xb0], rbp
lea rdi, [r14 + 0xc]
mov qword [rsp + 0x78], r13
lea rbp, [r14 + 0x10]
mov r13d, ebx
nop word [rax + rax]
lea rcx, str._n_EWIDS
call fcn.1400011a0
mov edx, r15d
lea rcx, str.node__d:_n
call fcn.1400011a0
movsxd rdx, dword [rdi]
lea rcx, [rsp + 0x20]
add rdx, rdi
mov eax, ebx
sub eax, dword [rdi]
neg eax
sbb rax, rax
and rdx, rax
movsxd rax, r15d
shl rax, 4
add rdx, rax
call fcn.14002c310
movsxd rsi, dword [rbp]
lea rdx, [rsp + 0x20]
add rsi, rbp
lea rcx, str.__guid:__s_n
mov eax, ebx
sub eax, dword [rbp]
neg eax
sbb rax, rax
and rsi, rax
add rsi, r13
call fcn.1400011a0
lea rcx, str.__flags:
call fcn.1400011a0
test dword [rsi + 0x88], 0x100
je 0x140031b9d
lea rcx, str._overwrite
call fcn.1400011a0
movzx eax, byte [rsi + 0x88]
cmp rax, 4
jb 0x140031bb3
mov rdx, qword [str._unknown_]
jmp 0x140031bbe
lea rcx, str._unknown_
mov rdx, qword [rcx + rax*8]
lea rcx, str._n__type:__s_n
call fcn.1400011a0
movsxd rdx, dword [rsi]
lea rcx, str._n__action:__s_n
add rdx, rsi
mov eax, ebx
sub eax, dword [rsi]
neg eax
sbb rax, rax
and rdx, rax
call fcn.1400011a0
movsxd rdx, dword [rsi + 4]
lea rcx, [rsi + 4]
add rdx, rcx
mov eax, ebx
sub eax, dword [rcx]
lea rcx, str.__annotation:__s_n
neg eax
sbb rax, rax
and rdx, rax
call fcn.1400011a0
lea rcx, str.__dependencies_consumed_during_build:
call fcn.1400011a0
movsxd rdx, dword [rsi + 0x10]
lea rcx, [rsi + 0x10]
movsxd rdi, dword [rsi + 0x10]
lea r8, [rsi + 0x10]
add rdx, rcx
mov eax, ebx
sub eax, dword [rcx]
neg eax
sbb rax, rax
add rdi, r8
and rdx, rax
movsxd rax, dword [rsi + 0xc]
lea rbp, [rdx + rax*4]
mov eax, ebx
sub eax, dword [r8]
neg eax
sbb rax, rax
and rdi, rax
cmp rdi, rbp
je 0x140031c77
nop dword [rax]
nop word [rax + rax]
mov edx, dword [rdi]
lea rcx, [0x140081420]
call fcn.1400011a0
add rdi, 4
cmp rdi, rbp
jne 0x140031c60
lea rcx, str._n_EWIDS
call fcn.1400011a0
lea rcx, str.__dependencies_consumed_during_usage:
call fcn.1400011a0
movsxd rdx, dword [rsi + 0x18]
lea rcx, [rsi + 0x18]
movsxd rdi, dword [rsi + 0x18]
lea r8, [rsi + 0x18]
add rdx, rcx
mov eax, ebx
sub eax, dword [rcx]
neg eax
sbb rax, rax
add rdi, r8
and rdx, rax
movsxd rax, dword [rsi + 0x14]
lea rbp, [rdx + rax*4]
mov eax, ebx
sub eax, dword [r8]
neg eax
sbb rax, rax
and rdi, rax
cmp rdi, rbp
je 0x140031ce7
nop dword [rax + rax]
mov edx, dword [rdi]
lea rcx, [0x140081420]
call fcn.1400011a0
add rdi, 4
cmp rdi, rbp
jne 0x140031cd0
lea rcx, str._n_EWIDS
call fcn.1400011a0
lea rcx, str.__inputs:_n
call fcn.1400011a0
movsxd rdx, dword [rsi + 0x20]
lea rcx, [rsi + 0x20]
movsxd rdi, dword [rsi + 0x20]
lea r8, [rsi + 0x20]
add rdx, rcx
mov eax, ebx
sub eax, dword [rcx]
neg eax
sbb rax, rax
add rdi, r8
and rdx, rax
movsxd rax, dword [rsi + 0x1c]
lea rbp, [rdx + rax*8]
mov eax, ebx
sub eax, dword [r8]
neg eax
sbb rax, rax
and rdi, rax
cmp rdi, rbp
je 0x140031d6b
nop dword [rax + rax]
movsxd rdx, dword [rdi]
lea rcx, str._____s__0x_08x__n
mov r8d, dword [rdi + 4]
add rdx, rdi
mov eax, ebx
sub eax, dword [rdi]
neg eax
sbb rax, rax
and rdx, rax
call fcn.1400011a0
add rdi, 8
cmp rdi, rbp
jne 0x140031d40
lea rcx, str.__outputs:_n
call fcn.1400011a0
movsxd rdx, dword [rsi + 0x30]
lea rcx, [rsi + 0x30]
movsxd rdi, dword [rsi + 0x30]
lea r8, [rsi + 0x30]
add rdx, rcx
mov eax, ebx
sub eax, dword [rcx]
neg eax
sbb rax, rax
add rdi, r8
and rdx, rax
movsxd rax, dword [rsi + 0x2c]
lea rbp, [rdx + rax*8]
mov eax, ebx
sub eax, dword [r8]
neg eax
sbb rax, rax
and rdi, rax
cmp rdi, rbp
je 0x140031deb
nop dword [rax]
nop word [rax + rax]
movsxd rdx, dword [rdi]
lea rcx, str._____s__0x_08x__n
mov r8d, dword [rdi + 4]
add rdx, rdi
mov eax, ebx
sub eax, dword [rdi]
neg eax
sbb rax, rax
and rdx, rax
call fcn.1400011a0
add rdi, 8
cmp rdi, rbp
jne 0x140031dc0
lea rcx, str.__output_directories:_n
call fcn.1400011a0
movsxd rdx, dword [rsi + 0x38]
lea rcx, [rsi + 0x38]
movsxd rdi, dword [rsi + 0x38]
lea r8, [rsi + 0x38]
add rdx, rcx
mov eax, ebx
sub eax, dword [rcx]
neg eax
sbb rax, rax
add rdi, r8
and rdx, rax
movsxd rax, dword [rsi + 0x34]
lea rbp, [rdx + rax*8]
mov eax, ebx
sub eax, dword [r8]
neg eax
sbb rax, rax
and rdi, rax
cmp rdi, rbp
je 0x140031e6b
nop dword [rax]
nop word [rax + rax]
movsxd rdx, dword [rdi]
lea rcx, str._____s__0x_08x__n
mov r8d, dword [rdi + 4]
add rdx, rdi
mov eax, ebx
sub eax, dword [rdi]
neg eax
sbb rax, rax
and rdx, rax
call fcn.1400011a0
add rdi, 8
cmp rdi, rbp
jne 0x140031e40
lea rcx, [0x1400814a0]
call fcn.1400011a0
movsxd rdx, dword [rsi + 0x40]
lea rcx, [rsi + 0x40]
movsxd rdi, dword [rsi + 0x40]
lea r8, [rsi + 0x40]
add rdx, rcx
mov eax, ebx
sub eax, dword [rcx]
neg eax
sbb rax, rax
add rdi, r8
and rdx, rax
movsxd rax, dword [rsi + 0x3c]
lea rbp, [rdx + rax*8]
mov eax, ebx
sub eax, dword [r8]
neg eax
sbb rax, rax
and rdi, rax
cmp rdi, rbp
je 0x140031eeb
nop dword [rax]
nop word [rax + rax]
movsxd rdx, dword [rdi]
lea rcx, str._____s__0x_08x__n
mov r8d, dword [rdi + 4]
add rdx, rdi
mov eax, ebx
sub eax, dword [rdi]
neg eax
sbb rax, rax
and rdx, rax
call fcn.1400011a0
add rdi, 8
cmp rdi, rbp
jne 0x140031ec0
lea rcx, str.__environment:_n
call fcn.1400011a0
movsxd rdx, dword [rsi + 0x58]
lea rcx, [rsi + 0x58]
movsxd rdi, dword [rsi + 0x58]
lea r8, [rsi + 0x58]
add rdx, rcx
mov eax, ebx
sub eax, dword [rcx]
neg eax
sbb rax, rax
add rdi, r8
and rdx, rax
movsxd rax, dword [rsi + 0x54]
lea rbp, [rdx + rax*8]
mov eax, ebx
sub eax, dword [r8]
neg eax
sbb rax, rax
and rdi, rax
cmp rdi, rbp
je 0x140031f6c
movsxd rax, dword [rdi + 4]
lea r8, [rdi + 4]
movsxd rdx, dword [rdi]
lea rcx, str._____s___s_n
add r8, rax
mov eax, ebx
cmp dword [rdi + 4], ebx
cmove r8, rbx
sub eax, dword [rdi]
add rdx, rdi
neg eax
sbb rax, rax
and rdx, rax
call fcn.1400011a0
add rdi, 8
cmp rdi, rbp
jne 0x140031f33
lea rcx, str.__globsignature:_n
call fcn.1400011a0
movsxd rbp, dword [rsi + 0x7c]
lea rcx, [rsi + 0x7c]
movsxd rdi, dword [rsi + 0x7c]
lea rdx, [rsi + 0x7c]
add rbp, rcx
mov eax, ebx
sub eax, dword [rcx]
neg eax
sbb rax, rax
add rdi, rdx
and rbp, rax
movsxd rax, dword [rsi + 0x78]
imul rcx, rax, 0x1c
mov eax, ebx
sub eax, dword [rdx]
add rbp, rcx
neg eax
sbb rax, rax
and rdi, rax
cmp rdi, rbp
je 0x140031ffa
nop word [rax + rax]
lea rdx, [rdi + 8]
lea rcx, [rsp + 0x48]
call fcn.14002c310
movsxd rdx, dword [rdi]
lea r8, [rsp + 0x48]
add rdx, rdi
lea rcx, str._____s___s_n
mov eax, ebx
sub eax, dword [rdi]
neg eax
sbb rax, rax
and rdx, rax
call fcn.1400011a0
add rdi, 0x1c
cmp rdi, rbp
jne 0x140031fc0
lea rcx, str.__statsignature:_n
call fcn.1400011a0
movsxd rdx, dword [rsi + 0x74]
lea rcx, [rsi + 0x74]
movsxd rdi, dword [rsi + 0x74]
lea r8, [rsi + 0x74]
add rdx, rcx
mov eax, ebx
sub eax, dword [rcx]
neg eax
sbb rax, rax
add rdi, r8
and rdx, rax
movsxd rax, dword [rsi + 0x70]
lea rbp, [rdx + rax*8]
mov eax, ebx
sub eax, dword [r8]
neg eax
sbb rax, rax
and rdi, rax
cmp rdi, rbp
je 0x14003206d
movsxd rdx, dword [rdi]
lea rcx, str._____s___d_n
mov r8d, dword [rdi + 4]
add rdx, rdi
mov eax, ebx
sub eax, dword [rdi]
neg eax
sbb rax, rax
and rdx, rax
call fcn.1400011a0
add rdi, 8
cmp rdi, rbp
jne 0x140032042
lea rcx, str.__filesignature:_n
call fcn.1400011a0
movsxd rbp, dword [rsi + 0x6c]
lea rcx, [rsi + 0x6c]
movsxd rdi, dword [rsi + 0x6c]
lea rdx, [rsi + 0x6c]
add rbp, rcx
mov eax, ebx
sub eax, dword [rcx]
neg eax
sbb rax, rax
add rdi, rdx
and rbp, rax
movsxd rax, dword [rsi + 0x68]
shl rax, 4
add rbp, rax
mov eax, ebx
sub eax, dword [rdx]
neg eax
sbb rax, rax
and rdi, rax
cmp rdi, rbp
je 0x1400320eb
nop word [rax + rax]
movsxd rdx, dword [rdi]
lea rcx, str._____s___lld_n
mov r8, qword [rdi + 8]
add rdx, rdi
mov eax, ebx
sub eax, dword [rdi]
neg eax
sbb rax, rax
and rdx, rax
call fcn.1400011a0
add rdi, 0x10
cmp rdi, rbp
jne 0x1400320c0
mov edx, dword [rsi + 0x5c]
lea rcx, str.__scannerIndex:__d_n
call fcn.1400011a0
cmp dword [rsi + 0x5c], 0xffffffff
je 0x1400322f2
movsxd rdx, dword [r14 + 0x58]
lea rcx, [r14 + 0x58]
add rdx, rcx
mov eax, ebx
sub eax, dword [rcx]
neg eax
sbb rax, rax
and rdx, rax
movsxd rax, dword [rsi + 0x5c]
movsxd rsi, dword [rdx + rax*4]
lea rcx, [rdx + rax*4]
mov eax, ebx
sub eax, dword [rcx]
add rsi, rcx
neg eax
lea rcx, str.__scanner:_n
sbb rax, rax
and rsi, rax
call fcn.1400011a0
mov ecx, dword [rsi]
test ecx, ecx
je 0x14003215f
cmp ecx, 1
je 0x140032156
lea rcx, str.____type:_garbage__n
jmp 0x140032166
lea rcx, str.____type:_generic_n
jmp 0x140032166
lea rcx, str.____type:_cpp_n
call fcn.1400011a0
lea rcx, str.____include_paths:_n
call fcn.1400011a0
movsxd rdx, dword [rsi + 8]
lea rcx, [rsi + 8]
movsxd rdi, dword [rsi + 8]
lea r8, [rsi + 8]
add rdx, rcx
mov eax, ebx
sub eax, dword [rcx]
neg eax
sbb rax, rax
add rdi, r8
and rdx, rax
movsxd rax, dword [rsi + 4]
lea rbp, [rdx + rax*4]
mov eax, ebx
sub eax, dword [r8]
neg eax
sbb rax, rax
and rdi, rax
cmp rdi, rbp
je 0x1400321e7
nop dword [rax]
nop word [rax + rax]
movsxd rdx, dword [rdi]
lea rcx, str._______s_n
add rdx, rdi
mov eax, ebx
sub eax, dword [rdi]
neg eax
sbb rax, rax
and rdx, rax
call fcn.1400011a0
add rdi, 4
cmp rdi, rbp
jne 0x1400321c0
lea rdx, [rsi + 0xc]
lea rcx, [rsp + 0x20]
call fcn.14002c310
lea rdx, [rsp + 0x20]
lea rcx, str.____scanner_guid:__s_n
call fcn.1400011a0
cmp dword [rsi], 1
jne 0x1400322f2
lea rcx, str.____flags:
call fcn.1400011a0
test byte [rsi + 0x1c], 1
je 0x14003222d
lea rcx, str._RequireWhitespace
call fcn.1400011a0
test byte [rsi + 0x1c], 2
je 0x14003223f
lea rcx, str._UseSeparators
call fcn.1400011a0
test byte [rsi + 0x1c], 4
je 0x140032251
lea rcx, str._BareMeansSystem
call fcn.1400011a0
lea rcx, str._n_EWIDS
call fcn.1400011a0
lea rcx, str.____keywords:_n
call fcn.1400011a0
movsxd rdx, dword [rsi + 0x24]
lea rcx, [rsi + 0x24]
movsxd rdi, dword [rsi + 0x24]
lea r8, [rsi + 0x24]
add rdx, rcx
mov eax, ebx
sub eax, dword [rcx]
neg eax
sbb rax, rax
add rdi, r8
and rdx, rax
movsxd rax, dword [rsi + 0x20]
lea rsi, [rdx + rax*8]
mov eax, ebx
sub eax, dword [r8]
neg eax
sbb rax, rax
and rdi, rax
cmp rdi, rsi
je 0x1400322f2
lea r14, [0x140081640]
nop dword [rax]
cmp byte [rdi + 6], bl
lea r9, [0x140081644]
movsxd rdx, dword [rdi]
lea rcx, str.________s____d_bytes__follow:__s_n
movsx r8d, word [rdi + 4]
cmovne r9, r14
add rdx, rdi
mov eax, ebx
sub eax, dword [rdi]
neg eax
sbb rax, rax
and rdx, rax
call fcn.1400011a0
add rdi, 8
cmp rdi, rsi
jne 0x1400322b0
mov r14, qword [rsp + 0xa0]
lea rcx, str._n_EWIDS
call fcn.1400011a0
inc r15d
lea rdi, [r14 + 0xc]
add r13, 0x94
lea rbp, [r14 + 0x10]
sub r12, 1
jne 0x140031b10
mov r13, qword [rsp + 0x78]
mov rbp, qword [rsp + 0xb0]
lea rcx, str._nfile_signatures:_n
call fcn.1400011a0
movsxd rsi, dword [r14 + 0x30]
lea rcx, [r14 + 0x30]
movsxd rdi, dword [r14 + 0x30]
lea rdx, [r14 + 0x30]
mov r15, qword [rsp + 0x70]
add rsi, rcx
mov r12, qword [rsp + 0xb8]
mov eax, ebx
sub eax, dword [rcx]
neg eax
sbb rax, rax
add rdi, rdx
and rsi, rax
movsxd rax, dword [r14 + 0x2c]
shl rax, 4
add rsi, rax
mov eax, ebx
sub eax, dword [rdx]
neg eax
sbb rax, rax
and rdi, rax
cmp rdi, rsi
je 0x1400323b6
nop
movsxd rdx, dword [rdi]
lea rcx, str.file____________:__s_n
add rdx, rdi
mov eax, ebx
sub eax, dword [rdi]
neg eax
sbb rax, rax
and rdx, rax
call fcn.1400011a0
mov edx, dword [rdi + 8]
lea rcx, str.timestamp_______:__u_n
call fcn.1400011a0
add rdi, 0x10
cmp rdi, rsi
jne 0x140032380
lea rcx, str._nglob_signatures:_n
call fcn.1400011a0
movsxd rsi, dword [r14 + 0x40]
lea rcx, [r14 + 0x40]
movsxd rdi, dword [r14 + 0x40]
lea rdx, [r14 + 0x40]
add rsi, rcx
mov eax, ebx
sub eax, dword [rcx]
neg eax
sbb rax, rax
add rdi, rdx
and rsi, rax
movsxd rax, dword [r14 + 0x3c]
imul rcx, rax, 0x1c
mov eax, ebx
sub eax, dword [rdx]
add rsi, rcx
neg eax
sbb rax, rax
and rdi, rax
cmp rdi, rsi
je 0x140032446
lea rdx, [rdi + 8]
lea rcx, [rsp + 0x48]
call fcn.14002c310
movsxd rdx, dword [rdi]
lea rcx, str.path____________:__s_n
add rdx, rdi
mov eax, ebx
sub eax, dword [rdi]
neg eax
sbb rax, rax
and rdx, rax
call fcn.1400011a0
lea rdx, [rsp + 0x48]
lea rcx, str.digest__________:__s_n
call fcn.1400011a0
add rdi, 0x1c
cmp rdi, rsi
jne 0x140032400
movsxd rdx, dword [r14 + 0x50]
lea rcx, [r14 + 0x50]
movsxd rdi, dword [r14 + 0x50]
lea r8, [r14 + 0x50]
add rdx, rcx
mov eax, ebx
sub eax, dword [rcx]
neg eax
sbb rax, rax
add rdi, r8
and rdx, rax
movsxd rax, dword [r14 + 0x4c]
lea rsi, [rdx + rax*8]
mov eax, ebx
sub eax, dword [r8]
neg eax
sbb rax, rax
and rdi, rax
cmp rdi, rsi
je 0x1400324b7
nop dword [rax]
nop word [rax + rax]
movsxd rdx, dword [rdi]
lea rcx, str.directoryCausingImplicitDependencies:__s_n
add rdx, rdi
mov eax, ebx
sub eax, dword [rdi]
neg eax
sbb rax, rax
and rdx, rax
call fcn.1400011a0
add rdi, 8
cmp rdi, rsi
jne 0x140032490
movsxd rdx, dword [r14 + 0x6c]
lea rcx, [r14 + 0x6c]
add rdx, rcx
mov eax, ebx
sub eax, dword [rcx]
lea rcx, str.m_StateFileName_:__s_n
neg eax
sbb rax, rax
and rdx, rax
call fcn.1400011a0
movsxd rdx, dword [r14 + 0x70]
lea rcx, [r14 + 0x70]
add rdx, rcx
mov eax, ebx
sub eax, dword [rcx]
lea rcx, str.m_StateFileNameTmp_:__s_n
neg eax
sbb rax, rax
and rdx, rax
call fcn.1400011a0
movsxd rdx, dword [r14 + 0x74]
lea rcx, [r14 + 0x74]
add rdx, rcx
mov eax, ebx
sub eax, dword [rcx]
lea rcx, str.m_StateFileNameMapped_:__s_n
neg eax
sbb rax, rax
and rdx, rax
call fcn.1400011a0
movsxd rdx, dword [r14 + 0x78]
lea rcx, [r14 + 0x78]
add rdx, rcx
mov eax, ebx
sub eax, dword [rcx]
lea rcx, str.m_ScanCacheFileName_:__s_n
neg eax
sbb rax, rax
and rdx, rax
call fcn.1400011a0
movsxd rdx, dword [r14 + 0x7c]
lea rcx, [r14 + 0x7c]
add rdx, rcx
mov eax, ebx
sub eax, dword [rcx]
lea rcx, str.m_ScanCacheFileNameTmp_:__s_n
neg eax
sbb rax, rax
and rdx, rax
call fcn.1400011a0
lea rcx, [r14 + 0x80]
mov eax, ebx
sub eax, dword [rcx]
movsxd rdx, dword [rcx]
add rdx, rcx
lea rcx, str.m_DigestCacheFileName_:__s_n
neg eax
sbb rax, rax
and rdx, rax
call fcn.1400011a0
lea rcx, [r14 + 0x84]
mov eax, ebx
sub eax, dword [rcx]
movsxd rdx, dword [rcx]
add rdx, rcx
lea rcx, str.m_DigestCacheFileNameTmp_:__s_n
neg eax
sbb rax, rax
and rdx, rax
call fcn.1400011a0
lea rcx, [r14 + 0x88]
mov eax, ebx
sub eax, dword [rcx]
movsxd rdx, dword [rcx]
add rdx, rcx
lea rcx, str.m_BuildTitle_:__s_n
neg eax
sbb rax, rax
and rdx, rax
call fcn.1400011a0
lea rcx, str._nSHA_1_signatures_enabled_for_extension_hashes:_n
call fcn.1400011a0
movsxd rdx, dword [r14 + 0x60]
lea rcx, [r14 + 0x60]
movsxd rdi, dword [r14 + 0x60]
lea r8, [r14 + 0x60]
mov eax, ebx
add rdx, rcx
sub eax, dword [rcx]
neg eax
sbb rax, rax
sub ebx, dword [r8]
and rdx, rax
add rdi, r8
movsxd rax, dword [r14 + 0x5c]
neg ebx
mov rbx, qword [rsp + 0xa8]
lea rsi, [rdx + rax*4]
sbb rax, rax
and rdi, rax
cmp rdi, rsi
je 0x140032647
nop dword [rax]
nop word [rax + rax]
mov edx, dword [rdi]
lea rcx, str.hash____________:_0x_08x_n
call fcn.1400011a0
add rdi, 4
cmp rdi, rsi
jne 0x140032630
mov edx, dword [r14 + 0x90]
lea rcx, str.Magic_number_at_end:_0x_08x_n
add rsp, 0x80
pop r14
pop rdi
pop rsi
jmp fcn.1400011a0