Function at 0x14016b830
Capabilities:
Check for time delay via queryperformancecounter
Execute anti-debugging instructions

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x228
movapd xmmword [rsp + 0x210], xmm6
mov rdi, r9
mov r14, r8
mov byte [rsp + 0x6f], cl
mov ebp, dword [rsp + 0x2b8]
mov rax, qword [0x1402e0038]
xor rax, rsp
mov qword [rsp + 0x208], rax
mov eax, dword [0x1402f3dd0]
mov ecx, dword [0x1402f0db0]
mov r8, qword gs:[0x58]
mov rcx, qword [r8 + rcx*8]
cmp eax, dword [rcx + 4]
mov qword [rsp + 0x70], rdx
jg 0x14016c69b
mov ebx, dword [rsp + 0x2a0]
test ebp, 0x410
jne 0x14016ba90
call qword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
cmp eax, ebx
jne 0x14016c7fe
mov eax, dword [0x1402f3efc]
mov ecx, dword [0x1402f0db0]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
cmp eax, dword [rcx + 4]
jg 0x14016c5e4
cmp byte [0x1402f3ef8], 0
je 0x14016c7fe
call qword [sym.imp.KERNEL32.dll_GetCurrentThread]
lea rdx, [rsp + 0x90]
mov qword [rdx], 0
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_QueryThreadCycleTime]
movsd xmm0, qword [0x1402f3f00]
xorpd xmm6, xmm6
ucomisd xmm0, xmm6
jne 0x14016b922
jnp 0x14016c37b
ucomisd xmm0, xmm6
mov rdx, qword [rsp + 0x70]
jne 0x14016b933
jnp 0x14016ba90
movsd xmm1, qword [rsp + 0x90]
unpcklps xmm1, xmmword [0x1402a8a90]
subpd xmm1, xmmword [0x1402a8aa0]
movapd xmm2, xmm1
unpckhpd xmm2, xmm1
addsd xmm2, xmm1
divsd xmm2, xmm0
mulsd xmm2, qword [0x1402a8ab0]
cvttsd2si rax, xmm2
mov qword [rsp + 0x78], rax
mov qword [rsp + 0x88], 0
mov rax, qword [rsp + 0x2a8]
mov r12, qword [rax]
mov dword [rsp + 0xc0], ebx
cmp byte [rdx], 0
je 0x14016c57c
mov eax, dword [0x1402f0db0]
mov rcx, qword gs:[0x58]
mov r13, qword [rcx + rax*8]
cmp byte [r13 + 0x131], 0
jne 0x14016c57c
call qword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
mov rdx, qword [rsp + 0x70]
cmp eax, ebx
jne 0x14016ba09
mov rax, qword [0x1402f4200]
cmp rax, 1
jbe 0x14016c64e
mov eax, dword [0x1402f0db0]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
mov rsi, qword [rax + 0x168]
mov qword [rsp + 0xb8], rsi
test rsi, rsi
je 0x14016ba09
cmp rsi, qword [rax + 0x138]
jne 0x14016c4c0
mov r9, qword [rsp + 0x2b0]
mov r10, qword [rsp + 0x290]
lea r13, [r13 + 0x131]
test byte [rdx], 8
jne 0x14016c812
movabs rax, 0x7fffffffffffffff
mov r15b, byte [r13]
mov byte [r13], 1
xor ecx, ecx
bt ebp, 0xb
mov ebx, 0
jae 0x14016ba50
mov rbx, qword [0x1402f3bf8]
test ebp, 0x180
cmove rbx, rcx
mov rcx, qword [0x1402f3c08]
mov r8, qword [rsp + 0x2a8]
mov rsi, qword [r8]
lea r8, [rcx + rax]
add r8, 2
cmp r8, 2
jae 0x14016ba97
cmp rsi, rcx
je 0x14016c80f
lea rsi, [rax + 1]
test rcx, rcx
cmovs rsi, rax
jmp 0x14016baab
xor eax, eax
jmp 0x14016b968
xor r8d, r8d
cmp rsi, rcx
setns r8b
add r8, rax
sub rsi, rcx
cmovo rsi, r8
mov al, byte [rdx]
test al, 1
je 0x14016bb7f
mov rbp, r14
mov r14, r13
mov r13, rdi
mov edi, r15d
mov eax, dword [0x1402f0db0]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
cmp byte [rax + 0x130], 0
jne 0x14016bb4e
mov eax, dword [0x1402f0db0]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
cmp qword [rax + 0x180], 0
je 0x14016bb4e
mov eax, dword [0x1402f0db0]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
cmp qword [rax + 0x148], 0
je 0x14016bb4e
mov eax, dword [0x1402f0db0]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
lea r15, [rax + 0x128]
mov r12, qword [r15]
test r12, r12
je 0x14016c5b2
mov eax, dword [0x1402f3dac]
cmp eax, dword [r12 + 0x38]
jne 0x14016c583
mov eax, dword [0x1402f0db0]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
mov rcx, qword [rax + 0x128]
mov al, byte [rdx]
mov r15d, edi
mov rdi, r13
mov r13, r14
mov r14, rbp
mov ebp, dword [rsp + 0x2b8]
jmp 0x14016bb81
xor ecx, ecx
test al, 1
je 0x14016bcfb
xor rbx, qword [rsp + 0x298]
mov r12, qword [0x1402f3db8]
test r12, r12
mov qword [rsp + 0x80], rcx
je 0x14016c09d
movapd xmm0, xmmword [0x14029bb90]
movupd xmmword [rsp + 0x118], xmm0
movupd xmmword [rsp + 0x138], xmm0
movupd xmmword [rsp + 0x148], xmm0
movupd xmmword [rsp + 0x128], xmm0
mov qword [rsp + 0xd0], rsi
mov rax, qword [rsp + 0x78]
mov qword [rsp + 0xd8], rax
mov qword [rsp + 0xe0], 0xffffffffffffffff
xor eax, eax
mov qword [rsp + 0xe8], rax
mov qword [rsp + 0xf0], rdi
mov qword [rsp + 0xf8], r10
mov qword [rsp + 0x100], rdx
mov qword [rsp + 0x108], r14
mov qword [rsp + 0x110], rax
mov byte [rsp + 0x118], 0
mov eax, dword [rsp + 0x2a0]
mov dword [rsp + 0x140], eax
mov dword [rsp + 0x144], ebp
mov qword [rsp + 0x148], rbx
mov al, byte [rsp + 0x6f]
mov byte [rsp + 0x150], al
test r9, r9
je 0x14016bc6e
lea rax, [rsp + 0x118]
cmp rax, r9
jne 0x14016c1be
test bpl, 1
jne 0x14016bc92
movzx edi, byte [rsp + 0x118]
test rdi, rdi
je 0x14016bda5
xor esi, esi
xor ebx, ebx
jmp 0x14016be42
xor edi, edi
jmp 0x14016bca8
mov rsi, rdi
test r14, r14
je 0x14016bc8e
mov rcx, r14
call fcn.14012f6e0
mov rdi, rax
inc rdi
test rsi, rsi
je 0x14016bcd3
mov rcx, rsi
call fcn.14012f6e0
mov rsi, rax
inc rsi
add rsi, rdi
movzx edi, byte [rsp + 0x118]
test rdi, rdi
je 0x14016be72
xor ebx, ebx
jmp 0x14016bcea
xor esi, esi
jmp 0x14016bcbb
call fcn.14012f6e0
inc rax
add rsi, rax
inc rbx
cmp rdi, rbx
je 0x14016bc87
mov rcx, qword [rsp + rbx*8 + 0x120]
test rcx, rcx
jne 0x14016bcd7
xor eax, eax
jmp 0x14016bcdf
xorpd xmm0, xmm0
movapd xmmword [rsp + 0x90], xmm0
mov qword [rsp + 0xa0], 0
movzx ebx, byte [rsp + 0xa7]
mov esi, ebx
and esi, 0x7f
mov rax, rsi
test bl, bl
jns 0x14016bd30
mov rax, qword [rsp + 0x98]
test rax, rax
je 0x14016bd92
cmp dword [0x1402f4050], 2
jg 0x14016bd92
lea rdx, str....._base_trace_event_trace_log.cc
lea rdi, [rsp + 0xd0]
mov rcx, rdi
mov r8d, 0x70b
mov r9d, 2
call fcn.1400c0e80
test bl, bl
lea rbx, [rsp + 0x90]
cmovs rsi, qword [rbx + 8]
lea rcx, [rsp + 0xe0]
mov rdx, qword [rbx]
cmovns rdx, rbx
mov r8, rsi
call fcn.14017d289
mov rcx, rdi
call fcn.140089d40
mov bl, byte [rbx + 0x17]
test bl, bl
jns 0x14016bdf4
mov rcx, qword [rsp + 0x90]
call fcn.14010cc0c
jmp 0x14016bdf4
mov qword [rsp + 0x110], 0
cmp qword [rsp + 0x80], 0
setne dl
lea rsi, [rsp + 0xd0]
lea r8, [rsp + 0x88]
mov rcx, rsi
mov rax, r12
call qword [0x140318008]
cmp byte [rsi + 0x48], 0
jne 0x14016c20b
mov rdx, qword [rsp + 0x110]
test rdx, rdx
jne 0x14016c2e8
mov byte [r13], r15b
mov rsi, qword [rsp + 0x88]
mov rcx, qword [rsp + 0x208]
xor rcx, rsp
call fcn.14010fba0
mov rax, rsi
movaps xmm6, xmmword [rsp + 0x210]
add rsp, 0x228
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
call fcn.14012f6e0
inc rax
add rsi, rax
inc rbx
cmp rdi, rbx
je 0x14016be72
mov al, byte [rsp + rbx + 0x119]
test bpl, 1
je 0x14016be6c
cmp al, 6
jne 0x14016be6c
mov byte [rsp + rbx + 0x119], 7
mov rcx, qword [rsp + rbx*8 + 0x130]
test rcx, rcx
jne 0x14016be2f
xor eax, eax
jmp 0x14016be37
cmp al, 7
je 0x14016be5b
jmp 0x14016be3a
test rsi, rsi
je 0x14016bda5
lea rdi, [rsi + 8]
lea rbx, fcn.1400f4d10
mov rcx, rbx
xor edx, edx
mov r8, rdi
xor r9d, r9d
call fcn.1400b10a0
mov r14, rax
test rdi, rdi
je 0x14016beb0
test r14, r14
jne 0x14016beb0
cmp byte [0x1402f4118], 0
jne 0x14016c84c
mov qword [rsp + 0x110], r14
mov qword [r14], rsi
lea rdx, [r14 + 8]
test r14, r14
cmove rdx, r14
lea rax, [rdx + rsi]
test bpl, 1
jne 0x14016bf6d
mov r8b, byte [rsp + 0x118]
mov rcx, rdx
test r8b, r8b
je 0x14016bdb1
add rdx, rsi
dec rdx
xor r9d, r9d
jmp 0x14016bf34
mov byte [rcx + r11 - 1], 0
mov r11, rdx
sub r11, rcx
lea r8, [r11 + 1]
cmp byte [r10 + r11 + 1], 0
mov r11, r8
jne 0x14016beff
mov qword [rsp + r9*8 + 0x130], rcx
add rcx, r8
inc rcx
mov r8b, byte [rsp + 0x118]
inc r9
movzx r10d, r8b
cmp r9, r10
jae 0x14016bdb1
cmp byte [rsp + r9 + 0x119], 7
jne 0x14016bf24
mov r10, qword [rsp + r9*8 + 0x130]
test r10, r10
je 0x14016bf24
mov r11, rax
sub r11, rcx
je 0x14016bef9
xor r8d, r8d
mov bl, byte [r10 + r8]
mov byte [rcx + r8], bl
test bl, bl
je 0x14016bf0e
inc r8
cmp r11, r8
jne 0x14016bf57
jmp 0x14016bef3
mov r8, qword [rsp + 0x108]
mov rcx, rdx
test r8, r8
je 0x14016bfb9
xor ecx, ecx
mov r9b, byte [r8 + rcx]
mov byte [rdx + rcx], r9b
test r9b, r9b
je 0x14016bfab
inc rcx
cmp rsi, rcx
jne 0x14016bf7f
mov byte [rax - 1], 0
lea r9, [rsi - 1]
lea rcx, [r9 + 1]
cmp byte [r8 + r9 + 1], 0
mov r9, rcx
jne 0x14016bf9c
mov qword [rsp + 0x108], rdx
add rcx, rdx
inc rcx
mov r8, qword [rsp + 0xf0]
test r8, r8
je 0x14016c012
mov r10, rax
sub r10, rcx
je 0x14016bfec
xor r9d, r9d
mov r11b, byte [r8 + r9]
mov byte [rcx + r9], r11b
test r11b, r11b
je 0x14016c004
inc r9
cmp r10, r9
jne 0x14016bfd1
mov byte [rcx + r10 - 1], 0
mov r10, rcx
not r10
add r10, rax
lea r9, [r10 + 1]
cmp byte [r8 + r10 + 1], 0
mov r10, r9
jne 0x14016bff5
mov qword [rsp + 0xf0], rcx
add rcx, r9
inc rcx
mov r8b, byte [rsp + 0x118]
test r8b, r8b
je 0x14016bdb1
lea r9, [rsi + rdx]
dec r9
xor r10d, r10d
jmp 0x14016c06f
mov byte [rcx + rdi - 1], 0
mov rdi, r9
sub rdi, rcx
lea r8, [rdi + 1]
cmp byte [r11 + rdi + 1], 0
mov rdi, r8
jne 0x14016c03a
mov qword [rsp + r10*8 + 0x120], rcx
add rcx, r8
inc rcx
mov r8b, byte [rsp + 0x118]
inc r10
movzx r11d, r8b
cmp r10, r11
jae 0x14016bedf
mov r11, qword [rsp + r10*8 + 0x120]
test r11, r11
je 0x14016c05f
mov rdi, rax
sub rdi, rcx
je 0x14016c034
xor r8d, r8d
mov bl, byte [r11 + r8]
mov byte [rcx + r8], bl
test bl, bl
je 0x14016c049
inc r8
cmp rdi, r8
jne 0x14016c087
jmp 0x14016c02f
xorpd xmm0, xmm0
movapd xmmword [rsp + 0x90], xmm0
mov qword [rsp + 0xa0], 0
test rcx, rcx
je 0x14016c0ca
lea rdx, [rsp + 0x88]
call fcn.1401c40a0
jmp 0x14016c0ff
lea rcx, [0x1402f3a78]
call qword [sym.imp.KERNEL32.dll_TryAcquireSRWLockExclusive]
test al, al
jne 0x14016c0e8
lea rcx, [0x1402f3a78]
call qword [sym.imp.KERNEL32.dll_AcquireSRWLockExclusive]
lea rcx, [0x1402f3a70]
lea rdx, [rsp + 0x88]
mov r8b, 1
call fcn.1401c4e60
mov r12, rax
test rax, rax
mov rax, qword [rsp + 0x70]
mov rcx, qword [rsp + 0x2b0]
mov rdx, qword [rsp + 0x290]
je 0x14016c15d
mov dword [rsp + 0x58], ebp
mov qword [rsp + 0x50], rcx
mov qword [rsp + 0x48], rbx
mov qword [rsp + 0x40], rdx
mov qword [rsp + 0x38], rdi
mov qword [rsp + 0x30], r14
mov qword [rsp + 0x28], rax
mov al, byte [rsp + 0x6f]
mov byte [rsp + 0x20], al
mov rcx, r12
mov edx, dword [rsp + 0x2a0]
mov r8, rsi
mov r9, qword [rsp + 0x78]
call fcn.1400ba3c0
mov eax, dword [0x1402f3c10]
test al, 8
jne 0x14016c188
cmp qword [rsp + 0x80], 0
jne 0x14016bd14
lea rcx, [0x1402f3a78]
call qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
jmp 0x14016bd14
mov al, byte [rsp + 0x6f]
cmp al, 0x58
movzx eax, al
mov r8d, 0x42
cmovne r8d, eax
mov qword [rsp + 0x20], r12
lea rcx, [0x1402f3a70]
lea rdx, [rsp + 0x90]
mov r9, qword [rsp + 0x2a8]
call fcn.1401c4fd0
jmp 0x14016c167
mov rdx, qword [r9 + 0x20]
mov qword [rax + 0x20], rdx
movupd xmm0, xmmword [r9]
movupd xmm1, xmmword [r9 + 0x10]
movupd xmmword [rax + 0x10], xmm1
movupd xmmword [rax], xmm0
mov byte [r9], 0
jmp 0x14016bc6e
mov rcx, qword [rsp + r14*8 + 0x130]
test rcx, rcx
je 0x14016c227
mov rax, qword [rcx]
mov rax, qword [rax]
mov edx, 1
call qword [0x140318008]
mov al, byte [rsp + r14 + 0x119]
jmp 0x14016c223
xor edi, edi
lea rbx, [0x14029bbc0]
xor r14d, r14d
mov al, byte [rsp + r14 + 0x119]
cmp al, 8
je 0x14016c1e3
cmp al, 9
je 0x14016c23d
inc r14
movzx eax, byte [rsp + 0x118]
cmp r14, rax
jae 0x14016bde3
jmp 0x14016c217
mov rsi, qword [rsp + r14*8 + 0x130]
test rsi, rsi
je 0x14016c227
mov ebp, r15d
mov rcx, qword [rsi + 0xa8]
test rcx, rcx
je 0x14016c269
mov r15, qword [rcx]
call fcn.14010cc0c
mov rcx, r15
test r15, r15
jne 0x14016c259
mov qword [rsi + 0xa8], rdi
mov qword [rsi], rbx
mov rcx, qword [rsi + 0x38]
mov qword [rsi + 0x38], rdi
test rcx, rcx
jne 0x14016c6dd
mov r15, qword [rsi + 0x20]
test r15, r15
je 0x14016c2d1
mov r12, qword [rsi + 0x28]
mov rcx, r15
cmp r12, r15
je 0x14016c2c8
add r12, 0xffffffffffffffe8
test r12, r12
je 0x14016c861
mov rcx, qword [r12]
mov qword [r12], 0
test rcx, rcx
jne 0x14016c2e1
lea rax, [r12 - 0x18]
cmp r12, r15
mov r12, rax
jne 0x14016c29d
mov rcx, qword [rsi + 0x20]
mov qword [rsi + 0x28], r15
call fcn.14010cc0c
mov rcx, rsi
call fcn.14010cc0c
mov r15d, ebp
jmp 0x14016c227
call fcn.14010ccd4
jmp 0x14016c2b7
lea rcx, fcn.1400f4d10
xor r8d, r8d
call fcn.1400f0990
jmp 0x14016bdf4
lea rcx, [0x1402f3f20]
call fcn.14010d4bc
cmp dword [0x1402f3f20], 0xffffffff
jne 0x14016c3ea
lea rdi, [rsp + 0xd0]
mov qword [rdi], 0
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_QueryPerformanceCounter]
mov rax, qword [rdi]
mov qword [0x1402f3f18], rax
lea rcx, [0x1402f3f20]
call fcn.14010d064
jmp 0x14016c3ea
lea rcx, [0x1402f3f10]
call fcn.14010d4bc
cmp dword [0x1402f3f10], 0xffffffff
jne 0x14016c3c5
rdtsc
shl rdx, 0x20
or rdx, rax
mov qword [0x1402f3f08], rdx
lea rcx, [0x1402f3f10]
call fcn.14010d064
jmp 0x14016c3c5
mov qword [rsp + 0x78], rdi
mov rdi, qword [sym.imp.KERNEL32.dll_GetCurrentThread]
call rdi
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetThreadPriority]
mov esi, eax
call rdi
mov rcx, rax
mov edx, 2
call qword [sym.imp.KERNEL32.dll_SetThreadPriority]
mov eax, dword [0x1402f3f10]
mov ecx, dword [0x1402f0db0]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
cmp eax, dword [rcx + 4]
jg 0x14016c348
mov eax, dword [0x1402f3f20]
mov ecx, dword [0x1402f0db0]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
cmp eax, dword [rcx + 4]
jg 0x14016c2fc
rdtsc
mov qword [rsp + 0x80], rax
mov r15, rdx
xor edi, edi
lea r12, [rsp + 0xd0]
mov qword [r12], rdi
mov rcx, r12
call qword [sym.imp.KERNEL32.dll_QueryPerformanceCounter]
mov r13, qword [r12]
call qword [sym.imp.KERNEL32.dll_GetCurrentThread]
mov rcx, rax
mov edx, esi
call qword [sym.imp.KERNEL32.dll_SetThreadPriority]
mov qword [r12], rdi
lea rsi, [rsp + 0xd0]
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_QueryPerformanceFrequency]
sub r13, qword [0x1402f3f18]
cvtsi2sd xmm1, r13
xorps xmm0, xmm0
cvtsi2sd xmm0, qword [rsi]
divsd xmm1, xmm0
xorpd xmm0, xmm0
movsd xmm2, qword [0x1402a8a80]
ucomisd xmm2, xmm1
jbe 0x14016c46c
mov rdi, qword [rsp + 0x78]
jmp 0x14016b922
shl r15, 0x20
mov rax, qword [rsp + 0x80]
or rax, r15
sub rax, qword [0x1402f3f08]
movq xmm2, rax
punpckldq xmm2, xmmword [0x1402a8a90]
subpd xmm2, xmmword [0x1402a8aa0]
movapd xmm0, xmm2
unpckhpd xmm0, xmm2
addsd xmm0, xmm2
divsd xmm0, xmm1
movsd qword [0x1402f3f00], xmm0
jmp 0x14016c462
lea rcx, [0x1402f3a80]
call qword [sym.imp.KERNEL32.dll_AcquireSRWLockExclusive]
jmp 0x14016c4e7
cmp byte [rsi], 0
je 0x14016ba09
mov rbx, rdi
lea rax, [rax + 0x138]
mov qword [rax], rsi
lea rcx, [0x1402f3a80]
call qword [sym.imp.KERNEL32.dll_TryAcquireSRWLockExclusive]
test al, al
je 0x14016c4b1
lea rcx, [0x1402f3b78]
lea rdi, [rsp + 0xd0]
lea r15, [rsp + 0xc0]
mov rdx, rdi
mov r8, r15
call fcn.1400e70e0
mov rcx, qword [rdi]
test rcx, rcx
jne 0x14016c6e7
lea rax, [rsp + 0xc8]
mov qword [rax], r15
lea rcx, [rsp + 0xc7]
mov qword [rsp + 0x28], rcx
mov qword [rsp + 0x20], rax
lea rcx, [0x1402f3b78]
lea r9, [0x1402a2343]
lea rdi, [rsp + 0xd0]
mov rdx, rdi
mov r8, r15
call fcn.1400cd430
mov rcx, qword [rdi]
add rcx, 0x18
mov rdx, rsi
call fcn.140097850
lea rcx, [0x1402f3a80]
call qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
mov rdi, rbx
mov rdx, qword [rsp + 0x70]
jmp 0x14016ba09
xor esi, esi
jmp 0x14016be00
mov rcx, r12
call fcn.14016b670
mov rcx, r12
call fcn.14010cc0c
mov r10, qword [rsp + 0x290]
mov r9, qword [rsp + 0x2b0]
mov rdx, qword [rsp + 0x70]
cmp qword [r15], 0
jne 0x14016bb4e
mov ecx, 0x40
call fcn.14010cc14
mov r12, rax
mov rcx, rax
call fcn.1401c3e30
mov r10, qword [rsp + 0x290]
mov r9, qword [rsp + 0x2b0]
mov rdx, qword [rsp + 0x70]
mov qword [r15], r12
jmp 0x14016bb4e
lea rcx, [0x1402f3efc]
call fcn.14010d4bc
cmp dword [0x1402f3efc], 0xffffffff
jne 0x14016b8df
mov r15d, ebx
lea rsi, [rsp + 0xd0]
mov rcx, rsi
call fcn.1400f7950
mov bl, byte [rsi + 0x29]
cmp byte [rsi + 0x5f], 0
jns 0x14016c626
mov rcx, qword [rsp + 0x118]
call fcn.14010cc0c
cmp byte [rsp + 0x117], 0
js 0x14016c864
mov byte [0x1402f3ef8], bl
lea rcx, [0x1402f3efc]
call fcn.14010d064
mov ebx, r15d
jmp 0x14016b8df
lea rcx, [0x1402f4200]
call fcn.14009a090
test al, al
je 0x14016c692
mov ecx, pe_nt_image_headers64
call fcn.14010cc14
mov rsi, rax
mov rcx, rax
call fcn.140058870
lea rcx, [0x1402f4200]
mov rdx, rsi
xor r8d, r8d
xor r9d, r9d
call fcn.140099fc0
mov rdx, qword [rsp + 0x70]
jmp 0x14016b9d5
mov rax, qword [0x1402f4200]
jmp 0x14016c688
lea rcx, [0x1402f3dd0]
call fcn.14010d4bc
mov rdx, qword [rsp + 0x70]
cmp dword [0x1402f3dd0], 0xffffffff
jne 0x14016b899
lea rcx, [0x1402f3a70]
xor edx, edx
call fcn.14003cba0
lea rcx, [0x1402f3dd0]
call fcn.14010d064
mov rdx, qword [rsp + 0x70]
jmp 0x14016b899
call fcn.14010ccd4
jmp 0x14016c284
movabs rax, 0xaaaaaaaaaaaaaaaa
mov qword [rsp + 0xe0], rax
movapd xmm0, xmmword [0x14029bb90]
movapd xmmword [rsp + 0xd0], xmm0
lea rax, [0x1402a16e2]
mov qword [rsp + 0x90], rax
mov qword [rsp + 0x98], 1
lea rbp, [rcx + 0x18]
movzx eax, byte [rcx + 0x2f]
test al, al
jns 0x14016c87c
mov rdx, qword [rcx + 0x18]
mov rax, qword [rcx + 0x20]
mov qword [rsp + 0xa8], rdx
mov qword [rsp + 0xb0], rax
test rax, rax
js 0x14016c876
test rdx, rdx
jne 0x14016c764
test rax, rax
jne 0x14016c879
mov dword [rsp + 0x20], 1
lea r15, [rsp + 0xd0]
lea rdx, [rsp + 0xa8]
lea r8, [rsp + 0x90]
mov rcx, r15
xor r9d, r9d
call fcn.1400b7440
mov rdx, qword [r15]
mov rdi, qword [r15 + 8]
lea rsi, [rsp + 0xc8]
lea r9, [rsp + 0xb8]
mov rcx, rsi
mov r8, rdi
call fcn.1401c5b90
cmp qword [rsi], rdi
jne 0x14016c7e2
mov rax, qword [rsp + 0xd0]
cmp rax, qword [rsp + 0xd8]
je 0x14016c7d2
mov rcx, rbp
mov dl, 0x2c
call fcn.140099e14
mov rdx, qword [rsp + 0xb8]
mov rcx, rbp
call fcn.14010bbae
lea rcx, [rsp + 0xc8]
mov qword [rcx], r15
call fcn.1400ffc68
mov ebp, dword [rsp + 0x2b8]
jmp 0x14016c562
xor eax, eax
mov qword [rsp + 0x78], rax
mov rdx, qword [rsp + 0x70]
jmp 0x14016b96d
int3
test r14, r14
lea r8, [0x1402a1d44]
cmovne r8, r14
mov qword [rsp + 0x28], r9
mov qword [rsp + 0x20], r12
mov cl, byte [rsp + 0x6f]
mov rsi, r9
mov r9, r10
mov rbx, r10
call fcn.1401dc6e0
mov r10, rbx
mov r9, rsi
mov rdx, qword [rsp + 0x70]
jmp 0x14016ba29
mov rcx, rdi
call fcn.1401ed8f0
test al, al
jne 0x14016be86
jmp 0x14016beb0
int3
mov rcx, qword [rsp + 0x100]
call fcn.14010cc0c
jmp 0x14016c634
int3
int3
mov rdx, rbp
mov qword [rsp + 0xa8], rbp
mov qword [rsp + 0xb0], rax
jmp 0x14016c756