Function at 0x544650
Capabilities:
Create process on windows

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x56d0e9
mov eax, dword fs:[0]
push eax
sub esp, 0x22c
mov eax, dword [0x5ca018]
xor eax, ebp
mov dword [ebp - 0x10], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
xor eax, eax
mov dword [ebp - 0xb0], eax
mov dword [ebp - 0xb8], eax
mov dword [ebp - 4], eax
call fcn.00407d1f
test al, al
je 0x5446e4
push 4
push 0x15e
push str.T:p4PatcherExternalLibraries_sentry_native0.3.1externalcrashpadclientcrashpad_client_win.cc
push str.bool___cdecl_crashpad::_anonymous_namespace::StartHandlerProcess_class_std::unique_ptr_struct_crashpad::_anonymous_namespace::BackgroundHandlerStartThreadData_struct_std::default_delete_struct_crashpad::_anonymous_namespace::BackgroundHandlerStartThreadData____
lea ecx, [ebp - 0x200]
call fcn.00403189
push 0x5733ac
mov ecx, 1
mov byte [ebp - 4], 1
push str.Check_failed:__IsThreadInLoaderLock__
push eax
mov dword [ebp - 0xb0], ecx
mov dword [ebp - 0xb8], ecx
call fcn.0040533a
add esp, 8
push eax
call fcn.0040533a
add esp, 8
mov eax, dword [ebp - 0xb0]
mov dword [ebp - 4], 0
test al, 1
je 0x544709
and eax, 0xfffffffe
lea ecx, [ebp - 0x200]
mov dword [ebp - 0xb0], eax
call fcn.004082e7
mov byte [ebp - 0xb9], 0
xor eax, eax
mov dword [ebp - 0x48], 0
mov dword [ebp - 0x44], 7
mov word [ebp - 0x58], ax
lea eax, [ebp - 0x58]
mov byte [ebp - 4], 3
push eax
push dword [ebp + 8]
call fcn.0040789c
mov eax, dword [ebp + 8]
add esp, 8
mov esi, dword [eax + 0x68]
mov edi, dword [eax + 0x6c]
cmp esi, edi
je 0x5447d7
cmp dword [esi + 0x14], 0x10
mov eax, esi
jb 0x544752
mov eax, dword [esi]
mov dword [ebp - 0xc4], eax
mov eax, dword [esi + 0x10]
mov dword [ebp - 0xc0], eax
lea eax, [ebp - 0xc4]
push eax
lea eax, [ebp - 0xa0]
push eax
call fcn.00401762
lea ecx, [ebp - 0x58]
mov byte [ebp - 4], 4
push ecx
push eax
call fcn.0040789c
mov edx, dword [ebp - 0x8c]
add esp, 0x10
mov byte [ebp - 4], 3
cmp edx, 8
jb 0x5447c9
mov ecx, dword [ebp - 0xa0]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x5447bf
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x54596c
push edx
push ecx
call fcn.00406177
add esp, 8
add esi, 0x18
cmp esi, edi
jne 0x544748
mov eax, dword [ebp + 8]
cmp dword [eax + 0x28], 0
je 0x5448b8
mov ecx, dword [str.database]
mov dword [ebp - 0x40], ecx
mov ecx, dword [0x57468c]
mov dword [ebp - 0x2c], 0xf
mov dword [ebp - 0x30], 8
mov dword [ebp - 0x3c], ecx
mov byte [ebp - 0x38], 0
add eax, 0x18
mov byte [ebp - 4], 5
push eax
lea eax, [ebp - 0x40]
push eax
lea eax, [ebp - 0x28]
push eax
call fcn.00543340
lea ecx, [ebp - 0x58]
mov byte [ebp - 4], 6
push ecx
push eax
call fcn.0040789c
mov edx, dword [ebp - 0x14]
add esp, 0x14
mov byte [ebp - 4], 5
cmp edx, 8
jb 0x544869
mov ecx, dword [ebp - 0x28]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x54485f
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x54596c
push edx
push ecx
call fcn.00406177
add esp, 8
mov edx, dword [ebp - 0x2c]
xor eax, eax
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x14], 7
mov word [ebp - 0x28], ax
mov byte [ebp - 4], 3
cmp edx, 0x10
jb 0x5448b5
mov ecx, dword [ebp - 0x40]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x5448ab
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x54596c
push edx
push ecx
call fcn.00406177
add esp, 8
mov eax, dword [ebp + 8]
cmp dword [eax + 0x40], 0
je 0x5449a8
mov cx, word [0x5746b4]
movq xmm0, qword [str.metrics_dir]
mov word [ebp - 0x38], cx
mov cl, byte [0x5746b6]
mov dword [ebp - 0x2c], 0xf
mov dword [ebp - 0x30], 0xb
movq qword [ebp - 0x40], xmm0
mov byte [ebp - 0x36], cl
mov byte [ebp - 0x35], 0
add eax, 0x30
mov byte [ebp - 4], 7
push eax
lea eax, [ebp - 0x40]
push eax
lea eax, [ebp - 0x28]
push eax
call fcn.00543340
lea ecx, [ebp - 0x58]
mov byte [ebp - 4], 8
push ecx
push eax
call fcn.0040789c
mov edx, dword [ebp - 0x14]
add esp, 0x14
mov byte [ebp - 4], 7
cmp edx, 8
jb 0x544959
mov ecx, dword [ebp - 0x28]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x54494f
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x545971
push edx
push ecx
call fcn.00406177
add esp, 8
mov edx, dword [ebp - 0x2c]
xor eax, eax
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x14], 7
mov word [ebp - 0x28], ax
mov byte [ebp - 4], 3
cmp edx, 0x10
jb 0x5449a5
mov ecx, dword [ebp - 0x40]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x54499b
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x545971
push edx
push ecx
call fcn.00406177
add esp, 8
mov eax, dword [ebp + 8]
cmp dword [eax + 0x58], 0
je 0x544b07
cmp dword [eax + 0x5c], 0x10
lea ecx, [eax + 0x48]
jb 0x5449be
mov ecx, dword [eax + 0x48]
mov dword [ebp - 0xc4], ecx
mov eax, dword [eax + 0x58]
mov dword [ebp - 0xc0], eax
mov ax, word [0x57476c]
mov word [ebp - 0x40], ax
mov al, byte [0x57476e]
mov dword [ebp - 0x2c], 0xf
mov dword [ebp - 0x30], 3
mov byte [ebp - 0x3e], al
mov byte [ebp - 0x3d], 0
lea eax, [ebp - 0xc4]
mov byte [ebp - 4], 9
push eax
lea eax, [ebp - 0x70]
push eax
call fcn.00401762
push eax
lea eax, [ebp - 0x40]
mov byte [ebp - 4], 0xa
push eax
lea eax, [ebp - 0x28]
push eax
call fcn.00543340
lea ecx, [ebp - 0x58]
mov byte [ebp - 4], 0xb
push ecx
push eax
call fcn.0040789c
mov edx, dword [ebp - 0x14]
add esp, 0x1c
mov byte [ebp - 4], 0xa
cmp edx, 8
jb 0x544a66
mov ecx, dword [ebp - 0x28]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x544a5c
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x545976
push edx
push ecx
call fcn.00406177
add esp, 8
mov edx, dword [ebp - 0x5c]
xor eax, eax
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x14], 7
mov word [ebp - 0x28], ax
mov byte [ebp - 4], 9
cmp edx, 8
jb 0x544ab8
mov ecx, dword [ebp - 0x70]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x544aae
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x545976
push edx
push ecx
call fcn.00406177
add esp, 8
mov edx, dword [ebp - 0x2c]
xor eax, eax
mov dword [ebp - 0x60], 0
mov dword [ebp - 0x5c], 7
mov word [ebp - 0x70], ax
mov byte [ebp - 4], 3
cmp edx, 0x10
jb 0x544b04
mov ecx, dword [ebp - 0x40]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x544afa
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x545976
push edx
push ecx
call fcn.00406177
add esp, 8
mov eax, dword [ebp + 8]
mov esi, dword [eax + 0x60]
mov esi, dword [esi]
cmp byte [esi + 0xd], 0
jne 0x544e06
nop word [eax + eax]
mov ecx, dword [esi + 0x20]
lea edi, [esi + 0x10]
mov byte [ebp - 0xb4], 0x3d
cmp ecx, 0x7fffffff
je 0x54597b
cmp dword [edi + 0x14], 0x10
mov eax, edi
jb 0x544b43
mov eax, dword [edi]
push 1
lea edx, [ebp - 0xb4]
push edx
push ecx
push eax
push edi
push dword [ebp - 0xc0]
lea ecx, [ebp - 0xa0]
call fcn.004013c5
or dword [ebp - 0xb0], 0x400
cmp dword [edi + 0x2c], 0x10
lea eax, [edi + 0x18]
mov byte [ebp - 4], 0xc
jb 0x544b7a
mov eax, dword [edi + 0x18]
push dword [edi + 0x28]
lea ecx, [ebp - 0xa0]
push eax
call fcn.00408f67
or dword [ebp - 0xb0], 0x800
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x14], 0
movups xmm0, xmmword [eax]
movups xmmword [ebp - 0x28], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [ebp - 0x18], xmm0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0xf
mov byte [eax], 0
cmp dword [ebp - 0x14], 0x10
lea eax, [ebp - 0x28]
movq xmm0, qword [str.annotation]
cmovae eax, dword [ebp - 0x28]
mov dword [ebp - 0xc4], eax
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0xc0], eax
mov ax, word [0x574680]
mov dword [ebp - 0x2c], 0xf
mov dword [ebp - 0x30], 0xa
movq qword [ebp - 0x40], xmm0
mov word [ebp - 0x38], ax
mov byte [ebp - 0x36], 0
lea eax, [ebp - 0xc4]
mov byte [ebp - 4], 0xe
push eax
lea eax, [ebp - 0x88]
push eax
call fcn.00401762
push eax
lea eax, [ebp - 0x40]
mov byte [ebp - 4], 0xf
push eax
lea eax, [ebp - 0x70]
push eax
call fcn.00543340
lea ecx, [ebp - 0x58]
mov byte [ebp - 4], 0x10
push ecx
push eax
call fcn.0040789c
mov edx, dword [ebp - 0x5c]
add esp, 0x1c
mov byte [ebp - 4], 0xf
cmp edx, 8
jb 0x544c7e
mov ecx, dword [ebp - 0x70]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x544c74
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x54596c
push edx
push ecx
call fcn.00406177
add esp, 8
mov edx, dword [ebp - 0x74]
xor eax, eax
mov dword [ebp - 0x60], 0
mov dword [ebp - 0x5c], 7
mov word [ebp - 0x70], ax
mov byte [ebp - 4], 0xe
cmp edx, 8
jb 0x544cd3
mov ecx, dword [ebp - 0x88]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x544cc9
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x54596c
push edx
push ecx
call fcn.00406177
add esp, 8
mov edx, dword [ebp - 0x2c]
xor eax, eax
mov dword [ebp - 0x78], 0
mov dword [ebp - 0x74], 7
mov word [ebp - 0x88], ax
mov byte [ebp - 4], 0xd
cmp edx, 0x10
jb 0x544d22
mov ecx, dword [ebp - 0x40]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x544d18
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x54596c
push edx
push ecx
call fcn.00406177
add esp, 8
mov edx, dword [ebp - 0x14]
mov dword [ebp - 0x30], 0
mov dword [ebp - 0x2c], 0xf
mov byte [ebp - 0x40], 0
mov byte [ebp - 4], 0xc
cmp edx, 0x10
jb 0x544d6c
mov ecx, dword [ebp - 0x28]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x544d62
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x54596c
push edx
push ecx
call fcn.00406177
add esp, 8
mov edx, dword [ebp - 0x8c]
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x14], 0xf
mov byte [ebp - 0x28], 0
mov byte [ebp - 4], 3
cmp edx, 0x10
jb 0x544dbc
mov ecx, dword [ebp - 0xa0]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x544db2
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x54596c
push edx
push ecx
call fcn.00406177
add esp, 8
mov eax, dword [esi + 8]
cmp byte [eax + 0xd], 0
je 0x544de4
mov eax, dword [esi + 4]
cmp byte [eax + 0xd], 0
jne 0x544de0
nop
cmp esi, dword [eax + 8]
jne 0x544de0
mov esi, eax
mov eax, dword [eax + 4]
cmp byte [eax + 0xd], 0
je 0x544dd0
mov esi, eax
jmp 0x544dfc
mov esi, eax
mov ecx, dword [esi]
cmp byte [ecx + 0xd], 0
jne 0x544dfc
nop
mov eax, dword [ecx]
mov esi, ecx
mov ecx, eax
cmp byte [eax + 0xd], 0
je 0x544df0
cmp byte [esi + 0xd], 0
je 0x544b20
call dword [sym.imp.KERNEL32.dll_GetCurrentProcessId]
push eax
push 1
push 0x1f0fff
call dword [sym.imp.KERNEL32.dll_OpenProcess]
mov dword [ebp - 0xd4], eax
mov byte [ebp - 4], 0x11
test eax, eax
jne 0x544e99
call fcn.00401b13
push eax
push 2
push 0x180
push str.T:p4PatcherExternalLibraries_sentry_native0.3.1externalcrashpadclientcrashpad_client_win.cc
push str.bool___cdecl_crashpad::_anonymous_namespace::StartHandlerProcess_class_std::unique_ptr_struct_crashpad::_anonymous_namespace::BackgroundHandlerStartThreadData_struct_std::default_delete_struct_crashpad::_anonymous_namespace::BackgroundHandlerStartThreadData____
lea ecx, [ebp - 0x208]
call fcn.00405484
mov ecx, dword [ebp - 0xb0]
or ecx, 2
mov byte [ebp - 4], 0x12
push str.OpenProcess
push eax
mov dword [ebp - 0xb0], ecx
mov dword [ebp - 0xb8], ecx
call fcn.0040533a
mov eax, dword [ebp - 0xb0]
add esp, 8
mov dword [ebp - 4], 0x11
test al, 2
je 0x544e8d
lea ecx, [ebp - 0x208]
call fcn.004042b9
mov byte [ebp - 0xb4], 0
jmp 0x5458c1
push 0
push 0x5cfbc0
push 0
push 0x5cfbb0
push 0
push 0x5cfba0
push eax
mov eax, dword [ebp + 8]
lea ecx, [ebp - 0x238]
push dword [eax + 0x8c]
push dword [0x5cacc8]
push dword [0x5cacc4]
push dword [0x5cacc0]
call fcn.0040826a
lea eax, [ebp - 0xa0]
push eax
lea ecx, [ebp - 0x238]
call fcn.00404caa
mov esi, eax
push 0x20
mov byte [ebp - 4], 0x14
call fcn.004078a6
movups xmm0, xmmword [str.__initial_client_data]
add esp, 4
mov dword [ebp - 0x30], 0x16
mov dword [ebp - 0x2c], 0x1f
movups xmmword [eax], xmm0
mov ecx, dword [0x5ae600]
mov dword [eax + 0x10], ecx
mov cx, word [0x5ae604]
mov word [eax + 0x14], cx
mov byte [eax + 0x16], 0
mov dword [ebp - 0x40], eax
push esi
lea eax, [ebp - 0x40]
mov byte [ebp - 4], 0x15
push eax
push dword [ebp - 0xc0]
lea ecx, [ebp - 0x70]
call fcn.0040787e
or dword [ebp - 0xb0], 0x1000
cmp dword [ebp - 0x5c], 0x10
lea eax, [ebp - 0x70]
mov byte [ebp - 4], 0x16
cmovae eax, dword [ebp - 0x70]
mov dword [ebp - 0xc4], eax
mov eax, dword [ebp - 0x60]
mov dword [ebp - 0xc0], eax
lea eax, [ebp - 0xc4]
push eax
lea eax, [ebp - 0x88]
push eax
call fcn.00401762
lea ecx, [ebp - 0x58]
mov byte [ebp - 4], 0x17
push ecx
push eax
call fcn.0040789c
mov edx, dword [ebp - 0x74]
add esp, 0x10
mov byte [ebp - 4], 0x16
cmp edx, 8
jb 0x544fce
mov ecx, dword [ebp - 0x88]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x544fc4
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x545980
push edx
push ecx
call fcn.00406177
add esp, 8
xor eax, eax
mov dword [ebp - 0x78], 0
lea ecx, [ebp - 0x70]
mov dword [ebp - 0x74], 7
mov word [ebp - 0x88], ax
call fcn.00405c40
mov edx, dword [ebp - 0x2c]
mov byte [ebp - 4], 0x14
cmp edx, 0x10
jb 0x545025
mov ecx, dword [ebp - 0x40]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x54501b
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x545980
push edx
push ecx
call fcn.00406177
add esp, 8
lea ecx, [ebp - 0xa0]
call fcn.00405c40
mov esi, dword [sym.imp.KERNEL32.dll_GetStdHandle]
xorps xmm0, xmm0
push 0xfffffffffffffff6
movlpd qword [ebp - 0x120], xmm0
movlpd qword [ebp - 0x118], xmm0
movlpd qword [ebp - 0x110], xmm0
movlpd qword [ebp - 0x108], xmm0
movlpd qword [ebp - 0x100], xmm0
movlpd qword [ebp - 0xf4], xmm0
mov dword [ebp - 0xe0], 0
mov dword [ebp - 0xf8], 0x100
call esi
push 0xfffffffffffffff5
mov dword [ebp - 0xec], eax
call esi
push 0xfffffffffffffff4
mov dword [ebp - 0xe8], eax
call esi
mov dword [ebp - 0xe4], eax
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x14], 0
xor esi, esi
mov dword [ebp - 0xd8], esi
xor edi, edi
mov dword [ebp - 0xdc], edi
mov ecx, dword [0x5ce460]
mov eax, dword fs:[0x2c]
mov byte [ebp - 4], 0x1a
mov eax, dword [eax + ecx*4]
mov dword [ebp - 0xcc], eax
mov ecx, eax
mov eax, dword [0x5cfbf4]
cmp eax, dword [ecx + 0x104]
jg 0x545985
jmp 0x5450f4
mov ecx, dword [ebp - 0xcc]
mov eax, dword [0x5cfbfc]
cmp eax, dword [ecx + 0x104]
jg 0x5459cf
mov eax, dword [0x5cfbf0]
test eax, eax
je 0x545501
cmp dword [0x5cfbf8], 0
je 0x545501
lea ecx, [ebp - 0xd0]
mov dword [ebp - 0xb8], 0x80000
push ecx
push 0
push 1
push 0
mov dword [ebp - 0x124], 0x48
call eax
test eax, eax
je 0x5451b5
push 2
push 0x1b1
push str.T:p4PatcherExternalLibraries_sentry_native0.3.1externalcrashpadclientcrashpad_client_win.cc
push str.bool___cdecl_crashpad::_anonymous_namespace::StartHandlerProcess_class_std::unique_ptr_struct_crashpad::_anonymous_namespace::BackgroundHandlerStartThreadData_struct_std::default_delete_struct_crashpad::_anonymous_namespace::BackgroundHandlerStartThreadData____
lea ecx, [ebp - 0x200]
call fcn.00403189
mov ecx, dword [ebp - 0xb0]
or ecx, 4
mov byte [ebp - 4], 0x1d
push str.InitializeProcThreadAttributeList__size__succeeded__expected_failure
push eax
mov dword [ebp - 0xb0], ecx
mov dword [ebp - 0xb8], ecx
call fcn.0040533a
mov eax, dword [ebp - 0xb0]
add esp, 8
mov dword [ebp - 4], 0x1a
test al, 4
je 0x54585e
lea ecx, [ebp - 0x200]
call fcn.004082e7
mov byte [ebp - 0xb4], 0
jmp 0x545875
call dword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0x7a
je 0x545235
call fcn.00401b13
push eax
push 2
push 0x1b5
push str.T:p4PatcherExternalLibraries_sentry_native0.3.1externalcrashpadclientcrashpad_client_win.cc
push str.bool___cdecl_crashpad::_anonymous_namespace::StartHandlerProcess_class_std::unique_ptr_struct_crashpad::_anonymous_namespace::BackgroundHandlerStartThreadData_struct_std::default_delete_struct_crashpad::_anonymous_namespace::BackgroundHandlerStartThreadData____
lea ecx, [ebp - 0x208]
call fcn.00405484
mov ecx, dword [ebp - 0xb0]
or ecx, 8
mov byte [ebp - 4], 0x20
push str.InitializeProcThreadAttributeList__size_
push eax
mov dword [ebp - 0xb0], ecx
mov dword [ebp - 0xb8], ecx
call fcn.0040533a
mov eax, dword [ebp - 0xb0]
add esp, 8
mov dword [ebp - 4], 0x1a
test al, 8
je 0x54585e
lea ecx, [ebp - 0x208]
call fcn.004042b9
mov byte [ebp - 0xb4], 0
jmp 0x545875
push dword [ebp - 0xd0]
call fcn.00402900
add esp, 4
mov esi, eax
lea eax, [ebp - 0xd0]
mov dword [ebp - 0xd8], esi
mov dword [ebp - 0xe0], esi
push eax
push 0
push 1
push esi
call dword [0x5cfbf0]
test eax, eax
jne 0x5452dc
call fcn.00401b13
push eax
push 2
push 0x1c0
push str.T:p4PatcherExternalLibraries_sentry_native0.3.1externalcrashpadclientcrashpad_client_win.cc
push str.bool___cdecl_crashpad::_anonymous_namespace::StartHandlerProcess_class_std::unique_ptr_struct_crashpad::_anonymous_namespace::BackgroundHandlerStartThreadData_struct_std::default_delete_struct_crashpad::_anonymous_namespace::BackgroundHandlerStartThreadData____
lea ecx, [ebp - 0x208]
call fcn.00405484
mov ecx, dword [ebp - 0xb0]
or ecx, 0x10
mov byte [ebp - 4], 0x23
push str.InitializeProcThreadAttributeList
push eax
mov dword [ebp - 0xb0], ecx
mov dword [ebp - 0xb8], ecx
call fcn.0040533a
mov eax, dword [ebp - 0xb0]
add esp, 8
mov dword [ebp - 4], 0x1a
test al, 0x10
je 0x54585e
lea ecx, [ebp - 0x208]
call fcn.004042b9
mov byte [ebp - 0xb4], 0
jmp 0x545875
mov edi, dword [ebp - 0xe0]
lea ecx, [ebp - 0x1c]
push 8
mov dword [ebp - 0xdc], edi
call fcn.0040335a
mov dword [ebp - 0x1c], eax
lea ecx, [ebp - 0x1c]
mov dword [ebp - 0x18], eax
add eax, 0x20
push 0x5cacc0
mov dword [ebp - 0x14], eax
call fcn.00405b00
push 0x5cacc4
lea ecx, [ebp - 0x1c]
call fcn.00405b00
push 0x5cacc8
lea ecx, [ebp - 0x1c]
call fcn.00405b00
mov eax, dword [ebp + 8]
lea ecx, [ebp - 0x1c]
add eax, 0x8c
push eax
call fcn.00405b00
lea eax, [ebp - 0xd4]
push eax
lea ecx, [ebp - 0x1c]
call fcn.00405b00
mov eax, dword [ebp - 0xec]
mov dword [ebp - 0xc8], eax
mov dword [ebp - 0xc0], eax
test eax, eax
je 0x5453a1
cmp eax, 0xffffffff
je 0x5453a1
push eax
call dword [sym.imp.KERNEL32.dll_GetFileType]
cmp eax, 1
je 0x545371
cmp eax, 3
jne 0x5453a1
mov ecx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x18]
cmp ecx, eax
je 0x545392
mov edx, dword [ebp - 0xc8]
cmp dword [ecx], edx
je 0x54538e
add ecx, 4
cmp ecx, eax
jne 0x545381
jmp 0x545392
cmp ecx, eax
jne 0x5453a1
lea eax, [ebp - 0xc0]
push eax
lea ecx, [ebp - 0x1c]
call fcn.00405b00
mov eax, dword [ebp - 0xe8]
mov dword [ebp - 0xc0], eax
mov dword [ebp - 0xc8], eax
test eax, eax
je 0x545400
cmp eax, 0xffffffff
je 0x545400
push eax
call dword [sym.imp.KERNEL32.dll_GetFileType]
cmp eax, 1
je 0x5453cd
cmp eax, 3
jne 0x545400
mov ecx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x18]
cmp ecx, eax
je 0x5453f1
mov edx, dword [ebp - 0xc0]
nop dword [eax]
cmp dword [ecx], edx
je 0x5453ed
add ecx, 4
cmp ecx, eax
jne 0x5453e0
jmp 0x5453f1
cmp ecx, eax
jne 0x545400
lea eax, [ebp - 0xc8]
push eax
lea ecx, [ebp - 0x1c]
call fcn.00405b00
mov eax, dword [ebp - 0xe4]
mov dword [ebp - 0xc0], eax
mov dword [ebp - 0xc8], eax
test eax, eax
je 0x545460
cmp eax, 0xffffffff
je 0x545460
push eax
call dword [sym.imp.KERNEL32.dll_GetFileType]
cmp eax, 1
je 0x54542c
cmp eax, 3
jne 0x545460
mov ecx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x18]
cmp ecx, eax
je 0x545451
mov edx, dword [ebp - 0xc0]
nop dword [eax]
cmp dword [ecx], edx
je 0x54544d
add ecx, 4
cmp ecx, eax
jne 0x545440
jmp 0x545451
cmp ecx, eax
jne 0x545463
lea eax, [ebp - 0xc8]
push eax
lea ecx, [ebp - 0x1c]
call fcn.00405b00
mov eax, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x1c]
sub eax, ecx
push 0
push 0
and eax, 0xfffffffc
push eax
push ecx
push 0x20002
push 0
push dword [ebp - 0xe0]
call dword [0x5cfbf8]
test eax, eax
jne 0x545515
call fcn.00401b13
push eax
push 2
push 0x1da
push str.T:p4PatcherExternalLibraries_sentry_native0.3.1externalcrashpadclientcrashpad_client_win.cc
push str.bool___cdecl_crashpad::_anonymous_namespace::StartHandlerProcess_class_std::unique_ptr_struct_crashpad::_anonymous_namespace::BackgroundHandlerStartThreadData_struct_std::default_delete_struct_crashpad::_anonymous_namespace::BackgroundHandlerStartThreadData____
lea ecx, [ebp - 0x208]
call fcn.00405484
mov ecx, dword [ebp - 0xb0]
or ecx, 0x20
mov byte [ebp - 4], 0x27
push str.UpdateProcThreadAttribute
push eax
mov dword [ebp - 0xb0], ecx
mov dword [ebp - 0xb8], ecx
call fcn.0040533a
mov eax, dword [ebp - 0xb0]
add esp, 8
mov dword [ebp - 4], 0x1a
test al, 0x20
je 0x54585e
lea ecx, [ebp - 0x208]
call fcn.004042b9
mov byte [ebp - 0xb4], 0
jmp 0x545875
mov dword [ebp - 0xb8], 0
mov dword [ebp - 0x124], 0x44
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0x10]
cmp edx, 0xc
jb 0x5455ae
xor eax, eax
mov dword [ebp - 0x30], 0
add edx, 0xfffffff4
mov dword [ebp - 0x2c], 7
mov word [ebp - 0x40], ax
mov eax, dword [ecx + 0x10]
mov dword [ebp - 0xc0], edx
cmp eax, edx
jb 0x545a2b
sub eax, edx
or edx, 0xffffffff
cmp eax, 0xffffffff
cmovb edx, eax
cmp dword [ecx + 0x14], 8
mov dword [ebp - 0xc8], edx
mov edx, dword [ebp - 0xc0]
jb 0x54556b
mov ecx, dword [ecx]
push dword [ebp - 0xc8]
lea eax, [ecx + edx*2]
push eax
lea ecx, [ebp - 0x40]
call fcn.004054a7
or dword [ebp - 0xb0], 0x2040
lea eax, [ebp - 0x40]
cmp dword [ebp - 0x2c], 8
push str.rundll32.exe
cmovae eax, dword [ebp - 0x40]
push eax
call fcn.00402ca7
mov ecx, dword [ebp + 8]
add esp, 8
mov byte [ebp - 0xb4], 1
test eax, eax
je 0x5455b5
mov byte [ebp - 0xb4], 0
mov eax, dword [ebp - 0xb0]
test al, 0x40
je 0x545605
mov edx, dword [ebp - 0x2c]
and eax, 0xffffffbf
mov dword [ebp - 0xb0], eax
cmp edx, 8
jb 0x545605
mov ecx, dword [ebp - 0x40]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x5455f8
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x545a30
push edx
push ecx
call fcn.00406177
mov ecx, dword [ebp + 8]
add esp, 8
cmp byte [ebp - 0xb4], 0
je 0x545612
xor ecx, ecx
jmp 0x54561a
cmp dword [ecx + 0x14], 8
jb 0x54561a
mov ecx, dword [ecx]
cmp dword [ebp - 0x44], 8
lea edx, [ebp - 0x134]
push edx
lea edx, [ebp - 0x124]
push edx
push 0
push 0
push dword [ebp - 0xb8]
lea eax, [ebp - 0x58]
cmovae eax, dword [ebp - 0x58]
push 1
push 0
push 0
push eax
push ecx
call dword [sym.imp.KERNEL32.dll_CreateProcessW]
test eax, eax
jne 0x5456c7
call fcn.00401b13
push eax
push 2
push 0x1fc
push str.T:p4PatcherExternalLibraries_sentry_native0.3.1externalcrashpadclientcrashpad_client_win.cc
push str.bool___cdecl_crashpad::_anonymous_namespace::StartHandlerProcess_class_std::unique_ptr_struct_crashpad::_anonymous_namespace::BackgroundHandlerStartThreadData_struct_std::default_delete_struct_crashpad::_anonymous_namespace::BackgroundHandlerStartThreadData____
lea ecx, [ebp - 0x208]
call fcn.00405484
mov ecx, dword [ebp - 0xb0]
or ecx, 0x80
mov byte [ebp - 4], 0x2a
push str.CreateProcess
push eax
mov dword [ebp - 0xb0], ecx
mov dword [ebp - 0xb8], ecx
call fcn.0040533a
mov eax, dword [ebp - 0xb0]
add esp, 8
mov dword [ebp - 4], 0x1a
test al, al
jns 0x54585e
lea ecx, [ebp - 0x208]
call fcn.004042b9
mov byte [ebp - 0xb4], 0
jmp 0x545875
push dword [ebp - 0x130]
call dword [sym.imp.KERNEL32.dll_CloseHandle]
test eax, eax
jne 0x545723
call fcn.00401b13
push eax
push 1
push 0x201
push str.T:p4PatcherExternalLibraries_sentry_native0.3.1externalcrashpadclientcrashpad_client_win.cc
push str.bool___cdecl_crashpad::_anonymous_namespace::StartHandlerProcess_class_std::unique_ptr_struct_crashpad::_anonymous_namespace::BackgroundHandlerStartThreadData_struct_std::default_delete_struct_crashpad::_anonymous_namespace::BackgroundHandlerStartThreadData____
lea ecx, [ebp - 0x208]
call fcn.00405484
mov ecx, dword [ebp - 0xb0]
or ecx, 0x100
mov byte [ebp - 4], 0x2d
push str.CloseHandle_thread
push eax
mov dword [ebp - 0xb0], ecx
mov dword [ebp - 0xb8], ecx
call fcn.0040533a
add esp, 8
mov eax, dword [ebp - 0xb0]
mov dword [ebp - 4], 0x1a
test eax, 0x100
je 0x54574d
and eax, 0xfffffeff
lea ecx, [ebp - 0x208]
mov dword [ebp - 0xb0], eax
call fcn.004042b9
push dword [ebp - 0x134]
call dword [sym.imp.KERNEL32.dll_CloseHandle]
test eax, eax
jne 0x5457a9
call fcn.00401b13
push eax
push 1
push 0x204
push str.T:p4PatcherExternalLibraries_sentry_native0.3.1externalcrashpadclientcrashpad_client_win.cc
push str.bool___cdecl_crashpad::_anonymous_namespace::StartHandlerProcess_class_std::unique_ptr_struct_crashpad::_anonymous_namespace::BackgroundHandlerStartThreadData_struct_std::default_delete_struct_crashpad::_anonymous_namespace::BackgroundHandlerStartThreadData____
lea ecx, [ebp - 0x208]
call fcn.00405484
mov ecx, dword [ebp - 0xb0]
or ecx, 0x200
mov byte [ebp - 4], 0x2e
push str.CloseHandle_process
push eax
mov dword [ebp - 0xb0], ecx
mov dword [ebp - 0xb8], ecx
call fcn.0040533a
add esp, 8
test dword [ebp - 0xb0], 0x200
mov dword [ebp - 4], 0x1a
je 0x5457c7
lea ecx, [ebp - 0x208]
call fcn.004042b9
mov eax, dword [ebp + 8]
mov dword [ebp - 0xc0], eax
mov ecx, dword [eax + 0x8c]
cmp ecx, 0xffffffff
je 0x5457f4
push ecx
call fcn.004069c4
mov eax, dword [ebp - 0xc0]
add esp, 4
mov dword [eax + 0x8c], 0xffffffff
mov dword [eax + 0x8c], 0xffffffff
xorps xmm0, xmm0
lea eax, [ebp - 0xac]
movlpd qword [ebp - 0x154], xmm0
push eax
lea eax, [ebp - 0x158]
movlpd qword [ebp - 0x14c], xmm0
push eax
mov eax, dword [ebp + 8]
add eax, 0x74
movlpd qword [ebp - 0x144], xmm0
push eax
movlpd qword [ebp - 0x13c], xmm0
mov dword [ebp - 0x158], 2
movq qword [ebp - 0xac], xmm0
mov dword [ebp - 0xa4], 0
call fcn.00406c26
add esp, 0xc
test al, al
jne 0x545867
mov byte [ebp - 0xb4], 0
jmp 0x545875
mov byte [ebp - 0xb9], 1
mov byte [ebp - 0xb4], 1
mov byte [ebp - 4], 0x31
test edi, edi
je 0x54589b
mov ecx, dword [ebp - 0xcc]
mov eax, dword [0x5cfbec]
cmp eax, dword [ecx + 0x104]
jg 0x545a35
push edi
call dword [0x5cfbe8]
test esi, esi
je 0x5458a8
push esi
call fcn.00406113
add esp, 4
mov ecx, dword [ebp - 0x1c]
test ecx, ecx
je 0x5458c1
mov eax, dword [ebp - 0x14]
sub eax, ecx
sar eax, 2
push eax
push ecx
lea ecx, [ebp - 0x1c]
call fcn.0040338c
mov eax, dword [ebp - 0xd4]
mov byte [ebp - 4], 0x32
test eax, eax
je 0x5458d8
push eax
call fcn.0040632a
add esp, 4
mov edx, dword [ebp - 0x44]
mov byte [ebp - 4], 2
cmp edx, 8
jb 0x545916
mov ecx, dword [ebp - 0x58]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x54590c
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x545a77
push edx
push ecx
call fcn.00406177
add esp, 8
xor eax, eax
mov dword [ebp - 0x48], 0
mov dword [ebp - 0x44], 7
mov word [ebp - 0x58], ax
xor ecx, ecx
mov byte [ebp - 4], 0x33
cmp byte [ebp - 0xb9], cl
sete cl
inc ecx
push ecx
call fcn.005440f0
add esp, 4
lea ecx, [ebp + 8]
call fcn.00541a70
mov al, byte [ebp - 0xb4]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.00405a92
mov esp, ebp
pop ebp
ret
call fcn.0040837d
call fcn.0040837d
call fcn.0040837d
call fcn.00404e26
call fcn.0040837d
push 0x5cfbf4
call fcn.00402b08
add esp, 4
cmp dword [0x5cfbf4], 0xffffffff
jne 0x5450ee
push 0
push str.::InitializeProcThreadAttributeList
push str.kernel32.dll
mov byte [ebp - 4], 0x1b
call fcn.00406488
push 0x5cfbf4
mov dword [0x5cfbf0], eax
mov byte [ebp - 4], 0x1a
call fcn.00404435
add esp, 0x10
jmp 0x5450ee
push 0x5cfbfc
call fcn.00402b08
add esp, 4
cmp dword [0x5cfbfc], 0xffffffff
jne 0x545105
cmp dword [0x5cfbf0], 0
mov byte [ebp - 4], 0x1c
je 0x545a0c
push 0
push str.::UpdateProcThreadAttribute
push str.kernel32.dll
call fcn.00406488
add esp, 0xc
jmp 0x545a10
xor eax, eax
jmp 0x545a10
push 0x5cfbfc
mov byte [ebp - 4], 0x1a
mov dword [0x5cfbf8], eax
call fcn.00404435
add esp, 4
jmp 0x545105
call fcn.00401361
call fcn.0040837d
push 0x5cfbec
call fcn.00402b08
add esp, 4
cmp dword [0x5cfbec], 0xffffffff
jne 0x545894
push 1
push str.::DeleteProcThreadAttributeList
push str.kernel32.dll
call fcn.00406488
push 0x5cfbec
mov dword [0x5cfbe8], eax
call fcn.00404435
add esp, 0x10
jmp 0x545894
call fcn.0040837d
int3