Function at 0x14022a550
Capabilities:
Resume thread
Suspend thread

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x2e8
movaps xmmword [rsp + 0x2d0], xmm7
movaps xmmword [rsp + 0x2c0], xmm6
mov byte [rsp + 0x37], dl
mov rax, qword [0x14027c038]
xor rax, rsp
mov qword [rsp + 0x2b8], rax
mov qword [rsp + 0x38], rcx
mov r14, qword [rcx]
lea r15, [rsp + 0xf8]
mov dword [r15], 0xaaaaaaaa
mov ecx, 0x4000
call fcn.14018f6ac
mov rsi, rax
mov r12d, 0x4000
mov edi, reloc.WS2_32.dll_sendto
mov ebx, 0x1000
jmp 0x14022a5e6
mov r12d, dword [rsp + 0xf8]
add r12d, ebx
test rsi, rsi
je 0x14022a5d7
mov rcx, rsi
call fcn.14018f6b4
mov ecx, r12d
call fcn.14018f6ac
mov rsi, rax
dec edi
je 0x14022a640
mov ecx, 5
mov rdx, rsi
mov r8d, r12d
mov r9, r15
call fcn.14020c170
mov ebp, eax
cmp eax, 0xc0000023
je 0x14022a5bf
cmp ebp, 0xc0000004
je 0x14022a5bf
test ebp, ebp
js 0x14022a640
mov rcx, r14
call qword [sym.imp.KERNEL32.dll_GetProcessId]
mov ebp, eax
mov rbx, rsi
cmp dword [rbx + 0x50], ebp
je 0x14022a693
mov eax, dword [rbx]
test rax, rax
je 0x14022a62d
add rbx, rax
jne 0x14022a61c
mov ecx, 2
call fcn.140158c90
test al, al
je 0x14022a652
jmp 0x14022af7b
mov ecx, 2
call fcn.140158c90
test al, al
jne 0x14022a6e4
test rsi, rsi
je 0x14022a65f
mov rcx, rsi
call fcn.14018f6b4
mov rcx, qword [rsp + 0x2b8]
xor rcx, rsp
call fcn.140190b30
movaps xmm6, xmmword [rsp + 0x2c0]
movaps xmm7, xmmword [rsp + 0x2d0]
add rsp, 0x2e8
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
test rbx, rbx
je 0x14022a652
cmp dword [rbx + 4], 0
je 0x14022a652
movabs r12, 0xaaaaaaaaaaaaaaaa
lea r14, [rsp + 0x108]
mov rax, qword [rsp + 0x38]
lea rcx, [rax + 0x90]
mov qword [rsp + 0x40], rcx
add rax, 0x130
mov qword [rsp + 0x48], rax
lea rbp, [rbx + 0x128]
movaps xmm6, xmmword [0x14024afc0]
xorps xmm7, xmm7
xor edi, edi
jmp 0x14022a8bf
mov dword [rsp + 0x20], ebp
lea rdx, str....._third_partycrashpadcrashpad_snapshotwinprocess_reader_win.cc
lea rdi, [rsp + 0x170]
mov rcx, rdi
mov r8d, 0x5f
mov r9d, 2
call fcn.14020c510
lea rcx, [rsp + 0x180]
lea rdx, str.NtQuerySystemInformation
mov r8d, 0x18
call fcn.1401ca740
mov rcx, rdi
call fcn.14020c540
jmp 0x14022a652
call sub.KERNEL32.dll_GetLastError
mov dword [rsp + 0x20], eax
lea r15, [rsp + 0x170]
mov rcx, r15
lea rdx, str....._third_partycrashpadcrashpad_snapshotwinprocess_reader_win.cc
mov r8d, 0x9c
mov r9d, 2
call fcn.1401f5220
mov r8d, recvfrom
lea rcx, [rsp + 0x180]
lea rdx, [0x140268164]
call fcn.1401ca740
mov rcx, r15
call fcn.1401f52a0
jmp 0x14022a878
mov r15d, eax
mov ecx, 2
call fcn.140158c90
test al, al
je 0x14022a878
mov dword [rsp + 0x20], r15d
lea r15, [rsp + 0x170]
mov rcx, r15
lea rdx, str....._third_partycrashpadcrashpad_snapshotwinprocess_reader_win.cc
mov r8d, 0x1ab
mov r9d, 2
call fcn.14020c510
mov r8d, 0x18
lea rcx, [rsp + 0x180]
lea rdx, str.NtQueryInformationThread
call fcn.1401ca740
mov rcx, r15
call fcn.14020c540
jmp 0x14022a878
mov r15d, eax
mov ecx, 2
call fcn.140158c90
test al, al
je 0x14022a880
mov dword [rsp + 0x20], r15d
lea r15, [rsp + 0x170]
mov rcx, r15
lea rdx, str....._third_partycrashpadcrashpad_snapshotwinprocess_reader_win.cc
mov r8d, 0x80
mov r9d, 2
call fcn.14020c510
mov r8d, recvfrom
lea rcx, [rsp + 0x180]
lea rdx, str.NtOpenThread
call fcn.1401ca740
mov rcx, r15
call fcn.14020c540
jmp 0x14022a880
mov rcx, r13
call qword [sym.imp.KERNEL32.dll_SuspendThread]
cmp eax, 0xffffffff
jne 0x14022ad8c
mov ecx, 2
call fcn.140158c90
test al, al
movabs r12, 0xaaaaaaaaaaaaaaaa
jne 0x14022a732
mov rcx, r13
call fcn.1401078c0
cmp byte [rsp + 0x137], 0
jns 0x14022a897
mov rcx, qword [rsp + 0x120]
call fcn.14018f674
mov qword [rsp + 0x170], r14
lea rcx, [rsp + 0x170]
call fcn.14013eb70
inc rdi
mov eax, dword [rbx + 4]
add rbp, 0x50
cmp rdi, rax
jae 0x14022a652
movups xmmword [r14 + 0x58], xmm6
movups xmmword [r14 + 0x48], xmm6
movups xmmword [r14 + 0x38], xmm6
movups xmmword [r14 + 0x28], xmm6
movups xmmword [r14 + 0x18], xmm6
movups xmmword [r14 + 8], xmm6
movups xmmword [r14 - 8], xmm6
mov qword [rsp + 0xf8], 0
mov byte [rsp + 0x100], 0
xor ecx, ecx
mov dword [r14 + 0x60], ecx
movups xmmword [r14 + 0x50], xmm7
movups xmmword [r14 + 0x40], xmm7
movups xmmword [r14 + 0x30], xmm7
movups xmmword [r14 + 0x20], xmm7
movups xmmword [r14 + 0x10], xmm7
movups xmmword [r14], xmm7
mov rax, qword [rbp + 8]
mov qword [rsp + 0x138], rax
mov qword [rsp + 0xc0], r12
movaps xmmword [rsp + 0x80], xmm6
movaps xmmword [rsp + 0x90], xmm6
mov dword [rsp + 0x80], 0x30
lea rax, [rsp + 0x88]
mov dword [rax + 0x10], ecx
movups xmmword [rax], xmm7
movups xmmword [rax + 0x18], xmm7
lea rcx, [rsp + 0xc0]
mov edx, 0x4a
lea r8, [rsp + 0x80]
mov r9, rbp
call fcn.14020c0d0
test eax, eax
js 0x14022a7e9
mov r13, qword [rsp + 0xc0]
test r13, r13
je 0x14022a880
mov rax, qword [rsp + 0x38]
mov r12b, byte [rax + 0x160]
mov rax, qword [rsp + 0x138]
mov rcx, qword gs:[0x30]
cmp rax, qword [rcx + 0x48]
jne 0x14022a84a
mov dword [rsp + 0x160], 0
mov edx, 0x4d0
mov rcx, r14
call fcn.14013c120
mov byte [rsp + 0x100], 1
mov rcx, qword [rsp + 0x108]
add rcx, qword [rsp + 0xf8]
call fcn.14018fce0
movabs r12, 0xaaaaaaaaaaaaaaaa
mov dword [rsp + 0x164], 0x20
mov eax, dword [rbp + 0x10]
mov dword [rsp + 0x168], eax
movaps xmmword [rsp + 0xe0], xmm6
movaps xmmword [rsp + 0xd0], xmm6
movaps xmmword [rsp + 0xc0], xmm6
mov qword [rsp + 0x20], 0
mov rcx, r13
xor edx, edx
lea r8, [rsp + 0xc0]
mov r9d, 0x30
call fcn.14020c210
test eax, eax
js 0x14022a785
mov qword [rsp + 0xb0], r12
movaps xmmword [rsp + 0xa0], xmm6
movaps xmmword [rsp + 0x90], xmm6
movaps xmmword [rsp + 0x80], xmm6
mov rdx, qword [rsp + 0xc8]
mov qword [rsp + 0x140], rdx
mov qword [rsp + 0x148], 0x1788
mov r8d, 0x38
mov rcx, qword [rsp + 0x40]
lea r9, [rsp + 0x80]
call fcn.140225fc0
test al, al
je 0x14022ab5a
cmp byte [rsp + 0x37], 0
jne 0x14022aac1
mov r15, qword [rsp + 0x88]
mov r12, qword [rsp + 0x90]
jmp 0x14022ab24
movups xmmword [rsp + 0x17c], xmm6
movaps xmmword [rsp + 0x170], xmm6
mov rdx, qword [rsp + 0x80]
mov qword [rsp + 0x140], rdx
mov qword [rsp + 0x148], 0xf98
mov r8d, 0x1c
mov rcx, qword [rsp + 0x40]
lea r9, [rsp + 0x170]
call fcn.140225fc0
mov r15d, dword [rsp + 0x174]
mov r12d, dword [rsp + 0x178]
test al, al
mov eax, 0
cmove r15, rax
cmove r12, rax
mov qword [rsp + 0x150], r12
mov rax, r15
sub rax, r12
jae 0x14022ab48
mov ecx, 2
call fcn.140158c90
test al, al
jne 0x14022ad15
xor eax, eax
mov qword [rsp + 0x158], rax
movabs r12, 0xaaaaaaaaaaaaaaaa
mov eax, dword [0x1402983c0]
mov ecx, dword [0x14028c168]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
cmp eax, dword [rcx + 4]
jg 0x14022af34
mov rax, qword [0x1402983b8]
test rax, rax
je 0x14022ac14
mov qword [rsp + 0x78], r12
mov rcx, r13
lea rdx, [rsp + 0x78]
call qword [0x1402a8008]
test eax, eax
js 0x14022ac65
mov r15, qword [rsp + 0x78]
mov qword [rsp + 0x68], r15
test r15, r15
je 0x14022af08
mov rcx, r15
call fcn.1401b0dc4
mov qword [rsp + 0x70], rax
lea rcx, [rsp + 0x170]
lea rdx, [rsp + 0x68]
call fcn.140151070
cmp byte [rsp + 0x137], 0
jns 0x14022abf3
mov rcx, qword [rsp + 0x120]
call fcn.14018f674
mov rax, qword [rsp + 0x180]
mov qword [r14 + 0x28], rax
movups xmm0, xmmword [rsp + 0x170]
movups xmmword [r14 + 0x18], xmm0
mov rcx, r15
call fcn.1401212e0
mov rax, qword [rsp + 0x38]
mov r15, qword [rax + 0x138]
cmp r15, qword [rax + 0x140]
jae 0x14022ac3f
mov rcx, r15
lea rdx, [rsp + 0xf8]
call fcn.14012a0f0
add r15, 0x78
jmp 0x14022ac54
mov rcx, qword [rsp + 0x48]
lea rdx, [rsp + 0xf8]
call fcn.140129fb0
mov r15, rax
mov rax, qword [rsp + 0x38]
mov qword [rax + 0x138], r15
jmp 0x14022a878
mov r15d, eax
mov ecx, 1
call fcn.140158c90
test al, al
je 0x14022ac14
lea rcx, [rsp + 0x170]
lea rdx, str....._third_partycrashpadcrashpad_snapshotwinprocess_reader_win.cc
mov r8d, 0x1dc
mov r9d, 1
call fcn.1400dada0
mov r8d, reloc.WS2_32.dll_shutdown
lea rcx, [rsp + 0x180]
lea rdx, str.GetThreadDescription:
call fcn.1401ca740
mov r12, rax
lea rcx, [rsp + 0x50]
mov edx, r15d
call fcn.1401f50c0
movzx r8d, byte [rsp + 0x67]
test r8b, r8b
jns 0x14022acd7
mov r8, qword [rsp + 0x58]
mov rdx, qword [rsp + 0x50]
jmp 0x14022ace0
and r8d, 0x7f
lea rdx, [rsp + 0x50]
mov rcx, r12
call fcn.1401ca740
cmp byte [rsp + 0x67], 0
jns 0x14022acf9
mov rcx, qword [rsp + 0x50]
call fcn.14018f674
lea rcx, [rsp + 0x170]
call fcn.1400db3f0
movabs r12, 0xaaaaaaaaaaaaaaaa
jmp 0x14022ac14
lea rcx, [rsp + 0x170]
lea rdx, str....._third_partycrashpadcrashpad_snapshotwinprocess_reader_win.cc
mov r8d, 0x1cb
mov r9d, 2
call fcn.1400dada0
mov r8d, shutdown
lea rcx, [rsp + 0x180]
lea rdx, str.invalid_stack_range:
call fcn.1401ca740
mov rcx, rax
mov rdx, r15
call fcn.1400b33b0
mov r8d, 3
mov rcx, rax
lea rdx, [0x140253326]
call fcn.1401ca740
mov rcx, rax
mov rdx, r12
call fcn.1400b33b0
lea rcx, [rsp + 0x170]
call fcn.1400db3f0
jmp 0x14022ab46
mov r15d, eax
test r12b, r12b
je 0x14022ae2f
test r15d, r15d
jne 0x14022ae2f
mov ecx, 1
call fcn.140158c90
xor r15d, r15d
test al, al
je 0x14022ae36
lea r12, [rsp + 0x170]
mov rcx, r12
lea rdx, str....._third_partycrashpadcrashpad_snapshotwinprocess_reader_win.cc
mov r8d, 0xa1
mov r9d, 1
call fcn.1400dada0
mov r8d, 7
lea rcx, [rsp + 0x180]
lea rdx, str.Thread
call fcn.1401ca740
mov rdx, qword [rsp + 0x138]
mov rcx, rax
call fcn.1400b33b0
mov r8d, 0x34
mov rcx, rax
lea rdx, str._should_be_suspended__but_previous_suspend_count_is
call fcn.1401ca740
xor r15d, r15d
mov rcx, rax
xor edx, edx
call fcn.1400b2f30
mov rcx, r12
call fcn.1400db3f0
jmp 0x14022ae36
movzx eax, r12b
sub r15d, eax
mov dword [rsp + 0x160], r15d
cmp byte [rsp + 0x37], 0
movabs r12, 0xaaaaaaaaaaaaaaaa
jne 0x14022ae87
mov ecx, 0x800
call fcn.140233c10
test al, al
jne 0x14022ae6f
lea rcx, [rsp + 0xf8]
mov rdx, r13
call fcn.140229d70
jmp 0x14022ae97
mov r8d, 0x800
lea rcx, [rsp + 0xf8]
mov rdx, r13
call fcn.140229f30
jmp 0x14022ae97
lea rcx, [rsp + 0xf8]
mov rdx, r13
call fcn.140229e50
test al, al
je 0x14022a878
mov rcx, r13
call qword [sym.imp.KERNEL32.dll_ResumeThread]
test eax, eax
jne 0x14022a9f6
mov ecx, 2
call fcn.140158c90
test al, al
je 0x14022a878
call sub.KERNEL32.dll_GetLastError
mov dword [rsp + 0x20], eax
lea rdx, str....._third_partycrashpadcrashpad_snapshotwinprocess_reader_win.cc
lea r15, [rsp + 0x170]
mov rcx, r15
mov r8d, 0xc0
mov r9d, 2
call fcn.1401f5220
lea rdx, [0x1402681af]
mov r8d, recvfrom
lea rcx, [rsp + 0x180]
jmp 0x14022a773
lea rax, str.null_pointer_passed_to_non_null_argument_of_char_traits_..._::length
mov qword [rsp + 0x20], rax
lea rcx, str._s:_d:_assertion__s_failed:__s_n
lea rdx, str....._third_partylibc_srcinclude_string_view
lea r9, str.__s___nullptr
mov r8d, 0x109
call fcn.1401d5d40
lea rcx, [0x1402983c0]
call fcn.14018f790
cmp dword [0x1402983c0], 0xffffffff
jne 0x14022ab7f
lea rcx, [0x140253442]
lea rdx, str.::GetThreadDescription
xor r8d, r8d
call fcn.140108680
mov qword [0x1402983b8], rax
lea rcx, [0x1402983c0]
call fcn.14018f828
jmp 0x14022ab7f
lea rdx, str....._third_partycrashpadcrashpad_snapshotwinprocess_reader_win.cc
lea rdi, [rsp + 0x170]
mov rcx, rdi
mov r8d, WSAStartup
mov r9d, 2
call fcn.1400dada0
lea rcx, [rsp + 0x180]
lea rdx, str.process
mov r8d, 8
call fcn.1401ca740
mov rcx, rax
mov edx, ebp
call fcn.1400b2f30
lea rdx, str._not_found
mov r8d, 0xa
mov rcx, rax
call fcn.1401ca740
mov rcx, rdi
call fcn.1400db3f0
jmp 0x14022a652