Function at 0x140164ff0
Capabilities:
Create process on windows
Set file attributes

Disassembly:
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x738]
sub rsp, 0x838
mov rax, qword [0x140300040]
xor rax, rsp
mov qword [rbp + 0x728], rax
mov r12, r9
mov qword [rbp - 0x78], r9
mov rbx, r8
mov qword [rsp + 0x50], rbx
mov qword [rbp - 0x58], rdx
mov r15, rcx
mov qword [rbp + 0x20], rbx
mov qword [rbp], r9
mov r14, qword [rbp + 0x7a0]
mov qword [rbp + 8], r14
mov rax, qword [rbp + 0x7a8]
mov qword [rsp + 0x58], rax
mov qword [rbp + 0x10], rax
mov rax, qword [rbp + 0x7b0]
mov qword [rsp + 0x60], rax
mov qword [rbp + 0x18], rax
mov rax, qword [rbp + 0x7c0]
mov qword [rsp + 0x70], rax
xor esi, esi
mov dword [rsp + 0x68], esi
cmp qword [rcx + 0x38], rsi
je 0x1401650f5
call fcn.140166250
test eax, eax
jne 0x1401650cf
mov rbx, qword [r15]
call fcn.14012bfe0
mov rdi, rax
xor r9d, r9d
mov r8, qword [rax + 0xe8]
mov rdx, rbx
lea rcx, [rax + 0xe0]
call fcn.140029e40
mov rcx, qword [rdi + 0xe8]
test rcx, rcx
je 0x1401650bc
mov qword [rcx], rax
jmp 0x1401650c3
mov qword [rdi + 0xe0], rax
mov qword [rdi + 0xe8], rax
mov rbx, qword [rsp + 0x50]
mov rcx, qword [r15 + 0x38]
test rcx, rcx
je 0x1401650de
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov qword [r15 + 0x38], rsi
mov rcx, qword [r15 + 0x40]
test rcx, rcx
je 0x1401650f1
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov qword [r15 + 0x40], rsi
lea r9, [r15 + 0x28]
mov rcx, qword [r14]
call fcn.140022350
mov rdi, 0xffffffffffffffff
lea r13d, [rdi + 2]
test eax, eax
jne 0x1401652fe
call qword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 3
jne 0x140165458
mov qword [rbp + 0xe0], rsi
mov r8, r14
lea rdx, [0x14026b1d8]
lea rcx, [rbp + 0xe0]
call fcn.140029070
nop
mov rcx, qword [rbp + 0xe0]
call fcn.1400248e0
test eax, eax
jne 0x1401651ab
lea r9, str.TEXT
mov r8, qword [r14]
lea rdx, str.TEXT_MSG_TEMP_FILE_NOT_EXIST
lea rcx, [rbp - 0x68]
call fcn.140044df0
nop
mov rdx, rax
mov rcx, qword [rsp + 0x70]
call fcn.140017b80
nop
mov rdx, qword [rbp - 0x68]
add rdx, 0xffffffffffffffe8
mov eax, edi
lock xadd dword [rdx + 0x10], eax
sub eax, r13d
jg 0x14016519f
mov rcx, qword [rdx]
mov rax, qword [rcx]
mov rax, qword [rax + 8]
call qword [case.0x140038ca6.0]
nop
mov rdx, qword [rbp + 0xe0]
jmp 0x140166190
mov rax, qword [r14]
mov edx, r13d
sub edx, dword [rax - 8]
mov ecx, dword [rax - 0xc]
sub ecx, 0x410
or ecx, edx
jge 0x1401651ce
mov edx, 0x410
mov rcx, r14
call fcn.140018ea0
mov r8d, 0x410
mov rdx, qword [r14]
mov rcx, qword [rbp + 0xe0]
call qword [sym.imp.KERNEL32.dll_GetShortPathNameW]
mov rcx, qword [r14]
test rcx, rcx
jne 0x1401651f0
mov eax, esi
jmp 0x140165201
movsxd rdx, dword [rcx - 0xc]
call fcn.1401fe5d0
test eax, eax
js 0x14016621c
mov rcx, qword [r14]
cmp eax, dword [rcx - 0xc]
jg 0x14016621c
mov dword [rcx - 0x10], eax
mov ecx, eax
mov rax, qword [r14]
mov word [rax + rcx*2], si
mov rax, qword [r14]
mov r9d, dword [rax - 0x10]
add r9d, 0xfffffffc
mov r8d, 4
lea rdx, [rbp - 0x50]
mov rcx, r14
call fcn.14001dd20
mov ebx, 2
mov dword [rsp + 0x68], ebx
lea rdx, [rbp - 0x50]
mov rcx, r14
call fcn.140017b80
and ebx, 0xfffffffd
mov dword [rsp + 0x68], ebx
mov rdx, qword [rbp - 0x50]
add rdx, 0xffffffffffffffe8
mov eax, edi
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x140165276
mov rcx, qword [rdx]
mov rax, qword [rcx]
mov rax, qword [rax + 8]
call qword [case.0x140038ca6.0]
lea r9, [r15 + 0x28]
mov rcx, qword [r14]
call fcn.140022350
test eax, eax
jne 0x1401652d7
call fcn.140044d30
mov rcx, rax
lea r8, str.TEXT
lea rdx, str.TEXT_MSG_INTERNAL_ERROR
call fcn.140048480
test rax, rax
je 0x1401652ba
mov rsi, rdi
nop dword [rax]
inc rsi
cmp word [rax + rsi*2], 0
jne 0x1401652b0
mov r8d, esi
mov rdx, rax
mov rcx, qword [rsp + 0x70]
call fcn.140018f50
nop
mov rdx, qword [rbp + 0xe0]
jmp 0x140166190
mov rdx, qword [rbp + 0xe0]
add rdx, 0xffffffffffffffe8
mov eax, edi
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x1401652fe
mov rcx, qword [rdx]
mov rax, qword [rcx]
mov rax, qword [rax + 8]
call qword [case.0x140038ca6.0]
cmp dword [rbp + 0x7b8], 0
je 0x140165315
mov edx, 0x81
mov rcx, qword [r14]
call qword [sym.imp.KERNEL32.dll_SetFileAttributesW]
mov qword [rbp + 0xd0], rsi
mov rdx, qword [r14]
lea rcx, [rbp + 0xd0]
call fcn.140023910
nop
mov ebx, dword [rbp + 0x7c8]
lea eax, [rbx - 2]
cmp eax, 1
jbe 0x140165d6a
mov rax, qword [rbp + 0xd0]
cmp dword [rax - 0x10], 0
jne 0x140165756
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rbp + 0x104], xmm0
movups xmmword [rbp + 0x114], xmm0
movups xmmword [rbp + 0x124], xmm0
movups xmmword [rbp + 0x134], xmm0
movups xmmword [rbp + 0x144], xmm0
movups xmmword [rbp + 0x154], xmm0
mov dword [rbp + 0x164], eax
mov qword [rbp + 0xf0], rsi
call fcn.140019590
mov rcx, rax
test rax, rax
je 0x140166211
mov rax, qword [rax]
mov rax, qword [rax + 0x18]
call qword [case.0x140038ca6.0]
add rax, 0x18
mov qword [rbp + 0xf0], rax
mov dword [rbp + 0x100], 0x68
mov r9, qword [r14]
lea r8, str.notepad.exe
lea rdx, str.__s___s
lea rcx, [rbp + 0xf0]
call fcn.14001c4c0
mov dword [0x14030c210], r13d
lea rax, [rbp + 0xa0]
mov qword [rsp + 0x48], rax
lea rax, [rbp + 0x100]
mov qword [rsp + 0x40], rax
mov qword [rsp + 0x38], rsi
mov qword [rsp + 0x30], rsi
mov dword [rsp + 0x28], esi
mov dword [rsp + 0x20], esi
xor r9d, r9d
xor r8d, r8d
mov rbx, qword [rbp + 0xf0]
mov rdx, rbx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_CreateProcessW]
test eax, eax
jne 0x140165735
call fcn.140044d30
mov rcx, rax
lea r8, str.TEXT
lea rdx, str.TEXT_MSG_INTERNAL_ERROR
call fcn.140048480
test rax, rax
jne 0x1401656ea
mov r8d, esi
jmp 0x1401656fb
cmp eax, 2
jne 0x1401656a5
mov edx, eax
lea rcx, [rbp - 0x10]
call fcn.1400391c0
mov qword [rbp - 0x70], rax
lea r9, str.TEXT
mov r8, qword [r14]
lea rdx, str.TEXT_MSG_TEMP_FILE_NOT_EXIST
lea rcx, [rbp - 0x18]
call fcn.140044df0
mov r12, rax
mov qword [rbp - 0x80], rsi
mov rcx, qword [rax]
mov rcx, qword [rcx - 0x18]
test rcx, rcx
je 0x1401654b2
mov rdx, qword [rcx]
mov rax, qword [rdx + 0x20]
call qword [case.0x140038ca6.0]
mov rcx, rax
test rax, rax
jne 0x1401654d6
call fcn.140019590
mov rdx, rax
mov rcx, qword [rax]
mov rax, qword [rcx + 0x20]
mov rcx, rdx
call qword [case.0x140038ca6.0]
mov rcx, rax
test rax, rax
je 0x140166227
mov rax, qword [rcx]
mov rax, qword [rax + 0x18]
call qword [case.0x140038ca6.0]
lea rbx, [rax + 0x18]
mov qword [rbp - 0x80], rbx
mov eax, 4
mov dword [rsp + 0x68], eax
lea rax, [0x14026b26c]
mov r15, rdi
nop
inc r15
cmp word [rax + r15*2], 0
jne 0x140165500
mov rcx, qword [r12]
mov qword [rbp - 0x68], rcx
mov eax, dword [rcx - 0x10]
mov dword [rbp + 0xd8], eax
lea r12d, [rax + r15]
test r12d, r12d
js 0x140166232
sub r13d, dword [rbx - 8]
mov eax, dword [rbx - 0xc]
sub eax, r12d
or eax, r13d
jge 0x14016554c
mov edx, r12d
lea rcx, [rbp - 0x80]
call fcn.140018ea0
mov rbx, qword [rbp - 0x80]
mov rcx, qword [rbp - 0x68]
movsxd rax, dword [rbp + 0xd8]
lea r13, [rax + rax]
test r13, r13
je 0x140165590
test rbx, rbx
je 0x140165580
mov r8, r13
test rcx, rcx
je 0x140165576
mov rdx, rcx
mov rcx, rbx
call fcn.14022e460
jmp 0x140165590
xor edx, edx
mov rcx, rbx
call fcn.14022eb00
call fcn.1401fed34
mov dword [rax], 0x16
call fcn.1401feb94
movsxd r8, r15d
add r8, r8
lea rcx, [rbx + r13]
je 0x1401655bf
test rcx, rcx
jne 0x1401655b3
call fcn.1401fed34
mov dword [rax], 0x16
call fcn.1401feb94
jmp 0x1401655bf
lea rdx, [0x14026b26c]
call fcn.14022e460
cmp r12d, dword [rbx - 0xc]
jg 0x140166232
mov dword [rbx - 0x10], r12d
movsxd rax, r12d
mov word [rbx + rax*2], si
mov r8, qword [rbp - 0x70]
lea rdx, [rbp - 0x80]
lea rcx, [rbp - 0x20]
call fcn.140029150
nop
mov rdx, rax
mov rcx, qword [rsp + 0x70]
call fcn.140017b80
nop
mov rdx, qword [rbp - 0x20]
add rdx, 0xffffffffffffffe8
mov eax, edi
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x140165618
mov rcx, qword [rdx]
mov rax, qword [rcx]
mov rax, qword [rax + 8]
call qword [case.0x140038ca6.0]
mov eax, 4
and eax, 0xfffffffb
mov dword [rsp + 0x68], eax
mov rdx, qword [rbp - 0x80]
add rdx, 0xffffffffffffffe8
mov eax, edi
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x140165649
mov rcx, qword [rdx]
mov rax, qword [rcx]
mov rax, qword [rax + 8]
call qword [case.0x140038ca6.0]
nop
mov rdx, qword [rbp - 0x18]
add rdx, 0xffffffffffffffe8
mov eax, edi
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x14016566e
mov rcx, qword [rdx]
mov rax, qword [rcx]
mov rax, qword [rax + 8]
call qword [case.0x140038ca6.0]
nop
mov rdx, qword [rbp - 0x10]
add rdx, 0xffffffffffffffe8
lock xadd dword [rdx + 0x10], edi
sub edi, 1
jg 0x140165691
mov rcx, qword [rdx]
mov rax, qword [rcx]
mov rax, qword [rax + 8]
call qword [case.0x140038ca6.0]
nop
mov rcx, qword [rsp + 0x50]
call fcn.1400192b0
nop
mov rcx, qword [rbp - 0x78]
jmp 0x1401661bd
call fcn.140044d30
mov rcx, rax
lea r8, str.TEXT
lea rdx, str.TEXT_MSG_INTERNAL_ERROR
call fcn.140048480
test rax, rax
je 0x1401656d1
inc rdi
cmp word [rax + rdi*2], 0
jne 0x1401656c5
mov esi, edi
mov r8d, esi
mov rdx, rax
mov rcx, qword [rsp + 0x70]
call fcn.140018f50
nop
mov rcx, rbx
jmp 0x1401661b4
mov r8, rdi
nop dword [rax]
inc r8
cmp word [rax + r8*2], 0
jne 0x1401656f0
mov rdx, rax
mov rcx, qword [rsp + 0x70]
call fcn.140018f50
nop
mov dword [0x14030c210], esi
lea rdx, [rbx - 0x18]
mov eax, edi
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x140165730
mov rcx, qword [rdx]
mov rax, qword [rcx]
mov rax, qword [rax + 8]
call qword [case.0x140038ca6.0]
nop
jmp 0x140166189
mov rax, qword [rbp + 0xa0]
mov qword [r15 + 0x38], rax
mov rax, qword [rbp + 0xa8]
mov qword [r15 + 0x40], rax
mov dword [0x14030c210], esi
jmp 0x14016601e
mov qword [rbp + 0xd8], rsi
mov rdx, r14
lea rcx, [rbp + 0xd8]
call fcn.140023640
nop
xorps xmm0, xmm0
movups xmmword [rbp + 0x30], xmm0
movups xmmword [rbp + 0x40], xmm0
movups xmmword [rbp + 0x50], xmm0
movups xmmword [rbp + 0x60], xmm0
movups xmmword [rbp + 0x70], xmm0
movups xmmword [rbp + 0x80], xmm0
movups xmmword [rbp + 0x90], xmm0
mov dword [rbp + 0x30], 0x70
mov dword [rbp + 0x34], 0x40
mov rax, qword [r14]
mov qword [rbp + 0x48], rax
mov qword [rbp + 0x40], rsi
mov dword [rbp + 0x60], r13d
mov rax, qword [rbp + 0xd8]
mov qword [rbp + 0x58], rax
lea rax, [rbp - 0x48]
mov qword [rbp - 0x38], rax
mov rcx, qword [rbp + 0xd0]
add rcx, 0xffffffffffffffe8
call fcn.140019180
add rax, 0x18
mov qword [rbp - 0x48], rax
lea rcx, [rbp - 0x48]
call fcn.140125ce0
test eax, eax
je 0x14016591c
call fcn.140166630
cmp dword [rax + 0x614], 0
jne 0x14016591c
mov dword [0x14030c210], r13d
xor edx, edx
mov r8d, 0x538
lea rcx, [rbp + 0x1e0]
call fcn.14022eb00
mov qword [rbp + 0x1e8], rsi
lea rax, [rbp + 0x1f0]
mov qword [rbp - 0x38], rax
mov qword [rbp + 0x208], rsi
mov qword [rbp + 0x210], rsi
mov dword [rbp + 0x218], esi
lea rax, vtable.CAskExecutableDlg.0
mov qword [rbp + 0x1e0], rax
lea rax, [rbp + 0x220]
mov qword [rbp - 0x60], rax
call fcn.140019590
mov rcx, rax
test rax, rax
je 0x14016623d
mov rax, qword [rax]
mov rax, qword [rax + 0x18]
call qword [case.0x140038ca6.0]
add rax, 0x18
mov qword [rbp + 0x220], rax
lea rcx, [rbp + 0x230]
call fcn.1400149d0
nop
lea rcx, [rbp + 0x2b8]
call fcn.1400773a0
nop
lea rcx, [rbp + 0x688]
call fcn.1400f3d80
nop
mov dword [rbp + 0x228], esi
mov qword [rbp + 0x2b0], rsi
mov rdx, r14
lea rcx, [rbp + 0x220]
call fcn.140017b80
call qword [sym.imp.USER32.dll_GetActiveWindow]
mov rbx, rax
mov rax, qword [rbp + 0x208]
test rax, rax
jne 0x1401659e4
call fcn.1401f7180
mov qword [rbp + 0x208], rax
test rax, rax
jne 0x1401659e4
lea ecx, [rax + 0xe]
call qword [sym.imp.KERNEL32.dll_SetLastError]
cmp dword [rbp + 0x228], 0
je 0x14016590f
call fcn.140166630
mov dword [rax + 0x614], r13d
lea rcx, [rbp + 0x1e0]
call fcn.140110c50
nop
mov dword [0x14030c210], r13d
lea rax, [rbp - 8]
mov qword [rbp - 0x60], rax
lea rdx, str.ShellExecuteEx
lea rcx, [rbp - 8]
call fcn.1400190e0
nop
mov rdx, rax
lea rcx, [rsp + 0x78]
call fcn.1400f70e0
nop
lea rcx, [rbp + 0x30]
call qword [sym.imp.SHELL32.dll_ShellExecuteExW]
mov ebx, eax
lea rdx, [0x140267540]
mov r8, rdi
inc r8
cmp word [rdx + r8*2], 0
jne 0x140165960
lea rcx, [0x140315390]
call fcn.140018f50
nop
mov dword [0x14030c210], esi
test ebx, ebx
je 0x140165b3c
cmp qword [rbp + 0x68], 0x20
jbe 0x140165b3c
mov rax, qword [rbp + 0x98]
test rax, rax
jne 0x140165b28
call fcn.14012bfe0
lea rcx, [rax + 0xe0]
mov rdx, qword [r12]
call fcn.140029d20
nop
mov rdx, qword [rbp + 0xd8]
add rdx, 0xffffffffffffffe8
mov eax, edi
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x1401659df
mov rcx, qword [rdx]
mov rax, qword [rcx]
mov rax, qword [rax + 8]
call qword [case.0x140038ca6.0]
nop
jmp 0x140165d0a
xor r8d, r8d
xor edx, edx
mov rcx, rax
call fcn.1401f72b0
lea rax, [rbp + 0x1e0]
mov qword [rbp + 0x1f0], rax
call qword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
mov dword [rbp + 0x1f8], eax
lea rax, [0x140315cd8]
mov qword [rbp - 0x30], rax
mov byte [rbp - 0x28], 0
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov byte [rbp - 0x28], 1
mov rax, qword [0x140315d00]
mov qword [rbp + 0x200], rax
lea rax, [rbp + 0x1f0]
mov qword [0x140315d00], rax
lea rcx, [0x140315cd8]
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov byte [rbp - 0x28], 0
mov qword [rsp + 0x20], rsi
lea r9, [0x140017d70]
mov r8, rbx
mov edx, 0xd3
mov rcx, qword [0x14030a4d0]
call qword [sym.imp.USER32.dll_DialogBoxParamW]
cmp rax, 2
jne 0x1401658fa
lea rcx, [r15 + 0x78]
mov rdx, qword [r12]
call fcn.140029d20
nop
lea rcx, [rbp + 0x1e0]
call fcn.140110c50
nop
mov dword [0x14030c210], esi
mov rdx, qword [rbp + 0xd8]
add rdx, 0xffffffffffffffe8
mov eax, edi
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x140165ac8
mov rcx, qword [rdx]
mov rax, qword [rcx]
mov rax, qword [rax + 8]
call qword [case.0x140038ca6.0]
nop
mov rdx, qword [rbp + 0xd0]
add rdx, 0xffffffffffffffe8
lock xadd dword [rdx + 0x10], edi
sub edi, 1
jg 0x140165aee
mov rcx, qword [rdx]
mov rax, qword [rcx]
mov rax, qword [rax + 8]
call qword [case.0x140038ca6.0]
nop
mov rcx, qword [rsp + 0x50]
call fcn.1400192b0
nop
mov rcx, r12
call fcn.1400192b0
nop
mov rcx, r14
call fcn.1400192b0
nop
mov rcx, qword [rsp + 0x58]
call fcn.1400192b0
nop
mov rcx, qword [rsp + 0x60]
call fcn.1400192b0
mov eax, r13d
jmp 0x1401661e3
mov qword [r15 + 0x38], rax
mov rdx, qword [rbp + 0xd8]
add rdx, 0xffffffffffffffe8
jmp 0x140166022
call qword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0x4c7
jne 0x140165b84
lea rcx, [r15 + 0x78]
mov rdx, qword [r12]
call fcn.140029d20
nop
mov rdx, qword [rbp + 0xd8]
add rdx, 0xffffffffffffffe8
mov eax, edi
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x140165b7f
mov rcx, qword [rdx]
mov rax, qword [rcx]
mov rax, qword [rax + 8]
call qword [case.0x140038ca6.0]
nop
jmp 0x140165d0a
cmp eax, 0xd8
jne 0x140165c2b
lea rax, [rbp - 0x78]
mov qword [rbp - 0x60], rax
mov rcx, qword [r14]
sub rcx, 0x18
call fcn.140019180
add rax, 0x18
mov qword [rbp - 0x78], rax
lea r8, [rbp - 0x78]
mov edx, 0xd8
lea rcx, [rbp - 0x58]
call fcn.140036900
nop
mov rdx, rax
mov rcx, qword [rsp + 0x70]
call fcn.140017b80
nop
mov rdx, qword [rbp - 0x58]
add rdx, 0xffffffffffffffe8
mov eax, edi
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x140165bf0
mov rcx, qword [rdx]
mov rax, qword [rcx]
mov rax, qword [rax + 8]
call qword [case.0x140038ca6.0]
lea rcx, [r15 + 0x78]
mov rdx, qword [r12]
call fcn.140029d20
nop
mov rdx, qword [rbp + 0xd8]
add rdx, 0xffffffffffffffe8
mov eax, edi
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x140165c26
mov rcx, qword [rdx]
mov rax, qword [rcx]
mov rax, qword [rax + 8]
call qword [case.0x140038ca6.0]
nop
jmp 0x140166189
lea rax, [rbp - 0x70]
mov qword [rbp - 0x60], rax
mov rcx, qword [rbp + 0xd0]
add rcx, 0xffffffffffffffe8
call fcn.140019180
add rax, 0x18
mov qword [rbp - 0x70], rax
lea rcx, [rbp - 0x70]
call fcn.140125ce0
test eax, eax
je 0x140165cd5
call fcn.140044d30
mov rcx, rax
lea r8, str.TEXT
lea rdx, str.TEXT_ERR_AT_EXECUTE_DIRECT
call fcn.140048480
test rax, rax
je 0x140165c8a
mov rsi, rdi
nop dword [rax + rax]
inc rsi
cmp word [rax + rsi*2], 0
jne 0x140165c80
mov r8d, esi
mov rdx, rax
mov rcx, qword [rsp + 0x70]
call fcn.140018f50
lea rcx, [r15 + 0x78]
mov rdx, qword [r12]
call fcn.140029d20
nop
mov rdx, qword [rbp + 0xd8]
add rdx, 0xffffffffffffffe8
mov eax, edi
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x140165cd0
mov rcx, qword [rdx]
mov rax, qword [rcx]
mov rax, qword [rax + 8]
call qword [case.0x140038ca6.0]
nop
jmp 0x140166189
mov rdx, qword [r14]
mov rcx, qword [rbp - 0x58]
call fcn.140028ad0
nop
mov rdx, qword [rbp + 0xd8]
add rdx, 0xffffffffffffffe8
mov eax, edi
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x140165d0a
mov rcx, qword [rdx]
mov rax, qword [rcx]
mov rax, qword [rax + 8]
call qword [case.0x140038ca6.0]
nop
mov rdx, qword [rbp + 0xd0]
add rdx, 0xffffffffffffffe8
lock xadd dword [rdx + 0x10], edi
sub edi, 1
jg 0x140165d30
mov rcx, qword [rdx]
mov rax, qword [rcx]
mov rax, qword [rax + 8]
call qword [case.0x140038ca6.0]
nop
mov rcx, qword [rsp + 0x50]
call fcn.1400192b0
nop
mov rcx, r12
call fcn.1400192b0
nop
mov rcx, r14
call fcn.1400192b0
nop
mov rcx, qword [rsp + 0x58]
call fcn.1400192b0
nop
mov rcx, qword [rsp + 0x60]
call fcn.1400192b0
mov eax, r13d
jmp 0x1401661e3
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rbp + 0x174], xmm0
movups xmmword [rbp + 0x184], xmm0
movups xmmword [rbp + 0x194], xmm0
movups xmmword [rbp + 0x1a4], xmm0
movups xmmword [rbp + 0x1b4], xmm0
movups xmmword [rbp + 0x1c4], xmm0
mov dword [rbp + 0x1d4], eax
mov qword [rbp + 0xe8], rsi
call fcn.140019590
mov rcx, rax
test rax, rax
je 0x140166206
mov rax, qword [rax]
mov rax, qword [rax + 0x18]
call qword [case.0x140038ca6.0]
lea rdx, [rax + 0x18]
mov qword [rbp + 0xe8], rdx
mov dword [rbp + 0x170], 0x68
cmp ebx, 2
jne 0x140165e02
call fcn.140166630
mov r9, qword [r14]
mov r8, qword [rax + 0x460]
lea rdx, str.__s____s_
lea rcx, [rbp + 0xe8]
call fcn.14001c4c0
jmp 0x140165e53
cmp ebx, 3
jne 0x140166168
lea rcx, [rbp - 0x40]
call fcn.140022dc0
nop
mov r9, qword [r14]
mov r8, qword [rax]
lea rdx, str.__s____s_
lea rcx, [rbp + 0xe8]
call fcn.14001c4c0
nop
mov rdx, qword [rbp - 0x40]
add rdx, 0xffffffffffffffe8
mov eax, edi
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x140165e53
mov rcx, qword [rdx]
mov rax, qword [rcx]
mov rax, qword [rax + 8]
call qword [case.0x140038ca6.0]
mov dword [0x14030c210], r13d
lea rax, [rbp + 0xb8]
mov qword [rsp + 0x48], rax
lea rax, [rbp + 0x170]
mov qword [rsp + 0x40], rax
mov qword [rsp + 0x38], rsi
mov qword [rsp + 0x30], rsi
mov dword [rsp + 0x28], esi
mov dword [rsp + 0x20], esi
xor r9d, r9d
xor r8d, r8d
mov rbx, qword [rbp + 0xe8]
mov rdx, rbx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_CreateProcessW]
test eax, eax
jne 0x140166002
call fcn.140044d30
mov rcx, rax
lea r8, str.TEXT
lea rdx, str.TEXT_MSG_INTERNAL_ERROR
call fcn.140048480
test rax, rax
jne 0x140165ec9
mov r8d, esi
jmp 0x140165edb
mov r8, rdi
nop dword [rax]
inc r8
cmp word [rax + r8*2], 0
jne 0x140165ed0
mov rdx, rax
mov rcx, qword [rsp + 0x70]
call fcn.140018f50
nop
mov dword [0x14030c210], esi
lea rdx, [rbx - 0x18]
mov eax, edi
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x140165f10
mov rcx, qword [rdx]
mov rax, qword [rcx]
mov rax, qword [rax + 8]
call qword [case.0x140038ca6.0]
nop
mov rdx, qword [rbp + 0xd0]
add rdx, 0xffffffffffffffe8
mov eax, edi
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x140165f38
mov rcx, qword [rdx]
mov rax, qword [rcx]
mov rax, qword [rax + 8]
call qword [case.0x140038ca6.0]
nop
mov rbx, qword [rsp + 0x50]
mov rdx, qword [rbx]
sub rdx, 0x18
mov eax, edi
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x140165f61
mov rcx, qword [rdx]
mov rax, qword [rcx]
mov rax, qword [rax + 8]
call qword [case.0x140038ca6.0]
nop
mov rdx, qword [r12]
sub rdx, 0x18
mov eax, edi
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x140165f86
mov rcx, qword [rdx]
mov rax, qword [rcx]
mov rax, qword [rax + 8]
call qword [case.0x140038ca6.0]
nop
mov rdx, qword [r14]
sub rdx, 0x18
mov eax, edi
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x140165faa
mov rcx, qword [rdx]
mov rax, qword [rcx]
mov rax, qword [rax + 8]
call qword [case.0x140038ca6.0]
nop
mov rsi, qword [rsp + 0x58]
mov rdx, qword [rsi]
sub rdx, 0x18
mov eax, edi
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x140165fd3
mov rcx, qword [rdx]
mov rax, qword [rcx]
mov rax, qword [rax + 8]
call qword [case.0x140038ca6.0]
nop
mov r15, qword [rsp + 0x60]
mov rdx, qword [r15]
sub rdx, 0x18
lock xadd dword [rdx + 0x10], edi
sub edi, 1
jg 0x1401661e1
mov rcx, qword [rdx]
mov rax, qword [rcx]
mov rax, qword [rax + 8]
call qword [case.0x140038ca6.0]
jmp 0x1401661e1
mov rax, qword [rbp + 0xb8]
mov qword [r15 + 0x38], rax
mov rax, qword [rbp + 0xc0]
mov qword [r15 + 0x40], rax
mov dword [0x14030c210], esi
lea rdx, [rbx - 0x18]
mov eax, edi
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x14016603e
mov rcx, qword [rdx]
mov rax, qword [rcx]
mov rax, qword [rax + 8]
call qword [case.0x140038ca6.0]
lea rcx, [r15 + 8]
mov rbx, qword [rsp + 0x50]
mov rdx, rbx
call fcn.140017b80
mov rdx, r12
mov rcx, r15
call fcn.140017b80
lea rcx, [r15 + 0x10]
mov rdx, r14
call fcn.140017b80
lea rcx, [r15 + 0x18]
mov rsi, qword [rsp + 0x58]
mov rdx, rsi
call fcn.140017b80
lea rcx, [r15 + 0x20]
mov r15, qword [rsp + 0x60]
mov rdx, r15
call fcn.140017b80
nop
mov rdx, qword [rbp + 0xd0]
add rdx, 0xffffffffffffffe8
mov eax, edi
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x1401660b1
mov rcx, qword [rdx]
mov rax, qword [rcx]
mov rax, qword [rax + 8]
call qword [case.0x140038ca6.0]
nop
mov rdx, qword [rbx]
sub rdx, 0x18
mov eax, edi
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x1401660d5
mov rcx, qword [rdx]
mov rax, qword [rcx]
mov rax, qword [rax + 8]
call qword [case.0x140038ca6.0]
nop
mov rdx, qword [r12]
sub rdx, 0x18
mov eax, edi
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x1401660fa
mov rcx, qword [rdx]
mov rax, qword [rcx]
mov rax, qword [rax + 8]
call qword [case.0x140038ca6.0]
nop
mov rdx, qword [r14]
sub rdx, 0x18
mov eax, edi
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x14016611e
mov rcx, qword [rdx]
mov rax, qword [rcx]
mov rax, qword [rax + 8]
call qword [case.0x140038ca6.0]
nop
mov rdx, qword [rsi]
sub rdx, 0x18
mov eax, edi
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x140166142
mov rcx, qword [rdx]
mov rax, qword [rcx]
mov rax, qword [rax + 8]
call qword [case.0x140038ca6.0]
nop
mov rdx, qword [r15]
sub rdx, 0x18
lock xadd dword [rdx + 0x10], edi
sub edi, 1
jg 0x140166163
mov rcx, qword [rdx]
mov rax, qword [rcx]
mov rax, qword [rax + 8]
call qword [case.0x140038ca6.0]
mov eax, r13d
jmp 0x1401661e3
add rdx, 0xffffffffffffffe8
mov eax, edi
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x140166189
mov rcx, qword [rdx]
mov rax, qword [rcx]
mov rax, qword [rax + 8]
call qword [case.0x140038ca6.0]
nop
mov rdx, qword [rbp + 0xd0]
add rdx, 0xffffffffffffffe8
lock xadd dword [rdx + 0x10], edi
sub edi, 1
jg 0x1401661af
mov rcx, qword [rdx]
mov rax, qword [rcx]
mov rax, qword [rax + 8]
call qword [case.0x140038ca6.0]
nop
mov rcx, qword [rsp + 0x50]
call fcn.1400192b0
nop
mov rcx, r12
call fcn.1400192b0
nop
mov rcx, r14
call fcn.1400192b0
nop
mov rcx, qword [rsp + 0x58]
call fcn.1400192b0
nop
mov rcx, qword [rsp + 0x60]
call fcn.1400192b0
xor eax, eax
mov rcx, qword [rbp + 0x728]
xor rcx, rsp
call fcn.1401f74b0
add rsp, 0x838
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret
mov ecx, 0x80004005
call fcn.140019300
int3
mov ecx, 0x80004005
call fcn.140019300
nop
mov ecx, 0x80070057
call fcn.140019300
nop
mov ecx, 0x80004005
call fcn.140019300
int3
mov ecx, 0x80070057
call fcn.140019300
nop
mov ecx, 0x80004005
call fcn.140019300
int3