Function at 0x1c48a2d
Capabilities:
Create process on windows

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff0
sub esp, 0x280
mov ebx, ecx
mov eax, dword [0x1cd643c]
xor eax, ebp
mov dword [esp + 0x278], eax
call fcn.01c5bddc
test al, al
jne 0x1c49b9b
xor eax, eax
lea ecx, [esp + 0x268]
mov dword [ecx + 4], eax
mov dword [ecx], eax
mov dword [ecx + 8], eax
mov dword [esp + 0x1c], ecx
push ecx
push dword [ebx]
call fcn.01c5be00
add esp, 8
mov edx, dword [ebx]
mov esi, dword [edx + 0x3c]
mov edi, dword [edx + 0x40]
cmp esi, edi
mov dword [esp + 0xc], ebx
je 0x1c48ae1
lea ebx, [esp + 0x1bc]
movzx eax, byte [esi + 0xb]
mov ecx, esi
test al, al
jns 0x1c48a9f
mov ecx, dword [esi]
mov eax, dword [esi + 4]
push eax
push ecx
push ebx
call fcn.01c44800
add esp, 0xc
lea eax, [esp + 0x268]
push eax
push ebx
call fcn.01c5be00
add esp, 8
cmp byte [esp + 0x1c7], 0
jns 0x1c48ad4
push dword [esp + 0x1bc]
call fcn.01c8fed0
add esp, 4
add esi, 0xc
cmp edi, esi
jne 0x1c48a90
mov ebx, dword [esp + 0xc]
mov edx, dword [ebx]
movzx eax, byte [edx + 0x17]
test al, al
jns 0x1c48aec
mov eax, dword [edx + 0x10]
test eax, eax
je 0x1c48b54
add edx, 0xc
lea ecx, [esp + 0x50]
push str.database
mov esi, edx
call fcn.01c242a8
lea edi, [esp + 0x1bc]
mov ecx, edi
lea edx, [esp + 0x50]
push esi
call fcn.01c4a54a
add esp, 4
lea eax, [esp + 0x268]
push eax
push edi
call fcn.01c5be00
add esp, 8
cmp byte [edi + 0xb], 0
jns 0x1c48b3f
push dword [esp + 0x1bc]
call fcn.01c8fed0
add esp, 4
cmp byte [esp + 0x5b], 0
jns 0x1c48b52
push dword [esp + 0x50]
call fcn.01c8fed0
add esp, 4
mov edx, dword [ebx]
movzx eax, byte [edx + 0x23]
test al, al
jns 0x1c48b5f
mov eax, dword [edx + 0x1c]
test eax, eax
je 0x1c48bc7
add edx, 0x18
lea ecx, [esp + 0x50]
push str.metrics_dir
mov esi, edx
call fcn.01c242a8
lea edi, [esp + 0x1bc]
mov ecx, edi
lea edx, [esp + 0x50]
push esi
call fcn.01c4a54a
add esp, 4
lea eax, [esp + 0x268]
push eax
push edi
call fcn.01c5be00
add esp, 8
cmp byte [edi + 0xb], 0
jns 0x1c48bb2
push dword [esp + 0x1bc]
call fcn.01c8fed0
add esp, 4
cmp byte [esp + 0x5b], 0
jns 0x1c48bc5
push dword [esp + 0x50]
call fcn.01c8fed0
add esp, 4
mov edx, dword [ebx]
movzx eax, byte [edx + 0x2f]
test al, al
js 0x1c48bd3
mov ecx, eax
jmp 0x1c48bd6
mov ecx, dword [edx + 0x28]
test ecx, ecx
je 0x1c48c7b
test al, al
jns 0x1c48bea
mov eax, dword [edx + 0x28]
mov edx, dword [edx + 0x24]
jmp 0x1c48bed
add edx, 0x24
lea ebx, [esp + 0x50]
push eax
push edx
push ebx
call fcn.01c44800
add esp, 0xc
lea esi, [esp + 0x130]
mov ecx, esi
push 0x1cbe16f
call fcn.01c242a8
lea edi, [esp + 0x1bc]
mov ecx, edi
mov edx, esi
push ebx
call fcn.01c4a54a
add esp, 4
lea eax, [esp + 0x268]
push eax
push edi
call fcn.01c5be00
add esp, 8
cmp byte [edi + 0xb], 0
jns 0x1c48c49
push dword [esp + 0x1bc]
call fcn.01c8fed0
add esp, 4
cmp byte [esp + 0x13b], 0
mov esi, dword [esp + 0xc]
jns 0x1c48c66
push dword [esp + 0x130]
call fcn.01c8fed0
add esp, 4
cmp byte [esp + 0x5b], 0
jns 0x1c48c79
push dword [esp + 0x50]
call fcn.01c8fed0
add esp, 4
mov edx, dword [esi]
mov esi, dword [edx + 0x30]
lea eax, [edx + 0x34]
mov dword [esp + 0x10], eax
cmp eax, esi
je 0x1c48df8
lea eax, [esi + 0x10]
push 0x3d
push eax
lea eax, [esp + 0x188]
push eax
call fcn.01c26dd4
add esp, 0xc
movzx eax, byte [esi + 0x27]
test al, al
jns 0x1c48cb3
mov eax, dword [esi + 0x20]
mov edx, dword [esi + 0x1c]
jmp 0x1c48cb6
lea edx, [esi + 0x1c]
lea ecx, [esp + 0x180]
push eax
push edx
call fcn.01c3ec0a
mov ecx, dword [eax + 8]
mov dword [esp + 0x138], ecx
movq xmm0, qword [eax]
movq qword [esp + 0x130], xmm0
xor ecx, ecx
mov dword [eax], ecx
mov dword [eax + 4], ecx
mov dword [eax + 8], ecx
movzx eax, byte [esp + 0x13b]
lea ecx, [esp + 0x130]
test al, al
jns 0x1c48d06
mov ecx, dword [esp + 0x130]
mov eax, dword [esp + 0x134]
push eax
push ecx
lea eax, [esp + 0x58]
push eax
call fcn.01c44800
add esp, 0xc
lea ebx, [esp + 0x2c]
mov ecx, ebx
push str.annotation
call fcn.01c242a8
lea edi, [esp + 0x1bc]
mov ecx, edi
mov edx, ebx
lea eax, [esp + 0x50]
push eax
call fcn.01c4a54a
add esp, 4
lea eax, [esp + 0x268]
push eax
push edi
call fcn.01c5be00
add esp, 8
cmp byte [esp + 0x1c7], 0
jns 0x1c48d67
push dword [esp + 0x1bc]
call fcn.01c8fed0
add esp, 4
cmp byte [esp + 0x37], 0
jns 0x1c48d7a
push dword [esp + 0x2c]
call fcn.01c8fed0
add esp, 4
cmp byte [esp + 0x5b], 0
jns 0x1c48d8d
push dword [esp + 0x50]
call fcn.01c8fed0
add esp, 4
cmp byte [esp + 0x13b], 0
jns 0x1c48da6
push dword [esp + 0x130]
call fcn.01c8fed0
add esp, 4
cmp byte [esp + 0x18b], 0
jns 0x1c48dbf
push dword [esp + 0x180]
call fcn.01c8fed0
add esp, 4
mov ecx, dword [esi + 4]
test ecx, ecx
je 0x1c48dd0
mov eax, ecx
mov ecx, dword [ecx]
test ecx, ecx
jne 0x1c48dc6
jmp 0x1c48de6
mov eax, dword [esi + 8]
cmp dword [eax], esi
je 0x1c48de6
add esi, 8
mov ecx, dword [esi]
lea esi, [ecx + 8]
mov eax, dword [ecx + 8]
cmp dword [eax], ecx
jne 0x1c48dda
mov esi, eax
cmp dword [esp + 0x10], eax
jne 0x1c48c8d
mov eax, dword [esp + 0xc]
mov edx, dword [eax]
mov ebx, dword [edx + 0x48]
mov eax, dword [edx + 0x4c]
mov dword [esp + 0x10], eax
cmp ebx, eax
je 0x1c48e70
lea edi, [esp + 0x50]
mov ecx, edi
push 0x1cbe17e
call fcn.01c242a8
lea esi, [esp + 0x1bc]
mov ecx, esi
mov edx, edi
push ebx
call fcn.01c4a54a
add esp, 4
lea eax, [esp + 0x268]
push eax
push esi
call fcn.01c5be00
add esp, 8
cmp byte [esp + 0x1c7], 0
jns 0x1c48e54
push dword [esp + 0x1bc]
call fcn.01c8fed0
add esp, 4
cmp byte [esp + 0x5b], 0
jns 0x1c48e67
push dword [esp + 0x50]
call fcn.01c8fed0
add esp, 4
add ebx, 0xc
cmp dword [esp + 0x10], ebx
jne 0x1c48e06
call dword [sym.imp.KERNEL32.dll_GetCurrentProcessId]
push eax
push 1
push 0x1f0fff
call dword [sym.imp.KERNEL32.dll_OpenProcess]
test eax, eax
je 0x1c48f4c
mov edx, eax
pcmpeqd xmm0, xmm0
lea esi, [esp + 0x180]
movdqa xmmword [esi + 0x20], xmm0
movdqa xmmword [esi + 0x10], xmm0
movdqa xmmword [esi], xmm0
mov eax, dword [esp + 0xc]
mov eax, dword [eax]
xor edi, edi
mov ecx, esi
push edi
push 0x1cf18fc
push edi
push 0x1cf18f0
push edi
push 0x1cf18e0
mov dword [esp + 0x28], edx
push edx
push dword [eax + 0x64]
push dword [0x1cd6430]
push dword [0x1cd642c]
push dword [0x1cd6428]
call fcn.01c5bf2c
lea ebx, [esp + 0x130]
mov ecx, esi
push ebx
call fcn.01c5bf5c
lea esi, [esp + 0x2c]
mov ecx, esi
push str.__initial_client_data
call fcn.01c242a8
movzx eax, byte [ebx + 0xb]
test al, al
jns 0x1c48f17
mov eax, dword [esp + 0x134]
mov ebx, dword [esp + 0x130]
mov ecx, esi
push eax
push ebx
call fcn.01c3ec0a
mov ecx, dword [eax + 8]
mov dword [esp + 0x58], ecx
movq xmm0, qword [eax]
movq qword [esp + 0x50], xmm0
mov dword [eax], edi
mov dword [eax + 4], edi
mov dword [eax + 8], edi
movzx eax, byte [esp + 0x5b]
test al, al
jns 0x1c48fac
mov ecx, dword [esp + 0x50]
mov eax, dword [esp + 0x54]
jmp 0x1c48fb0
xor ebx, ebx
push 2
call fcn.01c55c50
add esp, 4
mov edi, 0
test al, al
je 0x1c4954a
call fcn.01c56670
lea esi, [esp + 0x1bc]
mov ecx, esi
push eax
push 2
push 0x18c
push str..._.._third_party_crashpad_crashpad_client_crashpad_client_win.cc
call fcn.01c56810
lea eax, [esp + 0x1c4]
push 0xb
push 0x1cbe189
push eax
call fcn.01c23784
add esp, 0xc
mov ecx, esi
call fcn.01c568c0
xor ebx, ebx
xor edi, edi
jmp 0x1c4954a
lea ecx, [esp + 0x50]
lea ebx, [esp + 0x1bc]
push eax
push ecx
push ebx
call fcn.01c44800
add esp, 0xc
lea eax, [esp + 0x268]
push eax
push ebx
call fcn.01c5be00
add esp, 8
cmp byte [ebx + 0xb], 0
jns 0x1c48fe8
push dword [esp + 0x1bc]
call fcn.01c8fed0
add esp, 4
cmp byte [esp + 0x5b], 0
jns 0x1c48ffb
push dword [esp + 0x50]
call fcn.01c8fed0
add esp, 4
cmp byte [esp + 0x37], 0
jns 0x1c4900e
push dword [esp + 0x2c]
call fcn.01c8fed0
add esp, 4
cmp byte [esp + 0x13b], 0
jns 0x1c49027
push dword [esp + 0x130]
call fcn.01c8fed0
add esp, 4
pxor xmm0, xmm0
movdqa xmmword [esp + 0x150], xmm0
xor esi, esi
mov dword [esp + 0x174], esi
mov dword [esp + 0x170], esi
movdqa xmmword [esp + 0x160], xmm0
movdqa xmmword [esp + 0x140], xmm0
movdqa xmmword [esp + 0x130], xmm0
mov dword [esp + 0x15c], 0x100
mov edi, dword [sym.imp.KERNEL32.dll_GetStdHandle]
push 0xfffffffffffffff6
call edi
mov dword [esp + 0x168], eax
push 0xfffffffffffffff5
call edi
mov dword [esp + 0x16c], eax
push 0xfffffffffffffff4
call edi
mov dword [esp + 0x170], eax
mov dword [esp + 0x124], esi
mov dword [esp + 0x128], esi
mov dword [esp + 0x12c], esi
mov dword [esp + 0x120], 0xffffffff
mov dword [esp + 0x118], 0x1cbe2ec
mov dword [esp + 0x11c], esi
mov byte [esp + 0x120], 0
mov eax, dword [0x1cf1920]
mov ecx, dword [0x1cf1960]
mov edx, dword fs:[0x2c]
mov ecx, dword [edx + ecx*4]
cmp eax, dword [ecx + 4]
jg 0x1c49b04
mov eax, dword [0x1cf1928]
mov ecx, dword [0x1cf1960]
mov edx, dword fs:[0x2c]
mov ecx, dword [edx + ecx*4]
cmp eax, dword [ecx + 4]
jg 0x1c49b49
mov ecx, dword [0x1cf191c]
test ecx, ecx
je 0x1c49195
cmp dword [0x1cf1924], 0
je 0x1c49195
mov dword [esp + 0x130], 0x48
lea esi, [esp + 0x50]
mov dword [esi], 0xffffffff
xor eax, eax
push esi
push eax
push 1
push eax
call ecx
test eax, eax
je 0x1c491d3
push 2
call fcn.01c55c50
add esp, 4
test al, al
je 0x1c494eb
lea esi, [esp + 0x1bc]
mov ecx, esi
push 2
push 0x1bd
push str..._.._third_party_crashpad_crashpad_client_crashpad_client_win.cc
call fcn.01c55cf0
lea eax, [esp + 0x1c4]
push 0x44
push str.InitializeProcThreadAttributeList__size__succeeded__expected_failure
push eax
call fcn.01c23784
add esp, 0xc
mov ecx, esi
call fcn.01c560d0
jmp 0x1c494eb
mov dword [esp + 0x130], 0x44
mov dword [esp + 0x18], 0
xor esi, esi
mov eax, dword [esp + 0xc]
mov eax, dword [eax]
movzx edx, byte [eax + 0xb]
test dl, dl
js 0x1c491c2
cmp dl, 0xc
jb 0x1c491cc
jmp 0x1c49260
cmp dword [eax + 4], 0xc
jae 0x1c4925d
xor ebx, ebx
jmp 0x1c492af
call dword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0x7a
jne 0x1c4949f
push dword [esp + 0x50]
call fcn.01c8ff03
add esp, 4
mov dword [esp + 0x174], eax
push esi
mov esi, eax
push 0
push 1
push eax
call dword [0x1cf191c]
test eax, eax
je 0x1c49594
mov dword [esp + 0x18], esi
lea esi, [esp + 0x118]
mov ecx, esi
call fcn.01c4a894
mov eax, dword [esp + 0x174]
mov dword [esi + 4], eax
lea esi, [esp + 0x124]
mov ecx, esi
push 8
call fcn.01c4a68e
mov edi, dword [esi + 4]
mov eax, dword [esi + 8]
cmp edi, eax
je 0x1c495ed
mov eax, dword [0x1cd6428]
mov dword [edi], eax
add edi, 4
mov dword [esp + 0x128], edi
mov esi, edi
jmp 0x1c496b2
mov edx, dword [eax + 4]
add edx, 0xfffffff4
lea edi, [eax + 0xc]
mov ecx, ebx
push edi
push 0xffffffffffffffff
push edx
push eax
call fcn.01c3f1c0
cmp byte [esp + 0x1c7], 0
jns 0x1c49283
mov ebx, dword [esp + 0x1bc]
push str.rundll32.exe
push ebx
call fcn.01ca4305
add esp, 8
test eax, eax
sete bl
cmp byte [esp + 0x1c7], 0
jns 0x1c492af
push dword [esp + 0x1bc]
call fcn.01c8fed0
add esp, 4
pcmpeqd xmm0, xmm0
movdqa xmmword [esp + 0x100], xmm0
cmp byte [esp + 0x273], 0
jns 0x1c492d1
mov eax, dword [esp + 0x268]
mov dword [esp + 0x1c], eax
xor eax, eax
mov ecx, 0
test bl, bl
jne 0x1c492ea
mov ecx, dword [esp + 0xc]
mov ecx, dword [ecx]
cmp byte [ecx + 0xb], 0
jns 0x1c492ea
mov ecx, dword [ecx]
lea edx, [esp + 0x100]
lea edi, [esp + 0x130]
push edx
push edi
push eax
push eax
push esi
push 1
push eax
push eax
push dword [esp + 0x3c]
push ecx
call dword [sym.imp.KERNEL32.dll_CreateProcessW]
test eax, eax
je 0x1c49442
push dword [esp + 0x104]
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov esi, eax
push 1
call fcn.01c55c50
add esp, 4
mov ebx, eax
test esi, esi
jne 0x1c4936c
test bl, bl
je 0x1c4936c
call fcn.01c56670
lea ecx, [esp + 0x1bc]
push eax
push 1
push 0x20d
push str..._.._third_party_crashpad_crashpad_client_crashpad_client_win.cc
call fcn.01c56810
lea eax, [esp + 0x1c4]
push 0x12
push str.CloseHandle_thread
push eax
call fcn.01c23784
add esp, 0xc
test esi, esi
sete al
and bl, al
cmp bl, 1
jne 0x1c49384
lea ecx, [esp + 0x1bc]
call fcn.01c568c0
push dword [esp + 0x100]
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov esi, eax
push 1
call fcn.01c55c50
add esp, 4
mov ebx, eax
test esi, esi
jne 0x1c493d6
test bl, bl
je 0x1c493d6
call fcn.01c56670
lea ecx, [esp + 0x50]
push eax
push 1
push 0x210
push str..._.._third_party_crashpad_crashpad_client_crashpad_client_win.cc
call fcn.01c56810
lea eax, [esp + 0x58]
push 0x13
push str.CloseHandle_process
push eax
call fcn.01c23784
add esp, 0xc
test esi, esi
sete al
and bl, al
cmp bl, 1
jne 0x1c493eb
lea ecx, [esp + 0x50]
call fcn.01c568c0
mov esi, dword [esp + 0xc]
mov ecx, dword [esi]
add ecx, 0x60
mov dword [esp + 0x2c], 0xffffffff
lea edi, [esp + 0x2c]
push edi
call fcn.01c4a0c0
pxor xmm0, xmm0
movdqu xmmword [esp + 0x40], xmm0
movdqu xmmword [esp + 0x30], xmm0
mov dword [esp + 0x2c], 2
xor eax, eax
lea ecx, [esp + 0x20]
mov dword [ecx + 4], eax
mov dword [ecx], eax
mov dword [ecx + 8], eax
mov eax, dword [esi]
add eax, 0x54
push ecx
push edi
push eax
call fcn.01c5b664
add esp, 0xc
mov edi, eax
mov ebx, eax
jmp 0x1c49499
xor edi, edi
push 2
call fcn.01c55c50
add esp, 4
mov ebx, 0
test al, al
je 0x1c49499
call fcn.01c56670
lea esi, [esp + 0x1bc]
mov ecx, esi
push eax
push 2
push 0x208
push str..._.._third_party_crashpad_crashpad_client_crashpad_client_win.cc
call fcn.01c56810
lea eax, [esp + 0x1c4]
push 0xd
push str.CreateProcess
push eax
call fcn.01c23784
add esp, 0xc
mov ecx, esi
call fcn.01c568c0
xor edi, edi
xor ebx, ebx
mov esi, dword [esp + 0x18]
jmp 0x1c494f1
push 2
call fcn.01c55c50
add esp, 4
test al, al
je 0x1c494eb
call fcn.01c56670
lea esi, [esp + 0x1bc]
mov ecx, esi
push eax
push 2
push 0x1c1
push str..._.._third_party_crashpad_crashpad_client_crashpad_client_win.cc
call fcn.01c56810
lea eax, [esp + 0x1c4]
push 0x28
push str.InitializeProcThreadAttributeList__size_
push eax
call fcn.01c23784
add esp, 0xc
mov ecx, esi
call fcn.01c568c0
xor esi, esi
xor edi, edi
xor ebx, ebx
mov dword [esp + 0x118], 0x1cbe2ec
cmp byte [esp + 0x120], 0
jne 0x1c49b9e
lea ecx, [esp + 0x118]
call fcn.01c4a894
test esi, esi
je 0x1c49523
push esi
call fcn.01c8ff0c
add esp, 4
mov eax, dword [esp + 0x124]
test eax, eax
je 0x1c4953e
mov dword [esp + 0x128], eax
push eax
call fcn.01c8fed0
add esp, 4
push dword [esp + 0x10]
call fcn.01c5b55e
add esp, 4
cmp byte [esp + 0x273], 0
jns 0x1c49563
push dword [esp + 0x268]
call fcn.01c8fed0
add esp, 4
xor eax, eax
inc eax
mov ecx, edi
cmp cl, 1
adc eax, 0
mov dword [0x1cf1918], eax
mov ecx, dword [esp + 0xc]
call fcn.01c4a4d2
mov ecx, dword [esp + 0x278]
xor ecx, ebp
call fcn.01c8ff11
mov eax, ebx
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
push 2
call fcn.01c55c50
add esp, 4
test al, al
je 0x1c494ed
call fcn.01c56670
mov edi, esi
lea esi, [esp + 0x1bc]
mov ecx, esi
push eax
push 2
push 0x1cc
push str..._.._third_party_crashpad_crashpad_client_crashpad_client_win.cc
call fcn.01c56810
lea eax, [esp + 0x1c4]
push 0x21
push str.InitializeProcThreadAttributeList
push eax
call fcn.01c23784
add esp, 0xc
mov ecx, esi
mov esi, edi
call fcn.01c568c0
jmp 0x1c494ed
mov edx, dword [esp + 0x124]
sub edi, edx
mov ecx, edi
sar ecx, 2
mov esi, ecx
mov dword [esp + 8], ecx
inc ecx
cmp ecx, 0x40000000
jae 0x1c49ba1
mov dword [esp], edx
sub eax, edx
mov edx, eax
sar edx, 2
sar eax, 1
cmp eax, ecx
cmovb eax, ecx
cmp edx, 0x1fffffff
mov esi, 0x3fffffff
cmovb esi, eax
test esi, esi
je 0x1c4964f
cmp esi, 0x40000000
jae 0x1c49bad
lea eax, [esi*4]
push eax
call fcn.01c8fea0
add esp, 4
jmp 0x1c49651
xor eax, eax
lea ecx, [eax + esi*4]
mov dword [esp + 4], ecx
mov edx, dword [0x1cd6428]
mov ecx, dword [esp + 8]
lea esi, [eax + ecx*4]
add esi, 4
mov dword [esi - 4], edx
test edi, edi
mov ecx, dword [esp]
jle 0x1c49685
push edi
push ecx
push eax
mov edi, eax
call fcn.01c93580
mov eax, edi
mov ecx, dword [esp + 0xc]
add esp, 0xc
mov dword [esp + 0x124], eax
mov dword [esp + 0x128], esi
mov eax, dword [esp + 4]
mov dword [esp + 0x12c], eax
test ecx, ecx
je 0x1c496b2
push ecx
call fcn.01c8fed0
add esp, 4
mov esi, dword [esp + 0x128]
mov edi, dword [esp + 0x12c]
cmp esi, edi
je 0x1c496d3
mov eax, dword [0x1cd642c]
mov dword [esi], eax
add esi, 4
mov dword [esp + 0x128], esi
jmp 0x1c497a2
mov edx, dword [esp + 0x124]
sub edi, edx
mov esi, edi
sar esi, 2
lea eax, [esi + 1]
cmp eax, 0x40000000
jae 0x1c49ba1
mov ecx, edi
sar ecx, 1
cmp ecx, eax
cmovb ecx, eax
mov eax, esi
mov dword [esp + 8], esi
cmp esi, 0x1fffffff
mov esi, 0x3fffffff
cmovb esi, ecx
test esi, esi
je 0x1c49734
mov dword [esp], edx
cmp esi, 0x40000000
jae 0x1c49bad
lea eax, [esi*4]
push eax
call fcn.01c8fea0
add esp, 4
mov edx, dword [esp]
jmp 0x1c49736
xor eax, eax
mov dword [esp], eax
lea eax, [eax + esi*4]
mov dword [esp + 4], eax
mov eax, dword [0x1cd642c]
mov dword [esp + 0x14], eax
mov ecx, dword [esp + 8]
mov eax, dword [esp]
lea esi, [eax + ecx*4 + 4]
mov eax, dword [esp]
mov ecx, dword [esp + 0x14]
mov dword [esi - 4], ecx
test edi, edi
jle 0x1c49775
push edi
push edx
push eax
mov edi, edx
call fcn.01c93580
mov eax, dword [esp + 0xc]
mov edx, edi
add esp, 0xc
mov dword [esp + 0x124], eax
mov dword [esp + 0x128], esi
mov eax, dword [esp + 4]
mov dword [esp + 0x12c], eax
test edx, edx
je 0x1c497a2
push edx
call fcn.01c8fed0
add esp, 4
mov esi, dword [esp + 0x128]
mov edi, dword [esp + 0x12c]
cmp esi, edi
je 0x1c497c3
mov eax, dword [0x1cd6430]
mov dword [esi], eax
add esi, 4
mov dword [esp + 0x128], esi
jmp 0x1c49892
mov edx, dword [esp + 0x124]
sub edi, edx
mov esi, edi
sar esi, 2
lea eax, [esi + 1]
cmp eax, 0x40000000
jae 0x1c49ba1
mov ecx, edi
sar ecx, 1
cmp ecx, eax
cmovb ecx, eax
mov eax, esi
mov dword [esp + 8], esi
cmp esi, 0x1fffffff
mov esi, 0x3fffffff
cmovb esi, ecx
test esi, esi
je 0x1c49824
mov dword [esp], edx
cmp esi, 0x40000000
jae 0x1c49bad
lea eax, [esi*4]
push eax
call fcn.01c8fea0
add esp, 4
mov edx, dword [esp]
jmp 0x1c49826
xor eax, eax
mov dword [esp], eax
lea eax, [eax + esi*4]
mov dword [esp + 4], eax
mov eax, dword [0x1cd6430]
mov dword [esp + 0x14], eax
mov ecx, dword [esp + 8]
mov eax, dword [esp]
lea esi, [eax + ecx*4 + 4]
mov eax, dword [esp]
mov ecx, dword [esp + 0x14]
mov dword [esi - 4], ecx
test edi, edi
jle 0x1c49865
push edi
push edx
push eax
mov edi, edx
call fcn.01c93580
mov eax, dword [esp + 0xc]
mov edx, edi
add esp, 0xc
mov dword [esp + 0x124], eax
mov dword [esp + 0x128], esi
mov eax, dword [esp + 4]
mov dword [esp + 0x12c], eax
test edx, edx
je 0x1c49892
push edx
call fcn.01c8fed0
add esp, 4
mov esi, dword [esp + 0x128]
mov eax, dword [esp + 0xc]
mov eax, dword [eax]
mov edi, dword [esp + 0x12c]
cmp esi, edi
je 0x1c498b7
mov eax, dword [eax + 0x64]
mov dword [esi], eax
add esi, 4
mov dword [esp + 0x128], esi
jmp 0x1c49986
mov dword [esp + 8], eax
mov edx, dword [esp + 0x124]
sub edi, edx
mov esi, edi
sar esi, 2
lea eax, [esi + 1]
cmp eax, 0x40000000
jae 0x1c49ba1
mov ecx, edi
sar ecx, 1
cmp ecx, eax
cmovb ecx, eax
mov eax, esi
mov dword [esp + 4], esi
cmp esi, 0x1fffffff
mov esi, 0x3fffffff
cmovb esi, ecx
test esi, esi
je 0x1c4991c
mov dword [esp], edx
cmp esi, 0x40000000
jae 0x1c49bad
lea eax, [esi*4]
push eax
call fcn.01c8fea0
add esp, 4
mov edx, dword [esp]
jmp 0x1c4991e
xor eax, eax
mov dword [esp], eax
lea eax, [eax + esi*4]
mov dword [esp + 0x14], eax
mov eax, dword [esp + 8]
mov eax, dword [eax + 0x64]
mov ecx, dword [esp + 4]
mov esi, dword [esp]
lea esi, [esi + ecx*4]
add esi, 4
mov ecx, dword [esp]
mov dword [esi - 4], eax
test edi, edi
jle 0x1c49959
push edi
push edx
push ecx
mov edi, edx
call fcn.01c93580
mov ecx, dword [esp + 0xc]
mov edx, edi
add esp, 0xc
mov dword [esp + 0x124], ecx
mov dword [esp + 0x128], esi
mov eax, dword [esp + 0x14]
mov dword [esp + 0x12c], eax
test edx, edx
je 0x1c49986
push edx
call fcn.01c8fed0
add esp, 4
mov esi, dword [esp + 0x128]
mov edi, dword [esp + 0x12c]
cmp esi, edi
je 0x1c499a6
mov eax, dword [esp + 0x10]
mov dword [esi], eax
add esi, 4
mov dword [esp + 0x128], esi
jmp 0x1c49a60
mov edx, dword [esp + 0x124]
sub edi, edx
mov esi, edi
sar esi, 2
lea eax, [esi + 1]
cmp eax, 0x40000000
jae 0x1c49ba1
mov ecx, edi
sar ecx, 1
cmp ecx, eax
cmovb ecx, eax
mov eax, esi
mov dword [esp + 8], esi
cmp esi, 0x1fffffff
mov esi, 0x3fffffff
cmovb esi, ecx
test esi, esi
mov dword [esp], edx
je 0x1c49a09
cmp esi, 0x40000000
jae 0x1c49bad
lea eax, [esi*4]
push eax
call fcn.01c8fea0
add esp, 4
mov ecx, eax
mov edx, dword [esp]
jmp 0x1c49a0b
xor ecx, ecx
lea eax, [ecx + esi*4]
mov dword [esp + 4], eax
mov eax, dword [esp + 8]
lea esi, [ecx + eax*4]
add esi, 4
mov eax, dword [esp + 0x10]
mov dword [esi - 4], eax
test edi, edi
jle 0x1c49a3a
push edi
push edx
push ecx
mov edi, ecx
call fcn.01c93580
mov ecx, edi
mov edx, dword [esp + 0xc]
add esp, 0xc
mov dword [esp + 0x124], ecx
mov dword [esp + 0x128], esi
mov eax, dword [esp + 4]
mov dword [esp + 0x12c], eax
test edx, edx
je 0x1c49a60
push edx
call fcn.01c8fed0
add esp, 4
mov edx, dword [esp + 0x168]
lea esi, [esp + 0x124]
mov ecx, esi
call fcn.01c4a71a
mov edx, dword [esp + 0x16c]
mov ecx, esi
call fcn.01c4a71a
mov edx, dword [esp + 0x170]
mov ecx, esi
call fcn.01c4a71a
mov eax, dword [esi]
mov ecx, dword [esi + 4]
sub ecx, eax
xor edx, edx
push edx
push edx
push ecx
push eax
push 0x20002
push edx
push dword [esp + 0x18c]
call dword [0x1cf1924]
test eax, eax
je 0x1c49abf
mov esi, 0x80000
jmp 0x1c491aa
push 2
call fcn.01c55c50
add esp, 4
test al, al
je 0x1c49495
call fcn.01c56670
lea esi, [esp + 0x1bc]
mov ecx, esi
push eax
push 2
push 0x1e6
push str..._.._third_party_crashpad_crashpad_client_crashpad_client_win.cc
call fcn.01c56810
lea eax, [esp + 0x1c4]
push 0x19
push str.UpdateProcThreadAttribute
jmp 0x1c49485
push 0x1cf1920
call fcn.01c8ff57
add esp, 4
cmp dword [0x1cf1920], 0xffffffff
jne 0x1c490ec
push 0
push str.::InitializeProcThreadAttributeList
push 0x1cb9050
call fcn.01c5c018
add esp, 0xc
mov dword [0x1cf191c], eax
push 0x1cf1920
call fcn.01c8ffcd
add esp, 4
jmp 0x1c490ec
push 0x1cf1928
call fcn.01c8ff57
add esp, 4
cmp dword [0x1cf1928], 0xffffffff
jne 0x1c4910d
cmp dword [0x1cf191c], 0
je 0x1c49b82
push 0
push str.::UpdateProcThreadAttribute
push 0x1cb9050
call fcn.01c5c018
add esp, 0xc
jmp 0x1c49b84
xor eax, eax
mov dword [0x1cf1924], eax
push 0x1cf1928
call fcn.01c8ffcd
add esp, 4
jmp 0x1c4910d
int3
int3
lea ecx, [esp + 0x124]
call fcn.01c4042c
call fcn.01ca281e