Function at 0x10038ed0
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.100e9180
mov eax, dword [0x1011f07c]
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 0x10039005
cmp esi, 0x32
jge 0x10039001
movzx ecx, byte [ebx + edi]
push ecx
call dword [sym.imp.MSVCR90.dll_isspace]
add esp, 4
test eax, eax
je 0x10038f44
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 0x10038f30
mov cl, byte [ebx + edi]
lea eax, [ebx + edi]
test cl, cl
je 0x10039001
cmp cl, 0x27
je 0x10038f94
cmp cl, 0x22
je 0x10038f94
mov dword [esp + esi*4 + 0x78], eax
inc esi
mov dword [esp + 0x10], esi
mov esi, dword [sym.imp.MSVCR90.dll_isspace]
jmp 0x10038f70
movzx eax, byte [eax]
push eax
call esi
add esp, 4
test eax, eax
jne 0x10038f87
inc edi
cmp byte [ebx + edi], 0
lea eax, [ebx + edi]
jne 0x10038f70
cmp byte [ebx + edi], 0
je 0x10038fe6
mov byte [ebx + edi], 0
inc edi
jmp 0x10038fe6
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 0x10038fd4
lea esp, [esp]
mov al, byte [eax]
movsx edx, al
cmp edx, ecx
je 0x10038fd4
cmp al, 0x5c
jne 0x10038fca
cmp ecx, 0x22
jne 0x10038fca
cmp byte [ebx + edi + 1], 0
je 0x10038fca
inc edi
inc edi
cmp byte [ebx + edi], 0
lea eax, [ebx + edi]
jne 0x10038fb0
movsx eax, byte [ebx + edi]
cmp eax, ecx
jne 0x10038fe1
mov byte [ebx + edi], 0
inc edi
cmp ecx, 0x22
jne 0x10038ff7
mov ecx, dword [esp + 0x10]
mov esi, dword [esp + ecx*4 + 0x74]
call fcn.10038820
mov esi, dword [esp + 0x10]
cmp byte [ebx + edi], 0
jne 0x10038f13
test esi, esi
jne 0x1003901c
xor eax, eax
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x13b0]
xor ecx, esp
call fcn.100e78b2
mov esp, ebp
pop ebp
ret
mov esi, dword [esp + 0x78]
mov al, byte [esi]
mov edi, esi
test al, al
je 0x1003902e
inc edi
cmp byte [edi], 0
jne 0x10039028
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 0x100392be
cmp edi, 3
jl 0x1003b125
push edi
push str.backup
push esi
call ebx
add esp, 0xc
test eax, eax
jne 0x1003924b
mov edx, dword [esp + 0x10]
lea ecx, [eax + 1]
xor esi, esi
xor edi, edi
cmp edx, ecx
jle 0x1003909e
jmp 0x10039080
mov eax, dword [esp + ecx*4 + 0x78]
cmp byte [eax], 0x2d
je 0x100390a5
test esi, esi
je 0x10039093
test edi, edi
jne 0x100390e2
mov edi, esi
inc ecx
cmp ecx, edx
mov esi, eax
jl 0x10039080
test esi, esi
jne 0x10039114
push str.missing_FILENAME_argument_on_.backup_n
jmp 0x100390e7
inc eax
cmp byte [eax], 0x2d
je 0x100390a5
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.100e78b2
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.100e78b2
mov esp, ebp
pop ebp
ret
test edi, edi
jne 0x1003911d
mov edi, str.main
push 0
push 6
lea eax, [esp + 0x5c]
push eax
push esi
call fcn.100a33c0
add esp, 0x10
test eax, eax
je 0x10039159
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.100a1960
add esp, 0x10
jmp 0x100390fa
mov esi, dword [esp + 0x14]
call fcn.10038770
mov ecx, dword [esi]
mov ebx, dword [esp + 0x54]
push edi
push ecx
push str.main
push ebx
call fcn.10058ed0
mov esi, eax
add esp, 0x10
test esi, esi
jne 0x100391b0
push ebx
call fcn.100a28b0
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.100a1960
add esp, 0x10
jmp 0x100390fa
push 0x64
push esi
call fcn.10059240
mov edi, eax
add esp, 8
test edi, edi
je 0x100391b0
push esi
call fcn.10059c90
add esp, 4
cmp edi, 0x65
jne 0x100391fc
push 0
mov eax, ebx
mov dword [esp + 0x1c], 0
call fcn.100a1960
mov eax, dword [esp + 0x1c]
add esp, 4
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x13b0]
xor ecx, esp
call fcn.100e78b2
mov esp, ebp
pop ebp
ret
push ebx
call fcn.100a28b0
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.100a1960
mov eax, dword [esp + 0x1c]
add esp, 4
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x13b0]
xor ecx, esp
call fcn.100e78b2
mov esp, ebp
pop ebp
ret
push edi
push str.bail
push esi
call ebx
add esp, 0xc
test eax, eax
jne 0x1003928b
mov edx, dword [esp + 0x10]
add edx, 0xfffffffe
jne 0x1003928b
mov esi, dword [esp + 0x7c]
call fcn.10038a50
mov dword [0x10122724], eax
mov eax, dword [esp + 0x18]
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x13b0]
xor ecx, esp
call fcn.100e78b2
mov esp, ebp
pop ebp
ret
push edi
push str.breakpoint
push esi
call ebx
add esp, 0xc
test eax, eax
jne 0x1003b125
inc dword [0x10122734]
mov eax, dword [esp + 0x18]
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x13b0]
xor ecx, esp
call fcn.100e78b2
mov esp, ebp
pop ebp
ret
cmp eax, 0x64
jne 0x10039501
cmp edi, 1
jle 0x100393b3
push edi
push str.databases
push esi
call ebx
add esp, 0xc
test eax, eax
jne 0x100393b3
cmp dword [esp + 0x10], 1
jne 0x100393b3
mov ebx, dword [esp + 0x14]
mov esi, ebx
mov dword [esp + 0x50], eax
call fcn.10038770
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 0x10037330
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.100825d0
mov esi, dword [esp + 0x64]
add esp, 0x14
test esi, esi
je 0x1003b346
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.1003fb70
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.100e78b2
mov esp, ebp
pop ebp
ret
push edi
push str.dump
push esi
call ebx
add esp, 0xc
test eax, eax
jne 0x1003b125
cmp dword [esp + 0x10], 3
jge 0x1003b125
mov esi, dword [esp + 0x14]
call fcn.10038770
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.100825d0
mov ebx, dword [esp + 0x34]
add esp, 0x24
mov dword [esi + 0x18], edi
cmp ebx, 1
jne 0x10039440
mov eax, str.SELECT_name__type__sql_FROM_sqlite_master_WHERE_sql_NOT_NULL_AND_typetable_AND_name_sqlite_sequence
call fcn.10038660
mov eax, str.SELECT_name__type__sql_FROM_sqlite_master_WHERE_namesqlite_sequence
call fcn.10038660
push edi
push esi
mov edx, str.SELECT_sql_FROM_sqlite_master_WHERE_sql_NOT_NULL_AND_type_IN__index_trigger_view_
call fcn.10037550
add esp, 8
jmp 0x10039482
mov edi, 1
cmp ebx, edi
jle 0x10039482
lea esp, [esp]
mov eax, dword [esp + edi*4 + 0x78]
mov dword [0x10122730], eax
mov eax, str.SELECT_name__type__sql_FROM_sqlite_master_WHERE_tbl_name_LIKE_shellstatic___AND_typetable__AND_sql_NOT_NULL
call fcn.10038660
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.10037550
inc edi
add esp, 8
cmp edi, ebx
mov dword [0x10122730], 0
jl 0x10039450
cmp dword [esi + 0x20], 0
je 0x100394a1
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.100825d0
mov eax, dword [esi]
push 0
push 0
push 0
push str.RELEASE_dump_
push eax
call fcn.100825d0
add esp, 0x28
cmp dword [esi + 0x18], 0
mov eax, str.ROLLBACK_____due_to_errors_n
jne 0x100394da
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.100e78b2
mov esp, ebp
pop ebp
ret
cmp eax, 0x65
jne 0x1003968f
push edi
push str.echo
push esi
call ebx
add esp, 0xc
test eax, eax
jne 0x1003954c
mov edx, dword [esp + 0x10]
add edx, 0xfffffffe
jne 0x1003954c
mov esi, dword [esp + 0x7c]
call fcn.10038a50
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.100e78b2
mov esp, ebp
pop ebp
ret
push edi
push 0x10103330
push esi
call ebx
add esp, 0xc
test eax, eax
jne 0x1003957f
cmp dword [esp + 0x10], 1
jle 0x1003a492
mov eax, dword [esp + 0x7c]
call fcn.100388f0
test eax, eax
je 0x1003a492
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 0x1003b125
mov eax, dword [esp + 0x10]
cmp eax, 3
jge 0x1003b125
cmp eax, 2
jl 0x100395b7
mov esi, dword [esp + 0x7c]
call fcn.10038a50
cmp eax, 1
jne 0x10039639
mov esi, dword [esp + 0x14]
cmp dword [esi + 0x374], 0
jne 0x100395f4
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 0x1003b343
mov eax, dword [esp + 0x14]
cmp dword [eax + 0x374], 0
je 0x1003b346
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.100e78b2
mov esp, ebp
pop ebp
ret
cmp eax, 0x68
jne 0x10039743
push edi
push str.header
push esi
call ebx
add esp, 0xc
test eax, eax
je 0x100396b8
push edi
push str.headers
push esi
call ebx
add esp, 0xc
test eax, eax
jne 0x100396ea
mov edx, dword [esp + 0x10]
add edx, 0xfffffffe
jne 0x100396ea
mov esi, dword [esp + 0x7c]
call fcn.10038a50
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.100e78b2
mov esp, ebp
pop ebp
ret
push edi
push str.help
push esi
call ebx
add esp, 0xc
test eax, eax
jne 0x1003b125
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 0x1010272c
call esi
mov edi, dword [sym.imp.MSVCR90.dll_fprintf]
add eax, 0x40
push eax
call edi
add esp, 0xc
call fcn.10036290
test eax, eax
je 0x1003b346
push str..timer_ONOFF__________Turn_the_CPU_timer_measurement_on_or_off_n
push 0x1010272c
call esi
add eax, 0x40
push eax
call edi
jmp 0x1003b343
cmp eax, 0x69
jne 0x10039df0
push edi
push str.import
push esi
call ebx
add esp, 0xc
test eax, eax
jne 0x10039ce8
cmp dword [esp + 0x10], 3
jne 0x10039ce8
mov ebx, dword [esp + 0x14]
xor edi, edi
mov dword [esp + 0x10], edi
mov esi, ebx
mov dword [0x1012272c], 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.10038770
lea esi, [ebx + 0x2c]
mov ecx, esi
call fcn.10036660
cmp eax, edi
jne 0x100397ba
push str.Error:_non_null_separator_required_for_import_n
jmp 0x100390e7
cmp eax, 1
jle 0x100397c9
push str.Error:_multi_character_separators_not_allowed_for_import_n
jmp 0x100390e7
mov edi, dword [esp + 0x7c]
cmp byte [edi], 0x7c
mov dword [esp + 0x2c], edi
mov dword [esp + 0x40], 1
jne 0x10039802
lea edx, [edi + 1]
push 0x101033c4
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 0x1003981b
push 0x101033d0
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 0x10039830
push edi
push str.Error:_cannot_open___s__n
jmp 0x100390b5
mov edx, dword [esp + 0x80]
movsx ecx, byte [esi]
push edx
push str.SELECT__FROM__s
mov dword [esp + 0x50], ecx
call fcn.100412e0
mov edi, eax
add esp, 8
test edi, edi
jne 0x10039875
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 0x100390c5
mov ecx, edi
call fcn.10036660
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.10087a50
mov esi, eax
add esp, 0x14
test esi, esi
je 0x100399d3
mov eax, dword [0x10122728]
push eax
call fcn.100a28b0
add esp, 4
call fcn.1007aa90
test eax, eax
jne 0x100399d3
mov ecx, dword [esp + 0x80]
push ecx
push str.CREATE_TABLE__s
call fcn.100412e0
mov esi, eax
add esp, 8
lea eax, [esp + 0x2c]
mov bl, 0x28
call fcn.10038d30
test eax, eax
je 0x10039991
mov edx, dword [esp + 0x34]
push edx
movsx eax, bl
push eax
push esi
push str._z_c_n____s__TEXT
call fcn.100412e0
mov ecx, dword [esp + 0x54]
add esp, 0x10
mov esi, eax
mov bl, 0x2c
cmp ecx, dword [esp + 0x48]
jne 0x10039916
lea eax, [esp + 0x2c]
call fcn.10038d30
test eax, eax
jne 0x100398e4
push esi
push str._z_n_
call fcn.100412e0
mov ebx, dword [esp + 0x1c]
mov edx, dword [ebx]
push 0
push 0
mov esi, eax
push 0
push esi
push edx
call fcn.100825d0
push esi
mov dword [esp + 0x38], eax
call fcn.1003fb70
add esp, 0x20
cmp dword [esp + 0x18], 0
je 0x100399bc
mov eax, dword [0x10122728]
push eax
call fcn.100a28b0
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.1003fb70
mov eax, dword [esp + 0x44]
push eax
call dword [esp + 0x34]
add esp, 0x18
jmp 0x100390c8
push esi
call fcn.1003fb70
mov edx, dword [esp + 0x38]
push edx
call fcn.1003fb70
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 0x100390b5
mov edx, dword [ebx]
push 0
lea ecx, [esp + 0x14]
push ecx
push 0xffffffffffffffff
push edi
push edx
call fcn.10087a50
add esp, 0x14
mov esi, eax
push edi
call fcn.1003fb70
mov eax, dword [esp + 0x14]
add esp, 4
test esi, esi
je 0x10039a26
test eax, eax
je 0x100399f1
push eax
call fcn.1005e850
add esp, 4
mov eax, dword [0x10122728]
push eax
call fcn.100a28b0
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 0x100390c8
test eax, eax
je 0x10039a30
movzx edi, word [eax + 0x2c]
jmp 0x10039a32
xor edi, edi
push eax
call fcn.1005e850
add esp, 4
mov dword [esp + 0x10], 0
test edi, edi
je 0x10039005
mov ebx, dword [esp + 0x28]
lea edx, [edi + ebx]
lea eax, [edx + edx + 0x14]
push eax
call fcn.1003f8c0
mov esi, eax
add esp, 4
test esi, esi
jne 0x10039a88
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 0x100390c5
mov edx, dword [esp + 0x80]
push edx
push str.INSERT_INTO___w__VALUES__
push esi
add ebx, 0x14
push ebx
call fcn.10041370
add esp, 0x10
mov ecx, esi
call fcn.10036660
cmp edi, 1
jle 0x10039ac0
lea ecx, [edi - 1]
mov byte [eax + esi], 0x2c
inc eax
mov byte [eax + esi], 0x3f
inc eax
sub ecx, 1
jne 0x10039ab1
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.10087a50
mov ebx, eax
push esi
mov dword [esp + 0x30], ebx
call fcn.1003fb70
add esp, 0x18
test ebx, ebx
je 0x10039b3b
mov eax, dword [0x10122728]
push eax
call fcn.100a28b0
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 0x10039b2a
push eax
call fcn.1005e850
add esp, 4
mov ecx, dword [esp + 0x30]
push ecx
call dword [esp + 0x20]
add esp, 4
jmp 0x100390c8
mov ecx, dword [0x10122728]
movzx eax, byte [ecx + 0x3e]
mov dword [esp + 0x28], eax
test eax, eax
je 0x10039b61
push 0
push 0
push 0
push str.BEGIN
push ecx
call fcn.100825d0
add esp, 0x14
mov edx, dword [esp + 0x40]
xor esi, esi
mov dword [esp + 0x20], edx
test edi, edi
jle 0x10039bea
nop
lea eax, [esp + 0x2c]
call fcn.10038d30
test eax, eax
jne 0x10039b81
test esi, esi
je 0x10039bea
push 0xffffffffffffffff
push 0xffffffffffffffff
push eax
mov eax, dword [esp + 0x1c]
lea ebx, [esi + 1]
push ebx
push eax
call fcn.1005fe70
lea ecx, [edi - 1]
add esp, 0x14
cmp esi, ecx
jge 0x10039be5
mov edx, dword [esp + 0x48]
cmp dword [esp + 0x44], edx
je 0x10039be5
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 0x10039be5
mov edx, dword [esp + 0x10]
push esi
push edx
call fcn.1005fe40
inc esi
add esp, 8
cmp esi, edi
jl 0x10039bd2
inc esi
cmp esi, edi
jl 0x10039b70
mov ebx, dword [esp + 0x44]
cmp ebx, dword [esp + 0x48]
jne 0x10039c2c
lea eax, [esp + 0x2c]
call fcn.10038d30
mov ebx, dword [esp + 0x44]
inc esi
cmp ebx, dword [esp + 0x48]
je 0x10039bf4
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 0x10039c81
mov edx, dword [esp + 0x10]
push edx
call fcn.1005f360
mov eax, dword [esp + 0x14]
push eax
call fcn.1005e8f0
add esp, 8
mov dword [esp + 0x18], eax
test eax, eax
je 0x10039c81
mov ecx, dword [0x10122728]
push ecx
call fcn.100a28b0
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 0x10039b61
mov ecx, dword [esp + 0x30]
push ecx
call dword [esp + 0x20]
mov edx, dword [esp + 0x38]
push edx
call fcn.1003fb70
mov eax, dword [esp + 0x18]
push eax
call fcn.1005e850
add esp, 0xc
cmp dword [esp + 0x28], 0
je 0x1003b346
mov ecx, dword [0x10122728]
push 0
push 0
push 0
push str.COMMIT
push ecx
call fcn.100825d0
mov eax, dword [esp + 0x2c]
add esp, 0x14
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x13b0]
xor ecx, esp
call fcn.100e78b2
mov esp, ebp
pop ebp
ret
push edi
push str.indices
push esi
call ebx
add esp, 0xc
test eax, eax
jne 0x1003b125
cmp dword [esp + 0x10], 3
jge 0x1003b125
mov ebx, dword [esp + 0x14]
mov esi, ebx
mov dword [esp + 0x24], eax
call fcn.10038770
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 0x10039d60
mov ecx, dword [ebx]
lea edx, [esp + 0x24]
push edx
lea eax, [esp + 0xd94]
push eax
push 0x10037330
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.100825d0
jmp 0x10039d8f
mov edx, dword [esp + 0x7c]
lea eax, [esp + 0x24]
push eax
lea ecx, [esp + 0xd94]
push ecx
push 0x10037330
mov dword [0x10122730], 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.100825d0
mov dword [0x10122730], edi
mov esi, dword [esp + 0x38]
add esp, 0x14
mov dword [esp + 0x18], eax
cmp esi, edi
je 0x10039dde
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.1003fb70
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.100e78b2
mov esp, ebp
pop ebp
ret
cmp eax, edi
je 0x1003b346
push str.Error:_querying_sqlite_master_and_sqlite_temp_master_n
jmp 0x1003a122
cmp eax, 0x6c
jne 0x10039ef2
push edi
push str.load
push esi
call ebx
add esp, 0xc
test eax, eax
jne 0x10039e9c
cmp dword [esp + 0x10], 2
jl 0x10039e9c
mov esi, dword [esp + 0x14]
mov dword [esp + 0x28], eax
call fcn.10038770
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.10082e70
add esp, 0xc
mov dword [esp + 0x18], eax
test eax, eax
je 0x1003b346
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.1003fb70
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.100e78b2
mov esp, ebp
pop ebp
ret
push edi
push 0x101036d0
push esi
call ebx
add esp, 0xc
test eax, eax
jne 0x1003b125
cmp dword [esp + 0x10], 2
jl 0x1003b125
mov ebx, dword [esp + 0x14]
mov esi, dword [ebx + 0x620]
call fcn.10038b70
mov edi, dword [esp + 0x7c]
call fcn.10038ba0
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.100e78b2
mov esp, ebp
pop ebp
ret
cmp eax, 0x6d
jne 0x1003a1da
push edi
push str.mode
push esi
call ebx
add esp, 0xc
test eax, eax
jne 0x1003a156
cmp dword [esp + 0x10], 2
jne 0x1003a156
mov esi, dword [esp + 0x7c]
mov ecx, esi
call fcn.10036660
cmp eax, 4
jne 0x10039f73
push eax
push str.line
push esi
call ebx
add esp, 0xc
test eax, eax
je 0x10039f8c
push 4
push str.list
push esi
call ebx
add esp, 0xc
test eax, eax
jne 0x1003a049
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.100e78b2
mov esp, ebp
pop ebp
ret
cmp eax, 5
jne 0x10039fb0
push eax
push str.lines
push esi
call ebx
add esp, 0xc
test eax, eax
jne 0x1003a11d
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.100e78b2
mov esp, ebp
pop ebp
ret
cmp eax, 6
jne 0x1003a00c
push eax
push 0x101026d4
push esi
call ebx
add esp, 0xc
test eax, eax
je 0x1003a025
push 6
push str.insert
push esi
call ebx
add esp, 0xc
test eax, eax
jne 0x1003a11d
mov eax, dword [esp + 0x14]
push str.table
push eax
mov dword [eax + 0x1c], 5
call fcn.10037350
mov eax, dword [esp + 0x20]
add esp, 8
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x13b0]
xor ecx, esp
call fcn.100e78b2
mov esp, ebp
pop ebp
ret
cmp eax, 7
jne 0x1003a082
push eax
push 0x101036e4
push esi
call ebx
add esp, 0xc
test eax, eax
jne 0x1003a11d
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.100e78b2
mov esp, ebp
pop ebp
ret
push 4
push str.html
push esi
call ebx
add esp, 0xc
test eax, eax
jne 0x1003a0ec
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.100e78b2
mov esp, ebp
pop ebp
ret
cmp eax, 3
jne 0x1003a11d
push eax
push 0x101026b0
push esi
call ebx
add esp, 0xc
test eax, eax
jne 0x1003a0bb
mov eax, dword [esp + 0x14]
mov dword [eax + 0x1c], 6
push 0x101036ec
add eax, 0x2c
push eax
push 0x14
call fcn.10041370
jmp 0x1003b343
push 3
push 0x101026ac
push esi
call ebx
add esp, 0xc
test eax, eax
jne 0x1003a11d
mov eax, dword [esp + 0x14]
mov dword [eax + 0x1c], 7
push 0x10102874
add eax, 0x2c
push eax
push 0x14
call fcn.10041370
jmp 0x1003b343
push 4
push str.tabs
push esi
call ebx
add esp, 0xc
test eax, eax
jne 0x1003a11d
mov eax, dword [esp + 0x14]
mov dword [eax + 0x1c], 2
push 0x100f6898
add eax, 0x2c
push eax
push 0x14
call fcn.10041370
jmp 0x1003b343
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.100e78b2
mov esp, ebp
pop ebp
ret
push edi
push str.mode
push esi
call ebx
add esp, 0xc
test eax, eax
jne 0x1003b125
cmp dword [esp + 0x10], 3
jne 0x1003b125
mov ecx, dword [esp + 0x7c]
call fcn.10036660
cmp eax, 6
jne 0x1003a1c8
push eax
push str.insert
push ecx
call ebx
add esp, 0xc
test eax, eax
jne 0x1003a1c8
mov ecx, dword [esp + 0x80]
mov eax, dword [esp + 0x14]
push ecx
push eax
mov dword [eax + 0x1c], 5
call fcn.10037350
mov eax, dword [esp + 0x20]
add esp, 8
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x13b0]
xor ecx, esp
call fcn.100e78b2
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 0x1003b32b
cmp eax, 0x6e
jne 0x1003a238
push edi
push str.nullvalue
push esi
call ebx
add esp, 0xc
test eax, eax
jne 0x1003b125
cmp dword [esp + 0x10], 2
jne 0x1003b125
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.10041370
mov eax, dword [esp + 0x2c]
add esp, 0x14
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x13b0]
xor ecx, esp
call fcn.100e78b2
mov esp, ebp
pop ebp
ret
cmp eax, 0x6f
jne 0x1003a382
push edi
push str.output
push esi
call ebx
add esp, 0xc
test eax, eax
jne 0x1003b125
cmp dword [esp + 0x10], 2
jne 0x1003b125
mov ebx, dword [esp + 0x14]
add ebx, 0x510
cmp byte [ebx], 0x7c
jne 0x1003a281
mov edi, dword [esp + 0x14]
mov edx, dword [edi + 0x10]
push edx
call sub.MSVCR90.dll__pclose
add esp, 4
jmp 0x1003a291
mov eax, dword [esp + 0x14]
mov esi, dword [eax + 0x10]
call fcn.10038b70
mov edi, dword [esp + 0x14]
mov esi, dword [esp + 0x7c]
mov byte [ebx], 0
cmp byte [esi], 0x7c
jne 0x1003a2e2
inc esi
push 0x10103794
push esi
call sub.MSVCR90.dll__popen
add esp, 8
mov dword [edi + 0x10], eax
test eax, eax
jne 0x1003a2db
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 0x1003a135
mov ecx, dword [esp + 0x7c]
push ecx
jmp 0x1003a356
mov edi, esi
call fcn.10038ba0
mov edx, dword [esp + 0x14]
mov dword [edx + 0x10], eax
test eax, eax
jne 0x1003a355
mov ecx, 0x10102ee0
mov eax, esi
jmp 0x1003a300
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x1003a320
test dl, dl
je 0x1003a31c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x1003a320
add eax, 2
add ecx, 2
test dl, dl
jne 0x1003a300
xor eax, eax
jmp 0x1003a325
sbb eax, eax
sbb eax, 0xffffffff
mov edi, dword [sym.imp.MSVCR90.dll___iob_func]
test eax, eax
je 0x1003a344
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 0x1003a135
push esi
push 0x1010272c
push ebx
push 0x104
call fcn.10041370
mov eax, dword [esp + 0x28]
add esp, 0x10
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x13b0]
xor ecx, esp
call fcn.100e78b2
mov esp, ebp
pop ebp
ret
cmp eax, 0x70
jne 0x1003a46e
cmp edi, 3
jl 0x1003a409
push edi
push str.print
push esi
call ebx
add esp, 0xc
test eax, eax
jne 0x1003a409
mov edi, dword [sym.imp.MSVCR90.dll_fprintf]
mov ebx, dword [esp + 0x14]
mov esi, 1
cmp dword [esp + 0x10], esi
jle 0x1003a3e2
cmp esi, 1
jle 0x1003a3c8
mov edx, dword [ebx + 0x10]
push 0x101036ec
push edx
call edi
add esp, 8
mov eax, dword [esp + esi*4 + 0x78]
mov ecx, dword [ebx + 0x10]
push eax
push 0x1010272c
push ecx
call edi
inc esi
add esp, 0xc
cmp esi, dword [esp + 0x10]
jl 0x1003a3b5
mov edx, dword [ebx + 0x10]
push 0x10102464
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.100e78b2
mov esp, ebp
pop ebp
ret
push edi
push str.prompt
push esi
call ebx
add esp, 0xc
test eax, eax
jne 0x1003b125
mov eax, dword [esp + 0x10]
cmp eax, 2
je 0x1003a432
cmp eax, 3
jne 0x1003b125
cmp eax, 2
mov esi, dword [sym.imp.MSVCR90.dll_strncpy]
jl 0x1003a44f
mov eax, dword [esp + 0x7c]
push 0x13
push eax
push 0x10122420
call esi
mov eax, dword [esp + 0x1c]
add esp, 0xc
cmp eax, 3
jl 0x1003b346
mov ecx, dword [esp + 0x80]
push 0x13
push ecx
push 0x10122404
call esi
jmp 0x1003b343
cmp eax, 0x71
jne 0x1003a4b3
push edi
push str.quit
push esi
call ebx
add esp, 0xc
test eax, eax
jne 0x1003b125
cmp dword [esp + 0x10], 1
jne 0x1003b125
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.100e78b2
mov esp, ebp
pop ebp
ret
cmp eax, 0x72
jne 0x1003a6bc
cmp edi, 3
jl 0x1003b125
push edi
push str.read
push esi
call ebx
add esp, 0xc
test eax, eax
jne 0x1003a51b
cmp dword [esp + 0x10], 2
jne 0x1003a51b
mov edi, dword [esp + 0x7c]
push 0x101033d0
push edi
call dword [sym.imp.MSVCR90.dll_fopen]
mov esi, eax
add esp, 8
test esi, esi
jne 0x1003a500
push edi
push str.Error:_cannot_open___s__n
jmp 0x1003b32b
mov edx, dword [esp + 0x14]
push esi
push edx
call fcn.1003b4e0
push esi
mov dword [esp + 0x24], eax
call dword [sym.imp.MSVCR90.dll_fclose]
jmp 0x1003b343
push edi
push str.restore
push esi
call ebx
add esp, 0xc
test eax, eax
jne 0x1003b125
mov eax, dword [esp + 0x10]
lea ecx, [eax - 2]
cmp ecx, 1
ja 0x1003b125
xor ebx, ebx
cmp eax, 2
jne 0x1003a551
mov esi, dword [esp + 0x7c]
mov edi, str.main
jmp 0x1003a55c
mov esi, dword [esp + 0x80]
mov edi, dword [esp + 0x7c]
lea edx, [esp + 0x20]
push edx
push esi
call fcn.100a37c0
add esp, 8
test eax, eax
je 0x1003a597
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.100a1960
add esp, 0x10
jmp 0x100390c8
mov esi, dword [esp + 0x14]
call fcn.10038770
mov eax, dword [esp + 0x20]
push str.main
push eax
mov ecx, esi
mov edx, dword [ecx]
push edi
push edx
call fcn.10058ed0
mov esi, eax
add esp, 0x10
test esi, esi
jne 0x1003a5d5
mov eax, dword [esp + 0x14]
mov ecx, dword [eax]
push ecx
call fcn.100a28b0
add esp, 4
push eax
push str.Error:__s_n
jmp 0x1003a574
push 0x64
push esi
call fcn.10059240
mov edi, eax
add esp, 8
test edi, edi
je 0x1003a628
cmp edi, 5
je 0x1003a62d
push esi
call fcn.10059c90
add esp, 4
cmp edi, 0x65
jne 0x1003a641
mov eax, dword [esp + 0x20]
push 0
mov dword [esp + 0x1c], 0
call fcn.100a1960
mov eax, dword [esp + 0x1c]
add esp, 4
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x13b0]
xor ecx, esp
call fcn.100e78b2
mov esp, ebp
pop ebp
ret
cmp edi, 5
jne 0x1003a5d5
mov edx, ebx
inc ebx
cmp edx, 3
jge 0x1003a5eb
push 0x64
call fcn.100a3be0
add esp, 4
jmp 0x1003a5d5
cmp edi, 5
je 0x1003a675
cmp edi, 6
je 0x1003a675
mov eax, dword [esp + 0x14]
mov ecx, dword [eax]
push ecx
call fcn.100a28b0
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 0x1003a68d
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.100a1960
mov eax, dword [esp + 0x1c]
add esp, 4
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x13b0]
xor ecx, esp
call fcn.100e78b2
mov esp, ebp
pop ebp
ret
cmp eax, 0x73
jne 0x1003aaec
push edi
push str.schema
push esi
call ebx
add esp, 0xc
test eax, eax
jne 0x1003a89a
cmp dword [esp + 0x10], 3
jge 0x1003a89a
mov ebx, dword [esp + 0x14]
mov esi, ebx
mov dword [esp + 0x18], eax
call fcn.10038770
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 0x1003a858
mov ebx, dword [esp + 0x7c]
mov al, byte [ebx]
test al, al
je 0x1003a747
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 0x1003a734
mov ecx, str.sqlite_master
mov eax, ebx
mov edi, edi
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x1003a772
test dl, dl
je 0x1003a76c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x1003a772
add eax, 2
add ecx, 2
test dl, dl
jne 0x1003a750
xor edi, edi
xor eax, eax
jmp 0x1003a779
sbb eax, eax
sbb eax, 0xffffffff
xor edi, edi
cmp eax, edi
jne 0x1003a7cd
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], 0x101038a4
mov dword [esp + 0x70], edi
push eax
lea ecx, [esp + 0x78]
push ecx
lea edx, [esp + 0x774]
push 1
push edx
call fcn.10036ac0
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.100e78b2
mov esp, ebp
pop ebp
ret
mov ecx, str.sqlite_temp_master
mov eax, ebx
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x1003a7f4
test dl, dl
je 0x1003a7f0
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x1003a7f4
add eax, 2
add ecx, 2
test dl, dl
jne 0x1003a7d4
xor eax, eax
jmp 0x1003a7f9
sbb eax, eax
sbb eax, 0xffffffff
cmp eax, edi
jne 0x1003a824
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], 0x101038a4
mov dword [esp + 0x60], edi
push eax
lea ecx, [esp + 0x68]
jmp 0x1003a79f
mov edx, dword [esp + 0x14]
lea eax, [esp + 0x18]
push eax
mov eax, dword [edx]
lea ecx, [esp + 0x76c]
push ecx
push 0x10037330
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 [0x10122730], ebx
call fcn.100825d0
add esp, 0x14
mov dword [0x10122730], edi
jmp 0x1003a87c
mov eax, dword [ebx]
lea ecx, [esp + 0x18]
push ecx
lea edx, [esp + 0x76c]
push edx
push 0x10037330
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.100825d0
add esp, 0x14
xor edi, edi
mov esi, dword [esp + 0x18]
cmp esi, edi
jne 0x10039d9e
cmp eax, edi
je 0x1003a7b2
push str.Error:_querying_schema_information_n
jmp 0x1003a122
push edi
push str.separator
push esi
call ebx
add esp, 0xc
test eax, eax
jne 0x1003a8e8
cmp dword [esp + 0x10], 2
jne 0x1003a8e8
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.10041370
mov eax, dword [esp + 0x2c]
add esp, 0x14
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x13b0]
xor ecx, esp
call fcn.100e78b2
mov esp, ebp
pop ebp
ret
push edi
push str.show
push esi
call ebx
add esp, 0xc
test eax, eax
jne 0x1003aaa2
cmp dword [esp + 0x10], 1
jne 0x1003aaa2
mov eax, dword [esp + 0x14]
cmp dword [eax + 4], 0
mov eax, 0x10102ed8
jne 0x1003a91b
mov eax, 0x10102ee0
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, 0x10102ed8
jne 0x1003a94c
mov eax, 0x10102ee0
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, 0x10102ed8
jne 0x1003a970
mov eax, 0x10102ee0
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 + 0x101200a0]
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.100367d0
mov eax, dword [edi + 0x10]
push 0x10102464
push eax
call ebx
add esp, 0x38
lea ecx, [edi + 0x510]
call fcn.10036660
test eax, eax
jne 0x1003a9df
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.100367d0
mov ecx, dword [edi + 0x10]
push 0x10102464
push ecx
call ebx
add esp, 0x28
cmp dword [edi + 8], 0
mov eax, 0x10102ed8
jne 0x1003aa2a
mov eax, 0x10102ee0
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 0x1003aa7b
push eax
mov eax, dword [edi + 0x10]
push 0x10103bb4
push eax
call ebx
add dword [esp + 0x30], 4
inc esi
add esp, 0xc
cmp esi, 0x64
jl 0x1003aa57
mov ecx, dword [edi + 0x10]
push 0x10102464
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.100e78b2
mov esp, ebp
pop ebp
ret
push edi
push str.stats
push esi
call ebx
add esp, 0xc
test eax, eax
jne 0x1003b125
mov edx, dword [esp + 0x10]
add edx, 0xfffffffe
jne 0x1003b125
mov esi, dword [esp + 0x7c]
call fcn.10038a50
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.100e78b2
mov esp, ebp
pop ebp
ret
cmp eax, 0x74
jne 0x1003b125
cmp edi, 1
jle 0x1003ae53
push edi
push str.tables
push esi
call ebx
add esp, 0xc
test eax, eax
jne 0x1003ae53
cmp dword [esp + 0x10], 3
jge 0x1003ae53
mov ebx, dword [esp + 0x14]
mov esi, ebx
call fcn.10038770
mov eax, dword [ebx]
push 0
lea edx, [esp + 0x20]
push edx
push 0xffffffffffffffff
push str.PRAGMA_database_list
push eax
call fcn.10087a80
add esp, 0x14
test eax, eax
jne 0x1003b34a
push str.SELECT_name_FROM_sqlite_master_WHERE_type_IN__table_view____AND_name_NOT_LIKE_sqlite______AND_name_LIKE__1
call fcn.100412e0
mov esi, dword [esp + 0x20]
push esi
mov edi, eax
call fcn.1005f360
add esp, 8
cmp eax, 0x64
jne 0x1003ac21
jmp 0x1003ab70
push 1
push esi
call fcn.1005f960
add esp, 8
test eax, eax
je 0x1003ac0b
mov edx, str.main
mov ecx, eax
lea ebx, [ebx]
mov bl, byte [ecx]
cmp bl, byte [edx]
jne 0x1003abb0
test bl, bl
je 0x1003abac
mov bl, byte [ecx + 1]
cmp bl, byte [edx + 1]
jne 0x1003abb0
add ecx, 2
add edx, 2
test bl, bl
jne 0x1003ab90
xor ecx, ecx
jmp 0x1003abb5
sbb ecx, ecx
sbb ecx, 0xffffffff
test ecx, ecx
je 0x1003ac0b
mov edx, str.temp
mov ecx, eax
mov bl, byte [ecx]
cmp bl, byte [edx]
jne 0x1003abe0
test bl, bl
je 0x1003abdc
mov bl, byte [ecx + 1]
cmp bl, byte [edx + 1]
jne 0x1003abe0
add ecx, 2
add edx, 2
test bl, bl
jne 0x1003abc0
xor ecx, ecx
jmp 0x1003abe5
sbb ecx, ecx
sbb ecx, 0xffffffff
test ecx, ecx
jne 0x1003abf9
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.100412e0
add esp, 8
jmp 0x1003ac09
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.100412e0
add esp, 0x10
mov edi, eax
push esi
call fcn.1005f360
add esp, 4
cmp eax, 0x64
je 0x1003ab70
mov ebx, dword [esp + 0x14]
push esi
call fcn.1005e850
push edi
push str._z_ORDER_BY_1
call fcn.100412e0
mov edx, dword [ebx]
push 0
lea ecx, [esp + 0x2c]
push ecx
mov edi, eax
push 0xffffffffffffffff
push edi
push edx
call fcn.10087a80
mov esi, eax
push edi
mov dword [esp + 0x3c], esi
call fcn.1003fb70
add esp, 0x24
test esi, esi
je 0x1003ac70
mov eax, esi
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x13b0]
xor ecx, esp
call fcn.100e78b2
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 0x1003ac9a
mov eax, dword [esp + 0x7c]
mov edi, dword [esp + 0x1c]
push 0xffffffffffffffff
push 0xffffffffffffffff
push eax
push 1
push edi
call fcn.1005fe70
jmp 0x1003acb3
mov ecx, dword [esp + 0x1c]
push 0
push 0xffffffffffffffff
push 0x10103d84
push 1
push ecx
call fcn.1005fe70
mov edi, dword [esp + 0x30]
add esp, 0x14
push edi
call fcn.1005f360
add esp, 4
cmp eax, 0x64
jne 0x1003ad3f
cmp esi, dword [esp + 0x24]
jl 0x1003acf5
mov edi, dword [esp + 0x24]
lea edi, [edi + edi + 0xa]
lea edx, [edi*4]
push edx
push ebx
call fcn.1003fdc0
add esp, 8
test eax, eax
je 0x1003ad23
mov ebx, eax
mov dword [esp + 0x24], edi
mov edi, dword [esp + 0x1c]
mov dword [esp + 0x20], ebx
push 0
push edi
call fcn.1005f960
push eax
push 0x1010272c
call fcn.100412e0
add esp, 0x10
mov dword [ebx + esi*4], eax
test eax, eax
je 0x1003ad13
inc esi
push edi
call fcn.1005f360
add esp, 4
cmp eax, 0x64
je 0x1003acc4
jmp 0x1003ad3f
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.1005e850
add esp, 4
test esi, esi
jle 0x1003ae14
xor edi, edi
xor edx, edx
mov dword [esp + 0x28], edi
test esi, esi
jle 0x1003ad77
mov ebx, dword [esp + 0x20]
mov ecx, dword [ebx + edx*4]
call fcn.10036660
cmp eax, edi
jle 0x1003ad6e
mov edi, eax
inc edx
cmp edx, esi
jl 0x1003ad60
mov dword [esp + 0x28], edi
mov eax, 0x50
add edi, 2
cdq
idiv edi
mov ecx, eax
cmp ecx, 1
jge 0x1003ad8e
mov ecx, 1
lea eax, [ecx + esi - 1]
cdq
idiv ecx
mov dword [esp + 0x24], 0
mov ebx, eax
test ebx, ebx
jle 0x1003ae14
mov edi, dword [esp + 0x24]
cmp edi, esi
jge 0x1003adf1
jmp 0x1003adb0
cmp edi, ebx
mov ecx, 0x10101d23
jl 0x1003adbe
mov ecx, 0x101027a4
mov eax, dword [esp + 0x20]
mov eax, dword [eax + edi*4]
test eax, eax
jne 0x1003adce
mov eax, 0x10101d23
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 0x1003adb0
mov edx, dword [esp + 0x14]
mov eax, dword [edx + 0x10]
push 0x10102464
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 0x1003ada3
mov ebx, dword [esp + 0x20]
xor edi, edi
test esi, esi
jle 0x1003ae31
mov edi, edi
mov ecx, dword [ebx + edi*4]
push ecx
call fcn.1003fb70
inc edi
add esp, 4
cmp edi, esi
jl 0x1003ae20
push ebx
call fcn.1003fb70
mov eax, dword [esp + 0x1c]
add esp, 4
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x13b0]
xor ecx, esp
call fcn.100e78b2
mov esp, ebp
pop ebp
ret
cmp edi, 8
jl 0x1003b0d2
push edi
push str.testctrl
push esi
call ebx
add esp, 0xc
test eax, eax
jne 0x1003b0d2
cmp dword [esp + 0x10], 2
jl 0x1003b0d2
mov esi, dword [esp + 0x14]
mov dword [esp + 0x1c], 0xffffffff
call fcn.10038770
mov esi, dword [esp + 0x7c]
mov ecx, esi
call fcn.10036660
mov dword [esp + 0x28], eax
mov dword [esp + 0x20], 0x100fbf34
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 0x1003aed1
cmp dword [esp + 0x1c], 0
jge 0x1003af1c
mov edx, dword [esp + 0x20]
mov eax, dword [edx]
mov dword [esp + 0x1c], eax
mov eax, dword [esp + 0x20]
add eax, 8
cmp eax, 0x100fbf9c
mov dword [esp + 0x20], eax
jl 0x1003aea3
cmp dword [esp + 0x1c], 0
jge 0x1003aef5
mov eax, esi
call fcn.100388f0
mov dword [esp + 0x1c], eax
mov eax, dword [esp + 0x1c]
add eax, 0xfffffffb
cmp eax, 0xe
ja 0x1003b0bb
cmp eax, 0xa
ja case.0x1003af15.3
movzx ecx, byte [eax + 0x1003b374]
jmp dword [ecx*4 + 0x1003b360]
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 0x1003aeea
cmp dword [esp + 0x10], 3
jne 0x1003af87
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.100a3d10
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.100e78b2
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 0x1003b343
cmp dword [esp + 0x10], 2
jne 0x1003afdc
mov eax, dword [esp + 0x1c]
push eax
call fcn.100a3d10
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.100e78b2
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 0x1003b343
cmp dword [esp + 0x10], 3
jne 0x1003b03e
mov eax, dword [esp + 0x80]
call fcn.100388f0
push eax
mov eax, dword [esp + 0x20]
push eax
call fcn.100a3d10
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.100e78b2
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 0x1003b343
cmp dword [esp + 0x10], 3
jne 0x1003af87
mov esi, dword [esp + 0x80]
call fcn.10038a50
push eax
mov eax, dword [esp + 0x20]
push eax
call fcn.100a3d10
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.100e78b2
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 0x1003b343
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 0x1003b343
cmp edi, 4
jle 0x1003b125
push edi
push str.timeout
push esi
call ebx
add esp, 0xc
test eax, eax
jne 0x1003b125
cmp dword [esp + 0x10], 2
jne 0x1003b125
mov esi, dword [esp + 0x14]
call fcn.10038770
mov eax, dword [esp + 0x7c]
call fcn.100388f0
push eax
mov eax, dword [esi]
push eax
call fcn.100a1fb0
mov eax, dword [esp + 0x20]
add esp, 8
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x13b0]
xor ecx, esp
call fcn.100e78b2
mov esp, ebp
pop ebp
ret
call fcn.10036290
test eax, eax
je 0x1003b17c
cmp dword [esp + 0x24], 0x74
jne 0x1003b1e7
cmp edi, 5
jl 0x1003b183
push edi
push str.timer
push esi
call ebx
add esp, 0xc
test eax, eax
jne 0x1003b183
cmp dword [esp + 0x10], 2
jne 0x1003b183
mov esi, dword [esp + 0x7c]
call fcn.10038a50
mov dword [0x1012271c], eax
mov eax, dword [esp + 0x18]
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x13b0]
xor ecx, esp
call fcn.100e78b2
mov esp, ebp
pop ebp
ret
cmp dword [esp + 0x24], 0x74
jne 0x1003b1e7
push edi
push str.trace
push esi
call ebx
add esp, 0xc
test eax, eax
jne 0x1003b325
cmp dword [esp + 0x10], 1
jle 0x1003b325
mov ebx, dword [esp + 0x14]
mov esi, ebx
call fcn.10038770
mov esi, dword [ebx + 0x14]
call fcn.10038b70
mov edi, dword [esp + 0x7c]
call fcn.10038ba0
mov dword [ebx + 0x14], eax
test eax, eax
jne 0x1003b1d4
mov ecx, dword [ebx]
push eax
push eax
push ecx
call fcn.100a2430
jmp 0x1003b343
mov edx, dword [ebx]
push eax
push 0x10038c80
push edx
call fcn.100a2430
jmp 0x1003b343
mov eax, dword [esp + 0x24]
cmp eax, 0x76
jne 0x1003b2ca
push edi
push str.version
push esi
call ebx
add esp, 0xc
test eax, eax
jne 0x1003b23d
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.100e78b2
mov esp, ebp
pop ebp
ret
push edi
push str.vfsname
push esi
call ebx
add esp, 0xc
test eax, eax
jne 0x1003b325
cmp dword [esp + 0x10], 2
mov ecx, dword [esp + 0x7c]
je 0x1003b261
mov ecx, str.main
mov esi, dword [esp + 0x14]
mov eax, dword [esi]
mov dword [esp + 0x4c], 0
test eax, eax
je 0x1003b346
lea edx, [esp + 0x4c]
push edx
push 0xc
push ecx
push eax
call fcn.100a3c60
mov eax, dword [esp + 0x5c]
add esp, 0x10
test eax, eax
je 0x1003b346
push eax
mov eax, dword [esi + 0x10]
push 0x10102cac
push eax
call dword [sym.imp.MSVCR90.dll_fprintf]
mov ecx, dword [esp + 0x58]
push ecx
call fcn.1003fb70
mov eax, dword [esp + 0x28]
add esp, 0x10
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x13b0]
xor ecx, esp
call fcn.100e78b2
mov esp, ebp
pop ebp
ret
cmp eax, 0x77
jne 0x1003b325
push edi
push str.width
push esi
call ebx
add esp, 0xc
test eax, eax
jne 0x1003b325
mov ebx, dword [esp + 0x10]
cmp ebx, 1
jle 0x1003b325
mov edi, dword [esp + 0x14]
mov esi, 1
add edi, 0x40
cmp esi, 0x64
jge 0x1003b346
mov eax, dword [esp + esi*4 + 0x78]
call fcn.100388f0
mov dword [edi], eax
inc esi
add edi, 4
cmp esi, ebx
jl 0x1003b2f4
mov eax, dword [esp + 0x18]
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x13b0]
xor ecx, esp
call fcn.100e78b2
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.100e78b2
mov esp, ebp
pop ebp
ret