Function at 0x1400e352e
Capabilities:
Create thread

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x48
mov r14, rdx
mov rsi, rcx
mov rbx, qword [rsp + 0xd8]
mov r12d, dword [rsp + 0xb8]
mov eax, dword [rsp + 0xc0]
mov rcx, qword [rsp + 0xb0]
mov rdx, qword [0x14030f948]
xor rdx, rsp
mov qword [rsp + 0x40], rdx
mov ebp, 1
lock xadd dword [0x140349488], ebp
mov qword [rsi], r8
mov qword [rsi + 8], r9
mov qword [rsi + 0x10], rcx
xorps xmm0, xmm0
movups xmmword [rsi + 0x68], xmm0
movups xmmword [rsi + 0x78], xmm0
xor ecx, ecx
mov qword [rsi + 0x88], rcx
mov dword [rsi + 0x90], eax
movups xmmword [rsi + 0x98], xmm0
mov dword [rsi + 0xa8], r12d
movups xmmword [rsi + 0xb0], xmm0
movups xmmword [rsi + 0xc0], xmm0
mov byte [rsi + 0xd0], 0
mov dword [rsi + 0x110], ecx
movups xmmword [rsi + 0x100], xmm0
movups xmmword [rsi + 0x118], xmm0
mov dword [rsi + 0x127], ecx
mov qword [rsp + 0x38], rcx
test rbx, rbx
jne 0x1400e3653
mov r15, qword [rsp + 0xe0]
mov rdi, qword [rsp + 0xc8]
test rdi, rdi
je 0x1400e3624
mov ecx, 0x368
call fcn.14018360c
mov rbx, rax
mov r8d, dword [rsi + 0x90]
mov rcx, rax
mov rdx, rdi
mov r9, r15
call fcn.1401285ec
jmp 0x1400e3653
mov rdi, qword [rsp + 0xd0]
test rdi, rdi
je 0x1400e3660
mov ecx, 0x368
call fcn.14018360c
mov rbx, rax
mov r8d, dword [rsi + 0x90]
mov rcx, rax
mov rdx, rdi
mov r9, r15
call fcn.1401286de
lea rcx, [rsp + 0x38]
mov rdx, rbx
call fcn.1400e398c
mov rcx, qword [rsp + 0x38]
test rcx, rcx
je 0x1400e368a
call fcn.14012877a
test al, al
je 0x1400e368a
lea rcx, [rsi + 0x18]
mov rdx, qword [rsp + 0x38]
mov qword [rsp + 0x38], 0
call fcn.1400e398c
cmp qword [rsi + 0x18], 0
jne 0x1400e3785
lea rcx, [rsi + 0xd8]
call qword [sym.imp.KERNEL32.dll_InitializeCriticalSection]
mov rdi, qword [sym.imp.KERNEL32.dll_CreateSemaphoreW]
xor ecx, ecx
xor edx, edx
mov r8d, 1
xor r9d, r9d
call rdi
mov qword [rsi + 0x100], rax
xor ecx, ecx
xor edx, edx
mov r8d, 1
xor r9d, r9d
call rdi
mov qword [rsi + 0x108], rax
test rax, rax
je 0x1400e3717
lea rax, [rsi + 0x100]
cmp qword [rax], 0
je 0x1400e3717
lea rax, [rsp + 0x34]
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], 0
lea r8, [0x1400e39d0]
mov edx, 0x10000
xor ecx, ecx
mov r9, rsi
call qword [sym.imp.KERNEL32.dll_CreateThread]
mov qword [rsi + 0xc8], rax
lea rdi, [rsi + 0x98]
lea rcx, str.dbghelp.dll
call qword [sym.imp.KERNEL32.dll_LoadLibraryW]
mov qword [rsi + 0x80], rax
test rax, rax
je 0x1400e374e
lea rdx, str.MiniDumpWriteDump
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [rsi + 0x88], rax
lea rcx, str.rpcrt4.dll
call qword [sym.imp.KERNEL32.dll_LoadLibraryW]
mov qword [rdi], rax
test rax, rax
je 0x1400e377a
lea rdx, str.UuidCreate
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [rsi + 0xa0], rax
mov rcx, rsi
mov rdx, r14
call fcn.1400e3a44
lea rdi, [rsi + 0x130]
mov ecx, 0x20
call fcn.14018360c
mov qword [rax + 0x10], 0
xor ecx, ecx
mov dword [rax + 0x18], ecx
mov qword [rax + 8], rdi
mov rcx, qword [rsi + 0x130]
mov qword [rax], rcx
mov qword [rcx + 8], rax
mov qword [rsi + 0x130], rax
inc qword [rsi + 0x140]
test ebp, ebp
jne 0x1400e37d4
lea rcx, [0x140349460]
call qword [sym.imp.KERNEL32.dll_InitializeCriticalSection]
test r12d, r12d
je 0x1400e3945
lea rcx, [0x140349460]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov rdi, qword [0x140349450]
test rdi, rdi
jne 0x1400e3818
mov ecx, 0x18
call fcn.14018360c
mov rdi, rax
xorps xmm0, xmm0
movups xmmword [rax], xmm0
mov qword [rax + 0x10], 0
mov qword [0x140349450], rax
mov rbx, qword [rdi + 8]
mov rbp, qword [rdi + 0x10]
cmp rbx, rbp
jae 0x1400e3835
mov qword [rbx], rsi
add rbx, 8
mov qword [rdi + 8], rbx
jmp 0x1400e38e9
mov r14, qword [rdi]
sub rbx, r14
mov r13, rbx
sar r13, 3
lea rcx, [r13 + 1]
mov rax, rcx
shr rax, 0x3d
jne 0x1400e397e
movabs rax, 0x1fffffffffffffff
sub rbp, r14
mov rdx, rbp
sar rdx, 3
sar rbp, 2
cmp rbp, rcx
cmovb rbp, rcx
movabs rcx, 0xfffffffffffffff
cmp rdx, rcx
cmovae rbp, rax
test rbp, rbp
je 0x1400e38a3
cmp rbp, rax
ja 0x1400e3986
lea rcx, [rbp*8]
call fcn.14018360c
mov r15, rax
jmp 0x1400e38a6
xor r15d, r15d
lea r12, [r15 + rbp*8]
lea rbp, [r15 + r13*8]
add rbp, 8
mov qword [rbp - 8], rsi
test rbx, rbx
jle 0x1400e38c9
mov rcx, r15
mov rdx, r14
mov r8, rbx
call fcn.140186330
mov qword [rdi], r15
mov qword [rdi + 8], rbp
mov qword [rdi + 0x10], r12
test r14, r14
mov r12d, dword [rsp + 0xb8]
je 0x1400e38e9
mov rcx, r14
call fcn.140183668
test r12b, 1
je 0x1400e3906
lea rdi, [rsi + 0xb0]
lea rcx, [0x1400e3a80]
call qword [sym.imp.KERNEL32.dll_SetUnhandledExceptionFilter]
mov qword [rdi], rax
test r12b, 2
je 0x1400e391f
lea rcx, [0x1400e3b60]
call fcn.140197708
mov qword [rsi + 0xb8], rax
test r12b, 4
je 0x1400e3938
lea rcx, [0x1400e3d10]
call fcn.140186160
mov qword [rsi + 0xc0], rax
lea rcx, [0x140349460]
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov rsi, qword [rsp + 0x38]
test rsi, rsi
je 0x1400e395f
mov rcx, rsi
call fcn.14012872c
mov rcx, rsi
call fcn.140183668
mov rcx, qword [rsp + 0x40]
xor rcx, rsp
call fcn.140183a80
nop
add rsp, 0x48
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
mov rcx, rdi
call fcn.140066f9c
call fcn.140199d54
int3