Function at 0x14003388c
Capabilities:
Create thread

Disassembly:
mov qword [rsp + 0x18], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
mov rbp, rsp
sub rsp, 0x70
mov rax, qword [0x14012a418]
xor rax, rsp
mov qword [rbp - 0x10], rax
mov r14, rdx
mov rdi, rcx
mov rsi, qword [rbp + 0x78]
mov r15, qword [rbp + 0x80]
mov r13, qword [rbp + 0x90]
mov eax, 1
lock xadd dword [0x14012d86c], eax
inc eax
mov dword [rbp - 0x38], eax
mov qword [rcx], r8
mov qword [rcx + 8], r9
mov rax, qword [rbp + 0x60]
mov qword [rcx + 0x10], rax
xor ebx, ebx
mov qword [rcx + 0x80], rbx
mov qword [rcx + 0x88], rbx
mov qword [rcx + 0x90], rbx
mov qword [rcx + 0x98], rbx
mov qword [rcx + 0xa0], rbx
mov eax, dword [rbp + 0x70]
mov dword [rcx + 0xa8], eax
mov qword [rcx + 0xb0], rbx
mov qword [rcx + 0xb8], rbx
mov r12d, dword [rbp + 0x68]
mov dword [rcx + 0xc0], r12d
mov qword [rcx + 0xc8], rbx
mov qword [rcx + 0xd0], rbx
mov qword [rcx + 0xd8], rbx
mov qword [rcx + 0xe0], rbx
mov byte [rcx + 0xe8], bl
mov qword [rcx + 0x118], rbx
mov qword [rcx + 0x120], rbx
mov dword [rcx + 0x128], ebx
mov qword [rcx + 0x130], rbx
mov qword [rcx + 0x138], rbx
mov word [rcx + 0x140], bx
mov byte [rcx + 0x142], bl
mov qword [rbp - 0x40], rbx
mov ecx, 0x370
mov rax, qword [rbp + 0x88]
test rax, rax
jne 0x1400339f0
test rsi, rsi
je 0x1400339c2
call fcn.14006b838
mov qword [rbp - 0x28], rax
test rax, rax
je 0x1400339c0
mov r9, r13
mov r8d, dword [rdi + 0xa8]
mov rdx, rsi
mov rcx, rax
call fcn.140034788
nop
jmp 0x1400339eb
test r15, r15
je 0x140033a38
call fcn.14006b838
mov qword [rbp - 0x28], rax
test rax, rax
je 0x1400339eb
mov r9, r13
mov r8d, dword [rdi + 0xa8]
mov rdx, r15
mov rcx, rax
call fcn.140034708
nop
test rax, rax
je 0x140033a38
mov rbx, rax
mov qword [rbp - 0x40], rax
test rax, rax
je 0x140033a38
mov rcx, rax
call fcn.140034a34
test al, al
je 0x140033a38
mov r15, rbx
xor ebx, ebx
mov qword [rbp - 0x40], rbx
mov rsi, qword [rdi + 0x18]
cmp r15, rsi
je 0x140033a38
test rsi, rsi
je 0x140033a34
mov rcx, rsi
call fcn.140034820
mov edx, 0x370
mov rcx, rsi
call fcn.14006b874
mov qword [rdi + 0x18], r15
cmp qword [rdi + 0x18], 0
jne 0x140033b56
lea rcx, [rdi + 0xf0]
call qword [sym.imp.KERNEL32.dll_InitializeCriticalSection]
xor r9d, r9d
xor edx, edx
xor ecx, ecx
lea r8d, [r9 + 1]
call qword [sym.imp.KERNEL32.dll_CreateSemaphoreW]
mov qword [rdi + 0x118], rax
xor r9d, r9d
xor edx, edx
xor ecx, ecx
lea r8d, [r9 + 1]
call qword [sym.imp.KERNEL32.dll_CreateSemaphoreW]
mov qword [rdi + 0x120], rax
test rax, rax
je 0x140033abb
cmp qword [rdi + 0x118], 0
je 0x140033abb
lea rax, [rbp - 0x30]
mov qword [rsp + 0x28], rax
and dword [rsp + 0x20], 0
mov r9, rdi
lea r8, [0x140033420]
mov edx, 0x10000
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_CreateThread]
mov qword [rdi + 0xe0], rax
lea rcx, [0x1400fcb20]
call qword [sym.imp.KERNEL32.dll_LoadLibraryW]
mov qword [rdi + 0x98], rax
test rax, rax
je 0x140033aeb
lea rdx, str.MiniDumpWriteDump
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [rdi + 0xa0], rax
lea rcx, str.rpcrt4.dll
call qword [sym.imp.KERNEL32.dll_LoadLibraryW]
mov qword [rdi + 0xb0], rax
test rax, rax
je 0x140033b1b
lea rdx, str.UuidCreate
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [rdi + 0xb8], rax
lea rsi, [rdi + 0x20]
cmp rsi, r14
je 0x140033b3d
mov r8, qword [r14 + 0x10]
cmp qword [r14 + 0x18], 8
jb 0x140033b32
mov r14, qword [r14]
mov rdx, r14
mov rcx, rsi
call fcn.140002c20
cmp qword [rsi + 0x18], 8
jb 0x140033b47
mov rsi, qword [rsi]
mov qword [rdi + 0x80], rsi
mov rcx, rdi
call fcn.140033d9c
and qword [rbp - 0x20], 0
and dword [rbp - 0x18], 0
lea rcx, [rdi + 0x148]
lea r8, [rbp - 0x20]
mov rdx, qword [rcx]
call fcn.140032a98
lea rsi, [0x14012d870]
cmp dword [rbp - 0x38], 1
jne 0x140033b88
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_InitializeCriticalSection]
test r12d, r12d
je 0x140033c42
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov rax, qword [0x14012d860]
test rax, rax
jne 0x140033bc8
lea ecx, [rax + 0x18]
call fcn.14006b838
test rax, rax
je 0x140033bc1
and qword [rax], 0
and qword [rax + 8], 0
and qword [rax + 0x10], 0
mov qword [0x14012d860], rax
mov qword [rbp - 0x30], rdi
mov rdx, qword [rax + 8]
cmp rdx, qword [rax + 0x10]
je 0x140033be0
mov qword [rdx], rdi
add qword [rax + 8], 8
jmp 0x140033bec
lea r8, [rbp - 0x30]
mov rcx, rax
call fcn.140032b10
test r12b, 1
je 0x140033c06
lea rcx, [0x140033488]
call qword [sym.imp.KERNEL32.dll_SetUnhandledExceptionFilter]
mov qword [rdi + 0xc8], rax
test r12b, 2
je 0x140033c1f
lea rcx, [0x140033588]
call fcn.14007d66c
mov qword [rdi + 0xd0], rax
test r12b, 4
je 0x140033c38
lea rcx, [0x140033748]
call fcn.14006f2a8
mov qword [rdi + 0xd8], rax
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
nop
test rbx, rbx
je 0x140033c5c
mov rcx, rbx
call fcn.140034820
mov edx, 0x370
mov rcx, rbx
call fcn.14006b874
mov rcx, qword [rbp - 0x10]
xor rcx, rsp
call fcn.14006b990
mov rbx, qword [rsp + 0xc0]
add rsp, 0x70
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret