Function at 0x10124a2c
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 0x101269ec
xor esi, esi
mov dword [ebp - 0xb8], esi
mov dword [ebp - 0x104], esi
test ecx, ecx
je 0x10124ad9
test byte [ecx + 5], 2
je 0x10124ad9
cmp dword [ecx + 0x34], 0
jne 0x10124ad9
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 0x101269e2
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 0x101269fa
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 0x101269e2
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 0x101269e2
mov eax, dword [ebp - 0xdc]
call sym._sqlite3GetVdbe
mov dword [ebp - 0xe0], eax
test eax, eax
je 0x101269e2
mov eax, dword [ebp - 0xdc]
cmp byte [eax + 0x12], 0
jne 0x10124be4
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 0x101256ac
cmp dword [ebp - 0xe8], 0
je 0x101256ac
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 0x101256ac
mov eax, dword [ebp - 0xe8]
cmp dword [eax + 0x40], 0
jne 0x101256ac
cmp byte [esi + 0x2b], 1
je 0x101256ac
mov eax, dword [ebp - 0x120]
mov dword [ebp - 0x10c], eax
cmp eax, 0xb
jne 0x10124c9b
mov dword [ebp - 0x10c], 2
cmp word [esi + 0x20], 0
js 0x10124c9b
movzx eax, byte [esi + 0x2a]
mov dword [ebp - 0x10c], eax
cmp eax, 0xb
jne 0x10124c9b
mov dword [ebp - 0x10c], 2
mov eax, dword [ebp - 0xe8]
mov ecx, dword [eax + 0x20]
cmp dword [ecx], 1
jne 0x101256ac
cmp dword [ecx + 0x1c], 0
jne 0x101256ac
cmp dword [eax + 0x24], 0
jne 0x101256ac
cmp dword [eax + 0x30], 0
jne 0x101256ac
cmp dword [eax + 0x28], 0
jne 0x101256ac
cmp dword [eax + 0x3c], 0
jne 0x101256ac
cmp dword [eax + 0x34], 0
jne 0x101256ac
test byte [eax + 4], 1
jne 0x101256ac
mov eax, dword [eax + 0x1c]
cmp dword [eax], 1
jne 0x101256ac
mov eax, dword [eax + 8]
cmp byte [eax], 0xb4
jne 0x101256ac
mov eax, dword [ebp - 0xdc]
add ecx, 8
xor edx, edx
call sym._sqlite3LocateTableItem
mov edi, eax
test eax, eax
je 0x101256ac
mov eax, dword [esi + 0x14]
cmp dword [edi + 0x14], eax
jne 0x10124d39
mov eax, dword [esi + 0x3c]
cmp dword [edi + 0x3c], eax
je 0x101256ac
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 0x101256ac
cmp byte [edi + 0x2b], 0
jne 0x101256ac
mov ax, word [edi + 0x22]
cmp word [esi + 0x22], ax
jne 0x101256ac
mov eax, dword [edi + 0x20]
cmp word [esi + 0x20], ax
jne 0x101256ac
bt ebx, 0x10
jae 0x10124d92
bt ecx, 0x10
jae 0x101256ac
xor eax, eax
mov dword [ebp - 0xf0], eax
movsx eax, word [esi + 0x22]
cmp dword [ebp - 0xf0], eax
jge 0x10124ef2
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 0x101256ac
test al, 0x60
jne 0x10124deb
mov ecx, dword [ebp - 0xe4]
mov al, byte [ebx + 8]
cmp byte [ecx + 8], al
je 0x10124e2c
jmp 0x101256ac
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 0x10124dd8
jmp 0x101256ac
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 0x101256ac
mov eax, dword [ebp - 0xe4]
test byte [eax + 4], 0xf
je 0x10124e74
test byte [ebx + 4], 0xf
je 0x101256ac
mov eax, dword [ebp - 0xe4]
test byte [eax + 0xe], 0x60
jne 0x10124ee7
cmp dword [ebp - 0xf0], 0
je 0x10124ee7
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 0x101256ac
cmp dword [ebp - 0xe4], 0
je 0x10124ee7
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 0x101256ac
inc dword [ebp - 0xf0]
jmp 0x10124d9a
xor eax, eax
mov ebx, dword [esi + 8]
mov dword [ebp - 0x114], eax
test ebx, ebx
je 0x10124f66
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 0x101256ac
mov eax, ebx
mov dword [ebp - 0xe4], edx
call sym._xferCompatibleIndex
mov edx, dword [ebp - 0xe4]
test eax, eax
jne 0x10124f3e
mov edx, dword [edx + 0x14]
jmp 0x10124f1a
mov eax, dword [ebx + 0x2c]
cmp dword [edx + 0x2c], eax
je 0x10124f4b
mov ebx, dword [ebx + 0x14]
jmp 0x10124efd
mov eax, dword [esi + 0x3c]
cmp dword [edi + 0x3c], eax
jne 0x10124f46
mov eax, 0x19b
call sym._sqlite3FaultSim
test eax, eax
jne 0x10124f46
jmp 0x101256ac
mov edx, dword [esi + 0x10]
test edx, edx
jne 0x10124f98
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 0x10124fac
jmp 0x10124fb6
mov eax, dword [edi + 0x10]
or ecx, 0xffffffff
call sym._sqlite3ExprListCompare
test eax, eax
je 0x10124f6d
jmp 0x101256ac
cmp dword [esi + 0x30], 0
jne 0x101256ac
and eax, 1
jne 0x101256ac
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 0x101250fb
cmp word [esi + 0x20], 0
jns 0x101250a4
cmp dword [esi + 8], 0
jne 0x101250b9
cmp dword [ebp - 0x114], 0
jne 0x101250b9
mov eax, dword [ebp - 0x10c]
dec eax
cmp eax, 1
jbe 0x10125103
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 0x10125103
xor edx, edx
mov dword [ebp - 0x114], edx
test byte [edi + 0x1c], 0x80
jne 0x10125355
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 0x10125204
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 0x101251d7
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 0x1012524d
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 0x1012524d
cmp dword [esi + 8], 0
jne 0x1012522c
mov eax, dword [ebp - 0xf8]
test byte [eax + 0x18], 8
jne 0x1012522c
mov eax, dword [ebp - 0x100]
mov edx, 0x7f
mov dword [esp], eax
mov ecx, dword [ebp - 0xf4]
jmp 0x10125240
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 0x1012527d
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 0x101252f2
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 0x1012539d
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 0x101255ec
mov ebx, dword [edi + 8]
test ebx, ebx
je 0x10126a87
mov eax, dword [ebp - 0x10c]
mov edx, ebx
call sym._xferCompatibleIndex
test eax, eax
jne 0x101253d4
mov ebx, dword [ebx + 0x14]
jmp 0x101253b6
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 0x101254fd
movzx ecx, word [ebx + 0x34]
xor edx, edx
cmp edx, ecx
jge 0x101254c0
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 0x1012551e
mov edx, dword [ebp - 0x134]
mov ecx, dword [ebp - 0x13c]
inc edx
jmp 0x10125487
mov bl, 0
jne 0x10125520
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 0x10125547
xor ebx, ebx
test byte [edi + 0x1c], 0x80
je 0x10125520
mov eax, dword [ebp - 0x10c]
mov al, byte [eax + 0x38]
mov byte [ebp - 0x134], al
and eax, 3
cmp al, 2
sete bl
jmp 0x10125520
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 0x101253a0
cmp dword [ebp - 0x128], 0
je 0x10125606
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 0x10125681
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 0x101256ac
cmp byte [eax + 0x12], 0
jne 0x101269e2
mov eax, dword [eax + 0x78]
mov dword [ebp - 0xf8], eax
test eax, eax
jne 0x101269e2
mov eax, dword [ebp - 0xdc]
call sym._sqlite3AutoincrementEnd
jmp 0x101269fa
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 0x10125710
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 0x10125892
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 0x10125769
mov edi, dword [ebp - 0xec]
mov dword [edi + eax*8 + 0xc], 0xffffffff
inc eax
jmp 0x10125750
mov dword [ebp - 0xe4], 0xffffffff
xor ebx, ebx
cmp dword [ebp - 0x100], ebx
jle 0x1012589c
xor edi, edi
cmp dword [ebp - 0xf8], edi
jle 0x1012582b
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 0x10125825
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 0x1012588c
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 0x101269e2
inc edi
jmp 0x10125783
mov eax, dword [ebp - 0xec]
mov edi, dword [eax + ebx*8 + 8]
mov eax, edi
call sym._sqlite3IsRowid
test eax, eax
je 0x10125849
cmp dword [ebp - 0x150], 0
je 0x1012587f
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 0x101269e2
mov dword [ebp - 0xe4], ebx
mov byte [ebp - 0xf0], 0
inc ebx
jmp 0x10125775
mov dword [ebp - 0xe4], 0xffffffff
mov eax, dword [ebp - 0xf4]
inc eax
cmp dword [ebp - 0xe8], 0
mov dword [ebp - 0x128], eax
je 0x10125b56
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 0x101269e2
mov eax, dword [ebp - 0xdc]
mov eax, dword [eax + 0x24]
mov dword [ebp - 0xf0], eax
test eax, eax
jne 0x101269e2
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 0x10125ab8
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 0x10125bdb
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 0x10125aec
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 0x10125b4a
mov eax, dword [ebp - 0xf8]
mov edx, ebx
call sym._sqlite3VdbeGetOp
mov edx, eax
mov al, byte [eax]
cmp al, 0x70
jne 0x10125b3a
mov eax, dword [ebp - 0x108]
cmp eax, dword [edx + 0xc]
jne 0x10125b47
mov edx, dword [edx + 8]
cmp edx, dword [esi + 0x14]
je 0x101259ad
mov eax, dword [esi + 8]
test eax, eax
je 0x10125b47
cmp edx, dword [eax + 0x2c]
je 0x101259ad
mov eax, dword [eax + 0x14]
jmp 0x10125b28
cmp al, 0xad
jne 0x10125b47
cmp dword [edx + 0x10], edi
je 0x101259ad
inc ebx
jmp 0x10125af1
mov byte [ebp - 0x114], 0
jmp 0x10125bdb
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 0x10125bb7
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 0x101269e2
mov byte [ebp - 0x114], 0
mov dword [ebp - 0xf0], 0xffffffff
jmp 0x10125bdb
xor edx, edx
mov byte [ebp - 0x114], 0
mov dword [ebp - 0x11c], edx
mov dword [ebp - 0x100], edx
mov dword [ebp - 0xf0], 0xffffffff
jmp 0x10125c92
cmp dword [ebp - 0xec], 0
jne 0x10125c9b
cmp dword [ebp - 0x100], 0
jle 0x10125c92
movsx eax, word [esi + 0x20]
mov ecx, dword [esi + 0x1c]
mov dword [ebp - 0xe4], eax
test eax, eax
js 0x10125c2c
test cl, 0x60
je 0x10125c2c
sub eax, 1
jb 0x10125c2c
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 0x10125c0b
xor edx, edx
and cl, 0x62
movsx eax, word [esi + 0x22]
je 0x10125c56
xor ecx, ecx
cmp ecx, eax
jge 0x10125c56
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 0x10125c39
mov edi, dword [ebp - 0x100]
sub eax, edx
cmp eax, edi
je 0x10125cd0
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 0x101269e2
cmp dword [ebp - 0xec], 0
je 0x10125cd0
mov eax, dword [ebp - 0xec]
mov edi, dword [ebp - 0x100]
mov eax, dword [eax]
cmp eax, edi
je 0x10125cd0
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 0x101269e2
mov dword [ebp - 0x118], 0
mov eax, dword [ebp - 0xfc]
mov eax, dword [eax + 0x24]
mov dword [ebp - 0xf8], eax
and eax, 1
je 0x10125d37
mov eax, dword [ebp - 0xdc]
cmp byte [eax + 0x12], 0
jne 0x10125d37
cmp dword [eax + 0x78], 0
jne 0x10125d37
cmp byte [eax + 0x95], 0
jne 0x10125d37
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 0x10125df9
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 0x101269e2
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 0x10125de0
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 0x10125dae
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 0x10125e39
cmp byte [ebp - 0x114], 0
je 0x101261c1
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 0x1012621d
mov al, byte [esi + 0x2b]
cmp al, 1
jne 0x10125e53
mov eax, dword [esi]
mov dword [esp + 4], str.UPSERT_not_implemented_for_virtual_table___s_
mov dword [esp + 8], eax
jmp 0x1012604a
cmp al, 2
jne 0x10125e72
mov dword [esp + 4], str.cannot_UPSERT_a_view
mov eax, dword [ebp - 0xdc]
mov dword [esp], eax
call sym._sqlite3ErrorMsg
jmp 0x101269fa
mov eax, dword [ebp - 0x12c]
mov edx, dword [eax]
mov eax, dword [ebp - 0xdc]
call sym._sqlite3HasExplicitNulls
test eax, eax
jne 0x101269fa
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 0x101261a5
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 0x10125f6f
mov eax, dword [ebp - 0x13c]
cmp dword [eax], 1
jne 0x10125fde
mov eax, dword [eax + 8]
cmp byte [eax], 0xa7
jne 0x10125fde
cmp word [eax + 0x20], 0xffff
jne 0x10125fde
mov eax, dword [ebp - 0x108]
inc dword [ebp - 0x144]
mov eax, dword [eax + 0x10]
mov dword [ebp - 0x108], eax
test eax, eax
je 0x101261a5
mov eax, dword [ebp - 0x108]
mov edx, dword [eax]
test edx, edx
je 0x101261a5
lea eax, [ebp - 0xa0]
call sym._sqlite3ResolveExprListNames
test eax, eax
jne 0x101269fa
mov eax, dword [ebp - 0x108]
mov edx, dword [eax + 4]
lea eax, [ebp - 0xa0]
call sym._sqlite3ResolveExprNames
test eax, eax
jne 0x101269fa
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 0x10125f2c
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 0x1012605d
mov eax, dword [ebp - 0x108]
cmp dword [eax + 0x1c], 0
jne 0x10125f52
cmp dword [ebp - 0x144], 0
jne 0x10126177
cmp dword [eax + 0x10], 0
jne 0x10126177
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 0x101269fa
cmp byte [ebx + 0x36], 0
je 0x1012616f
mov edi, dword [ebp - 0x13c]
movzx eax, word [ebx + 0x32]
cmp dword [edi], eax
jne 0x1012616f
mov ecx, dword [ebx + 0x24]
test ecx, ecx
jne 0x10126091
movzx eax, word [ebx + 0x32]
xor edi, edi
mov dword [ebp - 0x14c], eax
jmp 0x1012612f
mov eax, dword [ebp - 0x108]
mov edx, dword [eax + 4]
test edx, edx
je 0x1012616f
mov eax, dword [ebp - 0x148]
mov dword [esp], eax
mov eax, dword [ebp - 0xdc]
call sym._sqlite3ExprCompare
test eax, eax
jne 0x1012616f
jmp 0x10126080
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 0x10126139
imul eax, edi, 0x14
add eax, dword [ebx + 0x28]
mov ecx, dword [eax + 8]
cmp byte [ecx], 0x71
je 0x101260ea
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 0x10126145
mov ecx, dword [ebp - 0x14c]
cmp dword [ebp - 0x138], ecx
jge 0x1012616f
inc edi
cmp dword [ebp - 0x14c], edi
jg 0x101260c0
jmp 0x10126161
lea edx, [ebp - 0x4c]
mov word [ebp - 0x2c], ax
mov dword [ebp - 0x74], edx
jmp 0x101260e7
inc dword [ebp - 0x138]
mov ecx, dword [ebp - 0x138]
cmp dword [ebp - 0x14c], ecx
mov ecx, dword [ebp - 0x15c]
jg 0x101260f2
jmp 0x1012616f
mov eax, dword [ebp - 0x108]
mov dword [eax + 0x1c], ebx
jmp 0x10125f52
mov ebx, dword [ebx + 0x14]
jmp 0x10126006
mov eax, dword [ebp - 0x144]
mov dword [esp + 8], 0x101ef5f9
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 0x10126038
mov eax, dword [ebp - 0x10c]
mov eax, dword [eax + 0x10]
mov dword [ebp - 0x10c], eax
test eax, eax
jne 0x10125eb4
jmp 0x10125e02
cmp dword [ebp - 0xe8], 0
je 0x10126225
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 0x10126217
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 0x10126233
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 0x1012638f
movsx eax, word [esi + 0x20]
cmp eax, edi
je 0x10126295
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 0x101262b7
inc dword [ebp - 0x13c]
test dl, 0x20
je 0x10126288
dec ebx
jmp 0x10126388
and dl, 0x40
je 0x101262ac
test ecx, ecx
je 0x10126388
mov eax, dword [ebp - 0xe0]
mov ecx, ebx
mov edx, 0x4c
call sym._sqlite3VdbeAddOp1
jmp 0x10126388
cmp dword [ebp - 0xec], 0
jne 0x101262c0
jmp 0x101262f0
cmp dword [ebp - 0xec], 0
je 0x101262dd
mov ecx, dword [ebp - 0xec]
mov edx, dword [ecx]
xor ecx, ecx
cmp edx, ecx
jle 0x101262f0
mov eax, dword [ebp - 0xec]
cmp dword [eax + ecx*8 + 0xc], edi
je 0x10126312
inc ecx
jmp 0x101262ca
mov eax, dword [ebp - 0x13c]
mov ecx, edi
sub ecx, eax
cmp dword [ebp - 0x100], 0
jne 0x10126312
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 0x10126388
cmp byte [ebp - 0x114], 0
je 0x1012633a
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 0x10126388
cmp dword [ebp - 0xe8], 0
je 0x1012636e
mov edx, dword [ebp - 0x128]
cmp dword [ebp - 0x11c], edx
je 0x10126388
mov eax, dword [ebp - 0x11c]
mov dword [esp], ebx
mov edx, 0x51
add ecx, eax
mov eax, dword [ebp - 0xe0]
call sym._sqlite3VdbeAddOp2
jmp 0x10126388
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 0x10126243
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 0x10126535
inc edx
call sym._sqlite3GetTempRange
cmp dword [ebp - 0xe4], 0
mov ebx, eax
jns 0x101263de
mov dword [esp], eax
mov eax, dword [ebp - 0xe0]
or ecx, 0xffffffff
mov edx, 0x47
call sym._sqlite3VdbeAddOp2
jmp 0x1012647b
cmp byte [ebp - 0x114], 0
je 0x1012640c
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 0x1012642a
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 0x101264c5
mov edx, dword [ebp - 0x100]
mov eax, dword [ebp - 0xdc]
mov ecx, esi
call sym._sqlite3ComputeGeneratedColumns
cmp byte [ebp - 0x13d], 2
je 0x101264e1
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 0x101268ac
cmp byte [esi + 0x2b], 1
jne 0x10126563
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 0x101266a6
cmp byte [ebp - 0x114], 0
je 0x101265a4
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 0x1012660d
cmp dword [ebp - 0xe8], 0
jne 0x1012660d
imul eax, dword [ebp - 0xe4], 0x14
mov ebx, dword [ebp - 0x104]
mov edx, dword [ebx + eax + 8]
cmp byte [edx], 0x79
jne 0x101265fc
cmp byte [esi + 0x2b], 1
je 0x101265fc
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 0x101266d6
mov ecx, dword [ebp - 0xf4]
mov eax, dword [ebp - 0xdc]
call sym._sqlite3ExprCode
cmp byte [esi + 0x2b], 1
je 0x10126663
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 0x1012668e
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 0x101266d4
cmp byte [esi + 0x2b], 1
je 0x101266b9
cmp dword [ebp - 0x150], 0
je 0x101265c9
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 0x10126701
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 0x1012671a
mov edx, dword [ebp - 0x128]
mov eax, dword [ebp - 0xdc]
mov ecx, esi
call sym._sqlite3ComputeGeneratedColumns
cmp byte [esi + 0x2b], 1
jne 0x101267a6
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 0x1012678b
movzx edx, word [ebp - 0x120]
mov eax, dword [ebp - 0xe0]
call sym._sqlite3VdbeChangeP5
mov eax, dword [ebp - 0xdc]
call sym._sqlite3MayAbort
jmp 0x101268ac
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 0x1012686e
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 0x101268d2
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 0x10126921
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 0x1012697f
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 0x101269aa
cmp dword [ebp - 0xe8], 0
je 0x101269aa
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 0x101269c1
cmp dword [eax + 0x78], 0
jne 0x101269c1
call sym._sqlite3AutoincrementEnd
cmp dword [ebp - 0x118], 0
je 0x101269fa
mov edx, dword [ebp - 0x118]
mov eax, dword [ebp - 0xe0]
mov ecx, str.rows_inserted
call sym._sqlite3CodeChangeCount
jmp 0x101269fa
xor edx, edx
mov dword [ebp - 0xf8], edx
jmp 0x101269fa
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 0x10126a3d
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