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

Disassembly:
push ebp
mov ebp, esp
push edi
xor edi, edi
push esi
push ebx
sub esp, 0x18c
mov dword [ebp - 0xdc], eax
mov eax, dword [ebp + 8]
mov dword [ebp - 0x110], edx
mov dword [ebp - 0xec], eax
mov eax, dword [ebp + 0xc]
mov dword [ebp - 0xe8], ecx
mov dword [ebp - 0x120], eax
mov eax, dword [ebp + 0x10]
mov dword [ebp - 0xd8], edi
mov dword [ebp - 0x12c], eax
mov eax, dword [ebp - 0xdc]
mov dword [ebp - 0xd4], edi
mov eax, dword [eax]
mov dword [ebp - 0xfc], eax
mov eax, dword [ebp - 0xdc]
cmp dword [eax + 0x24], 0
jne 0x10126c0c
xor esi, esi
mov dword [ebp - 0xb8], esi
mov dword [ebp - 0x104], esi
test ecx, ecx
je 0x10124cf9
test byte [ecx + 5], 2
je 0x10124cf9
cmp dword [ecx + 0x34], 0
jne 0x10124cf9
mov eax, dword [ecx + 0x1c]
xor ebx, ebx
mov dword [ebp - 0x104], eax
mov eax, ecx
xor ecx, ecx
mov dword [eax + 0x1c], ecx
mov dword [esp + 4], eax
mov eax, dword [ebp - 0xfc]
mov dword [esp], eax
call sym._sqlite3SelectDelete
mov dword [ebp - 0xe8], ebx
mov edx, dword [ebp - 0x110]
mov eax, dword [ebp - 0xdc]
call sym._sqlite3SrcListLookup
mov esi, eax
test eax, eax
je 0x10126c02
mov edx, dword [eax + 0x3c]
mov eax, dword [ebp - 0xfc]
call sym._sqlite3SchemaToIndex
mov edi, dword [ebp - 0xfc]
mov edx, 0x12
mov dword [ebp - 0x108], eax
shl eax, 4
add eax, dword [edi + 0x10]
mov eax, dword [eax]
mov dword [esp + 4], eax
xor eax, eax
mov dword [esp], eax
mov ecx, dword [esi]
mov eax, dword [ebp - 0xdc]
call sym._sqlite3AuthCheck
xor edx, edx
mov dword [ebp - 0xf8], edx
test eax, eax
jne 0x10126c1a
mov eax, dword [esi + 0x1c]
mov edx, esi
mov ecx, 0x7f
mov dword [ebp - 0x138], eax
lea eax, [ebp - 0xd0]
mov dword [esp + 4], eax
xor eax, eax
mov dword [esp], eax
mov eax, dword [ebp - 0xdc]
call sym._sqlite3TriggersExist
mov edx, esi
mov dword [ebp - 0x124], eax
mov al, byte [esi + 0x2b]
mov byte [ebp - 0x13d], al
mov eax, dword [ebp - 0xdc]
call sym._sqlite3ViewGetColumnNames
test eax, eax
jne 0x10126c02
mov eax, dword [ebp - 0xd0]
mov edx, esi
mov dword [ebp - 0x154], eax
mov ecx, eax
mov eax, dword [ebp - 0xdc]
call sym._sqlite3IsReadOnly
test eax, eax
jne 0x10126c02
mov eax, dword [ebp - 0xdc]
call sym._sqlite3GetVdbe
mov dword [ebp - 0xe0], eax
test eax, eax
je 0x10126c02
mov eax, dword [ebp - 0xdc]
cmp byte [eax + 0x12], 0
jne 0x10124e04
mov eax, dword [ebp - 0xe0]
or byte [eax + 0x98], 0x10
mov eax, dword [ebp - 0xe8]
xor edx, edx
mov ecx, dword [ebp - 0x108]
or eax, dword [ebp - 0x124]
mov eax, dword [ebp - 0xdc]
setne dl
call sym._sqlite3BeginWriteOperation
mov eax, dword [ebp - 0x124]
or eax, dword [ebp - 0xec]
jne 0x101258cc
cmp dword [ebp - 0xe8], 0
je 0x101258cc
mov eax, dword [ebp - 0xdc]
mov eax, dword [eax]
mov dword [ebp - 0xf8], eax
mov eax, dword [ebp - 0xdc]
cmp dword [eax + 0x108], 0
jne 0x101258cc
mov eax, dword [ebp - 0xe8]
cmp dword [eax + 0x40], 0
jne 0x101258cc
cmp byte [esi + 0x2b], 1
je 0x101258cc
mov eax, dword [ebp - 0x120]
mov dword [ebp - 0x10c], eax
cmp eax, 0xb
jne 0x10124ebb
mov dword [ebp - 0x10c], 2
cmp word [esi + 0x20], 0
js 0x10124ebb
movzx eax, byte [esi + 0x2a]
mov dword [ebp - 0x10c], eax
cmp eax, 0xb
jne 0x10124ebb
mov dword [ebp - 0x10c], 2
mov eax, dword [ebp - 0xe8]
mov ecx, dword [eax + 0x20]
cmp dword [ecx], 1
jne 0x101258cc
cmp dword [ecx + 0x1c], 0
jne 0x101258cc
cmp dword [eax + 0x24], 0
jne 0x101258cc
cmp dword [eax + 0x30], 0
jne 0x101258cc
cmp dword [eax + 0x28], 0
jne 0x101258cc
cmp dword [eax + 0x3c], 0
jne 0x101258cc
cmp dword [eax + 0x34], 0
jne 0x101258cc
test byte [eax + 4], 1
jne 0x101258cc
mov eax, dword [eax + 0x1c]
cmp dword [eax], 1
jne 0x101258cc
mov eax, dword [eax + 8]
cmp byte [eax], 0xb4
jne 0x101258cc
mov eax, dword [ebp - 0xdc]
add ecx, 8
xor edx, edx
call sym._sqlite3LocateTableItem
mov edi, eax
test eax, eax
je 0x101258cc
mov eax, dword [esi + 0x14]
cmp dword [edi + 0x14], eax
jne 0x10124f59
mov eax, dword [esi + 0x3c]
cmp dword [edi + 0x3c], eax
je 0x101258cc
mov ebx, dword [esi + 0x1c]
mov ecx, dword [edi + 0x1c]
mov edx, ebx
mov eax, ecx
shr edx, 7
shr eax, 7
xor edx, 1
xor eax, 1
and edx, 1
and eax, 1
cmp dl, al
jne 0x101258cc
cmp byte [edi + 0x2b], 0
jne 0x101258cc
mov ax, word [edi + 0x22]
cmp word [esi + 0x22], ax
jne 0x101258cc
mov eax, dword [edi + 0x20]
cmp word [esi + 0x20], ax
jne 0x101258cc
bt ebx, 0x10
jae 0x10124fb2
bt ecx, 0x10
jae 0x101258cc
xor eax, eax
mov dword [ebp - 0xf0], eax
movsx eax, word [esi + 0x22]
cmp dword [ebp - 0xf0], eax
jge 0x10125112
mov ebx, dword [ebp - 0xf0]
mov eax, dword [esi + 4]
shl ebx, 4
add eax, ebx
add ebx, dword [edi + 4]
mov dword [ebp - 0xe4], eax
mov dx, word [ebx + 0xe]
mov ax, word [eax + 0xe]
xor edx, eax
and dl, 0x60
jne 0x101258cc
test al, 0x60
jne 0x1012500b
mov ecx, dword [ebp - 0xe4]
mov al, byte [ebx + 8]
cmp byte [ecx + 8], al
je 0x1012504c
jmp 0x101258cc
mov eax, dword [ebp - 0xe4]
mov dx, word [eax + 0xc]
mov eax, esi
call sym._sqlite3ColumnExpr.isra.0
mov dx, word [ebx + 0xc]
mov dword [ebp - 0xf4], eax
mov eax, edi
call sym._sqlite3ColumnExpr.isra.0
mov dword [esp], 0xffffffff
mov ecx, dword [ebp - 0xf4]
mov edx, eax
xor eax, eax
call sym._sqlite3ExprCompare
test eax, eax
je 0x10124ff8
jmp 0x101258cc
mov eax, ebx
call sym._sqlite3ColumnColl
mov dword [ebp - 0xf4], eax
mov eax, dword [ebp - 0xe4]
call sym._sqlite3ColumnColl
mov edx, dword [ebp - 0xf4]
mov dword [esp], eax
mov dword [esp + 4], edx
call sym._sqlite3_stricmp
test eax, eax
jne 0x101258cc
mov eax, dword [ebp - 0xe4]
test byte [eax + 4], 0xf
je 0x10125094
test byte [ebx + 4], 0xf
je 0x101258cc
mov eax, dword [ebp - 0xe4]
test byte [eax + 0xe], 0x60
jne 0x10125107
cmp dword [ebp - 0xf0], 0
je 0x10125107
mov dx, word [eax + 0xc]
mov eax, esi
call sym._sqlite3ColumnExpr.isra.0
mov dx, word [ebx + 0xc]
mov dword [ebp - 0xe4], eax
mov eax, edi
call sym._sqlite3ColumnExpr.isra.0
cmp dword [ebp - 0xe4], 0
sete dl
test eax, eax
mov ecx, eax
sete al
cmp dl, al
jne 0x101258cc
cmp dword [ebp - 0xe4], 0
je 0x10125107
mov eax, dword [ecx + 8]
mov dword [esp + 4], eax
mov eax, dword [ebp - 0xe4]
mov eax, dword [eax + 8]
mov dword [esp], eax
call sym._strcmp
test eax, eax
jne 0x101258cc
inc dword [ebp - 0xf0]
jmp 0x10124fba
xor eax, eax
mov ebx, dword [esi + 8]
mov dword [ebp - 0x114], eax
test ebx, ebx
je 0x10125186
cmp byte [ebx + 0x36], 0
mov eax, 1
cmove eax, dword [ebp - 0x114]
mov edx, dword [edi + 8]
mov dword [ebp - 0x114], eax
test edx, edx
je 0x101258cc
mov eax, ebx
mov dword [ebp - 0xe4], edx
call sym._xferCompatibleIndex
mov edx, dword [ebp - 0xe4]
test eax, eax
jne 0x1012515e
mov edx, dword [edx + 0x14]
jmp 0x1012513a
mov eax, dword [ebx + 0x2c]
cmp dword [edx + 0x2c], eax
je 0x1012516b
mov ebx, dword [ebx + 0x14]
jmp 0x1012511d
mov eax, dword [esi + 0x3c]
cmp dword [edi + 0x3c], eax
jne 0x10125166
mov eax, 0x19b
call sym._sqlite3FaultSim
test eax, eax
jne 0x10125166
jmp 0x101258cc
mov edx, dword [esi + 0x10]
test edx, edx
jne 0x101251b8
mov eax, dword [ebp - 0xf8]
mov eax, dword [eax + 0x20]
mov dword [ebp - 0xe4], eax
mov edx, dword [ebp - 0xe4]
mov eax, dword [ebp - 0xf8]
and edx, 0x4000
or edx, 0
mov eax, dword [eax + 0x24]
jne 0x101251cc
jmp 0x101251d6
mov eax, dword [edi + 0x10]
or ecx, 0xffffffff
call sym._sqlite3ExprListCompare
test eax, eax
je 0x1012518d
jmp 0x101258cc
cmp dword [esi + 0x30], 0
jne 0x101258cc
and eax, 1
jne 0x101258cc
mov edx, dword [edi + 0x3c]
mov eax, dword [ebp - 0xf8]
call sym._sqlite3SchemaToIndex
mov dword [ebp - 0x11c], eax
mov eax, dword [ebp - 0xdc]
call sym._sqlite3GetVdbe
mov edx, dword [ebp - 0x11c]
mov dword [ebp - 0xe4], eax
mov eax, dword [ebp - 0xdc]
call sym._sqlite3CodeVerifySchema
mov eax, dword [ebp - 0xdc]
mov ebx, dword [ebp - 0xdc]
mov ecx, esi
mov edx, dword [ebp - 0x108]
mov eax, dword [eax + 0x28]
mov dword [ebp - 0xf0], eax
inc eax
mov dword [ebp - 0xf4], eax
mov eax, dword [ebp - 0xf0]
add eax, 2
mov dword [ebx + 0x28], eax
mov eax, ebx
call sym._autoIncBegin
mov dword [ebp - 0x130], eax
mov eax, dword [ebp - 0xdc]
call sym._sqlite3GetTempReg
xor ecx, ecx
mov edx, 0x4b
mov dword [ebp - 0x118], eax
mov dword [esp], eax
mov eax, dword [ebp - 0xe4]
call sym._sqlite3VdbeAddOp2
mov eax, dword [ebp - 0xdc]
call sym._sqlite3GetTempReg
mov dword [ebp - 0x100], eax
mov dword [esp + 4], 0x71
mov dword [esp], esi
mov eax, dword [ebp - 0xdc]
mov ecx, dword [ebp - 0x108]
mov edx, dword [ebp - 0xf4]
call sym._sqlite3OpenTable
mov eax, dword [ebp - 0xf8]
test byte [eax + 0x18], 4
jne 0x1012531b
cmp word [esi + 0x20], 0
jns 0x101252c4
cmp dword [esi + 8], 0
jne 0x101252d9
cmp dword [ebp - 0x114], 0
jne 0x101252d9
mov eax, dword [ebp - 0x10c]
dec eax
cmp eax, 1
jbe 0x10125323
xor ecx, ecx
mov edx, 0x23
mov dword [esp], ecx
mov ecx, dword [ebp - 0xf4]
mov eax, dword [ebp - 0xe4]
call sym._sqlite3VdbeAddOp2
mov edx, 8
mov ebx, eax
mov eax, dword [ebp - 0xe4]
call sym._sqlite3VdbeAddOp0
mov edx, ebx
mov dword [ebp - 0x114], eax
mov eax, dword [ebp - 0xe4]
call sym._sqlite3VdbeJumpHere
jmp 0x10125323
xor edx, edx
mov dword [ebp - 0x114], edx
test byte [edi + 0x1c], 0x80
jne 0x10125575
mov dword [esp + 4], 0x70
mov dword [esp], edi
mov ecx, dword [ebp - 0x11c]
mov edx, dword [ebp - 0xf0]
mov eax, dword [ebp - 0xdc]
call sym._sqlite3OpenTable
xor eax, eax
mov edx, 0x23
mov dword [esp], eax
mov ecx, dword [ebp - 0xf0]
mov eax, dword [ebp - 0xe4]
call sym._sqlite3VdbeAddOp2
cmp word [esi + 0x20], 0
mov dword [ebp - 0x128], eax
js 0x10125424
mov eax, dword [ebp - 0x100]
mov edx, 0x87
mov dword [esp], eax
mov ecx, dword [ebp - 0xf0]
mov eax, dword [ebp - 0xe4]
call sym._sqlite3VdbeAddOp2
mov ebx, eax
mov eax, dword [ebp - 0xf8]
test byte [eax + 0x18], 4
jne 0x101253f7
mov eax, dword [ebp - 0x100]
mov edx, 0x1e
mov dword [esp + 4], eax
xor eax, eax
mov dword [esp], eax
mov ecx, dword [ebp - 0xf4]
mov eax, dword [ebp - 0xe4]
call sym._sqlite3VdbeAddOp3
mov edx, dword [ebp - 0x10c]
mov ecx, esi
mov dword [ebp - 0x134], eax
mov eax, dword [ebp - 0xdc]
call sym._sqlite3RowidConstraint
mov edx, dword [ebp - 0x134]
mov eax, dword [ebp - 0xe4]
call sym._sqlite3VdbeJumpHere
cmp dword [ebp - 0x130], 0
jle 0x1012546d
mov eax, dword [ebp - 0xdc]
mov ecx, dword [ebp - 0x100]
mov edx, 0x9f
mov eax, dword [eax + 8]
mov dword [esp], ecx
mov ecx, dword [ebp - 0x130]
call sym._sqlite3VdbeAddOp2
jmp 0x1012546d
cmp dword [esi + 8], 0
jne 0x1012544c
mov eax, dword [ebp - 0xf8]
test byte [eax + 0x18], 8
jne 0x1012544c
mov eax, dword [ebp - 0x100]
mov edx, 0x7f
mov dword [esp], eax
mov ecx, dword [ebp - 0xf4]
jmp 0x10125460
mov eax, dword [ebp - 0x100]
mov edx, 0x87
mov dword [esp], eax
mov ecx, dword [ebp - 0xf0]
mov eax, dword [ebp - 0xe4]
call sym._sqlite3VdbeAddOp2
mov ebx, eax
mov eax, dword [ebp - 0xf8]
mov byte [ebp - 0x10c], 0xa9
test byte [eax + 0x18], 4
je 0x1012549d
mov ecx, dword [ebp - 0xf4]
mov eax, dword [ebp - 0xe4]
mov edx, 0x89
call sym._sqlite3VdbeAddOp1
mov byte [ebp - 0x10c], 0x98
mov eax, dword [ebp - 0x100]
mov edx, 0x81
mov dword [esp + 4], eax
mov eax, dword [ebp - 0xf0]
mov dword [esp], eax
mov ecx, dword [ebp - 0xf4]
mov eax, dword [ebp - 0xe4]
call sym._sqlite3VdbeAddOp3
mov eax, dword [ebp - 0x100]
mov edx, pe_nt_image_headers32
mov dword [esp + 4], eax
mov eax, dword [ebp - 0x118]
mov dword [esp], eax
mov ecx, dword [ebp - 0xf4]
mov eax, dword [ebp - 0xe4]
call sym._sqlite3VdbeAddOp3
mov eax, dword [ebp - 0xf8]
test byte [eax + 0x18], 4
jne 0x10125512
mov dword [esp], 0xfffffffb
mov eax, dword [ebp - 0xe4]
mov ecx, esi
or edx, 0xffffffff
call sym._sqlite3VdbeChangeP4
movzx edx, byte [ebp - 0x10c]
mov eax, dword [ebp - 0xe4]
call sym._sqlite3VdbeChangeP5
mov dword [esp], ebx
mov ecx, dword [ebp - 0xf0]
mov edx, 0x26
mov eax, dword [ebp - 0xe4]
call sym._sqlite3VdbeAddOp2
xor eax, eax
mov edx, 0x7a
mov dword [esp], eax
mov ecx, dword [ebp - 0xf0]
mov eax, dword [ebp - 0xe4]
call sym._sqlite3VdbeAddOp2
xor eax, eax
mov edx, 0x7a
mov dword [esp], eax
mov ecx, dword [ebp - 0xf4]
mov eax, dword [ebp - 0xe4]
call sym._sqlite3VdbeAddOp2
jmp 0x101255bd
mov eax, dword [esi]
mov ecx, dword [esi + 0x14]
mov dword [esp], 1
xor ebx, ebx
mov dword [esp + 4], eax
mov edx, dword [ebp - 0x108]
mov eax, dword [ebp - 0xdc]
call sym._sqlite3TableLock
mov eax, dword [edi]
mov ecx, dword [edi + 0x14]
mov dword [esp], ebx
mov dword [esp + 4], eax
mov eax, dword [ebp - 0xdc]
mov edx, dword [ebp - 0x11c]
call sym._sqlite3TableLock
xor eax, eax
mov dword [ebp - 0x128], eax
mov eax, dword [esi + 8]
mov dword [ebp - 0x10c], eax
cmp dword [ebp - 0x10c], 0
je 0x1012580c
mov ebx, dword [edi + 8]
test ebx, ebx
je 0x10126ca7
mov eax, dword [ebp - 0x10c]
mov edx, ebx
call sym._xferCompatibleIndex
test eax, eax
jne 0x101255f4
mov ebx, dword [ebx + 0x14]
jmp 0x101255d6
mov eax, dword [ebp - 0x11c]
mov edx, 0x70
mov dword [esp + 4], eax
mov eax, dword [ebx + 0x2c]
mov dword [esp], eax
mov ecx, dword [ebp - 0xf0]
mov eax, dword [ebp - 0xe4]
call sym._sqlite3VdbeAddOp3
mov eax, dword [ebp - 0xdc]
mov edx, ebx
call sym._sqlite3VdbeSetP4KeyInfo
mov eax, dword [ebp - 0x108]
mov edx, 0x71
mov dword [esp + 4], eax
mov eax, dword [ebp - 0x10c]
mov eax, dword [eax + 0x2c]
mov dword [esp], eax
mov ecx, dword [ebp - 0xf4]
mov eax, dword [ebp - 0xe4]
call sym._sqlite3VdbeAddOp3
mov edx, dword [ebp - 0x10c]
mov eax, dword [ebp - 0xdc]
call sym._sqlite3VdbeSetP4KeyInfo
mov eax, dword [ebp - 0xe4]
mov edx, 1
call sym._sqlite3VdbeChangeP5
xor edx, edx
mov dword [esp], edx
mov ecx, dword [ebp - 0xf0]
mov edx, 0x23
mov eax, dword [ebp - 0xe4]
call sym._sqlite3VdbeAddOp2
mov dword [ebp - 0x130], eax
mov eax, dword [ebp - 0xf8]
test byte [eax + 0x18], 4
je 0x1012571d
movzx ecx, word [ebx + 0x34]
xor edx, edx
cmp edx, ecx
jge 0x101256e0
mov eax, dword [ebx + 0x20]
mov dword [ebp - 0x13c], ecx
mov dword [ebp - 0x134], edx
mov eax, dword [eax + edx*4]
mov dword [esp], str.BINARY
mov dword [esp + 4], eax
call sym._sqlite3_stricmp
test eax, eax
jne 0x1012573e
mov edx, dword [ebp - 0x134]
mov ecx, dword [ebp - 0x13c]
inc edx
jmp 0x101256a7
mov bl, 0
jne 0x10125740
mov ecx, dword [ebp - 0xf4]
mov eax, dword [ebp - 0xe4]
mov edx, 0x89
mov bl, 0x90
call sym._sqlite3VdbeAddOp1
mov eax, dword [ebp - 0xf0]
mov edx, 0x81
mov dword [esp], eax
mov ecx, dword [ebp - 0xf4]
mov eax, dword [ebp - 0xe4]
call sym._sqlite3VdbeAddOp2
jmp 0x10125767
xor ebx, ebx
test byte [edi + 0x1c], 0x80
je 0x10125740
mov eax, dword [ebp - 0x10c]
mov al, byte [eax + 0x38]
mov byte [ebp - 0x134], al
and eax, 3
cmp al, 2
sete bl
jmp 0x10125740
xor ebx, ebx
mov dword [esp + 4], 1
mov eax, dword [ebp - 0x118]
mov edx, 0x86
mov dword [esp], eax
mov ecx, dword [ebp - 0xf0]
mov eax, dword [ebp - 0xe4]
call sym._sqlite3VdbeAddOp3
mov eax, dword [ebp - 0x118]
mov edx, 0x8a
or ebx, 8
mov dword [esp], eax
mov ecx, dword [ebp - 0xf4]
mov eax, dword [ebp - 0xe4]
call sym._sqlite3VdbeAddOp2
mov eax, dword [ebp - 0xe4]
movzx edx, bl
call sym._sqlite3VdbeChangeP5
mov eax, dword [ebp - 0x130]
mov edx, 0x26
inc eax
mov dword [esp], eax
mov ecx, dword [ebp - 0xf0]
mov eax, dword [ebp - 0xe4]
call sym._sqlite3VdbeAddOp2
mov edx, dword [ebp - 0x130]
mov eax, dword [ebp - 0xe4]
call sym._sqlite3VdbeJumpHere
xor eax, eax
mov edx, 0x7a
mov dword [esp], eax
mov ecx, dword [ebp - 0xf0]
mov eax, dword [ebp - 0xe4]
call sym._sqlite3VdbeAddOp2
xor eax, eax
mov edx, 0x7a
mov dword [esp], eax
mov ecx, dword [ebp - 0xf4]
mov eax, dword [ebp - 0xe4]
call sym._sqlite3VdbeAddOp2
mov eax, dword [ebp - 0x10c]
mov eax, dword [eax + 0x14]
jmp 0x101255c0
cmp dword [ebp - 0x128], 0
je 0x10125826
mov edx, dword [ebp - 0x128]
mov eax, dword [ebp - 0xe4]
call sym._sqlite3VdbeJumpHere
mov edx, dword [ebp - 0x100]
mov eax, dword [ebp - 0xdc]
call sym._sqlite3ReleaseTempReg
mov eax, dword [ebp - 0xdc]
mov edx, dword [ebp - 0x118]
call sym._sqlite3ReleaseTempReg
cmp dword [ebp - 0x114], 0
mov eax, dword [ebp - 0xdc]
je 0x101258a1
call sym._sqlite3AutoincrementEnd
xor eax, eax
xor ecx, ecx
mov edx, 0x46
mov dword [esp], eax
mov eax, dword [ebp - 0xe4]
call sym._sqlite3VdbeAddOp2
mov edx, dword [ebp - 0x114]
mov eax, dword [ebp - 0xe4]
call sym._sqlite3VdbeJumpHere
xor eax, eax
mov edx, 0x7a
mov dword [esp], eax
mov ecx, dword [ebp - 0xf4]
mov eax, dword [ebp - 0xe4]
call sym._sqlite3VdbeAddOp2
jmp 0x101258cc
cmp byte [eax + 0x12], 0
jne 0x10126c02
mov eax, dword [eax + 0x78]
mov dword [ebp - 0xf8], eax
test eax, eax
jne 0x10126c02
mov eax, dword [ebp - 0xdc]
call sym._sqlite3AutoincrementEnd
jmp 0x10126c1a
mov edx, dword [ebp - 0x108]
mov eax, dword [ebp - 0xdc]
mov ecx, esi
call sym._autoIncBegin
mov edi, dword [ebp - 0xdc]
mov dword [ebp - 0x130], eax
mov eax, dword [ebp - 0xdc]
mov edx, dword [eax + 0x2c]
lea eax, [edx + 1]
mov dword [ebp - 0x134], eax
movsx eax, word [esi + 0x22]
mov dword [ebp - 0xf8], eax
lea eax, [edx + eax + 1]
mov dword [edi + 0x2c], eax
lea edi, [edx + 1]
cmp byte [esi + 0x2b], 1
mov dword [ebp - 0xf4], edi
jne 0x10125930
lea edi, [edx + 2]
inc eax
mov dword [ebp - 0xf4], edi
mov edi, dword [ebp - 0xdc]
mov dword [edi + 0x2c], eax
mov eax, dword [ebp - 0x138]
and eax, 0x80
test dword [esi + 0x1c], 0x440
sete byte [ebp - 0xf0]
cmp dword [ebp - 0xec], 0
mov dword [ebp - 0x150], eax
je 0x10125ab2
mov eax, dword [ebp - 0xec]
mov byte [eax + 4], 1
mov eax, dword [eax]
mov dword [ebp - 0x100], eax
xor eax, eax
cmp dword [ebp - 0x100], eax
jle 0x10125989
mov edi, dword [ebp - 0xec]
mov dword [edi + eax*8 + 0xc], 0xffffffff
inc eax
jmp 0x10125970
mov dword [ebp - 0xe4], 0xffffffff
xor ebx, ebx
cmp dword [ebp - 0x100], ebx
jle 0x10125abc
xor edi, edi
cmp dword [ebp - 0xf8], edi
jle 0x10125a4b
mov ecx, edi
shl ecx, 4
add ecx, dword [esi + 4]
mov eax, dword [ecx]
mov dword [ebp - 0x114], ecx
mov dword [ebp - 0x10c], eax
mov eax, dword [ebp - 0xec]
mov edx, dword [ebp - 0x10c]
mov eax, dword [eax + ebx*8 + 8]
call sym._sqlite3StrICmp
mov ecx, dword [ebp - 0x114]
test eax, eax
jne 0x10125a45
mov eax, dword [ebp - 0xec]
mov dl, byte [ebp - 0xf0]
mov dword [eax + ebx*8 + 0xc], edi
xor eax, eax
cmp ebx, edi
cmovne edx, eax
movsx eax, word [esi + 0x20]
cmp eax, edi
mov eax, dword [ebp - 0xe4]
mov byte [ebp - 0xf0], dl
cmove eax, ebx
mov dword [ebp - 0xe4], eax
test byte [ecx + 0xe], 0x60
je 0x10125aac
mov eax, dword [ebp - 0x10c]
mov dword [esp + 4], str.cannot_INSERT_into_generated_column___s_
mov dword [esp + 8], eax
mov eax, dword [ebp - 0xdc]
mov dword [esp], eax
call sym._sqlite3ErrorMsg
jmp 0x10126c02
inc edi
jmp 0x101259a3
mov eax, dword [ebp - 0xec]
mov edi, dword [eax + ebx*8 + 8]
mov eax, edi
call sym._sqlite3IsRowid
test eax, eax
je 0x10125a69
cmp dword [ebp - 0x150], 0
je 0x10125a9f
mov dword [esp + 0xc], edi
mov eax, dword [ebp - 0x110]
mov dword [esp + 4], str.table__S_has_no_column_named__s
add eax, 8
mov dword [esp + 8], eax
mov eax, dword [ebp - 0xdc]
mov dword [esp], eax
call sym._sqlite3ErrorMsg
mov eax, dword [ebp - 0xdc]
mov byte [eax + 0x11], 1
jmp 0x10126c02
mov dword [ebp - 0xe4], ebx
mov byte [ebp - 0xf0], 0
inc ebx
jmp 0x10125995
mov dword [ebp - 0xe4], 0xffffffff
mov eax, dword [ebp - 0xf4]
inc eax
cmp dword [ebp - 0xe8], 0
mov dword [ebp - 0x128], eax
je 0x10125d76
mov eax, dword [ebp - 0xdc]
xor ecx, ecx
mov edx, 0xa
mov eax, dword [eax + 0x2c]
mov dword [ebp - 0xf8], eax
lea ebx, [eax + 1]
mov eax, dword [ebp - 0xdc]
mov dword [eax + 0x2c], ebx
mov eax, dword [ebp - 0xe0]
mov edi, dword [eax + 0x6c]
mov dword [esp], ecx
mov ecx, ebx
lea eax, [edi + 1]
mov dword [esp + 4], eax
mov eax, dword [ebp - 0xe0]
call sym._sqlite3VdbeAddOp3
xor eax, eax
mov edx, dword [ebp - 0xe8]
lea ecx, [ebp - 0xbc]
mov dword [ebp - 0xb4], eax
mov dword [ebp - 0xa8], eax
xor eax, eax
cmp byte [ebp - 0xf0], 0
cmovne eax, dword [ebp - 0x128]
mov byte [ebp - 0xbc], 0xd
mov dword [ebp - 0xb8], ebx
mov dword [ebp - 0xb0], eax
movsx eax, word [esi + 0x22]
mov dword [ebp - 0xac], eax
mov eax, dword [ebp - 0xdc]
call sym._sqlite3Select
test eax, eax
jne 0x10126c02
mov eax, dword [ebp - 0xdc]
mov eax, dword [eax + 0x24]
mov dword [ebp - 0xf0], eax
test eax, eax
jne 0x10126c02
mov eax, dword [ebp - 0xb0]
mov edx, ebx
mov dword [ebp - 0x11c], eax
mov eax, dword [ebp - 0xe0]
call sym._sqlite3VdbeEndCoroutine
mov eax, dword [ebp - 0xe0]
mov edx, edi
call sym._sqlite3VdbeJumpHere
mov eax, dword [ebp - 0xe8]
cmp dword [ebp - 0x124], 0
mov eax, dword [eax + 0x1c]
mov eax, dword [eax]
mov dword [ebp - 0x100], eax
je 0x10125cd8
mov eax, dword [ebp - 0xdc]
mov edi, dword [ebp - 0xdc]
mov eax, dword [eax + 0x28]
mov dword [ebp - 0xf0], eax
inc eax
mov dword [edi + 0x28], eax
mov eax, edi
call sym._sqlite3GetTempReg
mov edi, eax
mov eax, dword [ebp - 0xdc]
call sym._sqlite3GetTempReg
mov edx, 0x76
mov ebx, eax
mov eax, dword [ebp - 0x100]
mov dword [esp], eax
mov ecx, dword [ebp - 0xf0]
mov eax, dword [ebp - 0xe0]
call sym._sqlite3VdbeAddOp2
mov ecx, dword [ebp - 0xb8]
mov eax, dword [ebp - 0xe0]
mov edx, 0xb
call sym._sqlite3VdbeAddOp1
mov edx, 0x61
mov dword [ebp - 0xf8], eax
mov dword [esp + 4], edi
mov eax, dword [ebp - 0x100]
mov dword [esp], eax
mov ecx, dword [ebp - 0x11c]
mov eax, dword [ebp - 0xe0]
call sym._sqlite3VdbeAddOp3
mov dword [esp], ebx
mov ecx, dword [ebp - 0xf0]
mov edx, 0x7f
mov eax, dword [ebp - 0xe0]
call sym._sqlite3VdbeAddOp2
mov dword [esp + 4], ebx
mov edx, pe_nt_image_headers32
mov dword [esp], edi
mov ecx, dword [ebp - 0xf0]
mov eax, dword [ebp - 0xe0]
call sym._sqlite3VdbeAddOp3
mov edx, dword [ebp - 0xf8]
mov eax, dword [ebp - 0xe0]
call sym._sqlite3VdbeGoto
mov edx, dword [ebp - 0xf8]
mov eax, dword [ebp - 0xe0]
call sym._sqlite3VdbeJumpHere
mov eax, dword [ebp - 0xdc]
mov edx, edi
call sym._sqlite3ReleaseTempReg
mov eax, dword [ebp - 0xdc]
mov edx, ebx
call sym._sqlite3ReleaseTempReg
mov byte [ebp - 0x114], 1
jmp 0x10125dfb
mov eax, dword [ebp - 0xdc]
xor edi, edi
call sym._sqlite3GetVdbe
cmp byte [esi + 0x2b], 1
mov dword [ebp - 0xf8], eax
mov eax, dword [eax + 0x6c]
mov dword [ebp - 0x10c], eax
jne 0x10125d0c
mov eax, dword [ebp - 0xdc]
mov edx, dword [esi + 0x34]
mov eax, dword [eax]
call sym._sqlite3GetVTable.isra.0
mov edi, eax
mov ebx, 1
cmp dword [ebp - 0x10c], ebx
jle 0x10125d6a
mov eax, dword [ebp - 0xf8]
mov edx, ebx
call sym._sqlite3VdbeGetOp
mov edx, eax
mov al, byte [eax]
cmp al, 0x70
jne 0x10125d5a
mov eax, dword [ebp - 0x108]
cmp eax, dword [edx + 0xc]
jne 0x10125d67
mov edx, dword [edx + 8]
cmp edx, dword [esi + 0x14]
je 0x10125bcd
mov eax, dword [esi + 8]
test eax, eax
je 0x10125d67
cmp edx, dword [eax + 0x2c]
je 0x10125bcd
mov eax, dword [eax + 0x14]
jmp 0x10125d48
cmp al, 0xad
jne 0x10125d67
cmp dword [edx + 0x10], edi
je 0x10125bcd
inc ebx
jmp 0x10125d11
mov byte [ebp - 0x114], 0
jmp 0x10125dfb
mov eax, dword [ebp - 0xe8]
lea edx, [ebp - 0x7c]
mov ecx, 7
cmp dword [ebp - 0x104], 0
mov edi, edx
rep stosd dword es:[edi], eax
mov eax, dword [ebp - 0xdc]
mov dword [ebp - 0x80], eax
je 0x10125dd7
mov eax, dword [ebp - 0x104]
mov edx, dword [ebp - 0x104]
mov eax, dword [eax]
mov dword [ebp - 0x100], eax
lea eax, [ebp - 0x80]
call sym._sqlite3ResolveExprListNames
mov dword [ebp - 0x11c], eax
test eax, eax
jne 0x10126c02
mov byte [ebp - 0x114], 0
mov dword [ebp - 0xf0], 0xffffffff
jmp 0x10125dfb
xor edx, edx
mov byte [ebp - 0x114], 0
mov dword [ebp - 0x11c], edx
mov dword [ebp - 0x100], edx
mov dword [ebp - 0xf0], 0xffffffff
jmp 0x10125eb2
cmp dword [ebp - 0xec], 0
jne 0x10125ebb
cmp dword [ebp - 0x100], 0
jle 0x10125eb2
movsx eax, word [esi + 0x20]
mov ecx, dword [esi + 0x1c]
mov dword [ebp - 0xe4], eax
test eax, eax
js 0x10125e4c
test cl, 0x60
je 0x10125e4c
sub eax, 1
jb 0x10125e4c
mov edx, eax
shl edx, 4
add edx, dword [esi + 4]
mov dx, word [edx + 0xe]
and edx, 0x60
cmp dx, 1
adc dword [ebp - 0xe4], 0xffffffff
jmp 0x10125e2b
xor edx, edx
and cl, 0x62
movsx eax, word [esi + 0x22]
je 0x10125e76
xor ecx, ecx
cmp ecx, eax
jge 0x10125e76
mov ebx, ecx
shl ebx, 4
add ebx, dword [esi + 4]
mov bx, word [ebx + 0xe]
and ebx, 0x62
cmp bx, 1
sbb edx, 0xffffffff
inc ecx
jmp 0x10125e59
mov edi, dword [ebp - 0x100]
sub eax, edx
cmp eax, edi
je 0x10125ef0
mov dword [esp + 0x10], edi
mov dword [esp + 0xc], eax
mov eax, dword [ebp - 0x110]
mov dword [esp + 4], str.table__S_has__d_columns_but__d_values_were_supplied
add eax, 8
mov dword [esp + 8], eax
mov eax, dword [ebp - 0xdc]
mov dword [esp], eax
call sym._sqlite3ErrorMsg
jmp 0x10126c02
cmp dword [ebp - 0xec], 0
je 0x10125ef0
mov eax, dword [ebp - 0xec]
mov edi, dword [ebp - 0x100]
mov eax, dword [eax]
cmp eax, edi
je 0x10125ef0
mov dword [esp + 0xc], eax
mov dword [esp + 8], edi
mov dword [esp + 4], str._d_values_for__d_columns
mov eax, dword [ebp - 0xdc]
mov dword [esp], eax
call sym._sqlite3ErrorMsg
jmp 0x10126c02
mov dword [ebp - 0x118], 0
mov eax, dword [ebp - 0xfc]
mov eax, dword [eax + 0x24]
mov dword [ebp - 0xf8], eax
and eax, 1
je 0x10125f57
mov eax, dword [ebp - 0xdc]
cmp byte [eax + 0x12], 0
jne 0x10125f57
cmp dword [eax + 0x78], 0
jne 0x10125f57
cmp byte [eax + 0x95], 0
jne 0x10125f57
mov eax, dword [eax + 0x2c]
xor ecx, ecx
mov edx, 0x47
inc eax
mov dword [ebp - 0x118], eax
mov eax, dword [ebp - 0xdc]
mov edi, dword [ebp - 0x118]
mov dword [eax + 0x2c], edi
mov dword [esp], edi
mov eax, dword [ebp - 0xe0]
call sym._sqlite3VdbeAddOp2
xor eax, eax
cmp byte [ebp - 0x13d], 2
mov dword [ebp - 0xf8], eax
je 0x10126019
lea eax, [ebp - 0xd4]
mov dword [esp + 4], 0xffffffff
mov ecx, 0x71
mov edx, esi
mov dword [esp + 0x10], eax
lea eax, [ebp - 0xd8]
mov dword [esp + 0xc], eax
xor eax, eax
mov dword [esp + 8], eax
xor eax, eax
mov dword [esp], eax
mov eax, dword [ebp - 0xdc]
call sym._sqlite3OpenTableAndIndices
xor ecx, ecx
lea edx, [eax*4 + 8]
mov ebx, eax
mov eax, dword [ebp - 0xfc]
call sym._sqlite3DbMallocRawNN
mov dword [ebp - 0xf8], eax
test eax, eax
je 0x10126c02
mov ecx, dword [esi + 8]
xor edx, edx
mov eax, dword [ebp - 0xdc]
mov eax, dword [eax + 0x2c]
mov dword [ebp - 0x108], eax
inc eax
cmp edx, ebx
jge 0x10126000
mov edi, dword [ebp - 0xf8]
mov dword [edi + edx*4], eax
movzx edi, word [ecx + 0x34]
inc edx
mov ecx, dword [ecx + 0x14]
add eax, edi
mov edi, dword [ebp - 0xdc]
mov dword [edi + 0x2c], eax
jmp 0x10125fce
mov edi, dword [ebp - 0xdc]
xor edx, edx
test ebx, ebx
cmovs ebx, edx
mov dword [edi + 0x2c], eax
mov edi, dword [ebp - 0xf8]
mov dword [edi + ebx*4], eax
cmp dword [ebp - 0x12c], 0
jne 0x10126059
cmp byte [ebp - 0x114], 0
je 0x101263e1
mov ecx, dword [ebp - 0xf0]
mov eax, dword [ebp - 0xe0]
mov edx, 0x23
call sym._sqlite3VdbeAddOp1
mov dword [ebp - 0x108], eax
mov eax, dword [ebp - 0xe0]
mov eax, dword [eax + 0x6c]
jmp 0x1012643d
mov al, byte [esi + 0x2b]
cmp al, 1
jne 0x10126073
mov eax, dword [esi]
mov dword [esp + 4], str.UPSERT_not_implemented_for_virtual_table___s_
mov dword [esp + 8], eax
jmp 0x1012626a
cmp al, 2
jne 0x10126092
mov dword [esp + 4], str.cannot_UPSERT_a_view
mov eax, dword [ebp - 0xdc]
mov dword [esp], eax
call sym._sqlite3ErrorMsg
jmp 0x10126c1a
mov eax, dword [ebp - 0x12c]
mov edx, dword [eax]
mov eax, dword [ebp - 0xdc]
call sym._sqlite3HasExplicitNulls
test eax, eax
jne 0x10126c1a
mov eax, dword [ebp - 0xd8]
mov dword [ebp - 0x158], eax
mov eax, dword [ebp - 0x110]
mov edi, dword [ebp - 0x158]
mov dword [eax + 0x34], edi
mov eax, dword [ebp - 0x12c]
mov dword [ebp - 0x10c], eax
mov eax, dword [ebp - 0x10c]
mov edi, dword [ebp - 0x110]
mov dword [eax + 0x20], edi
mov edi, dword [ebp - 0x128]
mov dword [eax + 0x24], edi
mov edi, dword [ebp - 0x158]
mov dword [eax + 0x28], edi
mov edi, dword [ebp - 0x10c]
mov eax, dword [ebp - 0xd4]
cmp dword [edi], 0
mov dword [edi + 0x2c], eax
je 0x101263c5
lea edx, [ebp - 0x98]
xor eax, eax
mov ecx, 6
mov edi, edx
rep stosd dword es:[edi], eax
mov eax, dword [ebp - 0xdc]
mov dword [ebp - 0xa0], eax
mov eax, dword [ebp - 0x110]
mov dword [ebp - 0x9c], eax
xor eax, eax
mov dword [ebp - 0x144], eax
mov eax, dword [ebp - 0x10c]
mov dword [ebp - 0x108], eax
jmp 0x1012618f
mov eax, dword [ebp - 0x13c]
cmp dword [eax], 1
jne 0x101261fe
mov eax, dword [eax + 8]
cmp byte [eax], 0xa7
jne 0x101261fe
cmp word [eax + 0x20], 0xffff
jne 0x101261fe
mov eax, dword [ebp - 0x108]
inc dword [ebp - 0x144]
mov eax, dword [eax + 0x10]
mov dword [ebp - 0x108], eax
test eax, eax
je 0x101263c5
mov eax, dword [ebp - 0x108]
mov edx, dword [eax]
test edx, edx
je 0x101263c5
lea eax, [ebp - 0xa0]
call sym._sqlite3ResolveExprListNames
test eax, eax
jne 0x10126c1a
mov eax, dword [ebp - 0x108]
mov edx, dword [eax + 4]
lea eax, [ebp - 0xa0]
call sym._sqlite3ResolveExprNames
test eax, eax
jne 0x10126c1a
mov eax, dword [ebp - 0x110]
mov edx, dword [eax + 0x18]
mov eax, dword [ebp - 0x108]
mov eax, dword [eax]
mov dword [ebp - 0x13c], eax
mov eax, dword [ebp - 0x110]
mov eax, dword [eax + 0x34]
mov dword [ebp - 0x148], eax
test byte [edx + 0x1c], 0x80
je 0x1012614c
lea ebx, [ebp - 0x80]
xor eax, eax
mov ecx, 0x1a
mov edi, ebx
rep stosd dword es:[edi], eax
lea eax, [ebp - 0x4c]
mov byte [ebp - 0x80], 0x71
mov dword [ebp - 0x74], eax
mov eax, dword [ebp - 0x148]
mov byte [ebp - 0x4c], 0xa7
mov ebx, dword [edx + 8]
mov dword [ebp - 0x30], eax
test ebx, ebx
jne 0x1012627d
mov eax, dword [ebp - 0x108]
cmp dword [eax + 0x1c], 0
jne 0x10126172
cmp dword [ebp - 0x144], 0
jne 0x10126397
cmp dword [eax + 0x10], 0
jne 0x10126397
mov byte [ebp - 0xcc], 0
lea eax, [ebp - 0xcc]
mov dword [esp + 4], str._sON_CONFLICT_clause_does_not_match_any_PRIMARY_KEY_or_UNIQUE_constraint
mov dword [esp + 8], eax
mov eax, dword [ebp - 0xdc]
mov dword [esp], eax
call sym._sqlite3ErrorMsg
jmp 0x10126c1a
cmp byte [ebx + 0x36], 0
je 0x1012638f
mov edi, dword [ebp - 0x13c]
movzx eax, word [ebx + 0x32]
cmp dword [edi], eax
jne 0x1012638f
mov ecx, dword [ebx + 0x24]
test ecx, ecx
jne 0x101262b1
movzx eax, word [ebx + 0x32]
xor edi, edi
mov dword [ebp - 0x14c], eax
jmp 0x1012634f
mov eax, dword [ebp - 0x108]
mov edx, dword [eax + 4]
test edx, edx
je 0x1012638f
mov eax, dword [ebp - 0x148]
mov dword [esp], eax
mov eax, dword [ebp - 0xdc]
call sym._sqlite3ExprCompare
test eax, eax
jne 0x1012638f
jmp 0x101262a0
mov eax, dword [ebx + 0x20]
mov eax, dword [eax + edi*4]
mov dword [ebp - 0x78], eax
mov eax, dword [ebx + 4]
mov ax, word [eax + edi*2]
cmp ax, 0xfffe
jne 0x10126359
imul eax, edi, 0x14
add eax, dword [ebx + 0x28]
mov ecx, dword [eax + 8]
cmp byte [ecx], 0x71
je 0x1012630a
mov dword [ebp - 0x74], ecx
lea ecx, [ebp - 0x80]
xor eax, eax
mov dword [ebp - 0x138], eax
imul eax, dword [ebp - 0x138], 0x14
mov edx, dword [ebp - 0x13c]
mov edx, dword [edx + eax + 8]
mov eax, dword [ebp - 0x148]
mov dword [esp], eax
mov eax, dword [ebp - 0xdc]
mov dword [ebp - 0x15c], ecx
call sym._sqlite3ExprCompare
dec eax
jg 0x10126365
mov ecx, dword [ebp - 0x14c]
cmp dword [ebp - 0x138], ecx
jge 0x1012638f
inc edi
cmp dword [ebp - 0x14c], edi
jg 0x101262e0
jmp 0x10126381
lea edx, [ebp - 0x4c]
mov word [ebp - 0x2c], ax
mov dword [ebp - 0x74], edx
jmp 0x10126307
inc dword [ebp - 0x138]
mov ecx, dword [ebp - 0x138]
cmp dword [ebp - 0x14c], ecx
mov ecx, dword [ebp - 0x15c]
jg 0x10126312
jmp 0x1012638f
mov eax, dword [ebp - 0x108]
mov dword [eax + 0x1c], ebx
jmp 0x10126172
mov ebx, dword [ebx + 0x14]
jmp 0x10126226
mov eax, dword [ebp - 0x144]
mov dword [esp + 8], 0x101eb2e1
mov dword [esp], 0x10
inc eax
mov dword [esp + 0xc], eax
lea eax, [ebp - 0xcc]
mov dword [esp + 4], eax
call sym._sqlite3_snprintf
jmp 0x10126258
mov eax, dword [ebp - 0x10c]
mov eax, dword [eax + 0x10]
mov dword [ebp - 0x10c], eax
test eax, eax
jne 0x101260d4
jmp 0x10126022
cmp dword [ebp - 0xe8], 0
je 0x10126445
mov ecx, dword [ebp - 0xb8]
mov eax, dword [ebp - 0xe0]
mov edx, 0xb
call sym._sqlite3VdbeAddOp1
cmp dword [ebp - 0xe4], 0
mov dword [ebp - 0x108], eax
js 0x10126437
mov eax, dword [ebp - 0x11c]
mov edi, dword [ebp - 0xe4]
mov edx, 0x50
lea ecx, [eax + edi]
mov eax, dword [ebp - 0xf4]
mov dword [esp], eax
mov eax, dword [ebp - 0xe0]
call sym._sqlite3VdbeAddOp2
mov eax, dword [ebp - 0x108]
mov dword [ebp - 0x138], eax
jmp 0x10126453
xor ecx, ecx
mov dword [ebp - 0x138], ecx
mov dword [ebp - 0x108], ecx
xor edx, edx
mov ebx, dword [ebp - 0x128]
xor edi, edi
mov dword [ebp - 0x13c], edx
mov ecx, dword [ebp - 0x154]
movsx edx, word [esi + 0x22]
and ecx, 1
cmp edx, edi
jle 0x101265af
movsx eax, word [esi + 0x20]
cmp eax, edi
je 0x101264b5
mov eax, edi
shl eax, 4
add eax, dword [esi + 4]
mov dx, word [eax + 0xe]
mov dword [ebp - 0x10c], eax
test dl, 0x62
je 0x101264d7
inc dword [ebp - 0x13c]
test dl, 0x20
je 0x101264a8
dec ebx
jmp 0x101265a8
and dl, 0x40
je 0x101264cc
test ecx, ecx
je 0x101265a8
mov eax, dword [ebp - 0xe0]
mov ecx, ebx
mov edx, 0x4c
call sym._sqlite3VdbeAddOp1
jmp 0x101265a8
cmp dword [ebp - 0xec], 0
jne 0x101264e0
jmp 0x10126510
cmp dword [ebp - 0xec], 0
je 0x101264fd
mov ecx, dword [ebp - 0xec]
mov edx, dword [ecx]
xor ecx, ecx
cmp edx, ecx
jle 0x10126510
mov eax, dword [ebp - 0xec]
cmp dword [eax + ecx*8 + 0xc], edi
je 0x10126532
inc ecx
jmp 0x101264ea
mov eax, dword [ebp - 0x13c]
mov ecx, edi
sub ecx, eax
cmp dword [ebp - 0x100], 0
jne 0x10126532
mov eax, dword [ebp - 0x10c]
mov dx, word [eax + 0xc]
mov eax, esi
call sym._sqlite3ColumnExpr.isra.0
mov ecx, ebx
mov edx, eax
mov eax, dword [ebp - 0xdc]
call sym._sqlite3ExprCodeFactorable
jmp 0x101265a8
cmp byte [ebp - 0x114], 0
je 0x1012655a
mov dword [esp + 4], ebx
mov edx, 0x5e
mov dword [esp], ecx
mov ecx, dword [ebp - 0xf0]
mov eax, dword [ebp - 0xe0]
call sym._sqlite3VdbeAddOp3
jmp 0x101265a8
cmp dword [ebp - 0xe8], 0
je 0x1012658e
mov edx, dword [ebp - 0x128]
cmp dword [ebp - 0x11c], edx
je 0x101265a8
mov eax, dword [ebp - 0x11c]
mov dword [esp], ebx
mov edx, 0x51
add ecx, eax
mov eax, dword [ebp - 0xe0]
call sym._sqlite3VdbeAddOp2
jmp 0x101265a8
imul eax, ecx, 0x14
mov edx, dword [ebp - 0x104]
mov ecx, ebx
mov edx, dword [edx + eax + 8]
mov eax, dword [ebp - 0xdc]
call sym._sqlite3ExprCode
inc edi
inc ebx
jmp 0x10126463
mov eax, dword [ebp - 0xdc]
mov eax, dword [eax + 0x38]
lea edi, [eax - 1]
mov dword [ebp - 0x100], eax
mov eax, dword [ebp - 0xdc]
mov dword [eax + 0x38], edi
test ecx, ecx
je 0x10126755
inc edx
call sym._sqlite3GetTempRange
cmp dword [ebp - 0xe4], 0
mov ebx, eax
jns 0x101265fe
mov dword [esp], eax
mov eax, dword [ebp - 0xe0]
or ecx, 0xffffffff
mov edx, 0x47
call sym._sqlite3VdbeAddOp2
jmp 0x1012669b
cmp byte [ebp - 0x114], 0
je 0x1012662c
mov dword [esp + 4], eax
mov eax, dword [ebp - 0xe4]
mov edx, 0x5e
mov dword [esp], eax
mov ecx, dword [ebp - 0xf0]
mov eax, dword [ebp - 0xe0]
call sym._sqlite3VdbeAddOp3
jmp 0x1012664a
imul eax, dword [ebp - 0xe4], 0x14
mov edx, dword [ebp - 0x104]
mov ecx, ebx
mov edx, dword [edx + eax + 8]
mov eax, dword [ebp - 0xdc]
call sym._sqlite3ExprCode
mov eax, dword [ebp - 0xe0]
mov ecx, ebx
mov edx, 0x33
call sym._sqlite3VdbeAddOp1
or ecx, 0xffffffff
mov edx, 0x47
mov dword [ebp - 0x100], eax
mov dword [esp], ebx
mov eax, dword [ebp - 0xe0]
call sym._sqlite3VdbeAddOp2
mov edx, dword [ebp - 0x100]
mov eax, dword [ebp - 0xe0]
call sym._sqlite3VdbeJumpHere
mov eax, dword [ebp - 0xe0]
mov ecx, ebx
mov edx, 0xc
call sym._sqlite3VdbeAddOp1
lea eax, [ebx + 1]
mov edx, 0x50
mov dword [ebp - 0x100], eax
movsx eax, word [esi + 0x24]
dec eax
mov dword [esp + 4], eax
mov eax, dword [ebp - 0x100]
mov dword [esp], eax
mov ecx, dword [ebp - 0x128]
mov eax, dword [ebp - 0xe0]
call sym._sqlite3VdbeAddOp3
test byte [esi + 0x1c], 0x60
je 0x101266e5
mov edx, dword [ebp - 0x100]
mov eax, dword [ebp - 0xdc]
mov ecx, esi
call sym._sqlite3ComputeGeneratedColumns
cmp byte [ebp - 0x13d], 2
je 0x10126701
mov ecx, dword [ebp - 0x100]
mov eax, dword [ebp - 0xe0]
mov edx, esi
call sym._sqlite3TableAffinity
mov dword [esp + 0x14], edi
mov eax, dword [ebp - 0x120]
mov ecx, 0x7f
mov dword [esp + 0x10], eax
movsx edx, word [esi + 0x22]
mov eax, ebx
mov dword [esp + 8], esi
sub eax, edx
mov dword [esp + 4], 1
dec eax
mov dword [esp + 0xc], eax
xor eax, eax
mov dword [esp], eax
mov edx, dword [ebp - 0x124]
mov eax, dword [ebp - 0xdc]
call sym._sqlite3CodeRowTrigger
movsx ecx, word [esi + 0x22]
mov eax, dword [ebp - 0xdc]
mov edx, ebx
inc ecx
call sym._sqlite3ReleaseTempRange
cmp byte [ebp - 0x13d], 2
je 0x10126acc
cmp byte [esi + 0x2b], 1
jne 0x10126783
mov eax, dword [ebp - 0x134]
xor ecx, ecx
mov edx, 0x4b
mov dword [esp], eax
mov eax, dword [ebp - 0xe0]
call sym._sqlite3VdbeAddOp2
cmp dword [ebp - 0xe4], 0
js 0x101268c6
cmp byte [ebp - 0x114], 0
je 0x101267c4
mov eax, dword [ebp - 0xf4]
mov edx, 0x5e
mov dword [esp + 4], eax
mov eax, dword [ebp - 0xe4]
mov dword [esp], eax
mov ecx, dword [ebp - 0xf0]
mov eax, dword [ebp - 0xe0]
call sym._sqlite3VdbeAddOp3
jmp 0x1012682d
cmp dword [ebp - 0xe8], 0
jne 0x1012682d
imul eax, dword [ebp - 0xe4], 0x14
mov ebx, dword [ebp - 0x104]
mov edx, dword [ebx + eax + 8]
cmp byte [edx], 0x79
jne 0x1012681c
cmp byte [esi + 0x2b], 1
je 0x1012681c
mov eax, dword [ebp - 0x130]
mov edx, 0x7f
mov ebx, 1
mov dword [esp + 4], eax
mov eax, dword [ebp - 0xf4]
mov dword [esp], eax
mov ecx, dword [ebp - 0xd8]
mov eax, dword [ebp - 0xe0]
call sym._sqlite3VdbeAddOp3
jmp 0x101268f6
mov ecx, dword [ebp - 0xf4]
mov eax, dword [ebp - 0xdc]
call sym._sqlite3ExprCode
cmp byte [esi + 0x2b], 1
je 0x10126883
mov ecx, dword [ebp - 0xf4]
mov eax, dword [ebp - 0xe0]
mov edx, 0x33
call sym._sqlite3VdbeAddOp1
mov edx, 0x7f
mov ebx, eax
mov eax, dword [ebp - 0x130]
mov dword [esp + 4], eax
mov eax, dword [ebp - 0xf4]
mov dword [esp], eax
mov ecx, dword [ebp - 0xd8]
mov eax, dword [ebp - 0xe0]
call sym._sqlite3VdbeAddOp3
mov eax, dword [ebp - 0xe0]
mov edx, ebx
call sym._sqlite3VdbeJumpHere
jmp 0x101268ae
mov eax, dword [ebp - 0xe0]
mov edx, 0x32
mov eax, dword [eax + 0x6c]
mov dword [ebp - 0x100], eax
add eax, 2
mov dword [esp], eax
mov ecx, dword [ebp - 0xf4]
mov eax, dword [ebp - 0xe0]
call sym._sqlite3VdbeAddOp2
mov ecx, dword [ebp - 0xf4]
mov eax, dword [ebp - 0xe0]
mov edx, 0xc
call sym._sqlite3VdbeAddOp1
jmp 0x101268f4
cmp byte [esi + 0x2b], 1
je 0x101268d9
cmp dword [ebp - 0x150], 0
je 0x101267e9
mov eax, dword [ebp - 0xf4]
xor ecx, ecx
mov edx, 0x4b
mov dword [esp], eax
mov eax, dword [ebp - 0xe0]
call sym._sqlite3VdbeAddOp2
xor ebx, ebx
cmp dword [ebp - 0x130], 0
jle 0x10126921
mov eax, dword [ebp - 0xdc]
mov ecx, dword [ebp - 0xf4]
mov edx, 0x9f
mov eax, dword [eax + 8]
mov dword [esp], ecx
mov ecx, dword [ebp - 0x130]
call sym._sqlite3VdbeAddOp2
test byte [esi + 0x1c], 0x60
je 0x1012693a
mov edx, dword [ebp - 0x128]
mov eax, dword [ebp - 0xdc]
mov ecx, esi
call sym._sqlite3ComputeGeneratedColumns
cmp byte [esi + 0x2b], 1
jne 0x101269c6
mov edx, dword [esi + 0x34]
mov eax, dword [ebp - 0xfc]
call sym._sqlite3GetVTable.isra.0
mov edx, esi
mov ebx, eax
mov eax, dword [ebp - 0xdc]
call sym._sqlite3VtabMakeWritable
mov dword [esp + 8], ebx
mov edx, 7
mov ecx, 1
mov dword [esp + 0xc], 0xfffffff5
mov eax, dword [ebp - 0x134]
mov dword [esp + 4], eax
movsx eax, word [esi + 0x22]
add eax, 2
mov dword [esp], eax
mov eax, dword [ebp - 0xe0]
call sym._sqlite3VdbeAddOp4
cmp dword [ebp - 0x120], 0xb
mov edx, 2
je 0x101269ab
movzx edx, word [ebp - 0x120]
mov eax, dword [ebp - 0xe0]
call sym._sqlite3VdbeChangeP5
mov eax, dword [ebp - 0xdc]
call sym._sqlite3MayAbort
jmp 0x10126acc
xor eax, eax
mov edx, esi
mov dword [ebp - 0x80], eax
mov eax, dword [ebp - 0xd4]
mov dword [ebp - 0x100], eax
mov eax, dword [ebp - 0xd8]
mov dword [ebp - 0x10c], eax
mov eax, dword [ebp - 0x12c]
mov dword [esp + 0x18], edi
mov dword [esp + 0x24], eax
xor eax, eax
mov dword [esp + 0x20], eax
lea eax, [ebp - 0x80]
mov dword [esp + 0x1c], eax
movzx eax, byte [ebp - 0x120]
mov dword [esp + 0x14], eax
mov eax, dword [ebp - 0xe4]
not eax
shr eax, 0x1f
mov dword [esp + 0x10], eax
xor eax, eax
mov dword [esp + 0xc], eax
mov eax, dword [ebp - 0x134]
mov dword [esp + 8], eax
mov eax, dword [ebp - 0x100]
mov dword [esp + 4], eax
mov eax, dword [ebp - 0x10c]
mov dword [esp], eax
mov ecx, dword [ebp - 0xf8]
mov eax, dword [ebp - 0xdc]
call sym._sqlite3GenerateConstraintChecks
xor eax, eax
xor ecx, ecx
mov edx, esi
mov dword [esp + 8], eax
mov dword [esp + 4], eax
mov eax, dword [ebp - 0x134]
mov dword [esp], eax
mov eax, dword [ebp - 0xdc]
call sym._sqlite3FkCheck
cmp dword [ebp - 0x80], 0
mov eax, 1
je 0x10126a8e
mov eax, dword [ebp - 0xe0]
cmp dword [eax + 0xe0], 0
sete al
movzx eax, al
mov dword [esp + 0x10], ebx
xor ebx, ebx
mov edx, esi
mov dword [esp + 0x14], eax
mov dword [esp + 0xc], ebx
mov eax, dword [ebp - 0xf8]
mov dword [esp + 8], eax
mov eax, dword [ebp - 0x134]
mov dword [esp + 4], eax
mov eax, dword [ebp - 0x100]
mov dword [esp], eax
mov ecx, dword [ebp - 0x10c]
mov eax, dword [ebp - 0xdc]
call sym._sqlite3CompleteInsertion
cmp dword [ebp - 0x118], 0
je 0x10126af2
mov dword [esp], 1
mov ecx, dword [ebp - 0x118]
mov edx, 0x56
mov eax, dword [ebp - 0xe0]
call sym._sqlite3VdbeAddOp2
cmp dword [ebp - 0x124], 0
je 0x10126b41
mov dword [esp + 0x14], edi
mov eax, dword [ebp - 0x120]
xor ecx, ecx
mov dword [esp + 0x10], eax
mov eax, dword [ebp - 0xf4]
movsx edx, word [esi + 0x22]
mov dword [esp], ecx
mov ecx, 0x7f
dec eax
mov dword [esp + 8], esi
sub eax, edx
mov dword [esp + 4], 2
mov dword [esp + 0xc], eax
mov edx, dword [ebp - 0x124]
mov eax, dword [ebp - 0xdc]
call sym._sqlite3CodeRowTrigger
mov eax, dword [ebp - 0xe0]
mov edx, edi
call sym._sqlite3VdbeResolveLabel
cmp byte [ebp - 0x114], 0
je 0x10126b9f
mov eax, dword [ebp - 0x138]
mov edx, 0x26
mov dword [esp], eax
mov ecx, dword [ebp - 0xf0]
mov eax, dword [ebp - 0xe0]
call sym._sqlite3VdbeAddOp2
mov edx, dword [ebp - 0x108]
mov eax, dword [ebp - 0xe0]
call sym._sqlite3VdbeJumpHere
mov ecx, dword [ebp - 0xf0]
mov eax, dword [ebp - 0xe0]
mov edx, 0x7a
call sym._sqlite3VdbeAddOp1
jmp 0x10126bca
cmp dword [ebp - 0xe8], 0
je 0x10126bca
mov edx, dword [ebp - 0x138]
mov eax, dword [ebp - 0xe0]
call sym._sqlite3VdbeGoto
mov edx, dword [ebp - 0x108]
mov eax, dword [ebp - 0xe0]
call sym._sqlite3VdbeJumpHere
mov eax, dword [ebp - 0xdc]
cmp byte [eax + 0x12], 0
jne 0x10126be1
cmp dword [eax + 0x78], 0
jne 0x10126be1
call sym._sqlite3AutoincrementEnd
cmp dword [ebp - 0x118], 0
je 0x10126c1a
mov edx, dword [ebp - 0x118]
mov eax, dword [ebp - 0xe0]
mov ecx, str.rows_inserted
call sym._sqlite3CodeChangeCount
jmp 0x10126c1a
xor edx, edx
mov dword [ebp - 0xf8], edx
jmp 0x10126c1a
xor eax, eax
mov dword [ebp - 0xf8], eax
mov dword [ebp - 0x104], eax
mov edx, dword [ebp - 0x110]
mov eax, dword [ebp - 0xfc]
call sym._sqlite3SrcListDelete
mov eax, dword [ebp - 0x104]
mov dword [esp + 4], eax
mov eax, dword [ebp - 0xfc]
mov dword [esp], eax
call sym._sqlite3ExprListDelete
cmp dword [ebp - 0x12c], 0
je 0x10126c5d
mov edx, dword [ebp - 0x12c]
mov eax, dword [ebp - 0xfc]
call sym._upsertDelete
mov eax, dword [ebp - 0xe8]
mov dword [esp + 4], eax
mov eax, dword [ebp - 0xfc]
mov dword [esp], eax
call sym._sqlite3SelectDelete
mov eax, dword [ebp - 0xfc]
mov edx, dword [ebp - 0xec]
call sym._sqlite3IdListDelete
mov eax, dword [ebp - 0xf8]
mov dword [ebp + 0xc], eax
mov eax, dword [ebp - 0xfc]
mov dword [ebp + 8], eax
add esp, 0x18c
pop ebx
pop esi
pop edi
pop ebp
jmp sym._sqlite3DbFree
mov eax, dword [0x2c]
ud2