Function at 0x42af80
Capabilities:
Create thread

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
sub esp, 0x54
mov esi, ecx
mov eax, dword [0x5c4738]
xor eax, ebp
mov dword [ebp - 0x10], eax
call fcn.004c13b0
mov edi, eax
mov dword [ebp - 0x50], edx
lea eax, [esi + 0x28]
mov dword [ebp - 0x54], eax
lea eax, [esi + 0x24]
mov dword [ebp - 0x4c], eax
mov ebx, dword [esi + 0x1c]
cmp ebx, 0xffffffff
jne 0x42affe
push 1
push esi
call fcn.0042b600
add esp, 8
mov ebx, eax
cmp eax, 0xffffffff
jne 0x42b005
lea ebx, [ebp - 0x3c]
push 0x13b
push str..._.._third_party_crashpad_crashpad_util_win_exception_handler_server.cc
push ebx
call fcn.0053dc60
add esp, 0xc
mov ecx, ebx
call fcn.0053dc80
push 0xf
push str.CreateNamedPipe
push eax
call fcn.004b7fc0
add esp, 0xc
mov ecx, ebx
call fcn.0053dc90
xor ebx, ebx
dec ebx
jmp 0x42b005
mov dword [esi + 0x1c], 0xffffffff
push 0x28
call fcn.004cf0a6
add esp, 4
mov ecx, dword [esi + 0x10]
mov dword [eax], ecx
mov dword [eax + 4], 0x583c04
mov dword [eax + 8], ebx
mov byte [eax + 0xc], 0
mov ecx, dword [ebp + 8]
mov dword [eax + 0x10], ecx
mov ecx, dword [ebp - 0x4c]
mov dword [eax + 0x14], ecx
mov ecx, dword [ebp - 0x54]
mov dword [eax + 0x18], ecx
mov ecx, dword [ebp - 0x50]
mov dword [eax + 0x24], ecx
mov dword [eax + 0x20], edi
xor ecx, ecx
push ecx
push ecx
push eax
push 0x4294d0
push ecx
push ecx
call dword [sym.imp.KERNEL32.dll_CreateThread]
mov dword [ebp - 0x60], eax
test eax, eax
je 0x42b2a9
mov ebx, dword [esi + 0x1c]
cmp ebx, 0xffffffff
jne 0x42b0ad
push 0
push esi
call fcn.0042b600
add esp, 8
mov ebx, eax
cmp eax, 0xffffffff
jne 0x42b0b4
lea ebx, [ebp - 0x3c]
push 0x13b
push str..._.._third_party_crashpad_crashpad_util_win_exception_handler_server.cc
push ebx
call fcn.0053dc60
add esp, 0xc
mov ecx, ebx
call fcn.0053dc80
push 0xf
push str.CreateNamedPipe
push eax
call fcn.004b7fc0
add esp, 0xc
mov ecx, ebx
call fcn.0053dc90
xor ebx, ebx
dec ebx
jmp 0x42b0b4
mov dword [esi + 0x1c], 0xffffffff
push 0x28
call fcn.004cf0a6
add esp, 4
mov ecx, dword [esi + 0x10]
mov dword [eax], ecx
mov dword [eax + 4], 0x583c04
mov dword [eax + 8], ebx
mov byte [eax + 0xc], 0
mov ebx, dword [ebp + 8]
mov dword [eax + 0x10], ebx
mov ecx, dword [ebp - 0x4c]
mov dword [eax + 0x14], ecx
mov ecx, dword [ebp - 0x54]
mov dword [eax + 0x18], ecx
mov ecx, dword [ebp - 0x50]
mov dword [eax + 0x24], ecx
mov dword [ebp - 0x5c], edi
mov dword [eax + 0x20], edi
xor edi, edi
push edi
push edi
push eax
push 0x4294d0
push edi
push edi
call dword [sym.imp.KERNEL32.dll_CreateThread]
mov dword [ebp - 0x58], eax
test eax, eax
je 0x42b2e2
mov eax, dword [ebx]
mov ecx, ebx
call dword [eax]
mov dword [ebp - 0x3c], edi
mov dword [ebp - 0x48], edi
mov dword [ebp - 0x14], edi
push 0xffffffffffffffff
lea eax, [ebp - 0x3c]
push eax
lea eax, [ebp - 0x48]
push eax
lea eax, [ebp - 0x14]
push eax
push dword [esi + 0x10]
call dword [sym.imp.KERNEL32.dll_GetQueuedCompletionStatus]
mov eax, dword [ebp - 0x48]
test eax, eax
je 0x42b292
mov dword [ebp - 0x18], eax
push dword [ebp - 0x4c]
call dword [sym.imp.KERNEL32.dll_TryAcquireSRWLockExclusive]
test al, al
je 0x42b29c
mov ecx, dword [ebp - 0x54]
lea eax, [ebp - 0x18]
push eax
call fcn.0042b4d0
mov ebx, dword [ebp - 0x18]
test ebx, ebx
je 0x42b174
mov ecx, ebx
call fcn.0042b380
push ebx
call fcn.004cf0d6
add esp, 4
cmp byte [esi + 0x34], 0
jne 0x42b180
cmp dword [esi + 0x30], 0
je 0x42b191
xor ebx, ebx
push dword [ebp - 0x4c]
call dword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
test ebx, ebx
je 0x42b112
jmp 0x42b198
mov ebx, 5
jmp 0x42b182
xor eax, eax
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x20], eax
xorps xmm0, xmm0
movups xmmword [ebp - 0x30], xmm0
xor eax, eax
inc eax
mov dword [ebp - 0x3c], eax
mov eax, dword [ebp - 0x5c]
mov dword [ebp - 0x38], eax
mov edi, dword [ebp - 0x50]
mov dword [ebp - 0x34], edi
xor ebx, ebx
dec ebx
mov dword [ebp - 0x48], ebx
mov dword [ebp - 0x44], ebx
mov dword [ebp - 0x40], ebx
lea eax, [ebp - 0x48]
push eax
lea eax, [ebp - 0x3c]
push eax
push esi
call fcn.0042b6b0
add esp, 0xc
xor eax, eax
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x20], eax
xorps xmm0, xmm0
movups xmmword [ebp - 0x30], xmm0
xor eax, eax
inc eax
mov dword [ebp - 0x3c], eax
mov dword [ebp - 0x34], edi
mov eax, dword [ebp - 0x5c]
mov dword [ebp - 0x38], eax
mov dword [ebp - 0x48], ebx
mov dword [ebp - 0x44], ebx
mov dword [ebp - 0x40], ebx
lea eax, [ebp - 0x48]
push eax
lea eax, [ebp - 0x3c]
push eax
push esi
call fcn.0042b6b0
add esp, 0xc
mov edi, dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
push ebx
push dword [ebp - 0x60]
call edi
push ebx
push dword [ebp - 0x58]
call edi
push dword [ebp - 0x4c]
call dword [sym.imp.KERNEL32.dll_TryAcquireSRWLockExclusive]
test al, al
je 0x42b31e
mov ebx, dword [esi + 0x28]
lea edi, [esi + 0x2c]
cmp ebx, edi
jne 0x42b343
mov ecx, dword [ebp - 0x54]
push dword [esi + 0x2c]
call fcn.0040b1e0
xor eax, eax
mov dword [esi + 0x30], eax
mov dword [esi + 0x28], edi
mov dword [esi + 0x2c], eax
push dword [ebp - 0x4c]
call dword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
mov eax, dword [ebp - 0x58]
test eax, eax
je 0x42b26e
push eax
call fcn.0042b460
add esp, 4
mov eax, dword [ebp - 0x60]
test eax, eax
je 0x42b27e
push eax
call fcn.0042b460
add esp, 4
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.004d25a3
add esp, 0x54
pop esi
pop edi
pop ebx
pop ebp
ret 4
mov ebx, 5
jmp 0x42b18b
mov ecx, dword [ebp - 0x4c]
call fcn.004c2c70
jmp 0x42b151
lea ebx, [ebp - 0x3c]
push 0x14a
push str..._.._third_party_crashpad_crashpad_util_win_exception_handler_server.cc
push ebx
call fcn.0053dc60
add esp, 0xc
mov ecx, ebx
call fcn.0053dc80
push 0xc
push 0x5839e2
push eax
call fcn.004b7fc0
add esp, 0xc
mov ecx, ebx
call fcn.0053dc90
jmp 0x42b05a
lea ebx, [ebp - 0x3c]
push 0x14a
push str..._.._third_party_crashpad_crashpad_util_win_exception_handler_server.cc
push ebx
call fcn.0053dc60
add esp, 0xc
mov ecx, ebx
call fcn.0053dc80
push 0xc
push 0x5839e2
push eax
call fcn.004b7fc0
add esp, 0xc
mov ecx, ebx
mov ebx, dword [ebp + 8]
call fcn.0053dc90
jmp 0x42b10c
mov ecx, dword [ebp - 0x4c]
call fcn.004c2c70
jmp 0x42b231
mov eax, dword [ebx + 8]
cmp dword [eax], ebx
je 0x42b36e
add ebx, 8
mov ecx, dword [ebx]
lea ebx, [ecx + 8]
mov eax, dword [ecx + 8]
cmp dword [eax], ecx
jne 0x42b335
jmp 0x42b36e
mov ecx, dword [ebx + 0x10]
test ecx, ecx
je 0x42b35f
mov eax, ecx
mov dword [ebp - 0x50], eax
call fcn.0042b380
push dword [ebp - 0x50]
call fcn.004cf0d6
add esp, 4
mov ecx, dword [ebx + 4]
test ecx, ecx
je 0x42b32b
mov eax, ecx
mov ecx, dword [ecx]
test ecx, ecx
jne 0x42b366
mov ebx, eax
cmp eax, edi
je 0x42b23f
jmp 0x42b343