Function at 0x1401354e0
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 r13d, edx
mov rax, qword [0x1401fdbb8]
xor rax, rsp
mov qword [rsp + 0x2b8], rax
mov qword [rsp + 0x40], rcx
mov r14, qword [rcx]
mov ecx, 0x4000
call fcn.140173d2c
mov rsi, rax
mov dword [rsp + 0x108], 0xaaaaaaaa
mov r12d, 0x4000
mov edi, 0x14
lea r15, [rsp + 0x108]
mov ebx, 0x1000
jmp 0x140135573
mov ecx, r12d
call fcn.140173d2c
mov rsi, rax
dec edi
je 0x14013565d
mov ecx, 5
mov rdx, rsi
mov r8d, r12d
mov r9, r15
call fcn.140123520
mov ebp, eax
cmp eax, 0xc0000023
je 0x140135597
cmp ebp, 0xc0000004
jne 0x1401355b1
mov r12d, dword [rsp + 0x108]
add r12d, ebx
test rsi, rsi
je 0x140135560
mov rcx, rsi
call fcn.140173d34
jmp 0x140135560
test ebp, ebp
js 0x14013565d
mov rcx, r14
call qword [sym.imp.KERNEL32.dll_GetProcessId]
mov ebp, eax
mov rdi, rsi
nop word [rax + rax]
cmp dword [rdi + 0x50], ebp
je 0x1401356f5
mov eax, dword [rdi]
test rax, rax
je 0x1401355e5
add rdi, rax
jne 0x1401355d0
mov ecx, 2
call fcn.140060510
test al, al
je 0x1401356b4
lea rdx, str....._third_partycrashpadcrashpad_snapshotwinprocess_reader_win.cc
lea rdi, [rsp + 0x180]
mov rcx, rdi
mov r8d, 0x71
mov r9d, 2
call fcn.1400605e0
lea rcx, [rsp + 0x190]
lea rdx, str.process
mov r8d, 8
call fcn.140001af0
mov rcx, rax
mov edx, ebp
call fcn.140017310
lea rdx, str._not_found
mov r8d, 0xa
mov rcx, rax
call fcn.140001af0
mov rcx, rdi
call fcn.140060b40
jmp 0x1401356b4
mov ecx, 2
call fcn.140060510
test al, al
je 0x1401356b4
mov dword [rsp + 0x20], ebp
lea rdx, str....._third_partycrashpadcrashpad_snapshotwinprocess_reader_win.cc
lea rdi, [rsp + 0x180]
mov rcx, rdi
mov r8d, 0x5f
mov r9d, 2
call fcn.1401238c0
lea rcx, [rsp + 0x190]
lea rdx, str.NtQuerySystemInformation
mov r8d, 0x18
call fcn.140001af0
mov rcx, rdi
call fcn.1401238f0
test rsi, rsi
je 0x1401356c1
mov rcx, rsi
call fcn.140173d34
mov rcx, qword [rsp + 0x2b8]
xor rcx, rsp
call fcn.140174050
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 rdi, rdi
je 0x1401356b4
cmp dword [rdi + 4], 0
je 0x1401356b4
mov byte [rsp + 0x37], r13b
movabs r15, 0xaaaaaaaaaaaaaaaa
lea r14, [rsp + 0x118]
lea rbp, [rsp + 0x98]
mov rax, qword [rsp + 0x40]
lea rcx, [rax + 0x90]
mov qword [rsp + 0x48], rcx
add rax, 0x130
mov qword [rsp + 0x58], rax
lea r13, [rdi + 0x128]
movaps xmm6, xmmword [section..rdata]
xorps xmm7, xmm7
xor r12d, r12d
jmp 0x140135773
inc r12
mov eax, dword [rdi + 4]
add r13, 0x50
cmp r12, rax
jae 0x1401356b4
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 + 0x108], 0
mov byte [rsp + 0x110], 0
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 dword [r14 + 0x60], 0
mov rax, qword [r13 + 8]
mov qword [rsp + 0x148], rax
mov qword [rsp + 0xd0], r15
movaps xmmword [rsp + 0x90], xmm6
movaps xmmword [rsp + 0xa0], xmm6
mov dword [rsp + 0x90], 0x30
movups xmmword [rbp], xmm7
mov dword [rbp + 0x10], 0
movups xmmword [rbp + 0x18], xmm7
lea rcx, [rsp + 0xd0]
mov edx, 0x4a
lea r8, [rsp + 0x90]
mov r9, r13
call fcn.140123480
test eax, eax
js 0x1401358c0
mov rax, qword [rsp + 0xd0]
mov qword [rsp + 0x38], rax
test rax, rax
je 0x140136077
mov rax, qword [rsp + 0x40]
movzx ebx, byte [rax + 0x160]
mov rax, qword [rsp + 0x148]
mov rcx, qword gs:[0x30]
cmp rax, qword [rcx + 0x48]
jne 0x140135922
mov dword [rsp + 0x170], 0
mov rcx, qword [rsp + 0x118]
mov rax, qword [rsp + 0x120]
mov r8, rax
sub r8, rcx
cmp r8, 0x4cf
ja 0x1401359d8
mov edx, 0x4d0
sub rdx, r8
mov rcx, r14
call fcn.140002da0
mov rcx, qword [rsp + 0x118]
jmp 0x140135a02
mov ebx, eax
mov ecx, 2
call fcn.140060510
test al, al
je 0x140136077
mov dword [rsp + 0x20], ebx
lea rbx, [rsp + 0x180]
mov rcx, rbx
lea rdx, str....._third_partycrashpadcrashpad_snapshotwinprocess_reader_win.cc
mov r8d, 0x80
mov r9d, 2
call fcn.1401238c0
mov r8d, 0xc
lea rcx, [rsp + 0x190]
lea rdx, str.NtOpenThread
call fcn.140001af0
mov rcx, rbx
call fcn.1401238f0
jmp 0x140136077
mov rcx, qword [rsp + 0x38]
call qword [sym.imp.KERNEL32.dll_SuspendThread]
cmp eax, 0xffffffff
je 0x140135ba0
mov ebp, eax
mov eax, ebx
xor al, 1
test ebp, ebp
setne cl
or cl, al
jne 0x140135c00
mov ecx, 1
call fcn.140060510
xor ebp, ebp
test al, al
je 0x140135c05
lea rbx, [rsp + 0x180]
mov rcx, rbx
lea rdx, str....._third_partycrashpadcrashpad_snapshotwinprocess_reader_win.cc
mov r8d, 0xa1
mov r9d, 1
call fcn.1400605e0
mov r8d, 7
lea rcx, [rsp + 0x190]
lea rdx, str.Thread
call fcn.140001af0
mov rdx, qword [rsp + 0x148]
mov rcx, rax
call fcn.1400178f0
mov r8d, 0x34
mov rcx, rax
lea rdx, str._should_be_suspended__but_previous_suspend_count_is
call fcn.140001af0
xor ebp, ebp
mov rcx, rax
xor edx, edx
call fcn.140017310
mov rcx, rbx
call fcn.140060b40
jmp 0x140135c05
cmp r8, 0x4d0
je 0x140135a02
lea rdx, [rcx + 0x4d0]
mov r8, rax
sub r8, rdx
dec rax
cmp r8, rax
ja 0x140136134
mov qword [rsp + 0x120], rdx
mov byte [rsp + 0x110], 1
add rcx, qword [rsp + 0x108]
call fcn.140175140
mov dword [rsp + 0x174], 0x20
mov eax, dword [r13 + 0x10]
mov dword [rsp + 0x178], eax
movaps xmmword [rsp + 0xf0], xmm6
movaps xmmword [rsp + 0xe0], xmm6
movaps xmmword [rsp + 0xd0], xmm6
mov qword [rsp + 0x20], 0
mov rcx, qword [rsp + 0x38]
xor edx, edx
lea r8, [rsp + 0xd0]
mov r9d, 0x30
call fcn.1401235c0
test eax, eax
js 0x140135b3e
mov qword [rsp + 0xc0], r15
movaps xmmword [rsp + 0xb0], xmm6
movaps xmmword [rsp + 0xa0], xmm6
movaps xmmword [rsp + 0x90], xmm6
mov rdx, qword [rsp + 0xd8]
mov qword [rsp + 0x150], rdx
mov qword [rsp + 0x158], 0x1788
mov r8d, 0x38
mov rcx, qword [rsp + 0x48]
lea r9, [rsp + 0x90]
call fcn.140124190
test al, al
je 0x140135d37
cmp byte [rsp + 0x37], 0
je 0x140135c79
movups xmmword [rsp + 0x18c], xmm6
movaps xmmword [rsp + 0x180], xmm6
mov rdx, qword [rsp + 0x90]
mov qword [rsp + 0x150], rdx
mov qword [rsp + 0x158], 0xf98
mov r8d, 0x1c
mov rcx, qword [rsp + 0x48]
lea r9, [rsp + 0x180]
call fcn.140124190
mov ebp, dword [rsp + 0x184]
mov r15d, dword [rsp + 0x188]
test al, al
mov eax, 0
cmove rbp, rax
cmove r15, rax
jmp 0x140135c89
mov ebx, eax
mov ecx, 2
call fcn.140060510
test al, al
je 0x14013606d
mov dword [rsp + 0x20], ebx
lea rbx, [rsp + 0x180]
mov rcx, rbx
lea rdx, str....._third_partycrashpadcrashpad_snapshotwinprocess_reader_win.cc
mov r8d, 0x1ab
mov r9d, 2
call fcn.1401238c0
mov r8d, 0x18
lea rcx, [rsp + 0x190]
lea rdx, str.NtQueryInformationThread
call fcn.140001af0
mov rcx, rbx
call fcn.1401238f0
jmp 0x14013606d
mov ecx, 2
call fcn.140060510
test al, al
lea rbp, [rsp + 0x98]
je 0x14013606d
call sub.KERNEL32.dll_GetLastError
mov dword [rsp + 0x20], eax
lea rbx, [rsp + 0x180]
mov rcx, rbx
lea rdx, str....._third_partycrashpadcrashpad_snapshotwinprocess_reader_win.cc
mov r8d, 0x9c
mov r9d, 2
call fcn.1400619a0
mov r8d, 0xd
lea rcx, [rsp + 0x190]
lea rdx, [0x1401d5157]
jmp 0x140135efc
movzx eax, bl
sub ebp, eax
mov dword [rsp + 0x170], ebp
cmp byte [rsp + 0x37], 0
je 0x140135c3a
lea rcx, [rsp + 0x108]
mov rdx, qword [rsp + 0x38]
call fcn.140134cf0
test al, al
lea rbp, [rsp + 0x98]
jne 0x140135e96
jmp 0x14013606d
mov ecx, 0x800
call fcn.14015b910
test al, al
lea rbp, [rsp + 0x98]
je 0x140135e7c
mov r8d, 0x800
lea rcx, [rsp + 0x108]
mov rdx, qword [rsp + 0x38]
call fcn.140134e20
test al, al
jne 0x140135e96
jmp 0x14013606d
mov rbp, qword [rsp + 0x98]
mov r15, qword [rsp + 0xa0]
mov qword [rsp + 0x160], r15
mov rax, rbp
sub rax, r15
jae 0x140135d1d
mov ecx, 2
call fcn.140060510
test al, al
je 0x140135d1b
lea rbx, [rsp + 0x180]
mov rcx, rbx
lea rdx, str....._third_partycrashpadcrashpad_snapshotwinprocess_reader_win.cc
mov r8d, 0x1cb
mov r9d, 2
call fcn.1400605e0
mov r8d, 0x15
lea rcx, [rsp + 0x190]
lea rdx, str.invalid_stack_range:
call fcn.140001af0
mov rcx, rax
mov rdx, rbp
call fcn.1400178f0
mov r8d, 3
mov rcx, rax
lea rdx, [0x1401b55bd]
call fcn.140001af0
mov rcx, rax
mov rdx, r15
call fcn.1400178f0
mov rcx, rbx
call fcn.140060b40
xor eax, eax
mov qword [rsp + 0x168], rax
movabs r15, 0xaaaaaaaaaaaaaaaa
lea rbp, [rsp + 0x98]
mov eax, dword [0x1402044b8]
mov ecx, dword [0x140201350]
mov rdx, qword gs:[0x58]
mov rcx, qword [rdx + rcx*8]
cmp eax, dword [rcx + 0x30]
jg 0x1401360c7
mov rax, qword [0x1402044b0]
test rax, rax
je 0x140135f44
mov qword [rsp + 0x88], r15
mov rcx, qword [rsp + 0x38]
lea rdx, [rsp + 0x88]
call qword [0x1401ec708]
test eax, eax
js 0x140135e00
mov r15, qword [rsp + 0x88]
mov qword [rsp + 0x78], r15
test r15, r15
je 0x140136121
mov rcx, r15
call fcn.140199a54
mov qword [rsp + 0x80], rax
lea rcx, [rsp + 0x180]
lea rdx, [rsp + 0x78]
call fcn.1400515e0
test byte [rsp + 0x130], 1
je 0x140135dda
mov rcx, qword [rsp + 0x140]
call fcn.140173cf0
mov rax, qword [rsp + 0x190]
mov qword [r14 + 0x28], rax
movups xmm0, xmmword [rsp + 0x180]
movups xmmword [r14 + 0x18], xmm0
mov rcx, r15
call fcn.140142ec0
jmp 0x140135f3c
mov ebp, eax
mov ecx, 1
call fcn.140060510
test al, al
je 0x140135f3c
lea rcx, [rsp + 0x180]
lea rdx, str....._third_partycrashpadcrashpad_snapshotwinprocess_reader_win.cc
mov r8d, 0x1dc
mov r9d, 1
call fcn.1400605e0
mov r8d, 0x16
lea rcx, [rsp + 0x190]
lea rdx, str.GetThreadDescription:
call fcn.140001af0
mov r15, rax
lea rcx, [rsp + 0x60]
mov edx, ebp
call fcn.1400616a0
movzx r8d, byte [rsp + 0x60]
test r8b, 1
je 0x140135f0e
mov r8, qword [rsp + 0x68]
mov rdx, qword [rsp + 0x70]
jmp 0x140135f16
lea rcx, [rsp + 0x108]
mov rdx, qword [rsp + 0x38]
call fcn.140134bc0
test al, al
je 0x14013606d
mov rcx, qword [rsp + 0x38]
call qword [sym.imp.KERNEL32.dll_ResumeThread]
test eax, eax
jne 0x140135a17
mov ecx, 2
call fcn.140060510
test al, al
je 0x14013606d
call sub.KERNEL32.dll_GetLastError
mov dword [rsp + 0x20], eax
lea rbx, [rsp + 0x180]
mov rcx, rbx
lea rdx, str....._third_partycrashpadcrashpad_snapshotwinprocess_reader_win.cc
mov r8d, 0xc0
mov r9d, 2
call fcn.1400619a0
mov r8d, 0xc
lea rcx, [rsp + 0x190]
lea rdx, [0x1401d51a2]
call fcn.140001af0
mov rcx, rbx
call fcn.140061a90
jmp 0x14013606d
shr r8d, 1
lea rdx, [rsp + 0x61]
mov rcx, r15
call fcn.140001af0
test byte [rsp + 0x60], 1
je 0x140135f2f
mov rcx, qword [rsp + 0x70]
call fcn.140173cf0
lea rcx, [rsp + 0x180]
call fcn.140060b40
lea rbp, [rsp + 0x98]
mov rax, qword [rsp + 0x40]
mov r15, qword [rax + 0x138]
cmp r15, qword [rax + 0x140]
jae 0x140136001
test r15, r15
je 0x14013610e
movzx eax, byte [rsp + 0x110]
mov byte [r15 + 8], al
mov rax, qword [rsp + 0x108]
mov qword [r15], rax
movups xmmword [r15 + 0x10], xmm7
mov qword [r15 + 0x20], 0
mov rbp, qword [rsp + 0x118]
mov rbx, qword [rsp + 0x120]
sub rbx, rbp
je 0x140135fd9
js 0x140136147
mov rcx, rbx
call fcn.140173ca0
mov qword [r15 + 0x10], rax
mov qword [r15 + 0x18], rax
lea rcx, [rax + rbx]
mov qword [rsp + 0x50], rcx
mov qword [r15 + 0x20], rcx
mov rcx, rax
mov rdx, rbp
mov r8, rbx
call fcn.140176c30
mov rax, qword [rsp + 0x50]
mov qword [r15 + 0x18], rax
lea rcx, [r15 + 0x28]
test byte [rsp + 0x130], 1
lea rbp, [rsp + 0x98]
jne 0x140136018
mov rax, qword [r14 + 0x28]
mov qword [rcx + 0x10], rax
movups xmm0, xmmword [r14 + 0x18]
movups xmmword [rcx], xmm0
jmp 0x14013602d
mov rcx, qword [rsp + 0x58]
lea rdx, [rsp + 0x108]
call fcn.1401362f0
mov r15, rax
jmp 0x140136057
mov r8, qword [rsp + 0x138]
mov rdx, qword [rsp + 0x140]
call fcn.140005040
mov eax, dword [r14 + 0x60]
mov dword [r15 + 0x70], eax
movups xmm0, xmmword [r14 + 0x30]
movups xmm1, xmmword [r14 + 0x40]
movups xmm2, xmmword [r14 + 0x50]
movups xmmword [r15 + 0x60], xmm2
movups xmmword [r15 + 0x50], xmm1
movups xmmword [r15 + 0x40], xmm0
add r15, 0x78
mov rax, qword [rsp + 0x40]
mov qword [rax + 0x138], r15
movabs r15, 0xaaaaaaaaaaaaaaaa
mov rcx, qword [rsp + 0x38]
call fcn.140113220
test byte [rsp + 0x130], 1
je 0x14013608e
mov rcx, qword [rsp + 0x140]
call fcn.140173cf0
mov rcx, qword [rsp + 0x118]
test rcx, rcx
je 0x140135760
mov rax, qword [rsp + 0x120]
mov rdx, rax
sub rdx, rcx
dec rax
cmp rdx, rax
ja 0x140136134
mov qword [rsp + 0x120], rcx
call fcn.140173cf0
jmp 0x140135760
lea rcx, [0x1402044b8]
call fcn.140173e10
cmp dword [0x1402044b8], 0xffffffff
jne 0x140135d5c
lea rcx, [0x1401b57ac]
lea rdx, str.::GetThreadDescription
xor r8d, r8d
call fcn.14011f3f0
mov qword [0x1402044b0], rax
lea rcx, [0x1402044b8]
call fcn.140173ea8
jmp 0x140135d5c
lea rcx, [0x1401b1076]
lea rdx, str....._third_partylibc_srcinclude__memoryconstruct_at.h:40:_assertion___location___nullptr_failed:_null_pointer_given_to_construct_at_n
call fcn.14003f000
lea rcx, [0x1401b1076]
lea rdx, str....._third_partylibc_srcinclude_string_view:268:_assertion___s___nullptr_failed:_null_pointer_passed_to_non_null_argument_of_char_traits_..._::length_n
call fcn.14003f000
lea rcx, [0x1401b1076]
lea rdx, str....._third_partylibc_srcinclude__memoryconstruct_at.h:66:_assertion___loc___nullptr_failed:_null_pointer_given_to_destroy_at_n
call fcn.14003f000
add r15, 0x10
mov rcx, r15
call fcn.140002fa0
int3