Function at 0x1c541b0
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff8
sub esp, 0x4d8
mov eax, dword [0x1d18014]
xor eax, ebp
mov dword [esp + 0x4d0], eax
mov bl, 1
cmp byte [ecx + 4], 0
jne 0x1c55768
mov esi, ecx
xor ebx, ebx
dec ebx
mov dword [esp + 0xa8], ebx
mov dword [esp + 0xac], ebx
mov dword [esp + 0xb0], ebx
lea edi, [esp + 0xe8]
push 0x208
push 0xff
push edi
call fcn.01c9f2d0
add esp, 0xc
push 0x104
push edi
push 0
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameW]
test eax, eax
jne 0x1c555ba
xor eax, eax
mov dword [esp + 0xac], eax
mov dword [esp + 0xa8], eax
mov dword [esp + 0xb0], eax
movzx eax, byte [esp + 0xb3]
test al, al
jns 0x1c5424f
mov ecx, dword [esp + 0xac]
jmp 0x1c54254
mov ecx, eax
and ecx, 0x7f
test ecx, ecx
je 0x1c54265
test al, al
jns 0x1c5426c
mov eax, dword [esp + 0xa8]
jmp 0x1c54273
xor ebx, ebx
jmp 0x1c55755
lea eax, [esp + 0xa8]
push 0x1d03818
push eax
call fcn.01cb2883
add esp, 8
mov edi, eax
test eax, eax
je 0x1c55749
push 0x3e8
push 0xff
mov ebx, esi
mov esi, edi
lea edi, [esp + 0xf0]
push edi
call fcn.01c9f2d0
add esp, 0xc
xor ecx, ecx
lea eax, [esp + 0x98]
mov dword [eax + 4], ecx
mov dword [eax], ecx
mov dword [eax + 8], ecx
lea eax, [ebx + 8]
mov dword [esp + 0x24], eax
lea eax, [ebx + 0xc]
mov dword [esp + 0x44], eax
lea eax, [ebx + 0x4c]
mov dword [esp + 0x14], eax
lea eax, [ebx + 0x58]
mov dword [esp + 0x30], eax
lea eax, [ebx + 0x40]
mov dword [esp + 0x1c], eax
lea eax, [ebx + 0x34]
mov dword [esp + 0x18], eax
mov dword [esp + 0xc], ebx
lea eax, [ebx + 0x18]
mov ebx, 0xffffffff
mov dword [esp + 0x40], eax
lea eax, [esp + 0x48]
mov dword [esp + 0x28], eax
mov dword [esp + 0x3c], 0
mov dword [esp + 0x38], 0
mov dword [esp + 0x34], 0
mov dword [esp + 8], 0
mov dword [esp + 0x2c], esi
push esi
push 0x3e7
push edi
call fcn.01cb4181
add esp, 0xc
test eax, eax
je 0x1c554c2
mov dword [esp + 0x8c], ebx
mov dword [esp + 0x90], ebx
mov dword [esp + 0x94], ebx
lea esi, [esp + 0x8c]
mov ecx, esi
push edi
call fcn.01cc8d60
mov eax, str._t_v_f__n_r
push eax
call fcn.01cb5b50
add esp, 4
movzx ecx, byte [esp + 0x97]
test cl, cl
jns 0x1c54385
mov edx, dword [esp + 0x8c]
mov ecx, dword [esp + 0x90]
jmp 0x1c5438a
and ecx, 0x7f
mov edx, esi
mov edi, esi
push esi
push eax
mov eax, str._t_v_f__n_r
push eax
push ecx
push edx
call fcn.01c584b0
add esp, 0x14
movzx edx, byte [esp + 0x97]
test dl, dl
jns 0x1c543b3
mov eax, dword [esp + 0x90]
jmp 0x1c543b8
mov eax, edx
and eax, 0x7f
test eax, eax
je 0x1c544ac
mov ecx, edi
test dl, dl
jns 0x1c543cd
mov ecx, dword [esp + 0x8c]
mov bl, byte [ecx]
cmp bl, 0x23
je 0x1c544a9
cmp eax, 0xb
je 0x1c54405
cmp eax, 8
jne 0x1c5441d
mov eax, dword [ecx]
mov edx, 0x6e6f435b
xor eax, edx
mov ecx, dword [ecx + 4]
mov edx, 0x5d676966
xor ecx, edx
or ecx, eax
jne 0x1c5441d
xor eax, eax
inc eax
mov dword [esp + 8], eax
jmp 0x1c544a9
push 0xb
push str._CrashKeys_
push ecx
call fcn.01c9de3d
add esp, 0xc
test eax, eax
je 0x1c544a1
cmp bl, 0x5b
je 0x1c54497
cmp dword [esp + 8], 0
je 0x1c54497
mov ecx, edi
push 0
push 0x3d
call fcn.01c7b030
cmp eax, 0xffffffff
je 0x1c544a9
mov ebx, eax
xor eax, eax
dec eax
mov dword [esp + 0x80], eax
mov dword [esp + 0x84], eax
mov dword [esp + 0x88], eax
lea esi, [esp + 0x80]
mov ecx, esi
lea eax, [esp + 0x98]
push eax
push ebx
push 0
push edi
call fcn.01c498f0
mov eax, str._t_v_f__n_r
push eax
call fcn.01cb5b50
add esp, 4
movzx ecx, byte [esp + 0x8b]
test cl, cl
jns 0x1c544d5
mov edx, dword [esp + 0x80]
mov ecx, dword [esp + 0x84]
jmp 0x1c544da
mov dword [esp + 8], 0
jmp 0x1c544a9
mov dword [esp + 8], 2
xor ebx, ebx
dec ebx
cmp byte [esp + 0x97], 0
jns 0x1c544c5
push dword [esp + 0x8c]
call fcn.01c9ba37
add esp, 4
lea edi, [esp + 0xe8]
mov esi, dword [esp + 0x2c]
jmp 0x1c54320
and ecx, 0x7f
mov edx, esi
push esi
push eax
mov eax, str._t_v_f__n_r
push eax
push ecx
push edx
call fcn.01c584b0
add esp, 0x14
xor eax, eax
dec eax
mov dword [esp + 0x70], eax
mov dword [esp + 0x74], eax
mov dword [esp + 0x78], eax
inc ebx
lea esi, [esp + 0x70]
mov ecx, esi
lea edx, [esp + 0x98]
push edx
push eax
push ebx
push edi
call fcn.01c498f0
mov eax, str._t_v_f__n_r
push eax
call fcn.01cb5b50
add esp, 4
movzx ecx, byte [esp + 0x7b]
test cl, cl
jns 0x1c54533
mov edx, dword [esp + 0x70]
mov ecx, dword [esp + 0x74]
jmp 0x1c54538
and ecx, 0x7f
mov edx, esi
mov edi, esi
mov esi, dword [esp + 0xc]
push edi
push eax
mov eax, str._t_v_f__n_r
push eax
push ecx
push edx
call fcn.01c584b0
add esp, 0x14
movzx eax, byte [esp + 0x8b]
test al, al
mov ebx, 0xffffffff
jns 0x1c5456a
mov ecx, dword [esp + 0x84]
jmp 0x1c5456f
mov ecx, eax
and ecx, 0x7f
test ecx, ecx
je case.0x1c5458a.8
cmp dword [esp + 8], 1
jne 0x1c545d4
add ecx, 0xfffffff9
cmp ecx, 0xd
ja case.0x1c5458a.8
jmp dword [ecx*4 + 0x1d0ac00]
lea ecx, [esp + 0x80]
test al, al
jns 0x1c545a3
mov ecx, dword [esp + 0x80]
mov eax, dword [ecx]
mov edx, 0x4e707041
xor eax, edx
mov ecx, dword [ecx + 3]
mov edx, 0x656d614e
xor ecx, edx
or ecx, eax
jne case.0x1c5458a.8
movzx eax, byte [esp + 0x7b]
test al, al
jns 0x1c54db4
mov eax, dword [esp + 0x74]
jmp 0x1c54db7
cmp dword [esi + 0x10], 0
je 0x1c545fe
mov ecx, dword [esp + 0x24]
lea eax, [esp + 0x80]
push eax
lea eax, [esp + 0x4c]
push eax
call fcn.01c56ae0
mov eax, dword [esp + 0x44]
cmp dword [esp + 0x48], eax
jne case.0x1c5458a.8
movzx eax, byte [esp + 0x7b]
test al, al
jns 0x1c5460d
mov ecx, dword [esp + 0x74]
jmp 0x1c54612
mov ecx, eax
and ecx, 0x7f
cmp ecx, 6
je 0x1c54680
cmp ecx, 5
jne case.0x1c5458a.8
mov ecx, edi
test al, al
jns 0x1c5462a
mov ecx, dword [esp + 0x70]
mov eax, dword [ecx]
mov edx, 0x6c616d73
xor eax, edx
movzx edx, byte [ecx + 4]
xor edx, 0x6c
or edx, eax
lea edi, [esp + 0xd8]
je 0x1c5497b
mov eax, dword [ecx]
mov edx, 0x6772616c
xor eax, edx
movzx ecx, byte [ecx + 4]
xor ecx, 0x65
or ecx, eax
jne case.0x1c5458a.8
mov eax, dword [esp + 0x34]
mov dword [esp + 4], eax
inc eax
mov byte [esp + 0x10], 0x4c
mov dword [esp + 0x20], 2
mov dword [esp + 0x34], eax
jmp 0x1c54995
test al, al
jns 0x1c54688
mov edi, dword [esp + 0x70]
mov eax, dword [edi]
mov edx, 0x6964656d
xor eax, edx
movzx ecx, word [edi + 4]
xor ecx, 0x6d75
or ecx, eax
jne case.0x1c5458a.8
mov eax, dword [esp + 0x38]
mov dword [esp + 4], eax
inc eax
mov byte [esp + 0x10], 0x4d
xor ecx, ecx
inc ecx
mov dword [esp + 0x20], ecx
mov dword [esp + 0x38], eax
lea edi, [esp + 0xd8]
jmp 0x1c54995
lea ecx, [esp + 0x80]
test al, al
jns 0x1c546da
mov ecx, dword [esp + 0x80]
push 9
push str.ServerURL
push ecx
call fcn.01c9de3d
add esp, 0xc
test eax, eax
jne case.0x1c5458a.8
mov ecx, edi
mov edx, dword [esp + 0x40]
call fcn.01c55820
jmp case.0x1c5458a.8
lea ecx, [esp + 0x80]
test al, al
jns 0x1c54714
mov ecx, dword [esp + 0x80]
movdqu xmm0, xmmword [ecx]
pcmpeqb xmm0, xmmword [0x1d0a930]
pmovmskb eax, xmm0
cmp eax, 0xffff
je 0x1c54d37
movdqu xmm0, xmmword [ecx]
pcmpeqb xmm0, xmmword [0x1d0a940]
pmovmskb eax, xmm0
cmp eax, 0xffff
jne case.0x1c5458a.8
mov dword [esp + 0x48], 0xffffffff
movzx eax, byte [esp + 0x7b]
test al, al
jns 0x1c54ed3
mov edi, dword [esp + 0x70]
mov eax, dword [esp + 0x74]
jmp 0x1c54ed6
cmp dword [esp + 0x18], edi
sete bl
lea ecx, [esp + 0x80]
test al, al
jns 0x1c54785
mov ecx, dword [esp + 0x80]
push 0xb
push 0x1d0a9bd
push ecx
call fcn.01c9de3d
add esp, 0xc
test eax, eax
jne 0x1c55435
test bl, bl
jne 0x1c55435
cmp byte [esi + 0x3f], 0
movzx eax, byte [esp + 0x7b]
mov ebx, 0xffffffff
js 0x1c5546d
test al, al
js 0x1c54ea1
mov eax, dword [esp + 0x78]
mov ecx, dword [esp + 0x18]
jmp 0x1c54828
cmp dword [esp + 0x1c], edi
sete bl
lea ecx, [esp + 0x80]
test al, al
jns 0x1c547e4
mov ecx, dword [esp + 0x80]
push 0xe
push 0x1d0a9c9
push ecx
call fcn.01c9de3d
add esp, 0xc
test eax, eax
jne 0x1c55435
test bl, bl
jne 0x1c55435
cmp byte [esi + 0x4b], 0
movzx eax, byte [esp + 0x7b]
mov ebx, 0xffffffff
js 0x1c55486
test al, al
js 0x1c54ea7
mov eax, dword [esp + 0x78]
mov ecx, dword [esp + 0x1c]
mov dword [ecx + 8], eax
movq xmm0, qword [esp + 0x70]
movq qword [ecx], xmm0
jmp 0x1c5544b
lea ecx, [esp + 0x80]
test al, al
jns 0x1c5484c
mov ecx, dword [esp + 0x80]
movdqu xmm0, xmmword [ecx]
pcmpeqb xmm0, xmmword [0x1d0a920]
movdqu xmm1, xmmword [ecx + 3]
pcmpeqb xmm1, xmmword [0x1d0a910]
pand xmm1, xmm0
pmovmskb eax, xmm1
cmp eax, 0xffff
jne case.0x1c5458a.8
mov dword [esp + 0x48], 0xffffffff
movzx eax, byte [esp + 0x7b]
test al, al
jns 0x1c54e47
mov edi, dword [esp + 0x70]
mov eax, dword [esp + 0x74]
jmp 0x1c54e4a
lea ecx, [esp + 0x80]
test al, al
jns 0x1c548ac
mov ecx, dword [esp + 0x80]
movdqu xmm0, xmmword [ecx]
pcmpeqb xmm0, xmmword [str.MaxDatabaseAgeInDatabaseSizeInMbMaxDatabaseSizeIRateLimitEnabledMaxUploadsPerDayU]
movd xmm1, dword [ecx + 0x10]
pcmpeqb xmm1, xmmword [str.Days]
pand xmm1, xmm0
pmovmskb eax, xmm1
cmp eax, 0xffff
jne case.0x1c5458a.8
mov dword [esp + 0x48], 0xffffffff
movzx eax, byte [esp + 0x7b]
test al, al
jns 0x1c54e74
mov edi, dword [esp + 0x70]
mov eax, dword [esp + 0x74]
jmp 0x1c54e77
lea ecx, [esp + 0x80]
test al, al
jns 0x1c5490c
mov ecx, dword [esp + 0x80]
push 0xf
push str.ExternalHandler
push ecx
call fcn.01c9de3d
add esp, 0xc
test eax, eax
jne case.0x1c5458a.8
movzx eax, byte [esp + 0x7b]
mov ecx, eax
and ecx, 0x7f
test al, al
mov edx, dword [esp + 0x74]
cmovs ecx, edx
test ecx, ecx
je case.0x1c5458a.8
mov dword [esp + 0xd8], ebx
mov dword [esp + 0xdc], ebx
mov dword [esp + 0xe0], ebx
test al, al
js 0x1c54f00
mov eax, dword [esp + 0x78]
mov dword [esp + 0xe0], eax
movsd xmm0, qword [esp + 0x70]
movsd qword [esp + 0xd8], xmm0
jmp 0x1c54f11
mov eax, dword [esp + 0x3c]
mov dword [esp + 4], eax
inc eax
mov byte [esp + 0x10], 0x53
mov dword [esp + 0x20], 0
mov dword [esp + 0x3c], eax
movzx eax, byte [esp + 0x8b]
mov ecx, eax
and ecx, 0x7f
test al, al
mov eax, dword [esp + 0x80]
lea edx, [esp + 0x80]
cmovns eax, edx
mov dword [esp + 0xd8], eax
cmovs ecx, dword [esp + 0x84]
mov dword [esp + 0xdc], ecx
lea ecx, [esp + 0x48]
mov edx, edi
call fcn.01c55c40
cmp byte [esp + 0x8b], 0
jns 0x1c549ef
push dword [esp + 0x80]
call fcn.01c9ba37
add esp, 4
mov eax, dword [esp + 0x50]
mov dword [esp + 0x88], eax
movsd xmm0, qword [esp + 0x48]
movsd qword [esp + 0x80], xmm0
cmp byte [esp + 0x8b], 0
js 0x1c54a33
mov eax, dword [esp + 0x88]
mov dword [esp + 0x50], eax
movsd xmm0, qword [esp + 0x80]
movsd qword [esp + 0x48], xmm0
lea ebx, [esp + 0x48]
jmp 0x1c54a4c
lea ebx, [esp + 0x48]
mov ecx, ebx
push dword [esp + 0x84]
push dword [esp + 0x84]
call fcn.01c494b0
mov eax, dword [esp + 4]
mov dword [esp + 0x58], eax
mov eax, dword [esp + 0x20]
mov dword [esp + 0x54], eax
mov dword [esp + 0xd8], 0xffffffff
mov ecx, dword [esp + 0x24]
push ebx
push edi
call fcn.01c56c60
cmp dword [eax], 0
jne 0x1c54ade
mov ebx, eax
push 0x24
call fcn.01c9ba07
add esp, 4
mov ecx, dword [esp + 0x50]
mov dword [eax + 0x18], ecx
movsd xmm0, qword [esp + 0x48]
movsd qword [eax + 0x10], xmm0
xor edx, edx
mov dword [esp + 0x50], edx
mov dword [esp + 0x4c], edx
mov dword [esp + 0x48], edx
movsd xmm0, qword [esp + 0x54]
movsd qword [eax + 0x1c], xmm0
mov ecx, dword [esp + 0xd8]
mov dword [eax], edx
mov dword [eax + 4], edx
mov dword [eax + 8], ecx
mov dword [ebx], eax
mov edx, dword [esp + 0x24]
mov ecx, dword [edx]
mov ecx, dword [ecx]
test ecx, ecx
je 0x1c54acf
mov dword [edx], ecx
mov eax, dword [ebx]
push eax
push dword [esi + 0xc]
call fcn.01c785e0
add esp, 8
inc dword [esi + 0x10]
cmp byte [esp + 0x53], 0
jns 0x1c54af1
push dword [esp + 0x48]
call fcn.01c9ba37
add esp, 4
mov ecx, dword [esp + 4]
add cl, 0x41
mov al, 1
mov byte [esp + 0xe3], al
mov byte [esp + 0xd8], cl
xor ebx, ebx
mov byte [esp + 0xd9], bl
mov byte [esp + 0xc3], al
mov al, byte [esp + 0x10]
mov byte [esp + 0xb8], al
mov byte [esp + 0xb9], bl
lea ecx, [esp + 0xb8]
push 0x1d05f4c
call fcn.01c7b630
mov ecx, dword [eax + 8]
mov dword [esp + 0xd0], ecx
movsd xmm0, qword [eax]
movsd qword [esp + 0xc8], xmm0
mov dword [eax], ebx
mov dword [eax + 4], ebx
mov dword [eax + 8], ebx
movzx eax, byte [esp + 0xe3]
mov edx, eax
and edx, 0x7f
test al, al
cmovs edx, dword [esp + 0xdc]
mov eax, dword [esp + 0xd8]
cmovns eax, edi
lea ecx, [esp + 0xc8]
push edx
push eax
call fcn.01c49780
mov ecx, dword [eax + 8]
mov dword [esp + 0x50], ecx
movsd xmm0, qword [eax]
movsd qword [esp + 0x48], xmm0
mov dword [eax + 4], ebx
mov dword [eax + 8], ebx
mov dword [eax], ebx
cmp byte [esp + 0xd3], bl
mov ebx, 0xffffffff
jns 0x1c54bbf
push dword [esp + 0xc8]
call fcn.01c9ba37
add esp, 4
cmp byte [esp + 0xc3], 0
jns 0x1c54bd8
push dword [esp + 0xb8]
call fcn.01c9ba37
add esp, 4
cmp byte [esp + 0xe3], 0
jns 0x1c54bf1
push dword [esp + 0xd8]
call fcn.01c9ba37
add esp, 4
movzx eax, byte [esp + 0xa3]
test al, al
jns 0x1c54c06
mov eax, dword [esp + 0x9c]
jmp 0x1c54c09
and eax, 0x7f
test eax, eax
je 0x1c54c47
mov byte [esp + 0xe3], 1
mov word [esp + 0xd8], 0x2c
lea ecx, [esp + 0x98]
push 1
push edi
call fcn.01c49780
cmp byte [esp + 0xe3], 0
jns 0x1c54c47
push dword [esp + 0xd8]
call fcn.01c9ba37
add esp, 4
push 0x1d05fc7
lea eax, [esp + 0x4c]
push eax
lea edi, [esp + 0xd0]
push edi
call fcn.01c77370
add esp, 0xc
movzx eax, byte [esp + 0x8b]
mov edx, eax
and edx, 0x7f
test al, al
cmovs edx, dword [esp + 0x84]
mov eax, dword [esp + 0x80]
lea ecx, [esp + 0x80]
cmovns eax, ecx
mov ecx, edi
push edx
push eax
call fcn.01c49780
mov ecx, dword [eax + 8]
mov dword [esp + 0xe0], ecx
movq xmm0, qword [eax]
movq qword [esp + 0xd8], xmm0
xor ecx, ecx
mov dword [eax], ecx
mov dword [eax + 4], ecx
mov dword [eax + 8], ecx
movzx eax, byte [esp + 0xe3]
mov edx, eax
and edx, 0x7f
test al, al
cmovs edx, dword [esp + 0xdc]
mov eax, dword [esp + 0xd8]
lea ecx, [esp + 0xd8]
cmovns eax, ecx
lea ecx, [esp + 0x98]
push edx
push eax
call fcn.01c49780
cmp byte [esp + 0xe3], 0
jns 0x1c54d02
push dword [esp + 0xd8]
call fcn.01c9ba37
add esp, 4
cmp byte [esp + 0xd3], 0
jns 0x1c54d1b
push dword [esp + 0xc8]
call fcn.01c9ba37
add esp, 4
cmp byte [esp + 0x53], 0
jns case.0x1c5458a.8
push dword [esp + 0x48]
call fcn.01c9ba37
add esp, 4
jmp case.0x1c5458a.8
movzx eax, byte [esp + 0x7b]
test al, al
jns 0x1c54d4e
mov eax, dword [esp + 0x70]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x74]
jmp 0x1c54d55
and eax, 0x7f
mov dword [esp + 4], edi
cmp eax, 1
je 0x1c54ebd
cmp eax, 4
jne 0x1c54ecc
mov edi, eax
xor edx, edx
movzx ebx, byte [edx + 0x1d0541d]
mov eax, dword [esp + 4]
movzx eax, byte [eax + edx]
mov ecx, eax
add cl, 0xbf
mov ch, al
add ch, 0x20
cmp cl, 0x1a
movzx ecx, ch
cmovae ecx, eax
mov eax, ebx
add al, 0xbf
mov ah, bl
add ah, 0x20
cmp al, 0x1a
movzx eax, ah
cmovae eax, ebx
cmp cl, al
jne 0x1c5541d
inc edx
mov eax, edi
cmp edi, edx
jne 0x1c54d6b
mov al, 1
jmp 0x1c5541f
and eax, 0x7f
test eax, eax
je case.0x1c5458a.8
lea ecx, [esp + 0x48]
mov edx, edi
call fcn.01c55960
cmp byte [esp + 0x7b], 0
jns 0x1c54ddd
push dword [esp + 0x70]
call fcn.01c9ba37
add esp, 4
cmp dword [esp + 0x14], edi
sete bl
mov eax, dword [esp + 0x50]
mov dword [esp + 0x78], eax
movq xmm0, qword [esp + 0x48]
movq qword [esp + 0x70], xmm0
movzx ecx, byte [esp + 0x7b]
mov eax, ecx
and eax, 0x7f
test cl, cl
mov edx, dword [esp + 0x74]
cmovs eax, edx
test eax, eax
je 0x1c55435
test bl, bl
jne 0x1c55435
cmp byte [esi + 0x57], 0
js 0x1c554a6
test cl, cl
js 0x1c55427
mov eax, dword [esp + 0x78]
mov ecx, dword [esp + 0x14]
mov dword [ecx + 8], eax
movq xmm0, qword [esp + 0x70]
movq qword [ecx], xmm0
jmp 0x1c55435
and eax, 0x7f
lea edx, [esp + 0x48]
push edx
push eax
push edi
call fcn.01c83b50
add esp, 0xc
mov ecx, dword [esp + 0x48]
test ecx, ecx
mov edx, 0
cmovs ecx, edx
test al, al
cmove ecx, edx
mov dword [esi + 0x2c], ecx
jmp case.0x1c5458a.8
and eax, 0x7f
lea edx, [esp + 0x48]
push edx
push eax
push edi
call fcn.01c83b50
add esp, 0xc
mov ecx, dword [esp + 0x48]
test ecx, ecx
mov edx, 0
cmovs ecx, edx
test al, al
cmove ecx, edx
mov dword [esi + 0x30], ecx
jmp case.0x1c5458a.8
mov ecx, dword [esp + 0x18]
jmp 0x1c54eab
mov ecx, dword [esp + 0x1c]
push dword [esp + 0x74]
push dword [esp + 0x74]
call fcn.01c49ad0
jmp case.0x1c5458a.8
mov eax, dword [esp + 4]
cmp byte [eax], 0x31
sete al
jmp 0x1c55422
xor eax, eax
jmp 0x1c55422
and eax, 0x7f
lea edx, [esp + 0x48]
push edx
push eax
push edi
call fcn.01c83b50
add esp, 0xc
mov ecx, dword [esp + 0x48]
test ecx, ecx
mov edx, 0
cmovs ecx, edx
test al, al
cmove ecx, edx
mov dword [esi + 0x28], ecx
jmp case.0x1c5458a.8
lea ecx, [esp + 0xd8]
push edx
push dword [esp + 0x74]
call fcn.01c494b0
movzx ebx, byte [esp + 0xe3]
mov eax, ebx
and eax, 0x7f
test bl, bl
mov edi, dword [esp + 0xdc]
cmovs eax, edi
cmp eax, 3
jb 0x1c550b1
test bl, bl
mov ecx, dword [esp + 0xd8]
lea eax, [esp + 0xd8]
mov dword [esp + 4], ecx
cmovs eax, ecx
movsx eax, byte [eax]
mov dword [esp + 0x10], eax
push eax
call fcn.01cb46b0
add esp, 4
test eax, eax
je 0x1c54ffd
test bl, bl
lea eax, [esp + 0xd8]
cmovs eax, dword [esp + 4]
cmp byte [eax + 1], 0x3a
jne 0x1c54ffd
mov eax, ebx
and eax, 0x7e
test bl, bl
cmovs eax, edi
cmp eax, 1
jbe 0x1c55804
test bl, bl
lea eax, [esp + 0xd8]
cmovs eax, dword [esp + 4]
cmp byte [eax + 2], 0x5c
mov esi, dword [esp + 0xc]
jne 0x1c54ffd
xor eax, eax
mov dword [esp + 0x64], eax
mov dword [esp + 0x60], eax
mov dword [esp + 0x68], eax
cmp byte [esp + 0x10], 0x5c
je 0x1c55030
lea edi, [esp + 0x48]
mov ecx, edi
lea ebx, [esp + 0xe4]
push ebx
mov eax, 3
push eax
push 0
lea esi, [esp + 0xe4]
push esi
call fcn.01c498f0
movsd xmm0, qword [esp + 0x48]
movsd qword [esp + 0x60], xmm0
mov eax, dword [esp + 0x50]
mov dword [esp + 0x68], eax
mov ecx, edi
push ebx
push 0xffffffffffffffff
mov eax, 3
jmp 0x1c55071
cmp byte [esp + 0x10], 0x5c
jne 0x1c550b1
test bl, bl
lea eax, [esp + 0xd8]
mov ecx, dword [esp + 4]
cmovns ecx, eax
cmp byte [ecx + 1], 0x5c
jne 0x1c550b1
xor eax, eax
mov dword [esp + 0x64], eax
mov dword [esp + 0x60], eax
mov dword [esp + 0x68], eax
lea edi, [esp + 0x48]
mov ecx, edi
lea ebx, [esp + 0xe4]
push ebx
mov eax, 2
push eax
push 0
lea esi, [esp + 0xe4]
push esi
call fcn.01c498f0
movsd xmm0, qword [esp + 0x48]
movsd qword [esp + 0x60], xmm0
mov eax, dword [esp + 0x50]
mov dword [esp + 0x68], eax
mov ecx, edi
push ebx
push 0xffffffffffffffff
mov eax, 2
push eax
push esi
call fcn.01c498f0
cmp byte [esp + 0xe3], 0
jns 0x1c55091
push dword [esp + 0xd8]
call fcn.01c9ba37
add esp, 4
mov eax, dword [esp + 0x50]
mov dword [esp + 0xe0], eax
movsd xmm0, qword [esp + 0x48]
movsd qword [esp + 0xd8], xmm0
mov esi, dword [esp + 0xc]
jmp 0x1c550bf
xor eax, eax
mov dword [esp + 0x64], eax
mov dword [esp + 0x60], eax
mov dword [esp + 0x68], eax
movzx eax, byte [esp + 0x7b]
test al, al
mov edi, 0xffffffff
jns 0x1c550d3
mov eax, dword [esp + 0x74]
jmp 0x1c550d6
and eax, 0x7f
lea ecx, [esp + 0x60]
push eax
call fcn.01c7ae00
mov dword [esp + 0x48], edi
mov dword [esp + 0x4c], edi
mov dword [esp + 0x50], edi
xor edi, edi
mov dword [esp + 0xbc], edi
mov dword [esp + 0xb8], edi
mov dword [esp + 0xc0], edi
lea ecx, [esp + 0xb8]
push 0x5c
call fcn.01c7b250
mov eax, dword [esp + 0xc0]
mov dword [esp + 0xd0], eax
movq xmm0, qword [esp + 0xb8]
movq qword [esp + 0xc8], xmm0
mov dword [esp + 0xbc], edi
mov dword [esp + 0xb8], edi
mov dword [esp + 0xc0], edi
movzx eax, byte [esp + 0xd3]
test al, al
jns 0x1c55162
mov ecx, dword [esp + 0xc8]
mov eax, dword [esp + 0xcc]
jmp 0x1c5516c
and eax, 0x7f
lea ecx, [esp + 0xc8]
movzx edx, byte [esp + 0xe3]
test dl, dl
jns 0x1c55188
mov edi, dword [esp + 0xd8]
mov edx, dword [esp + 0xdc]
jmp 0x1c55192
and edx, 0x7f
lea edi, [esp + 0xd8]
push 1
xor ebx, ebx
push ebx
push eax
push ecx
push edx
push edi
lea eax, [esp + 0x60]
push eax
call fcn.01c843c0
add esp, 0x1c
cmp byte [esp + 0xd3], 0
jns 0x1c551c1
push dword [esp + 0xc8]
call fcn.01c9ba37
add esp, 4
cmp byte [esp + 0xc3], 0
jns 0x1c551da
push dword [esp + 0xb8]
call fcn.01c9ba37
add esp, 4
mov ecx, dword [esp + 0x48]
mov eax, dword [esp + 0x4c]
mov ebx, eax
cmp eax, ecx
je 0x1c5539d
xor edi, edi
mov ebx, ecx
mov dword [esp + 4], 0
xor eax, eax
dec eax
mov dword [esp + 0xc8], eax
mov dword [esp + 0xcc], eax
mov dword [esp + 0xd0], eax
cmp byte [ebx + edi + 0xb], 0
mov eax, edi
js 0x1c55236
mov edi, eax
add ebx, eax
mov eax, dword [ebx + 8]
mov dword [esp + 0xd0], eax
movq xmm0, qword [ebx]
movq qword [esp + 0xc8], xmm0
jmp 0x1c5524b
lea ecx, [esp + 0xc8]
push dword [ebx + eax + 4]
mov edi, eax
push dword [ebx + eax]
call fcn.01c494b0
movzx eax, byte [esp + 0xd3]
test al, al
jns 0x1c55260
mov ecx, dword [esp + 0xcc]
jmp 0x1c55265
mov ecx, eax
and ecx, 0x7f
cmp ecx, 2
je 0x1c55288
cmp ecx, 1
jne 0x1c552a6
lea ecx, [esp + 0xc8]
test al, al
jns 0x1c55281
mov ecx, dword [esp + 0xc8]
cmp byte [ecx], 0x2e
jne 0x1c552a6
jmp 0x1c552f2
lea ecx, [esp + 0xc8]
test al, al
jns 0x1c5529a
mov ecx, dword [esp + 0xc8]
movzx eax, word [ecx]
cmp ax, word [0x1d06129]
je 0x1c552f2
lea ecx, [esp + 0xb8]
lea edx, [esp + 0xc8]
call fcn.01c55960
cmp byte [esp + 0xd3], 0
jns 0x1c552d2
push dword [esp + 0xc8]
call fcn.01c9ba37
add esp, 4
mov eax, dword [esp + 0xc0]
mov dword [esp + 0xd0], eax
movq xmm0, qword [esp + 0xb8]
movq qword [esp + 0xc8], xmm0
movzx eax, byte [esp + 0x6b]
test al, al
jns 0x1c55301
mov ecx, dword [esp + 0x64]
jmp 0x1c55306
mov ecx, eax
and ecx, 0x7f
test ecx, ecx
je 0x1c55328
lea edx, [esp + 0x60]
test al, al
jns 0x1c55316
mov edx, dword [esp + 0x60]
cmp byte [ecx + edx - 1], 0x5c
je 0x1c55328
lea ecx, [esp + 0x60]
push 0x5c
call fcn.01c7b250
movzx eax, byte [esp + 0xd3]
mov edx, eax
and edx, 0x7f
test al, al
cmovs edx, dword [esp + 0xcc]
mov eax, dword [esp + 0xc8]
lea ecx, [esp + 0xc8]
cmovns eax, ecx
lea ecx, [esp + 0x60]
push edx
push eax
call fcn.01c49780
cmp byte [esp + 0xd3], 0
jns 0x1c55374
push dword [esp + 0xc8]
call fcn.01c9ba37
add esp, 4
mov edx, dword [esp + 4]
inc edx
mov ebx, dword [esp + 0x48]
mov eax, dword [esp + 0x4c]
mov ecx, eax
sub ecx, ebx
sar ecx, 2
imul ecx, ecx, 0xaaaaaaab
add edi, 0xc
mov dword [esp + 4], edx
cmp edx, ecx
jb 0x1c551f8
test ebx, ebx
je 0x1c553d4
cmp eax, ebx
je 0x1c553c3
lea edi, [eax - 0xc]
cmp byte [eax - 1], 0
jns 0x1c553b9
push dword [eax - 0xc]
call fcn.01c9ba37
add esp, 4
mov eax, edi
cmp edi, ebx
jne 0x1c553a5
mov eax, dword [esp + 0x48]
mov dword [esp + 0x4c], ebx
push eax
call fcn.01c9ba37
add esp, 4
mov esi, dword [esp + 0xc]
cmp byte [esp + 0xe3], 0
jns 0x1c553ed
push dword [esp + 0xd8]
call fcn.01c9ba37
add esp, 4
cmp byte [esi + 0x63], 0
mov ebx, 0xffffffff
jns 0x1c55406
mov eax, dword [esp + 0x30]
push dword [eax]
call fcn.01c9ba37
add esp, 4
mov eax, dword [esp + 0x68]
mov ecx, dword [esp + 0x30]
mov dword [ecx + 8], eax
movq xmm0, qword [esp + 0x60]
movq qword [ecx], xmm0
jmp case.0x1c5458a.8
xor eax, eax
xor ebx, ebx
dec ebx
mov byte [esi + 0x24], al
jmp case.0x1c5458a.8
mov ecx, dword [esp + 0x14]
push edx
push dword [esp + 0x74]
call fcn.01c49ad0
xor ebx, ebx
dec ebx
cmp byte [esp + 0x7b], 0
jns 0x1c5544b
push dword [esp + 0x70]
call fcn.01c9ba37
add esp, 4
cmp byte [esp + 0x8b], 0
jns 0x1c544ac
push dword [esp + 0x80]
call fcn.01c9ba37
add esp, 4
jmp 0x1c544ac
mov edx, eax
and edx, 0x7f
test al, al
cmovs edx, dword [esp + 0x74]
mov eax, dword [esp + 0x70]
cmovns eax, edi
mov ecx, dword [esp + 0x18]
jmp 0x1c5549d
mov edx, eax
and edx, 0x7f
test al, al
cmovs edx, dword [esp + 0x74]
mov eax, dword [esp + 0x70]
cmovns eax, edi
mov ecx, dword [esp + 0x1c]
push edx
push eax
call fcn.01c49a00
jmp case.0x1c5458a.8
lea edx, [esp + 0x70]
test cl, cl
jns 0x1c554b2
mov edx, dword [esp + 0x70]
mov ecx, dword [esp + 0x14]
push eax
push edx
call fcn.01c49a00
jmp 0x1c55435
push esi
call fcn.01cb3cc3
add esp, 4
movzx eax, byte [esp + 0xa3]
test al, al
jns 0x1c554e0
mov ecx, dword [esp + 0x9c]
jmp 0x1c554e5
mov ecx, eax
and ecx, 0x7f
mov esi, dword [esp + 0xc]
test ecx, ecx
je 0x1c5560e
mov ebx, 0x5000
cmp ecx, ebx
cmovb ebx, ecx
test al, al
lea eax, [esp + 0x98]
jns 0x1c5550d
mov eax, dword [esp + 0x98]
push ebx
push eax
push 0x1d19fd4
call fcn.01c9ed50
add esp, 0xc
mov ecx, 0x1d19fc0
push ebx
call fcn.01c83c80
movzx eax, byte [esp + 0xa3]
test al, al
jns 0x1c5553c
mov ecx, dword [esp + 0x9c]
jmp 0x1c55541
mov ecx, eax
and ecx, 0x7f
sub ecx, ebx
jbe 0x1c5560e
mov edi, 0x5000
cmp ecx, edi
cmovb edi, ecx
test al, al
jns 0x1c55560
mov eax, dword [esp + 0x98]
jmp 0x1c55567
lea eax, [esp + 0x98]
add eax, ebx
push edi
push eax
push 0x1d1efe8
call fcn.01c9ed50
add esp, 0xc
mov ecx, 0x1d1efd4
push edi
call fcn.01c83c80
add edi, ebx
movzx eax, byte [esp + 0xa3]
test al, al
jns 0x1c5559a
mov ecx, dword [esp + 0x9c]
jmp 0x1c5559f
mov ecx, eax
and ecx, 0x7f
sub ecx, edi
jbe 0x1c5560e
mov ebx, 0x5000
cmp ecx, ebx
cmovb ebx, ecx
test al, al
jns 0x1c555eb
mov eax, dword [esp + 0x98]
jmp 0x1c555f2
mov eax, edi
lea edi, [esp + 0xa8]
mov dword [edi], ebx
mov dword [edi + 4], ebx
mov dword [edi + 8], ebx
mov ecx, edi
push eax
call fcn.01cc8630
movzx eax, byte [edi + 0xb]
test al, al
jns 0x1c55780
mov eax, dword [esp + 0xac]
jmp 0x1c55783
lea eax, [esp + 0x98]
add eax, edi
push ebx
push eax
push 0x1d23ffc
call fcn.01c9ed50
add esp, 0xc
mov ecx, 0x1d23fe8
push ebx
call fcn.01c83c80
lea edi, [esp + 0xd8]
mov dword [edi], 0xffffffff
push edi
call fcn.01c603f0
add esp, 4
xor eax, eax
mov dword [esp + 0x4c], eax
mov dword [esp + 0x48], eax
mov dword [esp + 0x50], eax
mov ecx, dword [edi]
lea edi, [esp + 0x48]
push edi
push 0x1d
push str.CEF_CRASH_REPORTER_SERVER_URL
call fcn.01c60430
test al, al
je 0x1c55656
lea ecx, [esp + 0x48]
mov edx, dword [esp + 0x40]
call fcn.01c55820
mov ecx, dword [esp + 0xd8]
push edi
push 0x25
push str.CEF_CRASH_REPORTER_RATE_LIMIT_ENABLED
call fcn.01c60430
movzx ecx, byte [esp + 0x53]
test al, al
mov edi, dword [esp + 0x2c]
je 0x1c556ff
test cl, cl
jns 0x1c5568d
mov eax, dword [esp + 0x48]
mov dword [esp + 0x28], eax
mov edi, dword [esp + 0x4c]
jmp 0x1c55692
mov edi, ecx
and edi, 0x7f
cmp edi, 1
je 0x1c556e2
cmp edi, 4
jne 0x1c556ee
mov dword [esp + 8], ecx
xor edx, edx
movzx ebx, byte [edx + 0x1d0541d]
mov eax, dword [esp + 0x28]
movzx eax, byte [eax + edx]
mov ecx, eax
add cl, 0xbf
mov ch, al
add ch, 0x20
cmp cl, 0x1a
movzx ecx, ch
cmovae ecx, eax
mov eax, ebx
add al, 0xbf
mov ah, bl
add ah, 0x20
cmp al, 0x1a
movzx eax, ah
cmovae eax, ebx
cmp cl, al
jne 0x1c556f2
inc edx
cmp edi, edx
jne 0x1c556a2
mov al, 1
jmp 0x1c556f4
mov eax, dword [esp + 0x28]
cmp byte [eax], 0x31
sete al
jmp 0x1c556f8
xor eax, eax
jmp 0x1c556f8
xor eax, eax
mov ecx, dword [esp + 8]
mov byte [esi + 0x24], al
mov edi, dword [esp + 0x2c]
test cl, cl
jns 0x1c5570f
push dword [esp + 0x48]
call fcn.01c9ba37
add esp, 4
mov ecx, dword [esp + 0xd8]
mov dword [esp + 0xd8], 0
test ecx, ecx
je 0x1c5572c
push 1
call fcn.01c4b8a0
mov byte [esi + 4], 1
cmp byte [esp + 0xa3], 0
jns 0x1c55749
push dword [esp + 0x98]
call fcn.01c9ba37
add esp, 4
test edi, edi
setne bl
mov al, byte [esp + 0xb3]
test al, al
jns 0x1c55768
push dword [esp + 0xa8]
call fcn.01c9ba37
add esp, 4
mov ecx, dword [esp + 0x4d0]
xor ecx, ebp
call fcn.01c9ca53
mov eax, ebx
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
and eax, 0x7f
mov ecx, edi
push eax
push 0x5c
call fcn.01c7bde0
cmp eax, ebx
je 0x1c557be
lea ecx, [eax + 1]
movzx edx, byte [esp + 0xb3]
test dl, dl
jns 0x1c557d4
cmp dword [esp + 0xac], eax
jbe 0x1c55815
mov edi, dword [esp + 0xa8]
mov dword [esp + 0xac], ecx
mov word [edi + eax*2 + 2], 0
lea ecx, [esp + 0xa8]
push 0x1d0abda
call fcn.01c4af90
jmp 0x1c5423a
cmp eax, edx
jae 0x1c55815
cmp eax, 4
jae 0x1c557e6
mov byte [esp + 0xb3], cl
jmp 0x1c557b7
push str.__s_should_never_be_greater_than_or_equal_to_the_short_string_capacity
push str.__s_____min_cap
push 0x66c
push str....._buildtools_third_partylibc_trunkinclude_string
push str._s:_d:_assertion__s_failed:__s
call fcn.01ccb1e0
push str.string_index_out_of_bounds
push str.__pos___size__
push 0xd4e
jmp 0x1c557f5
call fcn.01cb0360
int3