Function at 0x48a1e4
Capabilities:
Execute command
Reference sql statements

Disassembly:
push ebp
mov ebp, esp
push edi
push esi
push ebx
mov edi, 1
mov ebx, edx
sub esp, 0x62c
mov dword [ebp - 0x5f0], eax
mov eax, dword [sym.imp.msvcrt.dll_isspace]
mov dword [ebp - 0x5f4], 1
mov dword [ebp - 0x5fc], eax
mov eax, dword [ebp - 0x5f4]
dec eax
mov dword [ebp - 0x5ec], eax
mov eax, dword [ebp - 0x5f0]
add eax, edi
cmp byte [eax], 0
je 0x48a353
cmp dword [ebp - 0x5f4], 0x33
je 0x48a36c
mov ecx, eax
movzx eax, byte [ecx]
mov edi, ecx
mov esi, ecx
sub edi, dword [ebp - 0x5f0]
mov byte [ebp - 0x5f8], al
mov dword [esp], eax
call dword [sym.imp.msvcrt.dll_isspace]
test eax, eax
lea ecx, [esi + 1]
mov dl, byte [ebp - 0x5f8]
jne 0x48a23f
test dl, dl
je 0x48a353
cmp dl, 0x22
sete byte [ebp - 0x5f8]
cmp dl, 0x27
je 0x48a288
cmp byte [ebp - 0x5f8], 0
je 0x48a2f0
mov eax, dword [ebp - 0x5f0]
mov ecx, dword [ebp - 0x5f4]
inc edi
movsx esi, dl
add eax, edi
mov dword [ebp - 0x5ec], eax
mov dword [ebp + ecx*4 - 0x5d8], eax
mov ecx, dword [ebp - 0x5f0]
add ecx, edi
movsx eax, byte [ecx]
test al, al
mov edx, eax
je 0x48a2db
cmp esi, eax
je 0x48a2db
cmp dl, 0x5c
jne 0x48a2d8
cmp byte [ebp - 0x5f8], 0
je 0x48a2d8
mov ecx, dword [ebp - 0x5f0]
cmp byte [ecx + edi + 1], 1
sbb edi, 0xffffffff
inc edi
jmp 0x48a2a7
cmp esi, eax
jne 0x48a2e3
inc edi
mov byte [ecx], 0
cmp esi, 0x22
jne 0x48a348
mov eax, dword [ebp - 0x5ec]
jmp 0x48a343
mov eax, dword [ebp - 0x5f4]
mov dword [ebp + eax*4 - 0x5d8], esi
mov eax, dword [ebp - 0x5f0]
lea edx, [eax + edi]
movzx eax, byte [edx]
mov edi, edx
sub edi, dword [ebp - 0x5f0]
mov dword [ebp - 0x5f8], edx
mov dword [ebp - 0x5ec], edx
test al, al
je 0x48a341
mov dword [esp], eax
mov eax, dword [ebp - 0x5fc]
call eax
mov edx, dword [ebp - 0x5ec]
mov ecx, dword [ebp - 0x5f8]
inc edx
test eax, eax
je 0x48a306
inc edi
mov byte [ecx], 0
mov eax, esi
call fcn.00486038
inc dword [ebp - 0x5f4]
jmp 0x48a212
cmp dword [ebp - 0x5ec], 0
mov dword [ebp - 0x5f4], 0
je 0x48eee8
jmp 0x48a376
mov dword [ebp - 0x5ec], 0x32
mov esi, dword [ebp - 0x5d4]
mov eax, esi
call fcn.00486020
mov edi, eax
movsx eax, byte [esi]
cmp eax, 0x61
mov dword [ebp - 0x5f0], eax
jne 0x48a439
cmp edi, 5
mov eax, 5
mov dword [esp + 4], str.auth
cmovle eax, edi
mov dword [esp], esi
mov dword [esp + 8], eax
call sub.msvcrt.dll_strncmp
test eax, eax
jne 0x48a439
cmp dword [ebp - 0x5ec], 2
je 0x48a3e5
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp], str.Usage:_.auth_ONOFF_n
mov edi, 1
add eax, 0x40
mov dword [esp + 4], eax
call sub.msvcrt.dll_fputs
jmp 0x48ed96
xor edx, edx
mov eax, ebx
call fcn.00489989
mov eax, dword [ebp - 0x5d0]
call fcn.004898c1
test eax, eax
mov eax, dword [ebx]
je 0x48a41a
mov dword [esp + 8], ebx
mov dword [esp + 4], 0x488e18
xor edi, edi
mov dword [esp], eax
call fcn.00403da3
jmp 0x48ed96
mov dword [esp + 8], 0
mov dword [esp + 4], 0
xor edi, edi
mov dword [esp], eax
call fcn.00403da3
jmp 0x48ed96
cmp edi, 2
setg byte [ebp - 0x5f8]
cmp dword [ebp - 0x5f0], 0x62
sete al
and al, byte [ebp - 0x5f8]
mov byte [ebp - 0x5f4], al
je 0x48a47e
cmp edi, 7
mov eax, 7
mov dword [esp + 4], str.backup
cmovle eax, edi
mov dword [esp], esi
mov dword [esp + 8], eax
call sub.msvcrt.dll_strncmp
test eax, eax
je 0x48a4bf
cmp dword [ebp - 0x5f0], 0x73
jne 0x48a657
cmp byte [ebp - 0x5f8], 0
je 0x48a657
cmp edi, 5
mov eax, 5
mov dword [esp + 4], str.save
cmovle eax, edi
mov dword [esp], esi
mov dword [esp + 8], eax
call sub.msvcrt.dll_strncmp
test eax, eax
jne 0x48a657
mov eax, 1
xor ecx, ecx
xor esi, esi
cmp eax, dword [ebp - 0x5ec]
jge 0x48a520
mov edx, dword [ebp + eax*4 - 0x5d4]
cmp byte [edx], 0x2d
jne 0x48a4f7
mov eax, edx
cmp byte [eax], 0x2d
jne 0x48a4e6
inc eax
jmp 0x48a4de
mov dword [esp + 8], edx
mov dword [esp + 4], str.unknown_option:__s_n
jmp 0x48b857
test esi, esi
je 0x48a517
test ecx, ecx
je 0x48a519
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp], str.too_many_arguments_to_.backup_n
add eax, 0x40
mov dword [esp + 4], eax
jmp 0x48b71d
mov esi, ecx
mov ecx, esi
inc eax
mov esi, edx
jmp 0x48a4c8
test esi, esi
jne 0x48a53c
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp], str.missing_FILENAME_argument_on_.backup_n
add eax, 0x40
mov dword [esp + 4], eax
jmp 0x48b71d
test ecx, ecx
mov eax, str.main
mov dword [esp], esi
cmove ecx, eax
lea eax, [ebp - 0x50c]
mov dword [ebp - 0x5ec], ecx
mov dword [esp + 4], eax
call fcn.00485e4f
test eax, eax
mov edi, eax
mov ecx, dword [ebp - 0x5ec]
jne 0x48d5b8
xor edx, edx
mov eax, ebx
mov dword [ebp - 0x5ec], ecx
call fcn.00489989
mov eax, dword [ebx]
mov ecx, dword [ebp - 0x5ec]
mov dword [esp + 4], str.main
mov dword [esp + 8], eax
mov eax, dword [ebp - 0x50c]
mov dword [esp + 0xc], ecx
mov dword [esp], eax
call fcn.00442bb6
test eax, eax
mov edx, eax
jne 0x48a5e6
mov eax, dword [ebp - 0x50c]
mov dword [esp], eax
call fcn.0042701d
mov dword [esp + 4], str.Error:__s_n
mov dword [esp + 8], eax
mov eax, dword [sym.imp.msvcrt.dll__iob]
add eax, 0x40
mov dword [esp], eax
call fcn.00487932
mov eax, dword [ebp - 0x50c]
mov dword [esp], eax
call fcn.0044f1c5
jmp 0x48b722
mov dword [esp], edx
mov dword [esp + 4], 0x64
mov dword [ebp - 0x5ec], edx
call fcn.00440dca
test eax, eax
mov esi, eax
mov edx, dword [ebp - 0x5ec]
je 0x48a5e6
mov dword [esp], edx
call fcn.0044f013
cmp esi, 0x65
je 0x48a644
mov eax, dword [ebp - 0x50c]
mov edi, 1
mov dword [esp], eax
call fcn.0042701d
mov dword [esp + 8], eax
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp + 4], str.Error:__s_n
add eax, 0x40
mov dword [esp], eax
call fcn.00487932
mov eax, dword [ebp - 0x50c]
mov dword [esp], eax
call fcn.0044f1c5
jmp 0x48ed96
cmp byte [ebp - 0x5f4], 0
je 0x48a776
cmp edi, 5
mov eax, 5
mov dword [esp + 4], str.bail
cmovle eax, edi
mov dword [esp], esi
mov dword [esp + 8], eax
call sub.msvcrt.dll_strncmp
test eax, eax
jne 0x48a6c9
cmp dword [ebp - 0x5ec], 2
jne 0x48a6a7
mov eax, dword [ebp - 0x5d0]
xor edi, edi
call fcn.004898c1
mov dword [0x4ab4a4], eax
jmp 0x48ed96
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp], str.Usage:_.bail_onoff_n
mov edi, 1
add eax, 0x40
mov dword [esp + 4], eax
call sub.msvcrt.dll_fputs
jmp 0x48ed96
cmp edi, 7
mov eax, 7
mov dword [esp + 4], str.binary
cmovle eax, edi
mov dword [esp], esi
mov dword [esp + 8], eax
call sub.msvcrt.dll_strncmp
test eax, eax
jne 0x48a746
cmp dword [ebp - 0x5ec], 2
jne 0x48a724
mov eax, dword [ebp - 0x5d0]
call fcn.004898c1
test eax, eax
mov eax, dword [ebx + 0x28]
je 0x48a718
mov edx, 1
xor edi, edi
call fcn.00486705
jmp 0x48ed96
call fcn.00487901
xor edi, edi
jmp 0x48ed96
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp], str.Usage:_.binary_onoff_n
mov edi, 1
add eax, 0x40
mov dword [esp + 4], eax
call sub.msvcrt.dll_fputs
jmp 0x48ed96
cmp edi, 0xb
mov eax, 0xb
mov dword [esp + 4], str.breakpoint
cmovle eax, edi
mov dword [esp], esi
mov dword [esp + 8], eax
call sub.msvcrt.dll_strncmp
test eax, eax
jne 0x48a776
inc dword [0x4ab46c]
xor edi, edi
jmp 0x48ed96
cmp dword [ebp - 0x5f0], 0x63
jne 0x48a8f4
cmp byte [ebp - 0x5f8], 0
je 0x48a8f4
cmp edi, 8
mov eax, 8
mov dword [esp + 4], str.changes
cmovle eax, edi
mov dword [esp], esi
mov dword [esp + 8], eax
call sub.msvcrt.dll_strncmp
test eax, eax
jne 0x48a7f3
cmp dword [ebp - 0x5ec], 2
jne 0x48a7d1
mov eax, dword [ebp - 0x5d0]
xor edi, edi
call fcn.004898c1
mov dword [ebx + 0x18], eax
jmp 0x48ed96
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp], str.Usage:_.changes_onoff_n
mov edi, 1
add eax, 0x40
mov dword [esp + 4], eax
call sub.msvcrt.dll_fputs
jmp 0x48ed96
cmp edi, 6
mov eax, 6
mov dword [esp + 4], str.check
cmovle eax, edi
mov dword [esp], esi
mov dword [esp + 8], eax
call sub.msvcrt.dll_strncmp
test eax, eax
jne 0x48a901
mov eax, ebx
call fcn.00486875
cmp dword [ebp - 0x5ec], 2
je 0x48a84e
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp], str.Usage:_.check_GLOB_PATTERN_n
add eax, 0x40
mov dword [esp + 4], eax
call sub.msvcrt.dll_fputs
mov dword [ebp - 0x5ec], 0
jmp 0x48a87d
xor edx, edx
mov eax, str.testcase_out.txt
call fcn.004868fc
test eax, eax
mov dword [ebp - 0x5ec], eax
mov esi, dword [sym.imp.msvcrt.dll__iob]
jne 0x48a884
add esi, 0x40
mov dword [esp], str.Error:_cannot_read_testcase_out.txt_n
mov dword [esp + 4], esi
call sub.msvcrt.dll_fputs
mov edi, 2
jmp 0x48a8e1
mov edi, dword [ebp - 0x5d0]
mov edx, dword [ebp - 0x5ec]
mov eax, edi
call fcn.00486304
test eax, eax
lea eax, [ebx + 0x54]
jne 0x48a8c5
mov ecx, dword [ebp - 0x5ec]
add esi, 0x40
mov dword [esp + 0xc], edi
mov dword [esp + 8], eax
mov dword [esp + 4], str.testcase__s_FAILED_n_Expected:___s__n______Got:___s__n
mov dword [esp], esi
mov dword [esp + 0x10], ecx
call fcn.00487932
jmp 0x48a87d
add esi, 0x20
mov dword [esp + 8], eax
mov dword [esp + 4], str.testcase__s_ok_n
mov dword [esp], esi
xor edi, edi
call fcn.00487932
inc dword [ebx + 0x48]
mov eax, dword [ebp - 0x5ec]
mov dword [esp], eax
call fcn.00409a90
jmp 0x48ed96
cmp dword [ebp - 0x5f0], 0x63
jne 0x48aadb
cmp edi, 6
mov eax, 6
mov dword [esp + 4], str.clone
cmovle eax, edi
mov dword [esp], esi
mov dword [esp + 8], eax
call sub.msvcrt.dll_strncmp
test eax, eax
jne 0x48aadb
cmp dword [ebp - 0x5ec], 2
jne 0x48aab9
mov esi, dword [ebp - 0x5d0]
mov dword [ebp - 0x50c], 0
mov dword [esp + 4], 0
mov dword [esp], esi
call dword [sym.imp.msvcrt.dll__access]
test eax, eax
jne 0x48a97d
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp + 8], esi
xor edi, edi
mov dword [esp + 4], str.File___s__already_exists._n
add eax, 0x40
mov dword [esp], eax
call fcn.00487932
jmp 0x48ed96
lea eax, [ebp - 0x50c]
mov dword [esp], esi
mov dword [esp + 4], eax
call fcn.00485e4f
test eax, eax
je 0x48a9c2
mov eax, dword [ebp - 0x50c]
mov dword [esp], eax
call fcn.0042701d
mov dword [esp + 8], eax
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp + 4], str.Cannot_create_output_database:__s_n
add eax, 0x40
mov dword [esp], eax
call fcn.00487932
jmp 0x48aaa4
mov eax, dword [ebx]
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
mov dword [esp + 4], str.PRAGMA_writable_schemaON_
mov dword [esp], eax
call fcn.0045ba70
mov eax, dword [ebp - 0x50c]
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
mov dword [esp + 4], str.BEGIN_EXCLUSIVE_
mov dword [esp], eax
call fcn.0045ba70
mov edx, dword [ebp - 0x50c]
mov ecx, str.typetable
mov eax, ebx
mov dword [esp], 0x488eb5
call fcn.00492c68
mov edx, dword [ebp - 0x50c]
mov ecx, str.type_table
mov eax, ebx
mov dword [esp], 0
call fcn.00492c68
mov eax, dword [ebp - 0x50c]
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
mov dword [esp + 4], str.COMMIT_
mov dword [esp], eax
call fcn.0045ba70
mov eax, dword [ebx]
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
mov dword [esp + 4], str.PRAGMA_writable_schemaOFF_
mov dword [esp], eax
call fcn.0045ba70
mov eax, dword [ebp - 0x50c]
xor edi, edi
mov dword [esp], eax
call fcn.0044f1c5
jmp 0x48ed96
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp], str.Usage:_.clone_FILENAME_n
mov edi, 1
add eax, 0x40
mov dword [esp + 4], eax
call sub.msvcrt.dll_fputs
jmp 0x48ed96
cmp edi, 1
setg byte [ebp - 0x5fc]
cmp dword [ebp - 0x5f0], 0x64
jne 0x48ac00
cmp byte [ebp - 0x5fc], 0
je 0x48ac00
cmp edi, 0xa
mov eax, 0xa
mov dword [esp + 4], str.databases
cmovle eax, edi
mov dword [esp], esi
mov dword [esp + 8], eax
call sub.msvcrt.dll_strncmp
test eax, eax
jne 0x48ac0d
xor edx, edx
mov eax, ebx
mov dword [ebp - 0x5dc], 0
lea edi, [ebp - 0x50c]
mov esi, ebx
call fcn.00489989
mov ecx, 0x13d
lea eax, [ebp - 0x49a]
rep movsd dword es:[edi], dword [esi]
mov dword [esp + 8], 0x4a73a6
mov dword [esp + 4], eax
lea esi, [ebp - 0x50c]
mov dword [esp], 0x14
mov dword [ebp - 0x4c8], 0
xor edi, edi
mov dword [ebp - 0x4d8], 2
mov dword [ebp - 0x4d4], 2
call fcn.00421a93
lea eax, [ebp - 0x5dc]
mov dword [esp + 0xc], esi
mov dword [esp + 8], fcn.00488a3e
mov dword [esp + 4], str.SELECT_name__file_FROM_pragma_database_list
mov dword [ebp - 0x4e8], 0
mov dword [esp + 0x10], eax
mov eax, dword [ebx]
mov dword [esp], eax
call fcn.0045ba70
mov eax, dword [ebp - 0x5dc]
test eax, eax
je 0x48ed96
mov dword [esp + 8], eax
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov edi, 1
mov dword [esp + 4], str.Error:__s_n
add eax, 0x40
mov dword [esp], eax
call fcn.00487932
mov eax, dword [ebp - 0x5dc]
mov dword [esp], eax
call fcn.00409a90
jmp 0x48ed96
cmp dword [ebp - 0x5f0], 0x64
jne 0x48b158
cmp edi, 7
mov eax, 7
mov dword [esp + 4], str.dbinfo
cmovle eax, edi
mov dword [esp], esi
mov dword [esp + 8], eax
call sub.msvcrt.dll_strncmp
test eax, eax
jne 0x48afa1
cmp dword [ebp - 0x5ec], 1
mov eax, ebx
mov edi, str.main
cmovne edi, dword [ebp - 0x5d0]
xor edx, edx
mov dword [ebp - 0x5e4], 0
call fcn.00489989
mov eax, dword [ebx]
test eax, eax
jne 0x48ac6a
mov edi, 1
jmp 0x48ed96
lea edx, [ebp - 0x5e4]
mov dword [esp + 8], 7
mov dword [esp + 4], edi
mov dword [esp], eax
mov dword [esp + 0xc], edx
call fcn.004059b4
mov eax, dword [ebp - 0x5e4]
test eax, eax
je 0x48ac60
mov edx, dword [eax]
test edx, edx
je 0x48ac60
mov edx, dword [edx + 8]
test edx, edx
je 0x48ac60
lea esi, [ebp - 0x50c]
mov dword [esp + 0xc], 0
mov dword [esp + 0x10], 0
mov dword [esp + 8], 0x64
mov dword [esp], eax
mov dword [esp + 4], esi
call edx
test eax, eax
je 0x48acec
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp], str.unable_to_read_database_header_n
mov edi, 1
add eax, 0x40
mov dword [esp + 4], eax
call sub.msvcrt.dll_fputs
jmp 0x48ed96
movzx eax, byte [ebp - 0x4fc]
movzx edx, byte [ebp - 0x4fb]
mov dword [esp + 8], str.database_page_size:
mov dword [esp + 4], str.__20s__d_n
shl eax, 8
add eax, edx
mov edx, 0x10000
cmp eax, 1
cmove eax, edx
mov dword [esp + 0xc], eax
mov eax, dword [ebx + 0x28]
mov dword [esp], eax
call fcn.00487932
movzx eax, byte [ebp - 0x4fa]
mov dword [esp + 8], str.write_format:
mov dword [esp + 4], str.__20s__d_n
mov dword [esp + 0xc], eax
mov eax, dword [ebx + 0x28]
mov dword [esp], eax
call fcn.00487932
movzx eax, byte [ebp - 0x4f9]
mov dword [esp + 8], str.read_format:
mov dword [esp + 4], str.__20s__d_n
mov dword [esp + 0xc], eax
mov eax, dword [ebx + 0x28]
mov dword [esp], eax
call fcn.00487932
movzx eax, byte [ebp - 0x4f8]
mov dword [esp + 8], str.reserved_bytes:
mov dword [esp + 4], str.__20s__d_n
mov dword [esp + 0xc], eax
mov eax, dword [ebx + 0x28]
mov dword [esp], eax
call fcn.00487932
mov dword [ebp - str.file_change_counter:], 0x4a9580
mov dword [ebp - 0x5f4], esi
mov eax, dword [ebp - 0x5ec]
mov ecx, dword [ebp - 0x5f4]
mov eax, dword [eax + 4]
add ecx, eax
mov dword [ebp - 0x5f0], eax
movzx edx, byte [ecx]
shl edx, 0x18
mov esi, edx
movzx edx, byte [ecx + 1]
mov eax, edx
shl eax, 0x10
lea edx, [esi + eax]
movzx eax, byte [ecx + 2]
movzx esi, byte [ecx + 3]
shl eax, 8
add eax, edx
add esi, eax
mov eax, dword [ebp - 0x5ec]
mov dword [esp + 0xc], esi
mov eax, dword [eax]
mov dword [esp + 4], str.__20s__u
mov dword [esp + 8], eax
mov eax, dword [ebx + 0x28]
mov dword [esp], eax
call fcn.00487932
cmp dword [ebp - 0x5f0], 0x38
jne 0x48ae4d
cmp esi, 1
mov eax, dword [ebx + 0x28]
jne 0x48ae26
mov dword [esp + 4], eax
mov dword [esp], str.__utf8_
jmp 0x48ae48
cmp esi, 2
jne 0x48ae38
mov dword [esp + 4], eax
mov dword [esp], str.__utf16le_
jmp 0x48ae48
cmp esi, 3
jne 0x48ae4d
mov dword [esp + 4], eax
mov dword [esp], str.__utf16be_
call sub.msvcrt.dll_fputs
mov eax, dword [ebx + 0x28]
mov dword [esp], 0xa
mov dword [esp + 4], eax
call sub.msvcrt.dll_fputc
add dword [ebp - 0x5ec], 8
mov eax, str.CREATE_INDEX
cmp eax, dword [ebp - 0x5ec]
jne 0x48adab
test edi, edi
jne 0x48ae8a
mov dword [esp], str.main.sqlite_master
call fcn.00433b08
jmp 0x48aebf
mov dword [esp + 4], str.temp
mov dword [esp], edi
call sub.msvcrt.dll_strcmp
test eax, eax
jne 0x48aeaf
mov dword [esp + 4], str.sqlite_temp_master
mov dword [esp], 0x4a6a55
jmp 0x48aeba
mov dword [esp + 4], edi
mov dword [esp], str.__w_.sqlite_master
call fcn.00433b08
mov esi, eax
mov edi, 0x4a9460
mov dword [esp + 4], esi
mov eax, dword [edi + 4]
mov dword [esp], eax
call fcn.00433b08
mov dword [ebp - 0x5ec], eax
lea eax, [ebp - 0x5dc]
mov dword [esp + 0x10], 0
mov dword [esp + 8], 0xffffffff
mov dword [esp + 0xc], eax
mov eax, dword [ebp - 0x5ec]
mov dword [esp + 4], eax
mov eax, dword [ebx]
mov dword [esp], eax
call fcn.0046d028
mov eax, dword [ebp - 0x5dc]
test eax, eax
jne 0x48af17
xor edx, edx
jmp 0x48af3c
mov dword [esp], eax
call fcn.0045a992
cmp eax, 0x64
jne 0x48af13
mov eax, dword [ebp - 0x5dc]
mov dword [esp + 4], 0
mov dword [esp], eax
call fcn.0041610b
mov edx, eax
mov eax, dword [ebp - 0x5dc]
mov dword [ebp - 0x5f0], edx
add edi, 8
mov dword [esp], eax
call fcn.004500a8
mov eax, dword [ebp - 0x5ec]
mov dword [esp], eax
call fcn.00409a90
mov edx, dword [ebp - 0x5f0]
mov dword [esp + 0xc], edx
mov eax, dword [edi - 8]
mov dword [esp + 4], str.__20s__d_n
mov dword [esp + 8], eax
mov eax, dword [ebx + 0x28]
mov dword [esp], eax
call fcn.00487932
mov eax, str.file_change_counter:
cmp eax, edi
jne 0x48aec6
mov dword [esp], esi
xor edi, edi
call fcn.00409a90
jmp 0x48ed96
cmp edi, 5
mov eax, 5
mov dword [esp + 4], str.dump
cmovle eax, edi
mov dword [esp], esi
mov dword [esp + 8], eax
call sub.msvcrt.dll_strncmp
test eax, eax
jne 0x48b1c8
xor edx, edx
mov eax, ebx
call fcn.00489989
mov eax, dword [ebp - 0x5ec]
dec eax
cmp eax, 1
jbe 0x48afff
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp], str.Usage:_.dump__LIKE_PATTERN__n
mov edi, 1
add eax, 0x40
mov dword [esp + 4], eax
call sub.msvcrt.dll_fputs
jmp 0x48ed96
mov eax, dword [ebx + 0x28]
mov dword [esp], str.PRAGMA_foreign_keysOFF__n
mov dword [esp + 4], eax
call sub.msvcrt.dll_fputs
mov eax, dword [ebx + 0x28]
mov dword [esp], str.BEGIN_TRANSACTION__n
mov dword [esp + 4], eax
call sub.msvcrt.dll_fputs
mov eax, dword [ebx]
mov dword [ebx + 0x40], 0
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
mov dword [esp + 4], str.SAVEPOINT_dump__PRAGMA_writable_schemaON
mov dword [esp], eax
call fcn.0045ba70
cmp dword [ebp - 0x5ec], 1
mov dword [ebx + 0x30], 0
jne 0x48b08e
mov edx, str.SELECT_name__type__sql_FROM_sqlite_master_WHERE_sql_NOT_NULL_AND_typetable_AND_name_sqlite_sequence
mov eax, ebx
call fcn.004892f4
mov edx, str.SELECT_name__type__sql_FROM_sqlite_master_WHERE_namesqlite_sequence
mov eax, ebx
call fcn.004892f4
xor ecx, ecx
mov edx, str.SELECT_sql_FROM_sqlite_master_WHERE_sql_NOT_NULL_AND_type_IN__index_trigger_view_
mov eax, ebx
call fcn.00489412
jmp 0x48b0bd
mov eax, dword [ebp - 0x5d0]
mov edx, str.SELECT_name__type__sql_FROM_sqlite_master_WHERE_tbl_name_LIKE_shellstatic___AND_typetable__AND_sql_NOT_NULL
mov dword [0x4ab470], eax
mov eax, ebx
call fcn.004892f4
xor ecx, ecx
mov edx, str.SELECT_sql_FROM_sqlite_master_WHERE_sql_NOT_NULL__AND_type_IN__index_trigger_view___AND_tbl_name_LIKE_shellstatic__
mov eax, ebx
call fcn.00489412
mov dword [0x4ab470], 0
cmp dword [ebx + 0x40], 0
je 0x48b0dd
mov eax, dword [ebx + 0x28]
mov dword [esp], str.PRAGMA_writable_schemaOFF__n
mov dword [esp + 4], eax
call sub.msvcrt.dll_fputs
mov dword [ebx + 0x40], 0
mov eax, dword [ebx]
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
mov dword [esp + 4], str.PRAGMA_writable_schemaOFF_
mov dword [esp], eax
call fcn.0045ba70
mov eax, dword [ebx]
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
mov dword [esp + 4], str.RELEASE_dump_
mov dword [esp], eax
call fcn.0045ba70
cmp dword [ebx + 0x30], 0
mov edx, str.ROLLBACK_____due_to_errors_n
mov eax, str.COMMIT__n
cmovne eax, edx
xor edi, edi
mov dword [esp + 4], eax
mov eax, dword [ebx + 0x28]
mov dword [esp], eax
call sub.msvcrt.dll_fprintf
jmp 0x48ed96
cmp dword [ebp - 0x5f0], 0x65
jne 0x48b364
cmp edi, 5
mov eax, 5
mov dword [esp + 4], str.echo
cmovle eax, edi
mov dword [esp], esi
mov dword [esp + 8], eax
call sub.msvcrt.dll_strncmp
test eax, eax
jne 0x48b1d5
cmp dword [ebp - 0x5ec], 2
jne 0x48b1a6
mov eax, dword [ebp - 0x5d0]
xor edi, edi
call fcn.004898c1
mov dword [ebx + 4], eax
jmp 0x48ed96
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp], str.Usage:_.echo_onoff_n
mov edi, 1
add eax, 0x40
mov dword [esp + 4], eax
call sub.msvcrt.dll_fputs
jmp 0x48ed96
cmp dword [ebp - 0x5f0], 0x65
jne 0x48b364
cmp edi, 4
mov eax, 4
mov dword [esp + 4], 0x4a775e
cmovle eax, edi
mov dword [esp], esi
mov dword [esp + 8], eax
call sub.msvcrt.dll_strncmp
test eax, eax
jne 0x48b25c
cmp dword [ebp - 0x5ec], 2
jne 0x48b23a
mov esi, dword [ebp - 0x5d0]
mov dword [esp + 4], str.full
mov dword [esp], esi
call sub.msvcrt.dll_strcmp
test eax, eax
jne 0x48b229
mov dword [ebx + 0xc], 2
xor edi, edi
jmp 0x48ed96
mov eax, esi
xor edi, edi
call fcn.004898c1
mov dword [ebx + 0xc], eax
jmp 0x48ed96
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp], str.Usage:_.eqp_onofffull_n
mov edi, 1
add eax, 0x40
mov dword [esp + 4], eax
call sub.msvcrt.dll_fputs
jmp 0x48ed96
cmp edi, 5
mov eax, 5
mov dword [esp + 4], str.exit
cmovle eax, edi
mov dword [esp], esi
mov dword [esp + 8], eax
call sub.msvcrt.dll_strncmp
test eax, eax
jne 0x48b2a9
cmp dword [ebp - 0x5ec], 1
jne 0x48b292
mov edi, 2
jmp 0x48ed96
mov eax, dword [ebp - 0x5d0]
call fcn.0048673a
test eax, eax
je 0x48b288
mov dword [esp], eax
jmp 0x48cdc8
cmp edi, 8
mov eax, 8
mov dword [esp + 4], str.explain
cmovle eax, edi
mov dword [esp], esi
mov dword [esp + 8], eax
call sub.msvcrt.dll_strncmp
test eax, eax
jne 0x48c20f
cmp dword [ebp - 0x5ec], 1
jne 0x48b2fd
mov eax, dword [ebx + 0x34]
cmp eax, 9
je 0x48edbf
mov dword [ebx + 0x3c], eax
mov dword [ebx + 0x34], 9
xor edi, edi
mov dword [ebx + 8], 0
jmp 0x48ed96
mov esi, dword [ebp - 0x5d0]
mov dword [esp + 4], str.auto
mov dword [esp], esi
call sub.msvcrt.dll_strcmp
test eax, eax
je 0x48b34a
mov eax, esi
call fcn.004898c1
cmp eax, 1
je 0x48b2d9
test eax, eax
jne 0x48b341
cmp dword [ebx + 0x34], 9
jne 0x48b333
mov eax, dword [ebx + 0x3c]
mov dword [ebx + 0x34], eax
mov dword [ebx + 8], 0
xor edi, edi
jmp 0x48ed96
cmp eax, 0x63
jne 0x48edbf
cmp dword [ebx + 0x34], 9
jne 0x48b356
mov eax, dword [ebx + 0x3c]
mov dword [ebx + 0x34], eax
mov dword [ebx + 8], 1
xor edi, edi
jmp 0x48ed96
cmp dword [ebp - 0x5f0], 0x66
jne 0x48b59f
cmp edi, 0xb
mov eax, 0xb
mov dword [esp + 4], str.fullschema
cmovle eax, edi
mov dword [esp], esi
mov dword [esp + 8], eax
call sub.msvcrt.dll_strncmp
test eax, eax
jne 0x48c20f
cmp dword [ebp - 0x5ec], 2
lea edi, [ebp - 0x50c]
mov ecx, 0x13d
mov esi, ebx
mov dword [ebp - 0x5e4], 0
rep movsd dword es:[edi], dword [esi]
mov dword [ebp - 0x4c8], 0
mov dword [ebp - 0x4d8], 3
mov dword [ebp - 0x4d4], 3
jne 0x48b402
mov eax, dword [ebp - 0x5d0]
mov edx, str.indent
call fcn.00492c30
test eax, eax
je 0x48b40b
mov dword [ebp - 0x4d8], 0xb
mov dword [ebp - 0x4d4], 0xb
jmp 0x48b42d
cmp dword [ebp - 0x5ec], 1
je 0x48b42d
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp], str.Usage:_.fullschema____indent__n
mov edi, 1
add eax, 0x40
mov dword [esp + 4], eax
call sub.msvcrt.dll_fputs
jmp 0x48ed96
xor edx, edx
mov eax, ebx
lea esi, [ebp - 0x5e4]
call fcn.00489989
lea eax, [ebp - 0x50c]
mov dword [esp + 0x10], esi
mov dword [esp + 8], fcn.00488a3e
mov dword [esp + 4], 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
mov dword [esp + 0xc], eax
mov eax, dword [ebx]
mov dword [esp], eax
call fcn.0045ba70
test eax, eax
mov edi, eax
jne 0x48b4c3
lea eax, [ebp - 0x5dc]
mov dword [esp + 0x10], 0
mov dword [esp + 8], 0xffffffff
mov dword [esp + 4], str.SELECT_rowid_FROM_sqlite_master_WHERE_name_GLOB_sqlite_stat_134_
mov dword [esp + 0xc], eax
mov eax, dword [ebx]
mov dword [esp], eax
call fcn.0046d028
mov edi, eax
mov eax, dword [ebp - 0x5dc]
mov dword [esp], eax
call fcn.0045a992
mov dword [ebp - 0x5ec], eax
mov eax, dword [ebp - 0x5dc]
mov dword [esp], eax
call fcn.004500a8
cmp dword [ebp - 0x5ec], 0x64
je 0x48b4db
mov eax, dword [ebx + 0x28]
mov dword [esp], str.__No_STAT_tables_available___n
mov dword [esp + 4], eax
call sub.msvcrt.dll_fputs
jmp 0x48ed96
mov eax, dword [ebx + 0x28]
mov dword [esp], str.ANALYZE_sqlite_master__n
mov dword [esp + 4], eax
call sub.msvcrt.dll_fputs
lea eax, [ebp - 0x50c]
mov dword [esp + 0x10], esi
mov dword [esp + 8], fcn.00488a3e
mov dword [esp + 4], str.SELECT_ANALYZE_sqlite_master
mov dword [esp + 0xc], eax
mov eax, dword [ebx]
mov dword [esp], eax
call fcn.0045ba70
mov eax, dword [ebx]
lea ecx, [ebp - 0x50c]
mov dword [esp], esi
mov edx, str.SELECT__FROM_sqlite_stat1
mov dword [ebp - 0x4d8], 5
mov dword [ebp - 0x4d4], 5
mov dword [ebp - 0x4bc], str.sqlite_stat1
call fcn.00489afc
mov eax, dword [ebx]
lea ecx, [ebp - 0x50c]
mov dword [esp], esi
mov edx, str.SELECT__FROM_sqlite_stat3
mov dword [ebp - 0x4bc], str.sqlite_stat3
call fcn.00489afc
mov eax, dword [ebx]
lea ecx, [ebp - 0x50c]
mov dword [esp], esi
mov edx, str.SELECT__FROM_sqlite_stat4
mov dword [ebp - 0x4bc], str.sqlite_stat4
call fcn.00489afc
mov eax, dword [ebx + 0x28]
mov dword [esp], str.ANALYZE_sqlite_master__n
mov dword [esp + 4], eax
call sub.msvcrt.dll_fputs
jmp 0x48ed96
cmp dword [ebp - 0x5f0], 0x68
jne 0x48b658
cmp edi, 8
mov eax, 8
mov dword [esp + 4], str.headers
cmovle eax, edi
mov dword [esp], esi
mov dword [esp + 8], eax
call sub.msvcrt.dll_strncmp
test eax, eax
jne 0x48b60f
cmp dword [ebp - 0x5ec], 2
jne 0x48b5ed
mov eax, dword [ebp - 0x5d0]
xor edi, edi
call fcn.004898c1
mov dword [ebx + 0x44], eax
jmp 0x48ed96
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp], str.Usage:_.headers_onoff_n
mov edi, 1
add eax, 0x40
mov dword [esp + 4], eax
call sub.msvcrt.dll_fputs
jmp 0x48ed96
cmp edi, 5
mov eax, 5
mov dword [esp + 4], str.help
cmovle eax, edi
mov dword [esp], esi
mov dword [esp + 8], eax
call sub.msvcrt.dll_strncmp
test eax, eax
jne 0x48c20f
mov eax, dword [ebx + 0x28]
mov dword [esp + 8], str..auth_ONOFF___________Show_authorizer_callbacks_n.backup__DB__FILE______Backup_DB__default__main___to_FILE_n.bail_onoff___________Stop_after_hitting_an_error.__Default_OFF_n.binary_onoff_________Turn_binary_output_on_or_off.__Default_OFF_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.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.exit__________________Exit_this_program_n.explain__onoffauto__Turn_EXPLAIN_output_mode_on_or_off_or_to_automatic_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_.separator_strings_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_FILENAME_________Output_for_the_next_SQL_command_only_to_FILENAME_n.open____new___FILE____Close_existing_database_and_reopen_FILE_n_________________________The___new_starts_with_an_empty_file_n.output__FILENAME______Send_output_to_FILENAME_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.separator_COL__ROW____Change_the_column_separator_and_optionally_the_row_n_________________________separator_for_both_the_output_mode_and_.import_n.shell_CMD_ARGS..._____Run_CMD_ARGS..._in_a_system_shell_n.show__________________Show_the_current_values_for_various_settings_n.stats__onoff_________Show_stats_or_turn_stats_on_or_off_n.system_CMD_ARGS...____Run_CMD_ARGS..._in_a_system_shell_n.tables__TABLE_________List_names_of_tables_n_________________________If_TABLE_specified__only_list_tables_matching_n_________________________LIKE_pattern_TABLE._n.testcase_NAME_________Begin_redirecting_output_to_testcase_out.txt_n.timeout_MS____________Try_opening_locked_tables_for_MS_milliseconds_n.timer_onoff__________Turn_SQL_timer_on_or_off_n.trace_FILEoff
xor edi, edi
mov dword [esp + 4], 0x4a6a55
mov dword [esp], eax
call fcn.00487932
jmp 0x48ed96
cmp dword [ebp - 0x5f0], 0x69
jne 0x48c20f
cmp edi, 7
mov eax, 7
mov dword [esp + 4], str.import
cmovle eax, edi
mov dword [esp], esi
mov dword [esp + 8], eax
call sub.msvcrt.dll_strncmp
test eax, eax
mov dword [ebp - 0x5f4], eax
jne 0x48beb7
cmp dword [ebp - 0x5ec], 3
mov dword [ebp - 0x5dc], 0
je 0x48b6c4
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp], str.Usage:_.import_FILE_TABLE_n
xor edi, edi
add eax, 0x40
mov dword [esp + 4], eax
call sub.msvcrt.dll_fputs
jmp 0x48ed96
mov eax, dword [ebp - 0x5cc]
lea edx, [ebp - 0x50c]
mov ecx, 9
mov esi, dword [ebp - 0x5d0]
mov dword [0x4ab4a0], 0
mov edi, edx
xor edx, edx
mov dword [ebp - 0x5f8], eax
mov eax, dword [ebp - 0x5f4]
rep stosd dword es:[edi], eax
mov eax, ebx
call fcn.00489989
lea eax, [ebx + 0x72]
call fcn.00486020
test eax, eax
jne 0x48b731
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp], str.Error:_non_null_column_separator_required_for_import_n
add eax, 0x40
mov dword [esp + 4], eax
call sub.msvcrt.dll_fputs
mov dword [ebp - 0x5f4], 1
jmp 0x48eee8
dec eax
jle 0x48b749
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp], str.Error:_multi_character_column_separators_not_allowed_for_import_n
add eax, 0x40
mov dword [esp + 4], eax
jmp 0x48b71d
lea edi, [ebx + 0x86]
mov eax, edi
call fcn.00486020
test eax, eax
jne 0x48b76f
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp], str.Error:_non_null_row_separator_required_for_import_n
add eax, 0x40
mov dword [esp + 4], eax
jmp 0x48b71d
cmp eax, 2
jne 0x48b7c2
cmp dword [ebx + 0x34], 8
je 0x48b78f
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp], str.Error:_multi_character_row_separators_not_allowed_for_import_n
add eax, 0x40
mov dword [esp + 4], eax
jmp 0x48b71d
mov dword [esp + 4], 0x4a7ae5
mov dword [esp], edi
call sub.msvcrt.dll_strcmp
test eax, eax
jne 0x48b77a
mov dword [esp + 8], 0x4a6a67
mov dword [esp + 4], edi
mov dword [esp], 0x14
call fcn.00421a93
mov eax, edi
call fcn.00486020
dec eax
jg 0x48b77a
cmp byte [esi], 0x7c
mov dword [ebp - 0x50c], esi
mov dword [ebp - 0x4f8], 1
jne 0x48b80b
lea eax, [esi + 1]
mov dword [esp + 4], 0x4a7ae8
mov dword [esp], eax
call dword [sym.imp.msvcrt.dll__popen]
mov dword [ebp - 0x508], eax
mov eax, dword [sym.imp.msvcrt.dll__pclose]
mov dword [ebp - 0x50c], str._pipe_
mov dword [ebp - 0x5f0], eax
jmp 0x48b82b
mov dword [esp + 4], 0x4a6507
mov dword [esp], esi
call sub.msvcrt.dll_fopen
mov dword [ebp - 0x5f0], sub.msvcrt.dll_fclose
mov dword [ebp - 0x508], eax
cmp dword [ebx + 0x34], 0xa
mov eax, 0x4870c5
mov edx, 0x488c69
cmovne eax, edx
cmp dword [ebp - 0x508], 0
mov dword [ebp - 0x5fc], eax
jne 0x48b86c
mov dword [esp + 8], esi
mov dword [esp + 4], str.Error:_cannot_open___s__n
mov eax, dword [sym.imp.msvcrt.dll__iob]
add eax, 0x40
mov dword [esp], eax
call fcn.00487932
jmp 0x48b722
movsx eax, byte [ebx + 0x72]
mov dword [esp], str.SELECT__FROM__s
mov dword [ebp - 0x4f0], eax
movsx eax, byte [ebx + 0x86]
mov dword [ebp - 0x4ec], eax
mov eax, dword [ebp - 0x5f8]
mov dword [esp + 4], eax
call fcn.00433b08
test eax, eax
mov esi, eax
je 0x48bb3c
call fcn.00486020
mov dword [ebp - 0x600], eax
lea eax, [ebp - 0x5dc]
lea edi, [ebp - 0x50c]
mov dword [esp + 0x10], 0
mov dword [esp + 8], 0xffffffff
mov dword [esp + 0xc], eax
mov eax, dword [ebx]
mov dword [esp + 4], esi
mov dword [esp], eax
call fcn.0046d028
xor edx, edx
mov dword [ebp - 0x5ec], eax
mov eax, edi
call fcn.0048704a
cmp dword [ebp - 0x5ec], 0
je 0x48ba94
mov eax, dword [ebx]
mov dword [esp], eax
call fcn.0042701d
mov dword [esp], str.no_such_table:_
mov dword [esp + 4], eax
call fcn.004044e8
test eax, eax
jne 0x48ba94
mov eax, dword [ebp - 0x5f8]
mov dword [esp], str.CREATE_TABLE__s
mov dword [esp + 4], eax
call fcn.00433b08
mov cl, 0x28
mov edx, eax
mov byte [ebp - 0x604], cl
mov dword [ebp - 0x5ec], edx
mov dword [esp], edi
mov eax, dword [ebp - 0x5fc]
call eax
test eax, eax
mov edx, dword [ebp - 0x5ec]
mov cl, byte [ebp - 0x604]
je 0x48b990
mov eax, dword [ebp - 0x504]
mov dword [esp + 4], edx
mov dword [esp], str._z_c_n____w__TEXT
mov dword [esp + 0xc], eax
movsx eax, cl
mov dword [esp + 8], eax
call fcn.00433b08
mov edx, eax
mov eax, dword [ebp - 0x4f0]
cmp dword [ebp - 0x4f4], eax
mov cl, 0x2c
je 0x48b934
jmp 0x48b9d3
cmp cl, 0x28
jne 0x48b9d3
mov dword [esp], edx
call fcn.00409a90
mov eax, dword [ebp - 0x504]
mov dword [esp], eax
call fcn.00409a90
mov eax, dword [ebp - 0x508]
mov dword [esp], eax
mov eax, dword [ebp - 0x5f0]
call eax
mov eax, dword [ebp - 0x50c]
mov dword [esp + 4], str._s:_empty_file_n
mov dword [esp + 8], eax
jmp 0x48b857
mov dword [esp + 4], edx
mov dword [esp], str._z_n_
call fcn.00433b08
mov dword [esp + 4], eax
mov dword [ebp - 0x5ec], eax
mov eax, dword [ebx]
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
mov dword [esp], eax
call fcn.0045ba70
mov edx, dword [ebp - 0x5ec]
mov edi, eax
mov dword [esp], edx
call fcn.00409a90
test edi, edi
je 0x48ba66
mov eax, dword [ebx]
mov dword [esp], eax
call fcn.0042701d
mov dword [esp + 0xc], eax
mov eax, dword [ebp - 0x5f8]
mov dword [esp + 4], str.CREATE_TABLE__s_...__failed:__s_n
mov dword [esp + 8], eax
mov eax, dword [sym.imp.msvcrt.dll__iob]
add eax, 0x40
mov dword [esp], eax
call fcn.00487932
mov eax, dword [ebp - 0x504]
mov dword [esp], eax
call fcn.00409a90
jmp 0x48bc1e
lea eax, [ebp - 0x5dc]
mov dword [esp + 0x10], 0
mov dword [esp + 8], 0xffffffff
mov dword [esp + 4], esi
mov dword [esp + 0xc], eax
mov eax, dword [ebx]
mov dword [esp], eax
call fcn.0046d028
mov dword [ebp - 0x5ec], eax
mov dword [esp], esi
call fcn.00409a90
cmp dword [ebp - 0x5ec], 0
mov eax, dword [ebp - 0x5dc]
je 0x48bae2
test eax, eax
je 0x48bab7
mov dword [esp], eax
call fcn.004500a8
mov eax, dword [ebx]
mov dword [esp], eax
call fcn.0042701d
mov dword [esp + 8], eax
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp + 4], str.Error:__s_n
add eax, 0x40
mov dword [esp], eax
call fcn.00487932
jmp 0x48bc1e
mov dword [esp], eax
call fcn.0040368d
mov dword [ebp - 0x5ec], eax
mov eax, dword [ebp - 0x5dc]
mov dword [esp], eax
call fcn.004500a8
cmp dword [ebp - 0x5ec], 0
mov dword [ebp - 0x5dc], 0
je 0x48eee8
mov eax, dword [ebp - 0x600]
mov ecx, dword [ebp - 0x5ec]
lea eax, [eax + ecx + 0xa]
add eax, eax
mov dword [esp], eax
sar eax, 0x1f
mov dword [esp + 4], eax
call fcn.004196dc
test eax, eax
mov esi, eax
jne 0x48bb59
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp], str.Error:_out_of_memory_n
add eax, 0x40
mov dword [esp + 4], eax
call sub.msvcrt.dll_fputs
jmp 0x48bc1e
mov eax, dword [ebp - 0x5f8]
mov dword [esp + 8], str.INSERT_INTO___w__VALUES__
mov dword [esp + 4], esi
mov dword [esp + 0xc], eax
mov eax, dword [ebp - 0x600]
add eax, 0x14
mov dword [esp], eax
call fcn.00421a93
mov eax, esi
call fcn.00486020
mov edx, 1
add eax, esi
mov ecx, eax
sub ecx, esi
cmp edx, dword [ebp - 0x5ec]
jge 0x48bba7
mov byte [eax], 0x2c
mov byte [eax + 1], 0x3f
inc edx
add eax, 2
jmp 0x48bb8e
lea eax, [ebp - 0x5dc]
mov byte [esi + ecx], 0x29
mov byte [esi + ecx + 1], 0
mov dword [esp + 0x10], 0
mov dword [esp + 8], 0xffffffff
mov dword [esp + 0xc], eax
mov eax, dword [ebx]
mov dword [esp + 4], esi
mov dword [esp], eax
call fcn.0046d028
mov dword [esp], esi
mov edi, eax
call fcn.00409a90
mov eax, dword [ebx]
test edi, edi
mov dword [esp], eax
je 0x48bc34
call fcn.0042701d
mov dword [esp + 8], eax
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp + 4], str.Error:__s_n
add eax, 0x40
mov dword [esp], eax
call fcn.00487932
mov eax, dword [ebp - 0x5dc]
test eax, eax
je 0x48bc1e
mov dword [esp], eax
call fcn.004500a8
mov eax, dword [ebp - 0x508]
mov dword [esp], eax
mov eax, dword [ebp - 0x5f0]
call eax
jmp 0x48b722
call fcn.00405963
test eax, eax
mov dword [ebp - 0x5f8], eax
je 0x48bc6d
mov eax, dword [ebx]
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
mov dword [esp + 4], str.BEGIN
mov dword [esp], eax
call fcn.0045ba70
mov eax, dword [ebp - 0x5ec]
dec eax
mov dword [ebp - 0x600], eax
mov eax, dword [ebp - 0x4f8]
xor esi, esi
mov dword [ebp - 0x5f4], eax
cmp esi, dword [ebp - 0x5ec]
jge 0x48bd75
lea eax, [ebp - 0x50c]
mov dword [esp], eax
mov eax, dword [ebp - 0x5fc]
call eax
test eax, eax
jne 0x48bcb1
test esi, esi
je 0x48bd73
cmp dword [ebx + 0x34], 0xa
jne 0x48bcc8
test eax, eax
je 0x48bcc0
cmp byte [eax], 0
jne 0x48bcc8
test esi, esi
je 0x48bd75
mov dword [esp + 8], eax
mov eax, dword [ebp - 0x5dc]
lea ecx, [esi + 1]
mov dword [esp + 0x10], 0xffffffff
mov dword [esp + 0xc], 0xffffffff
mov dword [esp + 4], ecx
mov dword [ebp - 0x604], ecx
mov dword [esp], eax
call fcn.004272a3
cmp esi, dword [ebp - 0x600]
jge 0x48bd6d
mov eax, dword [ebp - 0x4f0]
cmp dword [ebp - 0x4f4], eax
je 0x48bd6d
mov eax, dword [ebp - 0x5ec]
mov ecx, dword [ebp - 0x604]
add esi, 2
mov dword [esp + 4], str._s:_d:_expected__d_columns_but_found__d___filling_the_rest_with_NULL_n
mov dword [esp + 0x10], eax
mov eax, dword [ebp - 0x5f4]
mov dword [esp + 0x14], ecx
mov dword [esp + 0xc], eax
mov eax, dword [ebp - 0x50c]
mov dword [esp + 8], eax
mov eax, dword [sym.imp.msvcrt.dll__iob]
add eax, 0x40
mov dword [esp], eax
call fcn.00487932
cmp esi, dword [ebp - 0x5ec]
jg 0x48bd6d
mov eax, dword [ebp - 0x5dc]
mov dword [esp + 4], esi
inc esi
mov dword [esp], eax
call fcn.0042741b
jmp 0x48bd50
inc esi
jmp 0x48bc88
xor esi, esi
mov eax, dword [ebp - 0x4f0]
cmp dword [ebp - 0x4f4], eax
jne 0x48bddd
lea eax, [ebp - 0x50c]
inc esi
mov dword [esp], eax
mov eax, dword [ebp - 0x5fc]
call eax
mov eax, dword [ebp - 0x4f0]
cmp dword [ebp - 0x4f4], eax
je 0x48bd83
mov eax, dword [ebp - 0x5ec]
mov dword [esp + 0x14], esi
mov dword [esp + 4], str._s:_d:_expected__d_columns_but_found__d___extras_ignored_n
mov dword [esp + 0x10], eax
mov eax, dword [ebp - 0x5f4]
mov dword [esp + 0xc], eax
mov eax, dword [ebp - 0x50c]
mov dword [esp + 8], eax
mov eax, dword [sym.imp.msvcrt.dll__iob]
add eax, 0x40
mov dword [esp], eax
call fcn.00487932
cmp esi, dword [ebp - 0x5ec]
jl 0x48be41
mov eax, dword [ebp - 0x5dc]
mov dword [esp], eax
call fcn.0045a992
mov eax, dword [ebp - 0x5dc]
mov dword [esp], eax
call fcn.00452944
test eax, eax
mov edi, eax
je 0x48be41
mov eax, dword [ebx]
mov dword [esp], eax
call fcn.0042701d
mov dword [esp + 0x10], eax
mov eax, dword [ebp - 0x5f4]
mov dword [esp + 4], str._s:_d:_INSERT_failed:__s_n
mov dword [esp + 0xc], eax
mov eax, dword [ebp - 0x50c]
mov dword [esp + 8], eax
mov eax, dword [sym.imp.msvcrt.dll__iob]
add eax, 0x40
mov dword [esp], eax
call fcn.00487932
cmp dword [ebp - 0x4f4], 0xffffffff
jne 0x48bc7a
mov eax, dword [ebp - 0x508]
mov dword [esp], eax
mov eax, dword [ebp - 0x5f0]
call eax
mov eax, dword [ebp - 0x504]
mov dword [esp], eax
call fcn.00409a90
mov eax, dword [ebp - 0x5dc]
mov dword [esp], eax
call fcn.004500a8
cmp dword [ebp - 0x5f8], 0
je 0x48ed96
mov eax, dword [ebx]
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
mov dword [esp + 4], str.COMMIT
mov dword [esp], eax
call fcn.0045ba70
jmp 0x48ed96
cmp edi, 9
mov eax, 9
mov dword [esp + 4], str.imposter
cmovle eax, edi
mov dword [esp], esi
mov dword [esp + 8], eax
call sub.msvcrt.dll_strncmp
test eax, eax
jne 0x48c20f
cmp dword [ebp - 0x5ec], 3
je 0x48bf04
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp + 4], str.Usage:_.imposter_INDEX_IMPOSTER_n
add eax, 0x40
mov dword [esp], eax
call fcn.00487932
jmp 0x48c205
xor edx, edx
mov eax, ebx
lea edi, [ebp - 0x5dc]
call fcn.00489989
mov esi, dword [ebp - 0x5d0]
mov dword [esp], str.SELECT_rootpage_FROM_sqlite_master_WHERE_name_q_AND_typeindex
mov dword [esp + 4], esi
call fcn.00433b08
mov dword [esp + 4], eax
mov dword [ebp - 0x5ec], eax
mov eax, dword [ebx]
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], edi
mov dword [esp + 8], 0xffffffff
mov dword [esp], eax
call fcn.0046d028
mov edx, dword [ebp - 0x5ec]
mov dword [esp], edx
call fcn.00409a90
mov eax, dword [ebp - 0x5dc]
mov dword [esp], eax
call fcn.0045a992
cmp eax, 0x64
mov dword [ebp - 0x5ec], 0
jne 0x48bf98
mov eax, dword [ebp - 0x5dc]
mov dword [esp + 4], 0
mov dword [esp], eax
call fcn.0041610b
mov dword [ebp - 0x5ec], eax
mov eax, dword [ebp - 0x5dc]
mov dword [esp], eax
call fcn.004500a8
cmp dword [ebp - 0x5ec], 0
jne 0x48bfd0
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp + 8], esi
mov dword [esp + 4], str.no_such_index:___s__n
add eax, 0x40
mov dword [esp], eax
call fcn.00487932
jmp 0x48c205
mov dword [esp + 4], esi
mov dword [esp], str.PRAGMA_index_xinfo_q
call fcn.00433b08
mov esi, eax
mov dword [esp + 4], eax
mov eax, dword [ebx]
mov dword [esp + 0xc], edi
mov dword [esp + 0x10], 0
xor edi, edi
mov dword [esp + 8], 0xffffffff
mov dword [esp], eax
call fcn.0046d028
mov dword [esp], esi
xor esi, esi
call fcn.00409a90
mov eax, dword [ebp - 0x5dc]
mov dword [esp], eax
call fcn.0045a992
cmp eax, 0x64
mov eax, dword [ebp - 0x5dc]
jne 0x48c0bb
mov dword [esp + 4], 2
mov dword [esp], eax
inc esi
call fcn.0042219f
test eax, eax
mov edx, eax
jne 0x48c08a
mov eax, dword [ebp - 0x5dc]
mov dword [esp + 4], 1
mov dword [esp], eax
call fcn.0041610b
inc eax
mov edx, str._ROWID_
je 0x48c08a
lea eax, [ebp - 0x50c]
mov dword [esp + 0xc], esi
mov dword [esp + 8], str.expr_d
mov dword [esp], 0x14
mov dword [esp + 4], eax
call fcn.00421a93
lea edx, [ebp - 0x50c]
test edi, edi
jne 0x48c0a0
mov dword [esp + 4], edx
mov dword [esp], str.__w_
call fcn.00433b08
jmp 0x48c0b4
mov dword [esp + 8], edx
mov dword [esp + 4], edi
mov dword [esp], str._z___w_
call fcn.00433b08
mov edi, eax
jmp 0x48c010
mov dword [esp], eax
call fcn.004500a8
mov eax, dword [ebp - 0x5cc]
mov dword [esp + 0xc], edi
mov dword [esp + 8], edi
mov dword [esp], str.CREATE_TABLE___w___s_PRIMARY_KEY__s__WITHOUT_ROWID
mov dword [esp + 4], eax
call fcn.00433b08
mov dword [esp], edi
mov esi, eax
call fcn.00409a90
mov eax, dword [ebp - 0x5ec]
mov dword [esp + 0xc], 1
mov dword [esp + 8], str.main
mov dword [esp], 0x19
mov dword [esp + 0x10], eax
mov eax, dword [ebx]
mov dword [esp + 4], eax
call fcn.00484b52
test eax, eax
jne 0x48c1d7
mov eax, dword [ebx]
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
mov dword [esp + 4], esi
mov dword [esp], eax
call fcn.0045ba70
mov edi, eax
mov eax, dword [ebx]
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0
mov dword [esp + 8], str.main
mov dword [esp], 0x19
mov dword [esp + 4], eax
call fcn.00484b52
test edi, edi
je 0x48c1a1
mov eax, dword [ebx]
mov dword [esp], eax
call fcn.0042701d
mov dword [esp + 0xc], eax
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp + 8], esi
mov dword [esp + 4], str.Error_in___s_:__s_n
add eax, 0x40
mov dword [esp], eax
call fcn.00487932
jmp 0x48c1f8
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp + 8], esi
mov dword [esp + 4], str._s__n
add eax, 0x20
mov dword [esp], eax
call fcn.00487932
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp], str.WARNING:_writing_to_an_imposter_table_will_corrupt_the_index__n
add eax, 0x20
mov dword [esp + 4], eax
call sub.msvcrt.dll_fputs
jmp 0x48c1f8
mov dword [esp + 8], eax
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov edi, 1
mov dword [esp + 4], str.SQLITE_TESTCTRL_IMPOSTER_returns__d_n
add eax, 0x40
mov dword [esp], eax
call sub.msvcrt.dll_fprintf
mov dword [esp], esi
call fcn.00409a90
jmp 0x48ed96
mov edi, 1
jmp 0x48ed96
cmp dword [ebp - 0x5f0], 0x6c
sete dl
cmp edi, 4
setg byte [ebp - 0x600]
test dl, dl
je 0x48c3f6
cmp byte [ebp - 0x600], 0
je 0x48c3f6
cmp edi, 7
mov eax, 7
mov dword [esp + 4], str.limits
cmovle eax, edi
mov dword [esp], esi
mov byte [ebp - 0x5f4], dl
mov dword [esp + 8], eax
call sub.msvcrt.dll_strncmp
test eax, eax
mov dl, byte [ebp - 0x5f4]
jne 0x48c3f6
xor edx, edx
mov eax, ebx
call fcn.00489989
cmp dword [ebp - 0x5ec], 1
jne 0x48c2c3
mov edi, 0x4a9a00
mov esi, 0x4a9a60
mov dword [esp + 8], 0xffffffff
mov eax, dword [edi + 4]
add edi, 8
mov dword [esp + 4], eax
mov eax, dword [ebx]
mov dword [esp], eax
call fcn.004058e0
mov dword [esp + 8], eax
mov eax, dword [edi - 8]
mov dword [esp], str._20s__d_n
mov dword [esp + 4], eax
call sub.msvcrt.dll_printf
cmp esi, edi
jne 0x48c287
jmp 0x48edbf
cmp dword [ebp - 0x5ec], 3
jle 0x48c2ee
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp], str.Usage:_.limit_NAME__NEW_VALUE__n
mov edi, 1
add eax, 0x40
mov dword [esp + 4], eax
call sub.msvcrt.dll_fputs
jmp 0x48ed96
mov edi, dword [ebp - 0x5d0]
or esi, 0xffffffff
mov eax, edi
call fcn.00486020
xor edx, edx
mov ecx, eax
mov eax, dword [edx*8 + 0x4a9a00]
mov dword [esp + 8], ecx
mov dword [esp + 4], edi
mov dword [ebp - 0x5f4], ecx
mov dword [ebp - 0x5f0], edx
mov dword [esp], eax
call fcn.004019c1
test eax, eax
mov edx, dword [ebp - 0x5f0]
mov ecx, dword [ebp - 0x5f4]
jne 0x48c360
inc esi
je 0x48c35e
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp + 8], edi
mov edi, 1
mov dword [esp + 4], str.ambiguous_limit:___s__n
add eax, 0x40
mov dword [esp], eax
call fcn.00487932
jmp 0x48ed96
mov esi, edx
inc edx
cmp edx, 0xc
jne 0x48c302
cmp esi, 0xffffffff
jne 0x48c391
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp + 8], edi
mov edi, 1
mov dword [esp + 4], str.unknown_limit:___s__nenter__.limits__with_no_arguments_for_a_list._n
add eax, 0x40
mov dword [esp], eax
call fcn.00487932
jmp 0x48ed96
cmp dword [ebp - 0x5ec], 3
mov edi, dword [esi*8 + 0x4a9a04]
jne 0x48c3be
mov eax, dword [ebp - 0x5cc]
call fcn.0048673a
mov dword [esp + 8], eax
mov eax, dword [ebx]
mov dword [esp + 4], edi
mov dword [esp], eax
call fcn.004058e0
mov eax, dword [ebx]
mov dword [esp + 4], edi
xor edi, edi
mov dword [esp + 8], 0xffffffff
mov dword [esp], eax
call fcn.004058e0
mov dword [esp + 8], eax
mov eax, dword [esi*8 + 0x4a9a00]
mov dword [esp], str._20s__d_n
mov dword [esp + 4], eax
call sub.msvcrt.dll_printf
jmp 0x48ed96
cmp byte [ebp - 0x5f8], 0
je 0x48c9a4
test dl, dl
je 0x48c9a4
cmp edi, 5
mov eax, 5
mov dword [esp + 4], str.lint
cmovle eax, edi
mov dword [esp], esi
mov dword [esp + 8], eax
call sub.msvcrt.dll_strncmp
test eax, eax
jne 0x48c9b1
xor edx, edx
mov eax, ebx
call fcn.00489989
cmp dword [ebp - 0x5ec], 1
je 0x48c951
mov eax, dword [ebp - 0x5d0]
or ecx, 0xffffffff
mov dword [ebp - 0x5f4], eax
mov edi, dword [ebp - 0x5f4]
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
test ecx, ecx
jle 0x48c951
mov eax, dword [ebp - 0x5f4]
mov dword [esp + 8], ecx
mov dword [esp + 4], str.fkey_indexes
mov dword [esp], eax
call fcn.004019c1
test eax, eax
jne 0x48c951
mov eax, dword [ebx]
mov dword [ebp - 0x5dc], 0
mov dword [ebp - 0x608], 0x4a6527
mov dword [ebp - 0x5fc], 2
mov dword [ebp - 0x600], 0
mov dword [ebp - 0x604], 0
mov dword [ebp - 0x5f0], eax
mov eax, dword [ebx + 0x28]
mov dword [ebp - 0x5f8], eax
mov ecx, dword [ebp - 0x5ec]
cmp dword [ebp - 0x5fc], ecx
jge 0x48c595
mov eax, dword [ebp - 0x5fc]
or ecx, 0xffffffff
mov edx, dword [ebp + eax*4 - 0x5d4]
xor eax, eax
mov edi, edx
repne scasb al, byte es:[edi]
not ecx
lea edi, [ecx - 1]
cmp edi, 1
jle 0x48c52d
mov dword [esp + 8], edi
mov dword [esp + 4], edx
mov dword [esp], str._verbose
mov dword [ebp - 0x60c], edx
call fcn.004019c1
test eax, eax
jne 0x48c558
mov dword [ebp - 0x604], 1
jmp 0x48c58a
mov eax, dword [ebp - 0x5f4]
mov dword [esp + 8], esi
mov dword [esp + 4], str.Usage:__s__s___verbose____groupbyparent__n
mov dword [esp + 0xc], eax
mov eax, dword [sym.imp.msvcrt.dll__iob]
add eax, 0x40
mov dword [esp], eax
call sub.msvcrt.dll_fprintf
jmp 0x48c94a
mov edx, dword [ebp - 0x60c]
mov dword [esp + 8], edi
mov dword [esp], str._groupbyparent
mov dword [esp + 4], edx
call fcn.004019c1
test eax, eax
jne 0x48c52d
mov dword [ebp - 0x608], str.
mov dword [ebp - 0x600], 1
inc dword [ebp - 0x5fc]
jmp 0x48c4d1
mov eax, dword [ebp - 0x5f0]
mov dword [esp + 0x1c], 0
mov dword [esp + 0x18], 0
mov dword [esp + 0x14], 0x486a1f
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 1
mov dword [esp + 8], 4
mov dword [esp + 4], str.fkey_collate_clause
mov dword [esp], eax
call fcn.00427941
test eax, eax
jne 0x48c920
lea eax, [ebp - 0x5dc]
mov dword [esp + 0x10], 0
mov dword [esp + 8], 0xffffffff
mov dword [esp + 4], str.SELECT______EXPLAIN_QUERY_PLAN_SELECT_rowid_FROM___quote_s.name____WHERE____group_concat_quote_s.name___.__quote_f._from_________fkey_collate_clause_f._table___f._to___s.name__f._from____AND_________SEARCH_TABLE___s.name___USING_COVERING_INDEX____group_concat_____AND____________s.name______group_concat_f._from_________________f._table______group_concat_COALESCE_f._to___________SELECT_name_FROM_pragma_table_info_f._table___WHERE_pkseq1__________________CREATE_INDEX___quote_s.name___group_concat_f._from__________ON___quote_s.name_______group_concat_quote_f._from___________fkey_collate_clause_f._table___f._to___s.name__f._from___________________f._table__FROM_sqlite_master_AS_s__pragma_foreign_key_list_s.name__AS_f_GROUP_BY_s.name__f.id_ORDER_BY__CASE_WHEN___THEN_f._table__ELSE_s.name_END_
mov dword [esp + 0xc], eax
mov eax, dword [ebp - 0x5f0]
mov dword [esp], eax
call fcn.0046d028
test eax, eax
mov esi, eax
jne 0x48c920
mov eax, dword [ebp - 0x600]
mov dword [esp + 4], 1
xor edi, edi
mov dword [esp + 8], eax
mov eax, dword [ebp - 0x5dc]
mov dword [esp], eax
call fcn.004273f5
mov eax, dword [ebp - 0x5dc]
mov dword [esp], eax
call fcn.0045a992
cmp eax, 0x64
jne 0x48c8d4
mov eax, dword [ebp - 0x5dc]
mov dword [esp + 4], 0
mov dword [ebp - 0x50c], 0
mov dword [esp], eax
call fcn.0042219f
mov dword [ebp - 0x5ec], eax
mov eax, dword [ebp - 0x5dc]
mov dword [esp + 4], 1
mov dword [esp], eax
call fcn.0042219f
mov dword [ebp - 0x60c], eax
mov eax, dword [ebp - 0x5dc]
mov dword [esp + 4], 2
mov dword [esp], eax
call fcn.0042219f
mov dword [ebp - 0x610], eax
mov eax, dword [ebp - 0x5dc]
mov dword [esp + 4], 3
mov dword [esp], eax
call fcn.0042219f
mov dword [ebp - 0x5fc], eax
mov eax, dword [ebp - 0x5dc]
mov dword [esp + 4], 4
mov dword [esp], eax
call fcn.0042219f
mov dword [ebp - 0x614], eax
mov eax, dword [ebp - 0x5dc]
mov dword [esp + 4], 5
mov dword [esp], eax
call fcn.0042219f
mov dword [ebp - 0x5f4], eax
lea eax, [ebp - 0x50c]
mov edx, dword [ebp - 0x5ec]
mov dword [esp + 0x10], 0
mov dword [esp + 8], 0xffffffff
mov dword [esp + 0xc], eax
mov eax, dword [ebp - 0x5f0]
mov dword [esp + 4], edx
mov dword [esp], eax
call fcn.0046d028
test eax, eax
mov edx, eax
jne 0x48c8d2
mov eax, dword [ebp - 0x50c]
mov dword [esp], eax
call fcn.0045a992
cmp eax, 0x64
mov dword [ebp - 0x5ec], 0xffffffff
jne 0x48c797
mov eax, dword [ebp - 0x50c]
mov dword [esp + 4], 3
mov dword [esp], eax
call fcn.0042219f
mov dword [esp + 4], eax
mov eax, dword [ebp - 0x60c]
mov dword [esp], eax
call fcn.004044e8
test eax, eax
sete al
movzx eax, al
mov dword [ebp - 0x5ec], eax
mov eax, dword [ebp - 0x50c]
mov dword [esp], eax
call fcn.004500a8
test eax, eax
mov edx, eax
jne 0x48c8d2
cmp dword [ebp - 0x5ec], 0xffffffff
jne 0x48c7e1
mov dword [ebp - 0x5ec], eax
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp], str.Error:_internal_error
add eax, 0x40
mov dword [esp + 4], eax
call sub.msvcrt.dll_fputs
mov edx, dword [ebp - 0x5ec]
jmp 0x48c8d2
cmp dword [ebp - 0x600], 0
je 0x48c85b
mov eax, dword [ebp - 0x5ec]
xor eax, 1
or eax, dword [ebp - 0x604]
je 0x48c88c
test edi, edi
jne 0x48c845
mov eax, dword [ebp - 0x5f4]
mov dword [esp + 4], str.___Parent_table__s_n
mov dword [esp + 8], eax
mov eax, dword [ebp - 0x5f8]
mov dword [esp], eax
call sub.msvcrt.dll_fprintf
mov dword [esp], edi
call fcn.00409a90
mov eax, dword [ebp - 0x5f4]
mov dword [esp], 0x4a6a55
mov dword [esp + 4], eax
call fcn.00433b08
mov edi, eax
jmp 0x48c85b
mov eax, dword [ebp - 0x5f4]
mov dword [esp + 4], edi
mov dword [esp], eax
call fcn.0040199b
test eax, eax
jne 0x48c803
cmp dword [ebp - 0x5ec], 0
jne 0x48c88c
mov eax, dword [ebp - 0x5fc]
mov dword [esp + 4], str._s_s______s_n
mov dword [esp + 0x10], eax
mov eax, dword [ebp - 0x614]
mov dword [esp + 0xc], eax
mov eax, dword [ebp - 0x608]
mov dword [esp + 8], eax
jmp 0x48c8bf
cmp dword [ebp - 0x604], 0
je 0x48c63f
mov eax, dword [ebp - 0x5fc]
mov dword [esp + 4], str._s__no_extra_indexes_required_for__s_____s___n
mov dword [esp + 0x10], eax
mov eax, dword [ebp - 0x610]
mov dword [esp + 0xc], eax
mov eax, dword [ebp - 0x608]
mov dword [esp + 8], eax
mov eax, dword [ebp - 0x5f8]
mov dword [esp], eax
call sub.msvcrt.dll_fprintf
jmp 0x48c63f
mov esi, edx
mov dword [esp], edi
call fcn.00409a90
test esi, esi
je 0x48c90a
mov eax, dword [ebp - 0x5f0]
mov dword [esp], eax
call fcn.0042701d
mov dword [esp + 8], eax
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp + 4], 0x4a6f21
add eax, 0x40
mov dword [esp], eax
call sub.msvcrt.dll_fprintf
mov eax, dword [ebp - 0x5dc]
mov dword [esp], eax
call fcn.004500a8
test esi, esi
jne 0x48c94a
test eax, eax
je 0x48c94a
mov eax, dword [ebp - 0x5f0]
mov dword [esp], eax
call fcn.0042701d
mov dword [esp + 8], eax
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp + 4], 0x4a6f21
add eax, 0x40
mov dword [esp], eax
call sub.msvcrt.dll_fprintf
xor edi, edi
jmp 0x48ed96
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp + 8], esi
xor edi, edi
mov dword [esp + 4], str.Usage__s_sub_command__switches...__n
add eax, 0x40
mov dword [esp], eax
call sub.msvcrt.dll_fprintf
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp], str.Where_sub_commands_are:_n
add eax, 0x40
mov dword [esp + 4], eax
call sub.msvcrt.dll_fputs
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp], str.____fkey_indexes_n
add eax, 0x40
mov dword [esp + 4], eax
call sub.msvcrt.dll_fputs
jmp 0x48ed96
cmp dword [ebp - 0x5f0], 0x6c
jne 0x48cb03
cmp edi, 5
mov eax, 5
mov dword [esp + 4], str.load
cmovle eax, edi
mov dword [esp], esi
mov dword [esp + 8], eax
call sub.msvcrt.dll_strncmp
test eax, eax
jne 0x48ca8c
cmp dword [ebp - 0x5ec], 1
mov dword [ebp - 0x50c], 0
jne 0x48ca0d
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp], str.Usage:_.load_FILE__ENTRYPOINT__n
mov edi, 1
add eax, 0x40
mov dword [esp + 4], eax
call sub.msvcrt.dll_fputs
jmp 0x48ed96
cmp dword [ebp - 0x5ec], 2
mov esi, dword [ebp - 0x5d0]
cmovne eax, dword [ebp - 0x5cc]
xor edx, edx
mov edi, eax
mov eax, ebx
call fcn.00489989
lea eax, [ebp - 0x50c]
mov dword [esp + 8], edi
mov dword [esp + 4], esi
mov dword [esp + 0xc], eax
mov eax, dword [ebx]
mov dword [esp], eax
call fcn.00433fd2
test eax, eax
mov edi, eax
je 0x48ed96
mov eax, dword [ebp - 0x50c]
mov dword [esp + 4], str.Error:__s_n
mov edi, 1
mov dword [esp + 8], eax
mov eax, dword [sym.imp.msvcrt.dll__iob]
add eax, 0x40
mov dword [esp], eax
call fcn.00487932
mov eax, dword [ebp - 0x50c]
mov dword [esp], eax
call fcn.00409a90
jmp 0x48ed96
cmp edi, 4
mov eax, 4
mov dword [esp + 4], 0x4a82dc
cmovle eax, edi
mov dword [esp], esi
mov dword [esp + 8], eax
call sub.msvcrt.dll_strncmp
test eax, eax
jne 0x48ceea
cmp dword [ebp - 0x5ec], 2
je 0x48cade
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp], str.Usage:_.log_FILENAME_n
mov edi, 1
add eax, 0x40
mov dword [esp + 4], eax
call sub.msvcrt.dll_fputs
jmp 0x48ed96
mov esi, dword [ebp - 0x5d0]
mov eax, dword [ebx + 0x4e4]
xor edi, edi
call fcn.0048684d
mov eax, esi
call fcn.00492f7f
mov dword [ebx + 0x4e4], eax
jmp 0x48ed96
cmp dword [ebp - 0x5f0], 0x6d
jne 0x48ceea
cmp edi, 5
mov eax, 5
mov dword [esp + 4], str.mode
cmovle eax, edi
mov dword [esp], esi
mov dword [esp + 8], eax
call sub.msvcrt.dll_strncmp
test eax, eax
jne 0x48d2f4
cmp dword [ebp - 0x5ec], 1
mov edx, 0x4a6527
cmovne edx, dword [ebp - 0x5d0]
or ecx, 0xffffffff
mov edi, edx
movsx esi, byte [edx]
repne scasb al, byte es:[edi]
not ecx
lea eax, [ecx - 1]
cmp esi, 0x6c
mov dword [ebp - 0x5f0], eax
jne 0x48cba2
cmp eax, 2
jle 0x48cba2
cmp eax, 6
mov eax, 6
cmovle eax, dword [ebp - 0x5f0]
mov edi, dword [ebp - 0x5d0]
mov dword [esp + 4], str.lines
mov dword [esp + 8], eax
mov dword [esp], edi
call sub.msvcrt.dll_strncmp
test eax, eax
jne 0x48cbe8
mov dword [ebx + 0x34], 0
jmp 0x48cedd
cmp esi, 0x63
jne 0x48cc23
cmp dword [ebp - 0x5f0], 8
mov eax, 8
mov esi, dword [ebp - 0x5d0]
cmovle eax, dword [ebp - 0x5f0]
mov dword [esp + 4], str.columns
mov dword [esp], esi
mov dword [esp + 8], eax
call sub.msvcrt.dll_strncmp
test eax, eax
jne 0x48cc6f
mov dword [ebx + 0x34], 1
jmp 0x48cedd
cmp dword [ebp - 0x5f0], 5
mov eax, 5
mov dword [esp + 4], str.list
cmovle eax, dword [ebp - 0x5f0]
mov dword [esp], edi
mov dword [esp + 8], eax
call sub.msvcrt.dll_strncmp
test eax, eax
jne 0x48cdcd
mov dword [ebx + 0x34], 2
jmp 0x48cedd
cmp esi, 0x68
jne 0x48cccf
cmp dword [ebp - 0x5f0], 5
mov eax, dword [ebp - 0x5f0]
mov ecx, 5
mov dword [esp + 4], str.html
cmovg eax, ecx
mov dword [esp + 8], eax
mov eax, dword [ebp - 0x5d0]
mov dword [esp], eax
call sub.msvcrt.dll_strncmp
test eax, eax
jne 0x48ce8f
mov dword [ebx + 0x34], 4
jmp 0x48cedd
cmp dword [ebp - 0x5f0], 4
mov eax, dword [ebp - 0x5f0]
mov ecx, 4
mov dword [esp + 4], 0x4a8319
mov dword [esp], esi
cmovg eax, ecx
mov dword [esp + 8], eax
call sub.msvcrt.dll_strncmp
test eax, eax
jne 0x48ce8f
lea eax, [ebx + 0x72]
mov dword [ebx + 0x34], 8
mov dword [esp + 8], 0x4a6a6c
mov dword [esp], 0x14
mov dword [esp + 4], eax
call fcn.00421a93
mov dword [esp + 8], 0x4a7ae5
jmp 0x48ce77
cmp esi, 0x74
je 0x48edfb
cmp esi, 0x69
jne 0x48cdcd
cmp dword [ebp - 0x5f0], 7
mov eax, dword [ebp - 0x5f0]
mov ecx, 7
mov dword [esp + 4], str.insert
cmovg eax, ecx
mov dword [esp + 8], eax
mov eax, dword [ebp - 0x5d0]
mov dword [esp], eax
call sub.msvcrt.dll_strncmp
test eax, eax
jne 0x48ce8f
mov eax, dword [ebx + 0x50]
cmp dword [ebp - 0x5ec], 3
mov edi, str.table
cmovge edi, dword [ebp - 0x5cc]
mov dword [ebx + 0x34], 5
test eax, eax
je 0x48cd48
mov dword [esp], eax
call fcn.00490ccc
mov dword [ebx + 0x50], 0
test edi, edi
je 0x48cedd
movzx eax, byte [edi]
mov byte [ebp - 0x5ec], al
mov dword [esp], eax
call dword [sym.imp.msvcrt.dll_isalpha]
mov dl, byte [ebp - 0x5ec]
mov ecx, edi
cmp dl, 0x5f
setne dl
test eax, eax
sete al
xor esi, esi
movzx eax, al
and eax, edx
mov dword [ebp - 0x5ec], eax
mov dl, byte [ecx]
test dl, dl
jne 0x48ee85
mov eax, dword [ebp - 0x5ec]
lea eax, [esi + eax*2 + 1]
mov dword [esp], eax
call sub.msvcrt.dll_malloc
test eax, eax
mov dword [ebx + 0x50], eax
jne 0x48ceae
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp], str.Error:_out_of_memory_n
add eax, 0x40
mov dword [esp + 4], eax
call sub.msvcrt.dll_fputs
mov dword [esp], 1
call sub.msvcrt.dll_exit
cmp esi, 0x71
jne 0x48ce15
cmp dword [ebp - 0x5f0], 6
mov eax, dword [ebp - 0x5f0]
mov ecx, 6
mov dword [esp + 4], str.quote
cmovg eax, ecx
mov dword [esp + 8], eax
mov eax, dword [ebp - 0x5d0]
mov dword [esp], eax
call sub.msvcrt.dll_strncmp
test eax, eax
jne 0x48ce8f
mov dword [ebx + 0x34], 6
jmp 0x48cedd
cmp esi, 0x61
jne 0x48ce8f
cmp dword [ebp - 0x5f0], 6
mov eax, dword [ebp - 0x5f0]
mov ecx, 6
mov dword [esp + 4], str.ascii
cmovg eax, ecx
mov dword [esp + 8], eax
mov eax, dword [ebp - 0x5d0]
mov dword [esp], eax
call sub.msvcrt.dll_strncmp
test eax, eax
jne 0x48ce8f
lea eax, [ebx + 0x72]
mov dword [ebx + 0x34], 0xa
mov dword [esp + 8], 0x4a8337
mov dword [esp], 0x14
mov dword [esp + 4], eax
call fcn.00421a93
mov dword [esp + 8], 0x4a8339
lea eax, [ebx + 0x86]
mov dword [esp + 4], eax
mov dword [esp], 0x14
call fcn.00421a93
jmp 0x48cedd
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp], str.Error:_mode_should_be_one_of:_ascii_column_csv_html_insert_line_list_quote_tabs_tcl_n
mov edi, 1
add eax, 0x40
mov dword [esp + 4], eax
call sub.msvcrt.dll_fputs
jmp 0x48cedf
xor edx, edx
cmp dword [ebp - 0x5ec], 0
je 0x48cec1
mov byte [eax], 0x27
mov edx, 1
mov cl, byte [edi]
test cl, cl
jne 0x48eecd
cmp dword [ebp - 0x5ec], 0
je 0x48ced9
mov byte [eax + edx], 0x27
inc edx
mov byte [eax + edx], 0
xor edi, edi
mov eax, dword [ebx + 0x34]
mov dword [ebx + 0x38], eax
jmp 0x48ed96
cmp dword [ebp - 0x5f0], 0x6e
jne 0x48cf80
cmp edi, 0xa
mov eax, 0xa
mov dword [esp + 4], str.nullvalue
cmovle eax, edi
mov dword [esp], esi
mov dword [esp + 8], eax
call sub.msvcrt.dll_strncmp
test eax, eax
jne 0x48d2f4
cmp dword [ebp - 0x5ec], 2
jne 0x48cf5e
mov eax, dword [ebp - 0x5d0]
mov dword [esp + 0xc], 0x13
xor edi, edi
mov dword [esp + 8], 0x4a6a33
mov dword [esp], 0x14
mov dword [esp + 0x10], eax
lea eax, [ebx + 0x3bc]
mov dword [esp + 4], eax
call fcn.00421a93
jmp 0x48ed96
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp], str.Usage:_.nullvalue_STRING_n
mov edi, 1
add eax, 0x40
mov dword [esp + 4], eax
call sub.msvcrt.dll_fputs
jmp 0x48ed96
cmp dword [ebp - 0x5f0], 0x6f
jne 0x48d2f4
cmp edi, 5
mov eax, 5
mov dword [esp + 4], str.open
cmovle eax, edi
mov dword [esp], esi
mov dword [esp + 8], eax
call sub.msvcrt.dll_strncmp
test eax, eax
jne 0x48d0da
cmp byte [ebp - 0x5fc], 0
je 0x48d0da
mov eax, dword [ebx]
xor edi, edi
mov esi, 1
mov dword [esp], eax
call fcn.0044f1c5
mov eax, dword [ebx + 0x4d8]
mov dword [ebx], 0
mov dword [esp], eax
call fcn.00409a90
mov dword [ebx + 0x4d8], 0
cmp esi, dword [ebp - 0x5ec]
jge 0x48d0b7
mov ecx, dword [ebp + esi*4 - 0x5d4]
cmp byte [ecx], 0x2d
jne 0x48d052
mov edx, 0x4a83b9
mov eax, ecx
mov dword [ebp - 0x5f0], ecx
call fcn.00492c30
test eax, eax
jne 0x48d04a
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov ecx, dword [ebp - 0x5f0]
mov edi, 1
mov dword [esp + 4], str.unknown_option:__s_n
add eax, 0x40
mov dword [esp + 8], ecx
mov dword [esp], eax
call fcn.00487932
jmp 0x48ed96
inc esi
mov edi, 1
jmp 0x48cff0
mov dword [esp + 4], ecx
mov dword [esp], 0x4a6a55
call fcn.00433b08
test eax, eax
mov esi, eax
je 0x48d0b7
test edi, edi
je 0x48d074
mov dword [esp], eax
call fcn.0048a1b3
mov dword [ebx + 0x4d4], esi
mov edx, 1
mov eax, ebx
call fcn.00489989
cmp dword [ebx], 0
jne 0x48d0b1
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp + 8], esi
mov dword [esp + 4], str.Error:_cannot_open__s_n
add eax, 0x40
mov dword [esp], eax
call fcn.00487932
mov dword [esp], esi
call fcn.00409a90
jmp 0x48d0b7
mov dword [ebx + 0x4d8], esi
cmp dword [ebx], 0
jne 0x48edbf
mov dword [ebx + 0x4d4], 0
xor edx, edx
mov eax, ebx
call fcn.00489989
xor edi, edi
jmp 0x48ed96
cmp edi, 7
mov eax, 7
mov dword [esp + 4], str.output
cmovle eax, edi
mov dword [esp], esi
mov dword [esp + 8], eax
call sub.msvcrt.dll_strncmp
test eax, eax
je 0x48d124
cmp edi, 5
mov eax, 5
mov dword [esp + 4], str.once
cmovle eax, edi
mov dword [esp], esi
mov dword [esp + 8], eax
call sub.msvcrt.dll_strncmp
test eax, eax
jne 0x48d2f4
cmp dword [ebp - 0x5ec], 1
je 0x48d168
cmp dword [ebp - 0x5ec], 2
mov eax, dword [ebp - 0x5d0]
mov dword [ebp - 0x5f0], eax
je 0x48d172
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp + 8], esi
mov edi, 1
mov dword [esp + 4], str.Usage:_._s_FILE_n
add eax, 0x40
mov dword [esp], eax
call fcn.00487932
jmp 0x48ed96
mov dword [ebp - 0x5f0], str.stdout
cmp edi, 1
jle 0x48d1ce
cmp edi, 5
mov eax, 5
mov dword [esp + 4], str.once
cmovg edi, eax
mov dword [esp], esi
mov dword [esp + 8], edi
call sub.msvcrt.dll_strncmp
test eax, eax
jne 0x48d1ce
cmp dword [ebp - 0x5ec], 1
jne 0x48d1c5
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp], str.Usage:_.once_FILE_n
mov edi, 1
add eax, 0x40
mov dword [esp + 4], eax
call sub.msvcrt.dll_fputs
jmp 0x48ed96
mov dword [ebx + 0x20], 2
jmp 0x48d1d5
mov dword [ebx + 0x20], 0
mov eax, ebx
call fcn.00486875
mov eax, dword [ebp - 0x5f0]
cmp byte [eax], 0x7c
jne 0x48d262
lea esi, [eax + 1]
mov dword [esp + 4], 0x4a8406
mov dword [esp], esi
call dword [sym.imp.msvcrt.dll__popen]
test eax, eax
mov dword [ebx + 0x28], eax
jne 0x48d233
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp + 8], esi
mov edi, 1
mov dword [esp + 4], str.Error:_cannot_open_pipe___s__n
add eax, 0x40
mov dword [esp], eax
call fcn.00487932
mov eax, dword [sym.imp.msvcrt.dll__iob]
add eax, 0x20
mov dword [ebx + 0x28], eax
jmp 0x48ed96
mov eax, dword [ebp - 0x5f0]
mov dword [esp + 8], 0x4a6a55
xor edi, edi
mov dword [esp], 0x104
mov dword [esp + 0xc], eax
lea eax, [ebx + 0x3d0]
mov dword [esp + 4], eax
call fcn.00421a93
jmp 0x48ed96
mov eax, dword [ebp - 0x5f0]
call fcn.00492f7f
test eax, eax
mov dword [ebx + 0x28], eax
jne 0x48d2c5
mov eax, dword [ebp - 0x5f0]
mov dword [esp + 4], 0x4a6fb1
mov dword [esp], eax
call sub.msvcrt.dll_strcmp
test eax, eax
je 0x48d2b0
mov eax, dword [ebp - 0x5f0]
mov dword [esp + 4], str.Error:_cannot_write_to___s__n
mov dword [esp + 8], eax
mov eax, dword [sym.imp.msvcrt.dll__iob]
add eax, 0x40
mov dword [esp], eax
call fcn.00487932
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov edi, 1
add eax, 0x20
mov dword [ebx + 0x28], eax
jmp 0x48ed96
mov eax, dword [ebp - 0x5f0]
mov dword [esp + 8], 0x4a6a55
xor edi, edi
mov dword [esp], 0x104
mov dword [esp + 0xc], eax
lea eax, [ebx + 0x3d0]
mov dword [esp + 4], eax
call fcn.00421a93
jmp 0x48ed96
cmp dword [ebp - 0x5f0], 0x70
jne 0x48d38e
cmp byte [ebp - 0x5f8], 0
je 0x48d38e
cmp edi, 6
mov eax, 6
mov dword [esp + 4], str.print
cmovle eax, edi
mov dword [esp], esi
mov dword [esp + 8], eax
call sub.msvcrt.dll_strncmp
test eax, eax
jne 0x48d39b
mov esi, 1
cmp esi, dword [ebp - 0x5ec]
mov eax, dword [ebx + 0x28]
jge 0x48d377
cmp esi, 1
je 0x48d356
mov dword [esp + 4], eax
mov dword [esp], 0x20
call sub.msvcrt.dll_fputc
mov eax, dword [ebp + esi*4 - 0x5d4]
mov dword [esp + 4], 0x4a6a55
inc esi
mov dword [esp + 8], eax
mov eax, dword [ebx + 0x28]
mov dword [esp], eax
call fcn.00487932
jmp 0x48d336
mov dword [esp + 4], eax
mov dword [esp], 0xa
xor edi, edi
call sub.msvcrt.dll_fputc
jmp 0x48ed96
cmp dword [ebp - 0x5f0], 0x70
jne 0x48d41f
cmp edi, 7
mov eax, 7
mov dword [esp + 4], str.prompt
cmovle eax, edi
mov dword [esp], esi
mov dword [esp + 8], eax
call sub.msvcrt.dll_strncmp
test eax, eax
jne 0x48d44f
cmp dword [ebp - 0x5ec], 1
je 0x48edbf
mov eax, dword [ebp - 0x5d0]
mov dword [esp + 8], 0x13
mov dword [esp], 0x4ab488
mov dword [esp + 4], eax
call sub.msvcrt.dll_strncpy
cmp dword [ebp - 0x5ec], 2
je 0x48edbf
mov eax, dword [ebp - 0x5cc]
mov dword [esp + 8], 0x13
xor edi, edi
mov dword [esp], 0x4ab474
mov dword [esp + 4], eax
call sub.msvcrt.dll_strncpy
jmp 0x48ed96
cmp dword [ebp - 0x5f0], 0x71
jne 0x48d44f
cmp edi, 5
mov eax, 5
mov dword [esp + 4], str.quit
cmovle eax, edi
mov dword [esp], esi
mov dword [esp + 8], eax
call sub.msvcrt.dll_strncmp
test eax, eax
je 0x48b288
cmp dword [ebp - 0x5f0], 0x72
jne 0x48d6bb
cmp byte [ebp - 0x5f8], 0
je 0x48d6bb
cmp edi, 5
mov eax, 5
mov dword [esp + 4], str.read
cmovle eax, edi
mov dword [esp], esi
mov dword [esp + 8], eax
call sub.msvcrt.dll_strncmp
test eax, eax
jne 0x48d51f
cmp dword [ebp - 0x5ec], 2
je 0x48d4bb
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp], str.Usage:_.read_FILE_n
mov edi, 1
add eax, 0x40
mov dword [esp + 4], eax
call sub.msvcrt.dll_fputs
jmp 0x48ed96
mov esi, dword [ebp - 0x5d0]
mov dword [esp + 4], 0x4a6507
mov dword [esp], esi
call sub.msvcrt.dll_fopen
test eax, eax
jne 0x48d4fb
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp + 8], esi
mov edi, 1
mov dword [esp + 4], str.Error:_cannot_open___s__n
add eax, 0x40
mov dword [esp], eax
call fcn.00487932
jmp 0x48ed96
mov edx, eax
mov dword [ebp - 0x5ec], eax
mov eax, ebx
call fcn.0048eef6
mov ecx, dword [ebp - 0x5ec]
mov edi, eax
mov dword [esp], ecx
call sub.msvcrt.dll_fclose
jmp 0x48ed96
cmp edi, 8
mov eax, 8
mov dword [esp + 4], str.restore
cmovle eax, edi
mov dword [esp], esi
mov dword [esp + 8], eax
call sub.msvcrt.dll_strncmp
test eax, eax
jne 0x48d743
cmp dword [ebp - 0x5ec], 2
jne 0x48d561
mov esi, dword [ebp - 0x5d0]
mov dword [ebp - 0x5ec], str.main
jmp 0x48d5a0
cmp dword [ebp - 0x5ec], 3
jne 0x48d57e
mov eax, dword [ebp - 0x5d0]
mov esi, dword [ebp - 0x5cc]
mov dword [ebp - 0x5ec], eax
jmp 0x48d5a0
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp], str.Usage:_.restore__DB__FILE_n
mov edi, 1
add eax, 0x40
mov dword [esp + 4], eax
call sub.msvcrt.dll_fputs
jmp 0x48ed96
lea eax, [ebp - 0x50c]
mov dword [esp], esi
mov dword [esp + 4], eax
call fcn.00485e4f
test eax, eax
mov edi, eax
je 0x48d5c9
mov dword [esp + 8], esi
mov dword [esp + 4], str.Error:_cannot_open___s__n
jmp 0x48a5c3
xor edx, edx
mov eax, ebx
call fcn.00489989
mov eax, dword [ebp - 0x50c]
mov dword [esp + 0xc], str.main
mov dword [esp + 8], eax
mov eax, dword [ebp - 0x5ec]
mov dword [esp + 4], eax
mov eax, dword [ebx]
mov dword [esp], eax
call fcn.00442bb6
test eax, eax
mov esi, eax
je 0x48d60a
mov dword [ebp - 0x5ec], 4
jmp 0x48d62a
mov eax, dword [ebx]
jmp 0x48a5af
cmp eax, 5
jne 0x48d642
dec dword [ebp - 0x5ec]
je 0x48d642
mov dword [esp], 0x64
call fcn.00417283
mov dword [esp + 4], 0x64
mov dword [esp], esi
call fcn.00440dca
test eax, eax
mov edx, eax
je 0x48d62a
jmp 0x48d611
mov dword [esp], esi
mov dword [ebp - 0x5ec], edx
call fcn.0044f013
mov edx, dword [ebp - 0x5ec]
cmp edx, 0x65
je 0x48d6a8
lea esi, [edx - 5]
cmp esi, 1
ja 0x48d67d
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp], str.Error:_source_database_is_busy_n
add eax, 0x40
mov dword [esp + 4], eax
call sub.msvcrt.dll_fputs
jmp 0x48d6a3
mov eax, dword [ebx]
mov dword [esp], eax
call fcn.0042701d
mov dword [esp + 8], eax
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp + 4], str.Error:__s_n
add eax, 0x40
mov dword [esp], eax
call fcn.00487932
mov edi, 1
mov eax, dword [ebp - 0x50c]
mov dword [esp], eax
call fcn.0044f1c5
jmp 0x48ed96
cmp dword [ebp - 0x5f0], 0x73
jne 0x48df30
cmp edi, 0xa
mov eax, 0xa
mov dword [esp + 4], str.scanstats
cmovle eax, edi
mov dword [esp], esi
mov dword [esp + 8], eax
call sub.msvcrt.dll_strncmp
test eax, eax
jne 0x48d750
cmp dword [ebp - 0x5ec], 2
jne 0x48d721
mov eax, dword [ebp - 0x5d0]
xor edi, edi
call fcn.004898c1
mov dword [ebx + 0x14], eax
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp], str.Warning:_.scanstats_not_available_in_this_build._n
add eax, 0x40
mov dword [esp + 4], eax
call sub.msvcrt.dll_fputs
jmp 0x48ed96
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp], str.Usage:_.scanstats_onoff_n
mov edi, 1
add eax, 0x40
mov dword [esp + 4], eax
call sub.msvcrt.dll_fputs
jmp 0x48ed96
cmp dword [ebp - 0x5f0], 0x73
jne 0x48df30
cmp edi, 7
mov eax, 7
mov dword [esp + 4], str.schema
cmovle eax, edi
mov dword [esp], esi
mov dword [esp + 8], eax
call sub.msvcrt.dll_strncmp
test eax, eax
jne 0x48d9c0
xor edx, edx
mov eax, ebx
mov dword [ebp - 0x5e8], 0
call fcn.00489989
cmp dword [ebp - 0x5ec], 1
lea edi, [ebp - 0x50c]
mov ecx, 0x13d
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov dword [ebp - 0x4c8], 0
mov dword [ebp - 0x4d8], 3
lea esi, [ebp - 0x50c]
mov dword [ebp - 0x4d4], 3
jne 0x48d7f5
lea eax, [ebp - 0x5e8]
mov dword [esp + 0xc], esi
mov dword [esp + 8], fcn.00488a3e
mov dword [esp + 4], 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
mov dword [esp + 0x10], eax
mov eax, dword [ebx]
mov dword [esp], eax
call fcn.0045ba70
mov edi, eax
jmp 0x48d958
mov eax, dword [ebp - 0x5d0]
mov edx, str.indent
call fcn.00492c30
test eax, eax
je 0x48ede9
mov eax, dword [ebp - 0x5ec]
mov dword [ebp - 0x4d8], 0xb
mov dword [ebp - 0x4d4], 0xb
dec eax
cmp eax, 2
jne 0x48d92f
mov eax, dword [ebp - 0x5cc]
mov dword [ebp - 0x5d0], eax
mov edi, dword [ebp - 0x5d0]
cmp byte [edi], 0x2d
mov edx, edi
je 0x48d936
movzx eax, byte [edx]
test al, al
je 0x48d86f
mov dword [ebp - 0x5ec], edx
mov dword [esp], eax
call dword [sym.imp.msvcrt.dll_tolower]
mov edx, dword [ebp - 0x5ec]
mov byte [edx], al
inc edx
jmp 0x48d84e
mov dword [esp + 4], str.sqlite_master
mov dword [esp], edi
call sub.msvcrt.dll_strcmp
test eax, eax
jne 0x48d88f
mov dword [ebp - 0x5e4], str.CREATE_TABLE_sqlite_master___n__type_text__n__name_text__n__tbl_name_text__n__rootpage_integer__n__sql_text_n_
jmp 0x48d8ad
mov dword [esp + 4], str.sqlite_temp_master
mov dword [esp], edi
call sub.msvcrt.dll_strcmp
test eax, eax
jne 0x48d8f3
mov dword [ebp - 0x5e4], str.CREATE_TEMP_TABLE_sqlite_temp_master___n__type_text__n__name_text__n__tbl_name_text__n__rootpage_integer__n__sql_text_n_
lea eax, [ebp - 0x5dc]
mov dword [esp + 4], 1
mov dword [esp], esi
mov dword [ebp - 0x5e0], 0
mov dword [ebp - 0x5dc], 0x4a868b
xor edi, edi
mov dword [esp + 0xc], eax
lea eax, [ebp - 0x5e4]
mov dword [ebp - 0x5d8], 0
mov dword [esp + 8], eax
call fcn.00488a3e
jmp 0x48d958
lea eax, [ebp - 0x5e8]
mov dword [esp + 0xc], esi
mov dword [esp + 8], fcn.00488a3e
mov dword [esp + 4], 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_lower_tbl_name__LIKE_shellstatic____AND_type_meta_AND_sql_NOTNULL_ORDER_BY_rowid
mov dword [0x4ab470], edi
mov dword [esp + 0x10], eax
mov eax, dword [ebx]
mov dword [esp], eax
call fcn.0045ba70
mov dword [0x4ab470], 0
mov edi, eax
jmp 0x48d958
dec eax
je 0x48d7c6
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp], str.Usage:_.schema____indent___LIKE_PATTERN__n
mov edi, 1
add eax, 0x40
mov dword [esp + 4], eax
call sub.msvcrt.dll_fputs
jmp 0x48ed96
mov eax, dword [ebp - 0x5e8]
test eax, eax
je 0x48d996
mov dword [esp + 8], eax
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov edi, 1
mov dword [esp + 4], str.Error:__s_n
add eax, 0x40
mov dword [esp], eax
call fcn.00487932
mov eax, dword [ebp - 0x5e8]
mov dword [esp], eax
call fcn.00409a90
jmp 0x48ed96
test edi, edi
je 0x48ed96
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp], str.Error:_querying_schema_information_n
mov edi, 1
add eax, 0x40
mov dword [esp + 4], eax
call sub.msvcrt.dll_fputs
jmp 0x48ed96
cmp edi, 0xa
mov eax, 0xa
mov dword [esp + 4], str.separator
cmovle eax, edi
mov dword [esp], esi
mov dword [esp + 8], eax
call sub.msvcrt.dll_strncmp
test eax, eax
jne 0x48da91
mov eax, dword [ebp - 0x5ec]
sub eax, 2
cmp eax, 1
jbe 0x48da20
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp], str.Usage:_.separator_COL__ROW__n
mov edi, 1
add eax, 0x40
mov dword [esp + 4], eax
call sub.msvcrt.dll_fputs
cmp dword [ebp - 0x5ec], 1
jne 0x48da22
jmp 0x48ed96
xor edi, edi
mov eax, dword [ebp - 0x5d0]
mov dword [esp + 0xc], 0x13
mov dword [esp + 8], 0x4a6a33
mov dword [esp], 0x14
mov dword [esp + 0x10], eax
lea eax, [ebx + 0x72]
mov dword [esp + 4], eax
call fcn.00421a93
cmp dword [ebp - 0x5ec], 2
jle 0x48ed96
mov eax, dword [ebp - 0x5cc]
mov dword [esp + 0xc], 0x13
mov dword [esp + 8], 0x4a6a33
mov dword [esp], 0x14
mov dword [esp + 0x10], eax
lea eax, [ebx + 0x86]
mov dword [esp + 4], eax
call fcn.00421a93
jmp 0x48ed96
cmp edi, 6
mov eax, 6
mov dword [esp + 4], str.shell
cmovle eax, edi
mov dword [esp], esi
mov dword [esp + 8], eax
call sub.msvcrt.dll_strncmp
test eax, eax
je 0x48dadb
cmp edi, 7
mov eax, 7
mov dword [esp + 4], str.system
cmovle eax, edi
mov dword [esp], esi
mov dword [esp + 8], eax
call sub.msvcrt.dll_strncmp
test eax, eax
jne 0x48dbca
cmp dword [ebp - 0x5ec], 1
jne 0x48db06
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp], str.Usage:_.system_COMMAND_n
mov edi, 1
add eax, 0x40
mov dword [esp + 4], eax
call sub.msvcrt.dll_fputs
jmp 0x48ed96
mov esi, dword [ebp - 0x5d0]
mov dword [esp + 4], 0x20
mov dword [esp], esi
call sub.msvcrt.dll_strchr
mov edx, 0x4a6a55
test eax, eax
mov eax, str.__s_
cmove eax, edx
mov dword [esp + 4], esi
mov esi, 2
mov dword [esp], eax
call fcn.00433b08
mov edi, eax
cmp esi, dword [ebp - 0x5ec]
jge 0x48db8d
mov ecx, dword [ebp + esi*4 - 0x5d4]
mov dword [esp + 4], 0x20
mov dword [esp], ecx
mov dword [ebp - 0x5f0], ecx
call sub.msvcrt.dll_strchr
mov ecx, dword [ebp - 0x5f0]
test eax, eax
mov edx, str._z__s
mov eax, str._z___s_
mov dword [esp + 4], edi
cmove eax, edx
inc esi
mov dword [esp + 8], ecx
mov dword [esp], eax
call fcn.00433b08
mov edi, eax
jmp 0x48db3e
mov dword [esp], edi
call sub.msvcrt.dll_system
mov dword [esp], edi
mov esi, eax
call fcn.00409a90
test esi, esi
je 0x48edbf
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp + 8], esi
xor edi, edi
mov dword [esp + 4], str.System_command_returns__d_n
add eax, 0x40
mov dword [esp], eax
call sub.msvcrt.dll_fprintf
jmp 0x48ed96
cmp edi, 5
mov eax, 5
mov dword [esp + 4], str.show
cmovle eax, edi
mov dword [esp], esi
mov dword [esp + 8], eax
call sub.msvcrt.dll_strncmp
test eax, eax
jne 0x48deb4
cmp dword [ebp - 0x5ec], 1
je 0x48dc1c
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp], str.Usage:_.show_n
mov edi, 1
add eax, 0x40
mov dword [esp + 4], eax
call sub.msvcrt.dll_fputs
jmp 0x48ed96
xor eax, eax
cmp dword [ebx + 4], 0
mov dword [esp + 8], str.echo
mov dword [esp + 4], str._12.12s:__s_n
setne al
mov eax, dword [eax*4 + 0x4a9944]
mov dword [esp + 0xc], eax
mov eax, dword [ebx + 0x28]
mov dword [esp], eax
call fcn.00487932
mov eax, dword [ebx + 0xc]
mov dword [esp + 8], 0x4a775e
mov dword [esp + 4], str._12.12s:__s_n
and eax, 3
mov eax, dword [eax*4 + 0x4a9944]
mov dword [esp + 0xc], eax
mov eax, dword [ebx + 0x28]
mov dword [esp], eax
call fcn.00487932
cmp dword [ebx + 0x34], 9
mov eax, 0x4a6faa
je 0x48dc93
cmp dword [ebx + 8], 0
mov edx, str.auto
mov eax, 0x4a6fb1
cmovne eax, edx
mov dword [esp + 0xc], eax
mov eax, dword [ebx + 0x28]
lea esi, [ebx + 0x3d0]
mov dword [esp + 8], str.explain
mov dword [esp + 4], str._12.12s:__s_n
lea edi, [ebx + 0x9c]
mov dword [esp], eax
call fcn.00487932
xor eax, eax
cmp dword [ebx + 0x44], 0
mov dword [esp + 8], str.headers
mov dword [esp + 4], str._12.12s:__s_n
setne al
mov eax, dword [eax*4 + 0x4a9944]
mov dword [esp + 0xc], eax
mov eax, dword [ebx + 0x28]
mov dword [esp], eax
call fcn.00487932
mov eax, dword [ebx + 0x34]
mov dword [esp + 8], str.mode
mov dword [esp + 4], str._12.12s:__s_n
mov eax, dword [eax*4 + 0x4aa160]
mov dword [esp + 0xc], eax
mov eax, dword [ebx + 0x28]
mov dword [esp], eax
call fcn.00487932
mov eax, dword [ebx + 0x28]
mov dword [esp + 8], str.nullvalue
mov dword [esp + 4], str._12.12s:
mov dword [esp], eax
call fcn.00487932
mov eax, dword [ebx + 0x28]
lea edx, [ebx + 0x3bc]
call fcn.004865dd
mov eax, dword [ebx + 0x28]
mov dword [esp], 0xa
mov dword [esp + 4], eax
call sub.msvcrt.dll_fputc
mov eax, esi
call fcn.00486020
test eax, eax
mov eax, str.stdout
mov dword [esp + 8], str.output
cmovne eax, esi
mov dword [esp + 4], str._12.12s:__s_n
lea esi, [ebx + 0x22c]
mov dword [esp + 0xc], eax
mov eax, dword [ebx + 0x28]
mov dword [esp], eax
call fcn.00487932
mov eax, dword [ebx + 0x28]
mov dword [esp + 8], str.colseparator
mov dword [esp + 4], str._12.12s:
mov dword [esp], eax
call fcn.00487932
mov eax, dword [ebx + 0x28]
lea edx, [ebx + 0x72]
call fcn.004865dd
mov eax, dword [ebx + 0x28]
mov dword [esp], 0xa
mov dword [esp + 4], eax
call sub.msvcrt.dll_fputc
mov eax, dword [ebx + 0x28]
mov dword [esp + 8], str.rowseparator
mov dword [esp + 4], str._12.12s:
mov dword [esp], eax
call fcn.00487932
mov eax, dword [ebx + 0x28]
lea edx, [ebx + 0x86]
call fcn.004865dd
mov eax, dword [ebx + 0x28]
mov dword [esp], 0xa
mov dword [esp + 4], eax
call sub.msvcrt.dll_fputc
xor eax, eax
cmp dword [ebx + 0x10], 0
mov dword [esp + 8], str.stats
mov dword [esp + 4], str._12.12s:__s_n
setne al
mov eax, dword [eax*4 + 0x4a9944]
mov dword [esp + 0xc], eax
mov eax, dword [ebx + 0x28]
mov dword [esp], eax
call fcn.00487932
mov eax, dword [ebx + 0x28]
mov dword [esp + 8], str.width
mov dword [esp + 4], str._12.12s:
mov dword [esp], eax
call fcn.00487932
mov eax, dword [edi]
test eax, eax
je 0x48de6b
mov dword [esp + 8], eax
mov eax, dword [ebx + 0x28]
add edi, 4
mov dword [esp + 4], 0x4a8919
mov dword [esp], eax
call sub.msvcrt.dll_fprintf
cmp esi, edi
jne 0x48de47
mov eax, dword [ebx + 0x28]
mov dword [esp], 0xa
mov dword [esp + 4], eax
call sub.msvcrt.dll_fputc
mov eax, dword [ebx + 0x4d4]
mov edx, 0x4a6527
mov dword [esp + 8], str.filename
mov dword [esp + 4], str._12.12s:__s_n
test eax, eax
cmove eax, edx
xor edi, edi
mov dword [esp + 0xc], eax
mov eax, dword [ebx + 0x28]
mov dword [esp], eax
call fcn.00487932
jmp 0x48ed96
cmp edi, 6
mov eax, 6
mov dword [esp + 4], str.stats
cmovle eax, edi
mov dword [esp], esi
mov dword [esp + 8], eax
call sub.msvcrt.dll_strncmp
test eax, eax
jne 0x48df30
cmp dword [ebp - 0x5ec], 2
jne 0x48def5
mov eax, dword [ebp - 0x5d0]
xor edi, edi
call fcn.004898c1
mov dword [ebx + 0x10], eax
jmp 0x48ed96
cmp dword [ebp - 0x5ec], 1
jne 0x48df0e
mov eax, dword [ebx]
mov edx, ebx
xor edi, edi
call fcn.00487226
jmp 0x48ed96
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp], str.Usage:_.stats__onoff__n
mov edi, 1
add eax, 0x40
mov dword [esp + 4], eax
call sub.msvcrt.dll_fputs
jmp 0x48ed96
cmp dword [ebp - 0x5f0], 0x74
sete byte [ebp - 0x5f4]
cmp byte [ebp - 0x5fc], 0
je 0x48df78
cmp byte [ebp - 0x5f4], 0
je 0x48df78
cmp edi, 7
mov eax, 7
mov dword [esp + 4], str.tables
cmovle eax, edi
mov dword [esp], esi
mov dword [esp + 8], eax
call sub.msvcrt.dll_strncmp
test eax, eax
je 0x48dfd9
jmp 0x48e409
cmp dword [ebp - 0x5f0], 0x69
jne 0x48e3fc
mov edx, 8
cmp edi, 8
mov dword [esp + 4], str.indices
mov eax, edx
mov dword [esp], esi
mov dword [ebp - 0x5f8], edx
cmovle eax, edi
mov dword [esp + 8], eax
call sub.msvcrt.dll_strncmp
test eax, eax
je 0x48dfd9
mov edx, 8
cmp edi, 8
mov dword [esp + 4], str.indexes
mov eax, edx
mov dword [esp], esi
cmovle eax, edi
mov dword [esp + 8], eax
call sub.msvcrt.dll_strncmp
test eax, eax
jne 0x48e4a5
xor edx, edx
mov eax, ebx
call fcn.00489989
lea eax, [ebp - 0x50c]
mov dword [esp + 0x10], 0
mov dword [esp + 8], 0xffffffff
mov dword [esp + 4], str.PRAGMA_database_list
mov dword [esp + 0xc], eax
mov eax, dword [ebx]
mov dword [esp], eax
call fcn.0046d028
test eax, eax
mov edi, eax
jne 0x48e159
cmp dword [ebp - 0x5f0], 0x74
jne 0x48e02a
mov dword [esp], str.SELECT_name_FROM_sqlite_master_WHERE_type_IN__table_view____AND_name_NOT_LIKE_sqlite______AND_name_LIKE__1
jmp 0x48e05c
cmp dword [ebp - 0x5ec], 2
jle 0x48e055
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp], str.Usage:_.indexes__LIKE_PATTERN__n
mov edi, 1
add eax, 0x40
mov dword [esp + 4], eax
call sub.msvcrt.dll_fputs
jmp 0x48ed96
mov dword [esp], str.SELECT_name_FROM_sqlite_master_WHERE_typeindex___AND_tbl_name_LIKE__1
call fcn.00433b08
mov dword [ebp - 0x5f4], 0
mov esi, eax
test esi, esi
je 0x48e0db
mov eax, dword [ebp - 0x50c]
mov dword [esp], eax
call fcn.0045a992
cmp eax, 0x64
jne 0x48e0db
mov eax, dword [ebp - 0x50c]
mov dword [esp + 4], 1
mov dword [esp], eax
call fcn.0042219f
test eax, eax
je 0x48e0d3
cmp dword [ebp - 0x5f4], 0
je 0x48e0d3
cmp dword [ebp - 0x5f0], 0x74
mov dword [esp + 0xc], eax
mov dword [esp + 8], eax
mov dword [esp + 4], esi
jne 0x48e0c5
mov dword [esp], str._z_UNION_ALL_SELECT__q.__name_FROM___w_.sqlite_master_WHERE_type_IN__table_view____AND_name_NOT_LIKE_sqlite______AND_name_LIKE__1
jmp 0x48e0cc
mov dword [esp], str._z_UNION_ALL_SELECT__q.__name_FROM___w_.sqlite_master_WHERE_typeindex___AND_tbl_name_LIKE__1
call fcn.00433b08
mov esi, eax
inc dword [ebp - 0x5f4]
jmp 0x48e06d
mov eax, dword [ebp - 0x50c]
mov dword [esp], eax
call fcn.004500a8
test esi, esi
je 0x48e12f
test eax, eax
jne 0x48e12f
mov dword [esp + 4], esi
mov dword [esp], str._z_ORDER_BY_1
call fcn.00433b08
test eax, eax
mov esi, eax
je 0x48e131
lea eax, [ebp - 0x50c]
mov dword [esp + 0x10], 0
mov dword [esp + 8], 0xffffffff
mov dword [esp + 4], esi
mov dword [esp + 0xc], eax
mov eax, dword [ebx]
mov dword [esp], eax
call fcn.0046d028
mov edi, eax
mov dword [esp], esi
call fcn.00409a90
test esi, esi
jne 0x48e155
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp], str.Error:_out_of_memory_n
add eax, 0x40
mov dword [esp + 4], eax
jmp 0x48b71d
test edi, edi
je 0x48e16b
mov eax, dword [ebx]
call fcn.00492f4e
mov dword [ebp - 0x5f4], eax
jmp 0x48eee8
cmp dword [ebp - 0x5ec], 1
mov eax, dword [ebp - 0x50c]
je 0x48e196
mov edx, dword [ebp - 0x5d0]
mov dword [esp + 0x10], 0xffffffff
mov dword [esp + 0xc], 0xffffffff
mov dword [esp + 8], edx
jmp 0x48e1ae
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0xffffffff
mov dword [esp + 8], 0x4a8b42
mov dword [esp + 4], 1
mov dword [esp], eax
xor esi, esi
call fcn.004272a3
mov dword [ebp - 0x5f0], 0
mov dword [ebp - 0x5ec], 0
mov eax, dword [ebp - 0x50c]
mov dword [esp], eax
call fcn.0045a992
cmp eax, 0x64
jne 0x48e27f
mov ecx, dword [ebp - 0x5f0]
cmp dword [ebp - 0x5ec], ecx
jl 0x48e220
lea eax, [ecx + ecx + 0xa]
mov dword [esp + 8], 0
mov dword [esp], esi
mov dword [ebp - 0x5f0], eax
shl eax, 2
mov dword [esp + 4], eax
call fcn.0041d53b
test eax, eax
je 0x48e255
mov esi, eax
mov eax, dword [ebp - 0x50c]
mov dword [esp + 4], 0
mov dword [esp], eax
call fcn.0042219f
mov dword [esp], 0x4a6a55
mov dword [esp + 4], eax
call fcn.00433b08
mov ecx, dword [ebp - 0x5ec]
test eax, eax
lea edx, [esi + ecx*4]
mov dword [edx], eax
jne 0x48e274
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp], str.Error:_out_of_memory_n
mov edi, 1
add eax, 0x40
mov dword [esp + 4], eax
call sub.msvcrt.dll_fputs
jmp 0x48e27f
inc dword [ebp - 0x5ec]
jmp 0x48e1d4
mov eax, dword [ebp - 0x50c]
mov dword [esp], eax
call fcn.004500a8
test eax, eax
je 0x48e29a
mov eax, dword [ebx]
call fcn.00492f4e
mov edi, eax
test edi, edi
jne 0x48e2a7
cmp dword [ebp - 0x5ec], 0
jg 0x48e2ae
xor eax, eax
jmp 0x48e3cd
mov dword [ebp - 0x5f4], 0
mov dword [ebp - 0x5f0], 0
mov eax, dword [ebp - 0x5f4]
mov eax, dword [esi + eax*4]
call fcn.00486020
cmp dword [ebp - 0x5f0], eax
cmovge eax, dword [ebp - 0x5f0]
inc dword [ebp - 0x5f4]
mov ecx, dword [ebp - 0x5f4]
cmp dword [ebp - 0x5ec], ecx
mov dword [ebp - 0x5f0], eax
jg 0x48e2c2
lea ecx, [eax + 2]
mov eax, 0x50
mov dword [ebp - 0x5f8], 0
cdq
idiv ecx
mov ecx, 1
test eax, eax
cmovg ecx, eax
mov eax, dword [ebp - 0x5ec]
lea eax, [eax + ecx - 1]
cdq
idiv ecx
mov dword [ebp - 0x5fc], eax
mov ecx, dword [ebp - 0x5fc]
cmp dword [ebp - 0x5f8], ecx
je 0x48e2a7
mov eax, dword [ebp - 0x5f8]
mov dword [ebp - 0x5f4], eax
mov ecx, dword [ebp - 0x5f4]
cmp dword [ebp - 0x5ec], ecx
jle 0x48e3af
mov eax, dword [ebp - 0x5f4]
mov edx, dword [ebp - 0x5fc]
mov ecx, 0x4a6527
cmp dword [ebp - 0x5f4], edx
mov edx, 0x4a6a69
mov eax, dword [esi + eax*4]
mov dword [esp + 4], str._s__s
cmovl edx, ecx
test eax, eax
mov dword [esp + 8], edx
cmove eax, ecx
mov dword [esp + 0x10], eax
mov eax, dword [ebp - 0x5f0]
mov dword [esp + 0xc], eax
mov eax, dword [ebx + 0x28]
mov dword [esp], eax
call fcn.00487932
mov ecx, dword [ebp - 0x5fc]
add dword [ebp - 0x5f4], ecx
jmp 0x48e347
mov eax, dword [ebx + 0x28]
mov dword [esp], 0xa
mov dword [esp + 4], eax
call sub.msvcrt.dll_fputc
inc dword [ebp - 0x5f8]
jmp 0x48e329
cmp dword [ebp - 0x5ec], eax
je 0x48e3ef
mov edx, dword [esi + eax*4]
mov dword [ebp - 0x5f0], eax
mov dword [esp], edx
call fcn.00409a90
mov eax, dword [ebp - 0x5f0]
inc eax
jmp 0x48e3cd
mov dword [esp], esi
call fcn.00409a90
jmp 0x48ed96
cmp dword [ebp - 0x5f0], 0x74
jne 0x48e4a5
mov dword [esp + 4], str.testcase
mov dword [esp], esi
call sub.msvcrt.dll_strcmp
test eax, eax
jne 0x48e4a5
mov eax, ebx
call fcn.00486875
mov eax, str.testcase_out.txt
call fcn.00492f7f
test eax, eax
mov dword [ebx + 0x28], eax
jne 0x48e451
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp], str.Error:_cannot_open_testcase_out.txt_n
add eax, 0x40
mov dword [esp + 4], eax
call sub.msvcrt.dll_fputs
cmp dword [ebp - 0x5ec], 1
lea eax, [ebx + 0x54]
je 0x48e486
mov edx, dword [ebp - 0x5d0]
mov dword [esp + 8], 0x4a6a55
xor edi, edi
mov dword [esp + 4], eax
mov dword [esp], 0x1e
mov dword [esp + 0xc], edx
call fcn.00421a93
jmp 0x48ed96
mov dword [esp + 8], 0x4a8b7b
mov dword [esp + 4], eax
xor edi, edi
mov dword [esp], 0x1e
call fcn.00421a93
jmp 0x48ed96
cmp edi, 7
jle 0x48e803
cmp byte [ebp - 0x5f4], 0
je 0x48e803
cmp edi, 9
mov eax, 9
mov dword [esp + 4], str.testctrl
cmovle eax, edi
mov dword [esp], esi
mov dword [esp + 8], eax
call sub.msvcrt.dll_strncmp
cmp dword [ebp - 0x5ec], 1
je 0x48e803
test eax, eax
jne 0x48e803
xor edx, edx
mov eax, ebx
or esi, 0xffffffff
call fcn.00489989
mov edi, dword [ebp - 0x5d0]
mov eax, edi
call fcn.00486020
mov edx, 0x4a98c0
mov ecx, eax
mov dword [esp + 8], ecx
mov eax, dword [edx]
mov dword [esp], edi
mov dword [ebp - 0x5f4], ecx
mov dword [ebp - 0x5f0], edx
mov dword [esp + 4], eax
call sub.msvcrt.dll_strncmp
test eax, eax
mov edx, dword [ebp - 0x5f0]
mov ecx, dword [ebp - 0x5f4]
jne 0x48e564
test esi, esi
jns 0x48e546
mov esi, dword [edx + 4]
jmp 0x48e564
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp + 8], edi
mov dword [esp + 4], str.ambiguous_option_name:___s__n
add eax, 0x40
mov dword [esp], eax
call fcn.00487932
jmp 0x48e573
add edx, 8
cmp edx, 0x4a9940
jne 0x48e50f
test esi, esi
jns 0x48e57c
mov eax, edi
call fcn.0048673a
mov esi, eax
lea eax, [esi - 5]
cmp eax, 0x14
jbe switch.0x0048e5a7
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp + 8], edi
xor edi, edi
mov dword [esp + 4], str.Error:_invalid_testctrl_option:__s_n
add eax, 0x40
mov dword [esp], eax
call fcn.00487932
jmp 0x48ed96
jmp dword [eax*4 + 0x4a8e68]
cmp dword [ebp - 0x5ec], 3
jne 0x48e609
mov eax, dword [ebp - 0x5cc]
mov dword [esp + 8], 0
xor edi, edi
mov dword [esp + 4], 0
mov dword [esp], eax
call sub.msvcrt.dll_strtol
mov dword [esp + 8], eax
mov eax, dword [ebx]
mov dword [esp], esi
mov dword [esp + 4], eax
call fcn.00484b52
mov dword [esp + 0xc], eax
mov dword [esp + 8], eax
mov eax, dword [ebx + 0x28]
mov dword [esp + 4], str._d__0x_08x__n
mov dword [esp], eax
call sub.msvcrt.dll_fprintf
jmp 0x48ed96
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp + 8], edi
xor edi, edi
mov dword [esp + 4], str.Error:_testctrl__s_takes_a_single_int_option_n
add eax, 0x40
mov dword [esp], eax
call fcn.00487932
jmp 0x48ed96
cmp dword [ebp - 0x5ec], 2
jne 0x48e65f
mov dword [esp], esi
xor edi, edi
call fcn.00484b52
mov dword [esp + 0xc], eax
mov dword [esp + 8], eax
mov eax, dword [ebx + 0x28]
mov dword [esp + 4], str._d__0x_08x__n
mov dword [esp], eax
call sub.msvcrt.dll_fprintf
jmp 0x48ed96
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp + 8], edi
xor edi, edi
mov dword [esp + 4], str.Error:_testctrl__s_takes_no_options_n
add eax, 0x40
mov dword [esp], eax
call fcn.00487932
jmp 0x48ed96
cmp dword [ebp - 0x5ec], 3
jne 0x48e6c8
mov eax, dword [ebp - 0x5cc]
xor edi, edi
call fcn.0048673a
mov dword [esp], 0xb
mov dword [esp + 4], eax
call fcn.00484b52
mov dword [esp + 0xc], eax
mov dword [esp + 8], eax
mov eax, dword [ebx + 0x28]
mov dword [esp + 4], str._d__0x_08x__n
mov dword [esp], eax
call sub.msvcrt.dll_fprintf
jmp 0x48ed96
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp + 8], edi
xor edi, edi
mov dword [esp + 4], str.Error:_testctrl__s_takes_a_single_unsigned_int_option_n
add eax, 0x40
mov dword [esp], eax
call fcn.00487932
jmp 0x48ed96
cmp dword [ebp - 0x5ec], 3
jne 0x48e72d
mov eax, dword [ebp - 0x5cc]
xor edi, edi
call fcn.004898c1
mov dword [esp], esi
mov dword [esp + 4], eax
call fcn.00484b52
mov dword [esp + 0xc], eax
mov dword [esp + 8], eax
mov eax, dword [ebx + 0x28]
mov dword [esp + 4], str._d__0x_08x__n
mov dword [esp], eax
call sub.msvcrt.dll_fprintf
jmp 0x48ed96
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp + 8], edi
xor edi, edi
mov dword [esp + 4], str.Error:_testctrl__s_takes_a_single_int_option_n
add eax, 0x40
mov dword [esp], eax
call fcn.00487932
jmp 0x48ed96
cmp dword [ebp - 0x5ec], 5
jne 0x48e7c1
mov eax, dword [ebp - 0x5c4]
call fcn.0048673a
mov esi, eax
mov eax, dword [ebp - 0x5c8]
mov edi, edx
call fcn.0048673a
mov dword [esp + 0xc], eax
mov eax, dword [ebp - 0x5cc]
mov dword [esp + 0x18], edi
mov dword [esp + 0x10], edx
xor edi, edi
mov dword [esp + 0x14], esi
mov dword [esp], 0x19
mov dword [esp + 8], eax
mov eax, dword [ebx]
mov dword [esp + 4], eax
call fcn.00484b52
mov dword [esp + 0xc], eax
mov dword [esp + 8], eax
mov eax, dword [ebx + 0x28]
mov dword [esp + 4], str._d__0x_08x__n
mov dword [esp], eax
call sub.msvcrt.dll_fprintf
jmp 0x48ed96
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp], str.Usage:_.testctrl_imposter_dbName_onoff_tnum_n
xor edi, edi
add eax, 0x40
mov dword [esp + 4], eax
call sub.msvcrt.dll_fputs
jmp 0x48ed96
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp + 8], edi
xor edi, edi
mov dword [esp + 4], str.Error:_CLI_support_for_testctrl__s_not_implemented_n
add eax, 0x40
mov dword [esp], eax
call fcn.00487932
jmp 0x48ed96
cmp byte [ebp - 0x600], 0
je 0x48e951
cmp byte [ebp - 0x5f4], 0
je 0x48e951
cmp edi, 8
mov eax, 8
mov dword [esp + 4], str.timeout
cmovle eax, edi
mov dword [esp], esi
mov dword [esp + 8], eax
call sub.msvcrt.dll_strncmp
test eax, eax
jne 0x48e880
mov dword [ebp - 0x5f0], eax
xor edx, edx
mov eax, ebx
call fcn.00489989
cmp dword [ebp - 0x5ec], 1
mov ecx, dword [ebp - 0x5f0]
je 0x48e86b
mov eax, dword [ebp - 0x5d0]
call fcn.0048673a
mov ecx, eax
mov eax, dword [ebx]
mov dword [esp + 4], ecx
xor edi, edi
mov dword [esp], eax
call fcn.0040be30
jmp 0x48ed96
cmp edi, 6
mov eax, 6
mov dword [esp + 4], str.timer
cmovle eax, edi
mov dword [esp], esi
mov dword [esp + 8], eax
call sub.msvcrt.dll_strncmp
test eax, eax
jne 0x48e95e
cmp dword [ebp - 0x5ec], 2
jne 0x48e92f
mov eax, dword [ebp - 0x5d0]
call fcn.004898c1
test eax, eax
mov dword [0x4ab4cc], eax
je 0x48edbf
cmp dword [0x4ab4a8], 0
jne 0x48edbf
call dword [sym.imp.KERNEL32.dll_GetCurrentProcess]
test eax, eax
mov dword [0x4ab4c8], eax
je 0x48edc3
mov dword [esp], str.Kernel32.dll
call dword [sym.imp.KERNEL32.dll_LoadLibraryA]
test eax, eax
push ecx
mov esi, eax
je 0x48edc3
mov dword [esp + 4], str.GetProcessTimes
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
test eax, eax
push edx
mov dword [0x4ab4a8], eax
push edx
jne 0x48edbf
mov dword [esp], esi
call dword [sym.imp.KERNEL32.dll_FreeLibrary]
push eax
jmp 0x48edc3
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp], str.Usage:_.timer_onoff_n
mov edi, 1
add eax, 0x40
mov dword [esp + 4], eax
call sub.msvcrt.dll_fputs
jmp 0x48ed96
cmp dword [ebp - 0x5f0], 0x74
jne 0x48ea1f
cmp edi, 6
mov eax, 6
mov dword [esp + 4], str.trace
cmovle eax, edi
mov dword [esp], esi
mov dword [esp + 8], eax
call sub.msvcrt.dll_strncmp
test eax, eax
jne 0x48ea7d
xor edx, edx
mov eax, ebx
call fcn.00489989
cmp dword [ebp - 0x5ec], 2
je 0x48e9b9
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp], str.Usage:_.trace_FILEoff_n
mov edi, 1
add eax, 0x40
mov dword [esp + 4], eax
call sub.msvcrt.dll_fputs
jmp 0x48ed96
mov eax, dword [ebx + 0x2c]
call fcn.0048684d
mov eax, dword [ebp - 0x5d0]
call fcn.00492f7f
test eax, eax
mov dword [ebx + 0x2c], eax
mov edx, dword [ebx]
jne 0x48e9fc
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
xor edi, edi
mov dword [esp + 4], 0
mov dword [esp], edx
call fcn.004057c2
jmp 0x48ed96
mov dword [esp + 0xc], eax
mov dword [esp + 8], 0x488c1b
xor edi, edi
mov dword [esp + 4], 1
mov dword [esp], edx
call fcn.004057c2
jmp 0x48ed96
cmp dword [ebp - 0x5f0], 0x76
jne 0x48ed26
cmp edi, 8
mov eax, 8
mov dword [esp + 4], str.version
cmovle eax, edi
mov dword [esp], esi
mov dword [esp + 8], eax
call sub.msvcrt.dll_strncmp
test eax, eax
jne 0x48ea8a
call fcn.004055db
mov esi, eax
xor edi, edi
call fcn.004055d1
mov dword [esp + 8], eax
mov eax, dword [ebx + 0x28]
mov dword [esp + 0xc], esi
mov dword [esp + 4], str.SQLite__s__s_n
mov dword [esp], eax
call fcn.00487932
jmp 0x48ed96
cmp dword [ebp - 0x5f0], 0x76
jne 0x48ed26
cmp edi, 8
mov eax, 8
mov dword [esp + 4], str.vfsinfo
cmovle eax, edi
mov dword [esp], esi
mov dword [esp + 8], eax
call sub.msvcrt.dll_strncmp
test eax, eax
jne 0x48eb76
mov edx, dword [ebx]
cmp dword [ebp - 0x5ec], 2
mov eax, str.main
cmove eax, dword [ebp - 0x5d0]
test edx, edx
je 0x48eb6f
lea ecx, [ebp - 0x50c]
mov dword [esp + 8], 0x1b
mov dword [esp + 4], eax
mov dword [esp], edx
mov dword [esp + 0xc], ecx
call fcn.004059b4
mov eax, dword [ebp - 0x50c]
test eax, eax
je 0x48eb6f
mov eax, dword [eax + 0x10]
mov dword [esp + 4], str.vfs.zName_________s__n
mov dword [esp + 8], eax
mov eax, dword [ebx + 0x28]
mov dword [esp], eax
call fcn.00487932
mov eax, dword [ebp - 0x50c]
mov eax, dword [eax]
mov dword [esp + 4], str.vfs.iVersion_____d_n
mov dword [esp + 8], eax
mov eax, dword [ebx + 0x28]
mov dword [esp], eax
call sub.msvcrt.dll_fprintf
mov eax, dword [ebp - 0x50c]
mov eax, dword [eax + 4]
mov dword [esp + 4], str.vfs.szOsFile_____d_n
mov dword [esp + 8], eax
mov eax, dword [ebx + 0x28]
mov dword [esp], eax
call sub.msvcrt.dll_fprintf
mov eax, dword [ebp - 0x50c]
mov eax, dword [eax + 8]
mov dword [esp + 4], str.vfs.mxPathname___d_n
mov dword [esp + 8], eax
mov eax, dword [ebx + 0x28]
mov dword [esp], eax
call sub.msvcrt.dll_fprintf
xor edi, edi
jmp 0x48ed96
cmp edi, 8
mov eax, 8
mov dword [esp + 4], str.vfslist
cmovle eax, edi
mov dword [esp], esi
mov dword [esp + 8], eax
call sub.msvcrt.dll_strncmp
test eax, eax
jne 0x48ec8b
mov eax, dword [ebx]
mov dword [ebp - 0x50c], 0
test eax, eax
je 0x48ebcf
lea edx, [ebp - 0x50c]
mov dword [esp + 8], 0x1b
mov dword [esp + 4], str.main
mov dword [esp], eax
mov dword [esp + 0xc], edx
call fcn.004059b4
mov dword [esp], 0
call fcn.0041723e
mov esi, eax
test esi, esi
je 0x48ec84
cmp esi, dword [ebp - 0x50c]
mov edx, str._______CURRENT
mov eax, 0x4a6527
cmove eax, edx
mov dword [esp + 0xc], eax
mov eax, dword [esi + 0x10]
mov dword [esp + 4], str.vfs.zName_________s__s_n
mov dword [esp + 8], eax
mov eax, dword [ebx + 0x28]
mov dword [esp], eax
call fcn.00487932
mov eax, dword [esi]
mov dword [esp + 4], str.vfs.iVersion_____d_n
mov dword [esp + 8], eax
mov eax, dword [ebx + 0x28]
mov dword [esp], eax
call sub.msvcrt.dll_fprintf
mov eax, dword [esi + 4]
mov dword [esp + 4], str.vfs.szOsFile_____d_n
mov dword [esp + 8], eax
mov eax, dword [ebx + 0x28]
mov dword [esp], eax
call sub.msvcrt.dll_fprintf
mov eax, dword [esi + 8]
mov dword [esp + 4], str.vfs.mxPathname___d_n
mov dword [esp + 8], eax
mov eax, dword [ebx + 0x28]
mov dword [esp], eax
call sub.msvcrt.dll_fprintf
cmp dword [esi + 0xc], 0
je 0x48ec7c
mov eax, dword [ebx + 0x28]
mov dword [esp], str.____________________________________n
mov dword [esp + 4], eax
call sub.msvcrt.dll_fputs
mov esi, dword [esi + 0xc]
jmp 0x48ebdd
xor edi, edi
jmp 0x48ed96
cmp edi, 8
mov eax, 8
mov dword [esp + 4], str.vfsname
cmovle eax, edi
mov dword [esp], esi
mov dword [esp + 8], eax
call sub.msvcrt.dll_strncmp
test eax, eax
jne 0x48ed75
mov edx, dword [ebx]
cmp dword [ebp - 0x5ec], 2
mov eax, str.main
cmove eax, dword [ebp - 0x5d0]
mov dword [ebp - 0x50c], 0
test edx, edx
je 0x48ed22
lea ecx, [ebp - 0x50c]
mov dword [esp + 8], 0xc
mov dword [esp + 4], eax
mov dword [esp], edx
mov dword [esp + 0xc], ecx
call fcn.004059b4
mov eax, dword [ebp - 0x50c]
test eax, eax
je 0x48ed22
mov dword [esp + 8], eax
mov eax, dword [ebx + 0x28]
mov dword [esp + 4], 0x4a6f21
mov dword [esp], eax
call fcn.00487932
mov eax, dword [ebp - 0x50c]
mov dword [esp], eax
call fcn.00409a90
xor edi, edi
jmp 0x48ed96
cmp dword [ebp - 0x5f0], 0x77
jne 0x48ed75
cmp edi, 6
mov eax, 6
mov dword [esp + 4], str.width
cmovg edi, eax
mov dword [esp], esi
mov dword [esp + 8], edi
call sub.msvcrt.dll_strncmp
test eax, eax
jne 0x48ed75
mov esi, 1
cmp esi, dword [ebp - 0x5ec]
jge 0x48edbf
mov eax, dword [ebp + esi*4 - 0x5d4]
call fcn.0048673a
mov dword [ebx + esi*4 + 0x98], eax
inc esi
jmp 0x48ed57
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp + 8], esi
mov edi, 1
mov dword [esp + 4], str.Error:_unknown_command_or_invalid_arguments:____s_._Enter__.help__for_help_n
add eax, 0x40
mov dword [esp], eax
call fcn.00487932
mov eax, dword [ebx + 0x20]
mov dword [ebp - 0x5f4], edi
test eax, eax
je 0x48eee8
dec eax
test eax, eax
mov dword [ebx + 0x20], eax
jne 0x48eee8
mov eax, ebx
call fcn.00486875
jmp 0x48eee8
xor edi, edi
jmp 0x48ed96
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp], str.Error:_timer_not_available_on_this_system._n
xor edi, edi
add eax, 0x40
mov dword [esp + 4], eax
call sub.msvcrt.dll_fputs
mov dword [0x4ab4cc], 0
jmp 0x48ed96
cmp dword [ebp - 0x5ec], 2
jne 0x48d936
jmp 0x48d83d
cmp dword [ebp - 0x5f0], 4
mov eax, 4
mov esi, dword [ebp - 0x5d0]
cmovle eax, dword [ebp - 0x5f0]
mov dword [esp + 4], 0x4a8313
mov dword [esp], esi
mov dword [esp + 8], eax
call sub.msvcrt.dll_strncmp
test eax, eax
jne 0x48ee3d
mov dword [ebx + 0x34], 7
mov dword [esp + 8], 0x4a8317
jmp 0x48ee7d
cmp dword [ebp - 0x5f0], 5
mov eax, dword [ebp - 0x5f0]
mov ecx, 5
mov dword [esp + 4], str.tabs
mov dword [esp], esi
cmovg eax, ecx
mov dword [esp + 8], eax
call sub.msvcrt.dll_strncmp
test eax, eax
jne 0x48ce8f
mov dword [ebx + 0x34], 2
mov dword [esp + 8], 0x4a8322
lea eax, [ebx + 0x72]
jmp 0x48ce7d
movzx eax, dl
mov dword [ebp - 0x5f4], ecx
mov byte [ebp - 0x5f0], dl
mov dword [esp], eax
call dword [sym.imp.msvcrt.dll_isalnum]
test eax, eax
mov ecx, dword [ebp - 0x5f4]
jne 0x48eec6
mov dl, byte [ebp - 0x5f0]
cmp dl, 0x5f
je 0x48eec6
xor eax, eax
cmp dl, 0x27
mov dword [ebp - 0x5ec], 1
sete al
add esi, eax
inc esi
inc ecx
jmp 0x48cd82
cmp cl, 0x27
lea esi, [edx + 1]
mov byte [eax + edx], cl
jne 0x48eee0
lea esi, [edx + 2]
mov byte [eax + edx + 1], 0x27
inc edi
mov edx, esi
jmp 0x48cec1
mov eax, dword [ebp - 0x5f4]
lea esp, [ebp - 0xc]
pop ebx
pop esi
pop edi
pop ebp
ret