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

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff8
sub esp, 0x88
mov ebx, dword [ebp + 0xc]
mov eax, dword [0x1d18014]
xor eax, ebp
mov dword [esp + 0x80], eax
test ebx, ebx
je 0x1c4b8fb
mov esi, 0x100
push esi
push ebx
call fcn.01cb5eac
add esp, 8
cmp eax, esi
je 0x1c4b99b
cmp byte [0x1d36b50], 0
jne 0x1c4b911
call fcn.01c4c0e0
test al, al
je 0x1c4b99b
xor edi, edi
cmp byte [0x1d36b51], 1
mov edx, dword [ebp + 0x10]
mov esi, 0
adc esi, 1
mov eax, dword [ebp + 8]
test eax, eax
cmovne esi, eax
mov dword [esp + 0x54], edi
mov dword [esp + 0x50], edi
mov dword [esp + 0x58], edi
test ebx, ebx
je 0x1c4b963
lea ecx, [esp + 0x50]
push ebx
mov ebx, edx
call fcn.01c4a6d0
lea ecx, [esp + 0x50]
call fcn.01c4c3b0
mov ecx, esi
mov edx, ebx
lea eax, [esp + 0x50]
push eax
call fcn.01c4c540
add esp, 4
mov dword [esp + 0x44], edi
mov dword [esp + 0x40], edi
mov dword [esp + 0x48], edi
mov dword [esp + 0x34], edi
mov dword [esp + 0x38], edi
mov dword [esp + 0x3c], edi
lea ecx, [esp + 0x28]
mov edx, esi
call fcn.01c4c740
cmp byte [esp + 0x4b], 0
js 0x1c4b9a2
mov word [esp + 0x40], 0
mov byte [esp + 0x4b], 0
jmp 0x1c4b9b3
xor ebx, ebx
jmp 0x1c4c06f
mov eax, dword [esp + 0x40]
mov word [eax], 0
mov dword [esp + 0x44], 0
mov esi, dword [esp + 0x34]
mov eax, dword [esp + 0x38]
cmp eax, esi
je 0x1c4b9d9
lea edi, [eax - 0xc]
cmp byte [eax - 1], 0
jns 0x1c4b9d3
push dword [eax - 0xc]
call fcn.01c9ba37
add esp, 4
mov eax, edi
cmp edi, esi
jne 0x1c4b9bf
mov dword [esp + 0x38], esi
xor esi, esi
mov dword [esp + 0x64], esi
mov dword [esp + 0x60], esi
mov dword [esp + 0x68], esi
movzx eax, word [0x1d36d76]
or ax, word [0x1d36f76]
je 0x1c4ba1f
movzx eax, byte [esp + 0x33]
test al, al
jns 0x1c4ba0a
mov eax, dword [esp + 0x2c]
jmp 0x1c4ba0d
and eax, 0x7f
dec eax
lea edx, [esp + 0x28]
lea ecx, [esp + 0x60]
push eax
push 1
push edx
call fcn.01cd8060
lea eax, [esp + 0x50]
movzx ecx, byte [eax + 0xb]
mov edx, ecx
and edx, 0x7f
test cl, cl
cmovs edx, dword [eax + 4]
cmovs eax, dword [eax]
lea edi, [esp + 0x60]
mov ecx, edi
push edx
push eax
call fcn.01c4a910
mov dword [esp + 0x78], esi
mov ecx, edi
push esi
push 0x5c
call fcn.01c7bb80
cmp eax, 0xffffffff
je 0x1c4bac7
mov edi, eax
mov eax, dword [esp + 0x78]
mov edx, edi
sub edx, eax
mov dword [esp + 0x5c], edx
mov esi, dword [esp + 0x38]
cmp esi, dword [esp + 0x3c]
jae 0x1c4ba89
mov ecx, esi
lea ebx, [esp + 0x24]
push ebx
push edx
push eax
lea eax, [esp + 0x6c]
push eax
call fcn.01c4aa80
add esi, 0xc
mov dword [esp + 0x38], esi
jmp 0x1c4baa5
lea ecx, [esp + 0x34]
lea eax, [esp + 0x5c]
push eax
lea eax, [esp + 0x7c]
push eax
lea eax, [esp + 0x68]
push eax
call fcn.01c4cf60
mov esi, dword [esp + 0x38]
cmp dword [esp + 0x34], esi
je 0x1c4bf68
inc edi
mov dword [esp + 0x78], edi
lea ecx, [esp + 0x60]
push edi
push 0x5c
call fcn.01c7bb80
mov edi, eax
cmp eax, 0xffffffff
jne 0x1c4ba57
movzx eax, byte [esp + 0x6b]
test al, al
jns 0x1c4bad6
mov eax, dword [esp + 0x64]
jmp 0x1c4bad9
and eax, 0x7f
test eax, eax
jne 0x1c4bf1e
movzx eax, word [0x1d36d76]
or ax, word [0x1d36f76]
je 0x1c4bbad
lea ecx, [esp + 0x60]
push str.REGISTRYUSER_
push 0xe
push 0
call fcn.01c4aed0
xor edx, edx
test eax, eax
sete dl
or edx, 2
mov eax, dword [esp + 0x38]
sub eax, dword [esp + 0x34]
sar eax, 2
imul eax, eax, 0xaaaaaaab
xor ecx, ecx
mov dword [esp + 4], edx
cmp eax, edx
jb 0x1c4bbea
xor esi, esi
lea edi, [esp + 0x40]
mov ecx, edi
push 0x5c
call fcn.01c7bbe0
xor ebx, ebx
mov eax, dword [esp + 0x34]
mov ecx, dword [esp + 0x38]
sub ecx, eax
sar ecx, 2
imul ecx, ecx, 0xaaaaaaab
cmp ecx, ebx
jbe 0x1c4c0b7
movzx edx, byte [eax + esi + 0xb]
test dl, dl
jns 0x1c4bb6e
mov edx, dword [eax + esi + 4]
mov eax, dword [eax + esi]
jmp 0x1c4bb73
add eax, esi
and edx, 0x7f
mov ecx, edi
push edx
push eax
call fcn.01c4a910
mov ecx, edi
push 0x5c
call fcn.01c7bbe0
inc ebx
add esi, 0xc
cmp dword [esp + 4], ebx
jne 0x1c4bb41
lea ecx, [esp + 0x34]
mov eax, dword [ecx]
mov edx, dword [esp + 4]
lea edx, [edx + edx*2]
lea edx, [eax + edx*4]
lea esi, [esp + 0x5c]
push edx
push eax
push esi
call fcn.01c4ce80
jmp 0x1c4bbe8
cmp byte [esp + 0x4b], 0
movzx eax, byte [esp + 0x33]
js 0x1c4c087
test al, al
jns 0x1c4bbd4
lea ecx, [esp + 0x40]
push dword [esp + 0x2c]
push dword [esp + 0x2c]
call fcn.01c4acd0
jmp 0x1c4bbe8
mov eax, dword [esp + 0x30]
mov dword [esp + 0x48], eax
movsd xmm0, qword [esp + 0x28]
movsd qword [esp + 0x40], xmm0
mov cl, 1
cmp byte [esp + 0x6b], 0
jns 0x1c4bc01
push dword [esp + 0x60]
mov esi, ecx
call fcn.01c9ba37
mov ecx, esi
add esp, 4
cmp byte [esp + 0x33], 0
jns 0x1c4bc18
push dword [esp + 0x28]
mov esi, ecx
call fcn.01c9ba37
mov ecx, esi
add esp, 4
xor ebx, ebx
test cl, cl
je 0x1c4c00c
mov dword [esp + 0x5c], 0xffffffff
mov dword [esp + 0x2c], ebx
mov dword [esp + 0x28], ebx
mov ecx, dword [0x1d36b5c]
cmp byte [esp + 0x4b], 0
jns 0x1c4bc45
mov esi, dword [esp + 0x40]
jmp 0x1c4bc49
lea esi, [esp + 0x40]
call dword [section..00cfg]
push esi
lea esi, [esp + 0x2c]
push esi
call ecx
mov dword [esp + 0x60], 0x18
mov dword [esp + 0x64], ebx
mov dword [esp + 0x6c], 0x40
mov dword [esp + 0x68], esi
mov dword [esp + 0x70], ebx
mov dword [esp + 0x74], ebx
mov ecx, dword [0x1d37178]
call dword [section..00cfg]
sub esp, 0x1c
xorps xmm0, xmm0
movups xmmword [esp + 0xc], xmm0
lea eax, [esp + 0x7c]
mov dword [esp + 8], eax
mov eax, dword [ebp + 0x10]
mov dword [esp + 4], eax
lea eax, [esp + 0x78]
mov dword [esp], eax
call ecx
test eax, eax
js 0x1c4c00c
mov eax, dword [esp + 0x38]
sub eax, dword [esp + 0x34]
je 0x1c4bf17
mov ecx, 0x2aaaaaab
imul ecx
mov esi, edx
mov edi, edx
shr edi, 0x1f
sar esi, 1
lea ebx, [esi + edi]
mov ecx, dword [0x1d36b54]
mov eax, dword [esp + 0x5c]
mov dword [esp + 4], eax
call dword [section..00cfg]
push dword [esp + 4]
call ecx
xor eax, eax
inc eax
cmp ebx, 2
cmovae eax, ebx
mov dword [esp + 0x14], eax
lea eax, [esi + edi]
dec eax
mov dword [esp + 0x18], eax
xor esi, esi
xor edi, edi
mov dword [esp + 4], 0
xor ebx, ebx
mov dword [esp + 8], 0
mov eax, dword [esp + 0x34]
mov ecx, dword [esp + 0x38]
sub ecx, eax
sar ecx, 2
imul ecx, ecx, 0xaaaaaaab
cmp ecx, edi
jbe 0x1c4c0b7
movzx edx, byte [eax + esi + 0xb]
test dl, dl
mov dword [esp + 0xc], esi
jns 0x1c4bd45
mov edx, dword [eax + esi + 4]
mov eax, dword [eax + esi]
jmp 0x1c4bd4a
add eax, esi
and edx, 0x7f
lea esi, [esp + 0x40]
mov ecx, esi
push edx
push eax
call fcn.01c4a910
mov ecx, esi
push 0x5c
call fcn.01c7bbe0
xor eax, eax
mov dword [esp + 0x24], eax
mov dword [esp + 0x20], 0xffffffff
cmp byte [esp + 0x4b], 0
mov eax, esi
jns 0x1c4bd7b
mov eax, dword [esp + 0x40]
mov dword [esp + 0x10], ebx
lea esi, [esp + 0x28]
mov ecx, esi
push eax
call fcn.01cc8630
xor eax, eax
mov dword [esp + 0x7c], eax
mov dword [esp + 0x78], eax
mov ecx, dword [0x1d36b5c]
cmp byte [esp + 0x33], 0
jns 0x1c4bda6
mov esi, dword [esp + 0x28]
call dword [section..00cfg]
push esi
lea ebx, [esp + 0x7c]
push ebx
call ecx
mov dword [esp + 0x60], 0x18
xor esi, esi
mov dword [esp + 0x64], esi
mov dword [esp + 0x6c], 0x40
mov dword [esp + 0x68], ebx
mov dword [esp + 0x70], esi
mov dword [esp + 0x74], esi
mov ecx, dword [0x1d37178]
call dword [section..00cfg]
lea eax, [esp + 0x24]
push eax
push esi
push esi
push esi
lea eax, [esp + 0x70]
push eax
push dword [ebp + 0x10]
lea eax, [esp + 0x38]
push eax
call ecx
mov esi, eax
cmp byte [esp + 0x33], 0
jns 0x1c4be0e
push dword [esp + 0x28]
call fcn.01c9ba37
add esp, 4
test esi, esi
mov ebx, dword [esp + 0x10]
mov dword [esp + 0x1c], esi
js 0x1c4bf7c
cmp dword [esp + 0x18], edi
jne 0x1c4be2e
mov eax, dword [esp + 0x20]
mov dword [esp + 0x5c], eax
jmp 0x1c4be59
cmp dword [esp + 0x24], 1
jne 0x1c4be46
cmp ebx, dword [esp + 8]
je 0x1c4be78
mov eax, dword [esp + 0x20]
mov dword [ebx], eax
add ebx, 4
jmp 0x1c4be59
mov ecx, dword [0x1d36b54]
mov esi, dword [esp + 0x20]
call dword [section..00cfg]
push esi
call ecx
mov ecx, dword [esp + 4]
mov esi, dword [esp + 0xc]
inc edi
add esi, 0xc
mov dword [esp + 4], ecx
cmp dword [esp + 0x14], edi
jne 0x1c4bd14
jmp 0x1c4bfa4
sub ebx, dword [esp + 4]
mov eax, ebx
sar eax, 2
mov ecx, eax
mov dword [esp + 0x10], eax
inc eax
cmp eax, 0x40000000
jae 0x1c4c0d5
mov ecx, ebx
sar ecx, 1
cmp ecx, eax
cmovbe ecx, eax
cmp ebx, 0x7ffffffc
mov eax, 0x3fffffff
cmovae ecx, eax
test ecx, ecx
mov dword [esp + 8], ecx
je 0x1c4bed0
cmp ecx, 0x40000000
jae 0x1c4c0da
lea eax, [ecx*4]
push eax
call fcn.01c9ba07
add esp, 4
jmp 0x1c4bed2
xor eax, eax
mov ecx, dword [esp + 0x20]
mov edx, dword [esp + 0x10]
mov dword [eax + edx*4], ecx
push ebx
mov esi, dword [esp + 8]
push esi
mov ebx, eax
push eax
call fcn.01c9ed50
add esp, 0xc
test esi, esi
je 0x1c4befb
push esi
call fcn.01c9ba37
add esp, 4
mov ecx, ebx
mov eax, dword [esp + 8]
lea eax, [ebx + eax*4]
mov dword [esp + 8], eax
mov eax, dword [esp + 0x10]
lea ebx, [ebx + eax*4]
add ebx, 4
jmp 0x1c4be5d
xor edi, edi
jmp 0x1c4bfd3
mov esi, dword [esp + 0x38]
cmp esi, dword [esp + 0x3c]
jae 0x1c4bf46
lea eax, [esp + 0x5c]
mov ecx, esi
push eax
push dword [esp + 0x7c]
lea eax, [esp + 0x68]
push eax
call fcn.01cd9a90
add esi, 0xc
mov dword [esp + 0x38], esi
jmp 0x1c4bf5e
lea eax, [esp + 0x78]
lea esi, [esp + 0x34]
mov ecx, esi
push eax
lea eax, [esp + 0x64]
push eax
call fcn.01cd9940
mov esi, dword [esi + 4]
cmp dword [esp + 0x34], esi
jne 0x1c4bae1
push str.back___called_on_an_empty_vector
push str._empty__
push 0x22a
jmp 0x1c4c0c6
mov esi, dword [esp + 4]
cmp esi, ebx
je 0x1c4c0ae
mov edi, dword [esi]
mov ecx, dword [0x1d36b58]
call dword [section..00cfg]
push edi
call ecx
add esi, 4
cmp esi, ebx
jne 0x1c4bf88
mov ecx, dword [esp + 4]
mov dword [esp + 4], ecx
cmp ecx, ebx
je 0x1c4bfc8
mov esi, dword [esp + 4]
mov edi, dword [esi]
mov ecx, dword [0x1d36b54]
call dword [section..00cfg]
push edi
call ecx
add esi, 4
cmp esi, ebx
jne 0x1c4bfb0
cmp dword [esp + 0x1c], 0
js 0x1c4bff9
mov edi, dword [esp + 4]
mov eax, dword [ebp + 0x14]
test eax, eax
je 0x1c4bfe2
mov ecx, dword [esp + 0x5c]
mov dword [eax], ecx
jmp 0x1c4bff5
mov ecx, dword [0x1d36b54]
mov esi, dword [esp + 0x5c]
call dword [section..00cfg]
push esi
call ecx
mov bl, 1
jmp 0x1c4bfff
xor ebx, ebx
mov edi, dword [esp + 4]
test edi, edi
je 0x1c4c00c
push edi
call fcn.01c9ba37
add esp, 4
mov esi, dword [esp + 0x34]
test esi, esi
je 0x1c4c049
mov eax, dword [esp + 0x38]
mov ecx, esi
cmp eax, esi
je 0x1c4c03c
lea edi, [eax - 0xc]
cmp byte [eax - 1], 0
jns 0x1c4c032
push dword [eax - 0xc]
call fcn.01c9ba37
add esp, 4
mov eax, edi
cmp edi, esi
jne 0x1c4c01e
mov ecx, dword [esp + 0x34]
mov dword [esp + 0x38], esi
push ecx
call fcn.01c9ba37
add esp, 4
cmp byte [esp + 0x4b], 0
jns 0x1c4c05c
push dword [esp + 0x40]
call fcn.01c9ba37
add esp, 4
cmp byte [esp + 0x5b], 0
jns 0x1c4c06f
push dword [esp + 0x50]
call fcn.01c9ba37
add esp, 4
mov ecx, dword [esp + 0x80]
xor ecx, ebp
call fcn.01c9ca53
mov eax, ebx
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
mov edx, eax
and edx, 0x7f
test al, al
cmovs edx, dword [esp + 0x2c]
mov eax, dword [esp + 0x28]
lea ecx, [esp + 0x28]
cmovns eax, ecx
lea ecx, [esp + 0x40]
push edx
push eax
call fcn.01c4ac00
jmp 0x1c4bbe8
xor ebx, ebx
mov edi, esi
jmp 0x1c4bfff
push str.vector___index_out_of_bounds
push str.__n___size__
push 0x587
push str....._buildtools_third_partylibc_trunkinclude_vector
push str._s:_d:_assertion__s_failed:__s
call fcn.01ccb1e0
call fcn.01cb0360
call fcn.01cc8620
int3