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

Disassembly:
sub esp, 0x18
push ebx
push ebp
push esi
mov esi, ecx
mov eax, edx
push edi
mov dword [esp + 0x14], eax
mov ebx, str.sqlite_temp_master
mov edi, dword [esi]
mov dword [esp + 0x24], edi
cmp byte [edi + 0xa5], 0
je 0x43438f
cmp dword [edi + 0xa0], 1
jne 0x43438f
movzx ebp, byte [edi + 0xa4]
mov edx, str.sqlite_master
cmp ebp, 1
mov ecx, edi
cmove edx, ebx
call fcn.00404b16
mov ebx, eax
jmp 0x434402
mov ebx, dword [esp + 0x2c]
lea ecx, [esp + 0x1c]
push ecx
push ebx
mov ecx, esi
call fcn.004341b4
mov ebp, eax
pop ecx
pop ecx
test ebp, ebp
js 0x4343ca
cmp dword [esp + 0x30], 0
je 0x4343d5
cmp dword [ebx + 4], 0
jbe 0x4343d2
cmp ebp, 1
je 0x4343d2
push str.temporary_table_name_must_be_unqualified
push esi
lfence
call fcn.00406e5f
pop ecx
pop ecx
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x18
ret
xor ebp, ebp
inc ebp
mov eax, dword [esp + 0x1c]
mov ecx, edi
mov edx, eax
mov dword [esp + 0x14], eax
call fcn.00434119
cmp byte [esi + 0xc0], 2
mov ebx, eax
jb 0x434402
lfence
push dword [esp + 0x14]
mov edx, ebx
mov ecx, esi
call fcn.00430ab5
pop ecx
mov ecx, dword [esp + 0x14]
mov eax, dword [ecx]
mov ecx, dword [ecx + 4]
mov dword [esi + 0xac], eax
mov dword [esi + 0xb0], ecx
test ebx, ebx
je 0x4343ca
cmp dword [esp + 0x34], 0
mov ecx, str.table
mov eax, str.view
mov edx, ebx
cmove eax, ecx
mov ecx, esi
push ebx
push eax
call fcn.00434232
pop ecx
pop ecx
test eax, eax
jne 0x434505
mov eax, dword [edi + 0x10]
xor edx, edx
inc edx
mov ecx, ebp
cmp byte [edi + 0xa4], dl
cmovne edx, dword [esp + 0x30]
shl ecx, 4
cmp edx, 1
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x20], edx
mov eax, dword [ecx + eax]
mov ecx, str.sqlite_temp_master
push eax
mov dword [esp + 0x1c], eax
mov eax, str.sqlite_master
push 0
cmove eax, ecx
mov ecx, esi
push eax
push 0x12
pop edx
call fcn.004337d2
add esp, 0xc
test eax, eax
jne 0x434505
cmp dword [esp + 0x38], eax
jne 0x4344b6
push dword [esp + 0x18]
mov ecx, dword [esp + 0x38]
push eax
mov eax, dword [esp + 0x28]
push ebx
movzx edx, byte [eax + ecx*2 + 0x481b98]
mov ecx, esi
call fcn.004337d2
add esp, 0xc
test eax, eax
jne 0x434505
cmp byte [esi + 0xc0], 0
jne 0x434538
mov eax, dword [edi + 0x10]
mov ecx, dword [esp + 0x1c]
mov eax, dword [ecx + eax]
mov ecx, esi
mov dword [esp + 0x18], eax
call fcn.0044392f
test eax, eax
jne 0x434505
push dword [esp + 0x18]
mov edx, ebx
mov ecx, edi
call fcn.00433af2
pop ecx
test eax, eax
je 0x434515
cmp dword [esp + 0x3c], 0
jne 0x4344fc
push dword [esp + 0x14]
push str.table__T_already_exists
jmp 0x43452d
mov edx, ebp
mov ecx, esi
call fcn.00438120
mov ecx, edi
mov edx, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x18
jmp fcn.004047d8
push dword [esp + 0x18]
mov edx, ebx
mov ecx, edi
call fcn.00433cfc
pop ecx
test eax, eax
je 0x434538
push ebx
push str.there_is_already_an_index_named__s
push esi
call fcn.00406e5f
add esp, 0xc
jmp 0x434505
push 0
push 0x50
mov ecx, edi
call fcn.0040495f
pop ecx
pop ecx
mov ecx, eax
test ecx, ecx
jne 0x434557
inc dword [esi + 0x24]
mov dword [esi + 0xc], 7
jmp 0x434505
mov edx, dword [esp + 0x1c]
or eax, 0xffffffff
mov word [ecx + 0x28], ax
mov dword [ecx], ebx
mov eax, dword [edi + 0x10]
mov eax, dword [eax + edx + 0xc]
mov dword [ecx + 0x48], eax
mov eax, 0xc8
mov dword [ecx + 0x20], 1
mov word [ecx + 0x2c], ax
cmp byte [esi + 0x12], 0
mov dword [esi + 0xdc], ecx
jne 0x4345aa
xor edx, edx
movzx eax, byte [ebx + edx]
mov edi, str.sqlite_sequence
cmp al, byte [edi + edx]
mov edi, dword [esp + 0x24]
jne 0x4345aa
inc edx
cmp edx, 0x10
jne 0x43458c
mov eax, dword [ecx + 0x48]
mov dword [eax + 0x48], ecx
cmp byte [edi + 0xa5], 0
jne 0x4343ca
mov ecx, esi
call fcn.00445df8
mov ebx, eax
test ebx, ebx
je 0x4343ca
xor edx, edx
mov ecx, esi
push ebp
inc edx
call fcn.004381a2
cmp dword [esp + 0x3c], 0
pop ecx
je 0x4345ef
xor eax, eax
mov edx, 0xa0
push eax
push eax
push eax
mov ecx, ebx
call fcn.0041c3a0
add esp, 0xc
mov eax, dword [esi + 0x2c]
mov ecx, ebx
inc eax
mov dword [esp + 0x1c], eax
mov dword [esi + 0x58], eax
inc eax
push 2
mov dword [esi + 0x5c], eax
inc eax
push eax
push ebp
push 0x5e
pop edx
mov dword [esp + 0x24], eax
mov dword [esi + 0x2c], eax
call fcn.0041c3a0
mov eax, dword [ebx + 0x9c]
add esp, 0xc
bts eax, ebp
mov ecx, ebx
mov dword [ebx + 0x9c], eax
push 0
push 0
push dword [esp + 0x20]
push 0x12
pop edx
call fcn.0041c3a0
mov ecx, dword [edi + 0x20]
add esp, 0xc
and ecx, 2
mov dword [esp + 0x24], eax
or ecx, 0
je 0x43464f
xor eax, eax
inc eax
jmp 0x434652
push 4
pop eax
push eax
push 2
push ebp
push 0x5f
pop edx
mov ecx, ebx
call fcn.0041c3a0
movzx eax, byte [edi + 0x4e]
add esp, 0xc
mov ecx, ebx
push eax
push 5
push ebp
push 0x5f
pop edx
call fcn.0041c3a0
mov edx, dword [esp + 0x30]
add esp, 0xc
mov ecx, ebx
call fcn.0041cb08
cmp dword [esp + 0x34], 0
mov ecx, dword [ebx + 0x6c]
mov dword [eax + 8], ecx
jne 0x4346b3
cmp dword [esp + 0x38], 0
jne 0x4346b3
mov edi, dword [esp + 0x1c]
mov edx, 0x8b
push 1
mov ecx, ebx
lea eax, [edi + 1]
push eax
push ebp
call fcn.0041c3a0
mov dword [esi + 0x78], eax
jmp 0x4346c9
mov edi, dword [esp + 0x1c]
mov ecx, ebx
push 0
lea eax, [edi + 1]
push eax
push 0
push 0x46
pop edx
call fcn.0041c3a0
add esp, 0xc
mov ecx, esi
call fcn.00445df8
push 5
push ebp
xor ebp, ebp
mov ecx, eax
inc ebp
push ebp
push 0
push 0x62
pop edx
call fcn.0041c609
add esp, 0x10
cmp dword [esi + 0x28], 0
jne 0x4346f2
mov dword [esi + 0x28], ebp
xor esi, esi
mov ecx, ebx
push esi
push edi
push esi
push 0x79
pop edx
call fcn.0041c3a0
mov ebp, dword [esp + 0x24]
add esp, 0xc
mov ecx, ebx
push esi
push ebp
push 6
push 0x4b
pop edx
call fcn.0041c3a0
add esp, 0xc
mov edx, eax
mov ecx, ebx
push 0xffffffffffffffff
push 0x484be8
call fcn.0041ca4d
push edi
push ebp
push esi
push 0x7a
pop edx
mov ecx, ebx
call fcn.0041c3a0
add esp, 0x14
mov ecx, ebx
push 8
pop edx
call fcn.0041c871
push esi
push esi
push esi
push 0x75
pop edx
call fcn.0041c3a0
add esp, 0xc
jmp 0x4343ca