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

Disassembly:
sub esp, 0x28c
mov eax, dword [0x65ada4]
xor eax, esp
mov dword [esp + 0x288], eax
mov ecx, dword [str.public]
push ebx
push edi
mov edi, dword [esp + 0x298]
mov eax, dword [edi + 0x6e4]
imul eax, eax, 0x16c
mov dword [esp + 0x38], 0
cmp byte [ecx + 0x6f0], 6
lea ebx, [eax + edi + 0x57c]
mov dword [esp + 0x18], ebx
jne 0x4ce1f8
lea edx, [edi + 0x17c1a]
push edx
push str.__systable
call fcn.00576b30
add esp, 8
mov byte [esp + 0xb], 1
test eax, eax
je 0x4ce1fd
mov byte [esp + 0xb], 0
mov eax, dword [str.public]
sub eax, 0xffffff80
push eax
call fcn.00485c00
add esp, 4
cmp eax, 2
jge 0x4ce252
mov ecx, dword [str.public]
push str.tables
push str.create
push ecx
push 0x7dd
push 0x1f69
call fcn.00406f10
add esp, 0x14
pop edi
mov eax, 0x1f69
pop ebx
mov ecx, dword [esp + 0x288]
xor ecx, esp
call fcn.00586584
add esp, 0x28c
ret
cmp byte [esp + 0xb], 0
push ebp
push esi
mov byte [edi + 0x11], 1
jne 0x4ce285
mov eax, dword [edi + 0x1f]
push 0
push 0xa
lea edx, [edi + 0x17c1a]
push edx
push 0
push 0xffffffffffffffff
push eax
push edi
call fcn.00484330
mov esi, eax
add esp, 0x1c
test esi, esi
jne 0x4ce41a
push edi
call fcn.004ca870
mov esi, eax
add esp, 4
test esi, esi
jne 0x4ce41a
mov eax, dword [ebx + 0xe]
mov ebx, eax
test eax, eax
jne 0x4ce2a6
mov ebx, str.NULL
mov eax, ebx
lea edx, [eax + 1]
jmp 0x4ce2b0
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4ce2b0
sub eax, edx
add eax, 0xfd
push eax
call dword [sym.imp.MSVCR90.dll_malloc]
mov ebp, eax
add esp, 4
test ebp, ebp
jne 0x4ce2eb
mov eax, dword [esp + 0x54]
push eax
mov esi, 6
push 0x7dd
push esi
call fcn.00406f10
add esp, 0xc
jmp 0x4ce429
mov eax, dword [esp + 0x20]
lea ecx, [esp + 0x108]
push ecx
add eax, 4
push 1
push eax
mov dword [esp + 0x38], eax
call fcn.00575800
mov esi, dword [sym.imp.MSVCR90.dll_sprintf]
push eax
lea edx, [esp + 0xb4]
push 0x5aeecc
push edx
call esi
lea eax, [edi + 0x17c1a]
push eax
mov dword [esp + 0x38], eax
lea eax, [esp + 0xc0]
push eax
push ebx
push str.SELECT____s__s_FROM___s_
push ebp
call esi
push 1
push 1
lea ecx, [esp + 0x7c]
push ecx
lea edx, [esp + 0x74]
push edx
lea eax, [esp + 0x54]
push eax
lea ecx, [esp + 0xd4]
push 0
push ecx
call fcn.0047d840
mov esi, eax
add esp, 0x48
test esi, esi
jne 0x4ce410
push eax
lea edx, [edi + 0x37]
push edx
push 0xa
push eax
push ebp
call fcn.004205c0
mov esi, eax
add esp, 0x14
test esi, esi
jne 0x4ce410
push eax
lea eax, [esp + 0xa0]
push eax
lea ecx, [esp + 0x58]
push ecx
lea edx, [esp + 0x40]
push edx
push 0xa
call fcn.00421650
mov esi, eax
add esp, 0x14
test esi, esi
jne 0x4ce406
mov esi, dword [esp + 0x34]
movzx ecx, word [esi]
movsx eax, cx
cdq
sub eax, edx
sar eax, 1
movzx edx, word [esi + eax*2 - 2]
cmp dx, cx
jl 0x4ce3c1
dec eax
jmp 0x4ce3c4
movsx eax, dx
test eax, eax
je 0x4ce444
mov eax, dword [esp + 0x50]
mov ecx, dword [esp + 0x18]
push 0
push eax
push esi
push ecx
call fcn.0047d3b0
mov esi, eax
add esp, 0x10
test esi, esi
jne 0x4ce406
push eax
lea edx, [esp + 0xa0]
push edx
lea eax, [esp + 0x58]
push eax
lea ecx, [esp + 0x40]
push ecx
push 0xa
call fcn.00421650
mov esi, eax
add esp, 0x14
test esi, esi
je 0x4ce3a5
push 0xa
call fcn.0041f450
add esp, 4
push ebp
call dword [sym.imp.MSVCR90.dll_free]
add esp, 4
push 0x7dd
push 0
call fcn.00406f10
add esp, 8
mov eax, esi
mov ecx, dword [esp + 0x298]
pop esi
pop ebp
pop edi
pop ebx
xor ecx, esp
call fcn.00586584
add esp, 0x28c
ret
mov edx, dword [esp + 0x18]
push edx
call fcn.0047d800
mov esi, eax
add esp, 4
test esi, esi
jne 0x4ce406
push 0xa
call fcn.0041f450
mov esi, eax
add esp, 4
test esi, esi
jne 0x4ce406
push ebp
call dword [sym.imp.MSVCR90.dll_free]
mov eax, dword [esp + 0x20]
add esp, 4
cmp byte [esp + 0x13], 0
mov dword [esp + 0x44], eax
jne 0x4ce4c1
lea ecx, [esp + 0x44]
push ecx
mov ebp, 1
push ebp
lea edx, [esp + 0x2c]
push edx
push fcn.00472210
push esi
push str.UPDATE____systable__SET_colno__colno1__versionversion1_WHERE_tname___
call fcn.0050df80
mov esi, eax
add esp, 0x18
test esi, esi
jne 0x4ce41a
cmp dword [esp + 0x24], ebp
jne 0x4ce87e
cmp dword [esp + 0x28], ebp
jne 0x4ce87e
mov ecx, dword [edi + 0x6e4]
mov eax, dword [edi + 0x1f]
mov esi, dword [esp + 0x20]
mov dword [esp + 0x5c], ecx
lea ecx, [esp + 0x5c]
lea edx, [esp + 0x4c]
mov dword [esp + 0x68], edx
mov dword [esp + 0x80], ecx
mov dword [esp + 0x4c], eax
lea ecx, [esp + 0x108]
lea edx, [esp + 0x60]
push ecx
xor ebp, ebp
lea eax, [esp + 0x68]
mov dword [esp + 0x88], edx
mov edx, dword [esp + 0x30]
mov dword [esp + 0x64], ebp
mov dword [esp + 0x68], ebp
mov dword [esp + 0x80], eax
mov eax, dword [esi]
push 1
push edx
mov dword [esp + 0x78], eax
call fcn.00575800
mov dword [esp + 0x7c], eax
mov eax, dword [esi + 0xa]
add esp, 0xc
mov dword [esp + 0x74], eax
mov dword [esp + 0x78], ebx
cmp ebx, ebp
jne 0x4ce547
cmp eax, ebp
jne 0x4ce547
mov eax, str.dom_def_NULL
jmp 0x4ce883
cmp byte [esi + 8], 0
mov dword [esp + 0x88], 0x5ad3bc
jne 0x4ce563
mov dword [esp + 0x88], 0x5ad3b8
lea eax, [esp + 0x40]
lea edx, [esp + 0x68]
push edx
mov ecx, eax
push 0xb
mov dword [esp + 0x98], eax
lea eax, [esp + 0x2c]
push eax
push fcn.00472210
push ebp
push str.INSERT_INTO____syscolumn__values_______________________
mov dword [esp + 0xa4], ecx
call fcn.0050df80
mov esi, eax
add esp, 0x18
cmp esi, ebp
jne 0x4ce41a
mov ebx, 1
cmp dword [esp + 0x24], ebx
jne 0x4ce87e
cmp dword [esp + 0x28], ebx
jne 0x4ce87e
mov ebp, dword [esp + 0x2c]
cmp word [ebp], 0xd
jne 0x4ce671
mov eax, dword [edi + 0x6e4]
sub eax, 2
mov dl, bl
js 0x4ce5fc
mov ecx, eax
imul ecx, ecx, 0x16c
lea ecx, [ecx + edi + 0x6ec]
cmp word [ecx], 0xd
jne 0x4ce5ec
xor dl, dl
sub eax, ebx
sub ecx, 0x16c
test eax, eax
jge 0x4ce5e4
test dl, dl
je 0x4ce671
mov eax, dword [edi + 0x5c]
lea edx, [esp + 0x2c]
push edx
push 0
push eax
lea ecx, [esp + 0x40]
push ecx
mov byte [esp + 0x49], bl
mov byte [esp + 0x48], 3
call fcn.00423860
mov esi, eax
add esp, 0x10
test esi, esi
jne 0x4ce41a
mov edx, dword [esp + 0x2c]
push edx
call fcn.004240d0
mov esi, eax
add esp, 4
test esi, esi
jne 0x4ce41a
mov eax, dword [esp + 0x34]
mov dword [esp + 0x20], eax
lea eax, [esp + 0x68]
push eax
lea ecx, [esp + 0x50]
lea edx, [esp + 0x24]
push 2
push 0x26
mov dword [esp + 0x74], ecx
mov dword [esp + 0x78], edx
call fcn.004434f0
mov esi, eax
add esp, 0xc
test esi, esi
jne 0x4ce41a
cmp dword [edi + 0x17a93], 0
je 0x4ce6d2
mov ecx, dword [esp + 0x1c]
push 0
push 0
push 0
push ecx
push 3
push edi
call fcn.004cbb40
mov esi, eax
add esp, 0x18
test esi, esi
je 0x4ce6ba
jle 0x4ce6a4
cmp esi, 0x1388
jl 0x4ce41a
push ebx
push 0x7dd
push esi
call fcn.00407430
add esp, 0xc
mov esi, eax
jmp 0x4ce41a
mov edx, dword [edi + 0x1f]
push edx
mov ecx, edi
call fcn.004c68a0
mov esi, eax
add esp, 4
test esi, esi
jne 0x4ce41a
push 0
push 0
lea eax, [esp + 0x60]
push eax
lea ecx, [esp + 0x60]
push ecx
lea edx, [esp + 0x24]
push edx
push 2
lea ebx, [edi + 0x1f]
push ebx
call fcn.00449a30
mov esi, eax
add esp, 0x1c
test esi, esi
jne 0x4ce41a
mov eax, dword [esp + 0x14]
push eax
call fcn.00448e90
mov esi, eax
add esp, 4
test esi, esi
jne 0x4ce41a
mov ecx, dword [esp + 0x14]
push ebp
push ecx
call fcn.00448c50
mov esi, eax
add esp, 8
test esi, esi
jne 0x4ce41a
mov edx, dword [esp + 0x14]
push edx
call fcn.00449a90
mov esi, eax
add esp, 4
test esi, esi
jne 0x4ce41a
push eax
push eax
lea eax, [esp + 0x60]
push eax
lea ecx, [esp + 0x60]
push ecx
lea edx, [esp + 0x24]
push edx
push 2
push ebx
call fcn.00471fe0
mov esi, eax
add esp, 0x1c
test esi, esi
jne 0x4ce41a
lea eax, [esp + 0x48]
push eax
lea ecx, [esp + 0x40]
push ecx
lea edx, [esp + 0x20]
push edx
lea eax, [esp + 0xa0]
push eax
call fcn.0047d8e0
mov esi, eax
add esp, 0x10
test esi, esi
jne 0x4ce41a
mov edx, dword [esp + 0x18]
push eax
lea ecx, [esp + 0x34]
push ecx
push eax
push edx
lea ebp, [eax + 1]
call fcn.0047d110
mov esi, eax
add esp, 0x10
test esi, esi
jne 0x4ce41a
lea ebx, [ebp + 0x1f]
cmp dword [esp + 0x30], 0x1e
jne 0x4ce811
mov ecx, dword [esp + 0x48]
mov edx, dword [ecx]
lea eax, [esp + 0x30]
push eax
mov eax, dword [esp + 0x40]
mov ecx, dword [eax]
push edx
mov edx, dword [esp + 0x1c]
push ecx
push edx
call fcn.00449650
mov esi, eax
add esp, 0x10
test esi, esi
jne 0x4ce41a
cmp dword [esp + 0x30], ebx
jne 0x4ce8ef
mov ecx, dword [esp + 0x18]
push eax
lea eax, [esp + 0x34]
push eax
push esi
push ecx
inc ebp
call fcn.0047d110
mov esi, eax
add esp, 0x10
test esi, esi
je 0x4ce7b6
jmp 0x4ce41a
mov edx, dword [esp + 0x14]
push edx
call fcn.00471b10
mov esi, eax
add esp, 4
test esi, esi
jne 0x4ce41a
mov eax, dword [esp + 0x18]
push eax
call fcn.0047d8a0
mov esi, eax
add esp, 4
test esi, esi
jne 0x4ce41a
cmp byte [esp + 0x13], al
je 0x4ce89c
lea ecx, [esp + 0x44]
push ecx
mov edi, 1
push edi
lea edx, [esp + 0x2c]
push edx
push fcn.00472210
push eax
push str.UPDATE____systable__SET_colno__colno1__versionversion1_WHERE_tname___
call fcn.0050df80
mov esi, eax
add esp, 0x18
test esi, esi
jne 0x4ce41a
cmp dword [esp + 0x24], edi
jne 0x4ce87e
cmp dword [esp + 0x28], edi
je 0x4ce8e8
mov eax, str.addcol1
push eax
mov esi, 0x1b
push 0x7dd
push esi
call fcn.00406f10
add esp, 0xc
jmp 0x4ce429
cmp dword [edi + 0x17a93], 0
je 0x4ce8e8
mov eax, dword [esp + 0x1c]
push eax
push eax
lea eax, [esp + 0x174]
push str.INSERT_INTO___s__SELECT__FROM___s_
push eax
call dword [sym.imp.MSVCR90.dll_sprintf]
push 0
push 0
lea ecx, [esp + 0x3c]
push ecx
push fcn.00472210
lea edx, [esp + 0x18c]
push 0
push edx
call fcn.0050df80
mov esi, eax
add esp, 0x28
test esi, esi
jne 0x4ce41a
xor eax, eax
jmp 0x4ce42b
mov eax, dword [esp + 0x1c]
push eax
push ebp
push 0x7dd
push 0x23bf
call fcn.00406f10
add esp, 0x10
mov eax, 0x23bf
jmp 0x4ce42b