Function at 0x5b01a0
Capabilities:
Create thread

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
sub esp, 0x58
mov esi, ecx
mov eax, dword [0x7aa024]
xor eax, ebp
mov dword [ebp - 0x10], eax
call fcn.005ea830
mov dword [ebp - 0x54], eax
mov dword [ebp - 0x58], edx
lea eax, [esi + 0x28]
mov dword [ebp - 0x50], eax
lea edi, [esi + 0x24]
mov ebx, dword [esi + 0x1c]
cmp ebx, 0xffffffff
jne 0x5b021c
push 1
push esi
call fcn.0058bf30
add esp, 8
mov ebx, eax
cmp eax, 0xffffffff
jne 0x5b0223
lea ebx, [ebp - 0x38]
push 0x13c
push str....._third_partycrashpadcrashpadutilwinexception_handler_server.cc
push ebx
call fcn.006d01c0
add esp, 0xc
mov ecx, ebx
call fcn.006d0100
push 0xf
push str.CreateNamedPipe
push eax
call fcn.0067fe70
add esp, 0xc
mov ecx, ebx
call fcn.006d0110
xor ebx, ebx
dec ebx
jmp 0x5b0223
mov dword [esi + 0x1c], 0xffffffff
push 0x28
call fcn.0064cd3e
add esp, 4
mov ecx, dword [esi + 0x10]
mov dword [eax], ecx
mov dword [eax + 4], 0x741410
mov dword [eax + 8], ebx
mov byte [eax + 0xc], 0
mov ecx, dword [ebp + 8]
mov dword [eax + 0x10], ecx
mov dword [eax + 0x14], edi
mov ecx, dword [ebp - 0x50]
mov dword [eax + 0x18], ecx
mov ecx, dword [ebp - 0x58]
mov dword [eax + 0x24], ecx
mov ecx, dword [ebp - 0x54]
mov dword [eax + 0x20], ecx
xor ecx, ecx
push ecx
push ecx
push eax
push 0x5b0600
push ecx
push ecx
call dword [sym.imp.KERNEL32.dll_CreateThread]
mov dword [ebp - 0x5c], eax
test eax, eax
je 0x5b0527
mov ebx, dword [esi + 0x1c]
cmp ebx, 0xffffffff
jne 0x5b02cb
push 0
push esi
call fcn.0058bf30
add esp, 8
mov ebx, eax
cmp eax, 0xffffffff
jne 0x5b02d2
lea ebx, [ebp - 0x38]
push 0x13c
push str....._third_partycrashpadcrashpadutilwinexception_handler_server.cc
push ebx
call fcn.006d01c0
add esp, 0xc
mov ecx, ebx
call fcn.006d0100
push 0xf
push str.CreateNamedPipe
push eax
call fcn.0067fe70
add esp, 0xc
mov ecx, ebx
call fcn.006d0110
xor ebx, ebx
dec ebx
jmp 0x5b02d2
mov dword [esi + 0x1c], 0xffffffff
push 0x28
call fcn.0064cd3e
add esp, 4
mov ecx, dword [esi + 0x10]
mov dword [eax], ecx
mov dword [eax + 4], 0x741410
mov dword [eax + 8], ebx
mov byte [eax + 0xc], 0
mov ebx, dword [ebp + 8]
mov dword [eax + 0x10], ebx
mov dword [eax + 0x14], edi
mov ecx, dword [ebp - 0x50]
mov dword [eax + 0x18], ecx
mov ecx, dword [ebp - 0x58]
mov dword [eax + 0x24], ecx
mov ecx, dword [ebp - 0x54]
mov dword [eax + 0x20], ecx
xor ecx, ecx
push ecx
push ecx
push eax
push 0x5b0600
push ecx
push ecx
call dword [sym.imp.KERNEL32.dll_CreateThread]
mov dword [ebp - 0x60], eax
test eax, eax
je 0x5b0560
mov ecx, ebx
call fcn.004a2a70
lea eax, [esi + 0x2c]
mov dword [ebp - 0x4c], eax
mov dword [ebp - 0x64], esi
mov dword [ebp - 0x48], edi
xor eax, eax
mov dword [ebp - 0x38], eax
mov dword [ebp - 0x44], eax
mov dword [ebp - 0x14], eax
push 0xffffffffffffffff
lea eax, [ebp - 0x38]
push eax
lea eax, [ebp - 0x44]
push eax
lea eax, [ebp - 0x14]
push eax
push dword [esi + 0x10]
call dword [sym.imp.KERNEL32.dll_GetQueuedCompletionStatus]
mov ebx, dword [ebp - 0x44]
test ebx, ebx
je 0x5b0420
push edi
call dword [sym.imp.KERNEL32.dll_TryAcquireSRWLockExclusive]
test al, al
je 0x5b051a
mov eax, dword [ebp - 0x4c]
mov eax, dword [eax]
test eax, eax
je 0x5b03c9
mov ecx, eax
mov edi, dword [ebp - 0x4c]
xor edx, edx
cmp dword [ecx + 0x10], ebx
setb dl
cmovae edi, ecx
mov ecx, dword [ecx + edx*4]
test ecx, ecx
jne 0x5b0384
cmp edi, dword [ebp - 0x4c]
je 0x5b03c9
cmp dword [edi + 0x10], ebx
ja 0x5b03c9
mov edx, dword [edi + 4]
test edx, edx
jne 0x5b03f4
mov ecx, dword [edi + 8]
cmp dword [ecx], edi
jne 0x5b03fe
cmp dword [esi + 0x28], edi
je 0x5b0412
dec dword [esi + 0x30]
push edi
push eax
call fcn.005d1590
add esp, 8
push edi
call fcn.0064cd6e
add esp, 4
mov ecx, ebx
call fcn.005b06f0
push ebx
call fcn.0064cd6e
add esp, 4
cmp byte [esi + 0x34], 0
jne 0x5b03e5
cmp dword [esi + 0x30], 0
je 0x5b0417
mov edi, dword [ebp - 0x48]
push edi
call dword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
jmp 0x5b033a
mov ecx, edx
mov edx, dword [edx]
test edx, edx
je 0x5b03ae
jmp 0x5b03f4
lea edx, [edi + 8]
mov esi, dword [edx]
lea edx, [esi + 8]
mov ecx, dword [esi + 8]
cmp dword [ecx], esi
mov esi, dword [ebp - 0x64]
je 0x5b03ae
jmp 0x5b0401
mov dword [esi + 0x28], ecx
jmp 0x5b03b3
push dword [ebp - 0x48]
call dword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
xor eax, eax
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x1c], eax
xorps xmm0, xmm0
movups xmmword [ebp - 0x2c], xmm0
xor eax, eax
inc eax
mov dword [ebp - 0x38], eax
mov eax, dword [ebp - 0x54]
mov dword [ebp - 0x34], eax
mov ebx, dword [ebp - 0x58]
mov dword [ebp - 0x30], ebx
xor edi, edi
dec edi
mov dword [ebp - 0x44], edi
mov dword [ebp - 0x40], edi
mov dword [ebp - 0x3c], edi
lea eax, [ebp - 0x44]
push eax
lea eax, [ebp - 0x38]
push eax
push esi
call fcn.0058bca0
add esp, 0xc
xor eax, eax
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x1c], eax
xorps xmm0, xmm0
movups xmmword [ebp - 0x2c], xmm0
xor eax, eax
inc eax
mov dword [ebp - 0x38], eax
mov dword [ebp - 0x30], ebx
mov eax, dword [ebp - 0x54]
mov dword [ebp - 0x34], eax
mov dword [ebp - 0x44], edi
mov dword [ebp - 0x40], edi
mov dword [ebp - 0x3c], edi
lea eax, [ebp - 0x44]
push eax
lea eax, [ebp - 0x38]
push eax
push esi
call fcn.0058bca0
add esp, 0xc
mov esi, dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
push edi
mov ebx, dword [ebp - 0x5c]
push ebx
call esi
push edi
push dword [ebp - 0x60]
call esi
push dword [ebp - 0x48]
call dword [sym.imp.KERNEL32.dll_TryAcquireSRWLockExclusive]
test al, al
je 0x5b059c
mov ecx, dword [ebp - 0x50]
mov esi, dword [ecx]
mov edi, dword [ebp - 0x4c]
cmp esi, edi
jne 0x5b05a9
mov esi, dword [ebp - 0x64]
push dword [esi + 0x2c]
call fcn.00573ef0
xor eax, eax
mov dword [esi + 0x30], eax
mov dword [esi + 0x28], edi
mov dword [esi + 0x2c], eax
push dword [ebp - 0x48]
call dword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
mov eax, dword [ebp - 0x60]
test eax, eax
je 0x5b04f9
push eax
call fcn.0058e370
add esp, 4
test ebx, ebx
je 0x5b0506
push ebx
call fcn.0058e370
add esp, 4
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.0064d372
add esp, 0x58
pop esi
pop edi
pop ebx
pop ebp
ret 4
mov ecx, dword [ebp - 0x48]
call fcn.005f1f90
jmp 0x5b0376
lea ebx, [ebp - 0x38]
push 0x14b
push str....._third_partycrashpadcrashpadutilwinexception_handler_server.cc
push ebx
call fcn.006d01c0
add esp, 0xc
mov ecx, ebx
call fcn.006d0100
push 0xc
push 0x7926fa
push eax
call fcn.0067fe70
add esp, 0xc
mov ecx, ebx
call fcn.006d0110
jmp 0x5b0278
lea ebx, [ebp - 0x38]
push 0x14b
push str....._third_partycrashpadcrashpadutilwinexception_handler_server.cc
push ebx
call fcn.006d01c0
add esp, 0xc
mov ecx, ebx
call fcn.006d0100
push 0xc
push 0x7926fa
push eax
call fcn.0067fe70
add esp, 0xc
mov ecx, ebx
mov ebx, dword [ebp + 8]
call fcn.006d0110
jmp 0x5b0327
mov ecx, dword [ebp - 0x48]
call fcn.005f1f90
jmp 0x5b04ba
mov edi, dword [ebp - 0x4c]
mov ebx, dword [esi + 0x10]
test ebx, ebx
je 0x5b05c3
mov ecx, ebx
call fcn.005b06f0
push ebx
call fcn.0064cd6e
add esp, 4
mov ecx, dword [esi + 4]
test ecx, ecx
je 0x5b05e4
mov eax, ecx
mov ecx, dword [ecx]
test ecx, ecx
jne 0x5b05ca
mov esi, eax
cmp eax, edi
mov ecx, dword [ebp - 0x50]
mov ebx, dword [ebp - 0x5c]
je 0x5b04ca
jmp 0x5b05ac
mov eax, dword [esi + 8]
cmp dword [eax], esi
je 0x5b05d2
add esi, 8
mov ecx, dword [esi]
lea esi, [ecx + 8]
mov eax, dword [ecx + 8]
cmp dword [eax], ecx
jne 0x5b05ee
jmp 0x5b05d2