Function at 0x14009a100
Capabilities:
Create thread
Terminate process

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x18], rsi
mov qword [rsp + 0x20], rdi
push rbp
push r14
push r15
lea rbp, [rsp - 0x400]
sub rsp, 0x500
mov rax, qword [0x140188050]
xor rax, rsp
mov qword [rbp + 0x3f0], rax
mov rsi, rdx
mov edi, ecx
xor edx, edx
lea rcx, [rsp + 0x70]
mov r8d, 0x118
call fcn.1400082a0
xor edx, edx
lea rcx, [rbp + 0x90]
mov r8d, 0x250
call fcn.1400082a0
xor eax, eax
xor r14d, r14d
xorps xmm0, xmm0
mov qword [rsp + 0x58], r14
mov r15d, 1
mov qword [rsp + 0x60], rax
xor r9d, r9d
mov qword [rsp + 0x68], rax
xor r8d, r8d
mov dword [rsp + 0x40], r14d
mov edx, r15d
mov dword [rsp + 0x44], r14d
xor ecx, ecx
lea ebx, [rax + 0x64]
movdqu xmmword [rsp + 0x48], xmm0
call qword [sym.imp.KERNEL32.dll_CreateEventW]
mov qword [0x14019f358], rax
test rax, rax
je 0x14009a40f
xor r9d, r9d
xor r8d, r8d
mov edx, r15d
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_CreateEventW]
mov qword [0x14019f3e0], rax
test rax, rax
je 0x14009a40f
lea r8, [rsp + 0x70]
mov rdx, rsi
mov ecx, edi
call fcn.14009a6d0
test eax, eax
jne 0x14009a40f
lea r8, [rsp + 0x58]
mov rdx, rsi
mov ecx, edi
call fcn.14009ad60
test eax, eax
jne 0x14009a40f
lea rax, [rbp + 0x90]
mov dword [rsp + 0x30], 0x4001c
mov qword [rsp + 0x28], rax
lea rdx, str..pipe14579667_532A_42C2_9200_FD0544E09B90
lea rax, [0x140098bb0]
xor r9d, r9d
mov r8d, r15d
mov qword [rsp + 0x20], rax
lea rcx, [rbp + 0x90]
call fcn.140006200
test eax, eax
je 0x14009a40f
lea rcx, [rbp + 0x90]
call fcn.140005220
test eax, eax
jne 0x14009a28d
mov eax, ebx
dec ebx
test eax, eax
jle 0x14009a273
mov ecx, 0x64
call qword [sym.imp.KERNEL32.dll_Sleep]
lea rcx, [rbp + 0x90]
call fcn.140005220
test eax, eax
je 0x14009a250
test ebx, ebx
jg 0x14009a28d
lea rdx, str.Unable_to_connect_IPC._n
mov ecx, 3
call fcn.14000c900
jmp 0x14009a40f
mov rcx, qword [0x14019f358]
test rcx, rcx
je 0x14009a2a4
mov edx, 0x1388
call qword [sym.imp.KERNEL32.dll_WaitForSingleObject]
mov eax, dword [0x140189568]
test eax, eax
jne 0x14009a2e9
cmp byte [rbp - 0x80], r14b
je 0x14009a2e9
lea rdx, [rbp - 0x80]
lea rcx, [rbp + 0x90]
call fcn.14009a990
lea rdx, [rbp - 0x80]
lea rcx, [rbp + 0x90]
call fcn.140009610
mov eax, dword [0x140189568]
cmp dword [rsp + 0x78], r14d
cmovne eax, r15d
mov dword [0x140189568], eax
mov rcx, qword [rsp + 0x70]
test rcx, rcx
je 0x14009a3b2
test eax, eax
jne 0x14009a3b2
movabs rbx, 0x100000601
nop dword [rax]
mov r9d, 0x101
lea r8, [rbp + 0x2e0]
lea rdx, str.____n_s
call fcn.140003c60
cmp eax, r15d
jne 0x14009a3b2
mov edx, 0x101
lea rcx, [rbp + 0x2e0]
call fcn.14000d820
lea ecx, [rax + 1]
cmp ecx, 4
jb 0x14009a379
mov r8d, 3
lea rdx, [0x1401459dc]
lea rcx, [rbp + 0x2e0]
call fcn.140003280
test eax, eax
jne 0x14009a379
movzx eax, byte [rbp + 0x2e3]
cmp al, 0x20
ja 0x14009a379
bt rbx, rax
jb 0x14009a39f
lea rdx, [rbp + 0x2e0]
lea rcx, [rbp + 0x90]
call fcn.14009a990
lea rdx, [rbp + 0x2e0]
lea rcx, [rbp + 0x90]
call fcn.140009610
cmp dword [0x140189568], r14d
jne 0x14009a3b2
mov rcx, qword [rsp + 0x70]
jmp 0x14009a310
mov qword [rsp + 0x28], r14
lea r9, [rbp + 0x90]
lea r8, [0x140098d40]
mov dword [rsp + 0x20], r14d
xor edx, edx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_CreateThread]
mov qword [rsp + 0x48], rax
test rax, rax
jne 0x14009a3ef
lea rdx, str.Unable_to_create_IPC_thread._n
lea ecx, [rax + 3]
call fcn.14000c900
jmp 0x14009a40f
mov rax, qword [rsp + 0x58]
lea rdx, [rsp + 0x48]
xor r8d, r8d
mov qword [rsp + 0x50], rax
or r9d, 0xffffffff
lea ecx, [r8 + 2]
call qword [sym.imp.KERNEL32.dll_WaitForMultipleObjects]
mov rcx, qword [rsp + 0x58]
test rcx, rcx
je 0x14009a45f
mov edx, 0x1388
call qword [sym.imp.KERNEL32.dll_WaitForSingleObject]
mov rcx, qword [rsp + 0x58]
lea rdx, [rsp + 0x44]
call qword [sym.imp.KERNEL32.dll_GetExitCodeProcess]
test eax, eax
je 0x14009a454
cmp dword [rsp + 0x44], 0x103
jne 0x14009a44f
mov rcx, qword [rsp + 0x58]
xor edx, edx
call qword [sym.imp.KERNEL32.dll_TerminateProcess]
mov dword [rsp + 0x44], r14d
mov rcx, qword [rsp + 0x58]
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov rcx, qword [rsp + 0x60]
test rcx, rcx
je 0x14009a46f
call qword [sym.imp.KERNEL32.dll_CloseHandle]
cmp qword [rsp + 0x48], r14
je 0x14009a4bf
mov dword [0x140189568], r15d
call fcn.14009aad0
mov rcx, qword [rsp + 0x48]
mov edx, 0x1388
call qword [sym.imp.KERNEL32.dll_WaitForSingleObject]
mov rcx, qword [rsp + 0x48]
lea rdx, [rsp + 0x40]
call qword [sym.imp.KERNEL32.dll_GetExitCodeThread]
mov ecx, dword [rsp + 0x40]
mov edx, 0x3eb
test eax, eax
cmove ecx, edx
mov dword [rsp + 0x40], ecx
mov rcx, qword [rsp + 0x48]
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov rax, qword [0x14019f358]
test rax, rax
je 0x14009a4d4
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_CloseHandle]
lea rcx, [rbp + 0x90]
call fcn.1400061a0
mov rcx, qword [0x14019f3e0]
test rcx, rcx
je 0x14009a4f9
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov qword [0x14019f3e0], r14
mov rcx, qword [rsp + 0x70]
test rcx, rcx
je 0x14009a508
call fcn.140009ff0
mov ebx, dword [rsp + 0x40]
test ebx, ebx
cmove ebx, dword [rsp + 0x44]
cmp ebx, 0x3ea
jne 0x14009a520
call fcn.14000e180
mov eax, ebx
mov rcx, qword [rbp + 0x3f0]
xor rcx, rsp
call fcn.14000d260
lea r11, [rsp + 0x500]
mov rbx, qword [r11 + 0x20]
mov rsi, qword [r11 + 0x30]
mov rdi, qword [r11 + 0x38]
mov rsp, r11
pop r15
pop r14
pop rbp
ret