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

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x18
push ebx
push esi
mov esi, ecx
mov eax, edx
push edi
mov dword [ebp - 8], eax
mov ecx, str.sqlite_temp_master
mov edi, dword [esi]
cmp byte [edi + 0xb1], 0
je 0x474ce3
cmp dword [edi + 0xac], 1
jne 0x474ce3
movzx eax, byte [edi + 0xb0]
mov edx, str.sqlite_master
cmp eax, 1
mov dword [ebp - 4], eax
cmove edx, ecx
mov ecx, edi
call fcn.0043f379
mov ebx, eax
lea eax, [esi + 0xd4]
mov dword [ebp - 0xc], eax
jmp 0x474d5e
mov ebx, dword [ebp + 8]
lea ecx, [ebp - 0x10]
push ecx
push ebx
mov ecx, esi
call fcn.00474a48
mov dword [ebp - 4], eax
pop ecx
pop ecx
test eax, eax
js 0x474e7b
cmp dword [ebp + 0xc], 0
je 0x474d29
cmp dword [ebx + 4], 0
jbe 0x474d22
cmp eax, 1
je 0x474d22
push str.temporary_table_name_must_be_unqualified
push esi
call fcn.00441b18
pop ecx
pop ecx
jmp 0x474e7b
mov dword [ebp - 4], 1
mov eax, dword [ebp - 0x10]
mov ecx, edi
mov edx, eax
mov dword [ebp - 8], eax
call fcn.00474967
lea edx, [esi + 0xd4]
mov ebx, eax
cmp byte [edx], 2
mov dword [ebp - 0xc], edx
jb 0x474d5e
push dword [ebp - 8]
mov edx, ebx
mov ecx, esi
call fcn.0046fe3c
lea edx, [esi + 0xd4]
pop ecx
mov dword [ebp - 0xc], edx
mov ecx, dword [ebp - 8]
mov eax, dword [ecx]
mov ecx, dword [ecx + 4]
mov dword [esi + 0xc0], eax
mov dword [esi + 0xc4], ecx
test ebx, ebx
je 0x474e7b
cmp dword [ebp + 0x10], 0
mov ecx, str.table
mov eax, str.view
mov edx, ebx
cmove eax, ecx
mov ecx, esi
push ebx
push eax
call fcn.00474ac2
pop ecx
pop ecx
test eax, eax
jne 0x474e6e
mov ecx, dword [ebp - 4]
xor edx, edx
mov eax, dword [edi + 0x10]
inc edx
cmp byte [edi + 0xb0], dl
cmovne edx, dword [ebp + 0xc]
shl ecx, 4
cmp edx, 1
mov dword [ebp - 0x10], ecx
mov dword [ebp - 0x18], edx
mov eax, dword [ecx + eax]
mov ecx, str.sqlite_temp_master
push eax
mov dword [ebp - 0x14], eax
mov eax, str.sqlite_master
push 0
cmove eax, ecx
mov ecx, esi
push eax
push 0x12
pop edx
call fcn.00473b56
add esp, 0xc
test eax, eax
jne 0x474e6e
cmp dword [ebp + 0x14], eax
jne 0x474e11
push dword [ebp - 0x14]
mov ecx, dword [ebp + 0x10]
push eax
mov eax, dword [ebp - 0x18]
push ebx
movzx edx, byte [eax + ecx*2 + 0x4cd3d0]
mov ecx, esi
call fcn.00473b56
add esp, 0xc
test eax, eax
jne 0x474e6e
mov eax, dword [ebp - 0xc]
cmp byte [eax], 0
jne 0x474ebd
mov eax, dword [edi + 0x10]
mov ecx, dword [ebp - 0x10]
mov eax, dword [ecx + eax]
mov ecx, esi
mov dword [ebp - 0xc], eax
call fcn.004863f8
test eax, eax
jne 0x474e6e
push dword [ebp - 0xc]
mov edx, ebx
mov ecx, edi
call fcn.0047405a
pop ecx
test eax, eax
je 0x474e9b
cmp dword [ebp + 0x18], 0
jne 0x474e80
cmp byte [eax + 0x2b], 2
mov ecx, str.table
push dword [ebp - 8]
mov eax, str.view
cmovne eax, ecx
push eax
push str._s__T_already_exists
push esi
call fcn.00441b18
add esp, 0x10
mov edx, ebx
mov byte [esi + 0x11], 1
mov ecx, edi
call fcn.0043eeff
pop edi
pop esi
pop ebx
leave
ret
cmp dword [esi + 0x78], 0
mov ecx, esi
mov edx, dword [ebp - 4]
cmovne ecx, dword [esi + 0x78]
call fcn.004793c0
mov ecx, esi
call fcn.00474c5d
jmp 0x474e6e
push dword [ebp - 0xc]
mov edx, ebx
mov ecx, edi
call fcn.004743c0
pop ecx
test eax, eax
je 0x474ebd
push ebx
push str.there_is_already_an_index_named__s
push esi
call fcn.00441b18
add esp, 0xc
jmp 0x474e6e
push 0
push 0x40
mov ecx, edi
call fcn.0043f143
pop ecx
pop ecx
mov ecx, eax
test ecx, ecx
jne 0x474edc
inc dword [esi + 0x24]
mov dword [esi + 0xc], 7
jmp 0x474e6e
mov edx, dword [ebp - 0x10]
or eax, 0xffffffff
mov word [ecx + 0x20], ax
mov dword [ecx], ebx
mov eax, dword [edi + 0x10]
mov eax, dword [eax + edx + 0xc]
mov dword [ecx + 0x3c], eax
mov eax, 0xc8
mov dword [ecx + 0x18], 1
mov word [ecx + 0x26], ax
mov dword [esi + 0xf0], ecx
cmp byte [edi + 0xb1], 0
jne 0x474e7b
mov ecx, esi
call fcn.00488de5
mov ebx, eax
test ebx, ebx
je 0x474e7b
push dword [ebp - 4]
xor edx, edx
mov ecx, esi
inc edx
call fcn.00479447
cmp dword [ebp + 0x14], 0
pop ecx
je 0x474f4e
xor eax, eax
mov edx, 0xaa
push eax
push eax
push eax
mov ecx, ebx
call fcn.004591cc
add esp, 0xc
mov eax, dword [esi + 0x2c]
mov ecx, ebx
inc eax
mov dword [ebp - 0xc], eax
mov dword [esi + 0x5c], eax
inc eax
push 2
mov dword [esi + 0x60], eax
inc eax
push eax
push dword [ebp - 4]
mov dword [ebp - 0x10], eax
push 0x63
pop edx
mov dword [esi + 0x2c], eax
call fcn.004591cc
mov edx, dword [ebp - 4]
add esp, 0xc
mov ecx, ebx
call fcn.00459cdb
push 0
push 0
push dword [ebp - 0x10]
mov ecx, ebx
push 0x10
pop edx
call fcn.004591cc
mov ecx, dword [edi + 0x20]
add esp, 0xc
and ecx, 2
mov dword [ebp - 0x18], eax
or ecx, 0
je 0x474fa7
xor eax, eax
inc eax
jmp 0x474faa
push 4
pop eax
push eax
push 2
push dword [ebp - 4]
mov ecx, ebx
push 0x64
pop edx
call fcn.004591cc
movzx eax, byte [edi + 0x54]
add esp, 0xc
mov edi, dword [ebp - 4]
mov ecx, ebx
push eax
push 5
push edi
push 0x64
pop edx
call fcn.004591cc
mov edx, dword [ebp - 0x18]
add esp, 0xc
mov ecx, ebx
call fcn.00459a36
cmp dword [ebp + 0x10], 0
mov ecx, dword [ebx + 0x6c]
mov dword [eax + 8], ecx
jne 0x47500d
cmp dword [ebp + 0x14], 0
jne 0x47500d
mov eax, dword [ebp - 0xc]
mov edx, 0x93
push 1
inc eax
mov ecx, ebx
push eax
push edi
call fcn.004591cc
mov dword [esi + 0x88], eax
jmp 0x475020
mov eax, dword [ebp - 0xc]
mov ecx, ebx
push 0
inc eax
push eax
push 0
push 0x47
pop edx
call fcn.004591cc
add esp, 0xc
mov edx, edi
mov ecx, esi
call fcn.00474989
mov edi, dword [ebp - 0xc]
xor esi, esi
push esi
push edi
push esi
push 0x7f
pop edx
mov ecx, ebx
call fcn.004591cc
add esp, 0xc
mov ecx, ebx
push esi
mov esi, dword [ebp - 0x10]
push esi
push 6
push 0x4d
pop edx
call fcn.004591cc
add esp, 0xc
mov edx, eax
mov ecx, ebx
push 0xffffffffffffffff
push 0x4cbc90
call fcn.00459979
push edi
push esi
xor esi, esi
mov edx, 0x80
push esi
mov ecx, ebx
call fcn.004591cc
add esp, 0x14
mov ecx, ebx
push 8
pop edx
call fcn.0045974e
push esi
push esi
push esi
push 0x7a
pop edx
call fcn.004591cc
add esp, 0xc
jmp 0x474e7b