Function at 0x100390d0
Capabilities:
Reference sql statements
Resolve function by parsing pe exports
Terminate process

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
mov eax, 0x13b4
call fcn.100e9670
mov eax, dword [0x1012007c]
xor eax, esp
mov dword [esp + 0x13b0], eax
mov eax, dword [ebp + 8]
push ebx
push esi
xor esi, esi
mov ebx, ecx
cmp byte [ebx + 1], 0
push edi
mov dword [esp + 0x14], eax
mov edi, 1
mov dword [esp + 0x10], esi
mov dword [esp + 0x18], esi
je 0x10039205
cmp esi, 0x32
jge 0x10039201
movzx ecx, byte [ebx + edi]
push ecx
call dword [sym.imp.MSVCR90.dll_isspace]
add esp, 4
test eax, eax
je 0x10039144
mov edi, edi
movzx edx, byte [ebx + edi + 1]
inc edi
push edx
call dword [sym.imp.MSVCR90.dll_isspace]
add esp, 4
test eax, eax
jne 0x10039130
mov cl, byte [ebx + edi]
lea eax, [ebx + edi]
test cl, cl
je 0x10039201
cmp cl, 0x27
je 0x10039194
cmp cl, 0x22
je 0x10039194
mov dword [esp + esi*4 + 0x78], eax
inc esi
mov dword [esp + 0x10], esi
mov esi, dword [sym.imp.MSVCR90.dll_isspace]
jmp 0x10039170
movzx eax, byte [eax]
push eax
call esi
add esp, 4
test eax, eax
jne 0x10039187
inc edi
cmp byte [ebx + edi], 0
lea eax, [ebx + edi]
jne 0x10039170
cmp byte [ebx + edi], 0
je 0x100391e6
mov byte [ebx + edi], 0
inc edi
jmp 0x100391e6
inc edi
lea eax, [ebx + edi]
mov dword [esp + esi*4 + 0x78], eax
inc esi
cmp byte [eax], 0
movsx ecx, cl
mov dword [esp + 0x10], esi
je 0x100391d4
lea esp, [esp]
mov al, byte [eax]
movsx edx, al
cmp edx, ecx
je 0x100391d4
cmp al, 0x5c
jne 0x100391ca
cmp ecx, 0x22
jne 0x100391ca
cmp byte [ebx + edi + 1], 0
je 0x100391ca
inc edi
inc edi
cmp byte [ebx + edi], 0
lea eax, [ebx + edi]
jne 0x100391b0
movsx eax, byte [ebx + edi]
cmp eax, ecx
jne 0x100391e1
mov byte [ebx + edi], 0
inc edi
cmp ecx, 0x22
jne 0x100391f7
mov ecx, dword [esp + 0x10]
mov esi, dword [esp + ecx*4 + 0x74]
call fcn.10038a20
mov esi, dword [esp + 0x10]
cmp byte [ebx + edi], 0
jne 0x10039113
test esi, esi
jne 0x1003921c
xor eax, eax
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x13b0]
xor ecx, esp
call fcn.100e7da2
mov esp, ebp
pop ebp
ret
mov esi, dword [esp + 0x78]
mov al, byte [esi]
mov edi, esi
test al, al
je 0x1003922e
inc edi
cmp byte [edi], 0
jne 0x10039228
mov ebx, dword [sym.imp.MSVCR90.dll_strncmp]
movsx eax, al
sub edi, esi
and edi, 0x3fffffff
mov dword [esp + 0x24], eax
cmp eax, 0x62
jne 0x100394be
cmp edi, 3
jl 0x1003b325
push edi
push str.backup
push esi
call ebx
add esp, 0xc
test eax, eax
jne 0x1003944b
mov edx, dword [esp + 0x10]
lea ecx, [eax + 1]
xor esi, esi
xor edi, edi
cmp edx, ecx
jle 0x1003929e
jmp 0x10039280
mov eax, dword [esp + ecx*4 + 0x78]
cmp byte [eax], 0x2d
je 0x100392a5
test esi, esi
je 0x10039293
test edi, edi
jne 0x100392e2
mov edi, esi
inc ecx
cmp ecx, edx
mov esi, eax
jl 0x10039280
test esi, esi
jne 0x10039314
push str.missing_FILENAME_argument_on_.backup_n
jmp 0x100392e7
inc eax
cmp byte [eax], 0x2d
je 0x100392a5
mov edx, dword [esp + ecx*4 + 0x78]
push edx
push str.unknown_option:__s_n
call dword [sym.imp.MSVCR90.dll___iob_func]
add eax, 0x40
push eax
call dword [sym.imp.MSVCR90.dll_fprintf]
add esp, 0xc
mov eax, 1
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x13b0]
xor ecx, esp
call fcn.100e7da2
mov esp, ebp
pop ebp
ret
push str.too_many_arguments_to_.backup_n
call dword [sym.imp.MSVCR90.dll___iob_func]
add eax, 0x40
push eax
call dword [sym.imp.MSVCR90.dll_fprintf]
add esp, 8
mov eax, 1
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x13b0]
xor ecx, esp
call fcn.100e7da2
mov esp, ebp
pop ebp
ret
test edi, edi
jne 0x1003931d
mov edi, str.main
push 0
push 6
lea eax, [esp + 0x5c]
push eax
push esi
call fcn.100a3620
add esp, 0x10
test eax, eax
je 0x10039359
push esi
push str.Error:_cannot_open___s__n
call dword [sym.imp.MSVCR90.dll___iob_func]
add eax, 0x40
push eax
call dword [sym.imp.MSVCR90.dll_fprintf]
mov eax, dword [esp + 0x60]
push 0
call fcn.100a1bc0
add esp, 0x10
jmp 0x100392fa
mov esi, dword [esp + 0x14]
call fcn.10038970
mov ecx, dword [esi]
mov ebx, dword [esp + 0x54]
push edi
push ecx
push str.main
push ebx
call fcn.10059100
mov esi, eax
add esp, 0x10
test esi, esi
jne 0x100393b0
push ebx
call fcn.100a2b10
add esp, 4
push eax
push str.Error:__s_n
call dword [sym.imp.MSVCR90.dll___iob_func]
add eax, 0x40
push eax
call dword [sym.imp.MSVCR90.dll_fprintf]
push esi
mov eax, ebx
call fcn.100a1bc0
add esp, 0x10
jmp 0x100392fa
push 0x64
push esi
call fcn.10059470
mov edi, eax
add esp, 8
test edi, edi
je 0x100393b0
push esi
call fcn.10059ec0
add esp, 4
cmp edi, 0x65
jne 0x100393fc
push 0
mov eax, ebx
mov dword [esp + 0x1c], 0
call fcn.100a1bc0
mov eax, dword [esp + 0x1c]
add esp, 4
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x13b0]
xor ecx, esp
call fcn.100e7da2
mov esp, ebp
pop ebp
ret
push ebx
call fcn.100a2b10
add esp, 4
push eax
push str.Error:__s_n
call dword [sym.imp.MSVCR90.dll___iob_func]
add eax, 0x40
push eax
call dword [sym.imp.MSVCR90.dll_fprintf]
add esp, 0xc
push 0
mov eax, ebx
mov dword [esp + 0x1c], 1
call fcn.100a1bc0
mov eax, dword [esp + 0x1c]
add esp, 4
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x13b0]
xor ecx, esp
call fcn.100e7da2
mov esp, ebp
pop ebp
ret
push edi
push str.bail
push esi
call ebx
add esp, 0xc
test eax, eax
jne 0x1003948b
mov edx, dword [esp + 0x10]
add edx, 0xfffffffe
jne 0x1003948b
mov esi, dword [esp + 0x7c]
call fcn.10038c50
mov dword [0x10123724], eax
mov eax, dword [esp + 0x18]
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x13b0]
xor ecx, esp
call fcn.100e7da2
mov esp, ebp
pop ebp
ret
push edi
push str.breakpoint
push esi
call ebx
add esp, 0xc
test eax, eax
jne 0x1003b325
inc dword [0x10123734]
mov eax, dword [esp + 0x18]
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x13b0]
xor ecx, esp
call fcn.100e7da2
mov esp, ebp
pop ebp
ret
cmp eax, 0x64
jne 0x10039701
cmp edi, 1
jle 0x100395b3
push edi
push str.databases
push esi
call ebx
add esp, 0xc
test eax, eax
jne 0x100395b3
cmp dword [esp + 0x10], 1
jne 0x100395b3
mov ebx, dword [esp + 0x14]
mov esi, ebx
mov dword [esp + 0x50], eax
call fcn.10038970
mov edx, dword [ebx]
mov ecx, 0x189
lea edi, [esp + 0x140]
rep movsd dword es:[edi], dword [esi]
lea eax, [esp + 0x50]
push eax
lea ecx, [esp + 0x144]
push ecx
push 0x10037530
mov edi, 1
push str.PRAGMA_database_list_
push edx
mov dword [esp + 0x178], edi
mov dword [esp + 0x170], edi
mov dword [esp + 0x194], 3
mov dword [esp + 0x198], 0xf
mov dword [esp + 0x19c], 0x3a
mov dword [esp + 0x160], 0
call fcn.10082810
mov esi, dword [esp + 0x64]
add esp, 0x14
test esi, esi
je 0x1003b546
push esi
push str.Error:__s_n
call dword [sym.imp.MSVCR90.dll___iob_func]
add eax, 0x40
push eax
call dword [sym.imp.MSVCR90.dll_fprintf]
push esi
call fcn.1003fd70
add esp, 0x10
mov dword [esp + 0x18], edi
mov eax, edi
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x13b0]
xor ecx, esp
call fcn.100e7da2
mov esp, ebp
pop ebp
ret
push edi
push str.dump
push esi
call ebx
add esp, 0xc
test eax, eax
jne 0x1003b325
cmp dword [esp + 0x10], 3
jge 0x1003b325
mov esi, dword [esp + 0x14]
call fcn.10038970
mov eax, dword [esi + 0x10]
mov edi, dword [sym.imp.MSVCR90.dll_fprintf]
push str.PRAGMA_foreign_keysOFF__n
push eax
call edi
mov ecx, dword [esi + 0x10]
push str.BEGIN_TRANSACTION__n
push ecx
call edi
mov edx, dword [esi]
xor edi, edi
push edi
push edi
push edi
push str.SAVEPOINT_dump__PRAGMA_writable_schemaON
push edx
mov dword [esi + 0x20], edi
call fcn.10082810
mov ebx, dword [esp + 0x34]
add esp, 0x24
mov dword [esi + 0x18], edi
cmp ebx, 1
jne 0x10039640
mov eax, str.SELECT_name__type__sql_FROM_sqlite_master_WHERE_sql_NOT_NULL_AND_typetable_AND_name_sqlite_sequence
call fcn.10038860
mov eax, str.SELECT_name__type__sql_FROM_sqlite_master_WHERE_namesqlite_sequence
call fcn.10038860
push edi
push esi
mov edx, str.SELECT_sql_FROM_sqlite_master_WHERE_sql_NOT_NULL_AND_type_IN__index_trigger_view_
call fcn.10037750
add esp, 8
jmp 0x10039682
mov edi, 1
cmp ebx, edi
jle 0x10039682
lea esp, [esp]
mov eax, dword [esp + edi*4 + 0x78]
mov dword [0x10123730], eax
mov eax, str.SELECT_name__type__sql_FROM_sqlite_master_WHERE_tbl_name_LIKE_shellstatic___AND_typetable__AND_sql_NOT_NULL
call fcn.10038860
push 0
push esi
mov edx, str.SELECT_sql_FROM_sqlite_master_WHERE_sql_NOT_NULL__AND_type_IN__index_trigger_view___AND_tbl_name_LIKE_shellstatic__
call fcn.10037750
inc edi
add esp, 8
cmp edi, ebx
mov dword [0x10123730], 0
jl 0x10039650
cmp dword [esi + 0x20], 0
je 0x100396a1
mov ecx, dword [esi + 0x10]
push str.PRAGMA_writable_schemaOFF__n
push ecx
call dword [sym.imp.MSVCR90.dll_fprintf]
add esp, 8
mov dword [esi + 0x20], 0
mov edx, dword [esi]
push 0
push 0
push 0
push str.PRAGMA_writable_schemaOFF_
push edx
call fcn.10082810
mov eax, dword [esi]
push 0
push 0
push 0
push str.RELEASE_dump_
push eax
call fcn.10082810
add esp, 0x28
cmp dword [esi + 0x18], 0
mov eax, str.ROLLBACK_____due_to_errors_n
jne 0x100396da
mov eax, str.COMMIT__n
mov ecx, dword [esi + 0x10]
push eax
push ecx
call dword [sym.imp.MSVCR90.dll_fprintf]
mov eax, dword [esp + 0x20]
add esp, 8
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x13b0]
xor ecx, esp
call fcn.100e7da2
mov esp, ebp
pop ebp
ret
cmp eax, 0x65
jne 0x1003988f
push edi
push str.echo
push esi
call ebx
add esp, 0xc
test eax, eax
jne 0x1003974c
mov edx, dword [esp + 0x10]
add edx, 0xfffffffe
jne 0x1003974c
mov esi, dword [esp + 0x7c]
call fcn.10038c50
mov ecx, dword [esp + 0x14]
mov dword [ecx + 4], eax
mov eax, dword [esp + 0x18]
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x13b0]
xor ecx, esp
call fcn.100e7da2
mov esp, ebp
pop ebp
ret
push edi
push 0x10104330
push esi
call ebx
add esp, 0xc
test eax, eax
jne 0x1003977f
cmp dword [esp + 0x10], 1
jle 0x1003a692
mov eax, dword [esp + 0x7c]
call fcn.10038af0
test eax, eax
je 0x1003a692
push eax
call dword [sym.imp.MSVCR90.dll_exit]
push edi
push str.explain
push esi
call ebx
add esp, 0xc
test eax, eax
jne 0x1003b325
mov eax, dword [esp + 0x10]
cmp eax, 3
jge 0x1003b325
cmp eax, 2
jl 0x100397b7
mov esi, dword [esp + 0x7c]
call fcn.10038c50
cmp eax, 1
jne 0x10039839
mov esi, dword [esp + 0x14]
cmp dword [esi + 0x374], 0
jne 0x100397f4
mov eax, esi
mov ecx, dword [eax + 0x24]
mov edx, dword [eax + 0x1c]
mov dword [eax + 0x37c], ecx
lea esi, [eax + 0x40]
lea edi, [eax + 0x380]
mov ecx, 0x64
rep movsd dword es:[edi], dword [esi]
mov dword [eax + 0x374], 1
mov dword [eax + 0x378], edx
mov esi, eax
push 0x64
lea edi, [esi + 0x40]
push 0
push edi
mov dword [esi + 0x1c], 8
mov dword [esi + 0x24], 1
call sub.MSVCR90.dll_memset
mov ecx, 4
mov eax, 0xd
mov dword [edi], ecx
mov dword [esi + 0x44], eax
mov dword [esi + 0x48], ecx
mov dword [esi + 0x4c], ecx
mov dword [esi + 0x50], ecx
mov dword [esi + 0x54], eax
mov dword [esi + 0x58], 2
mov dword [esi + 0x5c], eax
jmp 0x1003b543
mov eax, dword [esp + 0x14]
cmp dword [eax + 0x374], 0
je 0x1003b546
mov ecx, dword [eax + 0x37c]
mov edx, dword [eax + 0x378]
mov dword [eax + 0x24], ecx
lea esi, [eax + 0x380]
lea edi, [eax + 0x40]
mov ecx, 0x64
mov dword [eax + 0x374], 0
mov dword [eax + 0x1c], edx
mov eax, dword [esp + 0x18]
rep movsd dword es:[edi], dword [esi]
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x13b0]
xor ecx, esp
call fcn.100e7da2
mov esp, ebp
pop ebp
ret
cmp eax, 0x68
jne 0x10039943
push edi
push str.header
push esi
call ebx
add esp, 0xc
test eax, eax
je 0x100398b8
push edi
push str.headers
push esi
call ebx
add esp, 0xc
test eax, eax
jne 0x100398ea
mov edx, dword [esp + 0x10]
add edx, 0xfffffffe
jne 0x100398ea
mov esi, dword [esp + 0x7c]
call fcn.10038c50
mov ecx, dword [esp + 0x14]
mov dword [ecx + 0x24], eax
mov eax, dword [esp + 0x18]
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x13b0]
xor ecx, esp
call fcn.100e7da2
mov esp, ebp
pop ebp
ret
push edi
push str.help
push esi
call ebx
add esp, 0xc
test eax, eax
jne 0x1003b325
mov esi, dword [sym.imp.MSVCR90.dll___iob_func]
push str..backup__DB__FILE______Backup_DB__default__main___to_FILE_n.bail_ONOFF___________Stop_after_hitting_an_error.__Default_OFF_n.databases_____________List_names_and_files_of_attached_databases_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.exit__________________Exit_this_program_n.explain__ONOFF_______Turn_output_mode_suitable_for_EXPLAIN_on_or_off._n_________________________With_no_args__it_turns_EXPLAIN_on._n.header_s__ONOFF______Turn_display_of_headers_on_or_off_n.help__________________Show_this_message_n.import_FILE_TABLE_____Import_data_from_FILE_into_TABLE_n.indices__TABLE________Show_names_of_all_indices_n_________________________If_TABLE_specified__only_show_indices_for_tables_n_________________________matching_LIKE_pattern_TABLE._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_________________________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_string_n_________________________tabs_____Tab_separated_values_n_________________________tcl______TCL_list_elements_n.nullvalue_STRING______Use_STRING_in_place_of_NULL_values_n.output_FILENAME_______Send_output_to_FILENAME_n.output_stdout_________Send_output_to_the_screen_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.schema__TABLE_________Show_the_CREATE_statements_n_________________________If_TABLE_specified__only_show_tables_matching_n_________________________LIKE_pattern_TABLE._n.separator_STRING______Change_separator_used_by_output_mode_and_.import_n.show__________________Show_the_current_values_for_various_settings_n.stats_ONOFF__________Turn_stats_on_or_off_n.tables__TABLE_________List_names_of_tables_n_________________________If_TABLE_specified__only_list_tables_matching_n_________________________LIKE_pattern_TABLE._n.timeout_MS____________Try_opening_locked_tables_for_MS_milliseconds_n.trace_FILEoff________Output_each_SQL_statement_as_it_is_run_n.vfsname__AUX__________Print_the_name_of_the_VFS_stack_n.width_NUM1_NUM2_...___Set_column_widths_for__column__mode_n
push 0x1010372c
call esi
mov edi, dword [sym.imp.MSVCR90.dll_fprintf]
add eax, 0x40
push eax
call edi
add esp, 0xc
call fcn.10036490
test eax, eax
je 0x1003b546
push str..timer_ONOFF__________Turn_the_CPU_timer_measurement_on_or_off_n
push 0x1010372c
call esi
add eax, 0x40
push eax
call edi
jmp 0x1003b543
cmp eax, 0x69
jne 0x10039ff0
push edi
push str.import
push esi
call ebx
add esp, 0xc
test eax, eax
jne 0x10039ee8
cmp dword [esp + 0x10], 3
jne 0x10039ee8
mov ebx, dword [esp + 0x14]
xor edi, edi
mov dword [esp + 0x10], edi
mov esi, ebx
mov dword [0x1012372c], edi
mov dword [esp + 0x2c], eax
mov dword [esp + 0x30], eax
mov dword [esp + 0x34], eax
mov dword [esp + 0x38], eax
mov dword [esp + 0x3c], eax
mov dword [esp + 0x40], eax
mov dword [esp + 0x44], eax
mov dword [esp + 0x48], eax
call fcn.10038970
lea esi, [ebx + 0x2c]
mov ecx, esi
call fcn.10036860
cmp eax, edi
jne 0x100399ba
push str.Error:_non_null_separator_required_for_import_n
jmp 0x100392e7
cmp eax, 1
jle 0x100399c9
push str.Error:_multi_character_separators_not_allowed_for_import_n
jmp 0x100392e7
mov edi, dword [esp + 0x7c]
cmp byte [edi], 0x7c
mov dword [esp + 0x2c], edi
mov dword [esp + 0x40], 1
jne 0x10039a02
lea edx, [edi + 1]
push 0x101043c4
push edx
call sub.MSVCR90.dll__popen
mov dword [esp + 0x38], eax
mov dword [esp + 0x34], str._pipe_
mov dword [esp + 0x24], sub.MSVCR90.dll__pclose
jmp 0x10039a1b
push 0x101043d0
push edi
call dword [sym.imp.MSVCR90.dll_fopen]
mov dword [esp + 0x38], eax
mov eax, dword [sym.imp.MSVCR90.dll_fclose]
mov dword [esp + 0x24], eax
add esp, 8
cmp dword [esp + 0x30], 0
jne 0x10039a30
push edi
push str.Error:_cannot_open___s__n
jmp 0x100392b5
mov edx, dword [esp + 0x80]
movsx ecx, byte [esi]
push edx
push str.SELECT__FROM__s
mov dword [esp + 0x50], ecx
call fcn.100414f0
mov edi, eax
add esp, 8
test edi, edi
jne 0x10039a75
push str.Error:_out_of_memory_n
call dword [sym.imp.MSVCR90.dll___iob_func]
add eax, 0x40
push eax
call dword [sym.imp.MSVCR90.dll_fprintf]
mov eax, dword [esp + 0x38]
push eax
call dword [esp + 0x28]
jmp 0x100392c5
mov ecx, edi
call fcn.10036860
mov edx, dword [ebx]
push 0
lea ecx, [esp + 0x14]
push ecx
push 0xffffffffffffffff
push edi
push edx
mov dword [esp + 0x3c], eax
call fcn.10087ca0
mov esi, eax
add esp, 0x14
test esi, esi
je 0x10039bd3
mov eax, dword [0x10123728]
push eax
call fcn.100a2b10
add esp, 4
call fcn.1007acc0
test eax, eax
jne 0x10039bd3
mov ecx, dword [esp + 0x80]
push ecx
push str.CREATE_TABLE__s
call fcn.100414f0
mov esi, eax
add esp, 8
lea eax, [esp + 0x2c]
mov bl, 0x28
call fcn.10038f30
test eax, eax
je 0x10039b91
mov edx, dword [esp + 0x34]
push edx
movsx eax, bl
push eax
push esi
push str._z_c_n____s__TEXT
call fcn.100414f0
mov ecx, dword [esp + 0x54]
add esp, 0x10
mov esi, eax
mov bl, 0x2c
cmp ecx, dword [esp + 0x48]
jne 0x10039b16
lea eax, [esp + 0x2c]
call fcn.10038f30
test eax, eax
jne 0x10039ae4
push esi
push str._z_n_
call fcn.100414f0
mov ebx, dword [esp + 0x1c]
mov edx, dword [ebx]
push 0
push 0
mov esi, eax
push 0
push esi
push edx
call fcn.10082810
push esi
mov dword [esp + 0x38], eax
call fcn.1003fd70
add esp, 0x20
cmp dword [esp + 0x18], 0
je 0x10039bbc
mov eax, dword [0x10123728]
push eax
call fcn.100a2b10
mov ecx, dword [esp + 0x84]
add esp, 4
push eax
push ecx
push str.CREATE_TABLE__s_...__failed:__s_n
call dword [sym.imp.MSVCR90.dll___iob_func]
add eax, 0x40
push eax
call dword [sym.imp.MSVCR90.dll_fprintf]
mov edx, dword [esp + 0x44]
push edx
call fcn.1003fd70
mov eax, dword [esp + 0x44]
push eax
call dword [esp + 0x34]
add esp, 0x18
jmp 0x100392c8
push esi
call fcn.1003fd70
mov edx, dword [esp + 0x38]
push edx
call fcn.1003fd70
mov eax, dword [esp + 0x38]
push eax
call dword [esp + 0x28]
mov ecx, dword [esp + 0x38]
add esp, 0xc
push ecx
push str._s:_empty_file_n
jmp 0x100392b5
mov edx, dword [ebx]
push 0
lea ecx, [esp + 0x14]
push ecx
push 0xffffffffffffffff
push edi
push edx
call fcn.10087ca0
add esp, 0x14
mov esi, eax
push edi
call fcn.1003fd70
mov eax, dword [esp + 0x14]
add esp, 4
test esi, esi
je 0x10039c26
test eax, eax
je 0x10039bf1
push eax
call fcn.1005ea80
add esp, 4
mov eax, dword [0x10123728]
push eax
call fcn.100a2b10
add esp, 4
push eax
push str.Error:__s_n
call dword [sym.imp.MSVCR90.dll___iob_func]
add eax, 0x40
push eax
call dword [sym.imp.MSVCR90.dll_fprintf]
mov ecx, dword [esp + 0x3c]
push ecx
call dword [esp + 0x2c]
add esp, 0x10
jmp 0x100392c8
test eax, eax
je 0x10039c30
movzx edi, word [eax + 0x2c]
jmp 0x10039c32
xor edi, edi
push eax
call fcn.1005ea80
add esp, 4
mov dword [esp + 0x10], 0
test edi, edi
je 0x10039205
mov ebx, dword [esp + 0x28]
lea edx, [edi + ebx]
lea eax, [edx + edx + 0x14]
push eax
call fcn.1003fac0
mov esi, eax
add esp, 4
test esi, esi
jne 0x10039c88
push str.Error:_out_of_memory_n
call dword [sym.imp.MSVCR90.dll___iob_func]
add eax, 0x40
push eax
call dword [sym.imp.MSVCR90.dll_fprintf]
mov ecx, dword [esp + 0x38]
push ecx
call dword [esp + 0x28]
jmp 0x100392c5
mov edx, dword [esp + 0x80]
push edx
push str.INSERT_INTO___w__VALUES__
push esi
add ebx, 0x14
push ebx
call fcn.10041580
add esp, 0x10
mov ecx, esi
call fcn.10036860
cmp edi, 1
jle 0x10039cc0
lea ecx, [edi - 1]
mov byte [eax + esi], 0x2c
inc eax
mov byte [eax + esi], 0x3f
inc eax
sub ecx, 1
jne 0x10039cb1
mov ecx, dword [esp + 0x14]
mov byte [eax + esi], 0x29
mov byte [eax + esi + 1], 0
mov edx, dword [ecx]
push 0
lea eax, [esp + 0x14]
push eax
push 0xffffffffffffffff
push esi
push edx
call fcn.10087ca0
mov ebx, eax
push esi
mov dword [esp + 0x30], ebx
call fcn.1003fd70
add esp, 0x18
test ebx, ebx
je 0x10039d3b
mov eax, dword [0x10123728]
push eax
call fcn.100a2b10
add esp, 4
push eax
push str.Error:__s_n
call dword [sym.imp.MSVCR90.dll___iob_func]
add eax, 0x40
push eax
call dword [sym.imp.MSVCR90.dll_fprintf]
mov eax, dword [esp + 0x1c]
add esp, 0xc
test eax, eax
je 0x10039d2a
push eax
call fcn.1005ea80
add esp, 4
mov ecx, dword [esp + 0x30]
push ecx
call dword [esp + 0x20]
add esp, 4
jmp 0x100392c8
mov ecx, dword [0x10123728]
movzx eax, byte [ecx + 0x3e]
mov dword [esp + 0x28], eax
test eax, eax
je 0x10039d61
push 0
push 0
push 0
push str.BEGIN
push ecx
call fcn.10082810
add esp, 0x14
mov edx, dword [esp + 0x40]
xor esi, esi
mov dword [esp + 0x20], edx
test edi, edi
jle 0x10039dea
nop
lea eax, [esp + 0x2c]
call fcn.10038f30
test eax, eax
jne 0x10039d81
test esi, esi
je 0x10039dea
push 0xffffffffffffffff
push 0xffffffffffffffff
push eax
mov eax, dword [esp + 0x1c]
lea ebx, [esi + 1]
push ebx
push eax
call fcn.100600a0
lea ecx, [edi - 1]
add esp, 0x14
cmp esi, ecx
jge 0x10039de5
mov edx, dword [esp + 0x48]
cmp dword [esp + 0x44], edx
je 0x10039de5
mov eax, dword [esp + 0x20]
mov ecx, dword [esp + 0x2c]
push ebx
push edi
push eax
push ecx
push str._s:_d:_expected__d_columns_but_found__d___filling_the_rest_with_NULL_n
call dword [sym.imp.MSVCR90.dll___iob_func]
add eax, 0x40
push eax
call dword [sym.imp.MSVCR90.dll_fprintf]
mov esi, ebx
add esp, 0x18
cmp esi, edi
jge 0x10039de5
mov edx, dword [esp + 0x10]
push esi
push edx
call fcn.10060070
inc esi
add esp, 8
cmp esi, edi
jl 0x10039dd2
inc esi
cmp esi, edi
jl 0x10039d70
mov ebx, dword [esp + 0x44]
cmp ebx, dword [esp + 0x48]
jne 0x10039e2c
lea eax, [esp + 0x2c]
call fcn.10038f30
mov ebx, dword [esp + 0x44]
inc esi
cmp ebx, dword [esp + 0x48]
je 0x10039df4
mov eax, dword [esp + 0x20]
mov ecx, dword [esp + 0x2c]
push esi
push edi
push eax
push ecx
push str._s:_d:_expected__d_columns_but_found__d___extras_ignored_n
call dword [sym.imp.MSVCR90.dll___iob_func]
add eax, 0x40
push eax
call dword [sym.imp.MSVCR90.dll_fprintf]
add esp, 0x18
cmp esi, edi
jl 0x10039e81
mov edx, dword [esp + 0x10]
push edx
call fcn.1005f590
mov eax, dword [esp + 0x14]
push eax
call fcn.1005eb20
add esp, 8
mov dword [esp + 0x18], eax
test eax, eax
je 0x10039e81
mov ecx, dword [0x10123728]
push ecx
call fcn.100a2b10
mov edx, dword [esp + 0x24]
add esp, 4
push eax
mov eax, dword [esp + 0x30]
push edx
push eax
push str._s:_d:_INSERT_failed:__s_n
call dword [sym.imp.MSVCR90.dll___iob_func]
add eax, 0x40
push eax
call dword [sym.imp.MSVCR90.dll_fprintf]
add esp, 0x14
cmp ebx, 0xffffffff
jne 0x10039d61
mov ecx, dword [esp + 0x30]
push ecx
call dword [esp + 0x20]
mov edx, dword [esp + 0x38]
push edx
call fcn.1003fd70
mov eax, dword [esp + 0x18]
push eax
call fcn.1005ea80
add esp, 0xc
cmp dword [esp + 0x28], 0
je 0x1003b546
mov ecx, dword [0x10123728]
push 0
push 0
push 0
push str.COMMIT
push ecx
call fcn.10082810
mov eax, dword [esp + 0x2c]
add esp, 0x14
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x13b0]
xor ecx, esp
call fcn.100e7da2
mov esp, ebp
pop ebp
ret
push edi
push str.indices
push esi
call ebx
add esp, 0xc
test eax, eax
jne 0x1003b325
cmp dword [esp + 0x10], 3
jge 0x1003b325
mov ebx, dword [esp + 0x14]
mov esi, ebx
mov dword [esp + 0x24], eax
call fcn.10038970
mov ecx, 0x189
lea edi, [esp + 0xd90]
rep movsd dword es:[edi], dword [esi]
xor edi, edi
cmp dword [esp + 0x10], 1
mov dword [esp + 0xdb4], edi
mov dword [esp + 0xdac], 2
jne 0x10039f60
mov ecx, dword [ebx]
lea edx, [esp + 0x24]
push edx
lea eax, [esp + 0xd94]
push eax
push 0x10037530
push str.SELECT_name_FROM_sqlite_master_WHERE_typeindex_AND_name_NOT_LIKE_sqlite___UNION_ALL_SELECT_name_FROM_sqlite_temp_master_WHERE_typeindex_ORDER_BY_1
push ecx
call fcn.10082810
jmp 0x10039f8f
mov edx, dword [esp + 0x7c]
lea eax, [esp + 0x24]
push eax
lea ecx, [esp + 0xd94]
push ecx
push 0x10037530
mov dword [0x10123730], edx
mov edx, dword [ebx]
push str.SELECT_name_FROM_sqlite_master_WHERE_typeindex_AND_tbl_name_LIKE_shellstatic___UNION_ALL_SELECT_name_FROM_sqlite_temp_master_WHERE_typeindex_AND_tbl_name_LIKE_shellstatic___ORDER_BY_1
push edx
call fcn.10082810
mov dword [0x10123730], edi
mov esi, dword [esp + 0x38]
add esp, 0x14
mov dword [esp + 0x18], eax
cmp esi, edi
je 0x10039fde
push esi
push str.Error:__s_n
call dword [sym.imp.MSVCR90.dll___iob_func]
add eax, 0x40
push eax
call dword [sym.imp.MSVCR90.dll_fprintf]
push esi
call fcn.1003fd70
mov dword [esp + 0x28], 1
mov eax, dword [esp + 0x28]
add esp, 0x10
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x13b0]
xor ecx, esp
call fcn.100e7da2
mov esp, ebp
pop ebp
ret
cmp eax, edi
je 0x1003b546
push str.Error:_querying_sqlite_master_and_sqlite_temp_master_n
jmp 0x1003a322
cmp eax, 0x6c
jne 0x1003a0f2
push edi
push str.load
push esi
call ebx
add esp, 0xc
test eax, eax
jne 0x1003a09c
cmp dword [esp + 0x10], 2
jl 0x1003a09c
mov esi, dword [esp + 0x14]
mov dword [esp + 0x28], eax
call fcn.10038970
mov edx, dword [esp + 0x7c]
xor ecx, ecx
cmp dword [esp + 0x10], 3
lea eax, [esp + 0x28]
setl cl
push eax
mov eax, dword [esi]
dec ecx
and ecx, dword [esp + 0x84]
push ecx
push edx
call fcn.100830c0
add esp, 0xc
mov dword [esp + 0x18], eax
test eax, eax
je 0x1003b546
mov esi, dword [esp + 0x28]
push esi
push str.Error:__s_n
call dword [sym.imp.MSVCR90.dll___iob_func]
add eax, 0x40
push eax
call dword [sym.imp.MSVCR90.dll_fprintf]
push esi
call fcn.1003fd70
mov dword [esp + 0x28], 1
mov eax, dword [esp + 0x28]
add esp, 0x10
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x13b0]
xor ecx, esp
call fcn.100e7da2
mov esp, ebp
pop ebp
ret
push edi
push 0x101046d0
push esi
call ebx
add esp, 0xc
test eax, eax
jne 0x1003b325
cmp dword [esp + 0x10], 2
jl 0x1003b325
mov ebx, dword [esp + 0x14]
mov esi, dword [ebx + 0x620]
call fcn.10038d70
mov edi, dword [esp + 0x7c]
call fcn.10038da0
mov dword [ebx + 0x620], eax
mov eax, dword [esp + 0x18]
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x13b0]
xor ecx, esp
call fcn.100e7da2
mov esp, ebp
pop ebp
ret
cmp eax, 0x6d
jne 0x1003a3da
push edi
push str.mode
push esi
call ebx
add esp, 0xc
test eax, eax
jne 0x1003a356
cmp dword [esp + 0x10], 2
jne 0x1003a356
mov esi, dword [esp + 0x7c]
mov ecx, esi
call fcn.10036860
cmp eax, 4
jne 0x1003a173
push eax
push str.line
push esi
call ebx
add esp, 0xc
test eax, eax
je 0x1003a18c
push 4
push str.list
push esi
call ebx
add esp, 0xc
test eax, eax
jne 0x1003a249
mov edx, dword [esp + 0x14]
mov eax, dword [esp + 0x18]
mov dword [edx + 0x1c], 2
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x13b0]
xor ecx, esp
call fcn.100e7da2
mov esp, ebp
pop ebp
ret
cmp eax, 5
jne 0x1003a1b0
push eax
push str.lines
push esi
call ebx
add esp, 0xc
test eax, eax
jne 0x1003a31d
mov eax, dword [esp + 0x14]
mov dword [eax + 0x1c], 0
mov eax, dword [esp + 0x18]
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x13b0]
xor ecx, esp
call fcn.100e7da2
mov esp, ebp
pop ebp
ret
cmp eax, 6
jne 0x1003a20c
push eax
push 0x101036d4
push esi
call ebx
add esp, 0xc
test eax, eax
je 0x1003a225
push 6
push str.insert
push esi
call ebx
add esp, 0xc
test eax, eax
jne 0x1003a31d
mov eax, dword [esp + 0x14]
push str.table
push eax
mov dword [eax + 0x1c], 5
call fcn.10037550
mov eax, dword [esp + 0x20]
add esp, 8
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x13b0]
xor ecx, esp
call fcn.100e7da2
mov esp, ebp
pop ebp
ret
cmp eax, 7
jne 0x1003a282
push eax
push 0x101046e4
push esi
call ebx
add esp, 0xc
test eax, eax
jne 0x1003a31d
mov ecx, dword [esp + 0x14]
mov eax, dword [esp + 0x18]
mov dword [ecx + 0x1c], 1
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x13b0]
xor ecx, esp
call fcn.100e7da2
mov esp, ebp
pop ebp
ret
push 4
push str.html
push esi
call ebx
add esp, 0xc
test eax, eax
jne 0x1003a2ec
mov eax, dword [esp + 0x14]
mov dword [eax + 0x1c], 4
mov eax, dword [esp + 0x18]
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x13b0]
xor ecx, esp
call fcn.100e7da2
mov esp, ebp
pop ebp
ret
cmp eax, 3
jne 0x1003a31d
push eax
push 0x101036b0
push esi
call ebx
add esp, 0xc
test eax, eax
jne 0x1003a2bb
mov eax, dword [esp + 0x14]
mov dword [eax + 0x1c], 6
push 0x101046ec
add eax, 0x2c
push eax
push 0x14
call fcn.10041580
jmp 0x1003b543
push 3
push 0x101036ac
push esi
call ebx
add esp, 0xc
test eax, eax
jne 0x1003a31d
mov eax, dword [esp + 0x14]
mov dword [eax + 0x1c], 7
push 0x10103874
add eax, 0x2c
push eax
push 0x14
call fcn.10041580
jmp 0x1003b543
push 4
push str.tabs
push esi
call ebx
add esp, 0xc
test eax, eax
jne 0x1003a31d
mov eax, dword [esp + 0x14]
mov dword [eax + 0x1c], 2
push 0x100f7898
add eax, 0x2c
push eax
push 0x14
call fcn.10041580
jmp 0x1003b543
push str.Error:_mode_should_be_one_of:_column_csv_html_insert_line_list_tabs_tcl_n
call dword [sym.imp.MSVCR90.dll___iob_func]
add eax, 0x40
push eax
call dword [sym.imp.MSVCR90.dll_fprintf]
add esp, 8
mov dword [esp + 0x18], 1
mov eax, dword [esp + 0x18]
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x13b0]
xor ecx, esp
call fcn.100e7da2
mov esp, ebp
pop ebp
ret
push edi
push str.mode
push esi
call ebx
add esp, 0xc
test eax, eax
jne 0x1003b325
cmp dword [esp + 0x10], 3
jne 0x1003b325
mov ecx, dword [esp + 0x7c]
call fcn.10036860
cmp eax, 6
jne 0x1003a3c8
push eax
push str.insert
push ecx
call ebx
add esp, 0xc
test eax, eax
jne 0x1003a3c8
mov ecx, dword [esp + 0x80]
mov eax, dword [esp + 0x14]
push ecx
push eax
mov dword [eax + 0x1c], 5
call fcn.10037550
mov eax, dword [esp + 0x20]
add esp, 8
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x13b0]
xor ecx, esp
call fcn.100e7da2
mov esp, ebp
pop ebp
ret
mov edx, dword [esp + 0x80]
push edx
push str.Error:_invalid_arguments:____s_._Enter__.help__for_help_n
jmp 0x1003b52b
cmp eax, 0x6e
jne 0x1003a438
push edi
push str.nullvalue
push esi
call ebx
add esp, 0xc
test eax, eax
jne 0x1003b325
cmp dword [esp + 0x10], 2
jne 0x1003b325
mov eax, dword [esp + 0x7c]
mov ecx, dword [esp + 0x14]
push eax
push 0x13
push str._.s
add ecx, 0x360
push ecx
push 0x14
call fcn.10041580
mov eax, dword [esp + 0x2c]
add esp, 0x14
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x13b0]
xor ecx, esp
call fcn.100e7da2
mov esp, ebp
pop ebp
ret
cmp eax, 0x6f
jne 0x1003a582
push edi
push str.output
push esi
call ebx
add esp, 0xc
test eax, eax
jne 0x1003b325
cmp dword [esp + 0x10], 2
jne 0x1003b325
mov ebx, dword [esp + 0x14]
add ebx, 0x510
cmp byte [ebx], 0x7c
jne 0x1003a481
mov edi, dword [esp + 0x14]
mov edx, dword [edi + 0x10]
push edx
call sub.MSVCR90.dll__pclose
add esp, 4
jmp 0x1003a491
mov eax, dword [esp + 0x14]
mov esi, dword [eax + 0x10]
call fcn.10038d70
mov edi, dword [esp + 0x14]
mov esi, dword [esp + 0x7c]
mov byte [ebx], 0
cmp byte [esi], 0x7c
jne 0x1003a4e2
inc esi
push 0x10104794
push esi
call sub.MSVCR90.dll__popen
add esp, 8
mov dword [edi + 0x10], eax
test eax, eax
jne 0x1003a4db
push esi
mov esi, dword [sym.imp.MSVCR90.dll___iob_func]
push str.Error:_cannot_open_pipe___s__n
call esi
add eax, 0x40
push eax
call dword [sym.imp.MSVCR90.dll_fprintf]
add esp, 0xc
call esi
add eax, 0x20
mov dword [edi + 0x10], eax
jmp 0x1003a335
mov ecx, dword [esp + 0x7c]
push ecx
jmp 0x1003a556
mov edi, esi
call fcn.10038da0
mov edx, dword [esp + 0x14]
mov dword [edx + 0x10], eax
test eax, eax
jne 0x1003a555
mov ecx, 0x10103ee0
mov eax, esi
jmp 0x1003a500
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x1003a520
test dl, dl
je 0x1003a51c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x1003a520
add eax, 2
add ecx, 2
test dl, dl
jne 0x1003a500
xor eax, eax
jmp 0x1003a525
sbb eax, eax
sbb eax, 0xffffffff
mov edi, dword [sym.imp.MSVCR90.dll___iob_func]
test eax, eax
je 0x1003a544
push esi
push str.Error:_cannot_write_to___s__n
call edi
add eax, 0x40
push eax
call dword [sym.imp.MSVCR90.dll_fprintf]
add esp, 0xc
call edi
mov ecx, dword [esp + 0x14]
add eax, 0x20
mov dword [ecx + 0x10], eax
jmp 0x1003a335
push esi
push 0x1010372c
push ebx
push 0x104
call fcn.10041580
mov eax, dword [esp + 0x28]
add esp, 0x10
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x13b0]
xor ecx, esp
call fcn.100e7da2
mov esp, ebp
pop ebp
ret
cmp eax, 0x70
jne 0x1003a66e
cmp edi, 3
jl 0x1003a609
push edi
push str.print
push esi
call ebx
add esp, 0xc
test eax, eax
jne 0x1003a609
mov edi, dword [sym.imp.MSVCR90.dll_fprintf]
mov ebx, dword [esp + 0x14]
mov esi, 1
cmp dword [esp + 0x10], esi
jle 0x1003a5e2
cmp esi, 1
jle 0x1003a5c8
mov edx, dword [ebx + 0x10]
push 0x101046ec
push edx
call edi
add esp, 8
mov eax, dword [esp + esi*4 + 0x78]
mov ecx, dword [ebx + 0x10]
push eax
push 0x1010372c
push ecx
call edi
inc esi
add esp, 0xc
cmp esi, dword [esp + 0x10]
jl 0x1003a5b5
mov edx, dword [ebx + 0x10]
push 0x10103464
push edx
call edi
mov eax, dword [esp + 0x20]
add esp, 8
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x13b0]
xor ecx, esp
call fcn.100e7da2
mov esp, ebp
pop ebp
ret
push edi
push str.prompt
push esi
call ebx
add esp, 0xc
test eax, eax
jne 0x1003b325
mov eax, dword [esp + 0x10]
cmp eax, 2
je 0x1003a632
cmp eax, 3
jne 0x1003b325
cmp eax, 2
mov esi, dword [sym.imp.MSVCR90.dll_strncpy]
jl 0x1003a64f
mov eax, dword [esp + 0x7c]
push 0x13
push eax
push 0x10123420
call esi
mov eax, dword [esp + 0x1c]
add esp, 0xc
cmp eax, 3
jl 0x1003b546
mov ecx, dword [esp + 0x80]
push 0x13
push ecx
push 0x10123404
call esi
jmp 0x1003b543
cmp eax, 0x71
jne 0x1003a6b3
push edi
push str.quit
push esi
call ebx
add esp, 0xc
test eax, eax
jne 0x1003b325
cmp dword [esp + 0x10], 1
jne 0x1003b325
mov dword [esp + 0x18], 2
mov eax, dword [esp + 0x18]
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x13b0]
xor ecx, esp
call fcn.100e7da2
mov esp, ebp
pop ebp
ret
cmp eax, 0x72
jne 0x1003a8bc
cmp edi, 3
jl 0x1003b325
push edi
push str.read
push esi
call ebx
add esp, 0xc
test eax, eax
jne 0x1003a71b
cmp dword [esp + 0x10], 2
jne 0x1003a71b
mov edi, dword [esp + 0x7c]
push 0x101043d0
push edi
call dword [sym.imp.MSVCR90.dll_fopen]
mov esi, eax
add esp, 8
test esi, esi
jne 0x1003a700
push edi
push str.Error:_cannot_open___s__n
jmp 0x1003b52b
mov edx, dword [esp + 0x14]
push esi
push edx
call fcn.1003b6e0
push esi
mov dword [esp + 0x24], eax
call dword [sym.imp.MSVCR90.dll_fclose]
jmp 0x1003b543
push edi
push str.restore
push esi
call ebx
add esp, 0xc
test eax, eax
jne 0x1003b325
mov eax, dword [esp + 0x10]
lea ecx, [eax - 2]
cmp ecx, 1
ja 0x1003b325
xor ebx, ebx
cmp eax, 2
jne 0x1003a751
mov esi, dword [esp + 0x7c]
mov edi, str.main
jmp 0x1003a75c
mov esi, dword [esp + 0x80]
mov edi, dword [esp + 0x7c]
lea edx, [esp + 0x20]
push edx
push esi
call fcn.100a3a20
add esp, 8
test eax, eax
je 0x1003a797
push esi
push str.Error:_cannot_open___s__n
call dword [sym.imp.MSVCR90.dll___iob_func]
add eax, 0x40
push eax
call dword [sym.imp.MSVCR90.dll_fprintf]
mov eax, dword [esp + 0x2c]
push 0
call fcn.100a1bc0
add esp, 0x10
jmp 0x100392c8
mov esi, dword [esp + 0x14]
call fcn.10038970
mov eax, dword [esp + 0x20]
push str.main
push eax
mov ecx, esi
mov edx, dword [ecx]
push edi
push edx
call fcn.10059100
mov esi, eax
add esp, 0x10
test esi, esi
jne 0x1003a7d5
mov eax, dword [esp + 0x14]
mov ecx, dword [eax]
push ecx
call fcn.100a2b10
add esp, 4
push eax
push str.Error:__s_n
jmp 0x1003a774
push 0x64
push esi
call fcn.10059470
mov edi, eax
add esp, 8
test edi, edi
je 0x1003a828
cmp edi, 5
je 0x1003a82d
push esi
call fcn.10059ec0
add esp, 4
cmp edi, 0x65
jne 0x1003a841
mov eax, dword [esp + 0x20]
push 0
mov dword [esp + 0x1c], 0
call fcn.100a1bc0
mov eax, dword [esp + 0x1c]
add esp, 4
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x13b0]
xor ecx, esp
call fcn.100e7da2
mov esp, ebp
pop ebp
ret
cmp edi, 5
jne 0x1003a7d5
mov edx, ebx
inc ebx
cmp edx, 3
jge 0x1003a7eb
push 0x64
call fcn.100a3e40
add esp, 4
jmp 0x1003a7d5
cmp edi, 5
je 0x1003a875
cmp edi, 6
je 0x1003a875
mov eax, dword [esp + 0x14]
mov ecx, dword [eax]
push ecx
call fcn.100a2b10
add esp, 4
push eax
push str.Error:__s_n
call dword [sym.imp.MSVCR90.dll___iob_func]
add eax, 0x40
push eax
call dword [sym.imp.MSVCR90.dll_fprintf]
add esp, 0xc
jmp 0x1003a88d
push str.Error:_source_database_is_busy_n
call dword [sym.imp.MSVCR90.dll___iob_func]
add eax, 0x40
push eax
call dword [sym.imp.MSVCR90.dll_fprintf]
add esp, 8
mov eax, dword [esp + 0x20]
push 0
mov dword [esp + 0x1c], 1
call fcn.100a1bc0
mov eax, dword [esp + 0x1c]
add esp, 4
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x13b0]
xor ecx, esp
call fcn.100e7da2
mov esp, ebp
pop ebp
ret
cmp eax, 0x73
jne 0x1003acec
push edi
push str.schema
push esi
call ebx
add esp, 0xc
test eax, eax
jne 0x1003aa9a
cmp dword [esp + 0x10], 3
jge 0x1003aa9a
mov ebx, dword [esp + 0x14]
mov esi, ebx
mov dword [esp + 0x18], eax
call fcn.10038970
cmp dword [esp + 0x10], 1
mov ecx, 0x189
lea edi, [esp + 0x768]
rep movsd dword es:[edi], dword [esi]
mov dword [esp + 0x78c], 0
mov dword [esp + 0x784], 3
jle 0x1003aa58
mov ebx, dword [esp + 0x7c]
mov al, byte [ebx]
test al, al
je 0x1003a947
mov edi, dword [sym.imp.MSVCR90.dll_tolower]
mov esi, ebx
movzx edx, al
push edx
call edi
mov byte [esi], al
mov al, byte [esi + 1]
inc esi
add esp, 4
test al, al
jne 0x1003a934
mov ecx, str.sqlite_master
mov eax, ebx
mov edi, edi
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x1003a972
test dl, dl
je 0x1003a96c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x1003a972
add eax, 2
add ecx, 2
test dl, dl
jne 0x1003a950
xor edi, edi
xor eax, eax
jmp 0x1003a979
sbb eax, eax
sbb eax, 0xffffffff
xor edi, edi
cmp eax, edi
jne 0x1003a9cd
push edi
lea eax, [esp + 0x6c]
mov dword [esp + 0x74], str.CREATE_TABLE_sqlite_master___n__type_text__n__name_text__n__tbl_name_text__n__rootpage_integer__n__sql_text_n_
mov dword [esp + 0x78], edi
mov dword [esp + 0x6c], 0x101048a4
mov dword [esp + 0x70], edi
push eax
lea ecx, [esp + 0x78]
push ecx
lea edx, [esp + 0x774]
push 1
push edx
call fcn.10036cc0
add esp, 0x14
mov dword [esp + 0x18], edi
mov eax, edi
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x13b0]
xor ecx, esp
call fcn.100e7da2
mov esp, ebp
pop ebp
ret
mov ecx, str.sqlite_temp_master
mov eax, ebx
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x1003a9f4
test dl, dl
je 0x1003a9f0
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x1003a9f4
add eax, 2
add ecx, 2
test dl, dl
jne 0x1003a9d4
xor eax, eax
jmp 0x1003a9f9
sbb eax, eax
sbb eax, 0xffffffff
cmp eax, edi
jne 0x1003aa24
push edi
lea eax, [esp + 0x5c]
mov dword [esp + 0x64], str.CREATE_TEMP_TABLE_sqlite_temp_master___n__type_text__n__name_text__n__tbl_name_text__n__rootpage_integer__n__sql_text_n_
mov dword [esp + 0x68], edi
mov dword [esp + 0x5c], 0x101048a4
mov dword [esp + 0x60], edi
push eax
lea ecx, [esp + 0x68]
jmp 0x1003a99f
mov edx, dword [esp + 0x14]
lea eax, [esp + 0x18]
push eax
mov eax, dword [edx]
lea ecx, [esp + 0x76c]
push ecx
push 0x10037530
push str.SELECT_sql_FROM____SELECT_sql_sql__type_type__tbl_name_tbl_name__name_name__rowid_x_____FROM_sqlite_master_UNION_ALL___SELECT_sql__type__tbl_name__name__rowid_FROM_sqlite_temp_master__WHERE_lower_tbl_name__LIKE_shellstatic____AND_type_meta_AND_sql_NOTNULL_ORDER_BY_rowid
push eax
mov dword [0x10123730], ebx
call fcn.10082810
add esp, 0x14
mov dword [0x10123730], edi
jmp 0x1003aa7c
mov eax, dword [ebx]
lea ecx, [esp + 0x18]
push ecx
lea edx, [esp + 0x76c]
push edx
push 0x10037530
push str.SELECT_sql_FROM____SELECT_sql_sql__type_type__tbl_name_tbl_name__name_name__rowid_x_____FROM_sqlite_master_UNION_ALL___SELECT_sql__type__tbl_name__name__rowid_FROM_sqlite_temp_master__WHERE_type_meta_AND_sql_NOTNULL_AND_name_NOT_LIKE_sqlite__ORDER_BY_rowid
push eax
call fcn.10082810
add esp, 0x14
xor edi, edi
mov esi, dword [esp + 0x18]
cmp esi, edi
jne 0x10039f9e
cmp eax, edi
je 0x1003a9b2
push str.Error:_querying_schema_information_n
jmp 0x1003a322
push edi
push str.separator
push esi
call ebx
add esp, 0xc
test eax, eax
jne 0x1003aae8
cmp dword [esp + 0x10], 2
jne 0x1003aae8
mov ecx, dword [esp + 0x7c]
mov edx, dword [esp + 0x14]
push ecx
push 0x13
push str._.s
add edx, 0x2c
push edx
push 0x14
call fcn.10041580
mov eax, dword [esp + 0x2c]
add esp, 0x14
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x13b0]
xor ecx, esp
call fcn.100e7da2
mov esp, ebp
pop ebp
ret
push edi
push str.show
push esi
call ebx
add esp, 0xc
test eax, eax
jne 0x1003aca2
cmp dword [esp + 0x10], 1
jne 0x1003aca2
mov eax, dword [esp + 0x14]
cmp dword [eax + 4], 0
mov eax, 0x10103ed8
jne 0x1003ab1b
mov eax, 0x10103ee0
mov esi, dword [esp + 0x14]
mov ecx, dword [esi + 0x10]
mov ebx, dword [sym.imp.MSVCR90.dll_fprintf]
push eax
push str.echo
push str._9.9s:__s_n
push ecx
call ebx
add esp, 0x10
cmp dword [esi + 0x374], 0
mov eax, 0x10103ed8
jne 0x1003ab4c
mov eax, 0x10103ee0
mov edx, dword [esi + 0x10]
push eax
push str.explain
push str._9.9s:__s_n
push edx
call ebx
add esp, 0x10
cmp dword [esi + 0x24], 0
mov eax, 0x10103ed8
jne 0x1003ab70
mov eax, 0x10103ee0
push eax
push str.headers
mov edi, esi
mov eax, dword [edi + 0x10]
push str._9.9s:__s_n
push eax
call ebx
mov ecx, dword [edi + 0x1c]
mov edx, dword [ecx*4 + 0x101210a0]
mov eax, dword [edi + 0x10]
push edx
push str.mode
push str._9.9s:__s_n
push eax
call ebx
mov ecx, dword [edi + 0x10]
push str.nullvalue
push str._9.9s:
push ecx
call ebx
mov esi, dword [edi + 0x10]
lea edx, [edi + 0x360]
push edx
call fcn.100369d0
mov eax, dword [edi + 0x10]
push 0x10103464
push eax
call ebx
add esp, 0x38
lea ecx, [edi + 0x510]
call fcn.10036860
test eax, eax
jne 0x1003abdf
mov ecx, str.stdout
push ecx
mov ecx, dword [edi + 0x10]
push str.output
push str._9.9s:__s_n
push ecx
call ebx
mov edx, dword [edi + 0x10]
push str.separator
push str._9.9s:
push edx
call ebx
mov esi, dword [edi + 0x10]
lea eax, [edi + 0x2c]
push eax
call fcn.100369d0
mov ecx, dword [edi + 0x10]
push 0x10103464
push ecx
call ebx
add esp, 0x28
cmp dword [edi + 8], 0
mov eax, 0x10103ed8
jne 0x1003ac2a
mov eax, 0x10103ee0
mov edx, dword [edi + 0x10]
push eax
push str.stats
push str._9.9s:__s_n
push edx
call ebx
mov eax, dword [edi + 0x10]
push str.width
push str._9.9s:
push eax
call ebx
lea ecx, [edi + 0x40]
add esp, 0x1c
xor esi, esi
mov dword [esp + 0x24], ecx
mov edx, dword [esp + 0x24]
mov eax, dword [edx]
test eax, eax
je 0x1003ac7b
push eax
mov eax, dword [edi + 0x10]
push 0x10104bb4
push eax
call ebx
add dword [esp + 0x30], 4
inc esi
add esp, 0xc
cmp esi, 0x64
jl 0x1003ac57
mov ecx, dword [edi + 0x10]
push 0x10103464
push ecx
call ebx
mov eax, dword [esp + 0x20]
add esp, 8
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x13b0]
xor ecx, esp
call fcn.100e7da2
mov esp, ebp
pop ebp
ret
push edi
push str.stats
push esi
call ebx
add esp, 0xc
test eax, eax
jne 0x1003b325
mov edx, dword [esp + 0x10]
add edx, 0xfffffffe
jne 0x1003b325
mov esi, dword [esp + 0x7c]
call fcn.10038c50
mov ecx, dword [esp + 0x14]
mov dword [ecx + 8], eax
mov eax, dword [esp + 0x18]
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x13b0]
xor ecx, esp
call fcn.100e7da2
mov esp, ebp
pop ebp
ret
cmp eax, 0x74
jne 0x1003b325
cmp edi, 1
jle 0x1003b053
push edi
push str.tables
push esi
call ebx
add esp, 0xc
test eax, eax
jne 0x1003b053
cmp dword [esp + 0x10], 3
jge 0x1003b053
mov ebx, dword [esp + 0x14]
mov esi, ebx
call fcn.10038970
mov eax, dword [ebx]
push 0
lea edx, [esp + 0x20]
push edx
push 0xffffffffffffffff
push str.PRAGMA_database_list
push eax
call fcn.10087cd0
add esp, 0x14
test eax, eax
jne 0x1003b54a
push str.SELECT_name_FROM_sqlite_master_WHERE_type_IN__table_view____AND_name_NOT_LIKE_sqlite______AND_name_LIKE__1
call fcn.100414f0
mov esi, dword [esp + 0x20]
push esi
mov edi, eax
call fcn.1005f590
add esp, 8
cmp eax, 0x64
jne 0x1003ae21
jmp 0x1003ad70
push 1
push esi
call fcn.1005fb90
add esp, 8
test eax, eax
je 0x1003ae0b
mov edx, str.main
mov ecx, eax
lea ebx, [ebx]
mov bl, byte [ecx]
cmp bl, byte [edx]
jne 0x1003adb0
test bl, bl
je 0x1003adac
mov bl, byte [ecx + 1]
cmp bl, byte [edx + 1]
jne 0x1003adb0
add ecx, 2
add edx, 2
test bl, bl
jne 0x1003ad90
xor ecx, ecx
jmp 0x1003adb5
sbb ecx, ecx
sbb ecx, 0xffffffff
test ecx, ecx
je 0x1003ae0b
mov edx, str.temp
mov ecx, eax
mov bl, byte [ecx]
cmp bl, byte [edx]
jne 0x1003ade0
test bl, bl
je 0x1003addc
mov bl, byte [ecx + 1]
cmp bl, byte [edx + 1]
jne 0x1003ade0
add ecx, 2
add edx, 2
test bl, bl
jne 0x1003adc0
xor ecx, ecx
jmp 0x1003ade5
sbb ecx, ecx
sbb ecx, 0xffffffff
test ecx, ecx
jne 0x1003adf9
push edi
push str._z_UNION_ALL_SELECT_temp.__name_FROM_sqlite_temp_master_WHERE_type_IN__table_view____AND_name_NOT_LIKE_sqlite______AND_name_LIKE__1
call fcn.100414f0
add esp, 8
jmp 0x1003ae09
push eax
push eax
push edi
push 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
call fcn.100414f0
add esp, 0x10
mov edi, eax
push esi
call fcn.1005f590
add esp, 4
cmp eax, 0x64
je 0x1003ad70
mov ebx, dword [esp + 0x14]
push esi
call fcn.1005ea80
push edi
push str._z_ORDER_BY_1
call fcn.100414f0
mov edx, dword [ebx]
push 0
lea ecx, [esp + 0x2c]
push ecx
mov edi, eax
push 0xffffffffffffffff
push edi
push edx
call fcn.10087cd0
mov esi, eax
push edi
mov dword [esp + 0x3c], esi
call fcn.1003fd70
add esp, 0x24
test esi, esi
je 0x1003ae70
mov eax, esi
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x13b0]
xor ecx, esp
call fcn.100e7da2
mov esp, ebp
pop ebp
ret
xor ebx, ebx
xor esi, esi
cmp dword [esp + 0x10], 1
mov dword [esp + 0x24], ebx
mov dword [esp + 0x20], ebx
jle 0x1003ae9a
mov eax, dword [esp + 0x7c]
mov edi, dword [esp + 0x1c]
push 0xffffffffffffffff
push 0xffffffffffffffff
push eax
push 1
push edi
call fcn.100600a0
jmp 0x1003aeb3
mov ecx, dword [esp + 0x1c]
push 0
push 0xffffffffffffffff
push 0x10104d84
push 1
push ecx
call fcn.100600a0
mov edi, dword [esp + 0x30]
add esp, 0x14
push edi
call fcn.1005f590
add esp, 4
cmp eax, 0x64
jne 0x1003af3f
cmp esi, dword [esp + 0x24]
jl 0x1003aef5
mov edi, dword [esp + 0x24]
lea edi, [edi + edi + 0xa]
lea edx, [edi*4]
push edx
push ebx
call fcn.1003ffc0
add esp, 8
test eax, eax
je 0x1003af23
mov ebx, eax
mov dword [esp + 0x24], edi
mov edi, dword [esp + 0x1c]
mov dword [esp + 0x20], ebx
push 0
push edi
call fcn.1005fb90
push eax
push 0x1010372c
call fcn.100414f0
add esp, 0x10
mov dword [ebx + esi*4], eax
test eax, eax
je 0x1003af13
inc esi
push edi
call fcn.1005f590
add esp, 4
cmp eax, 0x64
je 0x1003aec4
jmp 0x1003af3f
push str.Error:_out_of_memory_n
call dword [sym.imp.MSVCR90.dll___iob_func]
add eax, 0x40
push eax
call dword [sym.imp.MSVCR90.dll_fprintf]
mov edi, dword [esp + 0x24]
add esp, 8
push edi
call fcn.1005ea80
add esp, 4
test esi, esi
jle 0x1003b014
xor edi, edi
xor edx, edx
mov dword [esp + 0x28], edi
test esi, esi
jle 0x1003af77
mov ebx, dword [esp + 0x20]
mov ecx, dword [ebx + edx*4]
call fcn.10036860
cmp eax, edi
jle 0x1003af6e
mov edi, eax
inc edx
cmp edx, esi
jl 0x1003af60
mov dword [esp + 0x28], edi
mov eax, 0x50
add edi, 2
cdq
idiv edi
mov ecx, eax
cmp ecx, 1
jge 0x1003af8e
mov ecx, 1
lea eax, [ecx + esi - 1]
cdq
idiv ecx
mov dword [esp + 0x24], 0
mov ebx, eax
test ebx, ebx
jle 0x1003b014
mov edi, dword [esp + 0x24]
cmp edi, esi
jge 0x1003aff1
jmp 0x1003afb0
cmp edi, ebx
mov ecx, 0x10102d23
jl 0x1003afbe
mov ecx, 0x101037a4
mov eax, dword [esp + 0x20]
mov eax, dword [eax + edi*4]
test eax, eax
jne 0x1003afce
mov eax, 0x10102d23
mov edx, dword [esp + 0x28]
push eax
mov eax, dword [esp + 0x18]
push edx
push ecx
mov ecx, dword [eax + 0x10]
push str._s__s
push ecx
call dword [sym.imp.MSVCR90.dll_fprintf]
add edi, ebx
add esp, 0x14
cmp edi, esi
jl 0x1003afb0
mov edx, dword [esp + 0x14]
mov eax, dword [edx + 0x10]
push 0x10103464
push eax
call dword [sym.imp.MSVCR90.dll_fprintf]
mov eax, dword [esp + 0x2c]
inc eax
add esp, 8
cmp eax, ebx
mov dword [esp + 0x24], eax
jl 0x1003afa3
mov ebx, dword [esp + 0x20]
xor edi, edi
test esi, esi
jle 0x1003b031
mov edi, edi
mov ecx, dword [ebx + edi*4]
push ecx
call fcn.1003fd70
inc edi
add esp, 4
cmp edi, esi
jl 0x1003b020
push ebx
call fcn.1003fd70
mov eax, dword [esp + 0x1c]
add esp, 4
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x13b0]
xor ecx, esp
call fcn.100e7da2
mov esp, ebp
pop ebp
ret
cmp edi, 8
jl 0x1003b2d2
push edi
push str.testctrl
push esi
call ebx
add esp, 0xc
test eax, eax
jne 0x1003b2d2
cmp dword [esp + 0x10], 2
jl 0x1003b2d2
mov esi, dword [esp + 0x14]
mov dword [esp + 0x1c], 0xffffffff
call fcn.10038970
mov esi, dword [esp + 0x7c]
mov ecx, esi
call fcn.10036860
mov dword [esp + 0x28], eax
mov dword [esp + 0x20], 0x100fcf34
mov edx, dword [esp + 0x28]
mov eax, dword [esp + 0x20]
mov ecx, dword [eax - 4]
push edx
push ecx
push esi
call ebx
mov edi, dword [sym.imp.MSVCR90.dll_fprintf]
add esp, 0xc
test eax, eax
jne 0x1003b0d1
cmp dword [esp + 0x1c], 0
jge 0x1003b11c
mov edx, dword [esp + 0x20]
mov eax, dword [edx]
mov dword [esp + 0x1c], eax
mov eax, dword [esp + 0x20]
add eax, 8
cmp eax, 0x100fcf9c
mov dword [esp + 0x20], eax
jl 0x1003b0a3
cmp dword [esp + 0x1c], 0
jge 0x1003b0f5
mov eax, esi
call fcn.10038af0
mov dword [esp + 0x1c], eax
mov eax, dword [esp + 0x1c]
add eax, 0xfffffffb
cmp eax, 0xe
ja 0x1003b2bb
cmp eax, 0xa
ja case.0x1003b115.3
movzx ecx, byte [eax + 0x1003b574]
jmp dword [ecx*4 + 0x1003b560]
push esi
push str.ambiguous_option_name:___s__n
call dword [sym.imp.MSVCR90.dll___iob_func]
add eax, 0x40
push eax
call edi
add esp, 0xc
jmp 0x1003b0ea
cmp dword [esp + 0x10], 3
jne 0x1003b187
mov edx, dword [esp + 0x80]
push 0
push 0
push edx
call dword [sym.imp.MSVCR90.dll_strtol]
mov esi, dword [esp + 0x20]
mov ecx, dword [esp + 0x28]
push eax
mov eax, dword [esi]
push eax
push ecx
call fcn.100a3f70
mov edx, dword [esi + 0x10]
push eax
push eax
push str._d__0x_08x__n
push edx
call edi
mov eax, dword [esp + 0x40]
add esp, 0x28
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x13b0]
xor ecx, esp
call fcn.100e7da2
mov esp, ebp
pop ebp
ret
push esi
push str.Error:_testctrl__s_takes_a_single_int_option_n
call dword [sym.imp.MSVCR90.dll___iob_func]
add eax, 0x40
push eax
call edi
jmp 0x1003b543
cmp dword [esp + 0x10], 2
jne 0x1003b1dc
mov eax, dword [esp + 0x1c]
push eax
call fcn.100a3f70
mov ecx, dword [esp + 0x18]
mov edx, dword [ecx + 0x10]
push eax
push eax
push str._d__0x_08x__n
push edx
call edi
mov eax, dword [esp + 0x2c]
add esp, 0x14
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x13b0]
xor ecx, esp
call fcn.100e7da2
mov esp, ebp
pop ebp
ret
push esi
push str.Error:_testctrl__s_takes_no_options_n
call dword [sym.imp.MSVCR90.dll___iob_func]
add eax, 0x40
push eax
call edi
jmp 0x1003b543
cmp dword [esp + 0x10], 3
jne 0x1003b23e
mov eax, dword [esp + 0x80]
call fcn.10038af0
push eax
mov eax, dword [esp + 0x20]
push eax
call fcn.100a3f70
mov ecx, dword [esp + 0x1c]
mov edx, dword [ecx + 0x10]
push eax
push eax
push str._d__0x_08x__n
push edx
call edi
mov eax, dword [esp + 0x30]
add esp, 0x18
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x13b0]
xor ecx, esp
call fcn.100e7da2
mov esp, ebp
pop ebp
ret
push esi
push str.Error:_testctrl__s_takes_a_single_unsigned_int_option_n
call dword [sym.imp.MSVCR90.dll___iob_func]
add eax, 0x40
push eax
call edi
jmp 0x1003b543
cmp dword [esp + 0x10], 3
jne 0x1003b187
mov esi, dword [esp + 0x80]
call fcn.10038c50
push eax
mov eax, dword [esp + 0x20]
push eax
call fcn.100a3f70
mov ecx, dword [esp + 0x1c]
mov edx, dword [ecx + 0x10]
push eax
push eax
push str._d__0x_08x__n
push edx
call edi
mov eax, dword [esp + 0x30]
add esp, 0x18
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x13b0]
xor ecx, esp
call fcn.100e7da2
mov esp, ebp
pop ebp
ret
push esi
push str.Error:_CLI_support_for_testctrl__s_not_implemented_n
call dword [sym.imp.MSVCR90.dll___iob_func]
add eax, 0x40
push eax
call edi
jmp 0x1003b543
push esi
push str.Error:_invalid_testctrl_option:__s_n
call dword [sym.imp.MSVCR90.dll___iob_func]
add eax, 0x40
push eax
call edi
jmp 0x1003b543
cmp edi, 4
jle 0x1003b325
push edi
push str.timeout
push esi
call ebx
add esp, 0xc
test eax, eax
jne 0x1003b325
cmp dword [esp + 0x10], 2
jne 0x1003b325
mov esi, dword [esp + 0x14]
call fcn.10038970
mov eax, dword [esp + 0x7c]
call fcn.10038af0
push eax
mov eax, dword [esi]
push eax
call fcn.100a2210
mov eax, dword [esp + 0x20]
add esp, 8
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x13b0]
xor ecx, esp
call fcn.100e7da2
mov esp, ebp
pop ebp
ret
call fcn.10036490
test eax, eax
je 0x1003b37c
cmp dword [esp + 0x24], 0x74
jne 0x1003b3e7
cmp edi, 5
jl 0x1003b383
push edi
push str.timer
push esi
call ebx
add esp, 0xc
test eax, eax
jne 0x1003b383
cmp dword [esp + 0x10], 2
jne 0x1003b383
mov esi, dword [esp + 0x7c]
call fcn.10038c50
mov dword [0x1012371c], eax
mov eax, dword [esp + 0x18]
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x13b0]
xor ecx, esp
call fcn.100e7da2
mov esp, ebp
pop ebp
ret
cmp dword [esp + 0x24], 0x74
jne 0x1003b3e7
push edi
push str.trace
push esi
call ebx
add esp, 0xc
test eax, eax
jne 0x1003b525
cmp dword [esp + 0x10], 1
jle 0x1003b525
mov ebx, dword [esp + 0x14]
mov esi, ebx
call fcn.10038970
mov esi, dword [ebx + 0x14]
call fcn.10038d70
mov edi, dword [esp + 0x7c]
call fcn.10038da0
mov dword [ebx + 0x14], eax
test eax, eax
jne 0x1003b3d4
mov ecx, dword [ebx]
push eax
push eax
push ecx
call fcn.100a2690
jmp 0x1003b543
mov edx, dword [ebx]
push eax
push 0x10038e80
push edx
call fcn.100a2690
jmp 0x1003b543
mov eax, dword [esp + 0x24]
cmp eax, 0x76
jne 0x1003b4ca
push edi
push str.version
push esi
call ebx
add esp, 0xc
test eax, eax
jne 0x1003b43d
mov eax, dword [esp + 0x14]
mov ecx, dword [eax + 0x10]
push str.2013_09_03_17:11:13_7dd4968f235d6e1ca9547cda9cf3bd570e1609ef
push str.3.8.0.2
push str.SQLite__s__s_n
push ecx
call dword [sym.imp.MSVCR90.dll_fprintf]
mov eax, dword [esp + 0x28]
add esp, 0x10
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x13b0]
xor ecx, esp
call fcn.100e7da2
mov esp, ebp
pop ebp
ret
push edi
push str.vfsname
push esi
call ebx
add esp, 0xc
test eax, eax
jne 0x1003b525
cmp dword [esp + 0x10], 2
mov ecx, dword [esp + 0x7c]
je 0x1003b461
mov ecx, str.main
mov esi, dword [esp + 0x14]
mov eax, dword [esi]
mov dword [esp + 0x4c], 0
test eax, eax
je 0x1003b546
lea edx, [esp + 0x4c]
push edx
push 0xc
push ecx
push eax
call fcn.100a3ec0
mov eax, dword [esp + 0x5c]
add esp, 0x10
test eax, eax
je 0x1003b546
push eax
mov eax, dword [esi + 0x10]
push 0x10103cac
push eax
call dword [sym.imp.MSVCR90.dll_fprintf]
mov ecx, dword [esp + 0x58]
push ecx
call fcn.1003fd70
mov eax, dword [esp + 0x28]
add esp, 0x10
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x13b0]
xor ecx, esp
call fcn.100e7da2
mov esp, ebp
pop ebp
ret
cmp eax, 0x77
jne 0x1003b525
push edi
push str.width
push esi
call ebx
add esp, 0xc
test eax, eax
jne 0x1003b525
mov ebx, dword [esp + 0x10]
cmp ebx, 1
jle 0x1003b525
mov edi, dword [esp + 0x14]
mov esi, 1
add edi, 0x40
cmp esi, 0x64
jge 0x1003b546
mov eax, dword [esp + esi*4 + 0x78]
call fcn.10038af0
mov dword [edi], eax
inc esi
add edi, 4
cmp esi, ebx
jl 0x1003b4f4
mov eax, dword [esp + 0x18]
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x13b0]
xor ecx, esp
call fcn.100e7da2
mov esp, ebp
pop ebp
ret
push esi
push str.Error:_unknown_command_or_invalid_arguments:____s_._Enter__.help__for_help_n
call dword [sym.imp.MSVCR90.dll___iob_func]
add eax, 0x40
push eax
call dword [sym.imp.MSVCR90.dll_fprintf]
mov dword [esp + 0x24], 1
add esp, 0xc
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x13bc]
pop edi
pop esi
pop ebx
xor ecx, esp
call fcn.100e7da2
mov esp, ebp
pop ebp
ret