Function at 0x4a1b70
Capabilities:
Reference sql statements
Resolve function by parsing pe exports
Set current directory

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
mov eax, 0x125c
call fcn.0058d800
mov eax, dword [0x62f570]
xor eax, esp
mov dword [esp + 0x1258], eax
mov eax, dword [ebp + 8]
push ebx
push esi
xor esi, esi
mov dword [esp + 8], eax
mov eax, dword [eax + 0x580]
push edi
mov edi, ecx
mov ebx, 1
mov dword [esp + 0x14], esi
mov dword [esp + 0x10], esi
cmp eax, esi
je 0x4a1bcc
mov esi, eax
call fcn.0049ad20
mov eax, dword [esp + 0xc]
mov esi, dword [esp + 0x14]
mov dword [eax + 0x580], 0
cmp byte [edi + 1], 0
je 0x4a1cb4
cmp esi, 0x32
jge 0x4a1cac
movzx ecx, byte [edi + ebx]
push ecx
call fcn.00586541
add esp, 4
test eax, eax
je 0x4a1c03
movzx edx, byte [edi + ebx + 1]
inc ebx
push edx
call fcn.00586541
add esp, 4
test eax, eax
jne 0x4a1bf0
mov cl, byte [edi + ebx]
lea eax, [edi + ebx]
test cl, cl
je 0x4a1cac
cmp cl, 0x27
je 0x4a1c4a
cmp cl, 0x22
je 0x4a1c4a
mov dword [esp + esi*4 + 0xc0], eax
inc esi
movzx eax, byte [eax]
push eax
call fcn.00586541
add esp, 4
test eax, eax
jne 0x4a1c3d
inc ebx
cmp byte [edi + ebx], 0
lea eax, [edi + ebx]
jne 0x4a1c23
cmp byte [edi + ebx], 0
je 0x4a1c96
mov byte [edi + ebx], 0
inc ebx
jmp 0x4a1c96
inc ebx
lea eax, [edi + ebx]
mov dword [esp + esi*4 + 0xc0], eax
inc esi
cmp byte [eax], 0
movsx ecx, cl
je 0x4a1c84
mov edi, edi
mov al, byte [eax]
movsx edx, al
cmp edx, ecx
je 0x4a1c84
cmp al, 0x5c
jne 0x4a1c7a
cmp ecx, 0x22
jne 0x4a1c7a
cmp byte [edi + ebx + 1], 0
je 0x4a1c7a
inc ebx
inc ebx
cmp byte [edi + ebx], 0
lea eax, [edi + ebx]
jne 0x4a1c60
movsx eax, byte [edi + ebx]
cmp eax, ecx
jne 0x4a1c91
mov byte [edi + ebx], 0
inc ebx
cmp ecx, 0x22
jne 0x4a1ca2
mov eax, dword [esp + esi*4 + 0xbc]
call fcn.0049f7f0
cmp byte [edi + ebx], 0
jne 0x4a1bd6
mov dword [esp + 0x14], esi
test esi, esi
jne 0x4a1ccb
xor eax, eax
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x1258]
xor ecx, esp
call fcn.0057ffd2
mov esp, ebp
pop ebp
ret
mov edi, dword [esp + 0xc0]
mov al, byte [edi]
test al, al
je 0x4a1cde
inc edi
cmp byte [edi], 0
jne 0x4a1cd8
sub edi, dword [esp + 0xc0]
mov ebx, dword [esp + 0xc]
movsx esi, al
and edi, 0x3fffffff
mov dword [esp + 0x34], esi
call fcn.004a1360
cmp esi, 0x61
jne 0x4a1d89
mov ecx, dword [esp + 0xc0]
push edi
push str.auth
push ecx
call fcn.0058697e
add esp, 0xc
test eax, eax
jne 0x4a3e3f
cmp dword [esp + 0x14], 2
je 0x4a1d41
push str.Usage:_.auth_ONOFF_n
call fcn.00587376
add eax, 0x40
push eax
call fcn.00585612
jmp 0x4a3e5b
mov edi, ebx
push 0
mov eax, edi
call fcn.0049f5a0
mov esi, dword [esp + 0xc8]
add esp, 4
call fcn.0049f8e0
test eax, eax
je 0x4a1d75
mov edx, dword [edi]
push edi
push 0x49bad0
push edx
call fcn.004eb180
add esp, 0xc
jmp 0x4a3e66
mov eax, dword [edi]
push 0
push 0
push eax
call fcn.004eb180
add esp, 0xc
jmp 0x4a3e66
cmp esi, 0x62
jne 0x4a1de9
cmp edi, 3
jl 0x4a3e3f
mov esi, dword [esp + 0xc0]
push edi
push str.backup
push esi
call fcn.0058697e
add esp, 0xc
test eax, eax
je 0x4a1e19
push edi
push str.bail
push esi
call fcn.0058697e
add esp, 0xc
test eax, eax
jne 0x4a200d
cmp dword [esp + 0x14], 2
jne 0x4a1ff5
mov esi, dword [esp + 0xc4]
call fcn.0049f8e0
mov dword [0x640810], eax
jmp 0x4a3e66
cmp esi, 0x73
jne 0x4a2089
cmp edi, 3
mov esi, dword [esp + 0xc0]
jl 0x4a445c
push edi
push str.save
push esi
call fcn.0058697e
add esp, 0xc
test eax, eax
jne 0x4a445c
mov edi, 1
xor esi, esi
xor ebx, ebx
xor ecx, ecx
cmp dword [esp + 0x14], edi
jle 0x4a1e89
mov eax, dword [esp + edi*4 + 0xc0]
cmp byte [eax], 0x2d
jne 0x4a1e72
cmp byte [eax + 1], 0x2d
jne 0x4a1e3d
inc eax
mov ecx, str._append
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4a1e62
test dl, dl
je 0x4a1e5e
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4a1e62
add eax, 2
add ecx, 2
test dl, dl
jne 0x4a1e42
xor eax, eax
jmp 0x4a1e67
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x4a1e90
mov ecx, str.apndvfs
jmp 0x4a1e7e
test esi, esi
je 0x4a1e7c
test ebx, ebx
jne 0x4a1ec9
mov ebx, esi
mov esi, eax
inc edi
cmp edi, dword [esp + 0x14]
jl 0x4a1e2a
test esi, esi
jne 0x4a1ef9
push str.missing_FILENAME_argument_on_.backup_n
jmp 0x4a1ece
mov ecx, dword [esp + edi*4 + 0xc0]
push ecx
push str.unknown_option:__s_n
call fcn.00587376
mov ebx, eax
add ebx, 0x40
call fcn.004904d0
add esp, 8
mov eax, 1
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x1258]
xor ecx, esp
call fcn.0057ffd2
mov esp, ebp
pop ebp
ret
push str.Usage:_.backup__DB_____append__FILENAME_n
call fcn.00587376
add eax, 0x40
push eax
call fcn.00585612
add esp, 8
mov eax, 1
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x1258]
xor ecx, esp
call fcn.0057ffd2
mov esp, ebp
pop ebp
ret
test ebx, ebx
jne 0x4a1f02
mov ebx, str.main
push ecx
push 6
lea edx, [esp + 0x5c]
push edx
push esi
call fcn.00527c00
add esp, 0x10
test eax, eax
je 0x4a1f3d
push esi
push str.Error:_cannot_open___s__n
call fcn.00587376
mov ebx, eax
add ebx, 0x40
call fcn.004904d0
mov edi, dword [esp + 0x5c]
add esp, 8
call fcn.0049f7b0
jmp 0x4a1eaf
mov esi, dword [esp + 0xc]
push 0
mov eax, esi
call fcn.0049f5a0
mov eax, dword [esi]
mov edi, dword [esp + 0x58]
push ebx
push eax
push str.main
push edi
call fcn.004c9500
mov esi, eax
add esp, 0x14
test esi, esi
jne 0x4a1f91
push edi
call fcn.005270e0
add esp, 4
push eax
push str.Error:__s_n
call fcn.00587376
mov ebx, eax
add ebx, 0x40
call fcn.004904d0
add esp, 8
call fcn.0049f7b0
jmp 0x4a1eaf
push 0x64
push esi
call fcn.004c98c0
mov ebx, eax
add esp, 8
test ebx, ebx
je 0x4a1f91
push esi
call fcn.004ca3c0
add esp, 4
cmp ebx, 0x65
jne 0x4a1fc2
mov dword [esp + 0x10], 0
call fcn.0049f7b0
jmp 0x4a3e66
push edi
call fcn.005270e0
add esp, 4
push eax
push str.Error:__s_n
call fcn.00587376
mov ebx, eax
add ebx, 0x40
call fcn.004904d0
add esp, 8
mov dword [esp + 0x10], 1
call fcn.0049f7b0
jmp 0x4a3e66
push str.Usage:_.bail_onoff_n
call fcn.00587376
add eax, 0x40
push eax
call fcn.00585612
jmp 0x4a3e5b
push edi
push str.binary
push esi
call fcn.0058697e
add esp, 0xc
test eax, eax
jne 0x4a212c
cmp dword [esp + 0x14], 2
jne 0x4a2071
mov esi, dword [esp + 0xc4]
call fcn.0049f8e0
test eax, eax
je 0x4a2062
mov ecx, ebx
mov esi, dword [ecx + 0x18]
push esi
call fcn.00582dcf
add esp, 4
push 0x8000
push esi
call fcn.00588580
add esp, 4
push eax
call fcn.005886f3
jmp 0x4a3e63
mov edx, ebx
mov esi, dword [edx + 0x18]
call fcn.00490280
jmp 0x4a3e66
push str.Usage:_.binary_onoff_n
call fcn.00587376
add eax, 0x40
push eax
call fcn.00585612
jmp 0x4a3e5b
cmp esi, 0x63
jne 0x4a2302
mov esi, dword [esp + 0xc0]
mov ecx, 0x5fb044
mov eax, esi
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4a20c0
test dl, dl
je 0x4a20bc
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4a20c0
add eax, 2
add ecx, 2
test dl, dl
jne 0x4a20a0
xor eax, eax
jmp 0x4a20c5
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x4a214e
cmp dword [esp + 0x14], 2
jne 0x4a2114
mov ebx, dword [esp + 0xc4]
push ebx
call fcn.004b0630
add esp, 4
mov edi, eax
push edi
call dword [sym.imp.KERNEL32.dll_SetCurrentDirectoryW]
mov esi, eax
neg esi
sbb esi, esi
inc esi
push edi
mov dword [esp + 0x14], esi
call fcn.004ab490
add esp, 4
test esi, esi
je 0x4a3e66
push ebx
push str.Cannot_change_to_directory___s__n
jmp 0x4a3e4c
push str.Usage:_.cd_DIRECTORY_n
call fcn.00587376
add eax, 0x40
push eax
call fcn.00585612
jmp 0x4a3e5b
push edi
push str.breakpoint
push esi
call fcn.0058697e
add esp, 0xc
test eax, eax
jne 0x4a3e3f
inc dword [0x64081c]
jmp 0x4a3e66
cmp edi, 3
jl 0x4a22b9
push edi
push str.changes
push esi
call fcn.0058697e
add esp, 0xc
test eax, eax
jne 0x4a219f
cmp dword [esp + 0x14], 2
jne 0x4a2187
mov esi, dword [esp + 0xc4]
mov eax, 0x20
call fcn.0049f9c0
jmp 0x4a3e66
push str.Usage:_.changes_onoff_n
call fcn.00587376
add eax, 0x40
push eax
call fcn.00585612
jmp 0x4a3e5b
push edi
push str.check
push esi
call fcn.0058697e
add esp, 0xc
test eax, eax
jne 0x4a22b9
mov esi, ebx
xor edi, edi
call fcn.004a0ad0
mov esi, 2
cmp dword [esp + 0x14], esi
je 0x4a21f2
push str.Usage:_.check_GLOB_PATTERN_n
call fcn.00587376
add eax, 0x40
push eax
call fcn.00585612
add esp, 8
push edi
mov dword [esp + 0x14], esi
call fcn.004ab490
add esp, 4
jmp 0x4a3e66
push 0x5f8b88
push str.testcase_out.txt
call fcn.005884a9
add esp, 8
test eax, eax
jne 0x4a220c
xor edi, edi
jmp 0x4a221c
mov esi, eax
call fcn.0049f3c0
mov edi, eax
test edi, edi
jne 0x4a2244
lea esi, [eax + 2]
push str.Error:_cannot_read_testcase_out.txt_n
call fcn.00587376
add eax, 0x40
push eax
call fcn.00585612
add esp, 8
push edi
mov dword [esp + 0x14], esi
call fcn.004ab490
add esp, 4
jmp 0x4a3e66
mov esi, dword [esp + 0xc4]
push edi
push esi
call fcn.004a1040
add esp, 8
add ebx, 0x4c
test eax, eax
jne 0x4a228c
push edi
push esi
push ebx
push str.testcase__s_FAILED_n_Expected:___s__n______Got:___s__n
call fcn.00587376
mov ebx, eax
add ebx, 0x40
call fcn.004904d0
add esp, 0x10
push edi
mov dword [esp + 0x14], 1
call fcn.004ab490
add esp, 4
jmp 0x4a3e66
push ebx
push str.testcase__s_ok_n
call fcn.00587376
mov ebx, eax
add ebx, 0x20
call fcn.004904d0
mov eax, dword [esp + 0x14]
inc dword [eax + 0x3c]
add esp, 8
push edi
call fcn.004ab490
add esp, 4
jmp 0x4a3e66
push edi
push str.clone
push esi
call fcn.0058697e
add esp, 0xc
test eax, eax
jne 0x4a3e3f
cmp dword [esp + 0x14], 2
jne 0x4a22ea
mov eax, dword [esp + 0xc4]
mov ecx, ebx
call fcn.004a09a0
jmp 0x4a3e66
push str.Usage:_.clone_FILENAME_n
call fcn.00587376
add eax, 0x40
push eax
call fcn.00585612
jmp 0x4a3e5b
cmp esi, 0x64
jne 0x4a279f
cmp edi, 1
mov esi, dword [esp + 0xc0]
jle 0x4a23be
push edi
push str.databases
push esi
call fcn.0058697e
add esp, 0xc
test eax, eax
jne 0x4a23be
mov esi, dword [esp + 0xc]
xor ebx, ebx
push ebx
mov eax, esi
mov dword [esp + 0x5c], ebx
call fcn.0049f5a0
mov eax, 2
mov ecx, 0x162
lea edi, [esp + 0xcac]
rep movsd dword es:[edi], dword [esi]
mov dword [esp + 0xcd0], eax
mov dword [esp + 0xcd8], eax
push 0x5fb180
lea eax, [esp + 0xd1a]
push eax
push 0x14
mov dword [esp + 0xcf0], ebx
call fcn.004ad900
mov eax, dword [esp + 0x1c]
lea ecx, [esp + 0x68]
push ecx
mov ecx, dword [eax]
lea edx, [esp + 0xcbc]
push edx
push 0x49cfd0
push str.SELECT_name__file_FROM_pragma_database_list
push ecx
mov dword [esp + 0xce0], ebx
call fcn.004fc670
mov esi, dword [esp + 0x7c]
add esp, 0x24
cmp esi, ebx
je 0x4a3e66
jmp 0x4a3869
cmp edi, 3
jl 0x4a253c
push edi
push str.dbconfig
push esi
call fcn.0058697e
add esp, 0xc
test eax, eax
jne 0x4a2508
push eax
mov eax, ebx
call fcn.0049f5a0
mov esi, dword [esp + 0x18]
add esp, 4
xor edi, edi
cmp esi, 1
jle 0x4a242f
mov ecx, dword [edi*8 + 0x5e9068]
mov eax, dword [esp + 0xc4]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4a2422
test dl, dl
je 0x4a241e
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4a2422
add eax, 2
add ecx, 2
test dl, dl
jne 0x4a2402
xor eax, eax
jmp 0x4a2427
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x4a24b1
cmp esi, 3
jl 0x4a245e
mov esi, dword [esp + 0xc8]
push 0
call fcn.0049f8e0
mov edx, dword [edi*8 + 0x5e906c]
push eax
mov eax, dword [esp + 0x14]
mov ecx, dword [eax]
push edx
push ecx
call fcn.005255b0
mov esi, dword [esp + 0x24]
add esp, 0x10
mov eax, dword [edi*8 + 0x5e906c]
mov ebx, dword [esp + 0xc]
mov ecx, dword [ebx]
lea edx, [esp + 0xa0]
push edx
push 0xffffffffffffffff
push eax
push ecx
call fcn.005255b0
add esp, 0x10
cmp dword [esp + 0xa0], 0
mov eax, 0x5fa608
jne 0x4a2493
mov eax, 0x5fa610
mov edx, dword [edi*8 + 0x5e9068]
mov ebx, dword [ebx + 0x18]
push eax
push edx
push str._18s__s_n
call fcn.004904d0
add esp, 0xc
cmp esi, 1
jg 0x4a24c4
inc edi
cmp edi, 8
jl 0x4a23ef
cmp esi, 1
jle 0x4a3e66
cmp edi, 8
jne 0x4a3e66
mov eax, dword [esp + 0xc4]
push eax
push str.Error:_unknown_dbconfig___s__n
call fcn.00587376
mov ebx, eax
add ebx, 0x40
call fcn.004904d0
add esp, 8
push str.Enter__.dbconfig__with_no_arguments_for_a_list_n
call fcn.00587376
mov ebx, eax
add ebx, 0x40
call fcn.004904d0
add esp, 4
jmp 0x4a3e66
push edi
push str.dbinfo
push esi
call fcn.0058697e
add esp, 0xc
test eax, eax
jne 0x4a253c
mov edx, dword [esp + 0x14]
lea ecx, [esp + 0xc0]
push ecx
push edx
mov eax, ebx
push eax
call fcn.004a0c10
add esp, 0xc
mov dword [esp + 0x10], eax
jmp 0x4a3e66
push edi
push str.dump
push esi
call fcn.0058697e
add esp, 0xc
test eax, eax
jne 0x4a3e3f
mov edi, dword [esp + 0xc]
mov eax, dword [edi + 0x40]
mov ecx, dword [edi + 0x38]
mov dword [esp + 0x74], eax
and eax, 0xffffffa7
mov dword [edi + 0x40], eax
mov eax, 1
xor ebx, ebx
cmp dword [esp + 0x14], eax
mov dword [esp + 0x28], ebx
mov dword [esp + 0xa0], ecx
mov dword [esp + 0x20], eax
jle 0x4a263b
jmp 0x4a2590
mov edx, dword [esp + 0x20]
mov eax, dword [esp + edx*4 + 0xc0]
cmp byte [eax], 0x2d
jne 0x4a261a
cmp byte [eax + 1], 0x2d
lea esi, [eax + 1]
jne 0x4a25aa
inc esi
mov edx, str.preserve_rowids
mov ecx, esi
mov al, byte [ecx]
cmp al, byte [edx]
jne 0x4a25d1
cmp al, bl
je 0x4a25cd
mov al, byte [ecx + 1]
cmp al, byte [edx + 1]
jne 0x4a25d1
add ecx, 2
add edx, 2
cmp al, bl
jne 0x4a25b1
xor eax, eax
jmp 0x4a25d6
sbb eax, eax
sbb eax, 0xffffffff
cmp eax, ebx
jne 0x4a25e0
or dword [edi + 0x40], 8
jmp 0x4a2628
mov ecx, str.newlines
mov eax, esi
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4a2607
cmp dl, bl
je 0x4a2603
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4a2607
add eax, 2
add ecx, 2
cmp dl, bl
jne 0x4a25e7
xor eax, eax
jmp 0x4a260c
sbb eax, eax
sbb eax, 0xffffffff
cmp eax, ebx
jne 0x4a26aa
or dword [edi + 0x40], 0x10
jmp 0x4a2628
cmp dword [esp + 0x28], ebx
jne 0x4a26d9
mov dword [esp + 0x28], eax
mov eax, dword [esp + 0x20]
inc eax
cmp eax, dword [esp + 0x14]
mov dword [esp + 0x20], eax
jl 0x4a2590
push ebx
mov eax, edi
call fcn.0049f5a0
mov edx, dword [edi + 0x18]
push str.PRAGMA_foreign_keysOFF__n
push edx
call fcn.00585612
mov eax, dword [edi + 0x18]
push str.BEGIN_TRANSACTION__n
push eax
call fcn.00585612
mov ecx, dword [edi]
push ebx
push ebx
push ebx
push str.SAVEPOINT_dump__PRAGMA_writable_schemaON
push ecx
mov dword [edi + 0x34], ebx
mov dword [edi + 0x38], ebx
call fcn.004fc670
add esp, 0x28
mov dword [edi + 0x20], ebx
cmp dword [esp + 0x28], ebx
jne 0x4a26f1
push str.SELECT_name__type__sql_FROM_sqlite_master_WHERE_sql_NOT_NULL_AND_typetable_AND_name_sqlite_sequence
mov esi, edi
call fcn.0049f2b0
push str.SELECT_name__type__sql_FROM_sqlite_master_WHERE_namesqlite_sequence
call fcn.0049f2b0
push esi
mov edx, str.SELECT_sql_FROM_sqlite_master_WHERE_sql_NOT_NULL_AND_type_IN__index_trigger_view_
call fcn.0049d280
add esp, 0xc
jmp 0x4a2734
mov eax, dword [esp + 0x20]
mov ecx, dword [esp + eax*4 + 0xc0]
push ecx
push str.Unknown_option___s__on__.dump__n
call fcn.00587376
add eax, 0x40
push eax
call fcn.00585612
add esp, 0xc
mov dword [esp + 0x10], 1
jmp 0x4a3e66
push str.Usage:_.dump____preserve_rowids_____newlines___LIKE_PATTERN__n
call fcn.00587376
add eax, 0x40
push eax
call fcn.00585612
jmp 0x4a3e5b
mov edx, dword [esp + 0x28]
push edx
push str.SELECT_name__type__sql_FROM_sqlite_master_WHERE_tbl_name_LIKE__Q_AND_typetable__AND_sql_NOT_NULL
call fcn.004ad880
mov esi, dword [esp + 0x14]
mov edi, eax
push edi
call fcn.0049f2b0
push edi
call fcn.004ab490
mov eax, dword [esp + 0x38]
push eax
push str.SELECT_sql_FROM_sqlite_master_WHERE_sql_NOT_NULL__AND_type_IN__index_trigger_view___AND_tbl_name_LIKE__Q
call fcn.004ad880
mov edi, eax
push esi
mov edx, edi
call fcn.0049d280
push edi
call fcn.004ab490
add esp, 0x20
cmp dword [esi + 0x34], ebx
je 0x4a274d
mov ecx, dword [esi + 0x18]
push str.PRAGMA_writable_schemaOFF__n
push ecx
call fcn.00585612
add esp, 8
mov dword [esi + 0x34], ebx
mov edx, dword [esi]
push ebx
push ebx
push ebx
push str.PRAGMA_writable_schemaOFF_
push edx
call fcn.004fc670
mov eax, dword [esi]
push ebx
push ebx
push ebx
push str.RELEASE_dump_
push eax
call fcn.004fc670
add esp, 0x28
mov eax, str.ROLLBACK_____due_to_errors_n
cmp dword [esi + 0x20], ebx
jne 0x4a277f
mov eax, str.COMMIT__n
mov ecx, dword [esi + 0x18]
push eax
push ecx
call fcn.00585612
mov edx, dword [esp + 0xa8]
mov eax, dword [esp + 0x7c]
mov dword [esi + 0x38], edx
mov dword [esi + 0x40], eax
jmp 0x4a3e63
cmp esi, 0x65
jne 0x4a2a30
mov esi, dword [esp + 0xc0]
push edi
push str.echo
push esi
call fcn.0058697e
add esp, 0xc
test eax, eax
jne 0x4a27f7
cmp dword [esp + 0x14], 2
jne 0x4a27df
mov esi, dword [esp + 0xc4]
mov eax, 0x40
call fcn.0049f9c0
jmp 0x4a3e66
push str.Usage:_.echo_onoff_n
call fcn.00587376
add eax, 0x40
push eax
call fcn.00585612
jmp 0x4a3e5b
push edi
push 0x5f88b8
push esi
call fcn.0058697e
add esp, 0xc
test eax, eax
jne 0x4a2901
mov ebx, 2
cmp dword [esp + 0x14], ebx
jne 0x4a28e9
mov edi, dword [esp + 0xc]
mov esi, dword [esp + 0xc4]
mov byte [edi + 6], al
mov ecx, str.full
mov eax, esi
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4a2850
test dl, dl
je 0x4a284c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4a2850
add eax, ebx
add ecx, ebx
test dl, dl
jne 0x4a2832
xor eax, eax
jmp 0x4a2855
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x4a2862
mov byte [edi + 5], 3
jmp 0x4a3e66
mov ecx, str.trigger
mov eax, esi
lea esp, [esp]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4a288e
test dl, dl
je 0x4a288a
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4a288e
add eax, ebx
add ecx, ebx
test dl, dl
jne 0x4a2870
xor eax, eax
jmp 0x4a2893
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x4a289f
mov byte [edi + 5], bl
jmp 0x4a3e66
mov ecx, str.test
mov eax, esi
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4a28c4
test dl, dl
je 0x4a28c0
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4a28c4
add eax, ebx
add ecx, ebx
test dl, dl
jne 0x4a28a6
xor eax, eax
jmp 0x4a28c9
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x4a28da
mov al, 1
mov byte [edi + 5], al
mov byte [edi + 6], al
jmp 0x4a3e66
call fcn.0049f8e0
mov ecx, edi
mov byte [ecx + 5], al
jmp 0x4a3e66
push str.Usage:_.eqp_offontriggerfull_n
call fcn.00587376
add eax, 0x40
push eax
call fcn.00585612
jmp 0x4a3e5b
push edi
push str.exit
push esi
call fcn.0058697e
add esp, 0xc
test eax, eax
jne 0x4a2939
cmp dword [esp + 0x14], 1
jle 0x4a423f
mov eax, dword [esp + 0xc4]
call fcn.004908d0
test eax, eax
je 0x4a423f
push eax
call fcn.00589331
push edi
push str.explain
push esi
call fcn.0058697e
add esp, 0xc
test eax, eax
jne 0x4a29f4
cmp dword [esp + 0x14], 2
jl 0x4a2998
mov esi, dword [esp + 0xc4]
mov ecx, str.auto
mov eax, esi
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4a2985
test dl, dl
je 0x4a2981
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4a2985
add eax, 2
add ecx, 2
test dl, dl
jne 0x4a2965
xor eax, eax
jmp 0x4a298a
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
je 0x4a29dd
call fcn.0049f8e0
cmp eax, 1
jne 0x4a29b9
mov eax, ebx
mov ecx, dword [eax + 0x24]
cmp ecx, 9
je 0x4a3e66
mov dword [eax + 0x30], ecx
mov dword [eax + 0x24], 9
mov byte [eax + 4], 0
jmp 0x4a3e66
test eax, eax
jne 0x4a29d4
mov eax, ebx
cmp dword [eax + 0x24], 9
jne 0x4a29cb
mov edx, dword [eax + 0x30]
mov dword [eax + 0x24], edx
mov byte [eax + 4], 0
jmp 0x4a3e66
cmp eax, 0x63
jne 0x4a3e66
mov eax, ebx
cmp dword [eax + 0x24], 9
jne 0x4a29eb
mov ecx, dword [eax + 0x30]
mov dword [eax + 0x24], ecx
mov byte [eax + 4], 1
jmp 0x4a3e66
push edi
push str.expert
push esi
call fcn.0058697e
add esp, 0xc
test eax, eax
jne 0x4a3e99
push eax
mov esi, ebx
mov eax, esi
call fcn.0049f5a0
mov edx, dword [esp + 0x18]
push edx
lea eax, [esp + 0xc8]
push eax
push esi
call fcn.0049e360
add esp, 0x10
jmp 0x4a3e66
cmp esi, 0x66
jne 0x4a2c1d
mov ecx, dword [esp + 0xc0]
push edi
push str.fullschema
push ecx
call fcn.0058697e
add esp, 0xc
test eax, eax
jne 0x4a3e3f
mov esi, dword [esp + 0xc]
mov eax, 3
mov ecx, 0x162
lea edi, [esp + 0x198]
rep movsd dword es:[edi], dword [esi]
xor ebx, ebx
mov dword [esp + 0x1bc], eax
mov dword [esp + 0x1c4], eax
mov eax, dword [esp + 0x14]
mov dword [esp + 0x30], ebx
mov dword [esp + 0x1d0], ebx
cmp eax, 2
jne 0x4a2b43
mov eax, dword [esp + 0xc4]
mov ecx, str.indent
call fcn.004a12d0
test eax, eax
je 0x4a2b4c
mov eax, 0xb
mov dword [esp + 0x1bc], eax
mov dword [esp + 0x1c4], eax
mov esi, dword [esp + 0xc]
push ebx
mov eax, esi
call fcn.0049f5a0
mov ecx, dword [esi]
lea edx, [esp + 0x34]
push edx
lea eax, [esp + 0x1a0]
push eax
push 0x49cfd0
push str.SELECT_sql_FROM___SELECT_sql_sql__type_type__tbl_name_tbl_name__name_name__rowid_x_____FROM_sqlite_master_UNION_ALL___SELECT_sql__type__tbl_name__name__rowid_FROM_sqlite_temp_master__WHERE_type_meta_AND_sql_NOTNULL_AND_name_NOT_LIKE_sqlite___ORDER_BY_rowid
push ecx
call fcn.004fc670
add esp, 0x18
mov dword [esp + 0x10], eax
cmp eax, ebx
jne 0x4a2b30
mov eax, dword [esi]
push ebx
lea edx, [esp + 0x38]
push edx
push 0xffffffffffffffff
push str.SELECT_rowid_FROM_sqlite_master_WHERE_name_GLOB_sqlite_stat_134_
push eax
call fcn.00501770
mov edi, dword [esp + 0x48]
push edi
mov dword [esp + 0x28], eax
call fcn.004d1cc0
xor ebx, ebx
cmp eax, 0x64
push edi
sete bl
call fcn.004d0dd0
add esp, 0x1c
test ebx, ebx
jne 0x4a2b64
mov ecx, dword [esi + 0x18]
push str.__No_STAT_tables_available___n
push ecx
call fcn.00585612
jmp 0x4a3e63
cmp eax, 1
je 0x4a2ac2
push str.Usage:_.fullschema____indent__n
call fcn.00587376
add eax, 0x40
push eax
call fcn.00585612
jmp 0x4a3e5b
mov edx, dword [esi + 0x18]
push str.ANALYZE_sqlite_master__n
push edx
call fcn.00585612
mov edx, dword [esi]
lea eax, [esp + 0x38]
push eax
lea ecx, [esp + 0x1a4]
push ecx
push 0x49cfd0
push str.SELECT_ANALYZE_sqlite_master
push edx
call fcn.004fc670
mov eax, 5
mov dword [esp + 0x1d8], eax
mov dword [esp + 0x1e0], eax
lea eax, [esp + 0x4c]
push eax
push str.SELECT__FROM_sqlite_stat1
lea eax, [esp + 0x1bc]
mov dword [esp + 0x200], str.sqlite_stat1
call fcn.0049e4d0
lea ecx, [esp + 0x54]
push ecx
push str.SELECT__FROM_sqlite_stat3
lea eax, [esp + 0x1c4]
mov dword [esp + 0x208], str.sqlite_stat3
call fcn.0049e4d0
lea edx, [esp + 0x5c]
push edx
push str.SELECT__FROM_sqlite_stat4
lea eax, [esp + 0x1cc]
mov dword [esp + 0x210], str.sqlite_stat4
call fcn.0049e4d0
mov eax, dword [esi + 0x18]
push str.ANALYZE_sqlite_master__n
push eax
call fcn.00585612
add esp, 0x3c
jmp 0x4a3e66
cmp esi, 0x68
jne 0x4a2ca1
mov esi, dword [esp + 0xc0]
push edi
push str.headers
push esi
call fcn.0058697e
add esp, 0xc
test eax, eax
jne 0x4a2c71
cmp dword [esp + 0x14], 2
jne 0x4a2c59
mov esi, dword [esp + 0xc4]
call fcn.0049f8e0
mov ecx, ebx
mov dword [ecx + 0x38], eax
jmp 0x4a3e66
push str.Usage:_.headers_onoff_n
call fcn.00587376
add eax, 0x40
push eax
call fcn.00585612
jmp 0x4a3e5b
push edi
push str.help
push esi
call fcn.0058697e
add esp, 0xc
test eax, eax
jne 0x4a3e3f
mov edx, ebx
mov ebx, dword [edx + 0x18]
push str..auth_ONOFF___________Show_authorizer_callbacks_n.backup__DB__FILE______Backup_DB__default__main___to_FILE_n_________________________Add____append__to_open_using_appendvfs._n.bail_onoff___________Stop_after_hitting_an_error.__Default_OFF_n.binary_onoff_________Turn_binary_output_on_or_off.__Default_OFF_n.cd_DIRECTORY__________Change_the_working_directory_to_DIRECTORY_n.changes_onoff________Show_number_of_rows_changed_by_SQL_n.check_GLOB____________Fail_if_output_since_.testcase_does_not_match_n.clone_NEWDB___________Clone_data_into_NEWDB_from_the_existing_database_n.databases_____________List_names_and_files_of_attached_databases_n.dbconfig__op___val____List_or_change_sqlite3_db_config___options_n.dbinfo__DB____________Show_status_information_about_the_database_n.dump__TABLE__...______Dump_the_database_in_an_SQL_text_format_n_________________________If_TABLE_specified__only_dump_tables_matching_n_________________________LIKE_pattern_TABLE._n.echo_onoff___________Turn_command_echo_on_or_off_n.eqp_onofffull_______Enable_or_disable_automatic_EXPLAIN_QUERY_PLAN_n.excel_________________Display_the_output_of_next_command_in_a_spreadsheet_n.exit__________________Exit_this_program_n.expert________________EXPERIMENTAL._Suggest_indexes_for_specified_queries_n.fullschema____indent__Show_schema_and_the_content_of_sqlite_stat_tables_n.headers_onoff________Turn_display_of_headers_on_or_off_n.help__________________Show_this_message_n.import_FILE_TABLE_____Import_data_from_FILE_into_TABLE_n.imposter_INDEX_TABLE__Create_imposter_table_TABLE_on_index_INDEX_n.indexes__TABLE________Show_names_of_all_indexes_n_________________________If_TABLE_specified__only_show_indexes_for_tables_n_________________________matching_LIKE_pattern_TABLE._n.limit__LIMIT___VAL____Display_or_change_the_value_of_an_SQLITE_LIMIT_n.lint_OPTIONS__________Report_potential_schema_issues._Options:_n_________________________fkey_indexes_____Find_missing_foreign_key_indexes_n.load_FILE__ENTRY______Load_an_extension_library_n.log_FILEoff__________Turn_logging_on_or_off.__FILE_can_be_stderr_stdout_n.mode_MODE__TABLE______Set_output_mode_where_MODE_is_one_of:_n_________________________ascii____Columns_rows_delimited_by_0x1F_and_0x1E_n_________________________csv______Comma_separated_values_n_________________________column___Left_aligned_columns.___See_.width__n_________________________html_____HTML__table__code_n_________________________insert___SQL_insert_statements_for_TABLE_n_________________________line_____One_value_per_line_n_________________________list_____Values_delimited_by____n_________________________quote____Escape_answers_as_for_SQL_n_________________________tabs_____Tab_separated_values_n_________________________tcl______TCL_list_elements_n.nullvalue_STRING______Use_STRING_in_place_of_NULL_values_n.once___e_xFILE______Output_for_the_next_SQL_command_only_to_FILE_n_________________________or_invoke_system_text_editor___e__or_spreadsheet___x__n_________________________on_the_output._n.open__OPTIONS___FILE__Close_existing_database_and_reopen_FILE_n_________________________The___new_option_starts_with_an_empty_file_n_________________________Other_options:___readonly___append___zip_n.output__FILE__________Send_output_to_FILE_or_stdout_n.print_STRING..._______Print_literal_STRING_n.prompt_MAIN_CONTINUE__Replace_the_standard_prompts_n.quit__________________Exit_this_program_n.read_FILENAME_________Execute_SQL_in_FILENAME_n.restore__DB__FILE_____Restore_content_of_DB__default__main___from_FILE_n.save_FILE_____________Write_in_memory_database_into_FILE_n.scanstats_onoff______Turn_sqlite3_stmt_scanstatus___metrics_on_or_off_n.schema__PATTERN_______Show_the_CREATE_statements_matching_PATTERN_n__________________________Add___indent_for_pretty_printing_n.selftest____init______Run_tests_defined_in_the_SELFTEST_table_n.separator_COL__ROW____Change_the_column_separator_and_optionally_the_row_n_________________________separator_for_both_the_output_mode_and_.import_n.sha3sum__OPTIONS...___Compute_a_SHA3_hash_of_database_content_n.shell_CMD_ARGS..._____Run_CMD_ARGS.
push 0x5f7c60
call fcn.004904d0
jmp 0x4a3e63
cmp esi, 0x69
jne 0x4a365b
mov ebx, dword [esp + 0xc0]
push edi
push str.import
push ebx
call fcn.0058697e
add esp, 0xc
test eax, eax
jne 0x4a3379
xor esi, esi
cmp dword [esp + 0x14], 3
mov dword [esp + 0x3c], esi
je 0x4a2ced
push str.Usage:_.import_FILE_TABLE_n
call fcn.00587376
add eax, 0x40
push eax
call fcn.00585612
jmp 0x4a3e63
mov edi, dword [esp + 0xc]
xor eax, eax
mov dword [esp + 0x78], eax
mov dword [esp + 0x7c], eax
mov dword [esp + 0x80], eax
mov dword [esp + 0x84], eax
mov dword [esp + 0x88], eax
mov dword [esp + 0x8c], eax
mov dword [esp + 0x90], eax
mov dword [esp + 0x94], eax
mov dword [esp + 0x98], eax
mov dword [esp + 0x9c], eax
push esi
mov eax, edi
mov dword [0x640818], esi
call fcn.0049f5a0
lea ecx, [edi + 0x6a]
add esp, 4
mov dword [esp + 0x34], ecx
call fcn.00490700
cmp eax, esi
jne 0x4a2d5e
push str.Error:_non_null_column_separator_required_for_import_n
jmp 0x4a1ece
cmp eax, 1
jle 0x4a2d6d
push str.Error:_multi_character_column_separators_not_allowed_for_import_n
jmp 0x4a1ece
lea ebx, [edi + 0x7e]
mov ecx, ebx
call fcn.00490700
cmp eax, esi
jne 0x4a2d85
push str.Error:_non_null_row_separator_required_for_import_n
jmp 0x4a1ece
cmp eax, 2
jne 0x4a2dd7
cmp dword [edi + 0x24], 8
jne 0x4a2ddc
mov ecx, 0x5e1608
mov eax, ebx
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4a2db7
test dl, dl
je 0x4a2db3
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4a2db7
add eax, 2
add ecx, 2
test dl, dl
jne 0x4a2d97
xor eax, eax
jmp 0x4a2dbc
sbb eax, eax
sbb eax, 0xffffffff
cmp eax, esi
jne 0x4a2ddc
push 0x5f7930
push ebx
push 0x14
call fcn.004ad900
add esp, 0xc
mov ecx, ebx
call fcn.00490700
cmp eax, 1
jle 0x4a2de6
push str.Error:_multi_character_row_separators_not_allowed_for_import_n
jmp 0x4a1ece
mov esi, dword [esp + 0xc4]
mov dword [esp + 0x78], esi
mov dword [esp + 0x8c], 1
cmp byte [esi], 0x7c
jne 0x4a2e24
lea eax, [esi + 1]
push 0x5fb930
push eax
call fcn.00586acf
mov dword [esp + 0x80], str._pipe_
mov dword [esp + 0x24], fcn.00586fe0
jmp 0x4a2e37
push 0x5f8b88
push esi
call fcn.005884a9
mov dword [esp + 0x24], fcn.00582ea2
add esp, 8
cmp dword [edi + 0x24], 0xa
mov dword [esp + 0x7c], eax
mov dword [esp + 0x20], 0x49fe00
je 0x4a2e54
mov dword [esp + 0x20], 0x49fbd0
test eax, eax
jne 0x4a2e63
push esi
push str.Error:_cannot_open___s__n
jmp 0x4a1e9d
mov ecx, dword [esp + 0x34]
movsx edx, byte [ecx]
mov ecx, dword [esp + 0xc8]
movsx eax, byte [ebx]
push ecx
push str.SELECT__FROM__s
mov dword [esp + 0xa0], edx
mov dword [esp + 0xa4], eax
call fcn.004ad880
mov ebx, eax
add esp, 8
test ebx, ebx
jne 0x4a2ea7
mov edx, dword [esp + 0x7c]
push edx
call dword [esp + 0x20]
add esp, 4
call fcn.00490550
mov ecx, ebx
call fcn.00490700
push 0
mov dword [esp + 0x38], eax
lea eax, [esp + 0x40]
push eax
push 0xffffffffffffffff
mov ecx, edi
mov edx, dword [ecx]
push ebx
push edx
call fcn.00501770
push 0
lea esi, [esp + 0x90]
mov edi, eax
call fcn.0049fb60
add esp, 0x18
test edi, edi
je 0x4a3046
mov eax, dword [esp + 0xc]
mov ecx, dword [eax]
push ecx
call fcn.005270e0
push eax
push str.no_such_table:_
call fcn.004f4ae0
add esp, 0xc
test eax, eax
jne 0x4a3046
mov edx, dword [esp + 0xc8]
push edx
push str.CREATE_TABLE__s
call fcn.004ad880
mov edi, dword [esp + 0x28]
mov esi, eax
lea eax, [esp + 0x80]
push eax
mov byte [esp + 0x4f], 0x28
call edi
add esp, 0xc
test eax, eax
je 0x4a2ffd
jmp 0x4a2f40
mov ecx, dword [esp + 0x80]
movsx edx, byte [esp + 0x43]
push ecx
push edx
push esi
push str._z_c_n____w__TEXT
call fcn.004ad880
mov esi, eax
mov eax, dword [esp + 0xa4]
add esp, 0x10
mov byte [esp + 0x43], 0x2c
cmp eax, dword [esp + 0x98]
jne 0x4a2f81
lea ecx, [esp + 0x78]
push ecx
call edi
add esp, 4
test eax, eax
jne 0x4a2f40
push esi
push str._z_n_
call fcn.004ad880
mov edx, dword [esp + 0x14]
push 0
push 0
mov esi, eax
mov eax, dword [edx]
push 0
push esi
push eax
call fcn.004fc670
push esi
mov edi, eax
call fcn.004ab490
mov ecx, dword [esp + 0x2c]
mov edx, dword [ecx]
add esp, 0x20
test edi, edi
je 0x4a3031
push edx
call fcn.005270e0
add esp, 4
push eax
mov eax, dword [esp + 0xcc]
push eax
push str.CREATE_TABLE__s_...__failed:__s_n
call fcn.00587376
mov ebx, eax
add ebx, 0x40
call fcn.004904d0
mov ecx, dword [esp + 0x8c]
push ecx
call fcn.004ab490
mov edx, dword [esp + 0x8c]
push edx
call dword [esp + 0x30]
add esp, 0x14
jmp 0x4a1eaf
push esi
call fcn.004ab490
mov edx, dword [esp + 0x84]
push edx
call fcn.004ab490
mov eax, dword [esp + 0x84]
push eax
call dword [esp + 0x28]
mov ecx, dword [esp + 0x84]
add esp, 0xc
push ecx
push str._s:_empty_file_n
jmp 0x4a1e9d
push 0
lea eax, [esp + 0x40]
push eax
push 0xffffffffffffffff
push ebx
push edx
call fcn.00501770
add esp, 0x14
mov edi, eax
push ebx
call fcn.004ab490
add esp, 4
test edi, edi
je 0x4a309c
mov eax, dword [esp + 0x3c]
test eax, eax
je 0x4a3064
push eax
call fcn.004d0dd0
add esp, 4
mov eax, dword [esp + 0xc]
mov ecx, dword [eax]
push ecx
call fcn.005270e0
add esp, 4
push eax
push str.Error:__s_n
call fcn.00587376
mov ebx, eax
add ebx, 0x40
call fcn.004904d0
mov edx, dword [esp + 0x84]
push edx
call dword [esp + 0x28]
add esp, 0xc
jmp 0x4a1eaf
mov ecx, dword [esp + 0x3c]
push ecx
call fcn.004d20f0
push ecx
mov edi, eax
call fcn.004d0dd0
add esp, 8
mov dword [esp + 0x3c], 0
test edi, edi
je 0x4a1cb4
mov ebx, dword [esp + 0x34]
lea eax, [edi + ebx]
lea eax, [eax + eax + 0x14]
cdq
push edx
push eax
call fcn.004ab3e0
mov esi, eax
add esp, 8
test esi, esi
jne 0x4a30ee
mov eax, dword [esp + 0x7c]
push eax
call dword [esp + 0x20]
add esp, 4
call fcn.00490550
mov ecx, dword [esp + 0xc8]
push ecx
push str.INSERT_INTO___w__VALUES__
push esi
add ebx, 0x14
push ebx
call fcn.004ad900
add esp, 0x10
mov ecx, esi
call fcn.00490700
cmp edi, 1
jle 0x4a3126
lea ecx, [edi - 1]
mov byte [eax + esi], 0x2c
inc eax
mov byte [eax + esi], 0x3f
inc eax
sub ecx, 1
jne 0x4a3117
push 0
mov byte [eax + esi], 0x29
lea edx, [esp + 0x40]
push edx
mov byte [eax + esi + 1], 0
mov eax, dword [esp + 0x14]
mov ecx, dword [eax]
push 0xffffffffffffffff
push esi
push ecx
call fcn.00501770
mov ebx, eax
push esi
mov dword [esp + 0x28], ebx
call fcn.004ab490
mov edx, dword [esp + 0x24]
mov eax, dword [edx]
add esp, 0x18
test ebx, ebx
je 0x4a31a1
push eax
call fcn.005270e0
add esp, 4
push eax
push str.Error:__s_n
call fcn.00587376
mov ebx, eax
add ebx, 0x40
call fcn.004904d0
mov eax, dword [esp + 0x44]
add esp, 8
test eax, eax
je 0x4a3190
push eax
call fcn.004d0dd0
add esp, 4
mov ecx, dword [esp + 0x7c]
push ecx
call dword [esp + 0x20]
add esp, 4
jmp 0x4a1eaf
movzx ecx, byte [eax + 0x47]
mov dword [esp + 0x34], ecx
test ecx, ecx
je 0x4a31c1
push 0
push 0
push 0
push str.BEGIN
push eax
call fcn.004fc670
add esp, 0x14
mov eax, dword [esp + 0x8c]
xor esi, esi
mov dword [esp + 0x18], eax
test edi, edi
jle 0x4a3278
lea ecx, [esp + 0x78]
push ecx
call dword [esp + 0x24]
add esp, 4
test eax, eax
jne 0x4a31ee
test esi, esi
je 0x4a3278
mov edx, dword [esp + 0xc]
cmp dword [edx + 0x24], 0xa
jne 0x4a3205
test eax, eax
je 0x4a3201
cmp byte [eax], 0
jne 0x4a3205
test esi, esi
je 0x4a3278
push 0xffffffffffffffff
push 0xffffffffffffffff
push eax
mov eax, dword [esp + 0x48]
lea ebx, [esi + 1]
push ebx
push eax
call fcn.004d2c80
lea ecx, [edi - 1]
add esp, 0x14
cmp esi, ecx
jge 0x4a326f
mov edx, dword [esp + 0x94]
cmp edx, dword [esp + 0x98]
je 0x4a326f
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x78]
push ebx
push edi
push eax
push ecx
push str._s:_d:_expected__d_columns_but_found__d___filling_the_rest_with_NULL_n
call fcn.00587376
mov ebx, eax
add ebx, 0x40
call fcn.004904d0
add esi, 2
add esp, 0x14
cmp esi, edi
jg 0x4a326f
mov ebx, dword [esp + 0x3c]
push esi
push ebx
call fcn.004d2bc0
inc esi
add esp, 8
cmp esi, edi
jle 0x4a3260
inc esi
cmp esi, edi
jl 0x4a31d6
mov edx, dword [esp + 0x98]
cmp dword [esp + 0x94], edx
jne 0x4a32ce
mov ebx, dword [esp + 0x20]
lea esp, [esp]
lea eax, [esp + 0x78]
push eax
call ebx
mov ecx, dword [esp + 0x98]
add esp, 4
inc esi
cmp ecx, dword [esp + 0x98]
je 0x4a3290
mov edx, dword [esp + 0x18]
mov eax, dword [esp + 0x78]
push esi
push edi
push edx
push eax
push str._s:_d:_expected__d_columns_but_found__d___extras_ignored_n
call fcn.00587376
mov ebx, eax
add ebx, 0x40
call fcn.004904d0
add esp, 0x14
cmp esi, edi
jl 0x4a331e
mov esi, dword [esp + 0x3c]
push esi
call fcn.004d1cc0
push esi
call fcn.004d0ea0
add esp, 8
mov dword [esp + 0x10], eax
test eax, eax
je 0x4a331e
mov ecx, dword [esp + 0xc]
mov edx, dword [ecx]
push edx
call fcn.005270e0
mov ecx, dword [esp + 0x7c]
add esp, 4
push eax
mov eax, dword [esp + 0x1c]
push eax
push ecx
push str._s:_d:_INSERT_failed:__s_n
call fcn.00587376
mov ebx, eax
add ebx, 0x40
call fcn.004904d0
add esp, 0x10
cmp dword [esp + 0x94], 0xffffffff
jne 0x4a31c1
mov edx, dword [esp + 0x7c]
push edx
call dword [esp + 0x20]
mov eax, dword [esp + 0x84]
push eax
call fcn.004ab490
mov ecx, dword [esp + 0x44]
push ecx
call fcn.004d0dd0
add esp, 0xc
cmp dword [esp + 0x34], 0
je 0x4a3e66
mov edx, dword [esp + 0xc]
mov eax, dword [edx]
push 0
push 0
push 0
push str.COMMIT
push eax
call fcn.004fc670
add esp, 0x14
jmp 0x4a3e66
push edi
push str.imposter
push ebx
call fcn.0058697e
add esp, 0xc
test eax, eax
jne 0x4a57dc
mov edi, dword [esp + 0x14]
xor esi, esi
mov dword [esp + 0x24], esi
cmp edi, 3
je 0x4a33e1
cmp edi, 2
jne 0x4a33bd
mov ecx, dword [esp + 0xc4]
push 0x5fa610
push ecx
call fcn.004ae7c0
add esp, 8
test eax, eax
je 0x4a33e1
push str.Usage:_.imposter_INDEX_IMPOSTER_n_______.imposter_off_n
call fcn.00587376
mov ebx, eax
add ebx, 0x40
call fcn.004904d0
add esp, 4
mov dword [esp + 0x10], 1
jmp 0x4a3e66
mov ebx, dword [esp + 0xc]
push 0
mov eax, ebx
call fcn.0049f5a0
add esp, 4
cmp edi, 2
jne 0x4a3411
mov edx, dword [ebx]
push 1
push 0
push str.main
push edx
push 0x19
call fcn.00528940
add esp, 0x14
jmp 0x4a3e66
mov eax, dword [esp + 0xc4]
push eax
push str.SELECT_rootpage_FROM_sqlite_master_WHERE_name_q_AND_typeindex
call fcn.004ad880
mov edx, dword [ebx]
push 0
lea ecx, [esp + 0x1c]
push ecx
mov edi, eax
push 0xffffffffffffffff
push edi
push edx
call fcn.00501770
push edi
call fcn.004ab490
mov edi, dword [esp + 0x30]
push edi
call fcn.004d1cc0
add esp, 0x24
cmp eax, 0x64
jne 0x4a345e
push 0
push edi
call fcn.004d2400
add esp, 8
mov dword [esp + 0x24], eax
push edi
call fcn.004d0dd0
add esp, 4
cmp dword [esp + 0x24], 0
jne 0x4a3480
mov eax, dword [esp + 0xc4]
push eax
push str.no_such_index:___s__n
jmp 0x4a3e4c
mov ecx, dword [esp + 0xc4]
push ecx
push str.PRAGMA_index_xinfo_q
call fcn.004ad880
push 0
lea edx, [esp + 0x1c]
push edx
mov edi, eax
mov eax, dword [ebx]
push 0xffffffffffffffff
push edi
push eax
call fcn.00501770
push edi
call fcn.004ab490
mov edi, dword [esp + 0x30]
push edi
mov dword [esp + 0x3c], 0
call fcn.004d1cc0
add esp, 0x24
cmp eax, 0x64
jne 0x4a354f
lea ebx, [ebx]
push 2
push edi
call fcn.004d2500
inc dword [esp + 0x20]
add esp, 8
test eax, eax
jne 0x4a351d
push 1
push edi
call fcn.004d2400
add esp, 8
cmp eax, 0xffffffff
jne 0x4a34fa
mov eax, str._ROWID_
jmp 0x4a351d
mov ecx, dword [esp + 0x18]
push ecx
push str.expr_d
lea edx, [esp + 0x1238]
push edx
push 0x14
call fcn.004ad900
add esp, 0x10
lea eax, [esp + 0x1230]
push eax
test esi, esi
jne 0x4a3531
push str.__w_
call fcn.004ad880
add esp, 8
jmp 0x4a353f
push esi
push str._z___w_
call fcn.004ad880
add esp, 0xc
push edi
mov esi, eax
call fcn.004d1cc0
add esp, 4
cmp eax, 0x64
je 0x4a34d0
push edi
call fcn.004d0dd0
mov eax, dword [esp + 0xcc]
push esi
push esi
push eax
push str.CREATE_TABLE___w___s_PRIMARY_KEY__s__WITHOUT_ROWID
call fcn.004ad880
push esi
mov edi, eax
call fcn.004ab490
mov ecx, dword [esp + 0x3c]
mov edx, dword [ebx]
push ecx
push 1
push str.main
push edx
push 0x19
call fcn.00528940
add esp, 0x2c
test eax, eax
jne 0x4a362e
push eax
push eax
push eax
mov eax, dword [ebx]
push edi
push eax
call fcn.004fc670
mov ecx, dword [ebx]
push 0
push 0
push str.main
push ecx
mov esi, eax
push 0x19
mov dword [esp + 0x38], esi
call fcn.00528940
add esp, 0x28
test esi, esi
je 0x4a35f2
mov edx, ebx
mov eax, dword [edx]
push eax
call fcn.005270e0
add esp, 4
push eax
push edi
push str.Error_in___s_:__s_n
call fcn.00587376
mov ebx, eax
add ebx, 0x40
call fcn.004904d0
add esp, 0xc
push edi
call fcn.004ab490
add esp, 4
jmp 0x4a3e66
push edi
push str._s__n
call fcn.00587376
mov ebx, eax
add ebx, 0x20
call fcn.004904d0
add esp, 8
push str.WARNING:_writing_to_an_imposter_table_will_corrupt_the_index__n
call fcn.00587376
add eax, 0x20
push eax
call fcn.00585612
add esp, 8
push edi
call fcn.004ab490
add esp, 4
jmp 0x4a3e66
push eax
push str.SQLITE_TESTCTRL_IMPOSTER_returns__d_n
call fcn.00587376
add eax, 0x40
push eax
call fcn.00585612
add esp, 0xc
push edi
mov dword [esp + 0x14], 1
call fcn.004ab490
add esp, 4
jmp 0x4a3e66
cmp esi, 0x6c
jne 0x4a38f5
cmp edi, 5
mov esi, dword [esp + 0xc0]
jl 0x4a37b1
push edi
push str.limits
push esi
call fcn.0058697e
add esp, 0xc
test eax, eax
jne 0x4a37b1
push eax
mov esi, ebx
mov eax, esi
call fcn.0049f5a0
mov eax, dword [esp + 0x18]
add esp, 4
cmp eax, 1
jne 0x4a36da
mov edi, 0x5e90a8
mov eax, dword [edi + 4]
mov ecx, dword [esi]
cmp eax, 0xb
ja 0x4a36b6
mov eax, dword [ecx + eax*4 + 0x64]
jmp 0x4a36b9
or eax, 0xffffffff
mov ecx, dword [edi]
push eax
push ecx
push str._20s__d_n
call fcn.00583141
add edi, 8
add esp, 0xc
cmp edi, 0x5e9108
jl 0x4a36a6
jmp 0x4a3e66
cmp eax, 3
jle 0x4a36f7
push str.Usage:_.limit_NAME__NEW_VALUE__n
call fcn.00587376
add eax, 0x40
push eax
call fcn.00585612
jmp 0x4a3e5b
mov ebx, dword [esp + 0xc4]
mov ecx, ebx
or edi, 0xffffffff
call fcn.00490700
mov dword [esp + 0x34], eax
xor esi, esi
mov edi, edi
mov edx, dword [esp + 0x34]
mov eax, dword [esi*8 + 0x5e90a8]
push edx
push ebx
push eax
call fcn.004ae830
add esp, 0xc
test eax, eax
jne 0x4a3730
test edi, edi
jge 0x4a3745
mov edi, esi
inc esi
cmp esi, 0xc
jl 0x4a3710
test edi, edi
jge 0x4a3750
push ebx
push str.unknown_limit:___s__nenter__.limits__with_no_arguments_for_a_list._n
jmp 0x4a3e4c
push ebx
push str.ambiguous_limit:___s__n
jmp 0x4a3e4c
cmp dword [esp + 0x14], 3
jne 0x4a377b
mov eax, dword [esp + 0xc8]
call fcn.004908d0
mov ecx, dword [edi*8 + 0x5e90ac]
mov edx, dword [esp + 0xc]
push eax
mov eax, dword [edx]
push ecx
push eax
call fcn.00527580
add esp, 0xc
mov eax, dword [edi*8 + 0x5e90ac]
mov ecx, dword [esp + 0xc]
mov ecx, dword [ecx]
cmp eax, 0xb
ja 0x4a3793
mov eax, dword [ecx + eax*4 + 0x64]
jmp 0x4a3796
or eax, 0xffffffff
mov edx, dword [edi*8 + 0x5e90a8]
push eax
push edx
push str._20s__d_n
call fcn.00583141
add esp, 0xc
jmp 0x4a3e66
cmp edi, 2
jle 0x4a37e9
push edi
push str.lint
push esi
call fcn.0058697e
add esp, 0xc
test eax, eax
jne 0x4a37e9
push eax
mov esi, ebx
mov eax, esi
call fcn.0049f5a0
mov edi, dword [esp + 0x18]
push esi
lea esi, [esp + 0xc8]
call fcn.004a1ae0
jmp 0x4a3e63
push edi
push str.load
push esi
call fcn.0058697e
add esp, 0xc
test eax, eax
jne 0x4a3894
mov edi, dword [esp + 0x14]
cmp edi, 2
mov dword [esp + 0x2c], eax
jge 0x4a3825
push str.Usage:_.load_FILE__ENTRYPOINT__n
call fcn.00587376
add eax, 0x40
push eax
call fcn.00585612
jmp 0x4a3e5b
mov esi, ebx
push 0
mov eax, esi
call fcn.0049f5a0
mov edx, dword [esp + 0xc8]
xor ecx, ecx
cmp edi, 3
setl cl
lea eax, [esp + 0x30]
push eax
mov eax, dword [esi]
dec ecx
and ecx, dword [esp + 0xd0]
push ecx
push edx
push eax
call fcn.004fcfe0
add esp, 0x14
mov dword [esp + 0x10], eax
test eax, eax
je 0x4a3e66
mov esi, dword [esp + 0x2c]
push esi
push str.Error:__s_n
call fcn.00587376
mov ebx, eax
add ebx, 0x40
call fcn.004904d0
push esi
call fcn.004ab490
add esp, 0xc
mov dword [esp + 0x10], 1
jmp 0x4a3e66
push edi
push 0x5fbcd4
push esi
call fcn.0058697e
add esp, 0xc
test eax, eax
jne 0x4a3e3f
cmp dword [esp + 0x14], 2
je 0x4a38ca
push str.Usage:_.log_FILENAME_n
call fcn.00587376
add eax, 0x40
push eax
call fcn.00585612
jmp 0x4a3e5b
mov ecx, ebx
mov esi, dword [ecx + 0x504]
call fcn.0049f9e0
mov edi, dword [esp + 0xc4]
push 0
call fcn.0049fa10
mov edx, ebx
add esp, 4
mov dword [edx + 0x504], eax
jmp 0x4a3e66
cmp esi, 0x6d
jne 0x4a3c39
mov eax, dword [esp + 0xc0]
push edi
push str.mode
push eax
call fcn.0058697e
add esp, 0xc
test eax, eax
jne 0x4a3e3f
mov edi, dword [esp + 0xc4]
mov ebx, 2
cmp dword [esp + 0x14], ebx
mov ecx, edi
jge 0x4a3935
mov ecx, 0x5e1790
call fcn.00490700
mov esi, eax
movsx eax, byte [ecx]
cmp eax, 0x6c
jne 0x4a396c
cmp esi, ebx
jle 0x4a3bd6
push esi
push str.lines
push edi
call fcn.0058697e
add esp, 0xc
test eax, eax
jne 0x4a39b5
mov eax, dword [esp + 0xc]
mov dword [eax + 0x24], 0
jmp 0x4a3993
cmp eax, 0x63
jne 0x4a39de
push esi
push str.columns
push edi
call fcn.0058697e
add esp, 0xc
test eax, eax
jne 0x4a3a6f
mov eax, dword [esp + 0xc]
mov dword [eax + 0x24], 1
push 0x5f7930
add eax, 0x7e
push eax
push 0x14
call fcn.004ad900
mov eax, dword [esp + 0x18]
mov ecx, dword [eax + 0x24]
add esp, 0xc
mov dword [eax + 0x2c], ecx
jmp 0x4a3e66
push esi
push str.list
push edi
call fcn.0058697e
add esp, 0xc
test eax, eax
jne 0x4a3bd6
mov esi, dword [esp + 0xc]
push 0x5f988c
lea ecx, [esi + 0x6a]
mov dword [esi + 0x24], ebx
push ecx
jmp 0x4a3a46
cmp eax, 0x68
jne 0x4a3a12
push esi
push str.html
push edi
call fcn.0058697e
add esp, 0xc
test eax, eax
jne 0x4a3bd6
mov edx, dword [esp + 0xc]
mov eax, edx
mov dword [edx + 0x24], 4
mov ecx, dword [eax + 0x24]
mov dword [eax + 0x2c], ecx
jmp 0x4a3e66
cmp eax, 0x74
jne 0x4a3b03
push esi
push 0x5f88dc
push edi
call fcn.0058697e
add esp, 0xc
test eax, eax
jne 0x4a3ac3
mov esi, dword [esp + 0xc]
push 0x5e1658
lea eax, [esi + 0x6a]
mov dword [esi + 0x24], 7
push eax
push 0x14
call fcn.004ad900
push 0x5f7930
add esi, 0x7e
push esi
push 0x14
call fcn.004ad900
mov eax, dword [esp + 0x24]
mov ecx, dword [eax + 0x24]
add esp, 0x18
mov dword [eax + 0x2c], ecx
jmp 0x4a3e66
push esi
push 0x5f88d8
push edi
call fcn.0058697e
add esp, 0xc
test eax, eax
jne 0x4a3bd6
mov esi, dword [esp + 0xc]
push 0x5f8a94
lea ecx, [esi + 0x6a]
push ecx
push 0x14
mov dword [esi + 0x24], 8
call fcn.004ad900
push 0x5e1608
add esi, 0x7e
push esi
push 0x14
call fcn.004ad900
mov eax, dword [esp + 0x24]
mov ecx, dword [eax + 0x24]
add esp, 0x18
mov dword [eax + 0x2c], ecx
jmp 0x4a3e66
push esi
push str.tabs
push edi
call fcn.0058697e
add esp, 0xc
test eax, eax
jne 0x4a3bd6
mov eax, dword [esp + 0xc]
mov dword [eax + 0x24], ebx
push 0x5fbd10
add eax, 0x6a
push eax
push 0x14
call fcn.004ad900
mov eax, dword [esp + 0x18]
mov ecx, dword [eax + 0x24]
add esp, 0xc
mov dword [eax + 0x2c], ecx
jmp 0x4a3e66
cmp eax, 0x69
jne 0x4a3b51
push esi
push str.insert
push edi
call fcn.0058697e
add esp, 0xc
test eax, eax
jne 0x4a3bd6
cmp dword [esp + 0x14], 3
mov edi, dword [esp + 0xc]
mov eax, dword [esp + 0xc8]
mov dword [edi + 0x24], 5
jge 0x4a3b3d
mov eax, str.table
call fcn.0049d1e0
mov eax, dword [esp + 0xc]
mov ecx, dword [eax + 0x24]
mov dword [eax + 0x2c], ecx
jmp 0x4a3e66
cmp eax, 0x71
jne 0x4a3b81
push esi
push str.quote
push edi
call fcn.0058697e
add esp, 0xc
test eax, eax
jne 0x4a3bd6
mov edx, dword [esp + 0xc]
mov eax, edx
mov dword [edx + 0x24], 6
mov ecx, dword [eax + 0x24]
mov dword [eax + 0x2c], ecx
jmp 0x4a3e66
cmp eax, 0x61
jne 0x4a3bd6
push esi
push str.ascii
push edi
call fcn.0058697e
add esp, 0xc
test eax, eax
jne 0x4a3bd6
mov esi, dword [esp + 0xc]
push 0x5fbd14
lea eax, [esi + 0x6a]
push eax
push 0x14
mov dword [esi + 0x24], 0xa
call fcn.004ad900
push 0x5fbd18
add esi, 0x7e
push esi
push 0x14
call fcn.004ad900
mov eax, dword [esp + 0x24]
mov ecx, dword [eax + 0x24]
add esp, 0x18
mov dword [eax + 0x2c], ecx
jmp 0x4a3e66
mov esi, 1
cmp dword [esp + 0x14], esi
jne 0x4a3c10
mov eax, dword [esp + 0xc]
mov ecx, dword [eax + 0x24]
mov edx, dword [ecx*4 + 0x63308c]
mov eax, dword [eax + 0x18]
push edx
push str.current_output_mode:__s_n
push eax
call fcn.00585612
mov eax, dword [esp + 0x18]
mov ecx, dword [eax + 0x24]
add esp, 0xc
mov dword [eax + 0x2c], ecx
jmp 0x4a3e66
push str.Error:_mode_should_be_one_of:_ascii_column_csv_html_insert_line_list_quote_tabs_tcl_n
call fcn.00587376
add eax, 0x40
push eax
call fcn.00585612
mov eax, dword [esp + 0x14]
mov ecx, dword [eax + 0x24]
add esp, 8
mov dword [esp + 0x10], esi
mov dword [eax + 0x2c], ecx
jmp 0x4a3e66
cmp esi, 0x6e
jne 0x4a3ca2
mov edx, dword [esp + 0xc0]
push edi
push str.nullvalue
push edx
call fcn.0058697e
add esp, 0xc
test eax, eax
jne 0x4a3e3f
cmp dword [esp + 0x14], 2
jne 0x4a3c8a
mov eax, dword [esp + 0xc4]
push eax
push 0x13
mov ecx, ebx
push 0x5f8a48
add ecx, 0x3dc
push ecx
push 0x14
call fcn.004ad900
add esp, 0x14
jmp 0x4a3e66
push str.Usage:_.nullvalue_STRING_n
call fcn.00587376
add eax, 0x40
push eax
call fcn.00585612
jmp 0x4a3e5b
cmp esi, 0x6f
jne 0x4a4138
mov esi, dword [esp + 0xc0]
push edi
push str.open
push esi
call fcn.0058697e
add esp, 0xc
test eax, eax
jne 0x4a3e11
cmp edi, 2
jl 0x4a3e11
mov edx, dword [esp + 0xc]
mov edi, dword [edx]
xor ebx, ebx
mov dword [esp + 0x2c], ebx
call fcn.0049f7b0
mov esi, dword [esp + 0xc]
mov eax, dword [esi + 0x4f8]
push eax
mov dword [esi], ebx
mov dword [esi + 0x4f4], ebx
call fcn.004ab490
mov dword [esi + 0x4f8], ebx
mov byte [esi + 9], bl
mov ebx, 1
add esp, 4
cmp dword [esp + 0x14], ebx
jle 0x4a3df4
jmp 0x4a3d20
mov edi, dword [esp + ebx*4 + 0xc0]
cmp byte [edi], 0x2d
jne 0x4a3d8b
mov ecx, 0x5fbdc0
mov eax, edi
call fcn.004a12d0
test eax, eax
je 0x4a3d46
mov dword [esp + 0x2c], 1
jmp 0x4a3d77
mov ecx, str.append
mov eax, edi
call fcn.004a12d0
test eax, eax
je 0x4a3d5c
mov byte [esi + 9], 2
jmp 0x4a3d77
mov ecx, str.readonly
mov eax, edi
call fcn.004a12d0
test eax, eax
je 0x4a3d72
mov byte [esi + 9], 4
jmp 0x4a3d77
cmp byte [edi], 0x2d
je 0x4a3d80
inc ebx
cmp ebx, dword [esp + 0x14]
jl 0x4a3d20
jmp 0x4a3df4
push edi
push str.unknown_option:__s_n
jmp 0x4a3e4c
cmp dword [esp + 0x14], ebx
jle 0x4a3df4
mov ecx, edi
push ecx
push 0x5f7c60
call fcn.004ad880
mov edi, eax
add esp, 8
test edi, edi
je 0x4a3df4
cmp dword [esp + 0x2c], 0
je 0x4a3db7
push edi
call fcn.004a1320
add esp, 4
push 1
mov eax, esi
mov dword [esi + 0x4f4], edi
call fcn.0049f5a0
add esp, 4
cmp dword [esi], 0
jne 0x4a3dee
push edi
push str.Error:_cannot_open__s_n
call fcn.00587376
mov ebx, eax
add ebx, 0x40
call fcn.004904d0
push edi
call fcn.004ab490
add esp, 0xc
jmp 0x4a3df4
mov dword [esi + 0x4f8], edi
cmp dword [esi], 0
jne 0x4a3e66
mov eax, esi
push 0
mov dword [eax + 0x4f4], 0
call fcn.0049f5a0
add esp, 4
jmp 0x4a3e66
push edi
push str.output
push esi
call fcn.0058697e
add esp, 0xc
test eax, eax
je 0x4a3ee4
push edi
push str.once
push esi
call fcn.0058697e
add esp, 0xc
test eax, eax
je 0x4a3ee4
mov eax, dword [esp + 0xc0]
push eax
push str.Error:_unknown_command_or_invalid_arguments:____s_._Enter__.help__for_help_n
call fcn.00587376
mov ebx, eax
add ebx, 0x40
call fcn.004904d0
mov dword [esp + 0x18], 1
add esp, 8
mov ecx, dword [esp + 0xc]
mov eax, dword [ecx + 0x10]
test eax, eax
je 0x4a3e80
add eax, 0xffffffff
mov dword [ecx + 0x10], eax
jne 0x4a3e80
mov esi, ecx
call fcn.004a0ad0
mov eax, dword [esp + 0x10]
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x1258]
xor ecx, esp
call fcn.0057ffd2
mov esp, ebp
pop ebp
ret
cmp edi, 5
jne 0x4a3e3f
mov eax, dword [esp + 0xc0]
mov ecx, str.excel
lea ebx, [ebx]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4a3ed0
test dl, dl
je 0x4a3ecc
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4a3ed0
add eax, 2
add ecx, 2
test dl, dl
jne 0x4a3eb0
xor eax, eax
jmp 0x4a3ed5
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x4a3e3f
mov esi, dword [esp + 0xc0]
mov ebx, dword [esp + 0x14]
cmp ebx, 2
jl 0x4a3efa
mov edx, dword [esp + 0xc4]
mov dword [esp + 0x1c], edx
jmp 0x4a3f02
mov dword [esp + 0x1c], str.stdout
cmp byte [esi], 0x65
mov dword [esp + 0x2c], 0
jne 0x4a3f2f
mov dword [esp + 0x14], 2
mov ebx, dword [esp + 0x14]
mov esi, str.once
mov dword [esp + 0x1c], 0x5fbe0c
mov edi, 4
jmp 0x4a3f4b
cmp ebx, 2
jle 0x4a3f46
mov eax, dword [esp + 0xc0]
push eax
push str.Usage:_._s___e_xFILE__n
jmp 0x4a3e4c
cmp edi, 1
jle 0x4a3f88
push edi
push str.once
push esi
call fcn.0058697e
add esp, 0xc
test eax, eax
jne 0x4a3f88
cmp ebx, 2
jge 0x4a3f7b
push str.Usage:_.once___e_xFILE__n
call fcn.00587376
add eax, 0x40
push eax
call fcn.00585612
jmp 0x4a3e5b
mov ecx, dword [esp + 0xc]
mov dword [ecx + 0x10], 2
jmp 0x4a3f93
mov edx, dword [esp + 0xc]
mov dword [edx + 0x10], 0
mov esi, dword [esp + 0xc]
call fcn.004a0ad0
mov edi, dword [esp + 0x1c]
cmp byte [edi], 0x2d
jne 0x4a3fb0
cmp byte [edi + 1], 0x2d
jne 0x4a3fb0
inc edi
mov dword [esp + 0x1c], edi
mov ecx, 0x5fbe48
mov eax, edi
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4a3fd7
test dl, dl
je 0x4a3fd3
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4a3fd7
add eax, 2
add ecx, 2
test dl, dl
jne 0x4a3fb7
xor eax, eax
jmp 0x4a3fdc
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
je 0x4a4010
mov ecx, 0x5fbe0c
mov eax, edi
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4a4007
test dl, dl
je 0x4a4003
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4a4007
add eax, 2
add ecx, 2
test dl, dl
jne 0x4a3fe7
xor eax, eax
jmp 0x4a400c
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x4a4075
mov eax, esi
mov byte [esi + 0xa], 1
call fcn.0049b2e0
cmp byte [edi + 1], 0x78
mov eax, esi
jne 0x4a4059
push 0x5f88d8
call fcn.004a13c0
push 0x5f8a94
lea eax, [esi + 0x6a]
push eax
push 0x14
mov dword [esi + 0x24], 8
call fcn.004ad900
push 0x5e1608
lea ecx, [esi + 0x7e]
push ecx
push 0x14
call fcn.004ad900
add esp, 0x1c
jmp 0x4a406e
push 0x5fbe4c
call fcn.004a13c0
add esp, 4
mov dword [esp + 0x2c], 1
mov edi, dword [esi + 0x48]
mov dword [esp + 0x1c], edi
cmp byte [edi], 0x7c
jne 0x4a40a1
mov ebx, dword [esp + 0x1c]
lea edi, [ebx + 1]
push 0x5f95a4
push edi
call fcn.00586acf
add esp, 8
mov dword [esi + 0x18], eax
test eax, eax
jne 0x4a409e
push edi
push str.Error:_cannot_open_pipe___s__n
jmp 0x4a40ef
push ebx
jmp 0x4a411a
mov edx, dword [esp + 0x2c]
mov edi, dword [esp + 0x1c]
push edx
call fcn.0049fa10
add esp, 4
mov dword [esi + 0x18], eax
test eax, eax
jne 0x4a4119
mov ecx, 0x5fa610
mov eax, edi
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4a40e0
test dl, dl
je 0x4a40dc
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4a40e0
add eax, 2
add ecx, 2
test dl, dl
jne 0x4a40c0
xor eax, eax
jmp 0x4a40e5
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
je 0x4a4101
push edi
push str.Error:_cannot_write_to___s__n
call fcn.00587376
mov ebx, eax
add ebx, 0x40
call fcn.004904d0
add esp, 8
call fcn.00587376
add eax, 0x20
mov dword [esi + 0x18], eax
mov dword [esp + 0x10], 1
jmp 0x4a3e66
push edi
push 0x5f7c60
add esi, 0x3f0
push esi
push 0x104
call fcn.004ad900
add esp, 0x10
jmp 0x4a3e66
cmp esi, 0x70
jne 0x4a421c
cmp edi, 3
jl 0x4a41b9
mov eax, dword [esp + 0xc0]
push edi
push str.print
push eax
call fcn.0058697e
add esp, 0xc
test eax, eax
jne 0x4a41b9
mov edi, 1
cmp dword [esp + 0x14], edi
jle 0x4a41a2
mov esi, ebx
cmp edi, 1
jle 0x4a4183
mov ecx, dword [esi + 0x18]
push 0x5e1658
push ecx
call fcn.00585612
add esp, 8
mov edx, dword [esp + edi*4 + 0xc0]
mov ebx, dword [esi + 0x18]
push edx
push 0x5f7c60
call fcn.004904d0
inc edi
add esp, 8
cmp edi, dword [esp + 0x14]
jl 0x4a416d
mov eax, dword [esp + 0xc]
mov ecx, dword [eax + 0x18]
push 0x5f7930
push ecx
call fcn.00585612
jmp 0x4a3e63
mov edx, dword [esp + 0xc0]
push edi
push str.prompt
push edx
call fcn.0058697e
add esp, 0xc
test eax, eax
jne 0x4a3e3f
mov esi, dword [esp + 0x14]
cmp esi, 2
jl 0x4a41f7
mov eax, dword [esp + 0xc4]
push 0x13
push eax
push 0x6403e8
call fcn.00587ea0
add esp, 0xc
cmp esi, 3
jl 0x4a3e66
mov ecx, dword [esp + 0xc8]
push 0x13
push ecx
push 0x6403cc
call fcn.00587ea0
add esp, 0xc
jmp 0x4a3e66
cmp esi, 0x71
jne 0x4a424c
mov edx, dword [esp + 0xc0]
push edi
push str.quit
push edx
call fcn.0058697e
add esp, 0xc
test eax, eax
jne 0x4a3e3f
mov dword [esp + 0x10], 2
jmp 0x4a3e66
cmp esi, 0x72
jne 0x4a5782
cmp edi, 3
jl 0x4a3e3f
mov esi, dword [esp + 0xc0]
push edi
push str.read
push esi
call fcn.0058697e
add esp, 0xc
test eax, eax
jne 0x4a42d8
cmp dword [esp + 0x14], 2
je 0x4a4297
push str.Usage:_.read_FILE_n
call fcn.00587376
add eax, 0x40
push eax
call fcn.00585612
jmp 0x4a3e5b
mov edi, dword [esp + 0xc4]
push 0x5f8b88
push edi
call fcn.005884a9
mov esi, eax
add esp, 8
test esi, esi
jne 0x4a42bd
push edi
push str.Error:_cannot_open___s__n
jmp 0x4a3e4c
mov eax, ebx
push esi
push eax
call fcn.004a6690
push esi
mov dword [esp + 0x1c], eax
call fcn.00582ea2
add esp, 0xc
jmp 0x4a3e66
push edi
push str.restore
push esi
call fcn.0058697e
add esp, 0xc
test eax, eax
jne 0x4a3e3f
mov eax, dword [esp + 0x14]
xor edi, edi
cmp eax, 2
jne 0x4a4308
mov esi, dword [esp + 0xc4]
mov ebx, str.main
jmp 0x4a431f
cmp eax, 3
jne 0x4a4444
mov esi, dword [esp + 0xc8]
mov ebx, dword [esp + 0xc4]
lea ecx, [esp + 0x24]
push ecx
push esi
call fcn.00528080
add esp, 8
test eax, eax
je 0x4a4357
push esi
push str.Error:_cannot_open___s__n
call fcn.00587376
mov ebx, eax
add ebx, 0x40
call fcn.004904d0
mov edi, dword [esp + 0x2c]
add esp, 8
call fcn.0049f7b0
jmp 0x4a1eaf
mov esi, dword [esp + 0xc]
push 0
mov eax, esi
call fcn.0049f5a0
mov edx, dword [esp + 0x28]
mov eax, dword [esi]
push str.main
push edx
push ebx
push eax
call fcn.004c9500
mov ebx, eax
add esp, 0x14
test ebx, ebx
jne 0x4a4395
mov ecx, esi
mov edx, dword [ecx]
push edx
call fcn.005270e0
add esp, 4
push eax
push str.Error:__s_n
jmp 0x4a4337
push 0x64
push ebx
call fcn.004c98c0
mov esi, eax
add esp, 8
test esi, esi
je 0x4a43cf
cmp esi, 5
je 0x4a43d4
push ebx
call fcn.004ca3c0
add esp, 4
cmp esi, 0x65
jne 0x4a43e8
mov edi, dword [esp + 0x24]
mov dword [esp + 0x10], 0
call fcn.0049f7b0
jmp 0x4a3e66
cmp esi, 5
jne 0x4a4395
mov eax, edi
inc edi
cmp eax, 3
jge 0x4a43ab
push 0x64
call fcn.005287c0
add esp, 4
jmp 0x4a4395
cmp esi, 5
je 0x4a4418
cmp esi, 6
je 0x4a4418
mov ecx, dword [esp + 0xc]
mov edx, dword [ecx]
push edx
call fcn.005270e0
add esp, 4
push eax
push str.Error:__s_n
call fcn.00587376
mov ebx, eax
add ebx, 0x40
call fcn.004904d0
jmp 0x4a442b
push str.Error:_source_database_is_busy_n
call fcn.00587376
add eax, 0x40
push eax
call fcn.00585612
mov edi, dword [esp + 0x2c]
add esp, 8
mov dword [esp + 0x10], 1
call fcn.0049f7b0
jmp 0x4a3e66
push str.Usage:_.restore__DB__FILE_n
call fcn.00587376
add eax, 0x40
push eax
call fcn.00585612
jmp 0x4a3e5b
push edi
push str.scanstats
push esi
call fcn.0058697e
add esp, 0xc
test eax, eax
jne 0x4a44b7
cmp dword [esp + 0x14], 2
jne 0x4a449f
mov esi, dword [esp + 0xc4]
call fcn.0049f8e0
mov ecx, ebx
push str.Warning:_.scanstats_not_available_in_this_build._n
mov byte [ecx + 8], al
call fcn.00587376
add eax, 0x40
push eax
call fcn.00585612
jmp 0x4a3e63
push str.Usage:_.scanstats_onoff_n
call fcn.00587376
add eax, 0x40
push eax
call fcn.00585612
jmp 0x4a3e5b
push edi
push str.schema
push esi
call fcn.0058697e
add esp, 0xc
test eax, eax
jne 0x4a494f
mov esi, dword [esp + 0xc]
xor ebx, ebx
push ebx
mov eax, esi
mov dword [esp + 0x48], ebx
mov dword [esp + 0x5c], 0x5f8a60
mov dword [esp + 0x1c], ebx
mov dword [esp + 0x58], ebx
call fcn.0049f5a0
mov eax, 3
mov ecx, 0x162
lea edi, [esp + 0x724]
rep movsd dword es:[edi], dword [esi]
mov dword [esp + 0x748], eax
mov dword [esp + 0x750], eax
xor eax, eax
mov esi, 1
add esp, 4
cmp dword [esp + 0x14], esi
mov dword [esp + 0x758], ebx
mov dword [esp + 0x48], eax
mov dword [esp + 0x4c], eax
mov dword [esp + 0x50], eax
jle 0x4a4659
jmp 0x4a4540
mov edi, dword [esp + esi*4 + 0xc0]
mov ecx, str.indent
mov eax, edi
call fcn.004a12d0
test eax, eax
je 0x4a456c
mov eax, 0xb
mov dword [esp + 0x744], eax
mov dword [esp + 0x74c], eax
jmp 0x4a4594
mov ecx, str.debug
mov eax, edi
call fcn.004a12d0
test eax, eax
je 0x4a4586
mov dword [esp + 0x54], 1
jmp 0x4a4594
test ebx, ebx
jne 0x4a463a
mov dword [esp + 0x18], edi
mov ebx, edi
inc esi
cmp esi, dword [esp + 0x14]
jl 0x4a4540
xor edi, edi
cmp ebx, edi
je 0x4a465b
push 0x5c
push str.sqlite_master
push ebx
call fcn.004f4b00
add esp, 0xc
neg eax
sbb eax, eax
inc eax
cmp eax, edi
jne 0x4a4652
push 0x5c
push str.sqlite_temp_master
push ebx
call fcn.004f4b00
add esp, 0xc
test eax, eax
jne 0x4a465b
mov eax, str.sqlite_temp_master
push eax
push str.CREATE_TABLE__s___n__type_text__n__name_text__n__tbl_name_text__n__rootpage_integer__n__sql_text_n_
call fcn.004ad880
push edi
lea edx, [esp + 0x19c]
push edx
push 1
lea edx, [esp + 0x19c]
lea ecx, [esp + 0x734]
mov dword [esp + 0x19c], eax
mov dword [esp + 0x1a0], edi
mov dword [esp + 0x1a4], 0x5fc010
mov dword [esp + 0x1a8], edi
call fcn.0049bf80
mov eax, dword [esp + 0x19c]
push eax
call fcn.004ab490
add esp, 0x18
jmp 0x4a465b
push str.Usage:_.schema____indent___LIKE_PATTERN__n
call fcn.00587376
add eax, 0x40
push eax
call fcn.00585612
jmp 0x4a3e5b
mov eax, str.sqlite_master
jmp 0x4a45df
xor edi, edi
mov esi, dword [esp + 0xc]
mov edx, dword [esi]
push edi
lea ecx, [esp + 0x18]
push ecx
push 0xffffffffffffffff
push str.SELECT_name_FROM_pragma_database_list
push edx
mov dword [esp + 0x28], edi
call fcn.00501770
add esp, 0x14
mov dword [esp + 0x10], eax
cmp eax, edi
je 0x4a46bd
mov eax, dword [esi]
push eax
call fcn.005270e0
add esp, 4
push eax
push str.Error:__s_n
call fcn.00587376
mov ebx, eax
add ebx, 0x40
call fcn.004904d0
mov ecx, dword [esp + 0x1c]
push ecx
call fcn.004d0dd0
add esp, 0xc
mov dword [esp + 0x10], 1
jmp 0x4a3e66
push str.SELECT_sql_FROM
xor bl, bl
lea esi, [esp + 0x4c]
call fcn.00490a30
mov edx, dword [esp + 0x18]
push edx
mov dword [esp + 0x34], 0
call fcn.004d1cc0
add esp, 8
cmp eax, 0x64
jne 0x4a47c4
mov eax, dword [esp + 0x14]
push 0
push eax
call fcn.004d2500
mov edi, eax
mov eax, dword [esp + 0x34]
inc eax
push eax
push 0x5f7c64
lea ecx, [esp + 0x1254]
push ecx
push 0x1e
mov dword [esp + 0x44], eax
call fcn.004ad900
mov edx, dword [esp + 0x70]
push edx
xor bl, bl
lea esi, [esp + 0x64]
call fcn.00490a30
push str.SELECT_shell_add_schema_sql_
mov dword [esp + 0x78], str._UNION_ALL
call fcn.00490a30
push str.main
push edi
call fcn.004ae7c0
add esp, 0x28
test eax, eax
je 0x4a4750
push edi
mov bl, 0x22
jmp 0x4a4757
push str.NULL
xor bl, bl
call fcn.00490a30
add esp, 4
push str._name__AS_sql__type__tbl_name__name__rowid_
xor bl, bl
lea esi, [esp + 0x4c]
call fcn.00490a30
lea eax, [esp + 0x1248]
push eax
call fcn.00490a30
push str._AS_snum_
call fcn.00490a30
push edi
mov bl, 0x27
call fcn.00490a30
push str._AS_sname_FROM
xor bl, bl
call fcn.00490a30
push edi
mov bl, 0x22
call fcn.00490a30
push 0x5fc0c0
xor bl, bl
call fcn.00490a30
mov ecx, dword [esp + 0x30]
push ecx
call fcn.004d1cc0
add esp, 0x20
cmp eax, 0x64
je 0x4a46eb
mov edx, dword [esp + 0x14]
push edx
call fcn.004d0dd0
push str.__WHERE
xor bl, bl
lea esi, [esp + 0x50]
call fcn.00490a30
mov esi, dword [esp + 0x20]
add esp, 8
test esi, esi
je 0x4a48b0
push esi
push 0x5f8ed0
call fcn.004ad880
push 0x2a
push esi
mov dword [esp + 0x3c], eax
call fcn.005868c0
add esp, 0x10
test eax, eax
jne 0x4a482d
push 0x3f
push esi
call fcn.005868c0
add esp, 8
test eax, eax
jne 0x4a482d
push 0x5b
push esi
call fcn.005868c0
add esp, 8
test eax, eax
jne 0x4a482d
xor edi, edi
jmp 0x4a4832
mov edi, 1
push 0x2e
push esi
call fcn.005868c0
add esp, 8
xor bl, bl
lea esi, [esp + 0x48]
test eax, eax
je 0x4a484e
push str.lower_printf__s._s_sname_tbl_name__
jmp 0x4a4853
push str.lower_tbl_name_
call fcn.00490a30
add esp, 4
mov eax, str._GLOB
test edi, edi
jne 0x4a4869
mov eax, str._LIKE
push eax
xor bl, bl
lea esi, [esp + 0x4c]
call fcn.00490a30
mov eax, dword [esp + 0x30]
push eax
call fcn.00490a30
add esp, 8
test edi, edi
jne 0x4a4893
push str._ESCAPE_
call fcn.00490a30
add esp, 4
push str._AND
xor bl, bl
lea esi, [esp + 0x4c]
call fcn.00490a30
mov ecx, dword [esp + 0x30]
push ecx
call fcn.004ab490
add esp, 8
push str.type_meta_AND_sql_IS_NOT_NULL_ORDER_BY_snum__rowid
xor bl, bl
lea esi, [esp + 0x4c]
call fcn.00490a30
add esp, 4
cmp dword [esp + 0x54], 0
je 0x4a48e9
mov edx, dword [esp + 0x48]
mov eax, dword [esp + 0xc]
mov ebx, dword [eax + 0x18]
push edx
push str.SQL:__s__n
call fcn.004904d0
mov edi, dword [esp + 0x18]
add esp, 8
jmp 0x4a4911
mov eax, dword [esp + 0x48]
lea ecx, [esp + 0x44]
push ecx
mov ecx, dword [esp + 0x10]
lea edx, [esp + 0x724]
push edx
mov edx, dword [ecx]
push 0x49cfd0
push eax
push edx
call fcn.004fc670
add esp, 0x14
mov edi, eax
lea esi, [esp + 0x48]
call fcn.00490a10
mov esi, dword [esp + 0x44]
test esi, esi
jne 0x4a3869
test edi, edi
je 0x4a4942
push str.Error:_querying_schema_information_n
call fcn.00587376
add eax, 0x40
push eax
call fcn.00585612
jmp 0x4a3e5b
mov dword [esp + 0x10], 0
jmp 0x4a3e66
cmp edi, 4
jl 0x4a4de1
push edi
push str.selftest
push esi
call fcn.0058697e
add esp, 0xc
test eax, eax
jne 0x4a4de1
mov eax, dword [esp + 0xc]
xor ebx, ebx
push ebx
mov dword [esp + 0x48], ebx
mov dword [esp + 0x28], ebx
mov dword [esp + 0x1c], ebx
mov dword [esp + 0x34], ebx
mov dword [esp + 0x2c], ebx
call fcn.0049f5a0
mov edi, 1
add esp, 4
cmp dword [esp + 0x14], edi
jle 0x4a4a3c
mov esi, dword [esp + edi*4 + 0xc0]
cmp byte [esi], 0x2d
jne 0x4a49b4
cmp byte [esi + 1], 0x2d
jne 0x4a49b4
inc esi
mov edx, 0x5fc1b0
mov ecx, esi
jmp 0x4a49c0
mov al, byte [ecx]
cmp al, byte [edx]
jne 0x4a49e0
cmp al, bl
je 0x4a49dc
mov al, byte [ecx + 1]
cmp al, byte [edx + 1]
jne 0x4a49e0
add ecx, 2
add edx, 2
cmp al, bl
jne 0x4a49c0
xor eax, eax
jmp 0x4a49e5
sbb eax, eax
sbb eax, 0xffffffff
cmp eax, ebx
jne 0x4a49f3
mov dword [esp + 0x44], 1
jmp 0x4a4a31
mov ecx, 0x5fc1b8
mov eax, esi
lea ebx, [ebx]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4a4a20
cmp dl, bl
je 0x4a4a1c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4a4a20
add eax, 2
add ecx, 2
cmp dl, bl
jne 0x4a4a00
xor eax, eax
jmp 0x4a4a25
sbb eax, eax
sbb eax, 0xffffffff
cmp eax, ebx
jne 0x4a4ad1
inc dword [esp + 0x24]
inc edi
cmp edi, dword [esp + 0x14]
jl 0x4a49a1
mov esi, dword [esp + 0xc]
mov edx, dword [esi]
push ebx
push ebx
push ebx
push ebx
push ebx
push ebx
push str.selftest
push str.main
push edx
call fcn.00528470
add esp, 0x24
mov edi, eax
neg edi
sbb edi, edi
inc edi
cmp dword [esp + 0x44], ebx
je 0x4a4a74
mov edi, esi
call fcn.0049d170
mov edi, 1
xor eax, eax
push 0x5fc1fc
xor bl, bl
lea esi, [esp + 0xb8]
mov dword [esp + 0xb8], eax
mov dword [esp + 0xbc], eax
mov dword [esp + 0xc0], eax
call fcn.00490a30
add esp, 4
mov dword [esp + 0x1c], edi
test edi, edi
jl 0x4a4d89
lea ecx, [ecx]
mov ecx, dword [esp + 0xc]
mov edx, dword [ecx]
push 0
lea eax, [esp + 0x2c]
mov esi, 1
push eax
push 0xffffffffffffffff
cmp dword [esp + 0x28], esi
jne 0x4a4b10
push str.SELECT_tno_op_cmd_ans_FROM_selftest_ORDER_BY_tno
jmp 0x4a4b15
mov eax, dword [esp + 0xc0]
mov ecx, dword [esp + edi*4 + 0xc0]
push eax
push ecx
push str.Unknown_option___s__on___s__n
call fcn.00587376
mov ebx, eax
add ebx, 0x40
call fcn.004904d0
add esp, 0xc
push str.Should_be_one_of:___init__v_n
call fcn.00587376
add eax, 0x40
push eax
call fcn.00585612
jmp 0x4a3e5b
push str.VALUES_0_memo_Missing_SELFTEST_table___default_checks_only__________1_run_PRAGMA_integrity_check_ok_
push edx
call fcn.00501770
add esp, 0x14
mov dword [esp + 0x10], eax
test eax, eax
jne 0x4a4db8
mov eax, dword [esp + 0x28]
push eax
call fcn.004d1cc0
add esp, 4
cmp eax, 0x64
jne 0x4a4d71
mov dword [esp + 0x1c], 0
mov esi, dword [esp + 0x28]
push 0
push esi
call fcn.004d2400
push 1
push esi
mov dword [esp + 0x30], eax
call fcn.004d2500
push 2
push esi
mov edi, eax
call fcn.004d2500
push 3
push esi
mov ebx, eax
call fcn.004d2500
add esp, 0x20
cmp dword [esp + 0x24], 0
mov dword [esp + 0x34], eax
jle 0x4a4ba9
push ebx
push 0x5fc2d0
call fcn.004ad880
mov ecx, dword [esp + 0x28]
push ebx
push edi
push ecx
push str._d:__s__s_n
mov esi, eax
call fcn.00583141
push esi
call fcn.004ab490
add esp, 0x1c
mov ecx, str.memo
mov eax, edi
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4a4bd0
test dl, dl
je 0x4a4bcc
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4a4bd0
add eax, 2
add ecx, 2
test dl, dl
jne 0x4a4bb0
xor eax, eax
jmp 0x4a4bd5
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x4a4bf3
mov edx, dword [esp + 0xc]
push ebx
mov ebx, dword [edx + 0x18]
push 0x5e1654
call fcn.004904d0
add esp, 8
jmp 0x4a4d34
mov ecx, 0x5fc2e8
mov eax, edi
lea ebx, [ebx]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4a4c20
test dl, dl
je 0x4a4c1c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4a4c20
add eax, 2
add ecx, 2
test dl, dl
jne 0x4a4c00
xor eax, eax
jmp 0x4a4c25
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x4a4d4c
mov edi, dword [esp + 0xc]
lea ecx, [esp + 0x38]
push ecx
mov dword [esp + 0xbc], eax
lea edx, [esp + 0xb8]
push edx
mov dword [esp + 0x40], eax
mov eax, dword [esp + 0xbc]
push 0x49cff0
mov byte [eax], 0
mov eax, dword [edi]
push ebx
push eax
call fcn.004fc670
mov ebx, 1
add dword [esp + 0x2c], ebx
add esp, 0x14
cmp dword [esp + 0x24], 0
mov esi, eax
mov dword [esp + 0x10], esi
je 0x4a4c97
mov ecx, dword [esp + 0xb4]
mov ebx, dword [edi + 0x18]
push ecx
push str.Result:__s_n
call fcn.004904d0
add esp, 8
mov ebx, 1
test esi, esi
mov esi, dword [esp + 0x38]
jne 0x4a4d0f
test esi, esi
jne 0x4a4d0f
mov esi, dword [esp + 0x34]
mov ecx, dword [esp + 0xb4]
mov eax, esi
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4a4cd0
test dl, dl
je 0x4a4ccc
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4a4cd0
add eax, 2
add ecx, 2
test dl, dl
jne 0x4a4cb0
xor eax, eax
jmp 0x4a4cd5
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
je 0x4a4d34
add dword [esp + 0x30], ebx
push esi
mov esi, dword [esp + 0x24]
push esi
mov dword [esp + 0x18], ebx
mov ebx, dword [edi + 0x18]
push str._d:_Expected:___s__n
call fcn.004904d0
mov edx, dword [esp + 0xc0]
mov ebx, dword [edi + 0x18]
push edx
push esi
push str._d:______Got:___s__n
call fcn.004904d0
add esp, 0x18
jmp 0x4a4d34
mov eax, dword [esp + 0x20]
add dword [esp + 0x30], ebx
push esi
push ebx
push eax
mov dword [esp + 0x1c], ebx
mov ebx, dword [edi + 0x18]
push str._d:_error_code__d:__s_n
call fcn.004904d0
push esi
call fcn.004ab490
add esp, 0x14
mov ecx, dword [esp + 0x28]
push ecx
call fcn.004d1cc0
add esp, 4
cmp eax, 0x64
je 0x4a4b48
jmp 0x4a4d71
mov edx, dword [esp + 0x20]
push edx
push edi
push str.Unknown_operation___s__on_selftest_line__d_n
call fcn.00587376
mov ebx, eax
add ebx, 0x40
call fcn.004904d0
add esp, 0xc
mov dword [esp + 0x10], 1
mov eax, dword [esp + 0x28]
push eax
call fcn.004d0dd0
add esp, 4
sub dword [esp + 0x1c], 1
jns 0x4a4ab0
lea esi, [esp + 0xb4]
call fcn.00490a10
mov edx, dword [esp + 0x18]
mov eax, dword [esp + 0x30]
mov ecx, dword [esp + 0xc]
mov ebx, dword [ecx + 0x18]
push edx
push eax
push str._d_errors_out_of__d_tests_n
call fcn.004904d0
add esp, 0xc
jmp 0x4a3e66
push str.Error_querying_the_selftest_table_n
call fcn.00587376
add eax, 0x40
push eax
call fcn.00585612
mov ecx, dword [esp + 0x30]
push ecx
mov dword [esp + 0x1c], esi
call fcn.004d0dd0
add esp, 0xc
jmp 0x4a3e66
push edi
push str.separator
push esi
call fcn.0058697e
add esp, 0xc
test eax, eax
jne 0x4a4e75
mov esi, dword [esp + 0x14]
cmp esi, 2
jl 0x4a4e06
cmp esi, 3
jle 0x4a4e24
push str.Usage:_.separator_COL__ROW__n
call fcn.00587376
add eax, 0x40
push eax
call fcn.00585612
add esp, 8
mov dword [esp + 0x10], 1
cmp esi, 2
jl 0x4a4e48
mov edx, dword [esp + 0xc4]
push edx
push 0x13
mov eax, ebx
push 0x5f8a48
add eax, 0x6a
push eax
push 0x14
call fcn.004ad900
add esp, 0x14
cmp esi, 3
jl 0x4a3e66
mov ecx, dword [esp + 0xc8]
push ecx
push 0x13
mov edx, ebx
push 0x5f8a48
add edx, 0x7e
push edx
push 0x14
call fcn.004ad900
add esp, 0x14
jmp 0x4a3e66
cmp edi, 4
jl 0x4a5402
push edi
push str.sha3sum
push esi
call fcn.0058697e
add esp, 0xc
test eax, eax
jne 0x4a5402
mov eax, dword [esp + 0xc]
xor ebx, ebx
push ebx
mov dword [esp + 0x28], ebx
mov dword [esp + 0x1c], ebx
mov dword [esp + 0x48], ebx
mov dword [esp + 0x24], 0xe0
mov dword [esp + 0x30], ebx
call fcn.0049f5a0
mov edi, 1
add esp, 4
cmp dword [esp + 0x14], edi
mov esi, edi
jle 0x4a5077
jmp 0x4a4ed2
xor ebx, ebx
mov eax, dword [esp + esi*4 + 0xc0]
cmp byte [eax], 0x2d
jne 0x4a5035
add eax, edi
cmp byte [eax], 0x2d
jne 0x4a4eeb
add eax, edi
mov edx, str.schema
mov ecx, eax
mov bl, byte [ecx]
cmp bl, byte [edx]
jne 0x4a4f12
test bl, bl
je 0x4a4f0e
mov bl, byte [ecx + 1]
cmp bl, byte [edx + 1]
jne 0x4a4f12
add ecx, 2
add edx, 2
test bl, bl
jne 0x4a4ef2
xor ecx, ecx
jmp 0x4a4f17
sbb ecx, ecx
sbb ecx, 0xffffffff
test ecx, ecx
je 0x4a505b
mov edx, str.sha3_224
mov ecx, eax
mov bl, byte [ecx]
cmp bl, byte [edx]
jne 0x4a4f46
test bl, bl
je 0x4a4f42
mov bl, byte [ecx + 1]
cmp bl, byte [edx + 1]
jne 0x4a4f46
add ecx, 2
add edx, 2
test bl, bl
jne 0x4a4f26
xor ecx, ecx
jmp 0x4a4f4b
sbb ecx, ecx
sbb ecx, 0xffffffff
test ecx, ecx
je 0x4a5023
mov edx, str.sha3_256
mov ecx, eax
mov bl, byte [ecx]
cmp bl, byte [edx]
jne 0x4a4f7a
test bl, bl
je 0x4a4f76
mov bl, byte [ecx + 1]
cmp bl, byte [edx + 1]
jne 0x4a4f7a
add ecx, 2
add edx, 2
test bl, bl
jne 0x4a4f5a
xor ecx, ecx
jmp 0x4a4f7f
sbb ecx, ecx
sbb ecx, 0xffffffff
test ecx, ecx
je 0x4a5023
mov edx, str.sha3_384
mov ecx, eax
mov bl, byte [ecx]
cmp bl, byte [edx]
jne 0x4a4fae
test bl, bl
je 0x4a4faa
mov bl, byte [ecx + 1]
cmp bl, byte [edx + 1]
jne 0x4a4fae
add ecx, 2
add edx, 2
test bl, bl
jne 0x4a4f8e
xor ecx, ecx
jmp 0x4a4fb3
sbb ecx, ecx
sbb ecx, 0xffffffff
test ecx, ecx
je 0x4a5023
mov edx, str.sha3_512
mov ecx, eax
mov bl, byte [ecx]
cmp bl, byte [edx]
jne 0x4a4fde
test bl, bl
je 0x4a4fda
mov bl, byte [ecx + 1]
cmp bl, byte [edx + 1]
jne 0x4a4fde
add ecx, 2
add edx, 2
test bl, bl
jne 0x4a4fbe
xor ecx, ecx
jmp 0x4a4fe3
sbb ecx, ecx
sbb ecx, 0xffffffff
test ecx, ecx
je 0x4a5023
mov ecx, str.debug
lea esp, [esp]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4a5010
test dl, dl
je 0x4a500c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4a5010
add eax, 2
add ecx, 2
test dl, dl
jne 0x4a4ff0
xor eax, eax
jmp 0x4a5015
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x4a5152
mov dword [esp + 0x2c], edi
jmp 0x4a505f
add eax, 5
push eax
call fcn.00585494
add esp, 4
mov dword [esp + 0x20], eax
jmp 0x4a505f
cmp dword [esp + 0x24], ebx
jne 0x4a5195
push 0x5c
push eax
push str.sqlite__
mov dword [esp + 0x30], eax
mov dword [esp + 0x50], edi
call fcn.004f4b00
add esp, 0xc
test eax, eax
jne 0x4a505f
mov dword [esp + 0x18], edi
add esi, edi
cmp esi, dword [esp + 0x14]
jl 0x4a4ed0
cmp dword [esp + 0x18], 0
mov eax, str.SELECT_lower_name__FROM_sqlite_master_WHERE_typetable_AND_coalesce_rootpage_0__1_UNION_ALL_SELECT_sqlite_master_ORDER_BY_1_collate_nocase
jne 0x4a507c
mov eax, str.SELECT_lower_name__FROM_sqlite_master_WHERE_typetable_AND_coalesce_rootpage_0__1_AND_name_NOT_LIKE_sqlite___ORDER_BY_1_collate_nocase
push 0
lea edx, [esp + 0x1c]
push edx
push 0xffffffffffffffff
push eax
mov eax, dword [esp + 0x1c]
mov ecx, dword [eax]
push ecx
call fcn.00501770
xor eax, eax
push str.WITH__sha3sum_query__a_b__AS_
xor bl, bl
lea esi, [esp + 0xc0]
mov dword [esp + 0x80], eax
mov dword [esp + 0x84], eax
mov dword [esp + 0x88], eax
mov dword [esp + 0xc0], eax
mov dword [esp + 0xc4], eax
mov dword [esp + 0xc8], eax
call fcn.00490a30
mov edx, dword [esp + 0x30]
push edx
mov dword [esp + 0x54], str.VALUES_
call fcn.004d1cc0
add esp, 0x1c
cmp eax, 0x64
jne 0x4a5362
mov esi, dword [esp + 0x24]
mov ebx, dword [esp + 0x18]
push 0
push ebx
call fcn.004d2500
add esp, 8
mov edi, eax
test esi, esi
je 0x4a511c
push 0
push edi
push esi
call fcn.004f4b00
add esp, 0xc
test eax, eax
jne 0x4a5350
push 7
push 0x5fa424
push edi
call fcn.0058697e
add esp, 0xc
test eax, eax
je 0x4a519c
push str.SELECT__FROM
xor bl, bl
lea esi, [esp + 0x6c]
call fcn.00490a30
push edi
mov bl, 0x22
call fcn.00490a30
push str._NOT_INDEXED_
jmp 0x4a52f4
mov eax, dword [esp + 0xc0]
mov ecx, dword [esp + esi*4 + 0xc0]
push eax
push ecx
push str.Unknown_option___s__on___s__n
call fcn.00587376
mov ebx, eax
add ebx, 0x40
call fcn.004904d0
add esp, 0xc
push str.Should_be_one_of:___schema___sha3_224___sha3_256___sha3_384___sha3_512_n
call fcn.00587376
add eax, 0x40
push eax
call fcn.00585612
mov dword [esp + 0x18], edi
jmp 0x4a3e63
push str.Usage:_.sha3sum__OPTIONS___LIKE_PATTERN__n
jmp 0x4a517e
mov ecx, str.sqlite_master
mov eax, edi
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4a51c3
test dl, dl
je 0x4a51bf
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4a51c3
add eax, 2
add ecx, 2
test dl, dl
jne 0x4a51a3
xor eax, eax
jmp 0x4a51c8
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x4a51e4
push str.SELECT_type_name_tbl_name_sql_FROM_sqlite_master_ORDER_BY_name_
xor bl, bl
lea esi, [esp + 0x6c]
call fcn.00490a30
add esp, 4
jmp 0x4a5302
mov ecx, str.sqlite_sequence
mov eax, edi
jmp 0x4a51f0
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4a5210
test dl, dl
je 0x4a520c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4a5210
add eax, 2
add ecx, 2
test dl, dl
jne 0x4a51f0
xor eax, eax
jmp 0x4a5215
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x4a5231
push str.SELECT_name_seq_FROM_sqlite_sequence_ORDER_BY_name_
xor bl, bl
lea esi, [esp + 0x6c]
call fcn.00490a30
add esp, 4
jmp 0x4a5302
mov ecx, str.sqlite_stat1
mov eax, edi
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4a5258
test dl, dl
je 0x4a5254
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4a5258
add eax, 2
add ecx, 2
test dl, dl
jne 0x4a5238
xor eax, eax
jmp 0x4a525d
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x4a5279
push str.SELECT_tbl_idx_stat_FROM_sqlite_stat1_ORDER_BY_tbl_idx_
xor bl, bl
lea esi, [esp + 0x6c]
call fcn.00490a30
add esp, 4
jmp 0x4a5302
mov ecx, str.sqlite_stat3
mov eax, edi
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4a52a0
test dl, dl
je 0x4a529c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4a52a0
add eax, 2
add ecx, 2
test dl, dl
jne 0x4a5280
xor eax, eax
jmp 0x4a52a5
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
je 0x4a52d9
mov ecx, str.sqlite_stat4
mov eax, edi
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4a52d0
test dl, dl
je 0x4a52cc
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4a52d0
add eax, 2
add ecx, 2
test dl, dl
jne 0x4a52b0
xor eax, eax
jmp 0x4a52d5
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x4a5302
push str.SELECT__FROM
xor bl, bl
lea esi, [esp + 0x6c]
call fcn.00490a30
push edi
call fcn.00490a30
push str._ORDER_BY_tbl__idx__rowid__n
xor bl, bl
lea esi, [esp + 0x74]
call fcn.00490a30
add esp, 0xc
mov eax, dword [esp + 0x38]
push eax
xor bl, bl
lea esi, [esp + 0xac]
call fcn.00490a30
mov ecx, dword [esp + 0x6c]
push ecx
mov bl, 0x27
call fcn.00490a30
push 0x5f8a94
xor bl, bl
mov dword [esp + 0x78], 0
call fcn.00490a30
push edi
mov bl, 0x27
call fcn.00490a30
mov esi, dword [esp + 0x34]
mov ebx, dword [esp + 0x28]
add esp, 0x10
mov dword [esp + 0x38], 0x5fc698
push ebx
call fcn.004d1cc0
add esp, 4
cmp eax, 0x64
je 0x4a50f7
mov edx, dword [esp + 0x18]
push edx
call fcn.004d0dd0
add esp, 4
cmp dword [esp + 0x44], 0
je 0x4a538a
mov eax, dword [esp + 0x20]
mov ecx, dword [esp + 0xa8]
push eax
push ecx
push str._s___SELECT_lower_hex_sha3_query_a__d____AS_hash__b_AS_label___FROM__sha3sum_query_
jmp 0x4a539c
mov edx, dword [esp + 0x20]
mov eax, dword [esp + 0xa8]
push edx
push eax
push str._s___SELECT_lower_hex_sha3_query_group_concat_a____d____AS_hash___FROM__sha3sum_query_
call fcn.004ad880
add esp, 0xc
lea esi, [esp + 0x68]
mov edi, eax
call fcn.00490a10
lea esi, [esp + 0xa8]
call fcn.00490a10
cmp dword [esp + 0x2c], 0
je 0x4a53e5
mov ecx, dword [esp + 0xc]
mov ebx, dword [ecx + 0x18]
push edi
push 0x5e1654
call fcn.004904d0
add esp, 8
push edi
call fcn.004ab490
add esp, 4
jmp 0x4a3e66
mov eax, dword [esp + 0xc]
push 0
push edi
call fcn.0049e4d0
add esp, 8
push edi
call fcn.004ab490
add esp, 4
jmp 0x4a3e66
push edi
push str.shell
push esi
call fcn.0058697e
add esp, 0xc
test eax, eax
je 0x4a542c
push edi
push str.system
push esi
call fcn.0058697e
add esp, 0xc
test eax, eax
jne 0x4a54eb
mov ebx, dword [esp + 0x14]
cmp ebx, 2
jge 0x4a544d
push str.Usage:_.system_COMMAND_n
call fcn.00587376
add eax, 0x40
push eax
call fcn.00585612
jmp 0x4a3e5b
mov esi, dword [esp + 0xc4]
push 0x20
push esi
call fcn.005868c0
add esp, 8
test eax, eax
mov eax, 0x5f7c60
je 0x4a546d
mov eax, str.__s_
push esi
push eax
call fcn.004ad880
mov esi, 2
add esp, 8
cmp ebx, esi
mov edi, eax
jle 0x4a54b6
mov ebx, dword [esp + esi*4 + 0xc0]
push 0x20
push ebx
call fcn.005868c0
add esp, 8
test eax, eax
mov eax, str._z__s
je 0x4a54a2
mov eax, str._z___s_
push ebx
push edi
push eax
call fcn.004ad880
inc esi
add esp, 0xc
cmp esi, dword [esp + 0x14]
mov edi, eax
jl 0x4a5482
push edi
call fcn.0058769a
push edi
mov esi, eax
call fcn.004ab490
add esp, 8
test esi, esi
je 0x4a3e66
push esi
push str.System_command_returns__d_n
call fcn.00587376
add eax, 0x40
push eax
call fcn.00585612
add esp, 0xc
jmp 0x4a3e66
push edi
push str.show
push esi
call fcn.0058697e
add esp, 0xc
test eax, eax
jne 0x4a571d
mov edi, 1
cmp dword [esp + 0x14], edi
je 0x4a5517
push str.Usage:_.show_n
jmp 0x4a517e
mov esi, ebx
mov edx, dword [esi + 0x40]
mov ebx, dword [esi + 0x18]
shr edx, 6
and edx, edi
mov eax, dword [edx*4 + 0x6344b4]
push eax
push str.echo
push str._12.12s:__s_n
call fcn.004904d0
movzx ecx, byte [esi + 5]
mov ebx, dword [esi + 0x18]
and ecx, 3
mov edx, dword [ecx*4 + 0x6344b4]
push edx
push 0x5f88b8
push str._12.12s:__s_n
call fcn.004904d0
add esp, 0x18
cmp dword [esi + 0x24], 9
jne 0x4a556c
mov eax, 0x5fa608
jmp 0x4a557c
cmp byte [esi + 4], 0
mov eax, str.auto
jne 0x4a557c
mov eax, 0x5fa610
mov ebx, dword [esi + 0x18]
push eax
push str.explain
push str._12.12s:__s_n
call fcn.004904d0
mov ebx, dword [esi + 0x18]
xor eax, eax
cmp dword [esi + 0x38], eax
setne al
mov ecx, dword [eax*4 + 0x6344b4]
push ecx
push str.headers
push str._12.12s:__s_n
call fcn.004904d0
mov edx, dword [esi + 0x24]
mov eax, dword [edx*4 + 0x63308c]
mov ebx, dword [esi + 0x18]
push eax
push str.mode
push str._12.12s:__s_n
call fcn.004904d0
mov ebx, dword [esi + 0x18]
push str.nullvalue
push str._12.12s:
call fcn.004904d0
mov edi, dword [esi + 0x18]
lea ecx, [esi + 0x3dc]
push ecx
call fcn.0049b790
mov edx, dword [esi + 0x18]
push 0x5f7930
push edx
call fcn.00585612
add esp, 0x38
lea ecx, [esi + 0x3f0]
call fcn.00490700
test eax, eax
jne 0x4a5614
mov ecx, str.stdout
mov ebx, dword [esi + 0x18]
push ecx
push str.output
push str._12.12s:__s_n
call fcn.004904d0
mov ebx, dword [esi + 0x18]
push str.colseparator
push str._12.12s:
call fcn.004904d0
mov edi, dword [esi + 0x18]
lea eax, [esi + 0x6a]
push eax
call fcn.0049b790
mov ecx, dword [esi + 0x18]
push 0x5f7930
push ecx
call fcn.00585612
mov ebx, dword [esi + 0x18]
push str.rowseparator
push str._12.12s:
call fcn.004904d0
mov edi, dword [esi + 0x18]
lea edx, [esi + 0x7e]
push edx
call fcn.0049b790
mov eax, dword [esi + 0x18]
push 0x5f7930
push eax
call fcn.00585612
mov ebx, dword [esi + 0x18]
xor ecx, ecx
cmp byte [esi + 7], cl
setne cl
mov edx, dword [ecx*4 + 0x6344b4]
push edx
push str.stats
push str._12.12s:__s_n
call fcn.004904d0
mov ebx, dword [esi + 0x18]
add esp, 0x40
push str.width
push str._12.12s:
call fcn.004904d0
add esp, 8
xor edi, edi
lea ebx, [esi + 0xbc]
mov eax, dword [ebx]
test eax, eax
je 0x4a56e2
push eax
mov eax, dword [esi + 0x18]
push 0x5fc814
push eax
call fcn.00585612
inc edi
add esp, 0xc
add ebx, 4
cmp edi, 0x64
jl 0x4a56c1
mov ecx, dword [esi + 0x18]
push 0x5f7930
push ecx
call fcn.00585612
mov eax, dword [esi + 0x4f4]
add esp, 8
test eax, eax
jne 0x4a5702
mov eax, 0x5e1790
mov ebx, dword [esi + 0x18]
push eax
push str.filename
push str._12.12s:__s_n
call fcn.004904d0
add esp, 0xc
jmp 0x4a3e66
push edi
push str.stats
push esi
call fcn.0058697e
add esp, 0xc
test eax, eax
jne 0x4a3e3f
mov eax, dword [esp + 0x14]
cmp eax, 2
jne 0x4a5753
mov esi, dword [esp + 0xc4]
call fcn.0049f8e0
mov edx, ebx
mov byte [edx + 7], al
jmp 0x4a3e66
cmp eax, 1
jne 0x4a576a
mov ecx, ebx
mov eax, dword [ecx]
push eax
call fcn.0049d550
add esp, 4
jmp 0x4a3e66
push str.Usage:_.stats__onoff__n
call fcn.00587376
add eax, 0x40
push eax
call fcn.00585612
jmp 0x4a3e5b
cmp esi, 0x74
jne 0x4a60c4
cmp edi, 1
mov ebx, dword [esp + 0xc0]
jle 0x4a57aa
push edi
push str.tables
push ebx
call fcn.0058697e
add esp, 0xc
test eax, eax
je 0x4a5806
mov ecx, str.testcase
mov eax, ebx
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4a5bcf
test dl, dl
je 0x4a57d5
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4a5bcf
add eax, 2
add ecx, 2
test dl, dl
jne 0x4a57b1
xor eax, eax
jmp 0x4a5bd4
push edi
push str.indices
push ebx
call fcn.0058697e
add esp, 0xc
test eax, eax
je 0x4a5806
push edi
push str.indexes
push ebx
call fcn.0058697e
add esp, 0xc
test eax, eax
jne 0x4a3e3f
mov edi, dword [esp + 0xc]
xor eax, eax
mov ebx, eax
mov dword [esp + 0x60], eax
mov dword [esp + 0x64], eax
push eax
mov eax, edi
mov dword [esp + 0x60], ebx
call fcn.0049f5a0
mov edx, dword [edi]
push ebx
lea ecx, [esp + 0x24]
push ecx
push 0xffffffffffffffff
push str.PRAGMA_database_list
push edx
call fcn.00501770
add esp, 0x18
test eax, eax
je 0x4a5867
mov eax, dword [esp + 0x1c]
push eax
call fcn.004d0dd0
mov eax, dword [edi]
add esp, 4
call fcn.004a1010
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x1258]
xor ecx, esp
call fcn.0057ffd2
mov esp, ebp
pop ebp
ret
cmp dword [esp + 0x14], 2
jle 0x4a58a0
cmp esi, 0x69
jne 0x4a58a0
push str.Usage:_.indexes__LIKE_PATTERN__n
call fcn.00587376
add eax, 0x40
push eax
call fcn.00585612
mov ecx, dword [esp + 0x24]
push ecx
mov dword [esp + 0x1c], 1
call fcn.004d0dd0
add esp, 0xc
jmp 0x4a3e66
mov edx, dword [esp + 0x1c]
push edx
call fcn.004d1cc0
add esp, 4
cmp eax, 0x64
jne 0x4a5991
jmp 0x4a58c4
mov ebx, dword [esp + 0x5c]
mov eax, dword [esp + 0x1c]
push 1
push eax
call fcn.004d2500
mov edi, eax
add esp, 8
test edi, edi
je 0x4a597b
test ebx, ebx
je 0x4a58f9
cmp byte [ebx], 0
je 0x4a58f9
push str._UNION_ALL
xor bl, bl
lea esi, [esp + 0x60]
call fcn.00490a30
add esp, 4
push str.main
push edi
call fcn.004ae7c0
add esp, 8
xor bl, bl
lea esi, [esp + 0x5c]
test eax, eax
jne 0x4a5920
push str.SELECT_name_FROM
call fcn.00490a30
add esp, 4
jmp 0x4a5945
push str.SELECT
call fcn.00490a30
push edi
mov bl, 0x27
lea esi, [esp + 0x64]
call fcn.00490a30
push str..name_FROM
xor bl, bl
call fcn.00490a30
add esp, 0xc
push edi
mov bl, 0x22
lea esi, [esp + 0x60]
call fcn.00490a30
push str..sqlite_master
xor bl, bl
call fcn.00490a30
add esp, 8
cmp dword [esp + 0x34], 0x74
jne 0x4a596e
push str._WHERE_type_IN__table_view____AND_name_NOT_LIKE_sqlite_____AND_name_LIKE__1
jmp 0x4a5973
push str._WHERE_typeindex___AND_tbl_name_LIKE__1
call fcn.00490a30
add esp, 4
mov ecx, dword [esp + 0x1c]
push ecx
call fcn.004d1cc0
add esp, 4
cmp eax, 0x64
je 0x4a58c0
mov edx, dword [esp + 0x1c]
push edx
call fcn.004d0dd0
push str._ORDER_BY_1
xor bl, bl
lea esi, [esp + 0x64]
call fcn.00490a30
mov ecx, dword [esp + 0x64]
mov ebx, dword [esp + 0x14]
mov edx, dword [ebx]
push 0
lea eax, [esp + 0x28]
push eax
push 0xffffffffffffffff
push ecx
push edx
call fcn.00501770
mov edi, eax
add esp, 0x1c
mov dword [esp + 0x10], edi
call fcn.00490a10
test edi, edi
je 0x4a59f3
mov eax, dword [ebx]
call fcn.004a1010
mov ecx, dword [esp + 0x1264]
pop edi
pop esi
pop ebx
xor ecx, esp
call fcn.0057ffd2
mov esp, ebp
pop ebp
ret
mov esi, dword [esp + 0x1c]
xor ebx, ebx
xor edi, edi
cmp dword [esp + 0x14], 1
mov dword [esp + 0x18], ebx
mov dword [esp + 0x30], ebx
jle 0x4a5a23
mov eax, dword [esp + 0xc4]
push 0xffffffffffffffff
push 0xffffffffffffffff
push eax
push 1
push esi
call fcn.004d2c80
add esp, 0x14
jmp 0x4a5a3a
push 1
push 0xffffffffffffffff
push 0x5f4694
push 1
xor eax, eax
mov ecx, esi
call fcn.004d2970
add esp, 0x10
push esi
call fcn.004d1cc0
add esp, 4
cmp eax, 0x64
jne 0x4a5aaf
cmp edi, dword [esp + 0x18]
jl 0x4a5a7f
mov esi, dword [esp + 0x18]
lea esi, [esi + esi + 0xa]
lea ecx, [esi*4]
push 0
push ecx
push ebx
call fcn.004ab740
add esp, 0xc
test eax, eax
je 0x4a2ea2
mov ebx, eax
mov dword [esp + 0x18], esi
mov esi, dword [esp + 0x1c]
mov dword [esp + 0x30], ebx
push 0
push esi
call fcn.004d2500
push eax
push 0x5f7c60
call fcn.004ad880
add esp, 0x10
mov dword [ebx + edi*4], eax
test eax, eax
je 0x4a2ea2
push esi
inc edi
call fcn.004d1cc0
add esp, 4
cmp eax, 0x64
je 0x4a5a48
push esi
call fcn.004d0dd0
add esp, 4
test eax, eax
je 0x4a5ad3
mov edx, dword [esp + 0xc]
mov eax, dword [edx]
call fcn.004a1010
mov dword [esp + 0x10], eax
test eax, eax
jne 0x4a5ba4
test edi, edi
jle 0x4a5ba4
xor esi, esi
xor edx, edx
mov dword [esp + 0x38], esi
test edi, edi
jle 0x4a5b07
mov ebx, dword [esp + 0x30]
jmp 0x4a5af0
mov ecx, dword [ebx + edx*4]
call fcn.00490700
cmp eax, esi
jle 0x4a5afe
mov esi, eax
inc edx
cmp edx, edi
jl 0x4a5af0
mov dword [esp + 0x38], esi
mov eax, 0x50
add esi, 2
cdq
idiv esi
mov ecx, eax
cmp ecx, 1
jge 0x4a5b1e
mov ecx, 1
lea eax, [ecx + edi - 1]
cdq
idiv ecx
mov dword [esp + 0x18], 0
mov dword [esp + 0x24], eax
test eax, eax
jle 0x4a5ba4
mov esi, dword [esp + 0x18]
cmp esi, edi
jge 0x4a5b80
cmp esi, dword [esp + 0x24]
mov ecx, 0x5e1790
jl 0x4a5b4d
mov ecx, 0x5e3714
mov eax, dword [esp + 0x30]
mov eax, dword [eax + esi*4]
test eax, eax
jne 0x4a5b5d
mov eax, 0x5e1790
mov edx, dword [esp + 0x38]
push eax
mov eax, dword [esp + 0x10]
mov ebx, dword [eax + 0x18]
push edx
push ecx
push str._s__s
call fcn.004904d0
add esi, dword [esp + 0x34]
add esp, 0x10
cmp esi, edi
jl 0x4a5b3d
mov ecx, dword [esp + 0xc]
mov edx, dword [ecx + 0x18]
push 0x5f7930
push edx
call fcn.00585612
mov eax, dword [esp + 0x20]
inc eax
add esp, 8
cmp eax, dword [esp + 0x24]
mov dword [esp + 0x18], eax
jl 0x4a5b35
mov ebx, dword [esp + 0x30]
xor esi, esi
test edi, edi
jle 0x4a5bc1
mov edi, edi
mov eax, dword [ebx + esi*4]
push eax
call fcn.004ab490
inc esi
add esp, 4
cmp esi, edi
jl 0x4a5bb0
push ebx
call fcn.004ab490
add esp, 4
jmp 0x4a3e66
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x4a5c49
mov esi, dword [esp + 0xc]
call fcn.004a0ad0
push 0
mov edi, str.testcase_out.txt
call fcn.0049fa10
add esp, 4
mov dword [esi + 0x18], eax
test eax, eax
jne 0x4a5c0d
push str.Error:_cannot_open_testcase_out.txt_n
call fcn.00587376
add eax, 0x40
push eax
call fcn.00585612
add esp, 8
add esi, 0x4c
cmp dword [esp + 0x14], 2
jl 0x4a5c34
mov ecx, dword [esp + 0xc4]
push ecx
push 0x5f7c60
push esi
push 0x1e
call fcn.004ad900
add esp, 0x10
jmp 0x4a3e66
push 0x5fc978
push esi
push 0x1e
call fcn.004ad900
add esp, 0xc
jmp 0x4a3e66
cmp edi, 8
jl 0x4a5f53
push edi
push str.testctrl
push ebx
call fcn.0058697e
add esp, 0xc
test eax, eax
jne 0x4a5f53
or eax, 0xffffffff
mov dword [esp + 0x18], eax
mov dword [esp + 0x38], eax
mov eax, dword [esp + 0xc]
push 0
call fcn.0049f5a0
add esp, 4
cmp dword [esp + 0x14], 2
jl 0x4a5ce0
mov eax, dword [esp + 0xc4]
cmp byte [eax], 0x2d
mov esi, eax
mov dword [esp + 0x28], esi
jne 0x4a5cb7
inc eax
cmp byte [eax], 0
je 0x4a5cb7
mov esi, eax
cmp byte [esi], 0x2d
mov dword [esp + 0x28], esi
jne 0x4a5cb7
cmp byte [esi + 1], 0
je 0x4a5cb7
inc esi
mov dword [esp + 0x28], esi
mov ecx, str.help
mov eax, esi
mov edi, edi
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4a5ce7
test dl, dl
je 0x4a5cdc
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4a5ce7
add eax, 2
add ecx, 2
test dl, dl
jne 0x4a5cc0
xor eax, eax
jmp 0x4a5cec
mov esi, str.help
jmp 0x4a5cb3
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x4a5d3f
mov esi, dword [esp + 0xc]
mov ebx, dword [esi + 0x18]
push str.Available_test_controls:_n
call fcn.004904d0
add esp, 4
mov edi, 0x5e9108
lea esp, [esp]
mov edx, dword [edi + 8]
mov eax, dword [edi]
mov ebx, dword [esi + 0x18]
push edx
push eax
push str.__.testctrl__s__s_n
call fcn.004904d0
add edi, 0xc
add esp, 0xc
cmp edi, str.____append______________append_the_database_to_the_end_of_the_file_n____ascii_______________set_output_mode_to_ascii_n____bail________________stop_after_hitting_an_error_n____batch_______________force_batch_I_O_n____column______________set_output_mode_to_column_n____cmd_COMMAND_________run__COMMAND__before_reading_stdin_n____csv_________________set_output_mode_to_csv_n____echo________________print_commands_before_execution_n____init_FILENAME_______read_process_named_file_n_____no_header__________turn_headers_on_or_off_n____help________________show_this_message_n____html________________set_output_mode_to_HTML_n____interactive_________force_interactive_I_O_n____line________________set_output_mode_to_line_n____list________________set_output_mode_to_list_n____lookaside_SIZE_N____use_N_entries_of_SZ_bytes_for_lookaside_memory_n____mmap_N______________default_mmap_size_set_to_N_n____newline_SEP_________set_output_row_separator._Default:__n_n____nullvalue_TEXT______set_text_string_for_NULL_values._Default__n____pagecache_SIZE_N____use_N_slots_of_SZ_bytes_each_for_page_cache_memory_n____quote_______________set_output_mode_to_quote_n____readonly____________open_the_database_read_only_n____separator_SEP_______set_output_column_separator._Default:__n____stats_______________print_memory_stats_before_each_finalize_n____version_____________show_SQLite_version_n____vfs_NAME____________use_NAME_as_the_default_VFS_n
jl 0x4a5d10
mov dword [esp + 0x10], 1
jmp 0x4a3e66
mov ecx, esi
call fcn.00490700
mov esi, dword [esp + 0x18]
mov dword [esp + 0x34], eax
xor ebx, ebx
mov edi, 0x5e910c
mov ecx, dword [esp + 0x34]
mov edx, dword [edi - 4]
mov eax, dword [esp + 0x28]
push ecx
push edx
push eax
call fcn.0058697e
add esp, 0xc
test eax, eax
jne 0x4a5d7d
test esi, esi
jge 0x4a5dae
mov esi, dword [edi]
mov dword [esp + 0x18], esi
mov dword [esp + 0x38], ebx
add edi, 0xc
inc ebx
cmp edi, 0x5e919c
jl 0x4a5d55
test esi, esi
jge 0x4a5dbd
mov edx, dword [esp + 0x28]
push edx
push str.Error:_unknown_test_control:__s_nUse__.testctrl___help__for_help_n
call fcn.00587376
mov ebx, eax
add ebx, 0x40
call fcn.004904d0
add esp, 8
jmp case.0x4a5dcc.8
mov ecx, dword [esp + 0x28]
push ecx
push str.Error:_ambiguous_test_control:___s__nUse__.testctrl___help__for_help_n
jmp 0x4a3e4c
lea eax, [esi - 5]
cmp eax, 0x14
ja case.0x4a5dcc.8
movzx eax, byte [eax + 0x4a63b0]
jmp dword [eax*4 + 0x4a6394]
cmp dword [esp + 0x14], 3
jne case.0x4a5dcc.8
mov ecx, dword [esp + 0xc8]
push 0
push 0
push ecx
call fcn.00587ad4
mov edx, dword [esp + 0x18]
push eax
mov eax, dword [edx]
push eax
push esi
call fcn.00528940
add esp, 0x18
jmp 0x4a3e66
cmp dword [esp + 0x14], 2
jne case.0x4a5dcc.8
push esi
call fcn.00528940
xor ecx, ecx
add esp, 4
cmp esi, 0x16
setne cl
lea ecx, [ecx + ecx + 1]
test ecx, ecx
jne 0x4a5f0f
mov eax, dword [esp + 0x38]
test eax, eax
jl 0x4a3e66
mov edx, dword [esp + 0x28]
lea eax, [eax + eax*2]
mov ecx, dword [eax*4 + 0x5e9110]
mov eax, dword [esp + 0xc]
mov ebx, dword [eax + 0x18]
push ecx
push edx
push str.Usage:_.testctrl__s__s_n
call fcn.004904d0
add esp, 0xc
mov dword [esp + 0x10], 1
jmp 0x4a3e66
cmp dword [esp + 0x14], 3
jne case.0x4a5dcc.8
mov eax, dword [esp + 0xc8]
call fcn.004908d0
push eax
push esi
call fcn.00528940
jmp 0x4a3e63
cmp dword [esp + 0x14], 3
jne case.0x4a5dcc.8
mov esi, dword [esp + 0xc8]
call fcn.0049f8e0
mov ecx, dword [esp + 0x18]
push eax
push ecx
call fcn.00528940
add esp, 8
jmp 0x4a5f14
cmp dword [esp + 0x14], 3
jne case.0x4a5dcc.8
mov esi, dword [esp + 0xc8]
call fcn.0049f8e0
mov edx, dword [esp + 0x18]
push eax
push edx
call fcn.00528940
jmp 0x4a3e63
cmp dword [esp + 0x14], 5
jne case.0x4a5dcc.8
mov eax, dword [esp + 0xd0]
call fcn.004908d0
push edx
push eax
mov eax, dword [esp + 0xd4]
call fcn.004908d0
mov ecx, dword [esp + 0x14]
push edx
mov edx, dword [ecx]
push eax
mov eax, dword [esp + 0xd8]
push eax
push edx
push esi
call fcn.00528940
add esp, 0x1c
jmp 0x4a3e66
cmp ecx, 1
jne 0x4a5f2f
mov ecx, dword [esp + 0xc]
mov edx, dword [ecx + 0x18]
push eax
push 0x5fca5c
push edx
call fcn.00585612
add esp, 0xc
jmp 0x4a3e66
cmp ecx, 2
jne 0x4a3e66
push eax
mov eax, dword [esp + 0x10]
mov ecx, dword [eax + 0x18]
push str.0x_08x_n
push ecx
call fcn.00585612
add esp, 0xc
jmp 0x4a3e66
cmp edi, 4
jle 0x4a5fab
push edi
push str.timeout
push ebx
call fcn.0058697e
add esp, 0xc
test eax, eax
jne 0x4a5fab
mov esi, dword [esp + 0xc]
push eax
mov eax, esi
call fcn.0049f5a0
add esp, 4
cmp dword [esp + 0x14], 2
jl 0x4a5f9b
mov eax, dword [esp + 0xc4]
call fcn.004908d0
mov edx, dword [esi]
push eax
push edx
call fcn.005265e0
jmp 0x4a3e63
mov edx, dword [esi]
xor eax, eax
push eax
push edx
call fcn.005265e0
jmp 0x4a3e63
cmp edi, 5
jl 0x4a602e
push edi
push str.timer
push ebx
call fcn.0058697e
add esp, 0xc
test eax, eax
jne 0x4a602e
cmp dword [esp + 0x14], 2
jne 0x4a6016
mov esi, dword [esp + 0xc4]
call fcn.0049f8e0
mov dword [0x640804], eax
test eax, eax
je 0x4a3e66
call fcn.00490310
test eax, eax
jne 0x4a3e66
push str.Error:_timer_not_available_on_this_system._n
call fcn.00587376
add eax, 0x40
push eax
call fcn.00585612
mov dword [0x640804], 0
jmp 0x4a3e63
push str.Usage:_.timer_onoff_n
call fcn.00587376
add eax, 0x40
push eax
call fcn.00585612
jmp 0x4a3e5b
push edi
push str.trace
push ebx
call fcn.0058697e
add esp, 0xc
test eax, eax
jne 0x4a3e3f
push eax
mov eax, dword [esp + 0x10]
call fcn.0049f5a0
add esp, 4
cmp dword [esp + 0x14], 2
je 0x4a6071
push str.Usage:_.trace_FILEoff_n
call fcn.00587376
add eax, 0x40
push eax
call fcn.00585612
jmp 0x4a3e5b
mov eax, dword [esp + 0xc]
mov esi, dword [eax + 0x1c]
call fcn.0049f9e0
mov edi, dword [esp + 0xc4]
push 0
call fcn.0049fa10
mov ecx, dword [esp + 0x10]
add esp, 4
mov dword [ecx + 0x1c], eax
test eax, eax
jne 0x4a60ac
mov ecx, dword [ecx]
push eax
push eax
push eax
push ecx
call fcn.00526c80
add esp, 0x10
jmp 0x4a3e66
mov edx, dword [ecx]
push eax
push 0x49fb00
push 1
push edx
call fcn.00526c80
add esp, 0x10
jmp 0x4a3e66
cmp esi, 0x76
jne 0x4a632a
mov esi, dword [esp + 0xc0]
push edi
push str.version
push esi
call fcn.0058697e
add esp, 0xc
test eax, eax
jne 0x4a6115
push str.2018_09_25_19:08:10_fb90e7189ae6d62e77ba3a308ca5d683f90bbe633cf681865365b8e92792d1c7
push str.3.25.2
mov esi, ebx
mov ebx, dword [esi + 0x18]
push str.SQLite__s__s_n
call fcn.004904d0
mov ebx, dword [esi + 0x18]
push str.msvc_1500_n
call fcn.004904d0
add esp, 0x10
jmp 0x4a3e66
push edi
push str.vfsinfo
push esi
call fcn.0058697e
add esp, 0xc
test eax, eax
jne 0x4a61cc
cmp dword [esp + 0x14], 2
mov ecx, dword [esp + 0xc4]
je 0x4a613f
mov ecx, str.main
mov eax, ebx
mov eax, dword [eax]
mov dword [esp + 0x20], 0
test eax, eax
je 0x4a3e66
lea edx, [esp + 0x20]
push edx
push 0x1b
push ecx
push eax
call fcn.00528840
mov eax, dword [esp + 0x30]
add esp, 0x10
test eax, eax
je 0x4a3e66
mov eax, dword [eax + 0x10]
push eax
mov esi, ebx
mov ebx, dword [esi + 0x18]
push str.vfs.zName_________s__n
call fcn.004904d0
mov ecx, dword [esp + 0x28]
mov edx, dword [ecx]
mov eax, dword [esi + 0x18]
push edx
push str.vfs.iVersion_____d_n
push eax
call fcn.00585612
mov ecx, dword [esp + 0x34]
mov edx, dword [ecx + 4]
mov eax, dword [esi + 0x18]
push edx
push str.vfs.szOsFile_____d_n
push eax
call fcn.00585612
mov ecx, dword [esp + 0x40]
mov edx, dword [ecx + 8]
mov eax, dword [esi + 0x18]
push edx
push str.vfs.mxPathname___d_n
push eax
call fcn.00585612
add esp, 0x2c
jmp 0x4a3e66
push edi
push str.vfslist
push esi
call fcn.0058697e
add esp, 0xc
test eax, eax
jne 0x4a62a1
mov ecx, ebx
mov dword [esp + 0x74], eax
mov eax, dword [ecx]
test eax, eax
je 0x4a6204
lea edx, [esp + 0x74]
push edx
push 0x1b
push str.main
push eax
call fcn.00528840
add esp, 0x10
push 0
call fcn.004aa8a0
mov edi, eax
add esp, 4
test edi, edi
je 0x4a3e66
jmp 0x4a6220
mov eax, str._______CURRENT
cmp edi, dword [esp + 0x74]
je 0x4a6230
mov eax, 0x5e1790
mov esi, dword [esp + 0xc]
mov ebx, dword [esi + 0x18]
push eax
mov eax, dword [edi + 0x10]
push eax
push str.vfs.zName_________s__s_n
call fcn.004904d0
mov ecx, dword [edi]
mov edx, dword [esi + 0x18]
push ecx
push str.vfs.iVersion_____d_n
push edx
call fcn.00585612
mov eax, dword [edi + 4]
mov ecx, dword [esi + 0x18]
push eax
push str.vfs.szOsFile_____d_n
push ecx
call fcn.00585612
mov edx, dword [edi + 8]
mov eax, dword [esi + 0x18]
push edx
push str.vfs.mxPathname___d_n
push eax
call fcn.00585612
add esp, 0x30
cmp dword [edi + 0xc], 0
je 0x4a6295
mov ecx, dword [esi + 0x18]
push str.____________________________________n
push ecx
call fcn.00585612
add esp, 8
mov edi, dword [edi + 0xc]
test edi, edi
jne 0x4a6220
jmp 0x4a3e66
push edi
push str.vfsname
push esi
call fcn.0058697e
add esp, 0xc
test eax, eax
jne 0x4a3e3f
cmp dword [esp + 0x14], 2
mov ecx, dword [esp + 0xc4]
je 0x4a62cb
mov ecx, str.main
mov edx, ebx
mov eax, dword [edx]
mov dword [esp + 0xa4], 0
test eax, eax
je 0x4a3e66
lea edx, [esp + 0xa4]
push edx
push 0xc
push ecx
push eax
call fcn.00528840
mov eax, dword [esp + 0xb4]
add esp, 0x10
test eax, eax
je 0x4a3e66
push eax
mov eax, ebx
mov ebx, dword [eax + 0x18]
push 0x5e1654
call fcn.004904d0
mov ecx, dword [esp + 0xac]
push ecx
call fcn.004ab490
add esp, 0xc
jmp 0x4a3e66
cmp esi, 0x77
jne 0x4a3e3f
mov edx, dword [esp + 0xc0]
push edi
push str.width
push edx
call fcn.0058697e
add esp, 0xc
test eax, eax
jne 0x4a3e3f
mov ebx, dword [esp + 0x14]
lea edi, [esi - 0x76]
cmp ebx, edi
jle 0x4a3e66
mov esi, dword [esp + 0xc]
add esi, 0xbc
lea ebx, [ebx]
cmp edi, 0x64
jge 0x4a3e66
mov eax, dword [esp + edi*4 + 0xc0]
call fcn.004908d0
mov dword [esi], eax
inc edi
add esi, 4
cmp edi, ebx
jl 0x4a6370
jmp 0x4a3e66