Function at 0x14001a3e0
Capabilities:
Check for time delay via queryperformancecounter
Hash data using djb2

Disassembly:
mov qword [rsp + 0x20], r9
mov qword [rsp + 0x18], r8
mov qword [rsp + 8], rcx
push rbp
push rbx
push rsi
push rdi
push r13
push r14
push r15
lea rbp, [rsp - 0x2d0]
sub rsp, 0x3d0
mov eax, dword [r8]
mov r10, rdx
mov dword [rbp + 0x100], eax
lea rdx, [rbp + 0x1f0]
mov rax, qword [r8 + 0x20]
mov r13, rcx
mov qword [rbp + 0x108], rax
mov rcx, r10
movaps xmm0, xmmword [rbp + 0x100]
movdqa xmmword [rbp + 0x1f0], xmm0
call fcn.140007950
mov r15, qword [r13 + 8]
mov rsi, qword [rbp + 0x358]
mov qword [rbp + 0x100], r15
lea rbx, [r15*4]
mov rdi, qword [rsi + 0x10]
lea rcx, [rbx + 8]
mov qword [rsp + 0x48], rdi
call fcn.140057c1c
mov r9, qword [rbp + 0x348]
mov qword [rax], rbx
lock xadd qword [r9], rbx
xor r10d, r10d
lea r8, [rax + 8]
mov qword [rbp - 0x48], r8
mov ecx, r10d
test r15, r15
je 0x14001a4b1
mov rdx, qword [rbp + 0x368]
mov eax, r10d
nop dword [rax + rax]
movsxd rax, dword [rdx + rax*4]
mov dword [r8 + rax*4], ecx
inc ecx
mov eax, ecx
cmp rax, r15
jb 0x14001a4a0
mov rax, qword [rbp + 0x370]
xorps xmm0, xmm0
mov qword [rsp + 0x418], r12
mov r14, r10
mov qword [rbp - 0x30], r10
mov qword [rbp - 0x20], r9
mov dword [rax], r10d
mov eax, r10d
mov dword [rbp + 0x340], eax
mov dword [rbp - 0x28], eax
mov qword [rbp - 0x18], r10
mov qword [rsp + 0x70], r10
mov qword [rsp + 0x78], r10
mov qword [rbp - 0x80], r10
mov qword [rbp - 0x78], r10
mov qword [rbp + 0xe0], r10
movdqu xmmword [rbp - 0x40], xmm0
test r15, r15
je 0x14001c629
mov rcx, qword [rbp + 0x360]
lea rax, [r14 + r14*4]
mov r14, r10
lea rbx, str.Action
lea rsi, str._unknown_
movsxd rcx, dword [rcx + rax*4 + 0x10]
mov rax, qword [r13 + 0x10]
mov rdx, qword [rax + rcx*8]
cmp dword [rdx], 2
cmove r14, rdx
mov qword [rsp + 0x30], r14
mov r15d, dword [r14]
cmp r15d, 2
jne 0x14001a591
mov rsi, qword [r14 + 8]
mov rbx, r10
test rsi, rsi
je 0x14001a583
mov rdi, qword [r14 + 0x10]
nop word [rax + rax]
mov rcx, qword [rdi]
lea rdx, str.ActionType
call fcn.140056ab0
test eax, eax
je 0x14001a5f5
inc rbx
add rdi, 8
cmp rbx, rsi
jb 0x14001a560
lea rbx, str.Action
lea rsi, str._unknown_
lea r9, str.RunShellCommand
xor edi, edi
mov r10d, edi
mov qword [rsp + 0x60], rdi
mov r8, qword [rsi + r10*8]
mov rax, r9
sub r8, r9
nop dword [rax]
movzx edx, byte [rax]
movzx ecx, byte [rax + r8]
sub edx, ecx
jne 0x14001a5c3
inc rax
test ecx, ecx
jne 0x14001a5b0
test edx, edx
je 0x14001a5da
inc r10
mov qword [rsp + 0x60], r10
cmp r10, 5
jb 0x14001a5a2
mov byte [rsp + 0x60], dil
cmp r15d, 2
je 0x14001a626
mov r14, rdi
mov qword [rsp + 0x38], rdi
mov qword [rsp + 0x50], rdi
mov r12, rdi
jmp 0x14001a755
mov rax, qword [r14 + 0x18]
mov rcx, qword [rax + rbx*8]
test rcx, rcx
je 0x14001a583
cmp dword [rcx], 4
lea rbx, str.Action
lea rsi, str._unknown_
jne 0x14001a591
mov r9, qword [rcx + 8]
jmp 0x14001a598
mov r10, qword [r14 + 8]
mov r8, rdi
test r10, r10
je 0x14001a68d
mov r9, qword [r14 + 0x10]
nop word [rax + rax]
mov rdx, qword [r9]
mov rcx, rdi
nop word [rax + rax]
movzx eax, byte [rdx + rcx]
inc rcx
cmp al, byte [rbx + rcx - 1]
jne 0x14001a681
cmp rcx, 7
jne 0x14001a650
mov rax, qword [r14 + 0x18]
mov rcx, qword [rax + r8*8]
test rcx, rcx
je 0x14001a68d
cmp dword [rcx], 4
mov rsi, r10
je 0x14001a806
mov r12, rdi
jmp 0x14001a698
inc r8
add r9, 8
cmp r8, r10
jb 0x14001a640
mov rsi, r10
mov r12, rdi
test r10, r10
je 0x14001a6d5
mov rdi, qword [r14 + 0x10]
xor r13d, r13d
mov ebx, r13d
nop dword [rax]
nop word [rax + rax]
mov rcx, qword [rdi]
lea rdx, str.Annotation
call fcn.140056ab0
test eax, eax
je 0x14001a80f
inc rbx
add rdi, 8
cmp rbx, rsi
jb 0x14001a6b0
xor edi, edi
mov rsi, qword [r14 + 8]
mov qword [rsp + 0x50], rdi
test rsi, rsi
je 0x14001a715
xor r13d, r13d
mov rdi, qword [r14 + 0x10]
mov rbx, r13
nop dword [rax]
mov rcx, qword [rdi]
lea rdx, str.DisplayName
call fcn.140056ab0
test eax, eax
je 0x14001a841
inc rbx
add rdi, 8
cmp rbx, rsi
jb 0x14001a6f0
xor edi, edi
mov rsi, qword [r14 + 8]
mov qword [rsp + 0x38], rdi
test rsi, rsi
je 0x14001a755
xor r13d, r13d
mov rdi, qword [r14 + 0x10]
mov rbx, r13
nop dword [rax]
mov rcx, qword [rdi]
lea rdx, str.ProfilerOutput
call fcn.140056ab0
test eax, eax
je 0x14001a873
inc rbx
add rdi, 8
cmp rbx, rsi
jb 0x14001a730
xor edi, edi
mov qword [rsp + 0x40], rdi
mov rsi, qword [r14 + 8]
mov rbx, rdi
test rsi, rsi
je 0x14001a795
mov rdi, qword [r14 + 0x10]
nop word [rax + rax]
mov rcx, qword [rdi]
lea rdx, str.ToBuildDependencies
call fcn.140056ab0
test eax, eax
je 0x14001a89d
inc rbx
add rdi, 8
cmp rbx, rsi
jb 0x14001a770
xor edi, edi
mov rbx, qword [rsp + 0x30]
cmp r15d, 2
mov r11, rdi
mov r8, rdi
cmove r11, rbx
mov r10, qword [r11 + 8]
test r10, r10
je 0x14001a8d7
mov r9, qword [r11 + 0x10]
lea rsi, str.Deps
mov rdx, qword [r9]
mov rcx, rdi
nop word [rax + rax]
movzx eax, byte [rdx + rcx]
inc rcx
cmp al, byte [rsi + rcx - 1]
jne 0x14001a8c7
cmp rcx, 5
jne 0x14001a7d0
mov rax, qword [r11 + 0x18]
mov r13, qword [rax + r8*8]
test r13, r13
je 0x14001a8d7
cmp dword [r13], 3
cmovne r13, rdi
jmp 0x14001a8da
mov r12, qword [rcx + 8]
jmp 0x14001a698
mov rax, qword [r14 + 0x18]
mov rcx, qword [rax + rbx*8]
test rcx, rcx
je 0x14001a6d3
cmp dword [rcx], 4
mov rsi, qword [r14 + 8]
je 0x14001a833
mov qword [rsp + 0x50], r13
jmp 0x14001a6e6
mov rdx, qword [rcx + 8]
mov qword [rsp + 0x50], rdx
jmp 0x14001a6e6
mov rax, qword [r14 + 0x18]
mov rcx, qword [rax + rbx*8]
test rcx, rcx
je 0x14001a713
cmp dword [rcx], 4
mov rsi, qword [r14 + 8]
je 0x14001a865
mov qword [rsp + 0x38], r13
jmp 0x14001a726
mov rcx, qword [rcx + 8]
mov qword [rsp + 0x38], rcx
jmp 0x14001a726
mov rax, qword [r14 + 0x18]
mov rcx, qword [rax + rbx*8]
test rcx, rcx
je 0x14001a753
xor edi, edi
cmp dword [rcx], 4
jne 0x14001a755
mov rax, qword [rcx + 8]
mov qword [rsp + 0x40], rax
jmp 0x14001a75a
mov rax, qword [r14 + 0x18]
mov r13, qword [rax + rbx*8]
mov qword [rsp + 0x68], r13
test r13, r13
je 0x14001a793
xor edi, edi
cmp dword [r13], 3
jne 0x14001a795
mov rbx, qword [rsp + 0x30]
jmp 0x14001a8df
inc r8
add r9, 8
cmp r8, r10
jb 0x14001a7c0
mov r13, rdi
mov qword [rsp + 0x68], r13
cmp r15d, 2
mov r14, rdi
cmove r14, rbx
mov rbx, rdi
mov rsi, qword [r14 + 8]
test rsi, rsi
je 0x14001a921
mov rdi, qword [r14 + 0x10]
nop word [rax + rax]
mov rcx, qword [rdi]
lea rdx, str.ToUseDependencies
call fcn.140056ab0
test eax, eax
je 0x14001a98d
inc rbx
add rdi, 8
cmp rbx, rsi
jb 0x14001a900
xor edi, edi
mov qword [rsp + 0x58], rdi
mov rbx, qword [rsp + 0x30]
cmp r15d, 2
mov r11, rdi
mov r8, rdi
cmove r11, rbx
mov r10, qword [r11 + 8]
test r10, r10
je 0x14001a9bc
mov r9, qword [r11 + 0x10]
lea rsi, str.Inputs
nop dword [rax]
mov rdx, qword [r9]
mov rcx, rdi
nop word [rax + rax]
movzx eax, byte [rdx + rcx]
inc rcx
cmp al, byte [rsi + rcx - 1]
jne 0x14001a9b0
cmp rcx, 7
jne 0x14001a960
mov rax, qword [r11 + 0x18]
mov rax, qword [rax + r8*8]
test rax, rax
je 0x14001a9bc
cmp dword [rax], 3
cmovne rax, rdi
mov qword [rbp - 0x60], rax
jmp 0x14001a9c0
mov rax, qword [r14 + 0x18]
mov rax, qword [rax + rbx*8]
test rax, rax
je 0x14001a91f
cmp dword [rax], 3
mov edi, 0
cmovne rax, rdi
mov qword [rsp + 0x58], rax
jmp 0x14001a926
inc r8
add r9, 8
cmp r8, r10
jb 0x14001a950
mov qword [rbp - 0x60], rdi
cmp r15d, 2
mov r14, rdi
cmove r14, rbx
mov rbx, rdi
mov rsi, qword [r14 + 8]
test rsi, rsi
je 0x14001aa01
mov rdi, qword [r14 + 0x10]
nop dword [rax + rax]
mov rcx, qword [rdi]
lea rdx, str.FilesThatMightBeIncluded
call fcn.140056ab0
test eax, eax
je 0x14001aa6d
inc rbx
add rdi, 8
cmp rbx, rsi
jb 0x14001a9e0
xor edi, edi
mov qword [rbp + 0xe8], rdi
mov rbx, qword [rsp + 0x30]
cmp r15d, 2
mov r11, rdi
mov r8, rdi
cmove r11, rbx
mov r10, qword [r11 + 8]
test r10, r10
je 0x14001aa9e
mov r9, qword [r11 + 0x10]
lea rsi, str.Outputs
nop
mov rdx, qword [r9]
mov rcx, rdi
nop word [rax + rax]
movzx eax, byte [rdx + rcx]
inc rcx
cmp al, byte [rsi + rcx - 1]
jne 0x14001aa92
cmp rcx, 8
jne 0x14001aa40
mov rax, qword [r11 + 0x18]
mov rax, qword [rax + r8*8]
test rax, rax
je 0x14001aa9e
cmp dword [rax], 3
cmovne rax, rdi
mov qword [rbp - 0x68], rax
jmp 0x14001aaa2
mov rax, qword [r14 + 0x18]
mov rax, qword [rax + rbx*8]
test rax, rax
je 0x14001a9ff
cmp dword [rax], 3
mov edi, 0
cmovne rax, rdi
mov qword [rbp + 0xe8], rax
jmp 0x14001aa08
inc r8
add r9, 8
cmp r8, r10
jb 0x14001aa30
mov qword [rbp - 0x68], rdi
cmp r15d, 2
mov r14, rdi
cmove r14, rbx
mov rbx, rdi
mov rsi, qword [r14 + 8]
test rsi, rsi
je 0x14001aae5
mov rdi, qword [r14 + 0x10]
nop dword [rax]
mov rcx, qword [rdi]
lea rdx, str.TargetDirectories
call fcn.140056ab0
test eax, eax
je 0x14001ac08
inc rbx
add rdi, 8
cmp rbx, rsi
jb 0x14001aac0
xor edi, edi
mov qword [rbp + 0xf0], rdi
cmp r15d, 2
mov r14, rdi
mov rbx, rdi
cmove r14, qword [rsp + 0x30]
mov rsi, qword [r14 + 8]
test rsi, rsi
je 0x14001ab35
mov rdi, qword [r14 + 0x10]
nop dword [rax]
mov rcx, qword [rdi]
lea rdx, str.PristineOutputFiles
call fcn.140056ab0
test eax, eax
je 0x14001ac31
inc rbx
add rdi, 8
cmp rbx, rsi
jb 0x14001ab10
xor edi, edi
mov qword [rbp - 0x10], rdi
cmp r15d, 2
mov r14, rdi
mov rbx, rdi
cmove r14, qword [rsp + 0x30]
mov rsi, qword [r14 + 8]
test rsi, rsi
je 0x14001ab85
mov rdi, qword [r14 + 0x10]
nop word [rax + rax]
mov rcx, qword [rdi]
lea rdx, str.AuxOutputs
call fcn.140056ab0
test eax, eax
je 0x14001ac57
inc rbx
add rdi, 8
cmp rbx, rsi
jb 0x14001ab60
xor edi, edi
mov qword [rbp - 8], rdi
mov rbx, qword [rsp + 0x30]
cmp r15d, 2
mov r11, rdi
mov r8, rdi
cmove r11, rbx
mov r10, qword [r11 + 8]
test r10, r10
je 0x14001ac8d
mov r9, qword [r11 + 0x10]
lea rsi, [0x14008a14c]
nop dword [rax]
nop dword [rax + rax]
mov rdx, qword [r9]
mov rcx, rdi
nop word [rax + rax]
movzx eax, byte [rdx + rcx]
inc rcx
cmp al, byte [rsi + rcx - 1]
jne 0x14001ac7d
cmp rcx, 4
jne 0x14001abd0
mov rax, qword [r11 + 0x18]
mov rcx, qword [rax + r8*8]
test rcx, rcx
je 0x14001ac8d
cmp dword [rcx], 3
cmovne rcx, rdi
mov qword [rbp + 0x28], rcx
jmp 0x14001ac91
mov rax, qword [r14 + 0x18]
mov rax, qword [rax + rbx*8]
test rax, rax
je 0x14001aae3
cmp dword [rax], 3
mov edi, 0
cmovne rax, rdi
mov qword [rbp + 0xf0], rax
jmp 0x14001aaec
mov rax, qword [r14 + 0x18]
mov rax, qword [rax + rbx*8]
test rax, rax
je 0x14001ab33
cmp dword [rax], 3
mov edi, 0
cmovne rax, rdi
mov qword [rbp - 0x10], rax
jmp 0x14001ab39
mov rax, qword [r14 + 0x18]
mov rax, qword [rax + rbx*8]
test rax, rax
je 0x14001ab83
cmp dword [rax], 3
mov edi, 0
cmovne rax, rdi
mov qword [rbp - 8], rax
jmp 0x14001ab89
inc r8
add r9, 8
cmp r8, r10
jb 0x14001abc0
mov qword [rbp + 0x28], rdi
cmp r15d, 2
mov r14, rdi
cmove r14, rbx
mov rbx, rdi
mov rsi, qword [r14 + 8]
test rsi, rsi
je 0x14001acd3
mov rdi, qword [r14 + 0x10]
nop dword [rax]
mov rcx, qword [rdi]
lea rdx, str.ScannerIndex
call fcn.140056ab0
test eax, eax
je 0x14001af25
inc rbx
add rdi, 8
cmp rbx, rsi
jb 0x14001acb0
mov qword [rbp - 0x50], 0xffffffffffffffff
xor eax, eax
cmp r15d, 2
mov r14d, eax
mov ebx, eax
cmove r14, qword [rsp + 0x30]
mov rsi, qword [r14 + 8]
test rsi, rsi
je 0x14001ad25
mov rdi, qword [r14 + 0x10]
nop dword [rax]
mov rcx, qword [rdi]
lea rdx, str.SharedResources
call fcn.140056ab0
test eax, eax
je 0x14001af4e
inc rbx
add rdi, 8
cmp rbx, rsi
jb 0x14001ad00
xor eax, eax
mov qword [rbp + 0x70], rax
cmp r15d, 2
mov r14, rax
mov rbx, rax
cmove r14, qword [rsp + 0x30]
mov rsi, qword [r14 + 8]
test rsi, rsi
je 0x14001ad75
mov rdi, qword [r14 + 0x10]
nop word [rax + rax]
mov rcx, qword [rdi]
lea rdx, str.FrontendResponseFiles
call fcn.140056ab0
test eax, eax
je 0x14001af74
inc rbx
add rdi, 8
cmp rbx, rsi
jb 0x14001ad50
xor eax, eax
mov qword [rbp], rax
cmp r15d, 2
mov r14, rax
mov rbx, rax
cmove r14, qword [rsp + 0x30]
mov rsi, qword [r14 + 8]
test rsi, rsi
je 0x14001adc5
mov rdi, qword [r14 + 0x10]
nop word [rax + rax]
mov rcx, qword [rdi]
lea rdx, str.AllowedOutputSubstrings
call fcn.140056ab0
test eax, eax
je 0x14001af9c
inc rbx
add rdi, 8
cmp rbx, rsi
jb 0x14001ada0
xor eax, eax
mov qword [rbp + 8], rax
cmp r15d, 2
mov r14, rax
mov rbx, rax
cmove r14, qword [rsp + 0x30]
mov rsi, qword [r14 + 8]
test rsi, rsi
je 0x14001ae15
mov rdi, qword [r14 + 0x10]
nop word [rax + rax]
mov rcx, qword [rdi]
lea rdx, str.ConcurrencyPools
call fcn.140056ab0
test eax, eax
je 0x14001afc4
inc rbx
add rdi, 8
cmp rbx, rsi
jb 0x14001adf0
xor eax, eax
mov qword [rbp - 0x58], rax
cmp r15d, 2
mov r14, rax
mov rdi, rax
cmove r14, qword [rsp + 0x30]
mov rsi, qword [r14 + 8]
test rsi, rsi
je 0x14001ae65
mov rbx, qword [r14 + 0x10]
nop word [rax + rax]
mov rcx, qword [rbx]
lea rdx, str.CachingInputIgnoreList
call fcn.140056ab0
test eax, eax
je 0x14001afec
inc rdi
add rbx, 8
cmp rdi, rsi
jb 0x14001ae40
xor eax, eax
mov qword [rbp + 0xa8], rax
cmp r15d, 2
mov r14, rax
mov rdi, rax
cmove r14, qword [rsp + 0x30]
mov rsi, qword [r14 + 8]
test rsi, rsi
je 0x14001aeb3
mov rbx, qword [r14 + 0x10]
nop dword [rax]
mov rcx, qword [rbx]
lea rdx, str.PayloadOffset
call fcn.140056ab0
test eax, eax
je 0x14001b017
inc rdi
add rbx, 8
cmp rdi, rsi
jb 0x14001ae90
mov r15, 0xffffffffffffffff
mov rax, qword [rsp + 0x30]
xor ecx, ecx
mov r14d, ecx
mov edi, ecx
cmp dword [rax], 2
cmove r14, rax
mov rsi, qword [r14 + 8]
test rsi, rsi
je 0x14001af03
mov rbx, qword [r14 + 0x10]
nop word [rax + rax]
mov rcx, qword [rbx]
lea rdx, str.PayloadLength
call fcn.140056ab0
test eax, eax
je 0x14001b03c
inc rdi
add rbx, 8
cmp rdi, rsi
jb 0x14001aee0
mov rdi, 0xffffffffffffffff
cmp r15, 0xffffffffffffffff
je 0x14001b061
cmp rdi, 0xffffffffffffffff
je 0x14001b061
mov dl, 1
jmp 0x14001b063
mov rax, qword [r14 + 0x18]
mov rcx, qword [rax + rbx*8]
test rcx, rcx
je 0x14001acd3
cmp dword [rcx], 5
jne 0x14001acd3
cvttsd2si rax, qword [rcx + 8]
mov qword [rbp - 0x50], rax
jmp 0x14001acdb
mov rax, qword [r14 + 0x18]
mov rcx, qword [rax + rbx*8]
test rcx, rcx
je 0x14001ad23
cmp dword [rcx], 3
mov eax, 0
cmovne rcx, rax
mov qword [rbp + 0x70], rcx
jmp 0x14001ad29
mov rax, qword [r14 + 0x18]
mov rax, qword [rax + rbx*8]
test rax, rax
je 0x14001ad73
cmp dword [rax], 3
mov edi, 0
cmovne rax, rdi
mov qword [rbp], rax
xor eax, eax
jmp 0x14001ad79
mov rax, qword [r14 + 0x18]
mov rax, qword [rax + rbx*8]
test rax, rax
je 0x14001adc3
cmp dword [rax], 3
mov edi, 0
cmovne rax, rdi
mov qword [rbp + 8], rax
xor eax, eax
jmp 0x14001adc9
mov rax, qword [r14 + 0x18]
mov rax, qword [rax + rbx*8]
test rax, rax
je 0x14001ae13
cmp dword [rax], 3
mov edi, 0
cmovne rax, rdi
mov qword [rbp - 0x58], rax
xor eax, eax
jmp 0x14001ae19
mov rax, qword [r14 + 0x18]
mov rax, qword [rax + rdi*8]
test rax, rax
je 0x14001ae63
cmp dword [rax], 3
mov edi, 0
cmovne rax, rdi
mov qword [rbp + 0xa8], rax
xor eax, eax
jmp 0x14001ae6c
mov rax, qword [r14 + 0x18]
mov rcx, qword [rax + rdi*8]
test rcx, rcx
je 0x14001aeb3
cmp dword [rcx], 5
jne 0x14001aeb3
cvttsd2si r15, qword [rcx + 8]
jmp 0x14001aeba
mov rax, qword [r14 + 0x18]
mov rcx, qword [rax + rdi*8]
test rcx, rcx
je 0x14001af03
cmp dword [rcx], 5
jne 0x14001af03
cvttsd2si rdi, qword [rcx + 8]
jmp 0x14001af0a
xor dl, dl
mov r8, qword [rsp + 0x60]
mov esi, 0
mov ecx, esi
lea eax, [r8 - 2]
test al, 0xfd
movzx eax, dl
sete cl
cmp eax, ecx
jne 0x14001c6d9
test dl, dl
je 0x14001b0c2
cmp qword [rsp + 0x70], rsi
jne 0x14001b0b0
mov rax, qword [rbp + 0x378]
test rax, rax
je 0x14001c72d
mov rdx, rax
lea rcx, [rsp + 0x70]
call fcn.14003bd00
mov r8, qword [rsp + 0x60]
mov rcx, qword [rsp + 0x78]
lea rax, [rdi + r15]
cmp rcx, rax
jb 0x14001c73a
movzx ecx, r8b
mov dword [rbp - 0x70], ecx
test r8b, r8b
je 0x14001c695
mov r14, qword [rbp + 0x320]
sub ecx, 1
je 0x14001b33e
sub ecx, 1
je 0x14001b2d3
sub ecx, 1
je 0x14001b217
cmp ecx, 1
jne 0x14001b256
test r12, r12
je 0x14001b16f
mov rsi, qword [rbp + 0x330]
lea rdx, [rbp + 0x200]
mov rcx, r14
mov eax, dword [rsi]
mov dword [rbp + 0x120], eax
mov rax, qword [rsi + 0x20]
mov qword [rbp + 0x128], rax
movaps xmm0, xmmword [rbp + 0x120]
movdqa xmmword [rbp + 0x200], xmm0
call fcn.140007950
mov rbx, 0xffffffffffffffff
cmp byte [r12 + rbx + 1], 0
lea rbx, [rbx + 1]
jne 0x14001b141
mov rdx, qword [rsi + 0x10]
lea rcx, [rsi + 0x18]
lea r8, [rbx + 1]
call fcn.140007ed0
lea r8, [rbx + 1]
mov rdx, r12
mov rcx, rax
call fcn.14004eca0
jmp 0x14001b184
mov rdx, qword [r14 + 0x10]
lea rcx, [r14 + 0x18]
mov r8d, 4
call fcn.140007ed0
mov dword [rax], esi
mov rdx, qword [r14 + 0x10]
lea rcx, [r14 + 0x18]
mov rsi, qword [rbp + 0x338]
mov r8d, 4
call fcn.140007ed0
test rsi, rsi
je 0x14001b337
mov dword [rax], edi
lea rdx, [rbp + 0x210]
mov eax, dword [rsi]
mov dword [rbp + 0x130], eax
mov rax, qword [rsi + 0x20]
mov qword [rbp + 0x138], rax
movaps xmm0, xmmword [rbp + 0x130]
movdqa xmmword [rbp + 0x210], xmm0
mov rcx, r14
call fcn.140007950
mov rdx, qword [rsi + 0x10]
lea rcx, [rsi + 0x18]
mov r8, rdi
call fcn.140007ed0
mov rdx, qword [rsp + 0x70]
mov r8, rdi
add rdx, r15
mov rcx, rax
call fcn.14004eca0
mov rdx, qword [rsi + 0x10]
lea rcx, [rsi + 0x18]
mov r8d, 1
call fcn.140007ed0
xor esi, esi
mov byte [rax], 0
jmp 0x14001b256
mov rdx, qword [r14 + 0x10]
lea rcx, [r14 + 0x18]
mov r8d, 4
call fcn.140007ed0
mov dword [rax], esi
mov rdx, qword [r14 + 0x10]
lea rcx, [r14 + 0x18]
mov r8d, 4
call fcn.140007ed0
mov dword [rax], esi
lea rcx, [r14 + 0x18]
mov rdx, qword [r14 + 0x10]
mov r8d, 4
call fcn.140007ed0
mov dword [rax], esi
mov rdi, qword [rsp + 0x50]
test rdi, rdi
je 0x14001b3c3
mov rsi, qword [rbp + 0x330]
lea rdx, [rbp + 0x240]
mov rcx, r14
mov eax, dword [rsi]
mov dword [rbp + 0x160], eax
mov rax, qword [rsi + 0x20]
mov qword [rbp + 0x168], rax
movaps xmm0, xmmword [rbp + 0x160]
movdqa xmmword [rbp + 0x240], xmm0
call fcn.140007950
mov rbx, 0xffffffffffffffff
cmp byte [rdi + rbx + 1], 0
lea rbx, [rbx + 1]
jne 0x14001b2a3
mov rdx, qword [rsi + 0x10]
lea rcx, [rsi + 0x18]
lea r8, [rbx + 1]
call fcn.140007ed0
lea r8, [rbx + 1]
mov rdx, rdi
mov rcx, rax
call fcn.14004eca0
jmp 0x14001b3df
mov rdx, qword [r14 + 0x10]
lea rcx, [r14 + 0x18]
mov r8d, 4
call fcn.140007ed0
mov r8d, 4
lea rcx, [r14 + 0x18]
mov dword [rax], esi
mov rdx, qword [r14 + 0x10]
mov rsi, qword [rbp + 0x338]
call fcn.140007ed0
test rsi, rsi
je 0x14001b337
mov dword [rax], edi
lea rdx, [rbp + 0x220]
mov eax, dword [rsi]
mov dword [rbp + 0x140], eax
mov rax, qword [rsi + 0x20]
mov qword [rbp + 0x148], rax
movaps xmm0, xmmword [rbp + 0x140]
movdqa xmmword [rbp + 0x220], xmm0
jmp 0x14001b1d2
xor esi, esi
jmp 0x14001b23f
test r12, r12
je 0x14001b217
mov rsi, qword [rbp + 0x330]
lea rdx, [rbp + 0x230]
mov rcx, r14
mov eax, dword [rsi]
mov dword [rbp + 0x150], eax
mov rax, qword [rsi + 0x20]
mov qword [rbp + 0x158], rax
movaps xmm0, xmmword [rbp + 0x150]
movdqa xmmword [rbp + 0x230], xmm0
call fcn.140007950
mov rbx, 0xffffffffffffffff
nop word [rax + rax]
cmp byte [r12 + rbx + 1], 0
lea rbx, [rbx + 1]
jne 0x14001b390
mov rdx, qword [rsi + 0x10]
lea rcx, [rsi + 0x18]
lea r8, [rbx + 1]
call fcn.140007ed0
lea r8, [rbx + 1]
mov rdx, r12
mov rcx, rax
call fcn.14004eca0
xor esi, esi
jmp 0x14001b22c
mov rdx, qword [r14 + 0x10]
lea rcx, [r14 + 0x18]
mov r8d, 4
call fcn.140007ed0
mov dword [rax], esi
mov rsi, qword [rbp + 0x330]
mov rdi, qword [rsp + 0x38]
test rdi, rdi
je 0x14001b450
mov eax, dword [rsi]
lea rdx, [rbp + 0x2c0]
mov dword [rbp + 0x170], eax
mov rcx, r14
mov rax, qword [rsi + 0x20]
mov qword [rbp + 0x178], rax
movaps xmm0, xmmword [rbp + 0x170]
movdqa xmmword [rbp + 0x2c0], xmm0
call fcn.140007950
mov rbx, 0xffffffffffffffff
cmp byte [rdi + rbx + 1], 0
lea rbx, [rbx + 1]
jne 0x14001b421
mov rdx, qword [rsi + 0x10]
lea rcx, [rsi + 0x18]
lea r8, [rbx + 1]
call fcn.140007ed0
lea r8, [rbx + 1]
mov rdx, rdi
mov rcx, rax
call fcn.14004eca0
xor ebx, ebx
jmp 0x14001b467
mov rdx, qword [r14 + 0x10]
lea rcx, [r14 + 0x18]
mov r8d, 4
call fcn.140007ed0
xor ebx, ebx
mov dword [rax], ebx
mov rdi, qword [rsp + 0x40]
test rdi, rdi
je 0x14001b4df
mov eax, dword [rsi]
lea rdx, [rbp + 0x250]
mov dword [rbp + 0x180], eax
mov rcx, r14
mov rax, qword [rsi + 0x20]
mov qword [rbp + 0x188], rax
movaps xmm0, xmmword [rbp + 0x180]
movdqa xmmword [rbp + 0x250], xmm0
call fcn.140007950
mov rbx, 0xffffffffffffffff
nop dword [rax]
cmp byte [rdi + rbx + 1], 0
lea rbx, [rbx + 1]
jne 0x14001b4b0
mov rdx, qword [rsi + 0x10]
lea rcx, [rsi + 0x18]
lea r8, [rbx + 1]
call fcn.140007ed0
lea r8, [rbx + 1]
mov rdx, rdi
mov rcx, rax
call fcn.14004eca0
xor ebx, ebx
jmp 0x14001b4f4
mov rdx, qword [r14 + 0x10]
lea rcx, [r14 + 0x18]
mov r8d, 4
call fcn.140007ed0
mov dword [rax], ebx
test r13, r13
je 0x14001b78a
mov r15, qword [rbp + 0x328]
mov rax, qword [r15 + 0x20]
lea rbx, [rax + 3]
and rbx, 0xfffffffffffffffc
sub rbx, rax
je 0x14001b53c
nop word [rax + rax]
mov rdx, qword [r15 + 0x10]
lea rcx, [r15 + 0x18]
mov r8d, 1
call fcn.140007ed0
mov byte [rax], 0xfe
sub rbx, 1
jne 0x14001b520
mov ebx, dword [r13 + 8]
lea rsi, [r14 + 0x10]
mov rdx, qword [rsi]
add r14, 0x18
mov rcx, r14
mov qword [rsp + 0x40], rsi
mov r8d, 4
mov qword [rbp + 0x18], rsi
mov r12, rsi
mov qword [rbp + 0x30], rsi
mov qword [rbp + 0x40], rsi
mov r13, r14
mov qword [rbp + 0x50], rsi
mov qword [rbp + 0x60], rsi
mov qword [rbp + 0x78], rsi
mov qword [rbp + 0x88], rsi
mov qword [rbp + 0x98], rsi
mov qword [rbp + 0xb0], rsi
mov qword [rbp + 0xc0], rsi
mov qword [rbp + 0xd0], rsi
mov qword [rbp + 0x10], r14
mov qword [rsp + 0x38], r14
mov qword [rbp + 0x20], r14
mov qword [rbp + 0x38], r14
mov qword [rbp + 0x48], r14
mov qword [rbp + 0x58], r14
mov qword [rbp + 0x68], r14
mov qword [rbp + 0x80], r14
mov qword [rbp + 0x90], r14
mov qword [rbp + 0xa0], r14
mov qword [rbp + 0xb8], r14
mov qword [rbp + 0xc8], r14
mov qword [rbp + 0xd8], r14
call fcn.140007ed0
mov rcx, qword [rbp + 0x320]
lea rdx, [rbp + 0x260]
mov dword [rax], ebx
mov eax, dword [r15]
mov dword [rbp + 0x190], eax
mov rax, qword [r15 + 0x20]
mov qword [rbp + 0x198], rax
movaps xmm0, xmmword [rbp + 0x190]
movdqa xmmword [rbp + 0x260], xmm0
call fcn.140007950
mov rax, qword [rsp + 0x68]
xor ebx, ebx
mov edi, ebx
mov r15, qword [rax + 8]
test r15, r15
je 0x14001b67e
mov rax, qword [rax + 0x10]
mov rcx, qword [rax + rdi*8]
cmp dword [rcx], 5
jne 0x14001c750
cvttsd2si eax, qword [rcx + 8]
mov r8d, 4
movsxd rcx, eax
mov rax, qword [rbp + 0x368]
mov ebx, dword [rax + rcx*4]
mov rax, qword [rbp + 0x328]
mov rdx, qword [rax + 0x10]
lea rcx, [rax + 0x18]
call fcn.140007ed0
inc rdi
mov dword [rax], ebx
mov rax, qword [rsp + 0x68]
cmp rdi, r15
jb 0x14001b630
xor ebx, ebx
mov r15, rsi
cmp qword [rsp + 0x58], 0
je 0x14001b84e
mov rax, qword [rbp + 0x328]
mov rax, qword [rax + 0x20]
lea rbx, [rax + 3]
and rbx, 0xfffffffffffffffc
sub rbx, rax
je 0x14001b6d1
mov r12, qword [rbp + 0x328]
nop dword [rax]
mov rdx, qword [r12 + 0x10]
lea rcx, [r12 + 0x18]
mov r8d, 1
call fcn.140007ed0
mov byte [rax], 0xfe
sub rbx, 1
jne 0x14001b6b0
mov r12, rsi
mov rax, qword [rsp + 0x58]
mov r8d, 4
mov rdx, qword [rsi]
mov rcx, r14
mov ebx, dword [rax + 8]
call fcn.140007ed0
mov r14, qword [rbp + 0x328]
lea rdx, [rbp + 0x270]
mov rcx, qword [rbp + 0x320]
mov dword [rax], ebx
mov eax, dword [r14]
mov dword [rbp + 0x1a0], eax
mov rax, qword [r14 + 0x20]
mov qword [rbp + 0x1a8], rax
movaps xmm0, xmmword [rbp + 0x1a0]
movdqa xmmword [rbp + 0x270], xmm0
call fcn.140007950
mov rax, qword [rsp + 0x58]
xor edi, edi
mov rsi, qword [rax + 8]
test rsi, rsi
je 0x14001b87b
nop dword [rax]
mov rax, qword [rax + 0x10]
mov rcx, qword [rax + rdi*8]
cmp dword [rcx], 5
jne 0x14001c762
cvttsd2si eax, qword [rcx + 8]
mov rdx, qword [r14 + 0x10]
mov r8d, 4
movsxd rcx, eax
mov rax, qword [rbp + 0x368]
mov ebx, dword [rax + rcx*4]
lea rcx, [r14 + 0x18]
call fcn.140007ed0
inc rdi
mov dword [rax], ebx
mov rax, qword [rsp + 0x58]
cmp rdi, rsi
jb 0x14001b740
jmp 0x14001b87b
mov rdx, qword [r14 + 0x10]
lea rsi, [r14 + 0x10]
add r14, 0x18
mov qword [rsp + 0x40], rsi
mov rcx, r14
mov qword [rbp + 0x18], rsi
mov r8d, 4
mov qword [rbp + 0x30], rsi
mov r12, rsi
mov qword [rbp + 0x40], rsi
mov r15, rsi
mov qword [rbp + 0x50], rsi
mov qword [rbp + 0x60], rsi
mov r13, r14
mov qword [rbp + 0x78], rsi
mov qword [rbp + 0x88], rsi
mov qword [rbp + 0x98], rsi
mov qword [rbp + 0xb0], rsi
mov qword [rbp + 0xc0], rsi
mov qword [rbp + 0xd0], rsi
mov qword [rbp + 0x10], r14
mov qword [rsp + 0x38], r14
mov qword [rbp + 0x20], r14
mov qword [rbp + 0x38], r14
mov qword [rbp + 0x48], r14
mov qword [rbp + 0x58], r14
mov qword [rbp + 0x68], r14
mov qword [rbp + 0x80], r14
mov qword [rbp + 0x90], r14
mov qword [rbp + 0xa0], r14
mov qword [rbp + 0xb8], r14
mov qword [rbp + 0xc8], r14
mov qword [rbp + 0xd8], r14
call fcn.140007ed0
mov r8d, 4
mov rcx, r14
mov dword [rax], ebx
mov rdx, qword [rsi]
call fcn.140007ed0
mov dword [rax], ebx
jmp 0x14001b681
mov rdx, qword [rsi]
mov r8d, 4
mov rcx, r14
call fcn.140007ed0
mov r8d, 4
mov rcx, r14
mov dword [rax], ebx
mov rdx, qword [rsi]
call fcn.140007ed0
mov r14, qword [rbp + 0x328]
mov dword [rax], ebx
cmp byte [rsp + 0x60], 3
mov rbx, qword [rbp - 0x68]
mov r9, qword [rbp - 0x60]
jne 0x14001b898
mov rax, qword [rbx + 8]
cmp qword [r9 + 8], rax
jne 0x14001c362
mov rdi, qword [rbp + 0x330]
mov rdx, r14
mov rsi, qword [rbp + 0x320]
mov r8, rdi
mov rcx, rsi
call fcn.140019770
mov r9, qword [rbp + 0xe8]
mov r8, rdi
mov rdx, r14
mov rcx, rsi
call fcn.140019770
mov r9, rbx
mov r8, rdi
mov rdx, r14
mov rcx, rsi
call fcn.140019770
mov r9, qword [rbp + 0xf0]
mov r8, rdi
mov rdx, r14
mov rcx, rsi
call fcn.140019770
mov r9, qword [rbp - 0x10]
mov r8, rdi
mov rdx, r14
mov rcx, rsi
call fcn.140019770
mov r9, qword [rbp - 8]
mov r8, rdi
mov rdx, r14
mov rcx, rsi
call fcn.140019770
mov r9, qword [rbp]
mov r8, rdi
mov rdx, r14
mov rcx, rsi
call fcn.140019770
mov r14, qword [rbp + 8]
mov r8d, 4
mov rdx, qword [r12]
mov rcx, r13
test r14, r14
je 0x14001bd09
movsxd rsi, dword [r14 + 8]
call fcn.140007ed0
mov r13, qword [rbp + 0x328]
mov dword [rax], esi
mov rax, qword [r13 + 0x20]
lea rbx, [rax + 3]
and rbx, 0xfffffffffffffffc
sub rbx, rax
je 0x14001b97e
mov rdx, qword [r13 + 0x10]
lea rcx, [r13 + 0x18]
mov r8d, 1
call fcn.140007ed0
mov byte [rax], 0xfe
sub rbx, 1
jne 0x14001b962
mov eax, dword [r13]
lea rdx, [rbp + 0x280]
mov rcx, qword [rbp + 0x320]
mov dword [rbp + 0x1b0], eax
mov rax, qword [r13 + 0x20]
mov qword [rbp + 0x1b8], rax
movaps xmm0, xmmword [rbp + 0x1b0]
movdqa xmmword [rbp + 0x280], xmm0
call fcn.140007950
xor edx, edx
mov rdi, rsi
mov ebx, edx
test esi, esi
je 0x14001ba07
mov rsi, qword [rbp + 0x330]
nop word [rax + rax]
mov rax, qword [r14 + 0x10]
mov r8, rdx
mov r9, qword [rbp + 0x350]
mov rdx, rsi
mov rcx, qword [rax + rbx*8]
cmp dword [rcx], 4
cmove r8, rcx
mov rcx, r13
mov r8, qword [r8 + 8]
call fcn.140019960
inc rbx
mov edx, 0
cmp rbx, rdi
jne 0x14001b9d0
xor ebx, ebx
mov rsi, qword [rbp + 0x320]
mov rdx, qword [rsp + 0x40]
mov r8d, 4
mov rdi, qword [rbp - 0x58]
mov rcx, qword [rsp + 0x38]
mov rdx, qword [rdx]
test rdi, rdi
je 0x14001bd54
movsxd rbx, dword [rdi + 8]
call fcn.140007ed0
lea rdx, [rbp + 0x290]
mov rcx, rsi
mov dword [rax], ebx
mov eax, dword [r13]
mov dword [rbp + 0x1e0], eax
mov rax, qword [r13 + 0x20]
mov qword [rbp + 0x1e8], rax
movaps xmm0, xmmword [rbp + 0x1e0]
movdqa xmmword [rbp + 0x290], xmm0
call fcn.140007950
xor edx, edx
mov r12, rbx
mov r15d, edx
test ebx, ebx
je 0x14001bbc7
nop dword [rax]
mov rax, qword [rdi + 0x10]
mov rcx, qword [rax + r15*8]
mov rax, rdx
cmp dword [rcx], 4
cmove rax, rcx
mov r14, qword [rax + 8]
mov eax, 0x1505
movzx edx, byte [r14]
lea rcx, [r14 + 1]
test edx, edx
je 0x14001bac1
nop word [rax + rax]
imul eax, eax, 0x21
lea rcx, [rcx + 1]
add eax, edx
movzx edx, byte [rcx - 1]
test edx, edx
jne 0x14001bab0
test eax, eax
mov edi, 1
cmovne edi, eax
mov eax, dword [rbp - 0x30]
test eax, eax
je 0x14001bb1c
lea esi, [rax - 1]
mov rax, qword [rbp - 0x40]
mov ebx, esi
and ebx, edi
mov ecx, ebx
mov eax, dword [rax + rbx*4]
test eax, eax
je 0x14001bb1c
cmp edi, eax
jne 0x14001bb0b
mov rax, qword [rbp - 0x38]
mov rcx, qword [rax + rcx*8]
cmp rcx, r14
je 0x14001bd30
mov rdx, r14
call fcn.140056ab0
test eax, eax
je 0x14001bd30
mov rax, qword [rbp - 0x40]
inc ebx
and ebx, esi
mov ecx, ebx
mov eax, dword [rax + rbx*4]
test eax, eax
jne 0x14001bae6
mov rcx, qword [rbp + 0x370]
mov ebx, dword [rcx]
lea eax, [rbx + 1]
mov dword [rcx], eax
mov eax, dword [rbp + 0x340]
mov ecx, dword [rbp - 0x2c]
inc eax
mov edx, eax
mov r9d, eax
shl rdx, 8
shr rdx, cl
mov dword [rbp + 0x340], eax
cmp rdx, 0x50
jbe 0x14001bb5d
lea rcx, [rbp - 0x40]
call fcn.1400160d0
mov r9d, dword [rbp + 0x340]
mov edx, dword [rbp - 0x30]
mov r8, qword [rbp - 0x40]
dec edx
mov ecx, edx
and ecx, edi
cmp dword [r8 + rcx*4], 0
je 0x14001bb7c
inc ecx
and ecx, edx
cmp dword [r8 + rcx*4], 0
jne 0x14001bb71
mov rdx, qword [rbp - 0x38]
mov dword [r8 + rcx*4], edi
movsxd rax, ecx
mov dword [rbp - 0x28], r9d
mov qword [rdx + rcx*8], r14
mov rcx, qword [rbp - 0x18]
mov dword [rcx + rax*4], ebx
mov rax, qword [rbp + 0x328]
lea rcx, [r13 + 0x18]
mov r8d, 4
mov rdx, qword [rax + 0x10]
call fcn.140007ed0
mov rdi, qword [rbp - 0x58]
inc r15
mov edx, 0
mov dword [rax], ebx
cmp r15, r12
jne 0x14001ba80
xor ebx, ebx
mov r14, qword [rbp + 0x28]
test r14, r14
je 0x14001be53
cmp qword [r14 + 8], 0
jbe 0x14001be53
mov r13, qword [rbp + 0x328]
mov rax, qword [r13 + 0x20]
lea rbx, [rax + 3]
and rbx, 0xfffffffffffffffc
sub rbx, rax
je 0x14001bc1c
nop dword [rax]
mov rdx, qword [r13 + 0x10]
lea rcx, [r13 + 0x18]
mov r8d, 1
call fcn.140007ed0
mov byte [rax], 0xfe
sub rbx, 1
jne 0x14001bc00
mov rdx, qword [rbp + 0x30]
mov r8d, 4
mov rcx, qword [rbp + 0x38]
mov ebx, dword [r14 + 8]
mov rdx, qword [rdx]
call fcn.140007ed0
mov r15, qword [rbp + 0x320]
lea rdx, [rbp + 0x2a0]
mov rcx, r15
mov dword [rax], ebx
mov eax, dword [r13]
mov dword [rbp + 0x1c0], eax
mov rax, qword [r13 + 0x20]
mov qword [rbp + 0x1c8], rax
movaps xmm0, xmmword [rbp + 0x1c0]
movdqa xmmword [rbp + 0x2a0], xmm0
call fcn.140007950
mov rsi, qword [r14 + 8]
xor ebx, ebx
mov r12, qword [rbp + 0x330]
mov edi, ebx
test rsi, rsi
je 0x14001be98
nop word [rax + rax]
mov rax, qword [r14 + 0x10]
mov r11, qword [rax + rdi*8]
cmp dword [r11], 2
jne 0x14001c3ac
mov r10, qword [r11 + 8]
mov r9, rbx
test r10, r10
je 0x14001bd88
mov r8, qword [r11 + 0x10]
mov rdx, qword [r8]
mov rcx, rbx
nop dword [rax]
movzx eax, byte [rdx + rcx]
lea rbx, [0x14008a2a4]
inc rcx
cmp al, byte [rbx + rcx - 1]
mov ebx, 0
jne 0x14001bd78
cmp rcx, 4
jne 0x14001bcc0
mov rax, qword [r11 + 0x18]
mov rcx, qword [rax + r9*8]
test rcx, rcx
je 0x14001bd88
cmp dword [rcx], 4
mov r9, qword [r11 + 8]
je 0x14001bdea
mov r10d, ebx
jmp 0x14001bd93
call fcn.140007ed0
mov rcx, qword [rbp + 0x10]
xor ebx, ebx
mov dword [rax], ebx
mov rdx, qword [r15]
lea r8d, [rbx + 4]
call fcn.140007ed0
mov r13, qword [rbp + 0x328]
mov dword [rax], ebx
jmp 0x14001ba0e
cmp ebx, 0xffffffff
je 0x14001bb1c
mov rcx, qword [rbp - 0x18]
movsxd rax, ebx
lea rcx, [rcx + rax*4]
test rcx, rcx
je 0x14001bb1c
mov ebx, dword [rcx]
jmp 0x14001bb96
call fcn.140007ed0
mov rdx, qword [rbp + 0x18]
mov r8d, 4
mov rcx, qword [rbp + 0x20]
mov dword [rax], ebx
mov rdx, qword [rdx]
call fcn.140007ed0
mov dword [rax], ebx
jmp 0x14001bbc9
inc r9
add r8, 8
cmp r9, r10
jb 0x14001bcb6
mov r9, r10
mov r10, rbx
test r9, r9
je 0x14001bdfe
mov r8, qword [r11 + 0x10]
nop word [rax + rax]
mov rdx, qword [r8]
xor eax, eax
mov ecx, eax
nop word [rax + rax]
movzx eax, byte [rdx + rcx]
lea r15, str.Value
inc rcx
cmp al, byte [r15 + rcx - 1]
mov r15, qword [rbp + 0x320]
jne 0x14001bdf0
cmp rcx, 6
jne 0x14001bdb0
mov rax, qword [r11 + 0x18]
mov rbx, qword [rax + rbx*8]
test rbx, rbx
je 0x14001bdfc
cmp dword [rbx], 4
je 0x14001be4d
xor eax, eax
mov ebx, eax
jmp 0x14001bdfe
mov r10, qword [rcx + 8]
jmp 0x14001bd93
inc rbx
add r8, 8
cmp rbx, r9
jb 0x14001bda0
xor ebx, ebx
test r10, r10
je 0x14001c3ac
test rbx, rbx
je 0x14001c3ac
mov r9, qword [rbp + 0x350]
mov r8, r10
mov rdx, r12
mov rcx, r13
call fcn.140019960
mov r9, qword [rbp + 0x350]
mov r8, rbx
mov rdx, r12
mov rcx, r13
call fcn.140019960
inc rdi
mov ebx, 0
cmp rdi, rsi
jb 0x14001bc90
jmp 0x14001be98
mov rbx, qword [rbx + 8]
jmp 0x14001bdfe
mov rdx, qword [rbp + 0x40]
mov r8d, 4
mov rcx, qword [rbp + 0x48]
mov rdx, qword [rdx]
call fcn.140007ed0
mov rdx, qword [rbp + 0x50]
mov r8d, 4
mov rcx, qword [rbp + 0x58]
mov dword [rax], ebx
mov rdx, qword [rdx]
call fcn.140007ed0
mov r13, qword [rbp + 0x328]
mov r15, qword [rbp + 0x320]
mov r12, qword [rbp + 0x330]
mov dword [rax], ebx
mov rdx, qword [rbp + 0x60]
mov r8d, 4
mov rcx, qword [rbp + 0x68]
mov rdx, qword [rdx]
call fcn.140007ed0
mov r14, qword [rbp + 0x70]
mov rcx, qword [rbp - 0x50]
mov dword [rax], ecx
test r14, r14
je 0x14001bf95
cmp qword [r14 + 8], 0
jbe 0x14001bf95
mov rax, qword [r13 + 0x20]
lea rbx, [rax + 3]
and rbx, 0xfffffffffffffffc
sub rbx, rax
je 0x14001befc
nop dword [rax]
mov rdx, qword [r13 + 0x10]
lea rcx, [r13 + 0x18]
mov r8d, 1
call fcn.140007ed0
mov byte [rax], 0xfe
sub rbx, 1
jne 0x14001bee0
mov rdx, qword [rbp + 0x78]
mov r8d, 4
mov rcx, qword [rbp + 0x80]
mov ebx, dword [r14 + 8]
mov rdx, qword [rdx]
call fcn.140007ed0
lea rdx, [rbp + 0x2b0]
mov rcx, r15
mov dword [rax], ebx
mov eax, dword [r13]
mov dword [rbp + 0x1d0], eax
mov rax, qword [r13 + 0x20]
mov qword [rbp + 0x1d8], rax
movaps xmm0, xmmword [rbp + 0x1d0]
movdqa xmmword [rbp + 0x2b0], xmm0
call fcn.140007950
mov rsi, qword [r14 + 8]
xor eax, eax
mov edi, eax
test rsi, rsi
je 0x14001bfd1
nop dword [rax + rax]
mov rax, qword [r14 + 0x10]
mov rcx, qword [rax + rdi*8]
cmp dword [rcx], 5
jne 0x14001c4ac
cvttsd2si ebx, qword [rcx + 8]
mov rdx, qword [r13 + 0x10]
lea rcx, [r13 + 0x18]
mov r8d, 4
call fcn.140007ed0
inc rdi
mov dword [rax], ebx
cmp rdi, rsi
jb 0x14001bf60
jmp 0x14001bfd1
mov rdx, qword [rbp + 0x88]
mov r8d, 4
mov rcx, qword [rbp + 0x90]
mov rdx, qword [rdx]
call fcn.140007ed0
mov rdx, qword [rbp + 0x98]
mov r8d, 4
mov rcx, qword [rbp + 0xa0]
mov dword [rax], ebx
mov rdx, qword [rdx]
call fcn.140007ed0
mov dword [rax], ebx
mov rbx, qword [rsp + 0x30]
lea rax, [0x140019d30]
mov qword [rsp + 0x28], rax
mov r9, r12
lea rax, str.FileSignatures
mov r8, r13
mov rdx, r15
mov qword [rsp + 0x20], rax
mov rcx, rbx
call fcn.140019ad0
lea rax, [0x140019fc0]
mov r9, r12
mov qword [rsp + 0x28], rax
mov r8, r13
lea rax, str.StatSignatures
mov rdx, r15
mov rcx, rbx
mov qword [rsp + 0x20], rax
call fcn.140019ad0
mov rax, qword [rbp + 0x358]
mov r9, r12
mov qword [rsp + 0x28], rax
mov r8, r13
mov rax, qword [rbp + 0x348]
mov rdx, r15
mov rcx, rbx
mov qword [rsp + 0x20], rax
call fcn.14001a000
mov r9, qword [rbp + 0xa8]
mov r8, r12
mov rdx, r13
mov rcx, r15
call fcn.140019770
mov r15d, dword [rbx]
xor eax, eax
cmp r15d, 2
mov r14d, eax
mov r13, rbx
mov edi, eax
cmove r14, rbx
mov rsi, qword [r14 + 8]
test rsi, rsi
je 0x14001c0b3
mov rbx, qword [r14 + 0x10]
nop dword [rax + rax]
mov rcx, qword [rbx]
lea rdx, str.OverwriteOutputs
call fcn.140056ab0
test eax, eax
je 0x14001c1f8
inc rdi
add rbx, 8
cmp rdi, rsi
jb 0x14001c090
mov al, 1
mov r12d, dword [rbp - 0x70]
neg al
sbb eax, eax
and eax, 0x100
or r12d, eax
xor eax, eax
cmp r15d, 2
mov r14d, eax
mov ebx, eax
cmove r14, r13
mov rsi, qword [r14 + 8]
test rsi, rsi
je 0x14001c104
mov rdi, qword [r14 + 0x10]
mov rcx, qword [rdi]
lea rdx, str.AllowUnexpectedOutput
call fcn.140056ab0
test eax, eax
je 0x14001c21b
inc rbx
add rdi, 8
cmp rbx, rsi
jb 0x14001c0e1
xor al, al
neg al
sbb eax, eax
and eax, 0x400
or r12d, eax
xor eax, eax
cmp r15d, 2
mov r14d, eax
mov ebx, eax
cmove r14, r13
mov rsi, qword [r14 + 8]
test rsi, rsi
je 0x14001c153
mov rdi, qword [r14 + 0x10]
nop
mov rcx, qword [rdi]
lea rdx, str.AllowUnwrittenOutputFiles
call fcn.140056ab0
test eax, eax
je 0x14001c23e
inc rbx
add rdi, 8
cmp rbx, rsi
jb 0x14001c130
xor al, al
neg al
sbb eax, eax
and eax, 0x800
or r12d, eax
xor eax, eax
cmp r15d, 2
mov r14d, eax
mov ebx, eax
cmove r14, r13
mov rsi, qword [r14 + 8]
test rsi, rsi
je 0x14001c1a3
mov rdi, qword [r14 + 0x10]
nop dword [rax]
mov rcx, qword [rdi]
lea rdx, str.BanContentDigestForInputs
call fcn.140056ab0
test eax, eax
je 0x14001c261
inc rbx
add rdi, 8
cmp rbx, rsi
jb 0x14001c180
xor al, al
neg al
sbb eax, eax
and eax, 0x1000
or r12d, eax
cmp r15d, 2
jne 0x14001c2d1
mov rsi, qword [r13 + 8]
xor eax, eax
mov ebx, eax
test rsi, rsi
je 0x14001c2d1
mov rdi, qword [r13 + 0x10]
mov rcx, qword [rdi]
lea rdx, str.CachingMode
call fcn.140056ab0
test eax, eax
je 0x14001c284
inc rbx
add rdi, 8
cmp rbx, rsi
jb 0x14001c1d0
jmp 0x14001c2d1
mov rax, qword [r14 + 0x18]
mov rcx, qword [rax + rdi*8]
test rcx, rcx
je 0x14001c0b3
cmp dword [rcx], 1
jne 0x14001c0b3
movzx eax, byte [rcx + 4]
jmp 0x14001c0b5
mov rax, qword [r14 + 0x18]
mov rcx, qword [rax + rbx*8]
test rcx, rcx
je 0x14001c104
cmp dword [rcx], 1
jne 0x14001c104
movzx eax, byte [rcx + 4]
jmp 0x14001c106
mov rax, qword [r14 + 0x18]
mov rcx, qword [rax + rbx*8]
test rcx, rcx
je 0x14001c153
cmp dword [rcx], 1
jne 0x14001c153
movzx eax, byte [rcx + 4]
jmp 0x14001c155
mov rax, qword [r14 + 0x18]
mov rcx, qword [rax + rbx*8]
test rcx, rcx
je 0x14001c1a3
cmp dword [rcx], 1
jne 0x14001c1a3
movzx eax, byte [rcx + 4]
jmp 0x14001c1a5
mov rax, qword [r13 + 0x18]
mov rcx, qword [rax + rbx*8]
test rcx, rcx
je 0x14001c2d1
cmp dword [rcx], 4
jne 0x14001c2d1
mov rbx, qword [rcx + 8]
test rbx, rbx
je 0x14001c2d1
lea rdx, str.ByLeafInputs
mov rcx, rbx
call fcn.140056ab0
test eax, eax
jne 0x14001c2b9
bts r12d, 0xd
jmp 0x14001c2d1
lea rdx, str.ByDirectInputs
mov rcx, rbx
call fcn.140056ab0
test eax, eax
jne 0x14001c2d1
bts r12d, 0xe
mov rdx, qword [rbp + 0xb0]
mov r8d, 4
mov rcx, qword [rbp + 0xb8]
mov rdx, qword [rdx]
call fcn.140007ed0
mov rdx, qword [rbp + 0xc0]
mov r8d, 4
mov r14, qword [rbp + 0xe0]
mov rcx, qword [rbp + 0xc8]
mov dword [rax], r12d
mov rax, qword [rbp - 0x48]
mov rdx, qword [rdx]
mov ebx, dword [rax + r14*4]
call fcn.140007ed0
mov rdx, qword [rbp + 0xd0]
mov r8d, 4
mov rcx, qword [rbp + 0xd8]
mov dword [rax], ebx
mov rdx, qword [rdx]
call fcn.140007ed0
mov dword [rax], r14d
inc r14
mov qword [rbp + 0xe0], r14
cmp r14, qword [rbp + 0x100]
jae 0x14001c5ac
mov r13, qword [rbp + 0x310]
xor r10d, r10d
jmp 0x14001a508
lea rcx, [rsp + 0x70]
call fcn.14003bf50
mov rdx, qword [rbp + 0x358]
mov rcx, qword [rsp + 0x48]
mov rax, qword [rdx + 8]
mov qword [rdx + 0x10], rcx
cmp qword [rax + 0x20], rcx
jbe 0x14001c70d
nop word [rax + rax]
mov rax, qword [rax]
mov qword [rdx + 8], rax
cmp qword [rax + 0x20], rcx
ja 0x14001c390
sub rcx, qword [rax + 0x20]
mov qword [rax + 0x18], rcx
xor al, al
jmp 0x14001c67b
lea rcx, [rbp + 0x348]
call qword [sym.imp.KERNEL32.dll_QueryPerformanceCounter]
test eax, eax
je 0x14001c774
mov rax, qword [rbp + 0x348]
xor edx, edx
sub rax, qword [0x140098f18]
imul rax, rax, 0xf4240
div qword [0x140098f10]
mov rbx, rax
mov rax, qword [rsp + 0x70]
add rbx, qword [0x140098f20]
test rax, rax
je 0x14001c420
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_UnmapViewOfFile]
test eax, eax
je 0x14001c79b
mov rcx, qword [rbp - 0x78]
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov rcx, qword [rbp - 0x80]
call qword [sym.imp.KERNEL32.dll_CloseHandle]
nop dword [rax + rax]
lea rcx, [rbp + 0x370]
call qword [sym.imp.KERNEL32.dll_QueryPerformanceCounter]
test eax, eax
je 0x14001c781
mov rax, qword [rbp + 0x370]
xor edx, edx
sub rax, qword [0x140098f18]
imul rax, rax, 0xf4240
div qword [0x140098f10]
sub rax, rbx
add rax, qword [0x140098f20]
lock inc dword [0x140098800]
lock xadd qword [0x140098808], rax
mov rdx, qword [rbp + 0x358]
mov rcx, qword [rsp + 0x48]
mov rax, qword [rdx + 8]
mov qword [rdx + 0x10], rcx
cmp qword [rax + 0x20], rcx
jbe 0x14001c70d
nop dword [rax + rax]
mov rax, qword [rax]
mov qword [rdx + 8], rax
cmp qword [rax + 0x20], rcx
ja 0x14001c490
sub rcx, qword [rax + 0x20]
mov qword [rax + 0x18], rcx
xor al, al
jmp 0x14001c67b
lea rcx, [rbp + 0x118]
call qword [sym.imp.KERNEL32.dll_QueryPerformanceCounter]
test eax, eax
je 0x14001c78e
mov rax, qword [rbp + 0x118]
xor edx, edx
sub rax, qword [0x140098f18]
imul rax, rax, 0xf4240
div qword [0x140098f10]
mov rbx, rax
mov rax, qword [rsp + 0x70]
add rbx, qword [0x140098f20]
test rax, rax
je 0x14001c520
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_UnmapViewOfFile]
test eax, eax
je 0x14001c79b
mov rcx, qword [rbp - 0x78]
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov rcx, qword [rbp - 0x80]
call qword [sym.imp.KERNEL32.dll_CloseHandle]
nop dword [rax + rax]
lea rcx, [rbp + 0x110]
call qword [sym.imp.KERNEL32.dll_QueryPerformanceCounter]
test eax, eax
je 0x14001c720
mov rax, qword [rbp + 0x110]
xor edx, edx
sub rax, qword [0x140098f18]
imul rax, rax, 0xf4240
div qword [0x140098f10]
sub rax, rbx
add rax, qword [0x140098f20]
lock inc dword [0x140098800]
lock xadd qword [0x140098808], rax
mov rdx, qword [rbp + 0x358]
mov rcx, qword [rsp + 0x48]
mov rax, qword [rdx + 8]
mov qword [rdx + 0x10], rcx
cmp qword [rax + 0x20], rcx
jbe 0x14001c70d
nop dword [rax + rax]
mov rax, qword [rax]
mov qword [rdx + 8], rax
cmp qword [rax + 0x20], rcx
ja 0x14001c590
sub rcx, qword [rax + 0x20]
mov qword [rax + 0x18], rcx
xor al, al
jmp 0x14001c67b
mov rax, qword [rbp - 0x40]
test rax, rax
je 0x14001c5ce
mov rdx, qword [rax - 8]
lea rcx, [rax - 8]
mov rax, qword [rbp - 0x20]
neg rdx
lock xadd qword [rax], rdx
call fcn.1400578b0
mov rax, qword [rbp - 0x38]
test rax, rax
je 0x14001c5f0
mov rdx, qword [rax - 8]
lea rcx, [rax - 8]
mov rax, qword [rbp - 0x20]
neg rdx
lock xadd qword [rax], rdx
call fcn.1400578b0
mov rax, qword [rbp - 0x18]
test rax, rax
je 0x14001c612
mov rdx, qword [rax - 8]
lea rcx, [rax - 8]
mov rax, qword [rbp - 0x20]
neg rdx
lock xadd qword [rax], rdx
call fcn.1400578b0
mov r9, qword [rbp + 0x348]
mov r8, qword [rbp - 0x48]
mov rsi, qword [rbp + 0x358]
mov rdi, qword [rsp + 0x48]
test r8, r8
je 0x14001c643
mov rax, qword [r8 - 8]
lea rcx, [r8 - 8]
neg rax
lock xadd qword [r9], rax
call fcn.1400578b0
lea rcx, [rsp + 0x70]
call fcn.14003bf50
mov rax, qword [rsi + 8]
mov qword [rsi + 0x10], rdi
cmp qword [rax + 0x20], rdi
jbe 0x14001c66d
nop dword [rax + rax]
mov rax, qword [rax]
mov qword [rsi + 8], rax
cmp qword [rax + 0x20], rdi
ja 0x14001c660
mov rax, qword [rsi + 8]
sub rdi, qword [rax + 0x20]
mov qword [rax + 0x18], rdi
mov al, 1
mov r12, qword [rsp + 0x418]
add rsp, 0x3d0
pop r15
pop r14
pop r13
pop rdi
pop rsi
pop rbx
pop rbp
ret
lea rcx, [rsp + 0x70]
call fcn.14003bf50
mov rdx, qword [rbp + 0x358]
mov rcx, qword [rsp + 0x48]
mov rax, qword [rdx + 8]
mov qword [rdx + 0x10], rcx
cmp qword [rax + 0x20], rcx
jbe 0x14001c70d
nop dword [rax]
mov rax, qword [rax]
mov qword [rdx + 8], rax
cmp qword [rax + 0x20], rcx
ja 0x14001c6c0
sub rcx, qword [rax + 0x20]
mov qword [rax + 0x18], rcx
xor al, al
jmp 0x14001c67b
lea rcx, [rsp + 0x70]
call fcn.14003bf50
mov rdx, qword [rbp + 0x358]
mov rcx, qword [rsp + 0x48]
mov rax, qword [rdx + 8]
mov qword [rdx + 0x10], rcx
cmp qword [rax + 0x20], rcx
jbe 0x14001c70d
nop dword [rax]
mov rax, qword [rax]
mov qword [rdx + 8], rax
cmp qword [rax + 0x20], rcx
ja 0x14001c700
mov rax, qword [rdx + 8]
sub rcx, qword [rax + 0x20]
mov qword [rax + 0x18], rcx
xor al, al
jmp 0x14001c67b
lea rcx, str.QueryPerformanceCounter_failed
call fcn.140013bd0
int3
lea rcx, str.node_has_a_PayloadOffset__PayloadLength__but_PayloadsFile_was_not_specified
call fcn.140013b50
int3
mov r9, rcx
mov r8, rdi
lea rcx, str.node_has_a_PayloadOffset_of__i_and_PayloadLength__i_which_is_outside_of_the_payload_file__size__i_.
mov rdx, r15
call fcn.140013b50
int3
mov rdx, qword [rsp + 0x50]
lea rcx, str.dependency_node_index_out_of_range_for_node__s.
call fcn.140013b50
int3
mov rdx, qword [rsp + 0x50]
lea rcx, str.dependency_node_index_out_of_range_for_node__s.
call fcn.140013b50
int3
lea rcx, str.QueryPerformanceCounter_failed
call fcn.140013bd0
int3
lea rcx, str.QueryPerformanceCounter_failed
call fcn.140013bd0
int3
lea rcx, str.QueryPerformanceCounter_failed
call fcn.140013bd0
int3
lea rcx, str.UnMapViewOfFile___failed
call fcn.140013bd0
int3