Function at 0x14007ab40
Capabilities:
Check if file exists
Create a process with modified i/o handles and window
Create process on windows
Get file attributes

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x258
mov byte [rsp + 0x208], r9b
mov r14, r8
mov rbx, rdx
mov rdi, rcx
add rdx, 0x88
lea rcx, [rsp + 0x228]
call fcn.140089550
mov rax, qword [rsp + 0x228]
test rax, rax
mov qword [rsp + 0x60], rax
je 0x14007acd6
movzx eax, byte [0x1400d65f0]
mov ecx, 4
mov edx, 1
call fcn.1400546b0
test rax, rax
je 0x14007cd3b
mov rsi, rax
mov dword [rax], 0x48544150
add rax, 4
mov qword [rsp + 0xc0], rsi
mov qword [rsp + 0xc8], rax
mov word [rsp + 0xd0], 0
lea rcx, [rsp + 0x160]
lea rdx, [rsp + 0xc0]
call fcn.140088ac0
mov r12, qword [rsp + 0x230]
test r12, r12
je 0x14007ad17
mov qword [rsp + 0x78], rsi
mov qword [rsp + 0x88], rbx
mov qword [rsp + 0x70], r14
mov qword [rsp + 0x80], rdi
mov rax, qword [rsp + 0x238]
mov qword [rsp + 0x58], rax
mov r15, qword [rsp + 0x168]
mov ebp, dword [rsp + 0x170]
xor eax, eax
mov qword [rsp + 0xb8], rax
mov rdi, qword [sym.imp.kernel32.dll_CompareStringOrdinal]
lea rcx, [r12 + 0x168]
movzx eax, word [r12 + 0x3d2]
lea r13, [r12 - 0x10]
mov qword [rsp + 0x68], rax
imul r14, rax, 0x38
mov rbx, 0xffffffffffffffff
nop word [rax + rax]
test r14, r14
je 0x14007acb0
lea rsi, [rcx + 0x38]
mov r8, qword [rcx + 0x28]
mov r9d, dword [rcx + 0x30]
mov dword [rsp + 0x20], 1
mov rcx, r15
mov edx, ebp
call rdi
add r13, 0x20
inc rbx
add r14, 0xffffffffffffffc8
mov rcx, rsi
cmp eax, 3
je 0x14007ac70
cmp eax, 1
jne 0x14007ace2
jmp 0x14007acb5
mov rbx, qword [rsp + 0x68]
mov rax, qword [rsp + 0x58]
sub rax, 1
jb 0x14007b2b8
mov qword [rsp + 0x58], rax
mov r12, qword [r12 + rbx*8 + 0x3d8]
jmp 0x14007ac41
xor eax, eax
mov qword [rsp + 0xb8], rax
jmp 0x14007ad57
cmp eax, 2
mov r14, qword [rsp + 0x70]
jne 0x14007cd34
mov rax, qword [r13 - 8]
mov qword [rsp + 0xb8], rax
mov rbp, qword [r13]
mov rdi, qword [rsp + 0x80]
mov rbx, qword [rsp + 0x88]
mov rsi, qword [rsp + 0x78]
jmp 0x14007ad21
xor eax, eax
mov qword [rsp + 0xb8], rax
mov edx, 4
mov r8d, 1
mov rcx, rsi
call fcn.1400546c0
mov rdx, qword [rsp + 0x160]
test rdx, rdx
je 0x14007ad57
mov rcx, qword [rsp + 0x168]
add rdx, rdx
mov r8d, 2
call fcn.1400546c0
mov r12, qword [rbx + 8]
mov r15, qword [rbx + 0x10]
mov qword [rsp + 0x248], r12
mov qword [rsp + 0x250], r15
lea r13, [0x1400bce60]
test r15, r15
je 0x14007b3ba
cmp r15, 4
jae 0x14007ad9d
lea rax, [0x140085b30]
movzx ecx, byte [r15 + r12 - 1]
call rax
test al, al
je 0x14007adc9
jmp 0x14007b3ba
mov eax, dword [0x1400be7d0]
cmp eax, dword [r12]
lea rcx, [0x140085b40]
lea rax, [0x140085b30]
cmove rax, rcx
movzx ecx, byte [r15 + r12 - 1]
call rax
test al, al
jne 0x14007b3ba
movabs rsi, 0x8000000000000000
cmp r15, 3
jbe 0x14007aecd
movzx eax, byte [r15 + r12 - 4]
lea ecx, [rax - 0x41]
cmp cl, 0x1a
setb cl
shl cl, 5
or cl, al
cmp cl, 0x2e
jne 0x14007aeed
movzx eax, byte [r12 + r15 - 3]
lea ecx, [rax - 0x41]
cmp cl, 0x1a
setb cl
shl cl, 5
or cl, al
mov al, 1
cmp cl, 0x65
jne 0x14007ae48
movzx ecx, byte [r12 + r15 - 2]
lea edx, [rcx - 0x41]
cmp dl, 0x1a
setb dl
shl dl, 5
or dl, cl
cmp dl, 0x78
jne 0x14007ae48
movzx eax, byte [r12 + r15 - 1]
lea ecx, [rax - 0x41]
cmp cl, 0x1a
setb cl
shl cl, 5
or cl, al
cmp cl, 0x65
setne al
xor ecx, ecx
nop word [rax + rax]
cmp r15, rcx
je 0x14007b05f
movzx edx, byte [r12 + rcx]
cmp edx, 0x2f
je 0x14007ae6b
inc rcx
cmp edx, 0x5c
jne 0x14007ae50
test al, al
jne 0x14007af0b
lea rcx, [rsp + 0xc0]
mov rdx, r12
mov r8, r15
call fcn.140076630
mov rcx, qword [rsp + 0xc0]
mov rax, qword [rsp + 0xc8]
cmp rcx, rsi
jne 0x14007b496
mov qword [rsp + 0x130], rax
mov qword [rsp + 0x128], rsi
mov r15, qword [rsp + 0x128]
mov r13, qword [rsp + 0x130]
cmp r15, rsi
je 0x14007b3ba
jmp 0x14007b905
xor eax, eax
nop
cmp r15, rax
je 0x14007b05f
movzx ecx, byte [r12 + rax]
cmp ecx, 0x2f
je 0x14007af0b
inc rax
cmp ecx, 0x5c
jne 0x14007aed0
jmp 0x14007af0b
xor eax, eax
nop
cmp r15, rax
je 0x14007b05f
movzx ecx, byte [r12 + rax]
cmp ecx, 0x2f
je 0x14007af0b
inc rax
cmp ecx, 0x5c
jne 0x14007aef0
test r15, r15
js 0x14007cd4a
mov rbp, rbx
mov rbx, r14
movzx eax, byte [0x1400d65f0]
mov r14d, 1
mov edx, 1
mov rcx, r15
call fcn.1400546b0
test rax, rax
je 0x14007cd4d
mov r13, rax
mov rcx, rax
mov rdx, r12
mov r8, r15
call fcn.1400aeeb0
mov qword [rsp + 0xc0], r15
mov qword [rsp + 0xc8], r13
mov qword [rsp + 0xd0], r15
mov byte [rsp + 0xd8], 0
mov rax, qword [rsp + 0xd0]
mov qword [rsp + 0x150], rax
movzx eax, byte [rsp + 0xd8]
mov byte [rsp + 0x158], al
mov eax, dword [rsp + 0xd9]
mov dword [rsp + 0x159], eax
movzx eax, word [rsp + 0xdd]
mov word [rsp + 0x15d], ax
movzx eax, byte [rsp + 0xdf]
mov byte [rsp + 0x15f], al
mov rax, qword [rsp + 0xc0]
mov qword [rsp + 0x140], rax
mov rax, qword [rsp + 0xc8]
mov qword [rsp + 0x148], rax
lea rdx, str..exeprogram_not_found
lea rcx, [rsp + 0x140]
mov r8d, 4
call fcn.140082760
movaps xmm0, xmmword [rsp + 0x140]
movaps xmm1, xmmword [rsp + 0x150]
movaps xmmword [rsp + 0xd0], xmm1
movaps xmmword [rsp + 0xc0], xmm0
mov rdx, qword [rsp + 0xc8]
mov r8, qword [rsp + 0xd0]
lea rcx, [rsp + 0x1c0]
call fcn.140076630
mov rax, qword [rsp + 0x1c0]
mov r14, qword [rsp + 0x1c8]
cmp rax, rsi
jne 0x14007b149
mov qword [rsp + 0x98], r14
mov qword [rsp + 0x90], rsi
jmp 0x14007b193
lea rax, [r12 + r15]
xor r9d, r9d
lea r13, str.nul_byte_found_in_provided_data
mov rcx, r12
jmp 0x14007b08c
xor r9d, r9d
test dx, dx
je 0x14007b3ba
mov dx, 1
test r9w, r9w
jne 0x14007b080
cmp rcx, rax
je 0x14007b27f
movzx r8d, byte [rcx]
test r8b, r8b
js 0x14007b0ad
inc rcx
jmp 0x14007b111
mov r9d, r8d
and r9d, 0x1f
movzx r11d, byte [rcx + 1]
and r11d, 0x3f
cmp r8b, 0xdf
jbe 0x14007b103
movzx r10d, byte [rcx + 2]
shl r11d, 6
and r10d, 0x3f
or r10d, r11d
cmp r8b, 0xf0
jb 0x14007b11c
movzx r8d, byte [rcx + 3]
add rcx, 4
and r9d, 7
shl r9d, 0x12
shl r10d, 6
and r8d, 0x3f
or r8d, r10d
or r8d, r9d
cmp r8d, 0xffff
jbe 0x14007b111
jmp 0x14007b133
add rcx, 2
shl r9d, 6
or r9d, r11d
mov r8d, r9d
xor r9d, r9d
mov edx, r8d
jmp 0x14007b083
add rcx, 3
shl r9d, 0xc
or r10d, r9d
mov r8d, r10d
cmp r8d, 0xffff
jbe 0x14007b111
and r8d, 0x3ff
or r8d, 0xdc00
mov r9d, r8d
jmp 0x14007b083
mov rcx, qword [rsp + 0x1d0]
mov qword [rsp + 0x140], rax
mov qword [rsp + 0x148], r14
mov qword [rsp + 0x150], rcx
lea rcx, [rsp + 0x90]
lea rdx, [rsp + 0x140]
call fcn.14008bf70
mov r15, qword [rsp + 0x90]
mov r14, qword [rsp + 0x98]
cmp r15, rsi
jne 0x14007b1ff
mov eax, r14d
and eax, 3
lea rcx, [rax - 2]
cmp rcx, 2
jb 0x14007b2ed
test rax, rax
je 0x14007b2ed
mov r15, qword [r14 - 1]
mov rsi, qword [r14 + 7]
mov rax, qword [rsi]
test rax, rax
je 0x14007b1c5
mov rcx, r15
call rax
dec r14
mov rdx, qword [rsi + 8]
test rdx, rdx
je 0x14007b1dd
mov r8, qword [rsi + 0x10]
mov rcx, r15
call fcn.1400546c0
mov edx, 0x18
mov r8d, 8
mov rcx, r14
call fcn.1400546c0
movabs rsi, 0x8000000000000000
jmp 0x14007b2ed
mov rsi, qword [rsp + 0xa0]
mov rcx, r14
call qword [sym.imp.kernel32.dll_GetFileAttributesW]
cmp eax, 0xffffffff
je 0x14007b2ca
mov qword [rsp + 0x128], r15
mov qword [rsp + 0x130], r14
mov qword [rsp + 0x138], rsi
mov rdx, qword [rsp + 0xc0]
test rdx, rdx
je 0x14007b251
mov rcx, qword [rsp + 0xc8]
mov r8d, 1
call fcn.1400546c0
mov r14, rbx
mov rbx, rbp
movabs rsi, 0x8000000000000000
mov r15, qword [rsp + 0x128]
mov r13, qword [rsp + 0x130]
cmp r15, rsi
je 0x14007b3ba
jmp 0x14007b905
cmp r15, 0xf
mov qword [rsp + 0x70], r14
ja 0x14007b47f
xor eax, eax
xor ecx, ecx
mov rdx, qword [rsp + 0xb8]
nop word [rax + rax]
cmp byte [r12 + rcx], 0x2e
je 0x14007b4e9
inc rcx
cmp r15, rcx
jne 0x14007b2a0
jmp 0x14007b4ee
mov rdi, qword [rsp + 0x80]
mov r14, qword [rsp + 0x70]
jmp 0x14007ad08
test r15, r15
movabs rsi, 0x8000000000000000
je 0x14007b2ed
add r15, r15
mov r8d, 2
mov rcx, r14
mov rdx, r15
call fcn.1400546c0
lea rcx, [rsp + 0xc0]
mov edx, 1
xor r8d, r8d
call fcn.140085140
mov rdx, qword [rsp + 0xc8]
mov r8, qword [rsp + 0xd0]
lea rcx, [rsp + 0x140]
call fcn.140076630
mov rcx, qword [rsp + 0x140]
mov rax, qword [rsp + 0x148]
cmp rcx, rsi
jne 0x14007b346
mov qword [rsp + 0x130], rax
mov qword [rsp + 0x128], rsi
jmp 0x14007b37b
mov rdx, qword [rsp + 0x150]
mov qword [rsp + 0x140], rcx
mov qword [rsp + 0x148], rax
mov qword [rsp + 0x150], rdx
lea rcx, [rsp + 0x128]
lea rdx, [rsp + 0x140]
call fcn.14008bf70
mov r14, rbx
mov rdx, qword [rsp + 0xc0]
test rdx, rdx
mov rbx, rbp
je 0x14007b3a1
mov rcx, qword [rsp + 0xc8]
mov r8d, 1
call fcn.1400546c0
mov r15, qword [rsp + 0x128]
mov r13, qword [rsp + 0x130]
cmp r15, rsi
jne 0x14007b905
mov rsi, qword [rsp + 0x60]
mov qword [rdi], r13
mov qword [rdi + 0x10], 2
test rsi, rsi
je 0x14007b458
mov rcx, qword [rsp + 0x230]
test rcx, rcx
je 0x14007b42f
mov rdx, qword [rsp + 0x238]
mov rax, qword [rsp + 0x240]
mov qword [rsp + 0x148], 0
mov qword [rsp + 0x150], rcx
mov qword [rsp + 0x158], rdx
mov qword [rsp + 0x168], 0
mov qword [rsp + 0x170], rcx
mov qword [rsp + 0x178], rdx
mov ecx, 1
jmp 0x14007b433
xor ecx, ecx
xor eax, eax
mov qword [rsp + 0x140], rcx
mov qword [rsp + 0x160], rcx
mov qword [rsp + 0x180], rax
lea rcx, [rsp + 0x140]
call fcn.14008a6a0
cmp dword [r14], 4
jb 0x14007b468
mov rcx, qword [r14 + 8]
call qword [sym.imp.kernel32.dll_CloseHandle]
mov rax, rdi
add rsp, 0x258
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
mov cl, 0x2e
mov rdx, r12
mov r8, r15
call fcn.140092080
mov rdx, qword [rsp + 0xb8]
jmp 0x14007b4ee
mov rdx, qword [rsp + 0xd0]
mov qword [rsp + 0x140], rcx
mov qword [rsp + 0x148], rax
mov qword [rsp + 0x150], rdx
lea rcx, [rsp + 0x128]
lea rdx, [rsp + 0x140]
call fcn.14008bf70
mov r15, qword [rsp + 0x128]
mov r13, qword [rsp + 0x130]
cmp r15, rsi
je 0x14007b3ba
jmp 0x14007b905
mov eax, 1
cmp rax, 1
sete byte [rsp + 0x57]
lea rax, [rsp + 0x248]
mov qword [rsp + 0x218], rax
lea rax, [rsp + 0x57]
mov qword [rsp + 0x220], rax
test rdx, rdx
je 0x14007b564
add rbp, rdx
mov qword [rsp + 0x1c0], rdx
mov qword [rsp + 0x1c8], rbp
mov word [rsp + 0x1d0], 0
mov byte [rsp + 0x1d8], 1
lea rcx, [rsp + 0x140]
lea rdx, [rsp + 0x1c0]
call fcn.140079f40
mov rdx, qword [rsp + 0x140]
cmp rdx, rsi
jne 0x14007b650
lea rcx, [rsp + 0xc0]
call fcn.140077700
mov rax, rsi
mov rsi, qword [rsp + 0xc0]
cmp rsi, rax
jne 0x14007b5ff
mov r14, qword [rsp + 0xc8]
mov eax, r14d
and eax, 3
lea rcx, [rax - 2]
cmp rcx, 2
movabs rsi, 0x8000000000000000
jb 0x14007b787
test rax, rax
je 0x14007b787
mov r15, qword [r14 - 1]
mov rsi, qword [r14 + 7]
mov rax, qword [rsi]
test rax, rax
je 0x14007b5c5
mov rcx, r15
call rax
dec r14
mov rdx, qword [rsi + 8]
test rdx, rdx
je 0x14007b5dd
mov r8, qword [rsi + 0x10]
mov rcx, r15
call fcn.1400546c0
mov edx, 0x18
mov r8d, 8
mov rcx, r14
call fcn.1400546c0
movabs rsi, 0x8000000000000000
jmp 0x14007b787
mov r12, rbx
mov rbx, rdi
mov r14, qword [rsp + 0xc8]
mov r15, qword [rsp + 0xd0]
mov rdi, qword [rsp + 0xd8]
mov rcx, r14
mov rdx, r15
call fcn.140085400
test rax, rax
je 0x14007b724
test rdx, rdx
je 0x14007b71d
cmp r15, rdx
jbe 0x14007b717
cmp byte [r14 + rdx], 0xbf
jg 0x14007b71d
ud2
lea r14, [rsp + 0x140]
lea r12, [rsp + 0x1c0]
lea rbp, [rsp + 0x57]
lea r13, [rsp + 0xc0]
jmp 0x14007b6d6
mov r8, qword [rsp + 0x158]
mov qword [rsp + 0xc8], rcx
mov qword [rsp + 0xd0], rax
mov qword [rsp + 0xd8], r8
mov qword [rsp + 0xc0], rdx
mov rcx, r14
lea rdx, [rsp + 0x248]
mov r8, rbp
mov r9, r13
call fcn.14007cd60
mov r15, qword [rsp + 0x140]
cmp r15, rsi
jne 0x14007b6fd
mov rcx, r14
mov rdx, r12
call fcn.140079f40
mov rdx, qword [rsp + 0x140]
cmp rdx, rsi
je 0x14007b564
mov rcx, qword [rsp + 0x148]
mov rax, qword [rsp + 0x150]
test rax, rax
jne 0x14007b66f
test rdx, rdx
je 0x14007b6ba
mov r8d, 1
call fcn.1400546c0
jmp 0x14007b6ba
movups xmm0, xmmword [rsp + 0x148]
movaps xmmword [rsp + 0x1f0], xmm0
mov r14, qword [rsp + 0x70]
jmp 0x14007b8ed
jne 0x14007b64e
cmp r15, rdx
cmovae r15, rdx
mov qword [rsp + 0x140], rsi
mov qword [rsp + 0x148], r14
mov qword [rsp + 0x150], r15
mov qword [rsp + 0x158], rdi
lea rcx, [rsp + 0x1c0]
lea rdx, [rsp + 0x248]
lea r8, [rsp + 0x57]
lea r9, [rsp + 0x140]
call fcn.14007cd60
mov r15, qword [rsp + 0x1c0]
movabs rsi, 0x8000000000000000
cmp r15, rsi
jne 0x14007b8d2
mov rdi, rbx
mov rbx, r12
lea r14, [rsp + 0x140]
lea rdx, [rsp + 0x218]
mov rcx, r14
call fcn.140077010
mov r15, qword [rsp + 0x140]
add rsi, 2
cmp r15, rsi
jge 0x14007b8b4
mov rdx, qword [rsp + 0x148]
mov rcx, r15
call fcn.14007a2b0
lea rcx, [rsp + 0x140]
lea rdx, [rsp + 0x218]
call fcn.140076af0
mov r15, qword [rsp + 0x140]
cmp r15, rsi
jge 0x14007b8b4
mov rdx, qword [rsp + 0x148]
mov rcx, r15
call fcn.14007a2b0
lea rdx, str.PATHprogram_path_has_no_file_name
lea rcx, [rsp + 0x90]
mov r8d, 4
call fcn.14007a150
mov r14, qword [rsp + 0x90]
movabs rsi, 0x8000000000000000
cmp r14, rsi
je 0x14007b8a3
mov rcx, qword [rsp + 0x98]
mov rax, qword [rsp + 0xa0]
add rax, rcx
mov qword [rsp + 0x58], rcx
mov qword [rsp + 0x1c0], rcx
mov qword [rsp + 0x1c8], rax
mov word [rsp + 0x1d0], 0
mov byte [rsp + 0x1d8], 1
lea rcx, [rsp + 0x140]
lea rdx, [rsp + 0x1c0]
call fcn.140079f40
mov rdx, qword [rsp + 0x140]
cmp rdx, rsi
jne 0x14007c668
test r14, r14
je 0x14007b8a3
mov r8d, 1
mov rcx, qword [rsp + 0x58]
mov rdx, r14
call fcn.1400546c0
lea r13, [0x1400bce90]
mov r14, qword [rsp + 0x70]
jmp 0x14007b3ba
movups xmm0, xmmword [r14 + 8]
movaps xmmword [rsp + 0x1f0], xmm0
mov r14, qword [rsp + 0x70]
movabs rsi, 0x8000000000000000
jmp 0x14007b8ed
movups xmm0, xmmword [rsp + 0x1c8]
movaps xmmword [rsp + 0x1f0], xmm0
mov rdi, rbx
mov r14, qword [rsp + 0x70]
mov rbx, r12
movaps xmm0, xmmword [rsp + 0x1f0]
movups xmmword [rsp + 0x130], xmm0
mov r13, qword [rsp + 0x130]
mov r12, qword [rsp + 0x138]
cmp r12, 5
mov qword [rsp + 0x58], r13
mov qword [rsp + 0x70], r14
mov qword [rsp + 0x88], rbx
mov qword [rsp + 0x68], r15
jb case.0x14007c371.68
test r13, r13
je case.0x14007c371.68
cmp word [r13 + r12*2 - 0xa], 0x2e
jne case.0x14007c371.68
cmp word [r13 + r12*2 - 2], 0
je 0x14007c351
mov r14, rdi
mov rdi, qword [rbx + 8]
mov rbp, qword [rbx + 0x28]
mov rsi, qword [rbx + 0x30]
movzx r12d, byte [rbx + 0xc9]
mov rbx, qword [rbx + 0x10]
add rbx, rdi
mov qword [rsp + 0xc0], 0
mov qword [rsp + 0xc8], 2
mov qword [rsp + 0xd0], 0
lea r15, [rsp + 0xc0]
mov rcx, r15
call fcn.140087d20
mov rax, qword [rsp + 0xc8]
mov word [rax], 0x22
mov qword [rsp + 0xd0], 1
mov qword [rsp + 0x140], rdi
mov qword [rsp + 0x148], rbx
mov word [rsp + 0x150], 0
lea rdx, [rsp + 0x140]
mov rcx, r15
call fcn.140088680
mov rdi, qword [rsp + 0xd0]
cmp rdi, qword [rsp + 0xc0]
jne 0x14007b9f9
lea rcx, [rsp + 0xc0]
call fcn.140087d20
mov rax, qword [rsp + 0xc8]
mov word [rax + rdi*2], 0x22
inc rdi
mov qword [rsp + 0xd0], rdi
shl rsi, 3
lea rsi, [rsi + rsi*4]
lea r15, [rsp + 0xc0]
jmp 0x14007ba6b
lea rbx, [rbp + 0x28]
mov rax, qword [rsp + 0xc8]
mov word [rax + rdi*2], 0x20
inc rdi
mov qword [rsp + 0xd0], rdi
mov rcx, r15
mov rdx, rbp
mov r8d, r12d
call fcn.14008b1f0
add rsi, 0xffffffffffffffd8
mov rbp, rbx
test rax, rax
jne 0x14007bcbd
test rsi, rsi
je 0x14007ba8c
mov rdi, qword [rsp + 0xd0]
cmp rdi, qword [rsp + 0xc0]
jne 0x14007ba30
mov rcx, r15
call fcn.140087d20
jmp 0x14007ba30
mov rax, qword [rsp + 0xc0]
mov r13, qword [rsp + 0xc8]
movabs rcx, 0x8000000000000000
cmp rax, rcx
je 0x14007bce3
mov rsi, qword [rsp + 0xd0]
mov cl, 1
mov dword [rsp + 0x60], ecx
mov r15, qword [rsp + 0x68]
mov qword [rsp + 0xb8], r15
mov rbp, qword [rsp + 0x58]
mov rdi, r14
mov rbx, qword [rsp + 0x88]
mov qword [rsp + 0x128], rax
mov qword [rsp + 0x130], r13
mov qword [rsp + 0x138], rsi
cmp rsi, rax
jne 0x14007bb0c
lea rcx, [rsp + 0x128]
call fcn.140087d20
mov r13, qword [rsp + 0x130]
mov qword [rsp + 0x80], rdi
mov word [r13 + rsi*2], 0
inc rsi
mov qword [rsp + 0x138], rsi
cmp byte [rbx + 0xc8], 0
mov eax, 0x400
mov r15d, 0x608
cmove r15d, eax
or r15d, dword [rbx + 0xc4]
cmp qword [rsp + 0x228], 0
mov r14, qword [rsp + 0x70]
je 0x14007bd27
mov rsi, qword [rsp + 0x230]
mov rdi, qword [rsp + 0x238]
mov rbx, qword [rsp + 0x240]
mov qword [rsp + 0x90], 0
mov qword [rsp + 0x98], 2
mov qword [rsp + 0xa0], 0
test rbx, rbx
jne 0x14007bbbf
lea rcx, [rsp + 0x90]
call fcn.140087d20
mov rax, qword [rsp + 0x98]
mov word [rax], 0
mov qword [rsp + 0xa0], 1
xor eax, eax
test rsi, rsi
setne al
cmove rbx, rsi
mov qword [rsp + 0xc0], rax
mov qword [rsp + 0xc8], 0
mov qword [rsp + 0xd0], rsi
mov qword [rsp + 0xd8], rdi
mov qword [rsp + 0xe0], rax
mov qword [rsp + 0xe8], 0
mov qword [rsp + 0xf0], rsi
mov qword [rsp + 0xf8], rdi
mov qword [rsp + 0x100], rbx
lea rcx, [rsp + 0x140]
lea rdx, [rsp + 0xc0]
call fcn.140089cd0
mov rdx, qword [rsp + 0x140]
movabs rsi, 0x8000000000000000
cmp rdx, rsi
mov rbx, qword [rsp + 0x88]
jne 0x14007be42
lea rcx, [rsp + 0xc0]
call fcn.14008a6a0
mov rsi, qword [rsp + 0xa0]
cmp rsi, qword [rsp + 0x90]
mov r13, qword [rsp + 0x58]
jne 0x14007bc84
lea rcx, [rsp + 0x90]
call fcn.140087d20
mov rax, qword [rsp + 0x98]
mov word [rax + rsi*2], 0
mov r12, qword [rsp + 0x90]
mov rsi, qword [rsp + 0x98]
mov rdi, rsi
movabs rdx, 0x8000000000000000
cmp r12, rdx
jne 0x14007bd3b
jmp 0x14007c609
mov r13, rax
mov rdx, qword [rsp + 0xc0]
test rdx, rdx
je 0x14007bce3
mov rcx, qword [rsp + 0xc8]
add rdx, rdx
mov r8d, 2
call fcn.1400546c0
mov rdi, r14
mov r15, qword [rsp + 0x68]
mov rsi, qword [rsp + 0x60]
mov qword [r14], r13
mov qword [r14 + 0x10], 2
mov r14, qword [rsp + 0x70]
mov r13, qword [rsp + 0x58]
test r15, r15
je 0x14007b3ca
add r15, r15
mov r8d, 2
mov rcx, r13
mov rdx, r15
call fcn.1400546c0
jmp 0x14007b3ca
mov esi, 2
xor edi, edi
xor r12d, r12d
movabs rdx, 0x8000000000000000
mov qword [rsp + 0x78], rsi
lea rcx, [rbx + 0x38]
xor eax, eax
cmp qword [rbx + 0x38], rdx
cmovne rax, rcx
jne 0x14007c222
mov ecx, 2
xor edx, edx
xor r13d, r13d
mov qword [rsp + 0x200], rdx
mov qword [rsp + 0x1b8], rcx
mov qword [rsp + 0xb0], rbp
xorps xmm0, xmm0
movaps xmmword [rsp + 0x90], xmm0
mov qword [rsp + 0xa0], 0
mov cl, 1
xor eax, eax
lock cmpxchg byte [0x1400d66a0], cl
jne 0x14007c920
mov qword [rsp + 0x1c0], 0
mov qword [rsp + 0x1d0], 0
mov qword [rsp + 0x1e0], 0
cmp byte [rsp + 0x208], 0
lea rax, [rsp + 0x1f0]
cmovne rax, r14
mov dword [rsp + 0x1f0], 2
lea rcx, [rbx + 0x58]
cmp dword [rbx + 0x58], 6
mov esi, dword [rbx + 0x68]
cmove rcx, rax
lea rbp, [rbx + 0x78]
cmp dword [rbx + 0x78], 6
cmove rbp, r14
lea r8, [rsp + 0x1c0]
mov edx, 0xfffffff6
call fcn.14007cfe0
cmp rax, 1
jne 0x14007c4c4
mov rdi, qword [rsp + 0x80]
mov qword [rdi], rdx
mov qword [rdi + 0x10], 2
mov rsi, qword [rsp + 0x68]
mov rbp, qword [rsp + 0xb0]
mov ebx, dword [rsp + 0x60]
jmp 0x14007cbe4
mov rcx, qword [rsp + 0x148]
mov r13, qword [rsp + 0x160]
mov rdi, qword [rsp + 0x168]
mov rax, qword [rsp + 0x170]
mov qword [rsp + 0x200], rax
mov rax, qword [rsp + 0x178]
mov qword [rsp + 0x78], rax
mov rax, qword [rsp + 0x180]
mov qword [rsp + 0x1b8], rax
mov rax, qword [rsp + 0x188]
mov qword [rsp + 0x210], rax
mov rax, qword [rsp + 0x150]
add rax, rcx
xor r11d, r11d
mov r8, rcx
jmp 0x14007beb7
xor r11d, r11d
test r9w, r9w
je 0x14007c2f6
mov r9w, 1
test r11w, r11w
jne 0x14007beaa
cmp r8, rax
je 0x14007bf83
movzx r11d, byte [r8]
test r11b, r11b
js 0x14007bedf
inc r8
mov r10d, r11d
jmp 0x14007bf78
mov r10d, r11d
and r10d, 0x1f
movzx ebx, byte [r8 + 1]
and ebx, 0x3f
cmp r11b, 0xdf
jbe 0x14007bf27
movzx esi, byte [r8 + 2]
shl ebx, 6
and esi, 0x3f
or esi, ebx
cmp r11b, 0xf0
jb 0x14007bf3c
movzx r11d, byte [r8 + 3]
add r8, 4
and r10d, 7
shl r10d, 0x12
shl esi, 6
and r11d, 0x3f
or r11d, esi
or r10d, r11d
jmp 0x14007bf47
add r8, 2
shl r10d, 6
or r10d, ebx
mov rbx, qword [rsp + 0x88]
jmp 0x14007bf78
add r8, 3
shl r10d, 0xc
or r10d, esi
mov rbx, qword [rsp + 0x88]
cmp r10d, 0xffff
movabs rsi, 0x8000000000000000
jbe 0x14007bf78
and r10d, 0x3ff
or r10d, 0xdc00
mov r11d, r10d
jmp 0x14007bead
xor r11d, r11d
mov r9d, r10d
jmp 0x14007bead
test rdx, rdx
je 0x14007bf9c
cmp rdx, rsi
je 0x14007cd06
mov r8d, 1
call fcn.1400546c0
mov qword [rsp + 0xb0], rbp
mov rax, qword [rsp + 0x90]
mov rbp, qword [rsp + 0xa0]
sub rax, rbp
cmp rax, qword [rsp + 0x200]
jb 0x14007c1ee
mov r12, qword [rsp + 0x200]
lea r8, [r12 + r12]
lea rcx, [rbp*2]
add rcx, qword [rsp + 0x98]
mov rdx, rdi
call fcn.1400aeeb0
add rbp, r12
mov qword [rsp + 0xa0], rbp
test r13, r13
je 0x14007c015
add r13, r13
mov r8d, 2
mov rcx, rdi
mov rdx, r13
call fcn.1400546c0
mov rbp, qword [rsp + 0xa0]
cmp rbp, qword [rsp + 0x90]
jne 0x14007c02c
lea rcx, [rsp + 0x90]
call fcn.140087d20
mov rax, qword [rsp + 0x98]
mov word [rax + rbp*2], 0x3d
inc rbp
mov qword [rsp + 0xa0], rbp
mov r11, qword [rsp + 0x1b8]
mov rdi, qword [rsp + 0x210]
add rdi, r11
xor r8d, r8d
mov rax, r11
mov r13, qword [rsp + 0x58]
mov rbp, qword [rsp + 0xb0]
jmp 0x14007c079
xor r8d, r8d
test cx, cx
je 0x14007c5ba
mov cx, 1
test r8w, r8w
jne 0x14007c06d
cmp rax, rdi
je 0x14007c123
movzx r8d, byte [rax]
test r8b, r8b
js 0x14007c09d
inc rax
mov edx, r8d
jmp 0x14007c119
mov edx, r8d
and edx, 0x1f
movzx r10d, byte [rax + 1]
and r10d, 0x3f
cmp r8b, 0xdf
jbe 0x14007c0e7
movzx r9d, byte [rax + 2]
shl r10d, 6
and r9d, 0x3f
or r9d, r10d
cmp r8b, 0xf0
jb 0x14007c0f3
movzx r8d, byte [rax + 3]
add rax, 4
and edx, 7
shl edx, 0x12
shl r9d, 6
and r8d, 0x3f
or r8d, r9d
or edx, r8d
jmp 0x14007c0fd
add rax, 2
shl edx, 6
or edx, r10d
jmp 0x14007c119
add rax, 3
shl edx, 0xc
or edx, r9d
cmp edx, 0xffff
jbe 0x14007c119
and edx, 0x3ff
or edx, 0xdc00
mov r8d, edx
jmp 0x14007c070
xor r8d, r8d
mov ecx, edx
jmp 0x14007c070
mov rbp, qword [rsp + 0x78]
cmp rbp, rsi
je 0x14007cd24
mov qword [rsp + 0x1c0], r11
mov qword [rsp + 0x1c8], rdi
mov word [rsp + 0x1d0], 0
lea rcx, [rsp + 0x90]
lea rdx, [rsp + 0x1c0]
mov rsi, r11
call fcn.140088680
test rbp, rbp
je 0x14007c179
mov r8d, 1
mov rcx, rsi
mov rdx, rbp
call fcn.1400546c0
mov rsi, qword [rsp + 0xa0]
cmp rsi, qword [rsp + 0x90]
mov rbp, qword [rsp + 0xb0]
jne 0x14007c1a0
lea rcx, [rsp + 0x90]
call fcn.140087d20
mov rax, qword [rsp + 0x98]
mov word [rax + rsi*2], 0
inc rsi
mov qword [rsp + 0xa0], rsi
lea rcx, [rsp + 0x140]
lea rdx, [rsp + 0xc0]
call fcn.140089cd0
mov rdx, qword [rsp + 0x140]
movabs rsi, 0x8000000000000000
cmp rdx, rsi
jne 0x14007be42
jmp 0x14007bc53
mov qword [rsp + 0x20], 2
mov r9d, 2
lea rcx, [rsp + 0x90]
mov rdx, rbp
mov r8, qword [rsp + 0x200]
call fcn.1400b13b0
mov rbp, qword [rsp + 0xa0]
jmp 0x14007bfc5
mov rcx, qword [rbx + 0x40]
mov rdx, qword [rbx + 0x48]
add rdx, rcx
xor r10d, r10d
jmp 0x14007c23f
xor r10d, r10d
test r8w, r8w
je 0x14007c49c
mov r8w, 1
test r10w, r10w
jne 0x14007c232
cmp rcx, rdx
je 0x14007c528
movzx r9d, byte [rcx]
test r9b, r9b
js 0x14007c264
inc rcx
jmp 0x14007c2eb
mov r10d, r9d
and r10d, 0x1f
movzx esi, byte [rcx + 1]
and esi, 0x3f
cmp r9b, 0xdf
jbe 0x14007c2ae
movzx r11d, byte [rcx + 2]
shl esi, 6
and r11d, 0x3f
or r11d, esi
cmp r9b, 0xf0
jb 0x14007c2be
movzx r9d, byte [rcx + 3]
add rcx, 4
and r10d, 7
shl r10d, 0x12
shl r11d, 6
and r9d, 0x3f
or r9d, r11d
or r9d, r10d
jmp 0x14007c2cc
add rcx, 2
shl r10d, 6
or r10d, esi
mov r9d, r10d
jmp 0x14007c2eb
add rcx, 3
shl r10d, 0xc
or r11d, r10d
mov r9d, r11d
cmp r9d, 0xffff
jbe 0x14007c2eb
and r9d, 0x3ff
or r9d, 0xdc00
mov r10d, r9d
jmp 0x14007c235
xor r10d, r10d
mov r8d, r9d
jmp 0x14007c235
lea rsi, str.nul_byte_found_in_provided_data
test rdx, rdx
je 0x14007c30d
mov r8d, 1
call fcn.1400546c0
mov rdx, qword [rsp + 0x78]
mov rcx, qword [rsp + 0x1b8]
test rdx, rdx
je 0x14007c32a
mov r8d, 1
call fcn.1400546c0
test r13, r13
je 0x14007c51e
add r13, r13
mov r8d, 2
mov rcx, rdi
mov rdx, r13
call fcn.1400546c0
mov r13, qword [rsp + 0x58]
jmp 0x14007c5d9
movzx eax, word [r13 + r12*2 - 8]
lea ecx, [rax - 0x42]
cmp ecx, 0x21
ja case.0x14007c371.68
lea rdx, [0x1400bcf08]
movsxd rcx, dword [rdx + rcx*4]
add rcx, rdx
jmp rcx
movzx ecx, word [r13 + r12*2 - 6]
or ecx, 0x20
cmp ecx, 0x61
jne 0x14007c38f
movzx ecx, word [r13 + r12*2 - 4]
or ecx, 0x20
cmp ecx, 0x74
je 0x14007c3bd
cmp ax, 0x43
jne case.0x14007c371.68
movzx eax, word [r13 + r12*2 - 6]
or eax, 0x20
cmp eax, 0x6d
jne case.0x14007c371.68
movzx eax, word [r13 + r12*2 - 4]
or eax, 0x20
cmp eax, 0x64
jne case.0x14007c371.68
lea rcx, [rsp + 0xc0]
call fcn.140077a80
mov rax, qword [rsp + 0xc0]
mov rbp, qword [rsp + 0xc8]
cmp rax, rsi
je 0x14007c487
mov rcx, qword [rsp + 0xd0]
mov qword [rsp + 0x1c0], rax
mov qword [rsp + 0x1c8], rbp
mov qword [rsp + 0x1d0], rcx
lea rax, [0x1400bceb2]
mov qword [rsp + 0x160], rax
lea rax, [0x1400bceba]
mov qword [rsp + 0x168], rax
mov word [rsp + 0x170], 0
mov qword [rsp + 0x140], 1
mov qword [rsp + 0x148], 0
mov qword [rsp + 0x150], 1
mov word [rsp + 0x158], 0
lea rcx, [rsp + 0x1c0]
lea rdx, [rsp + 0x140]
call fcn.140088820
mov rax, qword [rsp + 0x1c0]
mov rbp, qword [rsp + 0x1c8]
cmp rax, rsi
jne 0x14007c71d
mov qword [rdi], rbp
mov qword [rdi + 0x10], 2
mov rsi, qword [rsp + 0x60]
jmp 0x14007bd05
lea rcx, str.nul_byte_found_in_provided_data
mov rdi, qword [rsp + 0x80]
mov qword [rdi], rcx
mov qword [rdi + 0x10], 2
mov rsi, qword [rsp + 0x68]
mov ebx, dword [rsp + 0x60]
jmp 0x14007cc7e
mov qword [rsp + 0x208], rdx
lea r8, [rsp + 0x1d0]
lea rcx, [rbx + 0x68]
cmp esi, 6
cmove rcx, r14
mov edx, 0xfffffff5
call fcn.14007cfe0
mov rsi, rdx
test rax, rax
je 0x14007c62a
mov rdi, qword [rsp + 0x80]
mov qword [rdi], rsi
mov qword [rdi + 0x10], 2
mov rsi, qword [rsp + 0x68]
mov rbp, qword [rsp + 0xb0]
mov ebx, dword [rsp + 0x60]
jmp 0x14007cbd6
mov r13, qword [rsp + 0x58]
jmp 0x14007c5d9
mov rcx, qword [rax + 8]
mov rax, qword [rax + 0x10]
add rax, rcx
mov qword [rsp + 0x140], rcx
mov qword [rsp + 0x148], rax
mov word [rsp + 0x150], 0
lea rcx, [rsp + 0xc0]
lea rdx, [rsp + 0x140]
call fcn.140088ac0
mov rsi, qword [rsp + 0xd0]
cmp rsi, qword [rsp + 0xc0]
jne 0x14007c581
lea rcx, [rsp + 0xc0]
call fcn.140087d20
mov rax, qword [rsp + 0xc8]
mov word [rax + rsi*2], 0
mov r13, qword [rsp + 0xc0]
mov rcx, qword [rsp + 0xc8]
mov rdx, rcx
movabs rax, 0x8000000000000000
cmp r13, rax
jne 0x14007bd5e
jmp 0x14007c4a3
lea rsi, str.nul_byte_found_in_provided_data
mov rdx, qword [rsp + 0x78]
test rdx, rdx
je 0x14007c5d9
mov r8d, 1
mov rcx, r11
call fcn.1400546c0
lea rcx, [rsp + 0xc0]
call fcn.14008a6a0
mov rdx, qword [rsp + 0x90]
test rdx, rdx
je 0x14007c609
mov rcx, qword [rsp + 0x98]
add rdx, rdx
mov r8d, 2
call fcn.1400546c0
mov rdi, qword [rsp + 0x80]
mov qword [rdi], rsi
mov qword [rdi + 0x10], 2
mov rsi, qword [rsp + 0x68]
mov ebx, dword [rsp + 0x60]
jmp 0x14007cc9e
lea r8, [rsp + 0x1e0]
mov rcx, rbp
mov edx, 0xfffffff4
call fcn.14007cfe0
test rax, rax
je 0x14007c7a5
mov r15, rsi
mov rdi, qword [rsp + 0x80]
mov qword [rdi], rdx
mov qword [rdi + 0x10], 2
mov rsi, qword [rsp + 0x68]
jmp 0x14007cbc1
lea r13, [rsp + 0x140]
lea rbp, [rsp + 0x1c0]
lea r12, [rsp + 0xc0]
jmp 0x14007c6f2
mov r8, qword [rsp + 0x158]
mov qword [rsp + 0xc8], rcx
mov qword [rsp + 0xd0], rax
mov qword [rsp + 0xd8], r8
mov qword [rsp + 0xc0], rdx
mov rdx, qword [rsp + 0x218]
mov r8, qword [rsp + 0x220]
mov rcx, r13
mov r9, r12
call fcn.14007cd60
mov r15, qword [rsp + 0x140]
cmp r15, rsi
jne 0x14007c931
mov rcx, r13
mov rdx, rbp
call fcn.140079f40
mov rdx, qword [rsp + 0x140]
cmp rdx, rsi
je 0x14007b88b
mov rcx, qword [rsp + 0x148]
mov rax, qword [rsp + 0x150]
test rax, rax
jne 0x14007c682
test rdx, rdx
je 0x14007c6d6
mov r8d, 1
call fcn.1400546c0
jmp 0x14007c6d6
mov qword [rsp + 0xb8], rax
mov r9, qword [rbx + 0x28]
mov rax, qword [rbx + 0x30]
movzx ecx, byte [rbx + 0xc9]
mov byte [rsp + 0x28], cl
mov qword [rsp + 0x20], rax
lea rcx, [rsp + 0x140]
mov rdx, r13
mov r8, r12
call fcn.14008b670
mov rax, qword [rsp + 0x140]
mov r13, qword [rsp + 0x148]
cmp rax, rsi
jne 0x14007c963
mov qword [rdi], r13
mov qword [rdi + 0x10], 2
mov rdx, qword [rsp + 0xb8]
test rdx, rdx
mov r13, qword [rsp + 0x58]
mov rsi, qword [rsp + 0x60]
je 0x14007bd05
add rdx, rdx
mov r8d, 2
mov rcx, rbp
call fcn.1400546c0
jmp 0x14007bd05
xorps xmm0, xmm0
movups xmmword [rsp + 0xf4], xmm0
movups xmmword [rsp + 0xe8], xmm0
movups xmmword [rsp + 0xd8], xmm0
movups xmmword [rsp + 0xc8], xmm0
movups xmmword [rsp + 0x108], xmm0
movups xmmword [rsp + 0x118], xmm0
test rdx, rdx
mov rcx, qword [rsp + 0x208]
jne 0x14007c7f4
test rsi, rsi
jne 0x14007c7f4
mov eax, 1
test rcx, rcx
je 0x14007c81c
mov dword [rsp + 0xfc], 0x100
mov qword [rsp + 0x110], rcx
mov qword [rsp + 0x118], rsi
mov qword [rsp + 0x120], rdx
mov eax, 0x101
cmp word [rbx + 0xc0], 0
je 0x14007c83c
movzx ecx, word [rbx + 0xc2]
mov dword [rsp + 0xfc], eax
mov word [rsp + 0x100], cx
mov qword [rsp + 0x210], rdx
mov rbp, qword [rbx + 0xb8]
test rbp, rbp
je 0x14007c978
add rbx, 0xa8
mov dword [rsp + 0xc0], 0x70
lea rcx, [rsp + 0x218]
mov rdx, rbx
call fcn.14007d210
mov rbx, qword [rsp + 0x218]
mov rax, qword [rsp + 0x220]
test rbx, rbx
je 0x14007cb98
mov qword [rsp + 0x88], rax
or r15d, 0x80000
mov rax, qword [rsp + 0x120]
mov qword [rsp + 0x1a0], rax
movups xmm0, xmmword [rsp + 0x110]
movaps xmmword [rsp + 0x190], xmm0
movups xmm0, xmmword [rsp + 0x100]
movaps xmmword [rsp + 0x180], xmm0
movups xmm0, xmmword [rsp + 0xc0]
movups xmm1, xmmword [rsp + 0xd0]
movups xmm2, xmmword [rsp + 0xe0]
movups xmm3, xmmword [rsp + 0xf0]
movaps xmmword [rsp + 0x170], xmm3
movaps xmmword [rsp + 0x160], xmm2
movaps xmmword [rsp + 0x150], xmm1
movaps xmmword [rsp + 0x140], xmm0
mov qword [rsp + 0x1a8], rbx
lea rax, [rsp + 0x140]
jmp 0x14007c98b
lea rcx, [0x1400d66a0]
call fcn.1400b4460
jmp 0x14007bd9f
movups xmm0, xmmword [rsp + 0x148]
movaps xmmword [rsp + 0x1f0], xmm0
test r14, r14
je 0x14007c959
mov r8d, 1
mov rcx, qword [rsp + 0x58]
mov rdx, r14
call fcn.1400546c0
mov r14, qword [rsp + 0x70]
jmp 0x14007b8ed
mov dword [rsp + 0x60], 0
mov rsi, qword [rsp + 0x150]
jmp 0x14007bada
mov dword [rsp + 0xc0], 0x68
lea rax, [rsp + 0xc0]
mov rdx, qword [rsp + 0x130]
lea rcx, [rsp + 0x90]
mov qword [rsp + 0x48], rcx
mov qword [rsp + 0x40], rax
mov rax, qword [rsp + 0x200]
mov qword [rsp + 0x38], rax
mov qword [rsp + 0x30], rdi
mov dword [rsp + 0x28], r15d
mov dword [rsp + 0x20], 1
mov rcx, qword [rsp + 0xb0]
xor r8d, r8d
xor r9d, r9d
call qword [sym.imp.kernel32.dll_CreateProcessW]
mov r15, rsi
test eax, eax
je 0x14007cb22
movups xmm0, xmmword [rsp + 0x1c0]
movups xmm1, xmmword [rsp + 0x1d0]
movups xmm2, xmmword [rsp + 0x1e0]
mov rdi, qword [rsp + 0x80]
movups xmmword [rdi + 0x30], xmm2
movups xmmword [rdi + 0x20], xmm1
movups xmmword [rdi + 0x10], xmm0
movaps xmm0, xmmword [rsp + 0x90]
movups xmmword [rdi], xmm0
test rbp, rbp
mov rbp, qword [rsp + 0x68]
je 0x14007ca34
mov rcx, rbx
mov rdx, qword [rsp + 0x88]
call fcn.14007a350
mov rsi, qword [sym.imp.kernel32.dll_CloseHandle]
mov rcx, qword [rsp + 0x210]
call rsi
mov rcx, r15
call rsi
mov rcx, qword [rsp + 0x208]
call rsi
cmp dword [rsp + 0x1f0], 4
mov rbx, qword [rsp + 0xb0]
jae 0x14007cb5f
xor eax, eax
xchg byte [0x1400d66a0], al
cmp al, 2
je 0x14007cb7d
test r13, r13
je 0x14007ca98
add r13, r13
mov r8d, 2
mov rcx, qword [rsp + 0x1b8]
mov rdx, r13
call fcn.1400546c0
test r12, r12
je 0x14007cab3
add r12, r12
mov r8d, 2
mov rcx, qword [rsp + 0x78]
mov rdx, r12
call fcn.1400546c0
mov rdx, qword [rsp + 0x128]
test rdx, rdx
mov rsi, qword [rsp + 0x58]
je 0x14007cadb
mov rcx, qword [rsp + 0x130]
add rdx, rdx
mov r8d, 2
call fcn.1400546c0
mov rdx, qword [rsp + 0xb8]
test rdx, rdx
je 0x14007caf9
add rdx, rdx
mov r8d, 2
mov rcx, rbx
call fcn.1400546c0
test rbp, rbp
sete al
or al, byte [rsp + 0x60]
jne 0x14007b458
add rbp, rbp
mov r8d, 2
mov rcx, rsi
mov rdx, rbp
call fcn.1400546c0
jmp 0x14007b458
call qword [sym.imp.kernel32.dll_GetLastError]
shl rax, 0x20
or rax, 2
mov rdi, qword [rsp + 0x80]
mov qword [rdi], rax
mov qword [rdi + 0x10], 2
test rbp, rbp
mov rsi, qword [rsp + 0x68]
je 0x14007cbb3
mov rcx, rbx
mov rdx, qword [rsp + 0x88]
call fcn.14007a350
jmp 0x14007cbb3
mov rcx, qword [rsp + 0x1f8]
call qword [sym.imp.kernel32.dll_CloseHandle]
xor eax, eax
xchg byte [0x1400d66a0], al
cmp al, 2
jne 0x14007ca7a
lea rcx, [0x1400d66a0]
call qword [sym.imp.api_ms_win_core_synch_l1_2_0.dll_WakeByAddressSingle]
test r13, r13
jne 0x14007ca7f
jmp 0x14007ca98
mov r15, rsi
mov rdi, qword [rsp + 0x80]
mov qword [rdi], rax
mov qword [rdi + 0x10], 2
mov rsi, qword [rsp + 0x68]
mov rcx, qword [rsp + 0x210]
call qword [sym.imp.kernel32.dll_CloseHandle]
mov rbp, qword [rsp + 0xb0]
mov ebx, dword [rsp + 0x60]
mov rcx, r15
call qword [sym.imp.kernel32.dll_CloseHandle]
mov rcx, qword [rsp + 0x208]
call qword [sym.imp.kernel32.dll_CloseHandle]
cmp dword [rsp + 0x1f0], 4
jb 0x14007cbfc
mov rcx, qword [rsp + 0x1f8]
call qword [sym.imp.kernel32.dll_CloseHandle]
cmp qword [rsp + 0x1c0], 0
je 0x14007cc15
mov rcx, qword [rsp + 0x1c8]
call qword [sym.imp.kernel32.dll_CloseHandle]
cmp qword [rsp + 0x1d0], 0
je 0x14007cc2e
mov rcx, qword [rsp + 0x1d8]
call qword [sym.imp.kernel32.dll_CloseHandle]
cmp qword [rsp + 0x1e0], 0
je 0x14007cc47
mov rcx, qword [rsp + 0x1e8]
call qword [sym.imp.kernel32.dll_CloseHandle]
xor eax, eax
xchg byte [0x1400d66a0], al
cmp al, 2
jne 0x14007cc60
lea rcx, [0x1400d66a0]
call qword [sym.imp.api_ms_win_core_synch_l1_2_0.dll_WakeByAddressSingle]
test r13, r13
je 0x14007cc7e
add r13, r13
mov r8d, 2
mov rcx, qword [rsp + 0x1b8]
mov rdx, r13
call fcn.1400546c0
test r12, r12
mov r13, qword [rsp + 0x58]
je 0x14007cc9e
add r12, r12
mov r8d, 2
mov rcx, qword [rsp + 0x78]
mov rdx, r12
call fcn.1400546c0
mov rdx, qword [rsp + 0x128]
test rdx, rdx
je 0x14007ccc1
mov rcx, qword [rsp + 0x130]
add rdx, rdx
mov r8d, 2
call fcn.1400546c0
mov rdx, qword [rsp + 0xb8]
test rdx, rdx
je 0x14007ccdf
add rdx, rdx
mov r8d, 2
mov rcx, rbp
call fcn.1400546c0
test rsi, rsi
sete al
or al, bl
jne 0x14007b458
add rsi, rsi
mov r8d, 2
mov rcx, r13
mov rdx, rsi
call fcn.1400546c0
jmp 0x14007b458
mov rsi, rcx
mov rdx, qword [rsp + 0x78]
mov rcx, qword [rsp + 0x1b8]
test rdx, rdx
jne 0x14007c31f
jmp 0x14007c32a
mov rsi, r11
mov rbp, qword [rsp + 0xb0]
jmp 0x14007c5d9
call sub.kernel32.dll_GetLastError
ud2
mov ecx, 1
mov edx, 4
call fcn.14005fd00
xor r14d, r14d
mov rcx, r14
mov rdx, r15
call fcn.14005fd00
int3