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

Disassembly:
sub esp, 0xb0
mov eax, dword [0x100bdc68]
xor eax, esp
mov dword [esp + 0xac], eax
mov ecx, dword [esp + 0xb4]
mov eax, dword [esp + 0xc0]
push ebp
mov ebp, dword [esp + 0xc0]
push esi
mov esi, dword [ecx + 8]
mov dword [esp + 0x14], eax
mov eax, dword [ecx]
mov dword [esp + 0xc], ecx
mov dword [esp + 0x2c], ebp
mov dword [esp + 8], eax
mov dword [esp + 0x40], esi
push edi
mov edi, dword [esp + 0xc4]
test esi, esi
je 0x10069636
mov dword [esp + 0x7c], esi
jmp 0x10069661
cmp dword [ecx + 0x78], 0
jne 0x10069646
test byte [eax + 0x50], 8
jne 0x10069646
mov byte [ecx + 0x17], 1
push ecx
call fcn.1007aff0
mov esi, eax
add esp, 4
mov dword [esp + 0x44], esi
mov dword [esp + 0x7c], esi
test esi, esi
je 0x1006d9e0
mov ecx, dword [esi + 0x6c]
lea eax, [esi + 0x70]
push ebx
lea ebx, [esi + 0x6c]
mov dword [esp + 0x44], eax
mov dword [esp + 0x24], ebx
cmp dword [eax], ecx
jg 0x1006968d
push 0
push 1
push 1
push 0xa6
push esi
call fcn.10031c40
add esp, 0x14
jmp 0x100696bf
lea eax, [ecx + 1]
mov dword [ebx], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [esi + 0x68]
mov dword [eax + ecx*4], 0xa6
mov dword [eax + ecx*4 + 4], 1
mov dword [eax + ecx*4 + 8], 1
mov dword [eax + ecx*4 + 0xc], 0
mov dword [eax + ecx*4 + 0x10], 0
mov eax, dword [esp + 0x14]
lea ecx, [esp + 0x20]
push ecx
push ebp
push edi
push eax
mov dword [eax + 0x2c], 2
call fcn.100775e0
mov edx, eax
add esp, 0x10
mov dword [esp + 0x38], edx
test edx, edx
js 0x1006d9df
mov ecx, dword [esp + 0x10]
shl eax, 4
mov dword [esp + 0x54], eax
mov edi, dword [ecx + 0x10]
add edi, eax
mov dword [esp + 0x6c], edi
cmp edx, 1
jne 0x10069715
push dword [esp + 0x14]
call fcn.10066870
add esp, 4
test eax, eax
jne 0x1006d9df
push dword [esp + 0x20]
push dword [esp + 0x14]
call fcn.10066220
add esp, 8
mov dword [esp + 0x30], eax
test eax, eax
je 0x1006d9df
cmp dword [esp + 0xd4], 0
push dword [esp + 0x1c]
je 0x10069752
push 0x100b6bd4
push dword [esp + 0x18]
call fcn.10065ac0
add esp, 0xc
jmp 0x1006975e
push dword [esp + 0x14]
call fcn.10066220
add esp, 8
cmp dword [ebp + 4], 0
mov dword [esp + 0x18], eax
jbe 0x1006976c
mov ebp, dword [edi]
jmp 0x1006976e
xor ebp, ebp
push ebp
push eax
push dword [esp + 0x38]
mov dword [esp + 0x48], ebp
push 0x13
push dword [esp + 0x24]
call fcn.1004a610
add esp, 0x14
test eax, eax
jne 0x1006d9b9
mov ecx, dword [esp + 0x10]
mov dword [esp + 0xac], eax
mov eax, dword [esp + 0x30]
mov dword [esp + 0xb0], eax
mov eax, dword [esp + 0x18]
mov dword [esp + 0xb4], eax
mov dword [esp + 0xb8], 0
mov eax, dword [ecx + 0xc]
mov dword [ecx + 0x1c8], 0
mov dword [esp + 0x2c], 1
test eax, eax
je 0x100697e1
push eax
call dword [0x100bc128]
mov ecx, dword [esp + 0x14]
add esp, 4
test ebp, ebp
je 0x100697fa
push ebp
push ecx
call fcn.1005b5f0
mov ebp, eax
add esp, 8
test ebp, ebp
jns 0x100697fc
jmp 0x10069885
xor ebp, ebp
mov eax, dword [esp + 0x10]
add ebp, ebp
mov eax, dword [eax + 0x10]
mov ebp, dword [eax + ebp*8 + 4]
test ebp, ebp
je 0x10069885
cmp byte [ebp + 9], 0
je 0x10069825
inc dword [ebp + 0xc]
cmp byte [ebp + 0xa], 0
jne 0x10069825
push ebp
call fcn.1001fc10
add esp, 4
mov eax, dword [ebp + 4]
mov ecx, dword [esp + 0x10]
mov eax, dword [eax]
mov ecx, dword [ecx + 0x1c8]
mov dword [esp + 0x20], ecx
mov eax, dword [eax + 0x40]
mov ecx, dword [eax]
test ecx, ecx
jne 0x1006984b
mov dword [esp + 0x2c], 0xc
jmp 0x10069862
lea edx, [esp + 0xac]
push edx
push 0xe
push eax
mov eax, dword [ecx + 0x28]
call eax
add esp, 0xc
mov dword [esp + 0x2c], eax
mov ecx, dword [esp + 0x10]
mov eax, dword [esp + 0x20]
mov dword [ecx + 0x1c8], eax
cmp byte [ebp + 9], 0
je 0x10069885
add dword [ebp + 0xc], 0xffffffff
jne 0x10069885
push ebp
call fcn.10094650
add esp, 4
mov eax, dword [esp + 0x10]
mov eax, dword [eax + 0xc]
test eax, eax
je 0x1006989a
push eax
call dword [0x100bc130]
add esp, 4
mov ebp, dword [esp + 0x2c]
test ebp, ebp
jne 0x100699a3
push 1
push esi
call fcn.10087940
push 0xffffffffffffffff
push dword [esp + 0xb8]
push ebp
push ebp
push esi
call fcn.100878f0
mov edi, dword [esp + 0xc8]
add esp, 0x1c
test edi, edi
je 0x1006d9b9
push ebp
push edi
push ebp
push 1
push ebp
push 0x75
push esi
call fcn.1007aa80
mov eax, dword [esp + 0x60]
add esp, 0x1c
mov ecx, dword [ebx]
cmp dword [eax], ecx
jg 0x100698fe
push ebp
push 1
push 1
push 0x54
push esi
call fcn.10031c40
add esp, 0x14
jmp 0x10069930
lea eax, [ecx + 1]
mov dword [ebx], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [esi + 0x68]
mov dword [eax + ecx*4], 0x54
mov dword [eax + ecx*4 + 4], 1
mov dword [eax + ecx*4 + 8], 1
mov dword [eax + ecx*4 + 0xc], 0
mov dword [eax + ecx*4 + 0x10], 0
mov edi, dword [esp + 0xac]
test edi, edi
je 0x1006d9b9
cmp dword [0x100bc0d8], 0
je 0x10069994
mov eax, dword [0x100bdd58]
test eax, eax
je 0x1006995b
push eax
call dword [0x100bc128]
add esp, 4
push edi
call dword [0x100bc104]
sub dword [0x100bdcf8], eax
dec dword [0x100bdd1c]
push edi
call dword [0x100bc0fc]
mov eax, dword [0x100bdd58]
add esp, 8
test eax, eax
je 0x1006d9b9
push eax
call dword [0x100bc130]
add esp, 4
jmp 0x1006d9b9
push edi
call dword [0x100bc0fc]
add esp, 4
jmp 0x1006d9b9
cmp ebp, 0xc
je 0x10069a4c
mov eax, dword [esp + 0xac]
test eax, eax
je 0x10069a3d
push eax
push 0x100b3c00
push dword [esp + 0x1c]
call fcn.10055e80
mov esi, dword [esp + 0xb8]
add esp, 0xc
test esi, esi
je 0x10069a3d
cmp dword [0x100bc0d8], 0
je 0x10069a33
mov eax, dword [0x100bdd58]
test eax, eax
je 0x100699f4
push eax
call dword [0x100bc128]
add esp, 4
push esi
call dword [0x100bc104]
sub dword [0x100bdcf8], eax
dec dword [0x100bdd1c]
push esi
call dword [0x100bc0fc]
mov eax, dword [0x100bdd58]
add esp, 8
test eax, eax
je 0x10069a3d
push eax
call dword [0x100bc130]
mov eax, dword [esp + 0x18]
add esp, 4
inc dword [eax + 0x24]
mov dword [eax + 0xc], ebp
jmp 0x1006d9b9
push esi
call dword [0x100bc0fc]
add esp, 4
mov eax, dword [esp + 0x14]
inc dword [eax + 0x24]
mov dword [eax + 0xc], ebp
jmp 0x1006d9b9
push dword [esp + 0x30]
call fcn.1003f990
mov ebp, eax
add esp, 4
mov dword [esp + 0x78], ebp
test ebp, ebp
je 0x1006d9b9
test byte [ebp + 5], 1
je 0x10069a80
push dword [esp + 0x14]
call fcn.1006ec60
add esp, 4
test eax, eax
jne 0x1006d9b9
mov al, byte [ebp + 5]
test al, 2
jne 0x10069a9d
test al, 4
je 0x10069a93
mov edx, dword [esp + 0x18]
test edx, edx
jne 0x10069aa1
push ebp
push esi
call fcn.100475a0
add esp, 8
mov edx, dword [esp + 0x18]
movzx eax, byte [ebp + 4]
dec eax
cmp eax, 0x2a
ja case.0x10069aaf.5
jmp dword [eax*4 + 0x1006d9f8]
mov ebx, dword [esp + 0x38]
push ebx
push esi
call fcn.10088200
mov eax, dword [esp + 0x20]
add esp, 8
test eax, eax
jne 0x10069b05
mov eax, dword [esp + 0x14]
push 0
push 0x100ad460
push 9
add dword [eax + 0x2c], 2
push esi
call fcn.1007ab90
push dword [esp + 0x40]
push dword [esp + 0x24]
mov dword [eax + 4], ebx
mov dword [eax + 0x18], ebx
mov dword [eax + 0x7c], 0xfffff830
call fcn.10053c30
add esp, 0x18
jmp 0x1006d9df
lea ecx, [esp + 0x1c]
mov dword [esp + 0x1c], 0
push ecx
push eax
call fcn.10060f70
push dword [esp + 0x24]
call fcn.10047a20
push ebx
push 0
push dword [esp + 0x28]
mov edi, eax
call fcn.1004b0d0
push edi
push 3
push ebx
push 0x64
push esi
call fcn.1007aa20
mov ecx, dword [esp + 0x98]
mov eax, dword [ecx + 0xc]
mov dword [eax + 0x50], edi
mov eax, dword [ecx + 0xc]
push dword [eax + 0x50]
push dword [ecx + 4]
call fcn.1004e950
push dword [esp + 0x64]
push dword [esp + 0x48]
call fcn.10053c30
mov eax, dword [esp + 0x54]
add esp, 0x3c
jmp 0x1006d9d2
mov edi, dword [edi + 4]
test edx, edx
jne 0x10069bbe
test edi, edi
je 0x10069b9e
mov eax, dword [edi + 4]
mov eax, dword [eax + 0x24]
cdq
push edx
push eax
push esi
call fcn.10044f30
push dword [esp + 0x3c]
push dword [esp + 0x20]
call fcn.10053c30
add esp, 0x14
jmp 0x1006d9df
xor eax, eax
cdq
push edx
push eax
push esi
call fcn.10044f30
push dword [esp + 0x3c]
push dword [esp + 0x20]
call fcn.10053c30
add esp, 0x14
jmp 0x1006d9df
lea eax, [esp + 0x1c]
mov dword [esp + 0x1c], 0
push eax
push edx
call fcn.10060f70
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x18]
push 0
push 0
push eax
push edi
mov dword [ecx + 0x64], eax
call fcn.1004e9f0
add esp, 0x18
cmp eax, 7
jne 0x1006d9b9
mov edi, dword [esp + 0x10]
push edi
call fcn.100664c0
push dword [esp + 0x34]
push edi
call fcn.10053c30
mov eax, dword [esp + 0x24]
add esp, 0xc
jmp 0x1006d9d2
mov eax, dword [edi + 4]
or ecx, 0xffffffff
mov dword [esp + 0x20], eax
mov dword [esp + 0x40], ecx
test edx, edx
je 0x10069c51
push str.fast
push edx
call fcn.100762a0
add esp, 8
test eax, eax
jne 0x10069c3c
lea ecx, [eax + 2]
jmp 0x10069c4d
push 0
push dword [esp + 0x1c]
call fcn.10060d10
add esp, 8
movzx ecx, al
mov dword [esp + 0x40], ecx
mov eax, dword [esp + 0x34]
cmp dword [eax + 4], 0
jne 0x10069cec
test ecx, ecx
js 0x10069cec
mov eax, dword [esp + 0x10]
xor ebx, ebx
cmp dword [eax + 0x14], ebx
jle 0x10069cec
mov esi, dword [esp + 0x40]
xor ebp, ebp
mov ecx, 0xfff3
nop dword [eax]
mov eax, dword [eax + 0x10]
mov edi, dword [eax + ebp + 4]
test edi, edi
je 0x10069cd7
cmp byte [edi + 9], 0
je 0x10069ca8
inc dword [edi + 0xc]
cmp byte [edi + 0xa], 0
jne 0x10069ca8
push edi
call fcn.1001fc10
add esp, 4
mov ecx, 0xfff3
mov eax, dword [edi + 4]
and word [eax + 0x18], cx
lea eax, [esi*4]
mov ecx, dword [edi + 4]
or word [ecx + 0x18], ax
cmp byte [edi + 9], 0
je 0x10069cd2
add dword [edi + 0xc], 0xffffffff
jne 0x10069cd2
push edi
call fcn.10094650
add esp, 4
mov ecx, 0xfff3
mov eax, dword [esp + 0x10]
inc ebx
add ebp, 0x10
cmp ebx, dword [eax + 0x14]
jl 0x10069c80
mov esi, dword [esp + 0x48]
mov ecx, dword [esp + 0x40]
push ecx
push dword [esp + 0x24]
call fcn.1004e860
cdq
push edx
push eax
push esi
call fcn.10044f30
add esp, 0x14
jmp 0x1006d9b9
mov ebp, dword [esp + 0x38]
xorps xmm0, xmm0
mov ebx, dword [esp + 0x14]
push ebp
push ebx
movlpd qword [esp + 0xa8], xmm0
call fcn.10050d00
mov eax, dword [esp + 0x38]
add esp, 8
inc dword [ebx + 0x2c]
mov edi, dword [ebx + 0x2c]
movzx eax, byte [eax]
cmp byte [eax + 0x100b0f70], 0x70
jne 0x10069d5e
push edi
push ebp
push 0xb1
push esi
call fcn.1007a9c0
add esp, 0x10
push 1
push edi
push 0x54
push esi
call fcn.1007a9c0
add esp, 0x10
jmp 0x1006d9b9
mov eax, dword [esp + 0x18]
test eax, eax
je 0x10069db0
lea ecx, [esp + 0xa0]
push ecx
push eax
call fcn.100540a0
add esp, 8
test eax, eax
jne 0x10069db0
mov ecx, dword [esp + 0xa4]
mov eax, dword [esp + 0xa0]
test ecx, ecx
jg 0x10069d9e
jl 0x10069db0
test eax, eax
jb 0x10069db0
test ecx, ecx
jl 0x10069dc3
jg 0x10069d9e
cmp eax, 0xfffffffe
jbe 0x10069dc3
mov eax, 0xfffffffe
mov dword [esp + 0xa4], 0
jmp 0x10069dc3
xorps xmm0, xmm0
movlpd qword [esp + 0xa0], xmm0
mov eax, dword [esp + 0xa0]
push eax
push edi
push ebp
push 0xb2
push esi
call fcn.1007aa20
add esp, 0x14
push 1
push edi
push 0x54
push esi
call fcn.1007a9c0
add esp, 0x10
jmp 0x1006d9b9
test edx, edx
je 0x10069e1b
push str.exclusive
push edx
call fcn.100762a0
add esp, 8
test eax, eax
jne 0x10069e02
lea ecx, [eax + 1]
jmp 0x10069e1e
push str.normal
push dword [esp + 0x1c]
call fcn.100762a0
add esp, 8
test eax, eax
jne 0x10069e1b
xor ecx, ecx
jmp 0x10069e1e
or ecx, 0xffffffff
mov eax, dword [esp + 0x34]
cmp dword [eax + 4], 0
jne 0x10069e8d
mov eax, dword [esp + 0x10]
cmp ecx, 0xffffffff
jne 0x10069e37
movzx eax, byte [eax + 0x59]
jmp 0x10069e9e
mov edx, 2
cmp dword [eax + 0x14], edx
jle 0x10069e8a
mov ebx, 0x20
mov edi, eax
nop dword [eax + eax]
mov eax, dword [edi + 0x10]
mov eax, dword [ebx + eax + 4]
mov eax, dword [eax + 4]
mov eax, dword [eax]
test ecx, ecx
js 0x10069e79
cmp byte [eax + 0xc], 0
jne 0x10069e79
mov ebp, dword [eax + 0xe8]
test ebp, ebp
je 0x10069e76
cmp byte [ebp + 0x2b], 2
je 0x10069e79
mov byte [eax + 4], cl
inc edx
add ebx, 0x10
cmp edx, dword [edi + 0x14]
jl 0x10069e50
mov edi, dword [esp + 0x6c]
mov eax, dword [esp + 0x10]
mov byte [eax + 0x59], cl
mov eax, dword [edi + 4]
push ecx
mov eax, dword [eax + 4]
push dword [eax]
call fcn.10067200
add esp, 8
cmp eax, 1
mov edx, str.exclusive
mov ecx, str.normal
cmove ecx, edx
push ecx
push esi
call fcn.10044fc0
add esp, 8
jmp 0x1006d9b9
test edx, edx
je 0x10069f5b
mov ecx, edx
lea edx, [ecx + 1]
nop word [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10069ed0
sub ecx, edx
and ecx, 0x3fffffff
xor ebp, ebp
mov dword [esp + 0x20], ecx
cmp ebp, 6
je 0x10069f5b
mov edi, dword [ebp*4 + 0x100ad448]
test edi, edi
je 0x10069f5b
mov ebx, dword [esp + 0x18]
mov edx, ecx
test ecx, ecx
je 0x10069f21
nop
mov al, byte [ebx]
dec edx
test al, al
je 0x10069f22
movzx ecx, byte [edi]
movzx eax, al
mov al, byte [eax + 0x100b0f70]
cmp al, byte [ecx + 0x100b0f70]
jne 0x10069f22
inc ebx
inc edi
test edx, edx
jg 0x10069f00
dec edx
test edx, edx
js 0x10069f45
movzx eax, byte [ebx]
movzx ecx, byte [eax + 0x100b0f70]
movzx eax, byte [edi]
movzx eax, byte [eax + 0x100b0f70]
sub ecx, eax
je 0x10069f45
mov ecx, dword [esp + 0x20]
inc ebp
jmp 0x10069ee5
cmp ebp, 2
jne 0x10069f77
mov eax, dword [esp + 0x10]
mov eax, dword [eax + 0x20]
and eax, 0x10000000
or eax, 0
je 0x10069f7c
or ebp, 0xffffffff
mov ecx, dword [esp + 0x34]
cmp dword [ecx + 4], 0
jne 0x10069f80
xor edx, edx
mov dword [ecx + 4], 1
mov dword [esp + 0x38], edx
jmp 0x10069f84
cmp ebp, 0xffffffff
je 0x10069f5e
mov ecx, dword [esp + 0x34]
mov edx, dword [esp + 0x38]
mov eax, dword [esp + 0x10]
mov edi, dword [eax + 0x14]
sub edi, 1
js 0x1006a04b
mov ebx, edi
shl ebx, 4
nop dword [eax]
mov eax, dword [eax + 0x10]
cmp dword [ebx + eax + 4], 0
je 0x1006a033
cmp edi, edx
je 0x10069fb8
cmp dword [ecx + 4], 0
jne 0x1006a033
mov eax, dword [esi + 0x9c]
bts eax, edi
mov dword [esi + 0x9c], eax
cmp edi, 1
je 0x10069fea
mov eax, dword [esi]
mov eax, dword [eax + 0x10]
mov eax, dword [eax + ebx + 4]
cmp byte [eax + 9], 0
je 0x10069fea
mov eax, dword [esi + 0xa0]
bts eax, edi
mov dword [esi + 0xa0], eax
mov ecx, dword [esp + 0x24]
mov eax, dword [esp + 0x44]
mov edx, dword [ecx]
cmp dword [eax], edx
jg 0x1006a009
push ebp
push 1
push edi
push 4
push esi
call fcn.10031c40
add esp, 0x14
jmp 0x1006a033
lea eax, [edx + 1]
mov dword [ecx], eax
lea ecx, [edx + edx*4]
mov eax, dword [esi + 0x68]
mov dword [eax + ecx*4], 4
mov dword [eax + ecx*4 + 4], edi
mov dword [eax + ecx*4 + 8], 1
mov dword [eax + ecx*4 + 0xc], ebp
mov dword [eax + ecx*4 + 0x10], 0
mov ecx, dword [esp + 0x34]
sub ebx, 0x10
sub edi, 1
mov eax, dword [esp + 0x10]
mov edx, dword [esp + 0x38]
jns 0x10069fa0
push 1
push 1
push 0x54
push esi
call fcn.1007a9c0
add esp, 0x10
jmp 0x1006d9b9
mov eax, dword [edi + 4]
or ecx, 0xffffffff
mov dword [esp + 0xa4], ecx
mov eax, dword [eax + 4]
mov edi, dword [eax]
mov eax, 0xfffffffe
mov dword [esp + 0xa0], eax
test edx, edx
je 0x1006a0ba
lea eax, [esp + 0xa0]
push eax
push edx
call fcn.100540a0
mov ecx, dword [esp + 0xac]
add esp, 8
cmp ecx, 0xffffffff
jg 0x1006a0b3
jl 0x1006a0ac
mov eax, dword [esp + 0xa0]
cmp eax, 0xffffffff
jae 0x1006a0ba
or eax, 0xffffffff
or ecx, eax
jmp 0x1006a0ba
mov eax, dword [esp + 0xa0]
cmp ecx, 0xffffffff
jl 0x1006a0e2
jg 0x1006a0c6
cmp eax, 0xffffffff
jb 0x1006a0e2
mov edx, dword [edi + 0xe8]
mov dword [edi + 0xb0], eax
mov dword [edi + 0xb4], ecx
test edx, edx
je 0x1006a0e2
mov dword [edx + 0x10], eax
mov dword [edx + 0x14], ecx
push dword [edi + 0xb4]
push dword [edi + 0xb0]
jmp 0x1006d9b0
mov edi, dword [edi + 4]
test edx, edx
jne 0x1006a11e
push edi
call fcn.1004caa0
cdq
push edx
push eax
push esi
call fcn.10044f30
push dword [esp + 0x40]
push dword [esp + 0x24]
call fcn.10053c30
add esp, 0x18
jmp 0x1006d9df
push str.none
push edx
call fcn.100762a0
add esp, 8
test eax, eax
je 0x1006a18e
mov ebp, dword [esp + 0x18]
push str.full
push ebp
call fcn.100762a0
add esp, 8
test eax, eax
jne 0x1006a14d
mov eax, 1
jmp 0x1006a18e
push str.incremental
push ebp
call fcn.100762a0
add esp, 8
test eax, eax
jne 0x1006a166
mov eax, 2
jmp 0x1006a18e
lea eax, [esp + 0x1c]
mov dword [esp + 0x1c], 0
push eax
push ebp
call fcn.10060f70
mov eax, dword [esp + 0x24]
xor edx, edx
add esp, 8
movzx ecx, al
cmp eax, 2
cmova ecx, edx
movzx eax, cl
mov ecx, dword [esp + 0x10]
push eax
push edi
mov dword [esp + 0x48], eax
mov byte [ecx + 0x5a], al
call fcn.1004e8d0
add esp, 8
test eax, eax
jne 0x1006d9b9
mov ebp, dword [esp + 0x40]
cmp ebp, 1
je 0x1006a1bd
cmp ebp, 2
jne 0x1006d9b9
mov edi, dword [ebx]
push 0
push 0x100ad48c
push 5
push esi
call fcn.1007ab90
mov edx, dword [esp + 0x48]
lea ecx, [edi + 4]
push edx
push esi
mov dword [eax + 0x30], ecx
lea ecx, [ebp - 1]
mov dword [eax + 4], edx
mov dword [eax + 0x18], edx
mov dword [eax + 0x54], edx
mov dword [eax + 0x5c], ecx
call fcn.10088200
push dword [esp + 0x48]
push dword [esp + 0x2c]
call fcn.10053c30
mov eax, dword [esp + 0x38]
add esp, 0x20
jmp 0x1006d9d2
mov dword [esp + 0x1c], 0
test edx, edx
je 0x1006a22d
lea eax, [esp + 0x1c]
push eax
push edx
call fcn.10060f70
add esp, 8
test eax, eax
je 0x1006a22d
mov edi, dword [esp + 0x1c]
test edi, edi
jg 0x1006a232
mov edi, 0x7fffffff
mov ebx, dword [esp + 0x38]
push ebx
push 0
push dword [esp + 0x1c]
call fcn.1004b0d0
push 1
push edi
push 0x47
push esi
call fcn.1007a9c0
push ebx
push 0x3e
push esi
call fcn.1007a960
push 1
push 0x54
push esi
mov edi, eax
call fcn.1007a960
push 0xffffffffffffffff
push 1
push 0x56
push esi
call fcn.1007a9c0
add esp, 0x44
push edi
push 1
push 0x3b
push esi
call fcn.1007a9c0
push edi
push esi
call fcn.10084d50
add esp, 0x18
jmp 0x1006d9b9
test edx, edx
jne 0x1006a2b3
mov eax, dword [edi + 0xc]
mov eax, dword [eax + 0x50]
cdq
push edx
push eax
push esi
call fcn.10044f30
push dword [esp + 0x3c]
push dword [esp + 0x20]
call fcn.10053c30
add esp, 0x14
jmp 0x1006d9df
lea eax, [esp + 0x1c]
mov dword [esp + 0x1c], 0
push eax
push edx
call fcn.10060f70
mov ecx, dword [edi + 0xc]
mov eax, dword [esp + 0x24]
mov dword [ecx + 0x50], eax
mov eax, dword [edi + 0xc]
push dword [eax + 0x50]
push dword [edi + 4]
call fcn.1004e950
push dword [esp + 0x40]
push dword [esp + 0x24]
call fcn.10053c30
mov eax, dword [esp + 0x30]
add esp, 0x18
jmp 0x1006d9d2
test edx, edx
jne 0x1006a324
mov ebx, dword [esp + 0x10]
mov eax, dword [ebx + 0x20]
and eax, 0x20
or eax, edx
jne 0x1006a310
cdq
push edx
jmp 0x1006a8ff
push 0
push dword [edi + 4]
call fcn.1004ebc0
add esp, 8
cdq
push edx
jmp 0x1006a8ff
lea eax, [esp + 0x1c]
mov dword [esp + 0x1c], 1
push eax
push edx
call fcn.10060f70
mov esi, dword [esp + 0x24]
add esp, 8
test eax, eax
je 0x1006a34e
push esi
push dword [edi + 4]
call fcn.1004ebc0
add esp, 8
test esi, esi
setne al
movzx eax, al
push eax
push dword [esp + 0x1c]
call fcn.10060d10
mov edx, dword [esp + 0x18]
add esp, 8
mov ecx, dword [edx + 0x20]
mov edx, dword [edx + 0x24]
test al, al
je 0x1006a376
or ecx, 0x20
jmp 0x1006a379
and ecx, 0xffffffdf
mov eax, dword [esp + 0x10]
push eax
mov dword [eax + 0x20], ecx
mov dword [eax + 0x24], edx
call fcn.100472a0
push dword [esp + 0x34]
push dword [esp + 0x18]
call fcn.10053c30
mov eax, dword [esp + 0x24]
add esp, 0xc
jmp 0x1006d9d2
test edx, edx
je 0x1006a4c3
lea eax, [esp + 0xa0]
push eax
push edx
call fcn.100540a0
add esp, 8
cmp dword [esp + 0xa4], 0
jg 0x1006a3ea
jl 0x1006a3d1
cmp dword [esp + 0xa0], 0
jae 0x1006a3ea
mov eax, dword [0x100bc180]
mov ecx, dword [0x100bc184]
mov dword [esp + 0xa0], eax
mov dword [esp + 0xa4], ecx
mov eax, dword [esp + 0x34]
mov edx, dword [esp + 0x10]
cmp dword [eax + 4], 0
jne 0x1006a40c
mov eax, dword [esp + 0xa0]
mov ecx, dword [esp + 0xa4]
mov dword [edx + 0x30], eax
mov dword [edx + 0x34], ecx
mov ebx, dword [edx + 0x14]
sub ebx, 1
js 0x1006a4c3
mov esi, dword [esp + 0x34]
mov ebp, ebx
shl ebp, 4
mov eax, dword [edx + 0x10]
mov edi, dword [eax + ebp + 4]
test edi, edi
je 0x1006a4b3
cmp ebx, dword [esp + 0x38]
je 0x1006a43c
cmp dword [esi + 4], 0
jne 0x1006a4b3
cmp byte [edi + 9], 0
mov eax, dword [esp + 0xa0]
mov dword [esp + 0x70], eax
mov eax, dword [esp + 0xa4]
mov dword [esp + 0x84], eax
mov eax, dword [edi + 4]
mov dword [esp + 0x20], eax
je 0x1006a478
inc dword [edi + 0xc]
cmp byte [edi + 0xa], 0
jne 0x1006a478
push edi
call fcn.1001fc10
mov eax, dword [esp + 0x24]
add esp, 4
mov eax, dword [eax]
mov ecx, dword [esp + 0x70]
push eax
mov dword [eax + 0x88], ecx
mov ecx, dword [esp + 0x88]
mov dword [eax + 0x8c], ecx
call fcn.1003b640
add esp, 4
cmp byte [edi + 9], 0
je 0x1006a4af
add dword [edi + 0xc], 0xffffffff
jne 0x1006a4af
push edi
call fcn.10094650
add esp, 4
mov edx, dword [esp + 0x10]
sub ebp, 0x10
sub ebx, 1
jns 0x1006a421
mov esi, dword [esp + 0x48]
mov ecx, dword [esp + 0x10]
mov ebx, 1
mov dword [esp + 0xa0], 0xffffffff
mov dword [esp + 0xa4], 0xffffffff
mov eax, dword [ecx + 0xc]
test eax, eax
je 0x1006a4f7
push eax
call dword [0x100bc128]
mov ecx, dword [esp + 0x14]
add esp, 4
mov eax, dword [esp + 0x3c]
test eax, eax
je 0x1006a514
push eax
push ecx
call fcn.1005b5f0
mov edi, eax
add esp, 8
test edi, edi
jns 0x1006a516
jmp 0x1006a590
xor edi, edi
mov eax, dword [esp + 0x10]
add edi, edi
mov eax, dword [eax + 0x10]
mov edi, dword [eax + edi*8 + 4]
test edi, edi
je 0x1006a590
cmp byte [edi + 9], 0
je 0x1006a53f
inc dword [edi + 0xc]
cmp byte [edi + 0xa], 0
jne 0x1006a53f
push edi
call fcn.1001fc10
add esp, 4
mov eax, dword [edi + 4]
mov ecx, dword [esp + 0x10]
mov eax, dword [eax]
mov ebp, dword [ecx + 0x1c8]
mov eax, dword [eax + 0x40]
mov ecx, dword [eax]
test ecx, ecx
jne 0x1006a55c
lea ebx, [ecx + 0xc]
jmp 0x1006a571
lea edx, [esp + 0xa0]
push edx
push 0x12
push eax
mov eax, dword [ecx + 0x28]
call eax
add esp, 0xc
mov ebx, eax
mov eax, dword [esp + 0x10]
mov dword [eax + 0x1c8], ebp
cmp byte [edi + 9], 0
je 0x1006a594
add dword [edi + 0xc], 0xffffffff
jne 0x1006a594
push edi
call fcn.10094650
add esp, 4
mov eax, dword [esp + 0x10]
mov eax, dword [eax + 0xc]
test eax, eax
je 0x1006a5a5
push eax
call dword [0x100bc130]
add esp, 4
test ebx, ebx
jne 0x1006a5bc
push dword [esp + 0xa4]
push dword [esp + 0xa4]
jmp 0x1006d9b0
mov ebp, dword [esp + 0x10]
cmp ebx, 0xc
je 0x1006d9bd
mov eax, dword [esp + 0x14]
inc dword [eax + 0x24]
mov dword [eax + 0xc], ebx
jmp 0x1006d9bd
test edx, edx
jne 0x1006a5eb
mov ebx, dword [esp + 0x10]
movzx eax, byte [ebx + 0x56]
cdq
push edx
jmp 0x1006a8ff
mov cl, byte [edx]
mov al, cl
sub al, 0x30
cmp al, 2
ja 0x1006a5fd
movsx ebx, cl
sub ebx, 0x30
jmp 0x1006a62f
push str.file
push edx
call fcn.100762a0
add esp, 8
test eax, eax
jne 0x1006a614
lea ebx, [eax + 1]
jmp 0x1006a62f
push str.memory
push dword [esp + 0x1c]
call fcn.100762a0
add esp, 8
neg eax
sbb ebx, ebx
and ebx, 0xfffffffe
add ebx, 2
mov ecx, dword [esp + 0x14]
mov esi, dword [ecx]
movzx eax, byte [esi + 0x56]
cmp eax, ebx
je 0x1006d9b9
push ecx
call fcn.10032d60
add esp, 4
test eax, eax
jne 0x1006d9b9
mov byte [esi + 0x56], bl
jmp 0x1006a7c3
cmp byte [0x100bc0dc], 0
je 0x1006a67c
push 0xb
call dword [0x100bc120]
add esp, 4
test eax, eax
je 0x1006a67c
push eax
call dword [0x100bc128]
add esp, 4
mov ecx, dword [esp + 0x18]
test ecx, ecx
jne 0x1006a698
push dword [sym.sqlite3.dll_sqlite3_temp_directory]
push esi
call fcn.10044fc0
add esp, 8
jmp 0x1006a712
cmp byte [ecx], 0
je 0x1006a6c6
mov eax, dword [esp + 0x10]
lea edx, [esp + 0x20]
push edx
push 1
push ecx
mov eax, dword [eax]
push eax
mov eax, dword [eax + 0x20]
call eax
add esp, 0x10
test eax, eax
jne 0x1006a790
cmp dword [esp + 0x20], eax
je 0x1006a790
mov eax, dword [esp + 0x10]
cmp byte [eax + 0x56], 1
ja 0x1006a6dc
push dword [esp + 0x14]
call fcn.10032d60
add esp, 4
push dword [sym.sqlite3.dll_sqlite3_temp_directory]
call sym.sqlite3.dll_sqlite3_free
mov eax, dword [esp + 0x1c]
add esp, 4
cmp byte [eax], 0
je 0x1006a708
push eax
push 0x100b3c00
call sym.sqlite3.dll_sqlite3_mprintf
add esp, 8
mov dword [sym.sqlite3.dll_sqlite3_temp_directory], eax
jmp 0x1006a712
mov dword [sym.sqlite3.dll_sqlite3_temp_directory], 0
cmp byte [0x100bc0dc], 0
je 0x1006d9b9
push 0xb
call dword [0x100bc120]
add esp, 4
jmp 0x1006997d
cmp byte [0x100bc0dc], 0
je 0x1006a751
push 0xb
call dword [0x100bc120]
add esp, 4
test eax, eax
je 0x1006a751
push eax
call dword [0x100bc128]
add esp, 4
mov ecx, dword [esp + 0x18]
test ecx, ecx
jne 0x1006a76a
push dword [sym.sqlite3.dll_sqlite3_data_directory]
push esi
call fcn.10044fc0
add esp, 8
jmp 0x1006a712
cmp byte [ecx], 0
je 0x1006a7dc
mov eax, dword [esp + 0x10]
lea edx, [esp + 0x20]
push edx
push 1
push ecx
mov eax, dword [eax]
push eax
mov eax, dword [eax + 0x20]
call eax
add esp, 0x10
test eax, eax
jne 0x1006a790
cmp dword [esp + 0x20], eax
jne 0x1006a7dc
push str.not_a_writable_directory
push dword [esp + 0x18]
call fcn.10055e80
add esp, 8
cmp byte [0x100bc0dc], 0
je 0x1006a7c3
push 0xb
call dword [0x100bc120]
add esp, 4
test eax, eax
je 0x1006a7c3
push eax
call dword [0x100bc130]
add esp, 4
push dword [esp + 0x30]
push dword [esp + 0x14]
call fcn.10053c30
mov eax, dword [esp + 0x20]
add esp, 8
jmp 0x1006d9d2
push dword [sym.sqlite3.dll_sqlite3_data_directory]
call sym.sqlite3.dll_sqlite3_free
mov eax, dword [esp + 0x1c]
add esp, 4
cmp byte [eax], 0
je 0x1006a80b
push eax
push 0x100b3c00
call sym.sqlite3.dll_sqlite3_mprintf
add esp, 8
mov dword [sym.sqlite3.dll_sqlite3_data_directory], eax
jmp 0x1006a712
mov dword [sym.sqlite3.dll_sqlite3_data_directory], 0
jmp 0x1006a712
test edx, edx
jne 0x1006a846
movzx eax, byte [edi + 8]
cdq
sub eax, 1
sbb edx, 0
push edx
push eax
push esi
call fcn.10044f30
push dword [esp + 0x3c]
push dword [esp + 0x20]
call fcn.10053c30
add esp, 0x14
jmp 0x1006d9df
mov ebp, dword [esp + 0x10]
cmp byte [ebp + 0x55], 0
jne 0x1006a874
push str.Safety_level_may_not_be_changed_inside_a_transaction
push dword [esp + 0x18]
call fcn.10055e80
push dword [esp + 0x38]
push ebp
call fcn.10053c30
mov eax, dword [esp + 0x28]
add esp, 0x10
jmp 0x1006d9d2
cmp dword [esp + 0x38], 1
je 0x1006d9bd
push 1
push 0
push edx
call fcn.10031b00
inc eax
mov ecx, 1
and eax, 7
mov byte [edi + 9], cl
cmove eax, ecx
mov byte [edi + 8], al
mov edi, ebp
push edi
call fcn.100472a0
push dword [esp + 0x40]
push edi
call fcn.10053c30
mov eax, dword [esp + 0x30]
add esp, 0x18
jmp 0x1006d9d2
test edx, edx
jne 0x1006a918
push ebp
push esi
call fcn.100475a0
mov ebx, dword [esp + 0x18]
add esp, 8
mov ecx, dword [ebx + 0x20]
mov eax, dword [ebx + 0x24]
and ecx, dword [ebp + 8]
and eax, dword [ebp + 0xc]
or ecx, eax
je 0x1006a8e4
mov eax, 1
xor ecx, ecx
jmp 0x1006a8fe
xorps xmm0, xmm0
movlpd qword [esp + 0xa0], xmm0
mov ecx, dword [esp + 0xa4]
mov eax, dword [esp + 0xa0]
push ecx
push eax
push esi
call fcn.10044f30
push dword [esp + 0x3c]
push ebx
call fcn.10053c30
add esp, 0x14
jmp 0x1006d9df
mov eax, dword [esp + 0x10]
mov edi, dword [ebp + 8]
mov ebx, dword [ebp + 0xc]
cmp byte [eax + 0x55], 0
jne 0x1006a92e
and edi, 0xffffbfff
push 0
push edx
call fcn.10060d10
mov ecx, dword [esp + 0x18]
add esp, 8
mov edx, dword [ecx + 0x20]
mov ebp, dword [ecx + 0x24]
test al, al
je 0x1006a953
or edx, edi
or ebp, ebx
mov dword [ecx + 0x20], edx
mov dword [ecx + 0x24], ebp
jmp 0x1006a9ac
mov ecx, edi
mov eax, ebx
not ecx
not eax
and ecx, edx
and eax, ebp
mov edx, dword [esp + 0x10]
mov dword [edx + 0x20], ecx
mov dword [edx + 0x24], eax
cmp edi, 0x80000
jne 0x1006a983
test ebx, ebx
jne 0x1006a983
mov dword [edx + 0x208], ebx
mov dword [edx + 0x20c], ebx
jmp 0x1006a9ac
and edi, 1
or edi, 0
je 0x1006a9ac
push str.reset
push dword [esp + 0x1c]
call fcn.100762a0
add esp, 8
test eax, eax
jne 0x1006a9ac
push dword [esp + 0x10]
call fcn.1006f780
add esp, 4
push 0xa6
push esi
call fcn.1007a910
mov esi, dword [esp + 0x18]
push esi
call fcn.100472a0
push dword [esp + 0x3c]
push esi
call fcn.10053c30
mov eax, dword [esp + 0x2c]
add esp, 0x14
jmp 0x1006d9d2
test edx, edx
je 0x1006d9b9
mov ebx, dword [esp + 0x3c]
push ebx
push dword [esp + 0x18]
call fcn.10050c80
push ebx
push dword [esp + 0x24]
mov ebx, dword [esp + 0x24]
push 2
push ebx
call fcn.10065510
mov edi, eax
add esp, 0x18
mov dword [esp + 0x60], edi
test edi, edi
je 0x1006d9b9
push edi
mov dword [esp + 0x60], 0
call fcn.1006e190
push edi
push ebx
mov dword [esp + 0x2c], eax
mov dword [ebx + 0x2c], 7
call fcn.100882f0
movzx eax, word [edi + 0x22]
xor ecx, ecx
mov ebx, dword [edi + 4]
xor edx, edx
add esp, 0xc
mov dword [esp + 0x40], ecx
cmp dx, ax
jge 0x1006d9b9
mov dword [esp + 0x7c], eax
nop
movzx edx, word [ebx + 0xe]
xor edi, edi
mov esi, edx
mov dword [esp + 0x84], esi
mov esi, dword [esp + 0x48]
test dl, 0x62
je 0x1006aa95
mov eax, dword [ebp + 8]
or eax, dword [ebp + 0xc]
jne 0x1006aa79
inc dword [esp + 0x5c]
jmp 0x1006abbe
mov eax, dword [esp + 0x7c]
test dl, 0x20
je 0x1006aa89
mov edi, 2
jmp 0x1006aa95
movzx edi, dl
and edi, 0x40
or edi, 0x20
shr edi, 5
test dl, 1
jne 0x1006aa9e
xor edx, edx
jmp 0x1006aad5
mov ecx, dword [esp + 0x20]
mov edx, 1
test ecx, ecx
je 0x1006aad5
cwde
mov dword [esp + 0x70], eax
cmp eax, edx
jl 0x1006aad5
mov ecx, dword [ecx + 4]
mov ebp, eax
nop dword [eax]
movsx eax, word [ecx]
cmp eax, dword [esp + 0x40]
je 0x1006aad1
inc edx
add ecx, 2
cmp edx, ebp
jle 0x1006aac0
mov ebp, dword [esp + 0x78]
movzx eax, word [ebx + 0xc]
test ax, ax
jne 0x1006aae2
xor eax, eax
jmp 0x1006ab0a
mov ecx, dword [esp + 0x60]
cmp byte [ecx + 0x2b], 0
je 0x1006aaf0
xor eax, eax
jmp 0x1006ab0a
mov ecx, dword [ecx + 0x34]
test ecx, ecx
jne 0x1006aafb
xor eax, eax
jmp 0x1006ab0a
cmp dword [ecx], eax
jge 0x1006ab03
xor eax, eax
jmp 0x1006ab0a
lea eax, [eax + eax*4]
mov eax, dword [ecx + eax*4 - 0xc]
cmp edi, 2
jae 0x1006ab1c
test eax, eax
je 0x1006ab1c
mov ecx, dword [eax + 8]
mov dword [esp + 0x1c], ecx
jmp 0x1006ab24
mov dword [esp + 0x1c], 0
mov eax, dword [ebp + 8]
or eax, dword [ebp + 0xc]
mov dword [esp + 0x6c], str.issisii
jne 0x1006ab3c
mov dword [esp + 0x6c], str.issisi
test byte [esp + 0x84], 4
je 0x1006ab62
mov ecx, dword [ebx]
lea eax, [ecx + 1]
mov dword [esp + 0x70], eax
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1006ab50
mov eax, dword [ebx]
sub ecx, dword [esp + 0x70]
inc eax
add ecx, eax
jmp 0x1006ab7b
mov eax, dword [ebx + 4]
shr eax, 4
and eax, 0xf
je 0x1006ab76
mov ecx, dword [eax*4 + 0x100bc1fc]
jmp 0x1006ab7b
mov ecx, 0x100b342a
push edi
push edx
push dword [esp + 0x24]
mov eax, ebx
mov dword [esp + 0x38], 4
mov edx, dword [esp + 0x38]
test byte [eax + edx], 0xf
mov eax, 0
setne al
push eax
mov eax, dword [esp + 0x50]
sub eax, dword [esp + 0x6c]
push ecx
push dword [ebx]
push eax
push dword [esp + 0x88]
push 1
push esi
call fcn.10086870
mov ecx, dword [esp + 0x68]
add esp, 0x28
mov eax, dword [esp + 0x60]
inc ecx
add ebx, 0x10
mov dword [esp + 0x40], ecx
movzx eax, word [eax + 0x22]
mov edx, eax
cwde
cmp ecx, eax
mov dword [esp + 0x7c], edx
mov eax, edx
jl 0x1006aa50
jmp 0x1006a7c3
mov eax, dword [esp + 0x14]
mov ebx, dword [esp + 0x3c]
push ebx
push eax
mov dword [eax + 0x2c], 6
call fcn.10050c80
mov ebp, dword [esp + 0x18]
add esp, 8
mov dword [esp + 0x78], 0
cmp dword [ebp + 0x14], 0
jle 0x1006d9bd
xor edi, edi
mov dword [esp + 0x74], edi
nop dword [eax]
test ebx, ebx
je 0x1006ac44
mov eax, dword [ebp + 0x10]
mov eax, dword [edi + eax]
test eax, eax
je 0x1006af12
push eax
push ebx
call fcn.100762a0
add esp, 8
test eax, eax
jne 0x1006af12
mov ebx, dword [esp + 0x10]
mov eax, dword [ebx + 0x10]
mov edx, dword [edi + eax + 0xc]
add edx, 8
mov ebx, dword [edx + 4]
test ebx, ebx
je 0x1006adbe
nop dword [eax]
mov eax, dword [edx + 8]
dec ebx
mov dword [esp + 0x60], ebx
test eax, eax
je 0x1006adbe
mov ecx, dword [eax + 8]
cmp word [ecx + 0x22], 0
je 0x1006ac85
mov eax, dword [eax]
test eax, eax
jne 0x1006ac70
jmp 0x1006adbe
push dword [ecx]
push str.SELECTFROM__w_
push dword [esp + 0x18]
call fcn.10065ac0
mov ebp, eax
add esp, 0xc
test ebp, ebp
je 0x1006ad7a
push 0
lea eax, [esp + 0x20]
mov dword [esp + 0x20], 0
push eax
push 0
push 0
push 0xffffffffffffffff
push ebp
push dword [esp + 0x28]
call fcn.10065730
mov edi, dword [esp + 0x38]
add esp, 0x1c
test edi, edi
je 0x1006ad69
mov ebx, dword [edi]
test ebx, ebx
jne 0x1006ad02
push str.API_called_with_finalized_prepared_statement
push 0x15
call sym.sqlite3.dll_sqlite3_log
push 0x100b85cc
push 0x15593
push str.misuse
push str._s_at_line__d_of___.10s_
push 0x15
call sym.sqlite3.dll_sqlite3_log
add esp, 0x1c
jmp 0x1006ad65
mov eax, dword [ebx + 0xc]
test eax, eax
je 0x1006ad13
push eax
call dword [0x100bc128]
add esp, 4
cmp dword [edi + 0x8c], 0
jl 0x1006ad31
jg 0x1006ad27
cmp dword [edi + 0x88], 0
jbe 0x1006ad31
push edi
push ebx
call fcn.10032db0
add esp, 8
push edi
call fcn.10087560
push edi
mov dword [esp + 0x74], eax
call fcn.1007b0b0
mov eax, dword [esp + 0x74]
add esp, 8
cmp byte [ebx + 0x57], 0
jne 0x1006ad52
test eax, eax
je 0x1006ad5c
push eax
push ebx
call fcn.1001c490
add esp, 8
push ebx
call fcn.10064ac0
add esp, 4
mov ebx, dword [esp + 0x60]
push ebp
push dword [esp + 0x14]
call fcn.10053c30
mov edi, dword [esp + 0x7c]
add esp, 8
mov eax, dword [esp + 0x10]
cmp byte [eax + 0x57], 0
je 0x1006adac
push str.out_of_memory
push dword [eax + 0x10c]
call fcn.10055e80
mov eax, dword [esp + 0x18]
add esp, 8
mov eax, dword [eax + 0x10c]
mov dword [eax + 0xc], 7
mov eax, dword [esp + 0x10]
mov eax, dword [eax + 0x10]
mov edx, dword [edi + eax + 0xc]
add edx, 8
test ebx, ebx
jne 0x1006ac60
mov edi, dword [edx + 8]
mov dword [esp + 0x68], edi
test edi, edi
je 0x1006af06
mov ecx, dword [esp + 0x18]
mov ebx, dword [edi + 8]
test ecx, ecx
je 0x1006adf4
mov eax, dword [ebx]
test eax, eax
je 0x1006aef8
push eax
push ecx
call fcn.100762a0
add esp, 8
test eax, eax
jne 0x1006aef4
mov al, byte [ebx + 0x2b]
cmp al, 2
jne 0x1006ae05
mov dword [esp + 0x2c], str.view
jmp 0x1006ae2b
cmp al, 1
jne 0x1006ae13
mov dword [esp + 0x2c], str.virtual
jmp 0x1006ae2b
test dword [ebx + 0x1c], 0x1000
mov eax, str.shadow
mov ecx, str.table
cmove eax, ecx
mov dword [esp + 0x2c], eax
mov ebp, dword [ebx]
mov edx, 7
test ebp, ebp
je 0x1006aeb6
mov edi, ebp
mov ebx, str.sqlite_
mov al, byte [edi]
dec edx
test al, al
je 0x1006ae63
movzx ecx, byte [ebx]
movzx eax, al
mov al, byte [eax + 0x100b0f70]
cmp al, byte [ecx + 0x100b0f70]
jne 0x1006ae63
inc edi
inc ebx
test edx, edx
jg 0x1006ae41
dec edx
test edx, edx
js 0x1006ae7f
movzx eax, byte [edi]
movzx ecx, byte [eax + 0x100b0f70]
movzx eax, byte [ebx]
movzx eax, byte [eax + 0x100b0f70]
sub ecx, eax
jne 0x1006aeb2
lea edi, [ebp + 7]
push 0x100b4647
push edi
call fcn.100762a0
add esp, 8
test eax, eax
jne 0x1006ae9b
mov ebp, str.sqlite_schema
jmp 0x1006aeb2
push 0x100b5d9b
push edi
call fcn.100762a0
add esp, 8
test eax, eax
jne 0x1006aeb2
mov ebp, str.sqlite_temp_schema
mov edi, dword [esp + 0x68]
mov edx, dword [edi + 8]
mov ecx, dword [edx + 0x1c]
mov eax, ecx
shr eax, 0x10
and eax, 1
shr ecx, 7
push eax
movsx eax, word [edx + 0x22]
and ecx, 1
push ecx
mov ecx, dword [esp + 0x7c]
push eax
mov eax, dword [esp + 0x1c]
push dword [esp + 0x38]
push ebp
mov eax, dword [eax + 0x10]
push dword [ecx + eax]
push str.sssiii
push 1
push esi
call fcn.10086870
add esp, 0x24
mov ecx, dword [esp + 0x18]
mov edi, dword [edi]
mov dword [esp + 0x68], edi
test edi, edi
jne 0x1006add1
mov ebp, dword [esp + 0x10]
mov ebx, dword [esp + 0x3c]
mov edi, dword [esp + 0x74]
mov eax, dword [esp + 0x78]
add edi, 0x10
inc eax
mov dword [esp + 0x74], edi
mov dword [esp + 0x78], eax
cmp eax, dword [ebp + 0x14]
jl 0x1006ac20
jmp 0x1006d9bd
test edx, edx
je 0x1006d9b9
push dword [esp + 0x3c]
push edx
push dword [esp + 0x18]
call fcn.1005c1a0
mov edi, eax
add esp, 0xc
mov dword [esp + 0x2c], edi
test edi, edi
jne 0x1006af92
push dword [esp + 0x3c]
push dword [esp + 0x1c]
push 2
push dword [esp + 0x20]
call fcn.10065510
add esp, 0x10
test eax, eax
je 0x1006d9b9
test byte [eax + 0x1c], 0x80
je 0x1006d9b9
push eax
call fcn.1006e190
mov edi, eax
mov dword [esp + 0x30], eax
add esp, 4
test edi, edi
je 0x1006d9b9
push dword [edi + 0x18]
push dword [esp + 0x14]
call fcn.10071280
mov ecx, dword [ebp + 8]
add esp, 8
or ecx, dword [ebp + 0xc]
mov edx, eax
je 0x1006afb6
movzx eax, word [edi + 0x34]
mov ecx, 6
jmp 0x1006afbf
movzx eax, word [edi + 0x32]
mov ecx, 3
mov dword [esp + 0x5c], eax
mov eax, dword [esp + 0x14]
push edx
push dword [esp + 0x18]
mov dword [eax + 0x2c], ecx
mov eax, dword [edi + 0xc]
mov dword [esp + 0x28], eax
call fcn.10050d00
xor edi, edi
add esp, 8
cmp word [esp + 0x5c], di
je 0x1006d9b9
nop dword [eax + eax]
mov eax, dword [esp + 0x2c]
mov eax, dword [eax + 4]
movzx eax, word [eax + edi*2]
movsx edx, ax
test ax, ax
jns 0x1006b007
xor eax, eax
jmp 0x1006b015
mov eax, dword [esp + 0x20]
mov ecx, edx
add ecx, ecx
mov eax, dword [eax + 4]
mov eax, dword [eax + ecx*8]
push eax
push edx
push edi
push str.iisX
push 1
push esi
call fcn.10086870
mov eax, dword [ebp + 8]
add esp, 0x18
or eax, dword [ebp + 0xc]
je 0x1006b05d
mov ecx, dword [esp + 0x2c]
movzx eax, word [ecx + 0x32]
cmp edi, eax
sbb eax, eax
neg eax
push eax
mov eax, dword [ecx + 0x20]
push dword [eax + edi*4]
mov eax, dword [ecx + 0x1c]
movzx eax, byte [eax + edi]
push eax
push str.isiX
push 4
push esi
call fcn.10086870
add esp, 0x18
mov eax, dword [esp + 0x14]
mov ecx, dword [ebx]
mov edx, dword [eax + 0x2c]
mov eax, dword [esp + 0x44]
cmp dword [eax], ecx
jg 0x1006b080
push 0
push edx
push 1
push 0x54
push esi
call fcn.10031c40
add esp, 0x14
jmp 0x1006b0b2
mov ebp, dword [esp + 0x78]
lea eax, [ecx + 1]
mov dword [ebx], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [esi + 0x68]
mov dword [eax + ecx*4], 0x54
mov dword [eax + ecx*4 + 4], 1
mov dword [eax + ecx*4 + 8], edx
mov dword [eax + ecx*4 + 0xc], 0
mov dword [eax + ecx*4 + 0x10], 0
mov ecx, dword [esp + 0x5c]
inc edi
movzx eax, cx
cmp edi, eax
jl 0x1006aff0
jmp 0x1006a7c3
test edx, edx
je 0x1006d9b9
push dword [esp + 0x3c]
push edx
push dword [esp + 0x18]
call fcn.1005c250
mov edi, eax
add esp, 0xc
test edi, edi
je 0x1006d9b9
push dword [edi + 0x3c]
push dword [esp + 0x14]
call fcn.10071280
mov ecx, dword [esp + 0x1c]
push eax
push ecx
mov dword [ecx + 0x2c], 5
call fcn.10050d00
mov edi, dword [edi + 8]
add esp, 0x10
xor ebx, ebx
test edi, edi
je 0x1006d9b9
mov dword [esp + 0xa0], 0x100b6c7c
mov dword [esp + 0xa4], 0x100b6c80
mov dword [esp + 0xa8], 0x100b2aec
nop dword [eax]
xor eax, eax
cmp dword [edi + 0x24], eax
setne al
push eax
mov eax, dword [edi + 0x38]
and eax, 3
push dword [esp + eax*4 + 0xa4]
xor eax, eax
cmp byte [edi + 0x36], al
setne al
push eax
push dword [edi]
push ebx
push str.isisi
push 1
push esi
call fcn.10086870
mov edi, dword [edi + 0x14]
add esp, 0x20
inc ebx
test edi, edi
jne 0x1006b140
jmp 0x1006a7c3
mov eax, dword [esp + 0x14]
xor edi, edi
mov ebp, dword [esp + 0x10]
mov dword [eax + 0x2c], 3
cmp dword [ebp + 0x14], edi
jle 0x1006d9bd
xor ebx, ebx
nop dword [eax + eax]
mov ecx, dword [ebp + 0x10]
mov eax, dword [ecx + ebx + 4]
test eax, eax
je 0x1006b1d8
mov eax, dword [eax + 4]
mov eax, dword [eax]
cmp byte [eax + 0xf], 0
je 0x1006b1bd
mov eax, 0x100b19fc
jmp 0x1006b1c3
mov eax, dword [eax + 0xb8]
push eax
push dword [ecx + ebx]
push edi
push 0x100b6c8c
push 1
push esi
call fcn.10086870
add esp, 0x18
inc edi
add ebx, 0x10
cmp edi, dword [ebp + 0x14]
jl 0x1006b1a0
jmp 0x1006d9bd
mov eax, dword [esp + 0x14]
xor ebx, ebx
mov edi, dword [esp + 0x10]
mov dword [eax + 0x2c], 2
mov edi, dword [edi + 0x1b8]
test edi, edi
je 0x1006d9b9
mov eax, dword [edi + 8]
push dword [eax]
push ebx
push 0x100b6c90
push 1
push esi
call fcn.10086870
mov edi, dword [edi]
add esp, 0x14
inc ebx
test edi, edi
jne 0x1006b205
jmp 0x1006d9b9
mov eax, dword [esp + 0x10]
mov ebp, 0x100bdc98
mov ebx, dword [eax + 0x18]
mov eax, dword [esp + 0x14]
shr ebx, 5
and ebx, 1
mov dword [eax + 0x2c], 6
mov edi, dword [ebp]
test edi, edi
je 0x1006b264
nop dword [eax + eax]
push ebx
push 1
push edi
push esi
call fcn.1003f900
mov edi, dword [edi + 0x24]
add esp, 0x10
test edi, edi
jne 0x1006b250
add ebp, 4
cmp ebp, 0x100bdcf4
jl 0x1006b244
mov edi, dword [esp + 0x10]
mov edi, dword [edi + 0x1a8]
test edi, edi
je 0x1006d9b9
push ebx
push 0
push dword [edi + 8]
push esi
call fcn.1003f900
mov edi, dword [edi]
add esp, 0x10
test edi, edi
jne 0x1006b281
jmp 0x1006d9b9
mov eax, dword [esp + 0x14]
mov edi, dword [esp + 0x10]
mov dword [eax + 0x2c], 1
mov edi, dword [edi + 0x18c]
test edi, edi
je 0x1006d9b9
nop dword [eax + eax]
mov eax, dword [edi + 8]
push dword [eax + 4]
push 0x100b4c48
push 1
push esi
call fcn.10086870
mov edi, dword [edi]
add esp, 0x10
test edi, edi
jne 0x1006b2c0
jmp 0x1006d9b9
mov edi, 0x100acf88
push dword [edi]
push 0x100b4c48
push 1
push esi
call fcn.10086870
add edi, 0x10
add esp, 0x10
cmp edi, 0x100ad3b8
jl 0x1006b2e6
jmp 0x1006d9b9
test edx, edx
je 0x1006d9b9
push dword [esp + 0x3c]
push edx
push dword [esp + 0x18]
call fcn.1005c250
add esp, 0xc
mov dword [esp + 0x20], eax
test eax, eax
je 0x1006d9b9
cmp byte [eax + 0x2b], 0
jne 0x1006d9b9
mov edi, dword [eax + 0x30]
test edi, edi
je 0x1006d9b9
push dword [eax + 0x3c]
push dword [esp + 0x14]
call fcn.10071280
mov ecx, dword [esp + 0x1c]
xor ebp, ebp
push eax
push ecx
mov dword [esp + 0x3c], ebp
mov dword [ecx + 0x2c], 8
call fcn.10050d00
add esp, 0x10
nop dword [eax]
xor ebx, ebx
cmp dword [edi + 0x14], ebx
jle 0x1006b42a
lea ebp, [edi + 0x24]
nop
movzx eax, byte [edi + 0x1a]
add eax, 0xfffffff9
cmp eax, 3
ja case.default.0x1006b38c
jmp dword [eax*4 + 0x1006daa4]
mov ecx, str.SET_NULL
jmp 0x1006b3b4
mov ecx, str.SET_DEFAULT
jmp 0x1006b3b4
mov ecx, str.CASCADE
jmp 0x1006b3b4
mov ecx, str.RESTRICT
jmp 0x1006b3b4
mov ecx, str.NO_ACTION
movzx eax, byte [edi + 0x19]
add eax, 0xfffffff9
cmp eax, 3
ja case.default.0x1006b3c0
jmp dword [eax*4 + 0x1006dab4]
mov eax, str.SET_NULL
jmp 0x1006b3e8
mov eax, str.SET_DEFAULT
jmp 0x1006b3e8
mov eax, str.CASCADE
jmp 0x1006b3e8
mov eax, str.RESTRICT
jmp 0x1006b3e8
mov eax, str.NO_ACTION
push str.NONE
push eax
mov eax, dword [esp + 0x28]
push ecx
push dword [ebp + 4]
mov ecx, dword [ebp]
mov eax, dword [eax + 4]
add ecx, ecx
push dword [eax + ecx*8]
push dword [edi + 8]
push ebx
push dword [esp + 0x48]
push str.iissssss
push 1
push esi
call fcn.10086870
inc ebx
add esp, 0x2c
add ebp, 8
cmp ebx, dword [edi + 0x14]
jl 0x1006b380
mov ebp, dword [esp + 0x2c]
mov edi, dword [edi + 4]
inc ebp
mov dword [esp + 0x2c], ebp
test edi, edi
jne 0x1006b370
jmp 0x1006a7c3
mov ebp, dword [esp + 0x14]
mov eax, dword [ebp + 0x2c]
lea ecx, [eax + 1]
add eax, 5
mov dword [ebp + 0x2c], eax
mov dword [esp + 0x58], eax
mov eax, dword [esp + 0x10]
mov dword [esp + 0x50], ecx
mov ecx, dword [esp + 0x54]
mov eax, dword [eax + 0x10]
mov eax, dword [ecx + eax + 0xc]
mov ecx, dword [eax + 0x10]
test ecx, ecx
je 0x1006d9b9
test edx, edx
je 0x1006b489
push dword [esp + 0x3c]
push edx
push 0
push ebp
call fcn.10065510
add esp, 0x10
xor ecx, ecx
jmp 0x1006b48e
mov eax, dword [ecx + 8]
mov ecx, dword [ecx]
mov dword [esp + 0x6c], ecx
mov dword [esp + 0x34], eax
test eax, eax
je 0x1006bb67
cmp byte [eax + 0x2b], 0
jne 0x1006bb67
cmp dword [eax + 0x30], 0
je 0x1006bb67
mov ecx, dword [eax + 0x3c]
mov edi, 0xffff8000
test ecx, ecx
je 0x1006b4d8
mov eax, dword [esp + 0x10]
xor edi, edi
mov eax, dword [eax + 0x10]
add eax, 0xc
cmp dword [eax], ecx
je 0x1006b4d8
nop
lea eax, [eax + 0x10]
inc edi
cmp dword [eax], ecx
jne 0x1006b4d0
mov eax, dword [esp + 0x10]
mov edx, edi
shl edx, 4
mov ecx, edi
mov dword [esp + 0x70], edx
mov eax, dword [eax + 0x10]
mov eax, dword [edx + eax]
mov dword [esp + 0x3c], eax
mov eax, dword [ebp + 0x78]
test eax, eax
cmovne ebp, eax
mov eax, 1
shl eax, cl
mov ecx, dword [ebp + 0x58]
test ecx, eax
jne 0x1006b600
bts ecx, edi
mov dword [ebp + 0x58], ecx
cmp edi, 1
jne 0x1006b609
push ebp
call fcn.10066870
add esp, 4
mov ebp, dword [esp + 0x34]
mov ecx, dword [esp + 0x14]
movsx eax, word [ebp + 0x22]
add eax, dword [esp + 0x58]
cmp eax, dword [ecx + 0x2c]
jle 0x1006b53b
mov dword [ecx + 0x2c], eax
push 0x70
push ebp
push edi
push 0
push ecx
call fcn.10066550
push 0
push dword [ebp]
push 0
push dword [esp + 0x70]
push 0
push 0x75
push esi
call fcn.1007aa80
mov ebp, dword [ebp + 0x30]
add esp, 0x30
mov eax, 1
mov dword [esp + 0x40], eax
test ebp, ebp
je 0x1006b673
push dword [esp + 0x3c]
push dword [ebp + 8]
push dword [esp + 0x18]
call fcn.1005c250
mov ebx, eax
add esp, 0xc
test ebx, ebx
je 0x1006b65b
mov dword [esp + 0x54], 0
cmp edi, 1
je 0x1006b5c5
mov edx, dword [esp + 0x14]
mov eax, dword [esp + 0x70]
mov ecx, dword [edx]
mov ecx, dword [ecx + 0x10]
mov eax, dword [ecx + eax + 4]
cmp byte [eax + 9], 0
je 0x1006b5c5
push dword [ebx]
push 0
push dword [ebx + 0x14]
push edi
push edx
call fcn.100369e0
add esp, 0x14
push 0
lea eax, [esp + 0x58]
push eax
push ebp
push ebx
push dword [esp + 0x24]
call fcn.1005db40
add esp, 0x14
test eax, eax
jne 0x1006d9b9
mov eax, dword [esp + 0x54]
test eax, eax
jne 0x1006b63b
push 0x70
push ebx
push edi
push dword [esp + 0x4c]
push dword [esp + 0x24]
call fcn.10066550
add esp, 0x14
jmp 0x1006b65b
cmp edi, 1
je 0x1006b523
mov ecx, dword [esp + 0x14]
mov ebp, dword [esp + 0x34]
mov eax, dword [ecx]
mov eax, dword [eax + 0x10]
mov eax, dword [eax + edx + 4]
cmp byte [eax + 9], 0
je 0x1006b527
push dword [ebp]
push 0
push dword [ebp + 0x14]
push edi
push ecx
call fcn.100369e0
add esp, 0x14
jmp 0x1006b527
push edi
push dword [eax + 0x2c]
push dword [esp + 0x48]
push 0x70
push esi
call fcn.1007aa20
push dword [esp + 0x68]
push dword [esp + 0x2c]
call fcn.100879b0
add esp, 0x1c
mov eax, dword [esp + 0x40]
mov ebp, dword [ebp + 4]
inc eax
mov dword [esp + 0x40], eax
test ebp, ebp
jne 0x1006b573
mov ebx, dword [esp + 0x24]
mov ecx, dword [esp + 0x14]
cmp dword [ecx + 0x28], eax
jge 0x1006b67f
mov dword [ecx + 0x28], eax
mov eax, dword [esp + 0x44]
mov edi, dword [ebx]
mov dword [esp + 0x5c], edi
cmp dword [eax], edi
jg 0x1006b6b2
push 0
push 0
push 0
push 0x24
push esi
call fcn.10031c40
mov dword [esp + 0x70], eax
add esp, 0x14
mov eax, dword [esp + 0x80]
add eax, 0x68
mov dword [esp + 0x4c], eax
jmp 0x1006b6ea
lea eax, [edi + 1]
mov dword [ebx], eax
lea edx, [esi + 0x68]
mov eax, dword [edx]
lea ecx, [edi + edi*4]
mov dword [esp + 0x4c], edx
mov dword [eax + ecx*4], 0x24
mov dword [eax + ecx*4 + 4], 0
mov dword [eax + ecx*4 + 8], 0
mov dword [eax + ecx*4 + 0xc], 0
mov dword [eax + ecx*4 + 0x10], 0
mov eax, dword [esp + 0x34]
mov dword [esp + 0x48], 1
mov ebp, dword [eax + 0x30]
mov dword [esp + 0x38], ebp
test ebp, ebp
je 0x1006bae1
mov eax, dword [esp + 0x50]
mov ecx, dword [esp + 0x10]
add eax, 2
mov dword [esp + 0x70], eax
push dword [esp + 0x3c]
push dword [ebp + 8]
push ecx
call fcn.1005c250
xor edi, edi
mov dword [esp + 0x2c], eax
add esp, 0xc
mov dword [esp + 0x54], 0
mov dword [esp + 0x1c], edi
test eax, eax
je 0x1006b756
lea ecx, [esp + 0x1c]
push ecx
lea ecx, [esp + 0x58]
push ecx
push ebp
push eax
push dword [esp + 0x24]
call fcn.1005db40
mov edi, dword [esp + 0x30]
add esp, 0x14
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x58]
dec dword [ecx + 0x38]
mov eax, dword [ebp + 0x14]
mov ebx, dword [ecx + 0x38]
add eax, edx
mov dword [esp + 0x2c], ebx
cmp eax, dword [ecx + 0x2c]
jle 0x1006b775
mov dword [ecx + 0x2c], eax
mov ecx, dword [esp + 0x38]
xor ebp, ebp
mov eax, dword [ecx + 0x14]
test eax, eax
jle 0x1006b81c
add ecx, 0x24
mov ebx, edx
mov dword [esp + 0x1c], ecx
nop
lea eax, [edi + ebp*4]
test edi, edi
jne 0x1006b799
mov eax, ecx
mov eax, dword [eax]
push ebx
push eax
push 0
push dword [esp + 0x40]
push esi
call fcn.10057030
mov edx, dword [esp + 0x38]
add esp, 0x14
mov eax, dword [esp + 0x44]
mov ecx, dword [edx]
cmp dword [eax], ecx
jg 0x1006b7ce
push 0
push dword [esp + 0x30]
push ebx
push 0x32
push esi
call fcn.10031c40
add esp, 0x14
jmp 0x1006b7fc
lea eax, [ecx + 1]
mov dword [edx], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [esi + 0x68]
mov edx, dword [esp + 0x2c]
mov dword [eax + ecx*4], 0x32
mov dword [eax + ecx*4 + 4], ebx
mov dword [eax + ecx*4 + 8], edx
mov dword [eax + ecx*4 + 0xc], 0
mov dword [eax + ecx*4 + 0x10], 0
mov eax, dword [esp + 0x38]
inc ebp
mov ecx, dword [esp + 0x1c]
inc ebx
add ecx, 8
mov dword [esp + 0x1c], ecx
mov eax, dword [eax + 0x14]
cmp ebp, eax
jl 0x1006b790
mov ebx, dword [esp + 0x2c]
mov ecx, dword [esp + 0x54]
test ecx, ecx
je 0x1006b862
push eax
push ecx
push dword [esp + 0x18]
call fcn.100624b0
mov ebp, dword [esp + 0x44]
add esp, 8
push eax
push 0
push dword [ebp + 0x14]
push dword [esp + 0x68]
push 0x60
push esi
call fcn.1007aa80
push dword [ebp + 0x14]
mov edx, dword [esp + 0x68]
push dword [esp + 0x78]
push ebx
push edx
push 0x1d
push esi
call fcn.1007ab00
add esp, 0x34
jmp 0x1006b8c9
cmp dword [esp + 0x20], 0
je 0x1006b8c9
mov edx, dword [esp + 0x24]
mov eax, dword [esp + 0x44]
mov ecx, dword [edx]
lea ebp, [ecx + 2]
cmp dword [eax], ecx
jg 0x1006b891
push dword [esp + 0x58]
mov edx, dword [esp + 0x4c]
push ebp
push edx
push 0x1e
push esi
call fcn.10031c40
add esp, 0x14
jmp 0x1006b8bf
lea eax, [ecx + 1]
mov dword [edx], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [esi + 0x68]
mov edx, dword [esp + 0x48]
mov dword [eax + ecx*4 + 4], edx
mov edx, dword [esp + 0x58]
mov dword [eax + ecx*4], 0x1e
mov dword [eax + ecx*4 + 8], ebp
mov dword [eax + ecx*4 + 0xc], edx
mov dword [eax + ecx*4 + 0x10], 0
push ebx
push esi
call fcn.10084800
add esp, 8
mov ebp, dword [esp + 0x34]
mov edx, dword [esp + 0x24]
mov eax, dword [esp + 0x44]
test byte [ebp + 0x1c], 0x80
mov ecx, dword [edx]
mov eax, dword [eax]
jne 0x1006b90f
cmp eax, ecx
jg 0x1006b8f4
mov eax, dword [esp + 0x50]
push 0
inc eax
push eax
push 0
push 0x87
jmp 0x1006b91f
lea eax, [ecx + 1]
mov dword [edx], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [esi + 0x68]
lea edx, [esi + 0x68]
mov dword [esp + 0x4c], edx
mov dword [eax + ecx*4], 0x87
jmp 0x1006b950
cmp eax, ecx
jg 0x1006b938
mov eax, dword [esp + 0x50]
push 0
inc eax
push eax
push 0
push 0x4b
push esi
call fcn.10031c40
mov eax, dword [esp + 0x94]
add esp, 0x14
add eax, 0x68
mov dword [esp + 0x4c], eax
jmp 0x1006b971
lea eax, [ecx + 1]
mov dword [edx], eax
lea ecx, [ecx + ecx*4]
lea eax, [esi + 0x68]
mov dword [esp + 0x4c], eax
mov eax, dword [eax]
mov dword [eax + ecx*4], 0x4b
mov edx, dword [esp + 0x50]
mov dword [eax + ecx*4 + 0x10], 0
inc edx
mov dword [eax + ecx*4 + 0xc], 0
mov dword [eax + ecx*4 + 8], edx
mov dword [eax + ecx*4 + 4], 0
mov eax, dword [esp + 0x48]
mov ebp, dword [esp + 0x38]
dec eax
push eax
push dword [ebp + 8]
push 0x100b6ca8
push dword [esp + 0x7c]
push esi
call fcn.10086870
mov edx, dword [esp + 0x38]
add esp, 0x14
mov eax, dword [esp + 0x44]
mov ecx, dword [edx]
cmp dword [eax], ecx
jg 0x1006b9b7
push 0
push 4
push dword [esp + 0x58]
push 0x54
push esi
call fcn.10031c40
mov edx, dword [esp + 0x38]
add esp, 0x14
jmp 0x1006b9f0
mov ebp, dword [esp + 0x50]
lea eax, [ecx + 1]
mov dword [edx], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [esp + 0x4c]
mov eax, dword [eax]
mov dword [eax + ecx*4 + 4], ebp
mov ebp, dword [esp + 0x38]
mov dword [eax + ecx*4], 0x54
mov dword [eax + ecx*4 + 8], 4
mov dword [eax + ecx*4 + 0xc], 0
mov dword [eax + ecx*4 + 0x10], 0
mov ecx, dword [esi + 0xc]
not ebx
mov eax, dword [ecx + 0x3c]
add eax, dword [ecx + 0x38]
jns 0x1006ba0a
push ebx
push esi
push ecx
call fcn.100430f0
add esp, 0xc
jmp 0x1006ba12
mov ecx, dword [ecx + 0x40]
mov eax, dword [edx]
mov dword [ecx + ebx*4], eax
mov ecx, dword [esp + 0x10]
test edi, edi
je 0x1006baca
cmp edi, dword [ecx + 0x164]
jae 0x1006ba5c
cmp edi, dword [ecx + 0x15c]
jb 0x1006ba41
mov eax, dword [ecx + 0x158]
mov dword [edi], eax
mov dword [ecx + 0x158], edi
jmp 0x1006baca
cmp edi, dword [ecx + 0x160]
jb 0x1006ba5c
mov eax, dword [ecx + 0x150]
mov dword [edi], eax
mov dword [ecx + 0x150], edi
jmp 0x1006baca
cmp dword [ecx + 0x210], 0
je 0x1006ba71
push edi
push ecx
call fcn.10037ab0
add esp, 8
jmp 0x1006bac6
cmp dword [0x100bc0d8], 0
je 0x1006babc
mov eax, dword [0x100bdd58]
test eax, eax
je 0x1006ba8d
push eax
call dword [0x100bc128]
add esp, 4
push edi
call dword [0x100bc104]
sub dword [0x100bdcf8], eax
dec dword [0x100bdd1c]
push edi
call dword [0x100bc0fc]
mov eax, dword [0x100bdd58]
add esp, 8
test eax, eax
je 0x1006bac6
push eax
call dword [0x100bc130]
jmp 0x1006bac3
push edi
call dword [0x100bc0fc]
add esp, 4
mov ecx, dword [esp + 0x10]
mov ebp, dword [ebp + 4]
inc dword [esp + 0x48]
mov dword [esp + 0x38], ebp
test ebp, ebp
jne 0x1006b714
mov ebx, dword [esp + 0x24]
mov eax, dword [esp + 0x44]
mov ebp, dword [esp + 0x5c]
mov ecx, dword [ebx]
lea edi, [ebp + 1]
cmp dword [eax], ecx
jg 0x1006bb08
push 0
push edi
push 0
push 0x27
push esi
call fcn.10031c40
mov edx, dword [esp + 0x60]
add esp, 0x14
jmp 0x1006bb3d
mov edx, dword [esp + 0x4c]
lea eax, [ecx + 1]
mov ebp, dword [esp + 0x5c]
lea ecx, [ecx + ecx*4]
mov dword [ebx], eax
mov eax, dword [edx]
mov dword [eax + ecx*4], 0x27
mov dword [eax + ecx*4 + 4], 0
mov dword [eax + ecx*4 + 8], edi
mov dword [eax + ecx*4 + 0xc], 0
mov dword [eax + ecx*4 + 0x10], 0
mov eax, dword [esi]
mov edi, dword [ebx]
cmp byte [eax + 0x57], 0
je 0x1006bb4e
mov eax, 0x100bdf30
jmp 0x1006bb5c
mov eax, dword [edx]
lea ecx, [ebp*4]
add ecx, ebp
lea eax, [eax + ecx*4]
mov ecx, dword [esp + 0x6c]
mov ebp, dword [esp + 0x14]
mov dword [eax + 8], edi
test ecx, ecx
je 0x1006d9b9
mov edx, dword [esp + 0x18]
jmp 0x1006b471
test edx, edx
je 0x1006d9b9
push 0
push edx
call fcn.10060d10
mov ebx, dword [esp + 0x18]
movzx eax, al
push eax
push ebx
call fcn.1006f280
push dword [esp + 0x40]
push ebx
call fcn.10053c30
mov eax, dword [esp + 0x30]
add esp, 0x18
jmp 0x1006d9d2
mov edi, dword [esp + 0x38]
xor eax, eax
mov ebp, dword [esp + 0x14]
or ecx, 0xffffffff
mov dword [esp + 0x74], eax
mov eax, dword [esp + 0x30]
movzx eax, byte [eax]
mov al, byte [eax + 0x100b0f70]
mov byte [esp + 0x67], al
mov eax, dword [esp + 0x34]
cmp dword [eax], 0
mov eax, 0x64
mov dword [ebp + 0x2c], 6
cmove edi, ecx
mov dword [esp + 0x2c], eax
mov dword [esp + 0x38], edi
mov dword [esp + 0x5c], eax
test edx, edx
je 0x1006bc4e
lea eax, [esp + 0x5c]
push eax
push edx
call fcn.10060f70
add esp, 8
test eax, eax
je 0x1006bc19
mov eax, dword [esp + 0x5c]
mov dword [esp + 0x2c], eax
test eax, eax
jg 0x1006bc4e
mov eax, 0x64
jmp 0x1006bc4a
test edi, edi
js 0x1006bc2d
mov eax, dword [esp + 0x10]
mov ecx, edi
add ecx, ecx
mov eax, dword [eax + 0x10]
mov eax, dword [eax + ecx*8]
jmp 0x1006bc2f
xor eax, eax
push eax
push dword [esp + 0x1c]
push 0
push ebp
call fcn.10065510
mov dword [esp + 0x84], eax
add esp, 0x10
mov eax, dword [esp + 0x5c]
mov dword [esp + 0x2c], eax
push 1
lea ecx, [eax - 1]
push ecx
push 0x47
push esi
call fcn.1007a9c0
mov eax, dword [esp + 0x20]
xor ecx, ecx
add esp, 0x10
mov dword [esp + 0x54], ecx
cmp dword [eax + 0x14], ecx
jle 0x1006bf4f
mov dword [esp + 0x9c], 0x10
nop dword [eax]
xor eax, eax
test edi, edi
js 0x1006bc8e
cmp ecx, edi
jne 0x1006bf3d
mov eax, dword [ebp + 0x78]
mov edx, ebp
test eax, eax
cmovne edx, eax
mov eax, 1
shl eax, cl
mov edi, dword [edx + 0x58]
test edi, eax
jne 0x1006bcbe
bts edi, ecx
mov dword [edx + 0x58], edi
cmp ecx, 1
jne 0x1006bcbe
push edx
call fcn.10066870
mov ecx, dword [esp + 0x58]
add esp, 4
mov eax, dword [esp + 0x10]
mov edx, ecx
shl edx, 4
xor ecx, ecx
mov dword [esp + 0x70], edx
mov eax, dword [eax + 0x10]
mov eax, dword [edx + eax + 0xc]
mov dword [esp + 0x1c], eax
mov ebp, dword [eax + 0x10]
test ebp, ebp
je 0x1006bf31
mov edx, dword [esp + 0x74]
mov ebx, ecx
nop dword [eax]
mov edi, dword [ebp + 8]
test edx, edx
je 0x1006bcfb
cmp edx, edi
jne 0x1006bd22
test byte [edi + 0x1c], 0x80
lea eax, [ecx + 1]
cmovne eax, ecx
xor edx, edx
mov ecx, eax
mov eax, dword [edi + 8]
test eax, eax
je 0x1006bd19
mov eax, dword [eax + 0x14]
inc ecx
inc edx
test eax, eax
jne 0x1006bd10
cmp edx, ebx
cmovg ebx, edx
mov edx, dword [esp + 0x74]
mov ebp, dword [ebp]
test ebp, ebp
jne 0x1006bcf0
mov dword [esp + 0x68], ebx
mov ebx, dword [esp + 0x24]
test ecx, ecx
je 0x1006bf31
test edx, edx
lea eax, [ecx + 1]
push ebp
cmove eax, ecx
lea eax, [eax*4 + 4]
push eax
push dword [esp + 0x18]
call fcn.10053d40
mov edi, eax
add esp, 0xc
test edi, edi
je 0x1006bf4f
xor edx, edx
cmp dword [esp + 0x74], edx
je 0x1006bd6e
lea edx, [ebp + 1]
mov dword [edi + 4], ebp
mov ebp, dword [esp + 0x1c]
mov ebp, dword [ebp + 0x10]
test ebp, ebp
je 0x1006bdbd
mov eax, dword [esp + 0x68]
mov esi, dword [esp + 0x74]
mov dword [esp + 0x68], eax
mov ecx, dword [ebp + 8]
test esi, esi
je 0x1006bd90
cmp esi, ecx
jne 0x1006bdb2
test byte [ecx + 0x1c], 0x80
jne 0x1006bd9d
mov eax, dword [ecx + 0x14]
inc edx
mov dword [edi + edx*4], eax
mov ecx, dword [ecx + 8]
test ecx, ecx
je 0x1006bdb2
mov eax, dword [ecx + 0x2c]
inc edx
mov dword [edi + edx*4], eax
mov ecx, dword [ecx + 0x14]
test ecx, ecx
jne 0x1006bda4
mov ebp, dword [ebp]
test ebp, ebp
jne 0x1006bd85
mov esi, dword [esp + 0x48]
mov ebp, dword [esp + 0x14]
mov eax, dword [esp + 0x68]
push 0xfffffffffffffff2
push edi
push 1
mov dword [edi], edx
add eax, 8
mov ecx, dword [ebp + 0x2c]
cmp ecx, eax
push edx
push 2
cmovle ecx, eax
mov byte [ebp + 0x13], 0
push 0x9b
push esi
mov dword [ebp + 0x2c], ecx
mov dword [ebp + 0x1c], 0
call fcn.1007aa80
mov eax, dword [ebx]
add esp, 0x1c
test eax, eax
jle 0x1006be13
mov ecx, dword [esp + 0x54]
lea ebp, [esi + 0x68]
movzx edx, cl
lea ecx, [eax + eax*4]
mov eax, dword [ebp]
mov word [eax + ecx*4 - 0x12], dx
jmp 0x1006be1d
mov ebp, dword [esp + 0x80]
add ebp, 0x68
mov eax, dword [esp + 0x44]
mov edi, dword [ebx]
mov dword [esp + 0x28], ebp
cmp dword [eax], edi
jg 0x1006be40
push 0
push 0
push 2
push 0x32
push esi
call fcn.10031c40
add esp, 0x14
mov edi, eax
jmp 0x1006be72
lea eax, [edi + 1]
mov dword [ebx], eax
lea ecx, [edi + edi*4]
mov eax, dword [ebp]
mov dword [eax + ecx*4], 0x32
mov dword [eax + ecx*4 + 4], 2
mov dword [eax + ecx*4 + 8], 0
mov dword [eax + ecx*4 + 0xc], 0
mov dword [eax + ecx*4 + 0x10], 0
mov edx, dword [esp + 0x10]
mov ecx, dword [esp + 0x70]
push 0xfffffffffffffffa
mov eax, dword [edx + 0x10]
push dword [eax + ecx]
push str._in_database__s__n
push edx
call fcn.10065ac0
add esp, 0xc
push eax
push 0
push 3
push 0
push 0x75
push esi
call fcn.1007aa80
mov eax, dword [esp + 0x60]
add esp, 0x1c
mov ecx, dword [ebx]
cmp dword [eax], ecx
jg 0x1006bebf
push 3
push 3
push 2
push 0x6f
push esi
call fcn.10031c40
add esp, 0x14
jmp 0x1006bef1
lea eax, [ecx + 1]
mov dword [ebx], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [ebp]
mov dword [eax + ecx*4], 0x6f
mov dword [eax + ecx*4 + 4], 2
mov dword [eax + ecx*4 + 8], 3
mov dword [eax + ecx*4 + 0xc], 3
mov dword [eax + ecx*4 + 0x10], 0
push esi
call fcn.10032bf0
mov eax, dword [esi]
add esp, 4
mov edx, dword [ebx]
cmp byte [eax + 0x57], 0
je 0x1006bf0f
mov edi, dword [esp + 0x28]
mov eax, 0x100bdf30
jmp 0x1006bf1b
lea ecx, [edi + edi*4]
mov edi, dword [esp + 0x28]
mov eax, dword [edi]
lea eax, [eax + ecx*4]
mov dword [eax + 8], edx
mov eax, dword [esp + 0x1c]
mov ebp, dword [eax + 0x10]
mov dword [esp + 0x1c], ebp
test ebp, ebp
jne 0x1006bfa4
mov ebp, dword [esp + 0x14]
mov ecx, dword [esp + 0x54]
mov edi, dword [esp + 0x38]
mov eax, dword [esp + 0x10]
inc ecx
mov dword [esp + 0x54], ecx
cmp ecx, dword [eax + 0x14]
jl 0x1006bc80
push 0
push 0x100ad4f4
push 7
push esi
call fcn.1007ab90
add esp, 0x10
test eax, eax
je 0x1006bf87
mov ecx, 1
mov byte [eax + 0x29], 0xff
sub ecx, dword [esp + 0x2c]
mov dword [eax + 8], ecx
mov dword [eax + 0x38], 0x100b6dc0
mov byte [eax + 0x65], 0xff
mov dword [eax + 0x74], str.database_disk_image_is_malformed
mov eax, dword [ebx]
sub eax, 2
push eax
push 0
push esi
call fcn.1007ae50
jmp 0x1006d9b6
mov ebp, dword [esp + 0x1c]
mov ebp, dword [ebp + 8]
mov dword [esp + 0x3c], ebp
mov dword [esp + 0x70], 0
mov dword [esp + 0x40], 0xffffffff
cmp byte [ebp + 0x2b], 0
jne 0x1006d25d
mov eax, dword [esp + 0x74]
test eax, eax
je 0x1006bfd5
cmp eax, ebp
jne 0x1006d25d
cmp byte [esp + 0x67], 0x71
je 0x1006c0dd
test byte [ebp + 0x1c], 0x80
je 0x1006c0dd
mov ecx, dword [ebp + 8]
mov dword [esp + 0x50], ecx
test ecx, ecx
je 0x1006c009
mov eax, dword [ecx + 0x38]
and al, 3
cmp al, 2
je 0x1006c005
mov ecx, dword [ecx + 0x14]
test ecx, ecx
jne 0x1006bff5
mov dword [esp + 0x50], ecx
movzx ecx, word [ecx + 0x32]
cmp ecx, 1
jne 0x1006c03e
mov ecx, dword [esp + 0x14]
mov al, byte [ecx + 0x13]
test al, al
jne 0x1006c029
inc dword [ecx + 0x2c]
mov eax, dword [ecx + 0x2c]
mov dword [esp + 0x4c], eax
jmp 0x1006c07d
dec al
mov byte [ecx + 0x13], al
movzx eax, al
mov eax, dword [ecx + eax*4 + 0x9c]
mov dword [esp + 0x4c], eax
jmp 0x1006c07d
mov eax, dword [esp + 0x14]
mov edx, dword [eax + 0x20]
mov dword [esp + 0x4c], edx
mov edx, dword [eax + 0x1c]
cmp ecx, edx
jg 0x1006c06a
mov edi, dword [esp + 0x14]
mov eax, dword [esp + 0x4c]
add eax, ecx
sub edx, ecx
mov dword [edi + 0x20], eax
mov eax, edi
mov edi, dword [esp + 0x28]
mov dword [eax + 0x1c], edx
jmp 0x1006c07d
mov eax, dword [eax + 0x2c]
lea edx, [eax + 1]
add eax, ecx
mov ecx, dword [esp + 0x14]
mov dword [esp + 0x4c], edx
mov dword [ecx + 0x2c], eax
mov eax, dword [esp + 0x50]
mov edx, dword [esp + 0x4c]
mov ecx, dword [ebx]
dec edx
movzx eax, word [eax + 0x32]
add edx, eax
mov eax, dword [esp + 0x44]
cmp dword [eax], ecx
jg 0x1006c0aa
push edx
push dword [esp + 0x50]
push 1
push 0x4b
push esi
call fcn.10031c40
add esp, 0x14
jmp 0x1006c0ed
mov esi, dword [esp + 0x4c]
lea eax, [ecx + 1]
mov dword [ebx], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [edi]
mov dword [eax + ecx*4 + 8], esi
mov esi, dword [esp + 0x48]
mov dword [eax + ecx*4], 0x4b
mov dword [eax + ecx*4 + 4], 1
mov dword [eax + ecx*4 + 0xc], edx
mov dword [eax + ecx*4 + 0x10], 0
jmp 0x1006c0ed
mov dword [esp + 0x50], 0
mov dword [esp + 0x4c], 0
mov ecx, 8
mov eax, ebp
add eax, ecx
mov dword [esp + 0x5c], eax
lea eax, [esp + 0x20]
push eax
lea eax, [esp + 0x38]
push eax
push 0
push 1
push 0
push 0x70
push ebp
push dword [esp + 0x30]
call fcn.10066650
mov eax, dword [esp + 0x64]
add esp, 0x20
mov ecx, dword [ebx]
cmp dword [eax], ecx
jg 0x1006c136
push 0
push 7
push 0
push 0x47
push esi
call fcn.10031c40
add esp, 0x14
jmp 0x1006c167
lea eax, [ecx + 1]
mov dword [ebx], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [edi]
mov dword [eax + ecx*4], 0x47
mov dword [eax + ecx*4 + 4], 0
mov dword [eax + ecx*4 + 8], 7
mov dword [eax + ecx*4 + 0xc], 0
mov dword [eax + ecx*4 + 0x10], 0
mov ebx, dword [esp + 0x5c]
mov ebx, dword [ebx]
test ebx, ebx
je 0x1006c1de
mov edx, dword [esp + 0x24]
mov edi, 8
mov ebp, dword [esp + 0x28]
nop
mov eax, dword [esp + 0x44]
mov ecx, dword [edx]
cmp dword [eax], ecx
jg 0x1006c1a0
push 0
push edi
push 0
push 0x47
push esi
call fcn.10031c40
mov edx, dword [esp + 0x38]
add esp, 0x14
jmp 0x1006c1d2
mov esi, dword [esp + 0x48]
lea eax, [ecx + 1]
mov dword [edx], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [ebp]
mov dword [eax + ecx*4], 0x47
mov dword [eax + ecx*4 + 4], 0
mov dword [eax + ecx*4 + 8], edi
mov dword [eax + ecx*4 + 0xc], 0
mov dword [eax + ecx*4 + 0x10], 0
mov ebx, dword [ebx + 0x14]
inc edi
test ebx, ebx
jne 0x1006c180
mov ebp, dword [esp + 0x3c]
mov ebx, dword [esp + 0x24]
mov eax, dword [esp + 0x44]
mov ecx, dword [ebx]
cmp dword [eax], ecx
jg 0x1006c205
push 0
push 0
push dword [esp + 0x3c]
push 0x24
push esi
call fcn.10031c40
mov edi, dword [esp + 0x3c]
add esp, 0x14
jmp 0x1006c23a
mov edi, dword [esp + 0x28]
lea eax, [ecx + 1]
mov edx, dword [esp + 0x34]
lea ecx, [ecx + ecx*4]
mov dword [ebx], eax
mov eax, dword [edi]
mov dword [eax + ecx*4], 0x24
mov dword [eax + ecx*4 + 4], edx
mov dword [eax + ecx*4 + 8], 0
mov dword [eax + ecx*4 + 0xc], 0
mov dword [eax + ecx*4 + 0x10], 0
mov eax, dword [esp + 0x44]
mov ecx, dword [ebx]
mov dword [esp + 0x6c], ecx
cmp dword [eax], ecx
jg 0x1006c25f
push 0
push 1
push 7
push 0x56
push esi
call fcn.10031c40
add esp, 0x14
mov dword [esp + 0x6c], eax
jmp 0x1006c290
lea eax, [ecx + 1]
mov dword [ebx], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [edi]
mov dword [eax + ecx*4], 0x56
mov dword [eax + ecx*4 + 4], 7
mov dword [eax + ecx*4 + 8], 1
mov dword [eax + ecx*4 + 0xc], 0
mov dword [eax + ecx*4 + 0x10], 0
movsx edx, word [ebp + 0x22]
sub edx, 1
js 0x1006c300
mov ecx, edx
shl ecx, 4
add ecx, 0xe
add ecx, dword [ebp + 4]
test byte [ecx], 0x20
jne 0x1006c2b1
movsx eax, word [ebp + 0x20]
cmp eax, edx
jne 0x1006c2bb
sub ecx, 0x10
sub edx, 1
jns 0x1006c2a4
jmp 0x1006c300
test edx, edx
js 0x1006c300
push 3
push edx
push dword [esp + 0x3c]
push ebp
push esi
call fcn.10057030
mov eax, dword [esi]
add esp, 0x14
cmp byte [eax + 0x57], 0
je 0x1006c2df
mov eax, 0x100bdf30
jmp 0x1006c2ec
mov eax, dword [ebx]
lea ecx, [eax + eax*4]
mov eax, dword [edi]
lea eax, [eax + ecx*4]
add eax, 0xffffffec
cmp dword [eax + 0xc], 3
jne 0x1006c300
cmp byte [eax], 0x5e
jne 0x1006c300
mov ecx, 0x80
or word [eax + 2], cx
cmp byte [esp + 0x67], 0x71
je 0x1006c42e
mov eax, dword [esp + 0x50]
test eax, eax
je 0x1006c42e
movzx eax, word [eax + 0x32]
push eax
push dword [esp + 0x50]
push 0
push dword [esp + 0x40]
push 0x29
push esi
call fcn.1007ab00
mov ecx, dword [ebx]
mov edi, eax
mov eax, dword [esp + 0x5c]
add esp, 0x18
cmp dword [eax], ecx
jg 0x1006c352
push 0
push 0
push dword [esp + 0x54]
push 0x32
push esi
call fcn.10031c40
add esp, 0x14
jmp 0x1006c387
mov edx, dword [esp + 0x4c]
lea eax, [ecx + 1]
mov dword [ebx], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [esp + 0x28]
mov eax, dword [eax]
mov dword [eax + ecx*4], 0x32
mov dword [eax + ecx*4 + 4], edx
mov dword [eax + ecx*4 + 8], 0
mov dword [eax + ecx*4 + 0xc], 0
mov dword [eax + ecx*4 + 0x10], 0
push dword [ebp]
push str.row_not_in_PRIMARY_KEY_order_for__s
push dword [esp + 0x18]
call fcn.10065ac0
push 0xfffffffffffffffa
push eax
push 0
push 3
push 0
push 0x75
push esi
call fcn.1007aa80
push esi
call fcn.10032bf0
mov eax, dword [esi]
lea ecx, [edi + edi*4]
mov edx, dword [ebx]
add esp, 0x2c
mov edi, dword [esp + 0x28]
shl ecx, 2
cmp byte [eax + 0x57], 0
je 0x1006c3cd
mov eax, 0x100bdf30
jmp 0x1006c3d1
mov eax, dword [edi]
add eax, ecx
mov dword [eax + 8], edx
mov eax, dword [esi]
mov edx, dword [ebx]
cmp byte [eax + 0x57], 0
je 0x1006c3e5
mov eax, 0x100bdf38
jmp 0x1006c3ec
mov eax, dword [edi]
add eax, 0x1c
add eax, ecx
mov dword [eax], edx
xor ecx, ecx
mov eax, dword [esp + 0x50]
xor edi, edi
cmp cx, word [eax + 0x32]
jae 0x1006c42e
mov esi, dword [esp + 0x14]
mov ebx, eax
mov ebp, dword [esp + 0x34]
mov eax, dword [esp + 0x4c]
add eax, edi
push eax
push edi
push ebp
push ebx
push esi
call fcn.10057da0
movzx eax, word [ebx + 0x32]
inc edi
add esp, 0x14
cmp edi, eax
jl 0x1006c406
mov esi, dword [esp + 0x48]
mov ebx, dword [esp + 0x24]
mov ebp, dword [esp + 0x3c]
mov edx, dword [esp + 0x3c]
xor eax, eax
movzx edi, word [ebp + 0x1e]
xor ebp, ebp
and edi, 1
mov dword [esp + 0x98], ebp
mov dword [esp + 0x94], edi
cmp ax, word [edx + 0x22]
jge 0x1006ca3a
mov dword [esp + 0x68], eax
nop dword [eax]
mov edx, dword [edx + 4]
add edx, eax
mov eax, dword [esp + 0x3c]
mov dword [esp + 0x78], edx
movsx eax, word [eax + 0x20]
cmp ebp, eax
je 0x1006ca15
lea ecx, [edx + 4]
mov dword [esp + 0x90], ecx
test edi, edi
je 0x1006c49b
mov eax, dword [ecx]
and eax, 0xf0
cmp dword [esp + 0x9c], eax
sbb eax, eax
neg eax
jmp 0x1006c4ab
xor eax, eax
mov dword [esp + 0x90], ecx
cmp byte [edx + 8], 0x41
setg al
test byte [ecx], 0xf
mov dword [esp + 0x8c], eax
jne 0x1006c4bf
test eax, eax
je 0x1006ca15
test byte [edx + 0xe], 0x20
mov dword [esp + 0x7c], 5
je 0x1006c4f0
push 3
push ebp
push dword [esp + 0x3c]
push dword [esp + 0x48]
push esi
call fcn.10057030
add esp, 0x14
or edx, 0xffffffff
mov dword [esp + 0x58], edx
lea edi, [edx + 4]
jmp 0x1006c698
movzx eax, word [edx + 0xc]
mov ebx, dword [esp + 0x3c]
test ax, ax
je 0x1006c637
cmp byte [ebx + 0x2b], 0
mov dword [esp + 0x60], 0
jne 0x1006c637
mov ecx, dword [ebx + 0x34]
test ecx, ecx
je 0x1006c637
cmp dword [ecx], eax
jl 0x1006c637
lea eax, [eax + eax*4]
mov ecx, dword [ecx + eax*4 - 0xc]
test ecx, ecx
je 0x1006c637
push 0
lea eax, [esp + 0x64]
push eax
movzx eax, byte [edx + 8]
mov edx, dword [esp + 0x18]
push eax
movzx eax, byte [edx + 0x54]
push eax
push ecx
push edx
call fcn.10096390
mov edi, dword [esp + 0x78]
add esp, 0x18
test edi, edi
je 0x1006c637
movzx ecx, word [edi + 0x10]
mov eax, ecx
and eax, 0x3f
movzx eax, byte [eax + 0x100ac408]
mov dword [esp + 0x7c], eax
test ecx, 0x9000
jne 0x1006c582
cmp dword [edi + 0x18], 0
je 0x1006c58b
push edi
call fcn.100978d0
add esp, 4
mov ecx, dword [edi + 0x14]
test ecx, ecx
je 0x1006c5e2
cmp edi, dword [ecx + 0x164]
jae 0x1006c5cd
cmp edi, dword [ecx + 0x15c]
jb 0x1006c5b5
mov eax, dword [ecx + 0x158]
mov dword [edi], eax
mov dword [ecx + 0x158], edi
jmp 0x1006c637
cmp edi, dword [ecx + 0x160]
jb 0x1006c5cd
mov eax, dword [ecx + 0x150]
mov dword [edi], eax
mov dword [ecx + 0x150], edi
jmp 0x1006c637
cmp dword [ecx + 0x210], 0
je 0x1006c5e2
push edi
push ecx
call fcn.10037ab0
add esp, 8
jmp 0x1006c637
cmp dword [0x100bc0d8], 0
je 0x1006c62d
mov eax, dword [0x100bdd58]
test eax, eax
je 0x1006c5fe
push eax
call dword [0x100bc128]
add esp, 4
push edi
call dword [0x100bc104]
sub dword [0x100bdcf8], eax
dec dword [0x100bdd1c]
push edi
call dword [0x100bc0fc]
mov eax, dword [0x100bdd58]
add esp, 8
test eax, eax
je 0x1006c637
push eax
call dword [0x100bc130]
jmp 0x1006c634
push edi
call dword [0x100bc0fc]
add esp, 4
test byte [ebx + 0x1c], 0x80
mov edi, dword [esp + 0x34]
mov dword [esp + 0x58], edi
je 0x1006c687
mov eax, dword [esp + 0x5c]
mov ecx, dword [eax]
test ecx, ecx
je 0x1006c660
nop
mov eax, dword [ecx + 0x38]
and al, 3
cmp al, 2
je 0x1006c660
mov ecx, dword [ecx + 0x14]
test ecx, ecx
jne 0x1006c650
movzx edi, word [ecx + 0x34]
xor edx, edx
test edi, edi
je 0x1006c67d
mov eax, dword [ecx + 4]
nop dword [eax]
cmp bp, word [eax]
je 0x1006c682
inc edx
add eax, 2
cmp edx, edi
jl 0x1006c670
or eax, 0xffffffff
jmp 0x1006c691
movzx eax, dx
jmp 0x1006c691
push ebp
push ebx
call fcn.10076530
add esp, 8
mov edx, dword [esp + 0x58]
movsx edi, ax
mov ebx, dword [esp + 0x14]
mov ebp, esi
mov ecx, dword [esp + 0x80]
mov dword [esp + 0x60], ecx
mov eax, dword [ebx + 0x38]
dec eax
mov dword [esp + 0x84], eax
dec eax
mov dword [ebx + 0x38], eax
mov ebx, dword [esp + 0x90]
mov dword [esp + 0x48], eax
test byte [ebx], 0xf
mov ebx, dword [esp + 0x24]
je 0x1006c77e
push dword [esp + 0x7c]
push edi
push eax
push edx
push 0x12
push esi
call fcn.1007ab00
mov ecx, dword [ebx]
add esp, 0x18
mov dword [esp + 0x88], eax
test ecx, ecx
jle 0x1006c702
mov eax, dword [esp + 0x28]
lea edx, [ecx + ecx*4]
mov ecx, dword [eax]
mov eax, 0xf
mov word [ecx + edx*4 - 0x12], ax
mov eax, dword [esp + 0x78]
push dword [eax]
mov eax, dword [esp + 0x40]
push dword [eax]
push str.NULL_value_in__s._s
push dword [esp + 0x1c]
call fcn.10065ac0
push 0xfffffffffffffffa
push eax
push 0
push 3
push 0
push 0x75
push esi
call fcn.1007aa80
mov edx, dword [esp + 0xb8]
add esp, 0x2c
test edx, edx
je 0x1006c850
push dword [esp + 0x84]
push esi
call fcn.10084800
mov eax, dword [esi]
add esp, 8
mov edx, dword [ebx]
cmp byte [eax + 0x57], 0
je 0x1006c760
mov eax, 0x100bdf30
jmp 0x1006c773
mov eax, dword [esp + 0x88]
lea ecx, [eax + eax*4]
mov eax, dword [esp + 0x28]
mov eax, dword [eax]
lea eax, [eax + ecx*4]
mov ecx, dword [esp + 0x60]
mov dword [eax + 8], edx
mov eax, dword [esp + 0x48]
mov edx, dword [esp + 0x8c]
cmp dword [esp + 0x94], 0
je 0x1006c947
test edx, edx
je 0x1006c85d
push dword [esp + 0x7c]
push edi
mov edi, dword [esp + 0x60]
push eax
push edi
push 0x12
push esi
call fcn.1007ab00
mov ecx, dword [ebx]
add esp, 0x18
test ecx, ecx
jle 0x1006c7db
mov eax, dword [esp + 0x90]
lea ecx, [ecx + ecx*4]
mov eax, dword [eax]
shr eax, 4
and eax, 0xf
movzx edx, byte [eax + 0x100bd68b]
mov eax, dword [esp + 0x28]
mov eax, dword [eax]
mov word [eax + ecx*4 - 0x12], dx
mov ebp, dword [esp + 0x3c]
mov ecx, dword [esp + 0x68]
mov eax, dword [ebp + 4]
push dword [ecx + eax]
mov eax, dword [esp + 0x94]
push dword [ebp]
mov eax, dword [eax]
shr eax, 4
and eax, 0xf
push dword [eax*4 + 0x100bc1fc]
push str.non__s_value_in__s._s
push dword [esp + 0x20]
call fcn.10065ac0
push 0xfffffffffffffffa
push eax
push 0
push 3
push 0
push 0x75
push esi
call fcn.1007aa80
add esp, 0x30
mov edi, dword [esp + 0x48]
mov ecx, dword [esi + 0xc]
mov edx, dword [esp + 0x84]
not edx
mov eax, dword [ecx + 0x3c]
add eax, dword [ecx + 0x38]
jns 0x1006c9d4
push edx
push esi
push ecx
call fcn.100430f0
add esp, 0xc
jmp 0x1006c9dc
mov eax, dword [esp + 0x48]
mov ecx, dword [esp + 0x60]
jmp 0x1006c785
mov edx, dword [esp + 0x80]
mov ecx, dword [esp + 0x78]
mov dword [esp + 0x80], edx
cmp dword [esp + 0x94], 0
jne 0x1006c824
cmp byte [ecx + 8], 0x43
jl 0x1006c824
mov ebp, dword [esp + 0x7c]
push ebp
push edi
mov edi, dword [esp + 0x60]
push eax
push edi
push 0x12
push esi
call fcn.1007ab00
mov eax, dword [ebx]
add esp, 0x18
test eax, eax
jle 0x1006c8af
lea ecx, [eax + eax*4]
mov edx, 0x1b
mov eax, dword [esp + 0x28]
mov eax, dword [eax]
mov word [eax + ecx*4 - 0x12], dx
test edi, edi
js 0x1006c8cd
push 3
push dword [esp + 0x9c]
push dword [esp + 0x3c]
push dword [esp + 0x48]
push esi
call fcn.10057030
add esp, 0x14
push 0xffffffffffffffff
push 0x100b6d2c
push 0
push 1
push 3
push 0x60
push esi
call fcn.1007aa80
mov edi, dword [esp + 0x64]
push ebp
push 3
push edi
push 0xffffffffffffffff
push 0x12
push esi
call fcn.1007ab00
mov eax, dword [ebx]
add esp, 0x34
test eax, eax
jle 0x1006c910
lea ecx, [eax + eax*4]
mov edx, 0x1c
mov eax, dword [esp + 0x28]
mov eax, dword [eax]
mov word [eax + ecx*4 - 0x12], dx
mov edx, dword [esp + 0x3c]
mov ecx, dword [esp + 0x68]
mov eax, dword [edx + 4]
push dword [ecx + eax]
push dword [edx]
push str.TEXT_value_in__s._s
push dword [esp + 0x1c]
call fcn.10065ac0
push 0xfffffffffffffffa
push eax
push 0
push 3
push 0
push 0x75
push esi
call fcn.1007aa80
add esp, 0x2c
jmp 0x1006c828
mov dword [esp + 0x80], ecx
mov esi, ebp
mov ecx, dword [esp + 0x78]
cmp byte [ecx + 8], 0x42
jne 0x1006c86f
push dword [esp + 0x7c]
push edi
mov edi, dword [esp + 0x60]
push eax
push edi
push 0x12
push ebp
call fcn.1007ab00
mov eax, dword [ebx]
add esp, 0x18
test eax, eax
jle 0x1006c98d
lea ecx, [eax + eax*4]
mov edx, 0x1c
mov eax, dword [esp + 0x28]
mov eax, dword [eax]
mov word [eax + ecx*4 - 0x12], dx
mov edx, dword [esp + 0x3c]
mov ecx, dword [esp + 0x68]
mov eax, dword [edx + 4]
push dword [ecx + eax]
push dword [edx]
push str.NUMERIC_value_in__s._s
push dword [esp + 0x1c]
call fcn.10065ac0
push 0xfffffffffffffffa
push eax
push 0
push 3
push 0
push 0x75
push ebp
call fcn.1007aa80
mov eax, dword [esp + 0x8c]
add esp, 0x2c
mov esi, ebp
mov dword [esp + 0x80], eax
jmp 0x1006c824
mov ecx, dword [ecx + 0x40]
mov eax, dword [ebx]
mov dword [ecx + edx*4], eax
push esi
call fcn.10032bf0
mov ecx, dword [esi + 0xc]
add esp, 4
not edi
mov eax, dword [ecx + 0x3c]
add eax, dword [ecx + 0x38]
jns 0x1006c9ff
push edi
push esi
push ecx
call fcn.100430f0
add esp, 0xc
jmp 0x1006ca07
mov ecx, dword [ecx + 0x40]
mov eax, dword [ebx]
mov dword [ecx + edi*4], eax
mov edi, dword [esp + 0x94]
mov ebp, dword [esp + 0x98]
mov edx, dword [esp + 0x3c]
inc ebp
add dword [esp + 0x68], 0x10
mov dword [esp + 0x98], ebp
movsx eax, word [edx + 0x22]
cmp ebp, eax
mov eax, dword [esp + 0x68]
jl 0x1006c460
mov dword [esp + 0x48], esi
mov ecx, dword [edx + 0x10]
test ecx, ecx
je 0x1006cb7e
mov edi, dword [esp + 0x10]
mov eax, dword [edi + 0x20]
and eax, 0x200
or eax, 0
jne 0x1006cb7e
push eax
push ecx
push edi
call fcn.1005a970
add esp, 0xc
mov edx, eax
cmp byte [edi + 0x57], 0
mov dword [esp + 0x60], edx
jne 0x1006cb70
mov edi, dword [esp + 0x14]
mov eax, dword [esp + 0x34]
inc eax
mov ebp, dword [edi + 0x38]
dec ebp
mov dword [edi + 0x34], eax
lea ecx, [ebp - 1]
mov dword [edi + 0x38], ecx
mov edi, dword [edx]
dec edi
mov dword [esp + 0x88], ecx
test edi, edi
jle 0x1006cad2
mov esi, dword [esp + 0x14]
lea ebx, [edi*4 + 2]
add ebx, edi
lea ebx, [edx + ebx*4]
nop dword [eax]
push 0
push ebp
push dword [ebx]
push esi
call fcn.10059a90
dec edi
lea ebx, [ebx - 0x14]
add esp, 0x10
test edi, edi
jg 0x1006cab0
mov esi, dword [esp + 0x48]
mov ebx, dword [esp + 0x24]
mov edx, dword [esp + 0x60]
mov edi, dword [esp + 0x88]
push 0x10
push edi
push dword [edx + 8]
push dword [esp + 0x20]
call fcn.10059e80
mov ecx, dword [esi + 0xc]
add esp, 0x10
not ebp
mov eax, dword [ecx + 0x3c]
add eax, dword [ecx + 0x38]
jns 0x1006cb05
push ebp
push esi
push ecx
call fcn.100430f0
add esp, 0xc
jmp 0x1006cb0d
mov ecx, dword [ecx + 0x40]
mov eax, dword [ebx]
mov dword [ecx + ebp*4], eax
mov eax, dword [esp + 0x14]
mov dword [eax + 0x34], 0
mov eax, dword [esp + 0x3c]
push dword [eax]
push str.CHECK_constraint_failed_in__s
push dword [esp + 0x18]
call fcn.10065ac0
push 0xfffffffffffffffa
push eax
push 0
push 3
push 0
push 0x75
push esi
call fcn.1007aa80
push esi
call fcn.10032bf0
mov ecx, dword [esi + 0xc]
add esp, 0x2c
not edi
mov eax, dword [ecx + 0x3c]
add eax, dword [ecx + 0x38]
jns 0x1006cb60
push edi
push esi
push ecx
call fcn.100430f0
add esp, 0xc
jmp 0x1006cb68
mov ecx, dword [ecx + 0x40]
mov eax, dword [ebx]
mov dword [ecx + edi*4], eax
mov edi, dword [esp + 0x10]
mov edx, dword [esp + 0x60]
test edx, edx
je 0x1006cb7e
push edx
push edi
call fcn.1002abf0
add esp, 8
cmp byte [esp + 0x67], 0x71
je 0x1006cfde
mov eax, dword [esp + 0x5c]
mov ebp, dword [eax]
test ebp, ebp
je 0x1006cfde
mov eax, dword [esp + 0x20]
mov ecx, 8
sub ecx, eax
mov dword [esp + 0x58], eax
mov eax, dword [esp + 0x14]
mov dword [esp + 0x88], ecx
mov ecx, dword [esp + 0x50]
dec dword [eax + 0x38]
mov edi, dword [eax + 0x38]
cmp ecx, ebp
je 0x1006cfcf
push dword [esp + 0x40]
lea ecx, [esp + 0xa4]
push dword [esp + 0x74]
push ecx
push 0
push 0
push dword [esp + 0x48]
push ebp
push eax
call fcn.10060620
mov edx, dword [esp + 0x78]
add esp, 0x20
mov ecx, dword [ebx]
add edx, dword [esp + 0x88]
mov dword [esp + 0x40], eax
mov eax, dword [esp + 0x44]
mov dword [esp + 0x70], ebp
cmp dword [eax], ecx
jg 0x1006cc14
push 0
push 1
push edx
push 0x56
push esi
call fcn.10031c40
add esp, 0x14
jmp 0x1006cc49
lea eax, [ecx + 1]
mov dword [ebx], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [esp + 0x28]
mov ebx, dword [esp + 0x24]
mov eax, dword [eax]
mov dword [eax + ecx*4], 0x56
mov dword [eax + ecx*4 + 4], edx
mov dword [eax + ecx*4 + 8], 1
mov dword [eax + ecx*4 + 0xc], 0
mov dword [eax + ecx*4 + 0x10], 0
movzx eax, word [ebp + 0x34]
push eax
push dword [esp + 0x44]
push edi
push dword [esp + 0x64]
push 0x1d
push esi
call fcn.1007ab00
push 0
push str.row
push 0
push 3
push 0
push 0x75
push esi
mov edi, eax
call fcn.1007aa80
mov eax, dword [esp + 0x78]
add esp, 0x34
mov ecx, dword [ebx]
cmp dword [eax], ecx
jg 0x1006cc96
push 3
push 3
push 7
push 0x6f
push esi
call fcn.10031c40
add esp, 0x14
jmp 0x1006cccb
lea eax, [ecx + 1]
mov dword [ebx], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [esp + 0x28]
mov eax, dword [eax]
mov dword [eax + ecx*4], 0x6f
mov dword [eax + ecx*4 + 4], 7
mov dword [eax + ecx*4 + 8], 3
mov dword [eax + ecx*4 + 0xc], 3
mov dword [eax + ecx*4 + 0x10], 0
push 0
push str._missing_from_index
push 0
push 4
push 0
push 0x75
push esi
call fcn.1007aa80
mov eax, dword [esp + 0x60]
add esp, 0x1c
mov ecx, dword [ebx]
cmp dword [eax], ecx
jg 0x1006cd00
push 3
push 3
push 4
push 0x6f
push esi
call fcn.10031c40
add esp, 0x14
jmp 0x1006cd35
lea eax, [ecx + 1]
mov dword [ebx], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [esp + 0x28]
mov eax, dword [eax]
mov dword [eax + ecx*4], 0x6f
mov dword [eax + ecx*4 + 4], 4
mov dword [eax + ecx*4 + 8], 3
mov dword [eax + ecx*4 + 0xc], 3
mov dword [eax + ecx*4 + 0x10], 0
push 0
push dword [ebp]
push 0
push 4
push 0
push 0x75
push esi
call fcn.1007aa80
mov ecx, dword [ebx]
add esp, 0x1c
mov dword [esp + 0x84], eax
mov eax, dword [esp + 0x44]
cmp dword [eax], ecx
jg 0x1006cd6f
push 3
push 3
push 4
push 0x6f
push esi
call fcn.10031c40
add esp, 0x14
jmp 0x1006cda4
lea eax, [ecx + 1]
mov dword [ebx], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [esp + 0x28]
mov eax, dword [eax]
mov dword [eax + ecx*4], 0x6f
mov dword [eax + ecx*4 + 4], 4
mov dword [eax + ecx*4 + 8], 3
mov dword [eax + ecx*4 + 0xc], 3
mov dword [eax + ecx*4 + 0x10], 0
push esi
call fcn.10032bf0
mov ecx, dword [esi]
add esp, 4
mov edx, dword [ebx]
mov dword [esp + 0x78], eax
cmp byte [ecx + 0x57], 0
je 0x1006cdc2
mov ecx, 0x100bdf30
jmp 0x1006cdce
mov eax, dword [esp + 0x28]
lea ecx, [edi + edi*4]
mov eax, dword [eax]
lea ecx, [eax + ecx*4]
mov dword [ecx + 8], edx
cmp byte [ebp + 0x36], 0
je 0x1006cf6e
mov eax, dword [esp + 0x14]
xor ebx, ebx
dec dword [eax + 0x38]
mov edx, dword [eax + 0x38]
xor eax, eax
mov dword [esp + 0x60], edx
cmp ax, word [ebp + 0x32]
jae 0x1006ce7d
mov edi, dword [esp + 0x40]
nop dword [eax + eax]
mov eax, dword [ebp + 4]
movsx ecx, word [eax + ebx*2]
test ecx, ecx
js 0x1006ce1b
mov eax, dword [esp + 0x3c]
add ecx, ecx
mov eax, dword [eax + 4]
test byte [eax + ecx*8 + 4], 0xf
jne 0x1006ce73
mov eax, dword [esp + 0x24]
mov ecx, dword [eax]
mov eax, dword [esp + 0x44]
cmp dword [eax], ecx
jg 0x1006ce3e
push 0
push edx
push edi
push 0x32
push esi
call fcn.10031c40
mov edx, dword [esp + 0x74]
add esp, 0x14
jmp 0x1006ce73
mov edx, dword [esp + 0x24]
lea eax, [ecx + 1]
lea ecx, [ecx + ecx*4]
mov dword [edx], eax
mov eax, dword [esp + 0x28]
mov edx, dword [esp + 0x60]
mov eax, dword [eax]
mov dword [eax + ecx*4], 0x32
mov dword [eax + ecx*4 + 4], edi
mov dword [eax + ecx*4 + 8], edx
mov dword [eax + ecx*4 + 0xc], 0
mov dword [eax + ecx*4 + 0x10], 0
movzx eax, word [ebp + 0x32]
inc ebx
inc edi
cmp ebx, eax
jl 0x1006ce00
mov ecx, dword [esp + 0x24]
mov eax, dword [esp + 0x44]
mov edi, dword [ecx]
cmp dword [eax], edi
jg 0x1006cea2
push 0
push 0
push dword [esp + 0x60]
push 0x27
push esi
call fcn.10031c40
add esp, 0x14
mov edi, eax
jmp 0x1006ced7
mov edx, dword [esp + 0x58]
lea eax, [edi + 1]
mov dword [ecx], eax
lea ecx, [edi + edi*4]
mov eax, dword [esp + 0x28]
mov eax, dword [eax]
mov dword [eax + ecx*4], 0x27
mov dword [eax + ecx*4 + 4], edx
mov dword [eax + ecx*4 + 8], 0
mov dword [eax + ecx*4 + 0xc], 0
mov dword [eax + ecx*4 + 0x10], 0
mov ebx, dword [esp + 0x60]
push ebx
push esi
call fcn.10084800
mov eax, dword [esp + 0x2c]
add esp, 8
mov edx, dword [eax]
mov eax, dword [esi]
cmp byte [eax + 0x57], 0
je 0x1006cefa
mov eax, 0x100bdf30
jmp 0x1006cf06
mov eax, dword [esp + 0x28]
lea ecx, [edi + edi*4]
mov eax, dword [eax]
lea eax, [eax + ecx*4]
mov dword [eax + 8], edx
movzx eax, word [ebp + 0x32]
push eax
push dword [esp + 0x44]
push ebx
push dword [esp + 0x64]
push 0x29
push esi
call fcn.1007ab00
push 0
push str.non_unique_entry_in_index
push 0
push 3
push 0
push 0x75
push esi
call fcn.1007aa80
push dword [esp + 0xb8]
push esi
call fcn.10084800
mov ecx, dword [esi + 0xc]
add esp, 0x3c
not ebx
mov eax, dword [ecx + 0x3c]
add eax, dword [ecx + 0x38]
jns 0x1006cf5e
push ebx
push esi
push ecx
call fcn.100430f0
add esp, 0xc
jmp 0x1006cf6a
mov eax, dword [esp + 0x24]
mov ecx, dword [ecx + 0x40]
mov eax, dword [eax]
mov dword [ecx + ebx*4], eax
mov ebx, dword [esp + 0x24]
mov eax, dword [esi]
mov edx, dword [ebx]
cmp byte [eax + 0x57], 0
je 0x1006cf7f
mov eax, 0x100bdf30
jmp 0x1006cf8f
mov eax, dword [esp + 0x78]
lea ecx, [eax + eax*4]
mov eax, dword [esp + 0x28]
mov eax, dword [eax]
lea eax, [eax + ecx*4]
mov dword [eax + 8], edx
mov edx, dword [esp + 0xa0]
mov eax, dword [esp + 0x14]
test edx, edx
je 0x1006cfcb
mov edi, dword [eax + 8]
not edx
mov ecx, dword [edi + 0xc]
mov eax, dword [ecx + 0x3c]
add eax, dword [ecx + 0x38]
jns 0x1006cfbe
push edx
push edi
push ecx
call fcn.100430f0
add esp, 0xc
jmp 0x1006cfc7
mov ecx, dword [ecx + 0x40]
mov eax, dword [edi + 0x6c]
mov dword [ecx + edx*4], eax
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x50]
mov ebp, dword [ebp + 0x14]
inc dword [esp + 0x58]
test ebp, ebp
jne 0x1006cbb5
mov eax, dword [esp + 0x44]
mov ecx, dword [ebx]
mov ebp, dword [esp + 0x6c]
cmp dword [eax], ecx
jg 0x1006d004
push 0
push ebp
push dword [esp + 0x3c]
push 0x27
push esi
call fcn.10031c40
mov edi, dword [esp + 0x3c]
add esp, 0x14
jmp 0x1006d035
mov edi, dword [esp + 0x28]
lea eax, [ecx + 1]
mov edx, dword [esp + 0x34]
lea ecx, [ecx + ecx*4]
mov dword [ebx], eax
mov eax, dword [edi]
mov dword [eax + ecx*4], 0x27
mov dword [eax + ecx*4 + 4], edx
mov dword [eax + ecx*4 + 8], ebp
mov dword [eax + ecx*4 + 0xc], 0
mov dword [eax + ecx*4 + 0x10], 0
mov eax, dword [esi]
mov edx, dword [ebx]
cmp byte [eax + 0x57], 0
je 0x1006d046
mov eax, 0x100bdf38
jmp 0x1006d057
mov eax, dword [edi]
lea ecx, [ebp*4]
add ecx, ebp
lea eax, [eax + ecx*4]
add eax, 0xfffffff4
cmp byte [esp + 0x67], 0x71
mov dword [eax], edx
je 0x1006d25d
push 0
push str.wrong__of_entries_in_index
push 0
push 2
push 0
push 0x75
push esi
call fcn.1007aa80
mov eax, dword [esp + 0x78]
add esp, 0x1c
mov ebx, dword [eax]
test ebx, ebx
je 0x1006d215
mov eax, dword [esp + 0x50]
mov ebp, 8
cmp eax, ebx
je 0x1006d209
mov edi, dword [esp + 0x24]
mov edx, dword [esp + 0x20]
mov eax, dword [esp + 0x44]
add edx, 0xfffffff8
add edx, ebp
mov ecx, dword [edi]
cmp dword [eax], ecx
jg 0x1006d0c4
push 0
push 3
push edx
push 0x62
push esi
call fcn.10031c40
add esp, 0x14
jmp 0x1006d0f9
mov esi, dword [esp + 0x48]
lea eax, [ecx + 1]
mov dword [edi], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [esp + 0x28]
mov eax, dword [eax]
mov dword [eax + ecx*4], 0x62
mov dword [eax + ecx*4 + 4], edx
mov dword [eax + ecx*4 + 8], 3
mov dword [eax + ecx*4 + 0xc], 0
mov dword [eax + ecx*4 + 0x10], 0
mov eax, dword [esp + 0x44]
mov edi, dword [edi]
cmp dword [eax], edi
jg 0x1006d11b
push 3
push 0
push ebp
push 0x35
push esi
call fcn.10031c40
mov edx, dword [esp + 0x3c]
add esp, 0x14
mov edi, eax
jmp 0x1006d154
mov ecx, dword [esp + 0x24]
lea eax, [edi + 1]
mov edx, dword [esp + 0x28]
mov esi, dword [esp + 0x48]
mov dword [ecx], eax
lea ecx, [edi + edi*4]
mov eax, dword [edx]
mov dword [eax + ecx*4], 0x35
mov dword [eax + ecx*4 + 4], ebp
mov dword [eax + ecx*4 + 8], 0
mov dword [eax + ecx*4 + 0xc], 3
mov dword [eax + ecx*4 + 0x10], 0
mov eax, dword [esp + 0x24]
mov eax, dword [eax]
test eax, eax
jle 0x1006d16d
lea ecx, [eax + eax*4]
mov eax, dword [edx]
mov edx, 0x90
mov word [eax + ecx*4 - 0x12], dx
push 0
push dword [ebx]
push 0
push 4
push 0
push 0x75
push esi
call fcn.1007aa80
mov edx, dword [esp + 0x40]
add esp, 0x1c
mov eax, dword [esp + 0x44]
mov ecx, dword [edx]
cmp dword [eax], ecx
jg 0x1006d1a3
push 3
push 2
push 4
push 0x6f
push esi
call fcn.10031c40
add esp, 0x14
jmp 0x1006d1d8
lea eax, [ecx + 1]
mov dword [edx], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [esp + 0x28]
mov eax, dword [eax]
mov dword [eax + ecx*4], 0x6f
mov dword [eax + ecx*4 + 4], 4
mov dword [eax + ecx*4 + 8], 2
mov dword [eax + ecx*4 + 0xc], 3
mov dword [eax + ecx*4 + 0x10], 0
push esi
call fcn.10032bf0
mov eax, dword [esp + 0x28]
add esp, 4
mov edx, dword [eax]
mov eax, dword [esi]
cmp byte [eax + 0x57], 0
je 0x1006d1f6
mov eax, 0x100bdf30
jmp 0x1006d202
mov eax, dword [esp + 0x28]
lea ecx, [edi + edi*4]
mov eax, dword [eax]
lea eax, [eax + ecx*4]
mov dword [eax + 8], edx
mov eax, dword [esp + 0x50]
mov ebx, dword [ebx + 0x14]
inc ebp
test ebx, ebx
jne 0x1006d093
mov eax, dword [esp + 0x50]
mov ebx, dword [esp + 0x24]
test eax, eax
je 0x1006d25d
movzx eax, word [eax + 0x32]
mov ebp, dword [esp + 0x14]
cmp eax, 1
jne 0x1006d24c
mov ecx, dword [esp + 0x4c]
test ecx, ecx
je 0x1006d261
mov al, byte [ebp + 0x13]
cmp al, 8
jae 0x1006d261
movzx eax, al
mov dword [ebp + eax*4 + 0x9c], ecx
inc byte [ebp + 0x13]
jmp 0x1006d261
cmp eax, dword [ebp + 0x1c]
jle 0x1006d261
mov dword [ebp + 0x1c], eax
mov eax, dword [esp + 0x4c]
mov dword [ebp + 0x20], eax
jmp 0x1006d261
mov ebp, dword [esp + 0x14]
mov edi, dword [esp + 0x1c]
mov edi, dword [edi]
test edi, edi
mov dword [esp + 0x1c], edi
mov edi, dword [esp + 0x28]
jne 0x1006bfa0
jmp 0x1006bf35
test edx, edx
jne 0x1006d2bd
mov ebx, dword [esp + 0x14]
push ebx
call fcn.1006ec60
add esp, 4
test eax, eax
jne 0x1006d9b9
mov eax, dword [ebx]
movzx eax, byte [eax + 0x54]
push dword [eax*8 + 0x100ad510]
push esi
call fcn.10044fc0
push dword [esp + 0x38]
push dword [esp + 0x1c]
call fcn.10053c30
add esp, 0x10
jmp 0x1006d9df
mov ebp, dword [esp + 0x10]
test byte [ebp + 0x18], 0x40
jne 0x1006d9bd
mov eax, dword [str.UTF8]
mov esi, 0x100ad510
test eax, eax
je 0x1006d33a
nop dword [eax]
push eax
push edx
call fcn.100762a0
add esp, 8
test eax, eax
je 0x1006d2fe
mov eax, dword [esi + 8]
add esi, 8
mov edx, dword [esp + 0x18]
test eax, eax
jne 0x1006d2e0
jmp 0x1006d33a
mov cl, byte [esi + 4]
mov edx, 2
movzx eax, cl
test cl, cl
mov ecx, ebp
cmovne edx, eax
mov byte [esp + 0xa0], dl
push dword [esp + 0xa0]
mov eax, dword [ecx + 0x10]
push ecx
mov eax, dword [eax + 0xc]
mov byte [eax + 0x4d], dl
call fcn.10074a80
mov eax, dword [esi]
add esp, 8
test eax, eax
jne 0x1006d9bd
push dword [esp + 0x18]
push str.unsupported_encoding:__s
push dword [esp + 0x1c]
call fcn.10055e80
push dword [esp + 0x3c]
push dword [esp + 0x20]
call fcn.10053c30
mov eax, dword [esp + 0x2c]
add esp, 0x14
jmp 0x1006d9d2
mov ebx, dword [esp + 0x38]
mov edi, dword [ebp + 8]
push ebx
push esi
call fcn.10088200
add esp, 8
cmp dword [esp + 0x18], 0
je 0x1006d3ec
test byte [ebp + 5], 8
jne 0x1006d3ec
push 0
push 0x100ad558
push 2
push esi
call fcn.1007ab90
mov esi, eax
mov dword [esp + 0x30], 0
lea eax, [esp + 0x30]
push eax
push dword [esp + 0x2c]
mov dword [esi + 4], ebx
mov dword [esi + 0x18], ebx
mov dword [esi + 0x1c], edi
call fcn.10060f70
mov eax, dword [esp + 0x38]
add esp, 0x18
mov dword [esi + 0x20], eax
mov eax, 1
mov word [esi + 0x16], ax
cmp edi, eax
jne 0x1006d9b9
mov eax, dword [esp + 0x10]
mov eax, dword [eax + 0x20]
and eax, 0x10000000
or eax, 0
je 0x1006d9b9
mov byte [esi + 0x14], 0xb8
jmp 0x1006a7c3
push 0
push 0x100ad560
push 3
push esi
call fcn.1007ab90
push esi
mov dword [eax + 4], ebx
mov dword [eax + 0x18], ebx
mov dword [eax + 0x20], edi
call fcn.10087600
add esp, 0x14
jmp 0x1006d9b9
mov eax, dword [esp + 0x14]
xor edi, edi
mov dword [eax + 0x2c], 1
nop
cmp edi, 0x26
ja 0x1006d49a
mov eax, dword [edi*4 + 0x100b0ec0]
inc edi
test eax, eax
je 0x1006d49a
push 0
push eax
push 0
push 1
push 0
push 0x75
push esi
call fcn.1007aa80
mov eax, dword [esp + 0x60]
add esp, 0x1c
mov ecx, dword [ebx]
cmp dword [eax], ecx
jg 0x1006d466
push 0
push 1
push 1
push 0x54
push esi
call fcn.10031c40
add esp, 0x14
jmp 0x1006d420
lea eax, [ecx + 1]
mov dword [ebx], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [esi + 0x68]
mov dword [eax + ecx*4], 0x54
mov dword [eax + ecx*4 + 4], 1
mov dword [eax + ecx*4 + 8], 1
mov dword [eax + ecx*4 + 0xc], 0
mov dword [eax + ecx*4 + 0x10], 0
jmp 0x1006d420
push esi
call fcn.10087600
add esp, 4
jmp 0x1006d9b9
mov eax, dword [esp + 0x34]
mov ebx, 0xc
cmp dword [eax], 0
cmovne ebx, dword [esp + 0x38]
xor edi, edi
test edx, edx
je 0x1006d509
push str.full
push edx
call fcn.100762a0
add esp, 8
test eax, eax
jne 0x1006d4d6
lea edi, [eax + 1]
jmp 0x1006d509
mov ebp, dword [esp + 0x18]
push str.restart
push ebp
call fcn.100762a0
add esp, 8
test eax, eax
jne 0x1006d4f1
lea edi, [eax + 2]
jmp 0x1006d509
push str.truncate
push ebp
call fcn.100762a0
add esp, 8
mov ecx, 3
test eax, eax
cmove edi, ecx
mov eax, dword [esp + 0x14]
push 1
push edi
push ebx
push 3
push esi
mov dword [eax + 0x2c], 3
call fcn.1007aa20
push 3
push 1
push 0x54
push esi
call fcn.1007a9c0
add esp, 0x24
jmp 0x1006d9b9
test edx, edx
je 0x1006d55b
lea eax, [esp + 0x20]
mov dword [esp + 0x20], 0
push eax
push edx
call fcn.10060f70
push dword [esp + 0x28]
push dword [esp + 0x1c]
call sym.sqlite3.dll_sqlite3_wal_autocheckpoint
add esp, 0x10
mov eax, dword [esp + 0x10]
cmp dword [eax + 0x110], 0x10089790
jne 0x1006d576
mov eax, dword [eax + 0x114]
jmp 0x1006d9ad
xor eax, eax
jmp 0x1006d9ad
push dword [esp + 0x10]
call sym.sqlite3.dll_sqlite3_db_release_memory
add esp, 4
jmp 0x1006d9b9
test edx, edx
je 0x1006d5bb
lea eax, [esp + 0x20]
mov dword [esp + 0x20], 0
push eax
push edx
call fcn.10060f70
mov ecx, dword [esp + 0x28]
add esp, 8
mov dword [esp + 0x1c], ecx
test cl, 2
je 0x1006d9b9
jmp 0x1006d5c3
mov dword [esp + 0x1c], 0xfffe
cmp dword [esp + 0x3c], 0
mov ebx, dword [esp + 0x14]
mov edi, dword [esp + 0x38]
mov edx, dword [ebx + 0x28]
mov dword [esp + 0x40], edx
lea eax, [edx + 1]
mov dword [ebx + 0x28], eax
je 0x1006d5e5
mov dword [esp + 0x2c], edi
jmp 0x1006d5f9
mov eax, dword [esp + 0x10]
mov eax, dword [eax + 0x14]
dec eax
mov dword [esp + 0x2c], eax
cmp edi, eax
jg 0x1006d813
mov eax, dword [esp + 0x54]
mov ecx, edi
mov ebp, 1
rol ebp, cl
mov ecx, dword [esp + 0x2c]
mov dword [esp + 0x20], ebp
nop
cmp edi, 1
je 0x1006d7f9
mov eax, dword [ebx + 0x78]
mov ecx, ebx
test eax, eax
cmovne ecx, eax
mov eax, dword [ecx + 0x58]
test ebp, eax
jne 0x1006d630
bts eax, edi
mov dword [ecx + 0x58], eax
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x54]
mov eax, dword [eax + 0x10]
mov eax, dword [ecx + eax + 0xc]
mov ebx, dword [eax + 0x10]
test ebx, ebx
je 0x1006d7ed
nop word [eax + eax]
mov edi, dword [ebx + 8]
test dword [edi + 0x1c], 0x100
je 0x1006d7db
mov ax, word [edi + 0x26]
add ax, 0x2e
movzx ebp, ax
mov eax, dword [edi + 8]
test eax, eax
je 0x1006d683
test byte [eax + 0x38], 0x80
je 0x1006d70e
mov eax, dword [eax + 0x14]
test eax, eax
jne 0x1006d672
test bp, bp
je 0x1006d70e
push 0x70
push edi
push dword [esp + 0x40]
push edx
push dword [esp + 0x24]
call fcn.10066550
mov eax, dword [esp + 0x30]
add esp, 0x14
mov esi, dword [esp + 0x44]
and eax, 1
movsx edx, bp
add eax, 2
mov ebp, dword [esp + 0x24]
mov ecx, dword [ebp]
add eax, ecx
cmp dword [esi], ecx
mov esi, dword [esp + 0x48]
mov dword [esp + 0xa0], eax
jg 0x1006d6dc
push edx
push eax
push dword [esp + 0x48]
push 0x21
push esi
call fcn.10031c40
add esp, 0x14
jmp 0x1006d712
lea eax, [ecx + 1]
mov dword [ebp], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [esi + 0x68]
mov ebp, dword [esp + 0x40]
mov dword [eax + ecx*4 + 4], ebp
mov ebp, dword [esp + 0xa0]
mov dword [eax + ecx*4], 0x21
mov dword [eax + ecx*4 + 8], ebp
mov dword [eax + ecx*4 + 0xc], edx
mov dword [eax + ecx*4 + 0x10], 0
mov ebp, dword [esp + 0x24]
mov ecx, dword [esp + 0x10]
push dword [edi]
mov edx, dword [esp + 0x58]
mov eax, dword [ecx + 0x10]
push dword [edx + eax]
push str.ANALYZE___w_.__w_
push ecx
call fcn.10065ac0
add esp, 0x10
mov edx, eax
test byte [esp + 0x1c], 1
je 0x1006d7c0
mov edi, dword [esp + 0x14]
mov cl, byte [edi + 0x13]
test cl, cl
jne 0x1006d750
inc dword [edi + 0x2c]
mov edi, dword [edi + 0x2c]
jmp 0x1006d75f
dec cl
movzx eax, cl
mov byte [edi + 0x13], cl
mov edi, dword [edi + eax*4 + 0x9c]
push 0xfffffffffffffffa
push edx
push 0
push edi
push 0
push 0x75
push esi
call fcn.1007aa80
mov eax, dword [esp + 0x60]
add esp, 0x1c
mov ecx, dword [ebp]
cmp dword [eax], ecx
jg 0x1006d78f
push 0
push 1
push edi
push 0x54
push esi
call fcn.10031c40
add esp, 0x14
jmp 0x1006d7d7
lea eax, [ecx + 1]
mov dword [ebp], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [esi + 0x68]
mov dword [eax + ecx*4], 0x54
mov dword [eax + ecx*4 + 4], edi
mov dword [eax + ecx*4 + 8], 1
mov dword [eax + ecx*4 + 0xc], 0
mov dword [eax + ecx*4 + 0x10], 0
jmp 0x1006d7d7
push 0xfffffffffffffffa
push edx
push 0
push 0
push 0
push 0x94
push esi
call fcn.1007aa80
add esp, 0x1c
mov edx, dword [esp + 0x40]
mov ebx, dword [ebx]
test ebx, ebx
jne 0x1006d650
mov ebp, dword [esp + 0x20]
mov edi, dword [esp + 0x38]
mov ebx, dword [esp + 0x14]
mov ecx, dword [esp + 0x2c]
mov eax, dword [esp + 0x54]
inc edi
rol ebp, 1
add eax, 0x10
mov dword [esp + 0x38], edi
mov dword [esp + 0x54], eax
mov dword [esp + 0x20], ebp
cmp edi, ecx
jle 0x1006d610
push 0xa6
push esi
call fcn.1007a910
add esp, 8
jmp 0x1006d9b9
test edx, edx
je 0x1006d855
lea eax, [esp + 0xa0]
push eax
push edx
call fcn.100540a0
add esp, 8
test eax, eax
jne 0x1006d855
push dword [esp + 0xa4]
push dword [esp + 0xa4]
call sym.sqlite3.dll_sqlite3_soft_heap_limit64
add esp, 8
push 0xffffffffffffffff
push 0xffffffffffffffff
call sym.sqlite3.dll_sqlite3_soft_heap_limit64
push edx
push eax
push esi
call fcn.10044f30
add esp, 0x14
jmp 0x1006d9b9
test edx, edx
je 0x1006d8c7
lea eax, [esp + 0xa0]
push eax
push edx
call fcn.100540a0
add esp, 8
test eax, eax
jne 0x1006d8c7
push 0xffffffffffffffff
push 0xffffffffffffffff
call sym.sqlite3.dll_sqlite3_hard_heap_limit64
mov edi, dword [esp + 0xac]
add esp, 8
mov ebx, eax
test edi, edi
jl 0x1006d8c7
mov ecx, dword [esp + 0xa0]
jg 0x1006d8ad
test ecx, ecx
je 0x1006d8c7
mov eax, ebx
or eax, edx
je 0x1006d8bd
cmp edx, edi
jl 0x1006d8c7
jg 0x1006d8bd
cmp ebx, ecx
jbe 0x1006d8c7
push edi
push ecx
call sym.sqlite3.dll_sqlite3_hard_heap_limit64
add esp, 8
push 0xffffffffffffffff
push 0xffffffffffffffff
call sym.sqlite3.dll_sqlite3_hard_heap_limit64
push edx
push eax
push esi
call fcn.10044f30
add esp, 0x14
jmp 0x1006d9b9
test edx, edx
je 0x1006d923
lea eax, [esp + 0xa0]
push eax
push edx
call fcn.100540a0
add esp, 8
test eax, eax
jne 0x1006d923
cmp dword [esp + 0xa4], eax
jl 0x1006d923
mov eax, dword [esp + 0xa0]
jg 0x1006d90f
test eax, eax
jb 0x1006d923
and eax, 0x7fffffff
push eax
push 0xb
push dword [esp + 0x18]
call sym.sqlite3.dll_sqlite3_limit
add esp, 0xc
mov eax, dword [esp + 0x10]
mov eax, dword [eax + 0xa4]
jmp 0x1006d9ad
test edx, edx
je 0x1006d970
lea eax, [esp + 0xa0]
push eax
push edx
call fcn.100540a0
add esp, 8
test eax, eax
jne 0x1006d970
cmp dword [esp + 0xa4], eax
jl 0x1006d970
mov eax, dword [esp + 0xa0]
jg 0x1006d961
test eax, eax
jb 0x1006d970
mov ecx, dword [esp + 0x10]
and eax, 0x7fffffff
mov dword [ecx + 0x1f0], eax
mov eax, dword [esp + 0x10]
mov eax, dword [eax + 0x1f0]
jmp 0x1006d9ad
test edx, edx
je 0x1006d9a3
lea eax, [esp + 0x20]
mov dword [esp + 0x20], 0
push eax
push edx
call fcn.10060f70
push dword [esp + 0x28]
push dword [esp + 0x1c]
call sym.sqlite3.dll_sqlite3_busy_timeout
add esp, 0x10
mov eax, dword [esp + 0x10]
mov eax, dword [eax + 0x1f4]
cdq
push edx
push eax
push esi
call fcn.10044f30
add esp, 0xc
mov ebp, dword [esp + 0x10]
push dword [esp + 0x30]
push ebp
call fcn.10053c30
mov eax, dword [esp + 0x20]
add esp, 8
test eax, eax
je 0x1006d9df
push eax
push dword [esp + 0x14]
call fcn.10053c30
add esp, 8
pop ebx
mov ecx, dword [esp + 0xb8]
pop edi
pop esi
pop ebp
xor ecx, esp
call fcn.100aac86
add esp, 0xb0
ret