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

Disassembly:
sub esp, 0x94
push ebx
push ebp
mov ebp, dword [esp + 0xa0]
cmp dword [ebp + 0x1c8], 0
mov ebx, dword [ebp]
push esi
push edi
mov esi, eax
jle 0x571fa5
push str.parameters_are_not_allowed_in_views
mov edi, ebp
call fcn.005454f0
add esp, 4
mov esi, dword [esp + 0xb4]
test esi, esi
je 0x571f9a
push esi
push ebx
call fcn.005813f0
push esi
push ebx
call fcn.00543400
add esp, 0x10
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x94
ret
mov eax, dword [esp + 0xbc]
mov ecx, dword [esp + 0xb8]
push eax
mov eax, dword [esp + 0xb4]
push 0
push 1
push ecx
push ebp
mov ecx, esi
call fcn.00570e70
mov edi, dword [ebp + 0x200]
add esp, 0x14
test edi, edi
je 0x571f7e
cmp dword [ebp + 0x40], 0
jne 0x571f7e
mov edx, dword [esp + 0xb0]
push edx
push ebp
lea ecx, [esp + 0x18]
mov eax, esi
call fcn.00570d80
mov esi, dword [edi + 0x44]
add esp, 8
mov ecx, ebx
call fcn.00580c70
test eax, eax
jl 0x572054
cmp eax, 1
je 0x572054
mov ecx, dword [ebp]
mov esi, dword [esp + 0xb4]
mov dword [esp + 0x50], ebp
mov edx, dword [ecx + 8]
mov ecx, dword [esp + 0x10]
shl eax, 4
mov eax, dword [eax + edx]
lea edx, [esp + 0x50]
push esi
push edx
mov dword [esp + 0x5c], eax
mov dword [esp + 0x60], str.view
mov dword [esp + 0x64], ecx
call fcn.0056fa70
add esp, 8
test eax, eax
je 0x57205b
mov edi, ebx
call fcn.005815a0
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x94
ret
mov esi, dword [esp + 0xb4]
push 1
push esi
push ebx
call fcn.00569ca0
add esp, 0xc
test esi, esi
mov dword [edi + 0x1c], eax
je 0x57207f
push esi
push ebx
call fcn.005813f0
push esi
push ebx
call fcn.00543400
add esp, 0x10
cmp byte [ebx + 0x1e], 0
jne 0x571f9a
cmp byte [ebx + 0x7c], 0
jne 0x572099
push edi
push ebp
call fcn.00572360
add esp, 8
mov eax, dword [ebp + 0x1f4]
mov cl, byte [eax]
test cl, cl
mov edx, dword [ebp + 0x1f8]
je 0x5720b2
cmp cl, 0x3b
je 0x5720b2
add eax, edx
mov ecx, dword [esp + 0xac]
mov ecx, dword [ecx]
sub eax, ecx
test eax, eax
jle 0x5720d6
movzx edx, byte [ecx + eax - 1]
test byte [edx + 0x617c68], 1
je 0x5720d6
sub eax, 1
test eax, eax
jg 0x5720c1
mov ebx, dword [ebp]
cmp byte [ebx + 0x1e], 0
lea eax, [ecx + eax - 1]
mov dword [esp + 0x24], eax
mov dword [esp + 0x28], 1
mov dword [esp + 0x18], 0
jne 0x571f9a
mov edi, dword [ebp + 0x200]
test edi, edi
mov dword [esp + 0x14], edi
je 0x571f9a
mov esi, dword [edi + 0x44]
mov ecx, ebx
call fcn.00580c70
mov esi, dword [edi + 0x2c]
test esi, esi
mov dword [esp + 0x1c], eax
je 0x57219a
xor eax, eax
push 0x40
push eax
lea ecx, [esp + 0x68]
push ecx
mov dword [esp + 0x38], eax
mov dword [esp + 0x3c], eax
mov dword [esp + 0x40], eax
mov dword [esp + 0x44], eax
mov dword [esp + 0x48], eax
mov dword [esp + 0x4c], eax
mov dword [esp + 0x50], eax
mov dword [esp + 0x54], eax
mov dword [esp + 0x58], eax
call fcn.005e6f30
mov edx, dword [edi]
add esp, 0xc
lea eax, [esp + 0x60]
push esi
lea esi, [esp + 0x30]
mov word [esp + 0x64], 1
mov dword [esp + 0x70], edx
mov dword [esp + 0x78], edi
mov dword [esp + 0x84], 0xffffffff
mov dword [esp + 0x30], ebp
mov dword [esp + 0x34], eax
mov byte [esp + 0x46], 1
call fcn.00568a10
add esp, 4
test eax, eax
jne 0x571f9a
cmp byte [ebx + 0x7c], 0
je 0x5721b0
mov ecx, dword [ebx + 0x78]
mov dword [edi + 0x14], ecx
cmp byte [ebx + 0x7c], 0
jne 0x5722da
mov edi, ebp
call fcn.00583190
test eax, eax
mov dword [esp + 0x20], eax
je 0x571f9a
push 0
push 0
push 0
push 0x2b
call fcn.0055cbe0
mov edi, dword [esp + 0x24]
add esp, 0x10
cmp dword [edi + 0x1c], 0
jne 0x5721ec
mov dword [esp + 0x10], str.table
mov edx, str.TABLE
jmp 0x5721f9
mov dword [esp + 0x10], str.view
mov edx, str.VIEW
mov ecx, dword [ebp + 0x1ec]
mov eax, dword [esp + 0x24]
sub eax, ecx
push ecx
add eax, 1
push eax
push edx
push str.CREATE__s__.s
mov esi, ebx
call fcn.00544920
mov ecx, dword [esp + 0x2c]
add esp, 0x10
cmp ecx, 1
mov esi, eax
mov edx, str.sqlite_temp_master
je 0x57222f
mov edx, str.sqlite_master
mov eax, dword [edi]
mov edi, ecx
mov ecx, dword [ebp + 0x198]
push ecx
mov ecx, dword [ebp + 0x19c]
push esi
push ecx
mov ecx, dword [ebx + 8]
push eax
push eax
mov eax, dword [esp + 0x24]
push eax
push edx
shl edi, 4
mov edx, dword [edi + ecx]
push edx
push str.UPDATE__Q._s_SET_type_s__name_Q__tbl_name_Q__rootpage_d__sql_Q_WHERE_rowid_d
push ebp
call fcn.005703b0
push esi
push ebx
call fcn.00543400
mov eax, dword [esp + 0x4c]
push eax
mov esi, ebp
call fcn.00571870
mov esi, dword [esp + 0x48]
add esp, 0x34
test byte [esi + 0x22], 8
je 0x57229f
mov eax, dword [ebx + 8]
mov ecx, dword [eax + edi + 0xc]
add eax, edi
cmp dword [ecx + 0x48], 0
jne 0x57229f
mov edx, dword [eax]
push edx
push str.CREATE_TABLE__Q.sqlite_sequence_name_seq_
push ebp
call fcn.005703b0
add esp, 0xc
mov eax, dword [esi]
push 0xffffffffffffffff
push ecx
push eax
push str.tbl_name_q
mov esi, ebx
call fcn.00544920
mov ecx, dword [esp + 0x2c]
mov edi, dword [esp + 0x30]
add esp, 0xc
push eax
push ecx
push 0x63
xor eax, eax
xor ecx, ecx
call fcn.0055ccb0
mov edi, dword [esp + 0x24]
add esp, 0x10
cmp byte [ebx + 0x7c], 0
je 0x571f9a
mov ecx, dword [edi]
mov edx, dword [edi + 0x44]
push edi
call fcn.00545410
push eax
push ecx
lea eax, [edx + 8]
call fcn.00546770
add esp, 0xc
test eax, eax
je 0x572305
mov byte [ebx + 0x1e], 1
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x94
ret
mov dword [ebp + 0x200], 0
add dword [ebx + 0x28], 1
or dword [ebx + 0xc], 0x200
cmp dword [edi + 0x1c], 0
jne 0x571f9a
mov edx, dword [esp + 0x18]
cmp dword [edx], edx
mov ebp, dword [ebp + 0x1ec]
jne 0x57233a
lea eax, [esp + 0x24]
mov dword [esp + 0x18], eax
mov ecx, dword [esp + 0x18]
mov edx, dword [ecx]
sub edx, ebp
mov ecx, ebp
call fcn.005452a0
add eax, 0xd
mov dword [edi + 0x30], eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x94
ret