Function at 0x4d13b1
Capabilities:
Execute command
Reference sql statements
Resolve function by parsing pe exports
Self delete
Set current directory
Write and execute a file
Write file on windows

Disassembly:
push ebp
mov ebp, esp
push edi
push esi
push ebx
mov ebx, edx
sub esp, 0x5cc
cmp dword [edx + 0x434], 0
mov dword [ebp - 0x57c], eax
je 0x4d13dc
xor ecx, ecx
mov edx, 1
mov eax, ebx
call fcn.004cc442
mov eax, dword [sym.imp.msvcrt.dll_isspace]
mov dword [ebp - 0x580], 1
mov edi, 1
mov dword [ebp - 0x588], eax
mov eax, dword [ebp - 0x580]
dec eax
mov dword [ebp - 0x578], eax
mov eax, dword [ebp - 0x57c]
add eax, edi
cmp byte [eax], 0
je 0x4d1541
cmp dword [ebp - 0x580], 0x34
je 0x4d1537
mov ecx, eax
movzx eax, byte [ecx]
mov edi, ecx
mov esi, ecx
sub edi, dword [ebp - 0x57c]
mov byte [ebp - 0x584], al
mov dword [esp], eax
call dword [sym.imp.msvcrt.dll_isspace]
test eax, eax
lea ecx, [esi + 1]
mov dl, byte [ebp - 0x584]
jne 0x4d1423
test dl, dl
je 0x4d1541
cmp dl, 0x22
sete byte [ebp - 0x584]
cmp dl, 0x27
je 0x4d146c
cmp byte [ebp - 0x584], 0
je 0x4d14d4
mov eax, dword [ebp - 0x57c]
mov ecx, dword [ebp - 0x580]
inc edi
movsx esi, dl
add eax, edi
mov dword [ebp - 0x578], eax
mov dword [ebp + ecx*4 - 0x52c], eax
mov ecx, dword [ebp - 0x57c]
add ecx, edi
movsx eax, byte [ecx]
test al, al
mov edx, eax
je 0x4d14bf
cmp esi, eax
je 0x4d14bf
cmp dl, 0x5c
jne 0x4d14bc
cmp byte [ebp - 0x584], 0
je 0x4d14bc
mov ecx, dword [ebp - 0x57c]
cmp byte [ecx + edi + 1], 1
sbb edi, 0xffffffff
inc edi
jmp 0x4d148b
cmp esi, eax
jne 0x4d14c7
inc edi
mov byte [ecx], 0
cmp esi, 0x22
jne 0x4d152c
mov eax, dword [ebp - 0x578]
jmp 0x4d1527
mov eax, dword [ebp - 0x580]
mov dword [ebp + eax*4 - 0x52c], esi
mov eax, dword [ebp - 0x57c]
lea edx, [eax + edi]
movzx eax, byte [edx]
mov edi, edx
sub edi, dword [ebp - 0x57c]
mov dword [ebp - 0x584], edx
mov dword [ebp - 0x578], edx
test al, al
je 0x4d1525
mov dword [esp], eax
mov eax, dword [ebp - 0x588]
call eax
mov edx, dword [ebp - 0x578]
mov ecx, dword [ebp - 0x584]
inc edx
test eax, eax
je 0x4d14ea
inc edi
mov byte [ecx], 0
mov eax, esi
call fcn.004b8119
inc dword [ebp - 0x580]
jmp 0x4d13f6
mov dword [ebp - 0x578], 0x33
mov eax, dword [ebp - 0x578]
mov dword [ebp - 0x57c], 0
test eax, eax
mov dword [ebp + eax*4 - 0x528], 0
je 0x4da5b3
mov edi, dword [ebp - 0x528]
mov eax, edi
call fcn.004b442b
movsx edi, byte [edi]
mov esi, eax
mov eax, ebx
call fcn.004d0422
cmp edi, 0x61
jne 0x4d1694
mov eax, dword [ebp - 0x528]
mov ecx, esi
mov edx, str.auth
mov dword [ebp - 0x57c], eax
call fcn.004bb7f6
test eax, eax
jne 0x4d1646
cmp dword [ebp - 0x578], 2
je 0x4d15d1
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp], str.Usage:_.auth_ONOFF_n
mov edi, 1
add eax, 0x40
mov dword [esp + 4], eax
call sub.msvcrt.dll_fputs
jmp 0x4da488
xor edx, edx
mov eax, ebx
call fcn.004cfaa0
mov eax, dword [ebp - 0x524]
call fcn.004c858a
test eax, eax
mov eax, dword [ebx]
je 0x4d1606
mov dword [esp + 8], ebx
mov dword [esp + 4], 0x4c84bd
xor edi, edi
mov dword [esp], eax
call fcn.004043ba
jmp 0x4da488
cmp byte [ebx + 0xe], 0
je 0x4d1627
mov dword [esp + 8], ebx
mov dword [esp + 4], fcn.004c8451
xor edi, edi
mov dword [esp], eax
call fcn.004043ba
jmp 0x4da488
mov dword [esp + 8], 0
mov dword [esp + 4], 0
xor edi, edi
mov dword [esp], eax
call fcn.004043ba
jmp 0x4da488
mov eax, dword [ebp - 0x57c]
mov ecx, esi
mov edx, str.archive
call fcn.004bb7f6
test eax, eax
jne 0x4d1694
xor edx, edx
mov eax, ebx
call fcn.004cfaa0
mov dword [esp + 4], str.cannot_run_.archive_in_safe_mode
mov dword [esp], ebx
call fcn.004c83de
mov eax, dword [ebp - 0x578]
lea ecx, [ebp - 0x528]
xor edx, edx
mov dword [esp], eax
mov eax, ebx
call fcn.004d072e
mov edi, eax
jmp 0x4da488
cmp esi, 2
setg byte [ebp - 0x580]
cmp edi, 0x62
sete al
and al, byte [ebp - 0x580]
mov byte [ebp - 0x57c], al
je 0x4d16c8
mov eax, dword [ebp - 0x528]
mov ecx, esi
mov edx, str.backup
call fcn.004bb7f6
test eax, eax
je 0x4d1706
cmp edi, 0x73
sete byte [ebp - 0x588]
cmp byte [ebp - 0x580], 0
je 0x4d195f
cmp byte [ebp - 0x588], 0
je 0x4d195f
mov eax, dword [ebp - 0x528]
mov ecx, esi
mov edx, str.save
call fcn.004bb7f6
test eax, eax
jne 0x4d195f
mov eax, dword [ebp - 0x528]
mov dword [esp + 4], str.cannot_run_._s_in_safe_mode
xor esi, esi
mov dword [esp], ebx
mov dword [esp + 8], eax
call fcn.004c83de
mov dword [ebp - 0x588], 0
mov dword [ebp - 0x584], 0
mov dword [ebp - 0x580], 1
mov dword [ebp - 0x57c], 0
mov ecx, dword [ebp - 0x578]
cmp dword [ebp - 0x580], ecx
jge 0x4d180f
mov eax, dword [ebp - 0x580]
mov edi, dword [ebp + eax*4 - 0x528]
cmp byte [edi], 0x2d
jne 0x4d17c2
xor eax, eax
cmp byte [edi + 1], 0x2d
mov edx, str._append
sete al
add eax, edi
mov dword [ebp - 0x58c], eax
call fcn.004bdf51
test eax, eax
je 0x4d17e4
mov eax, dword [ebp - 0x58c]
mov edx, str._async
call fcn.004bdf51
test eax, eax
je 0x4d17f0
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp + 8], edi
mov dword [esp + 4], str.unknown_option:__s_n
add eax, 0x40
mov dword [esp], eax
call fcn.004c5d3a
jmp 0x4d7124
test esi, esi
je 0x4d1802
cmp dword [ebp - 0x57c], 0
je 0x4d17fc
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp], str.Usage:_.backup__DB___OPTIONS__FILENAME_n
add eax, 0x40
mov dword [esp + 4], eax
jmp 0x4d1826
mov dword [ebp - 0x588], str.apndvfs
jmp 0x4d1804
mov dword [ebp - 0x584], 1
jmp 0x4d1804
mov dword [ebp - 0x57c], esi
mov esi, edi
inc dword [ebp - 0x580]
jmp 0x4d174a
test esi, esi
jne 0x4d1830
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp], str.missing_FILENAME_argument_on_.backup_n
add eax, 0x40
mov dword [esp + 4], eax
call sub.msvcrt.dll_fputs
jmp 0x4d7124
cmp dword [ebp - 0x57c], 0
mov eax, str.main
mov dword [esp + 8], 6
cmovne eax, dword [ebp - 0x57c]
mov dword [esp], esi
mov dword [ebp - 0x57c], eax
mov eax, dword [ebp - 0x588]
mov dword [esp + 0xc], eax
lea eax, [ebp - 0x458]
mov dword [esp + 4], eax
call fcn.004b2520
test eax, eax
mov edi, eax
jne 0x4d6ff2
cmp dword [ebp - 0x584], 0
je 0x4d18ae
mov eax, dword [ebp - 0x458]
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
mov dword [esp + 4], str.PRAGMA_synchronousOFF__PRAGMA_journal_modeOFF_
mov dword [esp], eax
call fcn.00477ee4
xor edx, edx
mov eax, ebx
call fcn.004cfaa0
mov eax, dword [ebp - 0x57c]
mov dword [esp + 4], str.main
mov dword [esp + 0xc], eax
mov eax, dword [ebx]
mov dword [esp + 8], eax
mov eax, dword [ebp - 0x458]
mov dword [esp], eax
call fcn.00456761
test eax, eax
mov edx, eax
jne 0x4d18ee
mov eax, dword [ebp - 0x458]
jmp 0x4d7043
mov dword [esp], edx
mov dword [esp + 4], 0x64
mov dword [ebp - 0x578], edx
call fcn.00454879
test eax, eax
mov esi, eax
mov edx, dword [ebp - 0x578]
je 0x4d18ee
mov dword [esp], edx
call fcn.00457ba9
cmp esi, 0x65
je 0x4d194c
mov eax, dword [ebp - 0x458]
mov edi, 1
mov dword [esp], eax
call fcn.0042dd05
mov dword [esp + 8], eax
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp + 4], str.Error:__s_n
add eax, 0x40
mov dword [esp], eax
call fcn.004c5d3a
mov eax, dword [ebp - 0x458]
mov dword [esp], eax
call fcn.004d03a9
jmp 0x4da488
cmp byte [ebp - 0x57c], 0
mov eax, dword [ebp - 0x528]
mov dword [ebp - 0x57c], eax
je 0x4d1a7c
mov ecx, esi
mov edx, str.bail
call fcn.004bb7f6
test eax, eax
jne 0x4d19ca
cmp dword [ebp - 0x578], 2
jne 0x4d19a8
mov eax, dword [ebp - 0x524]
xor edi, edi
call fcn.004c858a
mov dword [0x51a458], eax
jmp 0x4da488
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp], str.Usage:_.bail_onoff_n
mov edi, 1
add eax, 0x40
mov dword [esp + 4], eax
call sub.msvcrt.dll_fputs
jmp 0x4da488
mov eax, dword [ebp - 0x57c]
mov ecx, esi
mov edx, str.binary
call fcn.004bb7f6
test eax, eax
jne 0x4d1a3a
cmp dword [ebp - 0x578], 2
jne 0x4d1a18
mov eax, dword [ebp - 0x524]
call fcn.004c858a
test eax, eax
mov eax, dword [ebx + 0x38]
je 0x4d1a0c
mov edx, 1
xor edi, edi
call fcn.004bdee2
jmp 0x4da488
call fcn.004c4a24
xor edi, edi
jmp 0x4da488
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp], str.Usage:_.binary_onoff_n
mov edi, 1
add eax, 0x40
mov dword [esp + 4], eax
call sub.msvcrt.dll_fputs
jmp 0x4da488
mov eax, dword [ebp - 0x57c]
mov ecx, esi
mov edx, str.breakpoint
call fcn.004bb7f6
test eax, eax
jne 0x4d1b44
mov eax, dword [0x51a3ac]
lea edx, [eax + 1]
inc eax
mov dword [0x51a3ac], edx
jne 0x4da583
mov dword [esp], str.Many_.breakpoints_have_run
xor edi, edi
call sub.msvcrt.dll_puts
jmp 0x4da488
cmp edi, 0x63
jne 0x4d1b44
mov eax, dword [ebp - 0x57c]
mov edx, 0x50c398
call fcn.004bdf51
test eax, eax
jne 0x4d1b44
mov dword [esp + 4], str.cannot_run_.cd_in_safe_mode
mov dword [esp], ebx
call fcn.004c83de
cmp dword [ebp - 0x578], 2
jne 0x4d1b22
mov eax, dword [ebp - 0x524]
mov dword [esp], eax
call fcn.004b1ce1
mov esi, eax
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_SetCurrentDirectoryW]
test eax, eax
push edi
mov dword [ebp - 0x578], eax
sete al
movzx eax, al
mov dword [esp], esi
mov edi, eax
call fcn.0040b268
mov eax, dword [ebp - 0x578]
test eax, eax
jne 0x4da488
mov eax, dword [ebp - 0x524]
mov dword [esp + 4], str.Cannot_change_to_directory___s__n
mov edi, 1
mov dword [esp + 8], eax
mov eax, dword [sym.imp.msvcrt.dll__iob]
add eax, 0x40
mov dword [esp], eax
call fcn.004c5d3a
jmp 0x4da488
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp], str.Usage:_.cd_DIRECTORY_n
mov edi, 1
add eax, 0x40
mov dword [esp + 4], eax
call sub.msvcrt.dll_fputs
jmp 0x4da488
cmp edi, 0x63
jne 0x4d1c95
cmp byte [ebp - 0x580], 0
je 0x4d1c95
mov eax, dword [ebp - 0x528]
mov ecx, esi
mov edx, str.changes
mov dword [ebp - 0x57c], eax
call fcn.004bb7f6
test eax, eax
jne 0x4d1bc6
cmp dword [ebp - 0x578], 2
jne 0x4d1ba4
mov eax, dword [ebp - 0x524]
call fcn.004c858a
test eax, eax
je 0x4d1b99
or dword [ebx + 0x6c], 0x20
xor edi, edi
jmp 0x4da488
and dword [ebx + 0x6c], 0xffffffdf
xor edi, edi
jmp 0x4da488
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp], str.Usage:_.changes_onoff_n
mov edi, 1
add eax, 0x40
mov dword [esp + 4], eax
call sub.msvcrt.dll_fputs
jmp 0x4da488
mov eax, dword [ebp - 0x57c]
mov ecx, esi
mov edx, str.check
call fcn.004bb7f6
test eax, eax
jne 0x4d1c9e
mov eax, ebx
call fcn.004ca025
cmp dword [ebp - 0x578], 2
je 0x4d1c11
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp], str.Usage:_.check_GLOB_PATTERN_n
xor esi, esi
mov edi, 2
add eax, 0x40
mov dword [esp + 4], eax
call sub.msvcrt.dll_fputs
jmp 0x4d1c88
xor edx, edx
mov eax, str.testcase_out.txt
mov edi, 2
call fcn.004bd836
test eax, eax
mov esi, eax
je 0x4d1c88
mov edi, dword [ebp - 0x524]
mov edx, eax
mov eax, edi
call fcn.004b8ffb
test eax, eax
lea edx, [ebx + 0x88]
mov eax, dword [sym.imp.msvcrt.dll__iob]
jne 0x4d1c6c
add eax, 0x40
mov dword [esp + 0xc], edi
mov dword [esp + 0x10], esi
mov dword [esp + 8], edx
mov dword [esp + 4], str.testcase__s_FAILED_n_Expected:___s__n______Got:___s__n
mov edi, 1
mov dword [esp], eax
call fcn.004c5d3a
jmp 0x4d1c88
add eax, 0x20
mov dword [esp + 8], edx
mov dword [esp + 4], str.testcase__s_ok_n
mov dword [esp], eax
xor edi, edi
call fcn.004c5d3a
inc dword [ebx + 0x5c]
mov dword [esp], esi
call fcn.0040b268
jmp 0x4da488
cmp edi, 0x63
jne 0x4d2092
mov eax, dword [ebp - 0x528]
mov ecx, esi
mov edx, str.clone
mov dword [ebp - 0x57c], eax
call fcn.004bb7f6
test eax, eax
jne 0x4d1e81
mov dword [esp + 4], str.cannot_run_.clone_in_safe_mode
mov dword [esp], ebx
call fcn.004c83de
cmp dword [ebp - 0x578], 2
jne 0x4d1e5f
mov esi, dword [ebp - 0x524]
mov dword [ebp - 0x458], 0
mov dword [esp + 4], 0
mov dword [esp], esi
call dword [sym.imp.msvcrt.dll__access]
test eax, eax
jne 0x4d1d23
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp + 8], esi
xor edi, edi
mov dword [esp + 4], str.File___s__already_exists._n
add eax, 0x40
mov dword [esp], eax
call fcn.004c5d3a
jmp 0x4da488
lea eax, [ebp - 0x458]
mov dword [esp], esi
mov dword [esp + 4], eax
call fcn.004b2505
test eax, eax
je 0x4d1d68
mov eax, dword [ebp - 0x458]
mov dword [esp], eax
call fcn.0042dd05
mov dword [esp + 8], eax
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp + 4], str.Cannot_create_output_database:__s_n
add eax, 0x40
mov dword [esp], eax
call fcn.004c5d3a
jmp 0x4d1e4a
mov eax, dword [ebx]
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
mov dword [esp + 4], str.PRAGMA_writable_schemaON_
mov dword [esp], eax
call fcn.00477ee4
mov eax, dword [ebp - 0x458]
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
mov dword [esp + 4], str.BEGIN_EXCLUSIVE_
mov dword [esp], eax
call fcn.00477ee4
mov edx, dword [ebp - 0x458]
mov ecx, str.typetable
mov eax, ebx
mov dword [esp], 0x4c67e0
call fcn.004edb57
mov edx, dword [ebp - 0x458]
mov ecx, str.type_table
mov eax, ebx
mov dword [esp], 0
call fcn.004edb57
mov eax, dword [ebp - 0x458]
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
mov dword [esp + 4], str.COMMIT_
mov dword [esp], eax
call fcn.00477ee4
mov eax, dword [ebx]
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
mov dword [esp + 4], str.PRAGMA_writable_schemaOFF_
mov dword [esp], eax
call fcn.00477ee4
mov eax, dword [ebp - 0x458]
xor edi, edi
mov dword [esp], eax
call fcn.004d03a9
jmp 0x4da488
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp], str.Usage:_.clone_FILENAME_n
mov edi, 1
add eax, 0x40
mov dword [esp + 4], eax
call sub.msvcrt.dll_fputs
jmp 0x4da488
mov eax, dword [ebp - 0x57c]
mov ecx, esi
mov edx, str.connection
call fcn.004bb7f6
test eax, eax
jne 0x4d2092
cmp dword [ebp - 0x578], 1
jne 0x4d1f35
lea edi, [ebx + 0x224]
xor esi, esi
mov edx, dword [edi]
mov eax, dword [edi + 4]
test edx, edx
jne 0x4d1ec8
cmp dword [ebx + 0x3b4], edi
je 0x4d1ee8
mov eax, str._not_open_
jmp 0x4d1ede
test eax, eax
je 0x4d1ed9
cmp byte [eax], 0
mov ecx, str._temporary_file_
cmove eax, ecx
jmp 0x4d1ede
mov eax, str._memory_
cmp dword [ebx + 0x3b4], edi
jne 0x4d1f03
jmp 0x4d1ef1
test eax, eax
jne 0x4d1ecc
mov eax, str._memory_
mov dword [esp + 0xc], eax
mov dword [esp + 8], esi
mov dword [esp + 4], str.ACTIVE__d:__s_n
jmp 0x4d1f17
test edx, edx
je 0x4d1f27
mov dword [esp + 0xc], eax
mov dword [esp + 8], esi
mov dword [esp + 4], str.________d:__s_n
mov eax, dword [sym.imp.msvcrt.dll__iob]
add eax, 0x20
mov dword [esp], eax
call fcn.004c5d3a
inc esi
add edi, 0x50
cmp esi, 5
jne 0x4d1eb0
jmp 0x4da583
cmp dword [ebp - 0x578], 2
jne 0x4d1fb2
mov ecx, dword [ebp - 0x524]
movzx edx, byte [ecx]
mov eax, edx
sub edx, 0x30
cmp edx, 9
ja 0x4d2070
cmp byte [ecx + 1], 0
jne 0x4d2070
movsx eax, al
mov esi, dword [ebx + 0x3b4]
sub eax, 0x30
imul edx, eax, 0x50
lea ecx, [ebx + edx + 0x224]
cmp esi, ecx
je 0x4da583
cmp eax, 4
ja 0x4da583
mov eax, dword [ebx]
xor edi, edi
mov dword [esi], eax
lea eax, [ebx + edx]
mov dword [ebx + 0x3b4], ecx
mov edx, dword [eax + 0x224]
mov dword [ebx], edx
mov dword [0x51a450], edx
mov dword [eax + 0x224], 0
jmp 0x4da488
cmp dword [ebp - 0x578], 3
jne 0x4d2070
mov eax, dword [ebp - 0x524]
mov edx, str.close
call fcn.004bdf51
test eax, eax
jne 0x4d2070
mov ecx, dword [ebp - 0x520]
movzx eax, byte [ecx]
mov edx, eax
sub eax, 0x30
cmp eax, 9
ja 0x4d2070
cmp byte [ecx + 1], 0
jne 0x4d2070
movsx edx, dl
sub edx, 0x30
cmp edx, 4
ja 0x4da583
imul eax, edx, 0x50
lea eax, [ebx + eax + 0x224]
cmp dword [ebx + 0x3b4], eax
jne 0x4d2037
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp], str.cannot_close_the_active_database_connection_n
mov edi, 1
add eax, 0x40
mov dword [esp + 4], eax
call sub.msvcrt.dll_fputs
jmp 0x4da488
imul eax, edx, 0x50
lea esi, [ebx + eax]
cmp dword [esi + 0x224], 0
je 0x4da583
mov eax, ebx
xor edi, edi
call fcn.004be30b
mov eax, dword [esi + 0x224]
mov dword [esp], eax
call fcn.004d03a9
mov dword [esi + 0x224], 0
jmp 0x4da488
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp], str.Usage:_.connection__close___CONNECTION_NUMBER__n
mov edi, 1
add eax, 0x40
mov dword [esp + 4], eax
call sub.msvcrt.dll_fputs
jmp 0x4da488
cmp edi, 0x64
sete byte [ebp - 0x584]
cmp esi, 1
setg byte [ebp - 0x58c]
cmp byte [ebp - 0x584], 0
je 0x4d2358
cmp byte [ebp - 0x58c], 0
je 0x4d2358
mov eax, dword [ebp - 0x528]
mov ecx, esi
mov edx, str.databases
call fcn.004bb7f6
test eax, eax
jne 0x4d2358
xor edx, edx
mov eax, ebx
call fcn.004cfaa0
lea eax, [ebp - 0x458]
mov dword [esp + 0x10], 0
mov dword [esp + 8], 0xffffffff
mov dword [esp + 4], str.PRAGMA_database_list
mov dword [esp + 0xc], eax
mov eax, dword [ebx]
mov dword [esp], eax
call fcn.0048b371
test eax, eax
mov edi, eax
jne 0x4d212d
xor esi, esi
mov dword [ebp - 0x57c], 0
mov dword [ebp - 0x578], 0
jmp 0x4d21ac
mov eax, dword [ebx]
mov edi, 1
mov dword [esp], eax
call fcn.0042dd05
mov dword [esp + 8], eax
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp + 4], str.Error:__s_n
add eax, 0x40
mov dword [esp], eax
call fcn.004c5d3a
mov dword [ebp - 0x57c], 0
mov dword [ebp - 0x578], 0
jmp 0x4d2247
mov eax, dword [ebp - 0x458]
mov dword [esp + 4], 1
mov dword [esp], eax
call fcn.0041feb6
mov dword [ebp - 0x580], eax
mov eax, dword [ebp - 0x458]
mov dword [esp + 4], 2
mov dword [esp], eax
call fcn.0041feb6
cmp dword [ebp - 0x580], 0
jne 0x4d21c4
mov eax, dword [ebp - 0x458]
mov dword [esp], eax
call fcn.0047778f
cmp eax, 0x64
je 0x4d2171
jmp 0x4d2247
test eax, eax
mov dword [ebp - 0x58c], eax
je 0x4d21ac
mov eax, dword [ebp - 0x578]
lea edx, [esi + 8]
inc dword [ebp - 0x57c]
mov dword [esp + 4], edx
mov dword [ebp - 0x588], edx
mov dword [esp], eax
call fcn.0043a8b9
mov dword [ebp - 0x578], eax
call fcn.004bd956
mov eax, dword [ebp - 0x578]
add eax, esi
mov dword [ebp - 0x584], eax
mov eax, dword [ebp - 0x580]
mov dword [esp], eax
call dword [sym.imp.msvcrt.dll__strdup]
mov ecx, dword [ebp - 0x584]
mov dword [ecx], eax
mov eax, dword [ebp - 0x578]
mov ecx, dword [ebp - 0x58c]
lea esi, [eax + esi + 4]
mov dword [esp], ecx
call dword [sym.imp.msvcrt.dll__strdup]
mov edx, dword [ebp - 0x588]
mov dword [esi], eax
mov esi, edx
jmp 0x4d21ac
mov eax, dword [ebp - 0x458]
xor esi, esi
mov dword [esp], eax
call fcn.00458aaf
cmp dword [ebp - 0x57c], esi
mov eax, dword [ebp - 0x578]
je 0x4d234b
mov eax, dword [eax + esi*8]
mov dword [esp + 4], eax
mov eax, dword [ebx]
mov dword [esp], eax
call fcn.00405db1
mov dword [ebp - 0x584], eax
mov eax, dword [ebp - 0x578]
mov eax, dword [eax + esi*8]
mov dword [esp + 4], eax
mov eax, dword [ebx]
mov dword [esp], eax
call fcn.00406204
mov ecx, dword [ebp - 0x578]
mov edx, dword [ebp - 0x584]
mov ecx, dword [ecx + esi*8 + 4]
test edx, edx
mov dword [ebp - 0x580], ecx
mov ecx, 0x506d14
je 0x4d22c4
dec edx
mov ecx, str._write_txn
mov edx, str._read_txn
cmove ecx, edx
test eax, eax
mov edx, 0x50c072
mov eax, 0x50c06e
cmovne edx, eax
cmp dword [ebp - 0x580], 0
mov eax, 0x50c076
je 0x4d22f6
mov eax, dword [ebp - 0x580]
cmp byte [eax], 0
mov eax, 0x50c076
cmovne eax, dword [ebp - 0x580]
mov dword [esp + 0xc], eax
mov eax, dword [ebp - 0x578]
mov dword [esp + 0x14], ecx
mov dword [esp + 0x10], edx
mov eax, dword [eax + esi*8]
mov dword [esp + 4], str._s:__s__s_s_n
mov dword [esp + 8], eax
mov eax, dword [ebx + 0x38]
mov dword [esp], eax
call fcn.004c5d3a
mov eax, dword [ebp - 0x578]
mov eax, dword [eax + esi*8]
mov dword [esp], eax
call fcn.004ec038
mov eax, dword [ebp - 0x578]
mov eax, dword [eax + esi*8 + 4]
inc esi
mov dword [esp], eax
call fcn.004ec038
jmp 0x4d2257
mov dword [esp], eax
call fcn.0040b268
jmp 0x4da488
cmp byte [ebp - 0x580], 0
mov eax, dword [ebp - 0x528]
mov dword [ebp - 0x57c], eax
je 0x4d28d2
cmp byte [ebp - 0x584], 0
je 0x4d28d2
mov ecx, esi
mov edx, str.dbconfig
call fcn.004bb7f6
test eax, eax
jne 0x4d24b5
lea esi, [ebp - 0x458]
xor edx, edx
mov eax, ebx
xor edi, edi
call fcn.004cfaa0
cmp dword [ebp - 0x578], 1
je 0x4d2402
mov edx, dword [edi*8 + 0x5107e0]
mov eax, dword [ebp - 0x524]
call fcn.004bdf51
test eax, eax
je 0x4d23cd
inc edi
cmp edi, 0x12
jne 0x4d23a3
jmp 0x4d2466
cmp dword [ebp - 0x578], 2
je 0x4d2402
mov eax, dword [ebp - 0x520]
call fcn.004c858a
mov dword [esp + 8], eax
mov eax, dword [edi*8 + 0x5107e4]
mov dword [esp + 0xc], 0
mov dword [esp + 4], eax
mov eax, dword [ebx]
mov dword [esp], eax
call fcn.00414b32
mov eax, dword [edi*8 + 0x5107e4]
mov dword [esp + 0xc], esi
mov dword [esp + 8], 0xffffffff
mov dword [esp + 4], eax
mov eax, dword [ebx]
mov dword [esp], eax
call fcn.00414b32
cmp dword [ebp - 0x458], 0
mov edx, 0x5095fe
mov eax, 0x509605
mov dword [esp + 4], str._19s__s_n
cmovne eax, edx
mov dword [esp + 0xc], eax
mov eax, dword [edi*8 + 0x5107e0]
mov dword [esp + 8], eax
mov eax, dword [ebx + 0x38]
mov dword [esp], eax
call fcn.004c5d3a
cmp dword [ebp - 0x578], 1
je 0x4d23c2
cmp dword [ebp - 0x578], 1
jle 0x4d24ae
cmp edi, 0x12
jne 0x4d24ae
mov eax, dword [ebp - 0x524]
mov dword [esp + 4], str.Error:_unknown_dbconfig___s__n
mov dword [esp + 8], eax
mov eax, dword [sym.imp.msvcrt.dll__iob]
add eax, 0x40
mov dword [esp], eax
call fcn.004c5d3a
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp + 4], str.Enter__.dbconfig__with_no_arguments_for_a_list_n
add eax, 0x40
mov dword [esp], eax
call fcn.004c5d3a
xor edi, edi
jmp 0x4da488
mov eax, dword [ebp - 0x57c]
mov ecx, esi
mov edx, str.dbinfo
call fcn.004bb7f6
test eax, eax
jne 0x4d2b95
cmp dword [ebp - 0x578], 1
mov eax, str.main
mov dword [ebp - 0x548], 0
cmovne eax, dword [ebp - 0x524]
xor edx, edx
mov edi, 1
mov dword [ebp - 0x578], eax
mov eax, ebx
call fcn.004cfaa0
mov eax, dword [ebx]
test eax, eax
je 0x4da488
lea edx, [ebp - 0x548]
mov dword [esp + 0x10], 0
mov dword [esp + 8], 0xffffffff
mov dword [esp + 4], str.SELECT_data_FROM_sqlite_dbpage__1__WHERE_pgno1
mov dword [esp], eax
mov dword [esp + 0xc], edx
call fcn.0048b371
test eax, eax
je 0x4d2571
mov eax, dword [ebx]
mov dword [esp], eax
call fcn.0042dd05
mov dword [esp + 8], eax
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp + 4], str.error:__s_n
add eax, 0x40
mov dword [esp], eax
call fcn.004c5d3a
mov eax, dword [ebp - 0x548]
mov dword [esp], eax
call fcn.00458aaf
jmp 0x4da488
mov eax, dword [ebp - 0x578]
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0xffffffff
mov dword [esp + 4], 1
mov dword [esp + 8], eax
mov eax, dword [ebp - 0x548]
mov dword [esp], eax
call fcn.0042e1f2
mov eax, dword [ebp - 0x548]
mov dword [esp], eax
call fcn.0047778f
cmp eax, 0x64
jne 0x4d26c5
mov eax, dword [ebp - 0x548]
mov dword [esp + 4], 0
mov dword [esp], eax
call fcn.0041fc78
cmp eax, 0x64
jle 0x4d26c5
mov eax, dword [ebp - 0x548]
mov dword [esp + 4], 0
lea edi, [ebp - 0x458]
mov dword [esp], eax
call fcn.0041fe8a
mov esi, eax
call fcn.004bd956
mov ecx, 0x19
mov eax, dword [ebp - 0x548]
rep movsd dword es:[edi], dword [esi]
mov edi, 0x50ffe0
mov dword [esp], eax
call fcn.00458aaf
movzx eax, byte [ebp - 0x448]
movzx edx, byte [ebp - 0x447]
mov dword [esp + 8], str.database_page_size:
mov dword [esp + 4], str.__20s__d_n
shl eax, 8
add eax, edx
mov edx, 0x10000
cmp eax, 1
cmove eax, edx
mov dword [esp + 0xc], eax
mov eax, dword [ebx + 0x38]
mov dword [esp], eax
call fcn.004c5d3a
movzx eax, byte [ebp - 0x446]
mov dword [esp + 8], str.write_format:
mov dword [esp + 4], str.__20s__d_n
mov dword [esp + 0xc], eax
mov eax, dword [ebx + 0x38]
mov dword [esp], eax
call fcn.004c5d3a
movzx eax, byte [ebp - 0x445]
mov dword [esp + 8], str.read_format:
mov dword [esp + 4], str.__20s__d_n
mov dword [esp + 0xc], eax
mov eax, dword [ebx + 0x38]
mov dword [esp], eax
call fcn.004c5d3a
movzx eax, byte [ebp - 0x444]
mov dword [esp + 8], str.reserved_bytes:
mov dword [esp + 4], str.__20s__d_n
mov dword [esp + 0xc], eax
mov eax, dword [ebx + 0x38]
mov dword [esp], eax
call fcn.004c5d3a
jmp 0x4d2733
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp], str.unable_to_read_database_header_n
mov edi, 1
add eax, 0x40
mov dword [esp + 4], eax
call sub.msvcrt.dll_fputs
mov eax, dword [ebp - 0x548]
mov dword [esp], eax
call fcn.00458aaf
jmp 0x4da488
cmp esi, 1
mov eax, dword [ebx + 0x38]
jne 0x4d2790
mov dword [esp + 4], eax
mov dword [esp], str.__utf8_
call sub.msvcrt.dll_fputs
mov eax, dword [ebx + 0x38]
mov dword [esp], 0xa
add edi, 8
mov dword [esp + 4], eax
call sub.msvcrt.dll_fputc
cmp edi, str.CREATE_INDEX
je 0x4d27be
mov edx, dword [edi + 4]
lea eax, [ebp - 0x458]
lea ecx, [eax + edx]
mov dword [ebp - 0x57c], edx
movzx esi, byte [ecx]
movzx eax, byte [ecx + 1]
shl esi, 0x18
shl eax, 0x10
add eax, esi
movzx esi, byte [ecx + 2]
shl esi, 8
add eax, esi
movzx esi, byte [ecx + 3]
add esi, eax
mov dword [esp + 0xc], esi
mov eax, dword [edi]
mov dword [esp + 4], str.__20s__u
mov dword [esp + 8], eax
mov eax, dword [ebx + 0x38]
mov dword [esp], eax
call fcn.004c5d3a
mov edx, dword [ebp - 0x57c]
cmp edx, 0x38
jne 0x4d2711
jmp 0x4d26f5
cmp esi, 2
jne 0x4d27a5
mov dword [esp + 4], eax
mov dword [esp], str.__utf16le_
jmp 0x4d270c
cmp esi, 3
jne 0x4d2711
mov dword [esp + 4], eax
mov dword [esp], str.__utf16be_
jmp 0x4d270c
cmp dword [ebp - 0x578], 0
jne 0x4d27d5
mov dword [esp], str.main.sqlite_schema
call fcn.004440e8
jmp 0x4d2810
mov eax, dword [ebp - 0x578]
mov edx, str.temp
call fcn.004bdf51
test eax, eax
jne 0x4d27fa
mov dword [esp + 4], str.sqlite_temp_schema
mov dword [esp], 0x506d0a
jmp 0x4d280b
mov eax, dword [ebp - 0x578]
mov dword [esp], str.__w_.sqlite_schema
mov dword [esp + 4], eax
call fcn.004440e8
mov edi, eax
mov esi, 0x50fec0
mov dword [esp + 4], edi
mov eax, dword [esi + 4]
add esi, 8
mov dword [esp], eax
call fcn.004440e8
mov edx, eax
mov dword [ebp - 0x580], eax
mov eax, dword [ebx]
call fcn.004ed65b
mov ecx, dword [ebp - 0x580]
mov dword [ebp - 0x57c], eax
mov dword [esp], ecx
call fcn.0040b268
mov eax, dword [ebp - 0x57c]
mov dword [esp + 0xc], eax
mov eax, dword [esi - 8]
mov dword [esp + 4], str.__20s__d_n
mov dword [esp + 8], eax
mov eax, dword [ebx + 0x38]
mov dword [esp], eax
call fcn.004c5d3a
cmp esi, str.file_change_counter:
jne 0x4d2817
mov dword [esp], edi
xor edi, edi
call fcn.0040b268
lea eax, [ebp - 0x554]
mov dword [esp + 8], 0x23
mov dword [esp + 0xc], eax
mov eax, dword [ebp - 0x578]
mov dword [esp + 4], eax
mov eax, dword [ebx]
mov dword [esp], eax
call fcn.00416192
mov eax, dword [ebp - 0x554]
mov dword [esp + 8], 0x50c779
mov dword [esp + 4], str.__20s__u_n
mov dword [esp + 0xc], eax
mov eax, dword [ebx + 0x38]
mov dword [esp], eax
call fcn.004c5d3a
jmp 0x4da488
cmp edi, 0x72
jne 0x4d2b8c
mov eax, dword [ebp - 0x57c]
mov ecx, esi
mov edx, str.recover
call fcn.004bb7f6
test eax, eax
jne 0x4d4e9c
mov eax, ebx
xor edx, edx
mov edi, 1
call fcn.004cfaa0
mov eax, dword [ebp - 0x578]
mov dword [ebp - 0x548], 1
mov dword [ebp - 0x458], 1
mov dword [ebp - 0x588], str.lost_and_found
mov dword [ebp - 0x584], 0x506d14
dec eax
mov dword [ebp - 0x58c], eax
cmp edi, dword [ebp - 0x578]
jge 0x4d2aaf
lea eax, [edi*4]
mov dword [ebp - 0x580], eax
mov eax, dword [ebp + eax - 0x528]
cmp byte [eax], 0x2d
mov dword [ebp - 0x57c], eax
mov esi, eax
jne 0x4d2972
cmp byte [eax + 1], 0x2d
sete al
movzx eax, al
lea esi, [esi + eax]
mov eax, esi
call fcn.004b442b
cmp eax, 0x11
jg 0x4d2a6f
mov dword [esp + 8], eax
mov dword [esp + 4], esi
mov dword [esp], str._ignore_freelist
mov dword [ebp - 0x590], eax
call sub.msvcrt.dll_memcmp
test eax, eax
mov edx, dword [ebp - 0x590]
jne 0x4d29b5
mov dword [ebp - 0x548], 0
jmp 0x4d2aa9
cmp edx, 0xc
jg 0x4d29ff
mov dword [esp + 8], edx
mov dword [esp + 4], esi
mov dword [esp], str._recovery_db
mov dword [ebp - 0x590], edx
call sub.msvcrt.dll_memcmp
test eax, eax
mov edx, dword [ebp - 0x590]
jne 0x4d2a04
cmp edi, dword [ebp - 0x58c]
jge 0x4d2a04
mov eax, dword [ebp - 0x580]
inc edi
mov eax, dword [ebp + eax - 0x524]
mov dword [ebp - 0x584], eax
jmp 0x4d2aa9
cmp edx, 0xf
jg 0x4d2a6f
mov dword [esp + 8], edx
mov dword [esp + 4], esi
mov dword [esp], str._lost_and_found
mov dword [ebp - 0x590], edx
call sub.msvcrt.dll_memcmp
test eax, eax
mov edx, dword [ebp - 0x590]
jne 0x4d2a46
cmp edi, dword [ebp - 0x58c]
jge 0x4d2a46
mov eax, dword [ebp - 0x580]
inc edi
mov eax, dword [ebp + eax - 0x524]
mov dword [ebp - 0x588], eax
jmp 0x4d2aa9
cmp edx, 0xa
jg 0x4d2a6f
mov dword [esp + 8], edx
mov dword [esp + 4], esi
mov dword [esp], str._no_rowids
call sub.msvcrt.dll_memcmp
test eax, eax
jne 0x4d2a6f
mov dword [ebp - 0x458], 0
jmp 0x4d2aa9
mov eax, dword [ebp - 0x57c]
mov dword [esp + 4], str.unexpected_option:__s_n
mov edi, 1
mov dword [esp + 8], eax
mov eax, dword [sym.imp.msvcrt.dll__iob]
add eax, 0x40
mov dword [esp], eax
call fcn.004c5d3a
mov eax, dword [ebx + 0x38]
mov edx, dword [ebp - 0x528]
call fcn.004c5f9d
jmp 0x4da488
inc edi
jmp 0x4d2938
mov eax, dword [ebx]
mov dword [esp + 0xc], ebx
mov dword [esp + 8], 0x4c6c08
mov dword [esp + 4], str.main
mov dword [esp], eax
call fcn.004cd99f
mov esi, eax
mov eax, dword [ebp - 0x584]
mov dword [esp + 4], 0x315
mov dword [esp], esi
mov dword [esp + 8], eax
call fcn.004cd9fd
mov eax, dword [ebp - 0x588]
mov dword [esp + 4], 1
mov dword [esp], esi
mov dword [esp + 8], eax
call fcn.004cd9fd
lea eax, [ebp - 0x458]
mov dword [esp + 4], 3
mov dword [esp], esi
mov dword [esp + 8], eax
call fcn.004cd9fd
lea eax, [ebp - 0x548]
mov dword [esp + 4], 2
mov dword [esp], esi
mov dword [esp + 8], eax
call fcn.004cd9fd
mov dword [esp], esi
call fcn.004cf833
test esi, esi
je 0x4d2b49
cmp dword [esi + 0x3c], 0
je 0x4d2b7d
mov dword [esp], esi
call fcn.004cd9cf
test esi, esi
mov edx, 7
je 0x4d2b5d
mov edx, dword [esi + 0x3c]
mov dword [esp + 8], eax
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp + 0xc], edx
mov dword [esp + 4], str.sql_error:__s___d__n
add eax, 0x40
mov dword [esp], eax
call sub.msvcrt.dll_fprintf
mov dword [esp], esi
call fcn.004cf85b
mov edi, eax
jmp 0x4da488
cmp edi, 0x64
jne 0x4d3143
mov eax, dword [ebp - 0x528]
mov ecx, esi
mov edx, str.dump
call fcn.004bb7f6
test eax, eax
jne 0x4d31b2
mov eax, dword [ebx + 0x58]
mov dword [ebp - 0x580], 1
xor edi, edi
mov dword [ebp - 0x588], eax
mov eax, dword [ebx + 0x6c]
mov dword [ebp - 0x584], eax
and eax, 0xfffffca7
mov dword [ebx + 0x6c], eax
mov ecx, dword [ebp - 0x578]
cmp dword [ebp - 0x580], ecx
jge 0x4d2ce5
mov eax, dword [ebp - 0x580]
mov esi, dword [ebp + eax*4 - 0x528]
cmp byte [esi], 0x2d
jne 0x4d2cac
cmp byte [esi + 1], 0x2d
lea edx, [esi + 2]
lea eax, [esi + 1]
cmove eax, edx
mov edx, str.preserve_rowids
mov dword [ebp - 0x57c], eax
call fcn.004bdf51
test eax, eax
jne 0x4d2c27
or dword [ebx + 0x6c], 8
jmp 0x4d2cda
mov eax, dword [ebp - 0x57c]
mov edx, str.newlines
call fcn.004bdf51
test eax, eax
jne 0x4d2c44
or dword [ebx + 0x6c], 0x10
jmp 0x4d2cda
mov eax, dword [ebp - 0x57c]
mov edx, str.data_only
call fcn.004bdf51
test eax, eax
jne 0x4d2c61
or dword [ebx + 0x6c], 0x100
jmp 0x4d2cda
mov eax, dword [ebp - 0x57c]
mov edx, str.nosys
call fcn.004bdf51
test eax, eax
jne 0x4d2c7e
or dword [ebx + 0x6c], 0x200
jmp 0x4d2cda
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp + 8], esi
mov dword [esp + 4], str.Unknown_option___s__on__.dump__n
add eax, 0x40
mov dword [esp], eax
call sub.msvcrt.dll_fprintf
mov dword [esp], edi
mov edi, 1
call fcn.0040b268
jmp 0x4da488
mov dword [esp + 8], esi
mov dword [esp + 4], esi
mov dword [esp], str.name_LIKE__Q_ESCAPE__OR_EXISTS____SELECT_1_FROM_sqlite_schema_WHERE_____name_LIKE__Q_ESCAPE__AND____sql_LIKE_CREATE_VIRTUAL_TABLE___AND____substr_o.name__1__length_name_1____name___
call fcn.004440e8
test edi, edi
je 0x4d2cd8
mov dword [esp + 8], eax
mov dword [esp + 4], edi
mov dword [esp], str._z_OR__z
call fcn.004440e8
mov edi, eax
inc dword [ebp - 0x580]
jmp 0x4d2bd5
xor edx, edx
mov eax, ebx
call fcn.004cfaa0
test byte [ebx + 0x6d], 1
jne 0x4d2d1a
mov eax, dword [ebx + 0x38]
mov dword [esp], str.PRAGMA_foreign_keysOFF__n
mov dword [esp + 4], eax
call sub.msvcrt.dll_fputs
mov eax, dword [ebx + 0x38]
mov dword [esp], str.BEGIN_TRANSACTION__n
mov dword [esp + 4], eax
call sub.msvcrt.dll_fputs
mov eax, dword [ebx]
mov dword [ebx + 0x54], 0
mov dword [ebx + 0x58], 0
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
mov dword [esp + 4], str.SAVEPOINT_dump__PRAGMA_writable_schemaON
mov dword [esp], eax
call fcn.00477ee4
test edi, edi
mov dword [ebx + 0x40], 0
jne 0x4d2d6b
mov dword [esp], str.true
call fcn.004440e8
mov edi, eax
mov dword [esp + 4], edi
mov dword [esp], str.SELECT_name__type__sql_FROM_sqlite_schema_AS_o_WHERE___s__AND_typetable__AND_sql_NOT_NULL_ORDER_BY_tbl_namesqlite_sequence__rowid
call fcn.004440e8
mov dword [ebp - 0x578], eax
lea eax, [ebp - 0x458]
mov dword [esp + 0xc], ebx
mov dword [esp + 8], 0x4cd2d0
mov dword [ebp - 0x458], 0
mov dword [esp + 0x10], eax
mov eax, dword [ebp - 0x578]
mov dword [esp + 4], eax
mov eax, dword [ebx]
mov dword [esp], eax
call fcn.00477ee4
cmp eax, 0xb
jne 0x4d2ead
mov eax, dword [ebp - 0x578]
call fcn.004b442b
mov esi, eax
mov eax, dword [ebx + 0x38]
mov dword [esp], str.__CORRUPTION_ERROR___n
mov dword [esp + 4], eax
call sub.msvcrt.dll_fputs
mov eax, dword [ebp - 0x458]
test eax, eax
je 0x4d2e17
mov dword [esp + 8], eax
mov eax, dword [ebx + 0x38]
mov dword [esp + 4], str.___s___n
mov dword [esp], eax
call fcn.004c5d3a
mov eax, dword [ebp - 0x458]
mov dword [esp], eax
call fcn.0040b268
mov dword [ebp - 0x458], 0
lea edx, [esi + 0x64]
mov dword [esp], edx
mov dword [ebp - 0x57c], edx
call sub.msvcrt.dll_malloc
test eax, eax
mov esi, eax
je 0x4d2ead
mov edx, dword [ebp - 0x57c]
mov eax, dword [ebp - 0x578]
mov dword [esp + 8], str._s_ORDER_BY_rowid_DESC
mov dword [esp + 4], esi
mov dword [esp], edx
mov dword [esp + 0xc], eax
call fcn.0042a3d9
lea eax, [ebp - 0x458]
mov dword [esp + 0xc], ebx
mov dword [esp + 8], 0x4cd2d0
mov dword [esp + 4], esi
mov dword [esp + 0x10], eax
mov eax, dword [ebx]
mov dword [esp], eax
call fcn.00477ee4
test eax, eax
je 0x4d2e97
mov eax, dword [ebp - 0x458]
mov dword [esp + 4], str.__ERROR:__s___n
mov dword [esp + 8], eax
mov eax, dword [ebx + 0x38]
mov dword [esp], eax
call fcn.004c5d3a
mov eax, dword [ebp - 0x458]
mov dword [esp], eax
call fcn.0040b268
mov dword [esp], esi
call fcn.004ec038
mov eax, dword [ebp - 0x578]
mov dword [esp], eax
call fcn.0040b268
test byte [ebx + 0x6d], 1
jne 0x4d3088
mov dword [esp + 4], edi
mov dword [esp], str.SELECT_sql_FROM_sqlite_schema_AS_o_WHERE___s__AND_sql_NOT_NULL__AND_type_IN__index_trigger_view_
call fcn.004440e8
mov dword [ebp - 0x578], eax
lea eax, [ebp - 0x458]
mov dword [esp + 0x10], 0
mov dword [esp + 8], 0xffffffff
mov dword [esp + 0xc], eax
mov eax, dword [ebp - 0x578]
mov dword [esp + 4], eax
mov eax, dword [ebx]
mov dword [esp], eax
call fcn.0048b371
test eax, eax
mov dword [ebp - 0x57c], eax
jne 0x4d2f1d
mov eax, dword [ebp - 0x458]
test eax, eax
jne 0x4d2f6f
mov edx, dword [ebx]
mov eax, dword [ebp - 0x578]
call fcn.004be064
mov esi, eax
mov eax, dword [ebx]
mov dword [esp], eax
call fcn.0042dd05
mov dword [esp + 0xc], eax
mov eax, dword [ebp - 0x57c]
mov dword [esp + 0x10], esi
mov dword [esp + 4], str.__ERROR:___d___s___n_s
mov dword [esp + 8], eax
mov eax, dword [ebx + 0x38]
mov dword [esp], eax
call fcn.004c5d3a
mov dword [esp], esi
call fcn.0040b268
cmp byte [ebp - 0x57c], 0xb
jmp 0x4d3075
mov dword [esp], eax
call fcn.0047778f
mov esi, eax
mov eax, dword [ebp - 0x458]
mov dword [esp], eax
call fcn.00403c45
mov dword [ebp - 0x57c], eax
cmp esi, 0x64
mov eax, dword [ebp - 0x458]
jne 0x4d303e
mov dword [esp + 4], 0
mov dword [esp], eax
call fcn.0041feb6
mov dword [esp + 8], eax
mov esi, eax
mov eax, dword [ebx + 0x38]
mov dword [esp + 4], 0x506d0a
mov dword [esp], eax
call fcn.004c5d3a
mov edx, 1
cmp dword [ebp - 0x57c], edx
jle 0x4d300a
mov eax, dword [ebp - 0x458]
mov dword [esp + 4], edx
mov dword [ebp - 0x580], edx
mov dword [esp], eax
call fcn.0041feb6
mov dword [esp + 8], eax
mov eax, dword [ebx + 0x38]
mov dword [esp + 4], 0x50cab6
mov dword [esp], eax
call fcn.004c5d3a
mov edx, dword [ebp - 0x580]
inc edx
jmp 0x4d2fca
test esi, esi
mov eax, 0x506d14
cmove esi, eax
mov al, byte [esi]
test al, al
je 0x4da4af
cmp al, 0x2d
je 0x4d3025
inc esi
jmp 0x4d3014
cmp byte [esi + 1], 0x2d
jne 0x4d3022
mov eax, dword [ebx + 0x38]
mov dword [esp], 0x50f52b
mov dword [esp + 4], eax
jmp 0x4da4bd
mov dword [esp], eax
call fcn.00458aaf
test eax, eax
mov esi, eax
je 0x4d307a
mov eax, dword [ebx]
mov dword [esp], eax
call fcn.0042dd05
mov dword [esp + 0xc], eax
mov eax, dword [ebx + 0x38]
mov dword [esp + 8], esi
mov dword [esp + 4], str.__ERROR:___d___s___n
mov dword [esp], eax
call fcn.004c5d3a
mov eax, esi
cmp al, 0xb
je 0x4d307a
inc dword [ebx + 0x40]
mov eax, dword [ebp - 0x578]
mov dword [esp], eax
call fcn.0040b268
mov dword [esp], edi
call fcn.0040b268
cmp dword [ebx + 0x54], 0
je 0x4d30b0
mov eax, dword [ebx + 0x38]
mov dword [esp], str.PRAGMA_writable_schemaOFF__n
mov dword [esp + 4], eax
call sub.msvcrt.dll_fputs
mov dword [ebx + 0x54], 0
mov eax, dword [ebx]
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
mov dword [esp + 4], str.PRAGMA_writable_schemaOFF_
mov dword [esp], eax
call fcn.00477ee4
mov eax, dword [ebx]
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
mov dword [esp + 4], str.RELEASE_dump_
mov dword [esp], eax
call fcn.00477ee4
test byte [ebx + 0x6d], 1
jne 0x4d312a
cmp dword [ebx + 0x40], 0
mov edx, str.ROLLBACK_____due_to_errors_n
mov eax, str.COMMIT__n
cmovne eax, edx
mov dword [esp + 4], eax
mov eax, dword [ebx + 0x38]
mov dword [esp], eax
call sub.msvcrt.dll_fprintf
mov eax, dword [ebp - 0x588]
xor edi, edi
mov dword [ebx + 0x58], eax
mov eax, dword [ebp - 0x584]
mov dword [ebx + 0x6c], eax
jmp 0x4da488
cmp edi, 0x65
jne 0x4d359c
mov eax, dword [ebp - 0x528]
mov ecx, esi
mov edx, str.echo
call fcn.004bb7f6
test eax, eax
jne 0x4d31bb
cmp dword [ebp - 0x578], 2
jne 0x4d3190
mov eax, dword [ebp - 0x524]
call fcn.004c858a
test eax, eax
je 0x4d3185
or dword [ebx + 0x6c], 0x40
xor edi, edi
jmp 0x4da488
and dword [ebx + 0x6c], 0xffffffbf
xor edi, edi
jmp 0x4da488
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp], str.Usage:_.echo_onoff_n
mov edi, 1
add eax, 0x40
mov dword [esp + 4], eax
call sub.msvcrt.dll_fputs
jmp 0x4da488
cmp edi, 0x65
jne 0x4d359c
mov eax, dword [ebp - 0x528]
mov ecx, esi
mov edx, 0x50cb1c
mov dword [ebp - 0x57c], eax
call fcn.004bb7f6
test eax, eax
jne 0x4d3293
cmp dword [ebp - 0x578], 2
jne 0x4d3271
cmp byte [ebx + 7], 0
mov byte [ebx + 6], 0
je 0x4d3224
mov eax, dword [ebx]
test eax, eax
je 0x4d3220
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
mov dword [esp + 4], str.PRAGMA_vdbe_traceOFF_
mov dword [esp], eax
call fcn.00477ee4
mov byte [ebx + 7], 0
mov esi, dword [ebp - 0x524]
mov edx, str.full
mov eax, esi
call fcn.004bdf51
test eax, eax
jne 0x4d3245
mov byte [ebx + 5], 3
xor edi, edi
jmp 0x4da488
mov edx, str.trigger
mov eax, esi
call fcn.004bdf51
test eax, eax
jne 0x4d3260
mov byte [ebx + 5], 2
xor edi, edi
jmp 0x4da488
mov eax, esi
xor edi, edi
call fcn.004c858a
mov byte [ebx + 5], al
jmp 0x4da488
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp], str.Usage:_.eqp_offontracetriggerfull_n
mov edi, 1
add eax, 0x40
mov dword [esp + 4], eax
call sub.msvcrt.dll_fputs
jmp 0x4da488
mov eax, dword [ebp - 0x57c]
mov ecx, esi
mov edx, str.exit
call fcn.004bb7f6
test eax, eax
jne 0x4d32d3
cmp dword [ebp - 0x578], 1
jne 0x4d32bc
mov edi, 2
jmp 0x4da488
mov eax, dword [ebp - 0x524]
call fcn.004bca70
test eax, eax
je 0x4d32b2
mov dword [esp], eax
jmp 0x4d5ee3
mov eax, dword [ebp - 0x57c]
mov ecx, esi
mov edx, str.explain
call fcn.004bb7f6
test eax, eax
jne 0x4d3374
cmp dword [ebp - 0x578], 1
jne 0x4d3317
mov eax, dword [ebx + 0x44]
cmp eax, 9
je 0x4da583
mov dword [ebx + 0x50], eax
mov dword [ebx + 0x44], 9
xor edi, edi
mov byte [ebx + 4], 0
jmp 0x4da488
mov esi, dword [ebp - 0x524]
mov edx, str.auto
mov eax, esi
call fcn.004bdf51
test eax, eax
je 0x4d335d
mov eax, esi
call fcn.004c858a
cmp eax, 1
je 0x4d32f6
test eax, eax
jne 0x4d3354
cmp dword [ebx + 0x44], 9
jne 0x4d3349
mov eax, dword [ebx + 0x50]
mov dword [ebx + 0x44], eax
mov byte [ebx + 4], 0
xor edi, edi
jmp 0x4da488
cmp eax, 0x63
jne 0x4da583
cmp dword [ebx + 0x44], 9
jne 0x4d3369
mov eax, dword [ebx + 0x50]
mov dword [ebx + 0x44], eax
mov byte [ebx + 4], 1
xor edi, edi
jmp 0x4da488
mov eax, dword [ebp - 0x57c]
mov ecx, esi
mov edx, str.expert
call fcn.004bb7f6
test eax, eax
jne 0x4d4e9c
cmp byte [ebx + 0xd], 0
je 0x4d33c0
mov eax, dword [ebp - 0x57c]
mov dword [esp + 4], str.Cannot_run_experimental_commands_such_as___s__in_safe_mode_n
mov edi, 1
mov dword [esp + 8], eax
mov eax, dword [sym.imp.msvcrt.dll__iob]
add eax, 0x40
mov dword [esp], eax
call sub.msvcrt.dll_fprintf
jmp 0x4da488
xor edx, edx
mov eax, ebx
call fcn.004cfaa0
cmp dword [ebx + 0x434], 0
mov dword [ebp - 0x458], 0
je 0x4d33f8
mov dword [esp + 8], 0x4c31
mov dword [esp + 4], str.shell.c
mov dword [esp], str.pState__expert.pExpert0
call fcn.004eaa60
lea edx, [ebx + 0x434]
mov ecx, 2
xor eax, eax
mov dword [ebp - 0x580], 0
mov edi, edx
rep stosd dword es:[edi], eax
mov ecx, dword [ebp - 0x578]
mov edi, 1
dec ecx
mov dword [ebp - 0x588], ecx
test eax, eax
jne 0x4d351d
cmp edi, dword [ebp - 0x578]
jge 0x4d351d
lea eax, [edi*4]
mov esi, dword [ebp + eax - 0x528]
mov dword [ebp - 0x584], eax
cmp byte [esi], 0x2d
jne 0x4d345d
xor eax, eax
cmp byte [esi + 1], 0x2d
sete al
add esi, eax
mov eax, esi
call fcn.004b442b
cmp eax, 1
mov dword [ebp - 0x57c], eax
jle 0x4d34f6
mov ecx, eax
mov edx, str._verbose
mov eax, esi
call fcn.004bb7f6
test eax, eax
jne 0x4d3494
mov dword [ebx + 0x438], 1
jmp 0x4d3517
mov ecx, dword [ebp - 0x57c]
mov edx, str._sample
mov eax, esi
call fcn.004bb7f6
test eax, eax
jne 0x4d34f6
cmp edi, dword [ebp - 0x588]
jne 0x4d34c0
mov dword [esp + 8], esi
mov dword [esp + 4], str.option_requires_an_argument:__s_n
jmp 0x4d3502
mov eax, dword [ebp - 0x584]
inc edi
lea esi, [ebp + eax - 0x524]
mov eax, dword [esi]
call fcn.004bca70
mov dword [ebp - 0x580], eax
xor eax, eax
cmp dword [ebp - 0x580], 0x64
jbe 0x4d3517
mov eax, dword [esi]
mov dword [esp + 4], str.value_out_of_range:__s_n
mov dword [esp + 8], eax
jmp 0x4d3502
mov dword [esp + 8], esi
mov dword [esp + 4], str.unknown_option:__s_n
mov eax, dword [sym.imp.msvcrt.dll__iob]
add eax, 0x40
mov dword [esp], eax
call sub.msvcrt.dll_fprintf
mov eax, 1
inc edi
jmp 0x4d3425
test eax, eax
jne 0x4d3587
lea eax, [ebp - 0x458]
mov dword [esp + 4], eax
mov eax, dword [ebx]
mov dword [esp], eax
call fcn.004cbda9
test eax, eax
mov dword [ebx + 0x434], eax
jne 0x4d356d
mov eax, dword [ebp - 0x458]
mov edx, str.out_of_memory
mov dword [esp + 4], str.sqlite3_expert_new:__s_n
test eax, eax
cmove eax, edx
mov dword [esp + 8], eax
mov eax, dword [sym.imp.msvcrt.dll__iob]
add eax, 0x40
mov dword [esp], eax
call sub.msvcrt.dll_fprintf
jmp 0x4d3587
mov ecx, dword [ebp - 0x580]
mov dword [esp + 4], 1
mov dword [esp], eax
mov dword [esp + 8], ecx
call fcn.004caf52
mov eax, dword [ebp - 0x458]
xor edi, edi
mov dword [esp], eax
call fcn.0040b268
jmp 0x4da488
mov eax, dword [ebp - 0x528]
cmp edi, 0x66
mov dword [ebp - 0x584], eax
jne 0x4d3ca0
mov ecx, esi
mov edx, str.filectrl
call fcn.004bb7f6
test eax, eax
jne 0x4d3ae0
xor edx, edx
mov eax, ebx
mov dword [ebp - 0x548], 0
mov dword [ebp - 0x544], 0
mov edi, str.help
call fcn.004cfaa0
cmp dword [ebp - 0x578], 1
mov dword [ebp - 0x57c], 0
cmovne edi, dword [ebp - 0x524]
cmp byte [edi], 0x2d
jne 0x4d366c
mov edx, str.__schema
mov eax, edi
call fcn.004bdf51
test eax, eax
je 0x4d3624
mov edx, str._schema
mov eax, edi
call fcn.004bdf51
test eax, eax
jne 0x4d366c
cmp dword [ebp - 0x578], 3
mov dword [ebp - 0x57c], 0
jle 0x4d366c
mov eax, dword [ebp - 0x520]
mov dword [ebp - 0x57c], eax
mov eax, 3
mov edx, dword [ebp + eax*4 - 0x528]
mov dword [ebp + eax*4 - 0x530], edx
inc eax
cmp eax, dword [ebp - 0x578]
jne 0x4d3648
sub dword [ebp - 0x578], 2
mov edi, dword [ebp - 0x524]
cmp byte [edi], 0x2d
jne 0x4d3690
mov dl, byte [edi + 1]
test dl, dl
je 0x4d3690
cmp dl, 0x2d
lea eax, [edi + 1]
jne 0x4d368e
cmp byte [edi + 2], 0
lea edx, [edi + 2]
mov edi, edx
cmove edi, eax
jmp 0x4d3690
mov edi, eax
mov edx, str.help
mov eax, edi
call fcn.004bdf51
test eax, eax
jne 0x4d36e9
mov eax, dword [ebx + 0x38]
mov dword [esp + 4], str.Available_file_controls:_n
mov esi, 0x510680
mov dword [esp], eax
call fcn.004c5d3a
mov eax, dword [esi + 8]
add esi, 0xc
mov dword [esp + 0xc], eax
mov eax, dword [esi - 0xc]
mov dword [esp + 4], str.__.filectrl__s__s_n
mov dword [esp + 8], eax
mov eax, dword [ebx + 0x38]
mov dword [esp], eax
call fcn.004c5d3a
cmp esi, str.defensive
jne 0x4d36b8
jmp 0x4d3ad6
mov eax, edi
or esi, 0xffffffff
call fcn.004b442b
mov dword [ebp - str.chunk_size], 0x510680
mov dword [ebp - 0x58c], eax
mov dword [ebp - 0x588], 0
mov dword [ebp - 0x580], 0xffffffff
mov eax, dword [ebp - 0x584]
mov ecx, dword [ebp - 0x58c]
mov edx, dword [eax]
mov eax, edi
call fcn.004bb7f6
test eax, eax
jne 0x4d376c
test esi, esi
jns 0x4d374b
mov eax, dword [ebp - 0x584]
mov esi, dword [eax + 4]
mov eax, dword [ebp - 0x588]
mov dword [ebp - 0x580], eax
jmp 0x4d376c
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp + 8], edi
mov dword [esp + 4], str.Error:_ambiguous_file_control:___s__nUse__.filectrl___help__for_help_n
add eax, 0x40
mov dword [esp], eax
call fcn.004c5d3a
jmp 0x4d3ad6
inc dword [ebp - 0x588]
add dword [ebp - 0x584], 0xc
cmp dword [ebp - 0x588], 9
jne 0x4d3717
test esi, esi
jns 0x4d37a7
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp + 8], edi
mov dword [esp + 4], str.Error:_unknown_file_control:__s_nUse__.filectrl___help__for_help_n
add eax, 0x40
mov dword [esp], eax
call fcn.004c5d3a
jmp 0x4d3a3c
cmp esi, 0x14
je 0x4d38df
jg 0x4d37d9
cmp esi, 0xa
je 0x4d38ac
jg 0x4d37c2
cmp esi, 6
jmp 0x4d37e7
cmp esi, 0xd
je 0x4d38ac
cmp esi, 0x10
je 0x4d392f
jmp 0x4d3a3c
cmp esi, 0x23
je 0x4d38df
jg 0x4d37ee
cmp esi, 0x22
je 0x4d3865
jmp 0x4d3a3c
cmp esi, 0x24
je 0x4d3801
cmp esi, 0x26
je 0x4d39ab
jmp 0x4d3a3c
mov eax, dword [ebp - 0x578]
lea edx, [eax - 2]
xor eax, eax
cmp edx, 1
ja 0x4d3a3e
or eax, 0xffffffff
cmp dword [ebp - 0x578], 3
mov edx, eax
jne 0x4d382e
mov eax, dword [ebp - 0x520]
call fcn.004bca70
mov dword [ebp - 0x548], eax
lea eax, [ebp - 0x548]
mov dword [esp + 8], 0x24
mov dword [ebp - 0x544], edx
mov dword [esp + 0xc], eax
mov eax, dword [ebp - 0x57c]
mov dword [esp + 4], eax
mov eax, dword [ebx]
mov dword [esp], eax
call fcn.00416192
jmp 0x4d3925
xor eax, eax
cmp dword [ebp - 0x578], 3
jne 0x4d3a3e
mov eax, dword [ebp - 0x520]
call fcn.004bca70
mov dword [ebp - 0x458], eax
lea eax, [ebp - 0x458]
mov dword [esp + 8], esi
mov dword [esp + 0xc], eax
mov eax, dword [ebp - 0x57c]
mov dword [esp + 4], eax
mov eax, dword [ebx]
mov dword [esp], eax
call fcn.00416192
jmp 0x4d3a35
mov eax, dword [ebp - 0x578]
lea edx, [eax - 2]
xor eax, eax
cmp edx, 1
ja 0x4d3a3e
or eax, 0xffffffff
cmp dword [ebp - 0x578], 3
jne 0x4d38d7
mov eax, dword [ebp - 0x520]
call fcn.004c858a
mov dword [ebp - 0x458], eax
jmp 0x4d38ee
xor eax, eax
cmp dword [ebp - 0x578], 2
jne 0x4d3a3e
lea eax, [ebp - 0x458]
mov dword [esp + 8], esi
mov dword [esp + 0xc], eax
mov eax, dword [ebp - 0x57c]
mov dword [esp + 4], eax
mov eax, dword [ebx]
mov dword [esp], eax
call fcn.00416192
mov eax, dword [ebp - 0x458]
mov dword [ebp - 0x548], eax
sar eax, 0x1f
mov dword [ebp - 0x544], eax
mov eax, 1
jmp 0x4d3a3e
xor eax, eax
cmp dword [ebp - 0x578], 2
mov dword [ebp - 0x458], 0
jne 0x4d3a3e
lea eax, [ebp - 0x458]
mov dword [esp + 8], 0x10
mov dword [esp + 0xc], eax
mov eax, dword [ebp - 0x57c]
mov dword [esp + 4], eax
mov eax, dword [ebx]
mov dword [esp], eax
call fcn.00416192
mov edx, dword [ebp - 0x458]
mov eax, 2
test edx, edx
je 0x4d3a3e
mov eax, dword [ebx + 0x38]
mov dword [esp + 8], edx
mov dword [esp + 4], 0x508cd3
mov dword [esp], eax
call fcn.004c5d3a
mov eax, dword [ebp - 0x458]
mov dword [esp], eax
call fcn.0040b268
jmp 0x4d3a35
cmp dword [ebp - 0x578], 2
lea esi, [ebp - 0x458]
jle 0x4d39ee
mov eax, dword [ebp - 0x520]
mov dword [esp], eax
call sub.msvcrt.dll_atoi
mov dword [ebp - 0x458], eax
mov eax, dword [ebp - 0x57c]
mov dword [esp + 0xc], esi
mov dword [esp + 8], 0x26
mov dword [esp + 4], eax
mov eax, dword [ebx]
mov dword [esp], eax
call fcn.00416192
mov eax, dword [ebp - 0x57c]
mov dword [esp + 0xc], esi
mov dword [esp + 8], 0x26
mov dword [ebp - 0x458], 0xffffffff
mov dword [esp + 4], eax
mov eax, dword [ebx]
mov dword [esp], eax
call fcn.00416192
mov eax, dword [ebp - 0x458]
mov dword [esp + 4], 0x50cd0f
mov dword [esp + 8], eax
mov eax, dword [ebx + 0x38]
mov dword [esp], eax
call fcn.004c5d3a
mov eax, 2
jmp 0x4d3a3e
xor eax, eax
test eax, eax
jne 0x4d3a7f
mov ecx, dword [ebp - 0x580]
sub ecx, 0
js 0x4d3a7f
imul eax, dword [ebp - 0x580], 0xc
mov dword [esp + 8], edi
mov dword [esp + 4], str.Usage:_.filectrl__s__s_n
mov edi, 1
mov eax, dword [eax + 0x510688]
mov dword [esp + 0xc], eax
mov eax, dword [ebx + 0x38]
mov dword [esp], eax
call fcn.004c5d3a
jmp 0x4da488
xor edi, edi
dec eax
jne 0x4da488
mov eax, dword [ebp - 0x548]
mov edx, dword [ebp - 0x544]
lea esi, [ebp - 0x458]
mov dword [esp + 8], str._lld
mov dword [esp], 0x64
mov dword [esp + 4], esi
mov dword [esp + 0xc], eax
mov dword [esp + 0x10], edx
call fcn.0042a3d9
mov eax, dword [ebx + 0x38]
mov dword [esp + 8], esi
mov dword [esp + 4], 0x508cd3
mov dword [esp], eax
call sub.msvcrt.dll_fprintf
jmp 0x4da488
mov edi, 1
jmp 0x4da488
mov eax, dword [ebp - 0x584]
mov ecx, esi
mov edx, str.fullschema
call fcn.004bb7f6
test eax, eax
jne 0x4d4e9c
cmp dword [ebp - 0x578], 2
lea edi, [ebp - 0x458]
mov ecx, 0x110
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov dword [ebp - 0x400], 0
mov dword [ebp - 0x414], 3
lea esi, [ebp - 0x458]
mov dword [ebp - 0x40c], 3
jne 0x4d3b60
mov eax, dword [ebp - 0x524]
mov edx, str.indent
call fcn.004c2ac4
test eax, eax
je 0x4d3b69
mov dword [ebp - 0x414], 0xb
mov dword [ebp - 0x40c], 0xb
jmp 0x4d3b8b
cmp dword [ebp - 0x578], 1
je 0x4d3b8b
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp], str.Usage:_.fullschema____indent__n
mov edi, 1
add eax, 0x40
mov dword [esp + 4], eax
call sub.msvcrt.dll_fputs
jmp 0x4da488
xor edx, edx
mov eax, ebx
call fcn.004cfaa0
mov eax, dword [ebx]
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], esi
mov dword [esp + 8], fcn.004c83bf
mov dword [esp + 4], str.SELECT_sql_FROM___SELECT_sql_sql__type_type__tbl_name_tbl_name__name_name__rowid_x_____FROM_sqlite_schema_UNION_ALL___SELECT_sql__type__tbl_name__name__rowid_FROM_sqlite_temp_schema__WHERE_type_meta_AND_sql_NOTNULL_AND_name_NOT_LIKE_sqlite___ORDER_BY_x
mov dword [esp], eax
call fcn.00477ee4
test eax, eax
mov edi, eax
jne 0x4d3c19
lea eax, [ebp - 0x548]
mov dword [esp + 0x10], 0
mov dword [esp + 8], 0xffffffff
mov dword [esp + 4], str.SELECT_rowid_FROM_sqlite_schema_WHERE_name_GLOB_sqlite_stat_134_
mov dword [esp + 0xc], eax
mov eax, dword [ebx]
mov dword [esp], eax
call fcn.0048b371
mov edi, eax
mov eax, dword [ebp - 0x548]
mov dword [esp], eax
call fcn.0047778f
mov dword [ebp - 0x578], eax
mov eax, dword [ebp - 0x548]
mov dword [esp], eax
call fcn.00458aaf
cmp dword [ebp - 0x578], 0x64
je 0x4d3c31
mov eax, dword [ebx + 0x38]
mov dword [esp], str.__No_STAT_tables_available___n
mov dword [esp + 4], eax
call sub.msvcrt.dll_fputs
jmp 0x4da488
mov eax, dword [ebx + 0x38]
mov dword [esp], str.ANALYZE_sqlite_schema__n
mov dword [esp + 4], eax
call sub.msvcrt.dll_fputs
xor ecx, ecx
mov edx, str.SELECT__FROM_sqlite_stat1
mov eax, esi
mov dword [ebp - 0x414], 5
mov dword [ebp - 0x40c], 5
mov dword [ebp - 0x3d8], str.sqlite_stat1
call fcn.004cc607
xor ecx, ecx
mov edx, str.SELECT__FROM_sqlite_stat4
mov eax, esi
mov dword [ebp - 0x3d8], str.sqlite_stat4
call fcn.004cc607
mov eax, dword [ebx + 0x38]
mov dword [esp], str.ANALYZE_sqlite_schema__n
mov dword [esp + 4], eax
call sub.msvcrt.dll_fputs
jmp 0x4da488
cmp edi, 0x68
jne 0x4d3d71
mov eax, dword [ebp - 0x584]
mov ecx, esi
mov edx, str.headers
call fcn.004bb7f6
test eax, eax
jne 0x4d3d06
cmp dword [ebp - 0x578], 2
jne 0x4d3ce4
mov eax, dword [ebp - 0x524]
xor edi, edi
call fcn.004c858a
or dword [ebx + 0x6c], 0x80
mov dword [ebx + 0x58], eax
jmp 0x4da488
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp], str.Usage:_.headers_onoff_n
mov edi, 1
add eax, 0x40
mov dword [esp + 4], eax
call sub.msvcrt.dll_fputs
jmp 0x4da488
mov eax, dword [ebp - 0x584]
mov ecx, esi
mov edx, str.help
call fcn.004bb7f6
test eax, eax
jne 0x4d4e9c
cmp dword [ebp - 0x578], 1
mov eax, dword [ebx + 0x38]
je 0x4d3d63
mov edx, dword [ebp - 0x524]
call fcn.004c5f9d
test eax, eax
jne 0x4da583
mov eax, dword [ebp - 0x524]
mov dword [esp + 4], str.Nothing_matches__s_n
xor edi, edi
mov dword [esp + 8], eax
mov eax, dword [ebx + 0x38]
mov dword [esp], eax
call fcn.004c5d3a
jmp 0x4da488
xor edx, edx
xor edi, edi
call fcn.004c5f9d
jmp 0x4da488
cmp edi, 0x69
jne 0x4d4e9c
mov eax, dword [ebp - 0x584]
mov ecx, esi
mov edx, str.import
call fcn.004bb7f6
test eax, eax
mov dword [ebp - 0x57c], eax
jne 0x4d49c7
mov dword [esp + 4], str.cannot_run_.import_in_safe_mode
mov dword [esp], ebx
mov dword [ebp - 0x55c], 0
call fcn.004c83de
lea edx, [ebp - 0x458]
mov eax, dword [ebp - 0x57c]
cmp dword [ebx + 0x44], 0xa
mov ecx, 0xd
mov dword [ebp - 0x590], 1
mov dword [ebp - 0x598], 0
mov edi, edx
mov edx, 0x4c65d8
mov dword [ebp - 0x588], 0
rep stosd dword es:[edi], eax
mov eax, 0x4bd9be
mov edi, 1
mov dword [ebp - 0x580], 0
cmovne eax, edx
mov dword [ebp - 0x594], 0
mov dword [ebp - 0x58c], 0
mov dword [ebp - 0x584], eax
mov eax, dword [ebp - 0x578]
dec eax
mov dword [ebp - 0x59c], eax
cmp edi, dword [ebp - 0x578]
jge 0x4d3fa8
mov esi, dword [ebp + edi*4 - 0x528]
cmp byte [esi], 0x2d
jne 0x4d3e51
xor eax, eax
cmp byte [esi + 1], 0x2d
sete al
add esi, eax
cmp byte [esi], 0x2d
je 0x4d3e81
cmp dword [ebp - 0x580], 0
je 0x4d3f94
cmp dword [ebp - 0x58c], 0
je 0x4d3f9c
mov dword [esp + 8], esi
mov dword [esp + 4], str.ERROR:_extra_argument:___s_.__Usage:_n
jmp 0x4d3f77
mov edx, 0x50cf99
mov eax, esi
call fcn.004bdf51
test eax, eax
jne 0x4d3e9c
inc dword [ebp - 0x588]
jmp 0x4d3fa2
mov edx, str._schema
mov eax, esi
call fcn.004bdf51
test eax, eax
jne 0x4d3ec7
cmp edi, dword [ebp - 0x59c]
jge 0x4d3ec7
inc edi
mov eax, dword [ebp + edi*4 - 0x528]
mov dword [ebp - 0x594], eax
jmp 0x4d3fa2
mov edx, str._skip
mov eax, esi
call fcn.004bdf51
test eax, eax
jne 0x4d3ef7
cmp edi, dword [ebp - 0x59c]
jge 0x4d3ef7
inc edi
mov eax, dword [ebp + edi*4 - 0x528]
call fcn.004bca70
mov dword [ebp - 0x598], eax
jmp 0x4d3fa2
mov edx, str._ascii
mov eax, esi
call fcn.004bdf51
test eax, eax
jne 0x4d3f31
mov dword [ebp - 0x42c], 0x1f
mov dword [ebp - 0x428], 0x1e
mov dword [ebp - 0x590], 0
mov dword [ebp - 0x584], 0x4bd9be
jmp 0x4d3fa2
mov edx, str._csv
mov eax, esi
call fcn.004bdf51
test eax, eax
jne 0x4d3f6b
mov dword [ebp - 0x42c], 0x2c
mov dword [ebp - 0x428], 0xa
mov dword [ebp - 0x590], 0
mov dword [ebp - 0x584], 0x4c65d8
jmp 0x4d3fa2
mov dword [esp + 8], esi
mov dword [esp + 4], str.ERROR:_unknown_option:___s_.__Usage:_n
mov eax, dword [ebx + 0x38]
mov dword [esp], eax
call fcn.004c5d3a
mov eax, dword [ebx + 0x38]
mov edx, str.import
call fcn.004c5f9d
jmp 0x4d49bd
mov dword [ebp - 0x580], esi
jmp 0x4d3fa2
mov dword [ebp - 0x58c], esi
inc edi
jmp 0x4d3e2e
cmp dword [ebp - 0x58c], 0
jne 0x4d3fd3
cmp dword [ebp - 0x580], 0
mov edx, str.FILE
mov eax, str.TABLE
mov dword [esp + 4], str.ERROR:_missing__s_argument._Usage:_n
cmove eax, edx
mov dword [esp + 8], eax
jmp 0x4d3f77
xor edx, edx
mov eax, ebx
mov dword [0x51a44c], 0
call fcn.004cfaa0
cmp dword [ebp - 0x590], 0
je 0x4d40c9
lea eax, [ebx + 0xa6]
call fcn.004b442b
test eax, eax
jne 0x4d4017
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp], str.Error:_non_null_column_separator_required_for_import_n
add eax, 0x40
mov dword [esp + 4], eax
jmp 0x4d4073
dec eax
jle 0x4d402f
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp], str.Error:_multi_character_column_separators_not_allowed_for_import_n
add eax, 0x40
mov dword [esp + 4], eax
jmp 0x4d4073
lea esi, [ebx + 0xba]
mov eax, esi
call fcn.004b442b
test eax, eax
jne 0x4d4055
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp], str.Error:_non_null_row_separator_required_for_import_n
add eax, 0x40
mov dword [esp + 4], eax
jmp 0x4d4073
cmp eax, 2
jne 0x4d40ac
cmp dword [ebx + 0x44], 8
je 0x4d407d
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp], str.Error:_multi_character_row_separators_not_allowed_for_import_n
add eax, 0x40
mov dword [esp + 4], eax
call sub.msvcrt.dll_fputs
jmp 0x4d49bd
mov edx, 0x507749
mov eax, esi
call fcn.004bdf51
test eax, eax
jne 0x4d4060
mov dword [esp + 8], 0x508c29
mov dword [esp + 4], esi
mov dword [esp], 0x14
call fcn.0042a3d9
mov eax, esi
call fcn.004b442b
dec eax
jg 0x4d4060
movzx eax, byte [ebx + 0xa6]
mov dword [ebp - 0x42c], eax
movzx eax, byte [ebx + 0xba]
mov dword [ebp - 0x428], eax
mov eax, dword [ebp - 0x580]
mov dword [ebp - 0x440], 1
mov dword [ebp - 0x458], eax
cmp byte [eax], 0x7c
jne 0x4d4113
inc eax
mov dword [esp + 4], 0x509665
mov dword [esp], eax
call dword [sym.imp.msvcrt.dll__popen]
mov dword [ebp - 0x454], eax
mov eax, dword [sym.imp.msvcrt.dll__pclose]
mov dword [ebp - 0x458], str._pipe_
mov dword [ebp - 0x450], eax
jmp 0x4d4139
mov eax, dword [ebp - 0x580]
mov dword [esp + 4], 0x507267
mov dword [esp], eax
call sub.msvcrt.dll_fopen
mov dword [ebp - 0x450], sub.msvcrt.dll_fclose
mov dword [ebp - 0x454], eax
cmp dword [ebp - 0x454], 0
jne 0x4d4169
mov eax, dword [ebp - 0x580]
mov dword [esp + 4], str.Error:_cannot_open___s__n
mov dword [esp + 8], eax
mov eax, dword [sym.imp.msvcrt.dll__iob]
add eax, 0x40
mov dword [esp], eax
call fcn.004c5d3a
jmp 0x4d49bd
cmp dword [ebp - 0x588], 1
jg 0x4d4184
cmp dword [ebp - 0x588], 0
jle 0x4d41f8
cmp dword [ebp - 0x590], 0
je 0x4d41f8
mov eax, dword [ebp - 0x42c]
mov dword [esp + 4], str.Column_separator
mov byte [ebp - 0x547], 0
mov byte [ebp - 0x548], al
mov eax, dword [ebx + 0x38]
mov dword [esp], eax
call fcn.004c5d3a
mov eax, dword [ebx + 0x38]
lea edx, [ebp - 0x548]
call fcn.004be350
mov eax, dword [ebx + 0x38]
mov dword [esp + 4], str.__row_separator
mov dword [esp], eax
call fcn.004c5d3a
mov eax, dword [ebp - 0x428]
lea edx, [ebp - 0x548]
mov byte [ebp - 0x548], al
mov eax, dword [ebx + 0x38]
call fcn.004be350
mov eax, dword [ebx + 0x38]
mov dword [esp + 4], 0x508c29
mov dword [esp], eax
call fcn.004c5d3a
mov dword [esp], 0x78
mov dword [esp + 4], 0
call fcn.00436e2c
test eax, eax
mov dword [ebp - 0x44c], eax
je 0x4d4291
mov edi, dword [ebp - 0x598]
lea esi, [ebp - 0x458]
jmp 0x4d4242
mov eax, dword [ebp - 0x42c]
cmp dword [ebp - 0x430], eax
jne 0x4d4241
mov dword [esp], esi
mov eax, dword [ebp - 0x584]
call eax
test eax, eax
jne 0x4d4224
dec edi
test edi, edi
jg 0x4d4232
cmp dword [ebp - 0x594], 0
mov eax, dword [ebp - 0x58c]
je 0x4d42a1
mov dword [esp + 8], eax
mov eax, dword [ebp - 0x594]
mov dword [esp], str.__w_.__w_
mov dword [esp + 4], eax
call fcn.004440e8
mov dword [ebp - 0x580], eax
mov eax, dword [ebp - 0x580]
mov dword [esp], str.SELECT__FROM__s
mov dword [esp + 4], eax
call fcn.004440e8
test eax, eax
mov esi, eax
jne 0x4d42b3
lea eax, [ebp - 0x458]
call fcn.004ed620
jmp 0x4da41d
mov dword [esp + 4], eax
mov dword [esp], str.__w_
call fcn.004440e8
jmp 0x4d426f
cmp dword [ebp - 0x580], 0
je 0x4d4291
call fcn.004b442b
mov dword [ebp - 0x58c], eax
lea eax, [ebp - 0x55c]
mov dword [esp + 0x10], 0
mov dword [esp + 8], 0xffffffff
mov dword [esp + 4], esi
mov dword [esp + 0xc], eax
mov eax, dword [ebx]
mov dword [esp], eax
call fcn.0048b371
mov edi, eax
lea eax, [ebp - 0x458]
xor edx, edx
call fcn.004bd966
test edi, edi
je 0x4d4596
mov eax, dword [ebx]
mov dword [esp], eax
call fcn.0042dd05
mov dword [esp], str.no_such_table:_
mov dword [esp + 4], eax
call fcn.0040ae6b
test eax, eax
je 0x4d433f
mov eax, dword [ebp - 0x55c]
test eax, eax
je 0x4d4569
mov dword [esp], eax
call fcn.00458aaf
jmp 0x4d4569
mov eax, dword [ebp - 0x580]
mov dword [esp], str.CREATE_TABLE__s
mov dword [ebp - 0x554], 0
mov dword [ebp - 0x548], 0
mov dword [esp + 4], eax
call fcn.004440e8
mov edi, eax
lea eax, [ebp - 0x458]
mov dword [ebp - 0x578], eax
mov eax, dword [ebp - 0x578]
mov dword [esp], eax
mov eax, dword [ebp - 0x584]
call eax
test eax, eax
je 0x4d43ad
mov eax, dword [ebp - 0x44c]
lea edx, [ebp - 0x554]
xor ecx, ecx
call fcn.004ed835
mov eax, dword [ebp - 0x42c]
cmp dword [ebp - 0x430], eax
je 0x4d4377
lea edx, [ebp - 0x554]
lea ecx, [ebp - 0x548]
xor eax, eax
call fcn.004ed835
mov edx, dword [ebp - 0x548]
mov dword [ebp - 0x578], eax
test edx, edx
je 0x4d441c
cmp dword [0x4f1c5c], 0
mov ecx, dword [ebp - 0x458]
je 0x4d43ee
mov eax, dword [sym.imp.msvcrt.dll__iob]
cmp dword [ebx + 0x34], eax
jne 0x4d43ee
mov eax, dword [ebx + 0x38]
jmp 0x4d43f6
mov eax, dword [sym.imp.msvcrt.dll__iob]
add eax, 0x40
mov dword [esp], eax
mov dword [esp + 0xc], edx
mov dword [esp + 8], ecx
mov dword [esp + 4], str.Columns_renamed_during_.import__s_due_to_duplicates:_n_s_n
call fcn.004c5d3a
mov eax, dword [ebp - 0x548]
mov dword [esp], eax
call fcn.0040b268
cmp dword [ebp - 0x554], 0
je 0x4d4441
mov dword [esp + 8], 0x5e9e
mov dword [esp + 4], str.shell.c
mov dword [esp], str.dbCols0
call fcn.004eaa60
cmp dword [ebp - 0x578], 0
jne 0x4d449a
mov eax, dword [ebp - 0x458]
mov dword [esp + 4], str._s:_empty_file_n
mov dword [esp + 8], eax
mov eax, dword [sym.imp.msvcrt.dll__iob]
add eax, 0x40
mov dword [esp], eax
call fcn.004c5d3a
mov dword [esp], edi
call fcn.0040b268
mov dword [esp], esi
call fcn.0040b268
mov eax, dword [ebp - 0x580]
mov dword [esp], eax
call fcn.0040b268
lea eax, [ebp - 0x458]
call fcn.004ed620
jmp 0x4d49bd
mov eax, dword [ebp - 0x578]
mov dword [esp + 4], edi
mov dword [esp], str._z_z_n
mov dword [esp + 8], eax
call fcn.004440e8
cmp dword [ebp - 0x588], 0
mov edi, eax
je 0x4d44d6
mov dword [esp + 8], eax
mov eax, dword [ebx + 0x38]
mov dword [esp + 4], 0x508cd3
mov dword [esp], eax
call fcn.004c5d3a
mov eax, dword [ebx]
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
mov dword [esp + 4], edi
mov dword [esp], eax
call fcn.00477ee4
test eax, eax
je 0x4d452f
mov eax, dword [ebx]
mov dword [esp], eax
call fcn.0042dd05
mov dword [esp + 0xc], eax
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp + 8], edi
mov dword [esp + 4], str._s_failed:_n_s_n
add eax, 0x40
mov dword [esp], eax
call fcn.004c5d3a
jmp 0x4d446c
mov dword [esp], edi
call fcn.0040b268
lea eax, [ebp - 0x55c]
mov dword [esp + 0x10], 0
mov dword [esp + 8], 0xffffffff
mov dword [esp + 4], esi
mov dword [esp + 0xc], eax
mov eax, dword [ebx]
mov dword [esp], eax
call fcn.0048b371
test eax, eax
jne 0x4d4324
jmp 0x4d4596
mov eax, dword [ebx]
xor edi, edi
mov dword [esp], eax
call fcn.0042dd05
mov dword [esp + 8], eax
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp + 4], str.Error:__s_n
add eax, 0x40
mov dword [esp], eax
call fcn.004c5d3a
jmp 0x4d446c
mov dword [esp], esi
call fcn.0040b268
mov eax, dword [ebp - 0x55c]
mov dword [esp], eax
call fcn.00403c45
mov dword [ebp - 0x578], eax
mov eax, dword [ebp - 0x55c]
mov dword [esp], eax
call fcn.00458aaf
cmp dword [ebp - 0x578], 0
mov dword [ebp - 0x55c], 0
je 0x4da5b3
mov eax, dword [ebp - 0x58c]
mov ecx, dword [ebp - 0x578]
lea eax, [eax + ecx + 0xa]
add eax, eax
mov dword [esp], eax
sar eax, 0x1f
mov dword [esp + 4], eax
call fcn.00436e2c
test eax, eax
mov esi, eax
je 0x4d4291
mov edi, dword [ebp - 0x58c]
mov eax, dword [ebp - 0x580]
mov dword [esp + 8], str.INSERT_INTO__s_VALUES__
mov dword [esp + 4], esi
add edi, 0x14
mov dword [esp + 0xc], eax
mov dword [esp], edi
call fcn.0042a3d9
mov eax, esi
call fcn.004b442b
mov edx, 1
add eax, esi
mov ecx, eax
sub ecx, esi
cmp edx, dword [ebp - 0x578]
jge 0x4d4650
mov byte [eax], 0x2c
mov byte [eax + 1], 0x3f
inc edx
add eax, 2
jmp 0x4d4637
cmp dword [ebp - 0x588], 1
mov byte [esi + ecx], 0x29
mov byte [esi + ecx + 1], 0
jle 0x4d4679
mov eax, dword [ebx + 0x38]
mov dword [esp + 8], esi
mov dword [esp + 4], str.Insert_using:__s_n
mov dword [esp], eax
call fcn.004c5d3a
lea eax, [ebp - 0x55c]
mov dword [esp + 0x10], 0
mov dword [esp + 8], 0xffffffff
mov dword [esp + 4], esi
mov dword [esp + 0xc], eax
mov eax, dword [ebx]
mov dword [esp], eax
call fcn.0048b371
test eax, eax
mov edi, eax
je 0x4d46ea
mov eax, dword [ebx]
xor edi, edi
mov dword [esp], eax
call fcn.0042dd05
mov dword [esp + 8], eax
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp + 4], str.Error:__s_n
add eax, 0x40
mov dword [esp], eax
call fcn.004c5d3a
mov eax, dword [ebp - 0x55c]
test eax, eax
je 0x4d446c
mov dword [esp], eax
call fcn.00458aaf
jmp 0x4d446c
mov dword [esp], esi
call fcn.0040b268
mov eax, dword [ebp - 0x580]
mov dword [esp], eax
call fcn.0040b268
mov eax, dword [ebx]
mov dword [esp], eax
call fcn.00406164
test eax, eax
mov dword [ebp - 0x580], eax
je 0x4d473e
mov eax, dword [ebx]
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
mov dword [esp + 4], str.BEGIN
mov dword [esp], eax
call fcn.00477ee4
mov eax, dword [ebp - 0x578]
dec eax
mov dword [ebp - 0x58c], eax
mov eax, dword [ebp - 0x440]
xor esi, esi
mov dword [ebp - 0x57c], eax
cmp esi, dword [ebp - 0x578]
jge 0x4d4846
lea eax, [ebp - 0x458]
mov dword [esp], eax
mov eax, dword [ebp - 0x584]
call eax
test eax, eax
jne 0x4d4782
test esi, esi
je 0x4d4844
cmp dword [ebx + 0x44], 0xa
jne 0x4d4799
test eax, eax
je 0x4d4791
cmp byte [eax], 0
jne 0x4d4799
test esi, esi
je 0x4d4846
mov dword [esp + 8], eax
mov eax, dword [ebp - 0x55c]
lea ecx, [esi + 1]
mov dword [esp + 0x10], 0xffffffff
mov dword [esp + 0xc], 0xffffffff
mov dword [esp + 4], ecx
mov dword [ebp - 0x590], ecx
mov dword [esp], eax
call fcn.0042e1f2
cmp esi, dword [ebp - 0x58c]
jge 0x4d483e
mov eax, dword [ebp - 0x42c]
cmp dword [ebp - 0x430], eax
je 0x4d483e
mov eax, dword [ebp - 0x578]
mov ecx, dword [ebp - 0x590]
add esi, 2
mov dword [esp + 4], str._s:_d:_expected__d_columns_but_found__d___filling_the_rest_with_NULL_n
mov dword [esp + 0x10], eax
mov eax, dword [ebp - 0x57c]
mov dword [esp + 0x14], ecx
mov dword [esp + 0xc], eax
mov eax, dword [ebp - 0x458]
mov dword [esp + 8], eax
mov eax, dword [sym.imp.msvcrt.dll__iob]
add eax, 0x40
mov dword [esp], eax
call fcn.004c5d3a
cmp esi, dword [ebp - 0x578]
jg 0x4d483e
mov eax, dword [ebp - 0x55c]
mov dword [esp + 4], esi
inc esi
mov dword [esp], eax
call fcn.0042dfa6
jmp 0x4d4821
inc esi
jmp 0x4d4759
xor esi, esi
mov eax, dword [ebp - 0x42c]
cmp dword [ebp - 0x430], eax
jne 0x4d48ae
lea eax, [ebp - 0x458]
inc esi
mov dword [esp], eax
mov eax, dword [ebp - 0x584]
call eax
mov eax, dword [ebp - 0x42c]
cmp dword [ebp - 0x430], eax
je 0x4d4854
mov eax, dword [ebp - 0x578]
mov dword [esp + 0x14], esi
mov dword [esp + 4], str._s:_d:_expected__d_columns_but_found__d___extras_ignored_n
mov dword [esp + 0x10], eax
mov eax, dword [ebp - 0x57c]
mov dword [esp + 0xc], eax
mov eax, dword [ebp - 0x458]
mov dword [esp + 8], eax
mov eax, dword [sym.imp.msvcrt.dll__iob]
add eax, 0x40
mov dword [esp], eax
call fcn.004c5d3a
cmp esi, dword [ebp - 0x578]
jl 0x4d4920
mov eax, dword [ebp - 0x55c]
mov dword [esp], eax
call fcn.0047778f
mov eax, dword [ebp - 0x55c]
mov dword [esp], eax
call fcn.0045a638
test eax, eax
mov edi, eax
je 0x4d491a
mov eax, dword [ebx]
mov dword [esp], eax
call fcn.0042dd05
mov dword [esp + 0x10], eax
mov eax, dword [ebp - 0x57c]
mov dword [esp + 4], str._s:_d:_INSERT_failed:__s_n
mov dword [esp + 0xc], eax
mov eax, dword [ebp - 0x458]
mov dword [esp + 8], eax
mov eax, dword [sym.imp.msvcrt.dll__iob]
add eax, 0x40
mov dword [esp], eax
call fcn.004c5d3a
inc dword [ebp - 0x438]
jmp 0x4d4920
inc dword [ebp - 0x43c]
cmp dword [ebp - 0x430], 0xffffffff
jne 0x4d474b
lea eax, [ebp - 0x458]
call fcn.004ed620
mov eax, dword [ebp - 0x55c]
mov dword [esp], eax
call fcn.00458aaf
cmp dword [ebp - 0x580], 0
je 0x4d4979
mov eax, dword [ebx]
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
mov dword [esp + 4], str.COMMIT
mov dword [esp], eax
call fcn.00477ee4
cmp dword [ebp - 0x588], 0
je 0x4da488
mov eax, dword [ebp - 0x440]
mov dword [esp + 4], str.Added__d_rows_with__d_errors_using__d_lines_of_input_n
dec eax
mov dword [esp + 0x10], eax
mov eax, dword [ebp - 0x438]
mov dword [esp + 0xc], eax
mov eax, dword [ebp - 0x43c]
mov dword [esp + 8], eax
mov eax, dword [ebx + 0x38]
mov dword [esp], eax
call fcn.004c5d3a
jmp 0x4da488
mov edi, 1
jmp 0x4da488
mov eax, dword [ebp - 0x584]
mov ecx, esi
mov edx, str.imposter
call fcn.004bb7f6
test eax, eax
jne 0x4d4e9c
test byte [ebx + 0x6d], 4
jne 0x4d4a11
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp + 8], str.imposter
mov edi, 1
mov dword [esp + 4], str.._s_unavailable_without___unsafe_testing_n
add eax, 0x40
mov dword [esp], eax
call fcn.004c5d3a
jmp 0x4da488
cmp dword [ebp - 0x578], 3
je 0x4d4a5f
cmp dword [ebp - 0x578], 2
je 0x4d4a45
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp + 4], str.Usage:_.imposter_INDEX_IMPOSTER_n_______.imposter_off_n
mov edi, 1
add eax, 0x40
mov dword [esp], eax
call fcn.004c5d3a
jmp 0x4da488
mov eax, dword [ebp - 0x524]
mov dword [esp + 4], 0x509605
mov dword [esp], eax
call fcn.004019f3
test eax, eax
jne 0x4d4a23
xor edx, edx
mov eax, ebx
call fcn.004cfaa0
cmp dword [ebp - 0x578], 2
jne 0x4d4aa2
mov eax, dword [ebx]
mov dword [esp + 0x10], 1
xor edi, edi
mov dword [esp + 0xc], 0
mov dword [esp + 8], str.main
mov dword [esp], 0x19
mov dword [esp + 4], eax
call fcn.004b188d
jmp 0x4da488
mov eax, dword [ebp - 0x524]
mov dword [esp], str.SELECT_rootpage__0_FROM_sqlite_schema_WHERE_name_q_AND_typeindexUNION_ALL_SELECT_rootpage__1_FROM_sqlite_schema_WHERE_name_q_AND_typetable___AND_sql_LIKE___without__rowid__
lea edi, [ebp - 0x548]
mov dword [esp + 8], eax
mov dword [esp + 4], eax
call fcn.004440e8
mov esi, eax
mov dword [esp + 4], eax
mov eax, dword [ebx]
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], edi
mov dword [esp + 8], 0xffffffff
mov dword [esp], eax
call fcn.0048b371
mov dword [esp], esi
call fcn.0040b268
mov eax, dword [ebp - 0x548]
mov dword [esp], eax
call fcn.0047778f
cmp eax, 0x64
jne 0x4d4b3b
mov eax, dword [ebp - 0x548]
mov dword [esp + 4], 0
mov dword [esp], eax
call fcn.00411c8f
mov dword [ebp - 0x57c], eax
mov eax, dword [ebp - 0x548]
mov dword [esp + 4], 1
mov dword [esp], eax
call fcn.00411c8f
mov dword [ebp - 0x580], eax
jmp 0x4d4b4f
mov dword [ebp - 0x580], 0
mov dword [ebp - 0x57c], 0
mov eax, dword [ebp - 0x548]
mov dword [esp], eax
call fcn.00458aaf
mov eax, dword [ebp - 0x524]
mov dword [esp], str.PRAGMA_index_xinfo_q
mov dword [esp + 4], eax
call fcn.004440e8
mov esi, eax
mov dword [esp + 4], eax
mov eax, dword [ebx]
mov dword [esp + 0xc], edi
mov dword [esp + 0x10], 0
mov dword [esp + 8], 0xffffffff
mov dword [esp], eax
call fcn.0048b371
mov dword [esp], esi
mov edi, eax
xor esi, esi
call fcn.0040b268
test edi, edi
mov dword [ebp - 0x578], 0
jne 0x4d4cb6
mov eax, dword [ebp - 0x548]
mov dword [esp], eax
call fcn.0047778f
cmp eax, 0x64
jne 0x4d4cba
mov eax, dword [ebp - 0x548]
mov dword [esp + 4], 2
mov dword [esp], eax
call fcn.0041feb6
inc dword [ebp - 0x578]
test eax, eax
mov edx, eax
jne 0x4d4c3a
mov eax, dword [ebp - 0x548]
mov dword [esp + 4], 1
mov dword [esp], eax
call fcn.00411c8f
inc eax
mov edx, str._ROWID_
je 0x4d4c3a
mov eax, dword [ebp - 0x578]
mov dword [esp + 8], str.expr_d
mov dword [esp], 0x14
mov dword [esp + 0xc], eax
lea eax, [ebp - 0x458]
mov dword [esp + 4], eax
call fcn.0042a3d9
lea edx, [ebp - 0x458]
cmp dword [ebp - 0x580], 0
je 0x4d4c81
test edi, edi
jne 0x4d4c81
mov eax, dword [ebp - 0x548]
mov dword [esp + 4], 5
mov dword [ebp - 0x584], edx
mov dword [esp], eax
call fcn.00411c8f
test eax, eax
mov edx, dword [ebp - 0x584]
jne 0x4d4c7f
test esi, esi
je 0x4d4c87
mov edi, esi
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
lea edi, [ecx - 1]
jmp 0x4d4c9b
xor edi, edi
test esi, esi
jne 0x4d4c9b
jmp 0x4d4c89
xor edi, edi
mov dword [esp + 4], edx
mov dword [esp], str.__w_
call fcn.004440e8
jmp 0x4d4caf
mov dword [esp + 8], edx
mov dword [esp + 4], esi
mov dword [esp], str._z___w_
call fcn.004440e8
mov esi, eax
jmp 0x4d4bb5
xor edi, edi
xor esi, esi
mov eax, dword [ebp - 0x548]
mov dword [esp], eax
call fcn.00458aaf
cmp dword [ebp - 0x578], 0
je 0x4d4cda
cmp dword [ebp - 0x57c], 0
jne 0x4d4d0e
mov eax, dword [ebp - 0x524]
mov dword [esp + 4], str.no_such_index:___s__n
mov edi, 1
mov dword [esp + 8], eax
mov eax, dword [sym.imp.msvcrt.dll__iob]
add eax, 0x40
mov dword [esp], eax
call fcn.004c5d3a
mov dword [esp], esi
call fcn.0040b268
jmp 0x4da488
test edi, edi
mov eax, 0x186a0
mov dword [esp + 0x10], esi
cmove edi, eax
mov eax, dword [ebp - 0x520]
mov dword [esp + 8], esi
mov dword [esp + 0xc], edi
mov dword [esp], str.CREATE_TABLE___w___s_PRIMARY_KEY__.s__WITHOUT_ROWID
mov dword [esp + 4], eax
call fcn.004440e8
mov dword [esp], esi
mov dword [ebp - 0x578], eax
call fcn.0040b268
mov eax, dword [ebp - 0x57c]
mov dword [esp + 0xc], 1
mov dword [esp + 8], str.main
mov dword [esp], 0x19
mov dword [esp + 0x10], eax
mov eax, dword [ebx]
mov dword [esp + 4], eax
call fcn.004b188d
test eax, eax
jne 0x4d4e68
mov eax, dword [ebp - 0x578]
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
mov dword [esp + 4], eax
mov eax, dword [ebx]
mov dword [esp], eax
call fcn.00477ee4
mov edi, eax
mov eax, dword [ebx]
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0
mov dword [esp + 8], str.main
mov dword [esp], 0x19
mov dword [esp + 4], eax
call fcn.004b188d
test edi, edi
je 0x4d4e0a
mov eax, dword [ebx]
mov dword [esp], eax
call fcn.0042dd05
mov dword [esp + 0xc], eax
mov eax, dword [ebp - 0x578]
mov dword [esp + 4], str.Error_in___s_:__s_n
mov dword [esp + 8], eax
mov eax, dword [sym.imp.msvcrt.dll__iob]
add eax, 0x40
mov dword [esp], eax
call fcn.004c5d3a
jmp 0x4d4e89
mov eax, dword [ebp - 0x578]
mov dword [esp + 4], str._s__n
mov dword [esp + 8], eax
mov eax, dword [sym.imp.msvcrt.dll__iob]
add eax, 0x20
mov dword [esp], eax
call fcn.004c5d3a
cmp dword [ebp - 0x580], 0
mov edx, str.table
mov eax, str.index
mov dword [esp + 4], str.WARNING:_writing_to_an_imposter_table_will_corrupt_the___s___s__n
cmovne eax, edx
mov dword [esp + 0xc], eax
mov eax, dword [ebp - 0x524]
mov dword [esp + 8], eax
mov eax, dword [sym.imp.msvcrt.dll__iob]
add eax, 0x20
mov dword [esp], eax
call sub.msvcrt.dll_fprintf
jmp 0x4d4e89
mov dword [esp + 8], eax
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov edi, 1
mov dword [esp + 4], str.SQLITE_TESTCTRL_IMPOSTER_returns__d_n
add eax, 0x40
mov dword [esp], eax
call sub.msvcrt.dll_fprintf
mov eax, dword [ebp - 0x578]
mov dword [esp], eax
call fcn.0040b268
jmp 0x4da488
cmp edi, 0x6c
sete byte [ebp - 0x57c]
cmp esi, 4
setg byte [ebp - 0x590]
cmp byte [ebp - 0x57c], 0
je 0x4d5072
cmp byte [ebp - 0x590], 0
je 0x4d5072
mov eax, dword [ebp - 0x528]
mov ecx, esi
mov edx, str.limits
call fcn.004bb7f6
test eax, eax
jne 0x4d5072
xor edx, edx
mov eax, ebx
call fcn.004cfaa0
cmp dword [ebp - 0x578], 1
jne 0x4d4f3b
mov esi, 0x510580
mov dword [esp + 8], 0xffffffff
mov eax, dword [esi + 4]
add esi, 8
mov dword [esp + 4], eax
mov eax, dword [ebx]
mov dword [esp], eax
call fcn.004060d3
mov dword [esp + 8], eax
mov eax, dword [esi - 8]
mov dword [esp], str._20s__d_n
mov dword [esp + 4], eax
call sub.msvcrt.dll_printf
cmp esi, str.chunk_size
jne 0x4d4efb
jmp 0x4da583
cmp dword [ebp - 0x578], 3
jle 0x4d4f66
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp], str.Usage:_.limit_NAME__NEW_VALUE__n
mov edi, 1
add eax, 0x40
mov dword [esp + 4], eax
call sub.msvcrt.dll_fputs
jmp 0x4da488
mov eax, dword [ebp - 0x524]
or edi, 0xffffffff
xor esi, esi
call fcn.004b442b
mov edx, eax
mov eax, dword [ebp - 0x524]
mov dword [esp + 8], edx
mov dword [ebp - 0x57c], edx
mov dword [esp + 4], eax
mov eax, dword [esi*8 + 0x510580]
mov dword [esp], eax
call fcn.00401a19
test eax, eax
mov edx, dword [ebp - 0x57c]
jne 0x4d4fd6
inc edi
je 0x4d4fd4
mov eax, dword [ebp - 0x524]
mov dword [esp + 4], str.ambiguous_limit:___s__n
mov edi, 1
mov dword [esp + 8], eax
mov eax, dword [sym.imp.msvcrt.dll__iob]
add eax, 0x40
mov dword [esp], eax
call fcn.004c5d3a
jmp 0x4da488
mov edi, esi
inc esi
cmp esi, 0xc
jne 0x4d4f78
cmp edi, 0xffffffff
jne 0x4d500d
mov eax, dword [ebp - 0x524]
mov dword [esp + 4], str.unknown_limit:___s__nenter__.limits__with_no_arguments_for_a_list._n
mov edi, 1
mov dword [esp + 8], eax
mov eax, dword [sym.imp.msvcrt.dll__iob]
add eax, 0x40
mov dword [esp], eax
call fcn.004c5d3a
jmp 0x4da488
cmp dword [ebp - 0x578], 3
mov esi, dword [edi*8 + 0x510584]
jne 0x4d503a
mov eax, dword [ebp - 0x520]
call fcn.004bca70
mov dword [esp + 8], eax
mov eax, dword [ebx]
mov dword [esp + 4], esi
mov dword [esp], eax
call fcn.004060d3
mov eax, dword [ebx]
mov dword [esp + 8], 0xffffffff
mov dword [esp + 4], esi
mov dword [esp], eax
call fcn.004060d3
mov dword [esp + 8], eax
mov eax, dword [edi*8 + 0x510580]
xor edi, edi
mov dword [esp], str._20s__d_n
mov dword [esp + 4], eax
call sub.msvcrt.dll_printf
jmp 0x4da488
cmp byte [ebp - 0x580], 0
mov eax, dword [ebp - 0x528]
je 0x4d563e
cmp byte [ebp - 0x57c], 0
je 0x4d563e
mov ecx, esi
mov edx, str.lint
call fcn.004bb7f6
test eax, eax
jne 0x4d5647
xor edx, edx
mov eax, ebx
call fcn.004cfaa0
cmp dword [ebp - 0x578], 1
je 0x4d55e5
mov edi, dword [ebp - 0x524]
mov eax, edi
call fcn.004b442b
test eax, eax
jle 0x4d55e5
mov dword [esp + 8], eax
mov dword [esp + 4], str.fkey_indexes
mov dword [esp], edi
call fcn.00401a19
test eax, eax
jne 0x4d55e5
mov eax, dword [ebx + 0x38]
mov edi, dword [ebx]
mov esi, 2
mov dword [ebp - 0x548], 0
mov dword [ebp - 0x58c], 0x506d14
mov dword [ebp - 0x580], 0
mov dword [ebp - 0x588], 0
mov dword [ebp - 0x57c], eax
cmp esi, dword [ebp - 0x578]
jge 0x4d51e8
mov eax, dword [ebp + esi*4 - 0x528]
mov dword [ebp - 0x584], eax
call fcn.004b442b
cmp eax, 1
jle 0x4d5178
mov dword [esp + 8], eax
mov dword [ebp - 0x590], eax
mov eax, dword [ebp - 0x584]
mov dword [esp], str._verbose
mov dword [esp + 4], eax
call fcn.00401a19
test eax, eax
jne 0x4d51a9
mov dword [ebp - 0x588], 1
jmp 0x4d51e2
mov eax, dword [ebp - 0x524]
mov dword [esp + 4], str.Usage:__s__s___verbose____groupbyparent__n
mov dword [esp + 0xc], eax
mov eax, dword [ebp - 0x528]
mov dword [esp + 8], eax
mov eax, dword [sym.imp.msvcrt.dll__iob]
add eax, 0x40
mov dword [esp], eax
call sub.msvcrt.dll_fprintf
jmp 0x4d55de
mov edx, dword [ebp - 0x590]
mov eax, dword [ebp + esi*4 - 0x528]
mov dword [esp], str._groupbyparent
mov dword [esp + 8], edx
mov dword [esp + 4], eax
call fcn.00401a19
test eax, eax
jne 0x4d5178
mov dword [ebp - 0x58c], str.
mov dword [ebp - 0x580], 1
inc esi
jmp 0x4d5125
mov dword [esp + 0x1c], 0
mov dword [esp + 0x18], 0
mov dword [esp + 0x14], 0x4bce51
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 1
mov dword [esp + 8], 4
mov dword [esp + 4], str.fkey_collate_clause
mov dword [esp], edi
call fcn.0042d609
test eax, eax
jne 0x4d55ba
lea eax, [ebp - 0x548]
mov dword [esp + 0x10], 0
mov dword [esp + 8], 0xffffffff
mov dword [esp + 4], str.SELECT______EXPLAIN_QUERY_PLAN_SELECT_1_FROM___quote_s.name____WHERE____group_concat_quote_s.name___.__quote_f._from_________fkey_collate_clause________f._table___COALESCE_f._to___p._name____s.name__f._from____AND_________SEARCH___s.name___USING_COVERING_INDEX____group_concat_____AND____________s.name______group_concat_f._from_________________f._table______group_concat_COALESCE_f._to___p._name_____________CREATE_INDEX___quote_s.name___group_concat_f._from__________ON___quote_s.name_______group_concat_quote_f._from___________fkey_collate_clause___________f._table___COALESCE_f._to___p._name____s.name__f._from___________________f._table__FROM_sqlite_schema_AS_s__pragma_foreign_key_list_s.name__AS_f_LEFT_JOIN_pragma_table_info_AS_p_ON__pk_1seq_AND_p.argf._table___GROUP_BY_s.name__f.id_ORDER_BY__CASE_WHEN___THEN_f._table__ELSE_s.name_END_
mov dword [esp], edi
mov dword [esp + 0xc], eax
call fcn.0048b371
test eax, eax
mov dword [ebp - 0x578], eax
jne 0x4d55ba
mov eax, dword [ebp - 0x580]
mov dword [esp + 4], 1
xor esi, esi
mov dword [esp + 8], eax
mov eax, dword [ebp - 0x548]
mov dword [esp], eax
call fcn.0042df80
mov eax, dword [ebp - 0x548]
mov dword [esp], eax
call fcn.0047778f
cmp eax, 0x64
jne 0x4d556a
mov eax, dword [ebp - 0x548]
mov dword [esp + 4], 0
mov dword [ebp - 0x458], 0
mov dword [esp], eax
call fcn.0041feb6
mov dword [ebp - 0x5a0], eax
mov eax, dword [ebp - 0x548]
mov dword [esp + 4], 1
mov dword [esp], eax
call fcn.0041feb6
mov dword [ebp - 0x590], eax
mov eax, dword [ebp - 0x548]
mov dword [esp + 4], 2
mov dword [esp], eax
call fcn.0041feb6
mov dword [ebp - 0x598], eax
mov eax, dword [ebp - 0x548]
mov dword [esp + 4], 3
mov dword [esp], eax
call fcn.0041feb6
mov dword [ebp - 0x594], eax
mov eax, dword [ebp - 0x548]
mov dword [esp + 4], 4
mov dword [esp], eax
call fcn.0041feb6
mov dword [ebp - 0x59c], eax
mov eax, dword [ebp - 0x548]
mov dword [esp + 4], 5
mov dword [esp], eax
call fcn.0041feb6
cmp dword [ebp - 0x590], 0
mov dword [ebp - 0x584], eax
je 0x4d528a
mov edx, dword [ebp - 0x5a0]
test edx, edx
je 0x4d528a
lea eax, [ebp - 0x458]
mov dword [esp + 0x10], 0
mov dword [esp + 8], 0xffffffff
mov dword [esp + 4], edx
mov dword [esp], edi
mov dword [esp + 0xc], eax
call fcn.0048b371
test eax, eax
mov ecx, eax
jne 0x4d5564
mov eax, dword [ebp - 0x458]
mov dword [esp], eax
call fcn.0047778f
or edx, 0xffffffff
cmp eax, 0x64
jne 0x4d540e
mov eax, dword [ebp - 0x458]
mov dword [esp + 4], 3
mov dword [esp], eax
call fcn.0041feb6
xor edx, edx
test eax, eax
je 0x4d540e
mov dword [esp + 4], eax
mov dword [ebp - 0x5a0], eax
mov eax, dword [ebp - 0x590]
mov dword [esp], eax
call fcn.0040ae6b
test eax, eax
mov edx, 1
mov ecx, dword [ebp - 0x5a0]
je 0x4d540e
mov dword [esp + 4], ecx
mov dword [esp], str.SEARCH__USING_INTEGER_PRIMARY_KEY__rowid__
call fcn.0040ae6b
xor edx, edx
test eax, eax
sete dl
mov eax, dword [ebp - 0x458]
mov dword [ebp - 0x590], edx
mov dword [esp], eax
call fcn.00458aaf
test eax, eax
mov ecx, eax
jne 0x4d5564
mov edx, dword [ebp - 0x590]
cmp edx, 0xffffffff
jne 0x4d5460
mov dword [ebp - 0x578], eax
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp], str.Error:_internal_error
add eax, 0x40
mov dword [esp + 4], eax
call sub.msvcrt.dll_fputs
mov ecx, dword [ebp - 0x578]
jmp 0x4d5564
cmp dword [ebp - 0x580], 0
je 0x4d54f2
mov eax, edx
xor eax, 1
or eax, dword [ebp - 0x588]
je 0x4d551e
test esi, esi
jne 0x4d54d0
mov eax, dword [ebp - 0x584]
mov dword [esp + 4], str.___Parent_table__s_n
mov dword [ebp - 0x590], edx
mov dword [esp + 8], eax
mov eax, dword [ebp - 0x57c]
mov dword [esp], eax
call sub.msvcrt.dll_fprintf
mov dword [esp], esi
call fcn.0040b268
mov eax, dword [ebp - 0x584]
mov dword [esp], 0x506d0a
mov dword [esp + 4], eax
call fcn.004440e8
mov edx, dword [ebp - 0x590]
mov esi, eax
jmp 0x4d54f2
mov eax, dword [ebp - 0x584]
mov dword [esp + 4], esi
mov dword [ebp - 0x590], edx
mov dword [esp], eax
call fcn.004019f3
test eax, eax
mov edx, dword [ebp - 0x590]
jne 0x4d5482
test edx, edx
jne 0x4d551e
mov eax, dword [ebp - 0x594]
mov dword [esp + 4], str._s_s______s_n
mov dword [esp + 0x10], eax
mov eax, dword [ebp - 0x59c]
mov dword [esp + 0xc], eax
mov eax, dword [ebp - 0x58c]
mov dword [esp + 8], eax
jmp 0x4d5551
cmp dword [ebp - 0x588], 0
je 0x4d528a
mov eax, dword [ebp - 0x594]
mov dword [esp + 4], str._s__no_extra_indexes_required_for__s_____s___n
mov dword [esp + 0x10], eax
mov eax, dword [ebp - 0x598]
mov dword [esp + 0xc], eax
mov eax, dword [ebp - 0x58c]
mov dword [esp + 8], eax
mov eax, dword [ebp - 0x57c]
mov dword [esp], eax
call sub.msvcrt.dll_fprintf
jmp 0x4d528a
mov dword [ebp - 0x578], ecx
mov dword [esp], esi
call fcn.0040b268
cmp dword [ebp - 0x578], 0
je 0x4d559f
mov dword [esp], edi
call fcn.0042dd05
mov dword [esp + 8], eax
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp + 4], 0x508cd3
add eax, 0x40
mov dword [esp], eax
call sub.msvcrt.dll_fprintf
mov eax, dword [ebp - 0x548]
mov dword [esp], eax
call fcn.00458aaf
cmp dword [ebp - 0x578], 0
jne 0x4d55de
test eax, eax
je 0x4d55de
mov dword [esp], edi
call fcn.0042dd05
mov dword [esp + 8], eax
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp + 4], 0x508cd3
add eax, 0x40
mov dword [esp], eax
call sub.msvcrt.dll_fprintf
xor edi, edi
jmp 0x4da488
mov eax, dword [ebp - 0x528]
mov dword [esp + 4], str.Usage__s_sub_command__switches...__n
xor edi, edi
mov dword [esp + 8], eax
mov eax, dword [sym.imp.msvcrt.dll__iob]
add eax, 0x40
mov dword [esp], eax
call sub.msvcrt.dll_fprintf
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp], str.Where_sub_commands_are:_n
add eax, 0x40
mov dword [esp + 4], eax
call sub.msvcrt.dll_fputs
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp], str.____fkey_indexes_n
add eax, 0x40
mov dword [esp + 4], eax
call sub.msvcrt.dll_fputs
jmp 0x4da488
cmp edi, 0x6c
jne 0x4d5801
mov eax, dword [ebp - 0x528]
mov ecx, esi
mov edx, str.load
mov dword [ebp - 0x57c], eax
call fcn.004bb7f6
test eax, eax
jne 0x4d573c
mov dword [esp + 4], str.cannot_run_.load_in_safe_mode
mov dword [esp], ebx
mov dword [ebp - 0x57c], eax
mov dword [ebp - 0x458], 0
call fcn.004c83de
cmp dword [ebp - 0x578], 1
je 0x4d56a1
mov esi, dword [ebp - 0x524]
mov eax, dword [ebp - 0x57c]
cmp byte [esi], 0
jne 0x4d56c3
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp], str.Usage:_.load_FILE__ENTRYPOINT__n
mov edi, 1
add eax, 0x40
mov dword [esp + 4], eax
call sub.msvcrt.dll_fputs
jmp 0x4da488
cmp dword [ebp - 0x578], 2
cmovne eax, dword [ebp - 0x520]
xor edx, edx
mov edi, eax
mov eax, ebx
call fcn.004cfaa0
lea eax, [ebp - 0x458]
mov dword [esp + 8], edi
mov dword [esp + 4], esi
mov dword [esp + 0xc], eax
mov eax, dword [ebx]
mov dword [esp], eax
call fcn.0044602b
test eax, eax
mov edi, eax
je 0x4da488
mov eax, dword [ebp - 0x458]
mov dword [esp + 4], str.Error:__s_n
mov edi, 1
mov dword [esp + 8], eax
mov eax, dword [sym.imp.msvcrt.dll__iob]
add eax, 0x40
mov dword [esp], eax
call fcn.004c5d3a
mov eax, dword [ebp - 0x458]
mov dword [esp], eax
call fcn.0040b268
jmp 0x4da488
mov eax, dword [ebp - 0x57c]
mov ecx, esi
mov edx, 0x50da75
call fcn.004bb7f6
test eax, eax
jne 0x4d5e46
cmp dword [ebp - 0x578], 2
je 0x4d5781
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp], str.Usage:_.log_FILENAME_n
mov edi, 1
add eax, 0x40
mov dword [esp + 4], eax
call sub.msvcrt.dll_fputs
jmp 0x4da488
cmp byte [ebx + 0xd], 0
mov esi, dword [ebp - 0x524]
je 0x4d57ca
mov edx, 0x5095fe
mov eax, esi
call fcn.004bdf51
test eax, eax
je 0x4d57ca
mov edx, 0x509605
mov eax, esi
call fcn.004bdf51
test eax, eax
je 0x4d57ca
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp], str.cannot_set_.log_to_anything_other_than__on__or__off__n
mov esi, 0x509605
add eax, 0x20
mov dword [esp + 4], eax
call sub.msvcrt.dll_fputs
mov eax, dword [ebx + 0x220]
call fcn.004bba57
mov edx, 0x5095fe
mov eax, esi
call fcn.004bdf51
test eax, eax
mov eax, str.stdout
cmove esi, eax
xor edx, edx
xor edi, edi
mov eax, esi
call fcn.004edeb6
mov dword [ebx + 0x220], eax
jmp 0x4da488
cmp edi, 0x6d
jne 0x4d5e46
mov ecx, esi
mov edx, str.mode
call fcn.004bb7f6
test eax, eax
jne 0x4d62cc
mov byte [ebp - 0x57c], 0
mov byte [ebp - 0x580], 0
xor edi, edi
mov dword [ebp - 0x588], 0x3c
mov dword [ebp - 0x584], 1
mov dword [ebp - 0x58c], 0
mov ecx, dword [ebp - 0x578]
cmp dword [ebp - 0x584], ecx
jge 0x4d5a05
mov eax, dword [ebp - 0x584]
mov edx, str.wrap
mov esi, dword [ebp + eax*4 - 0x528]
mov eax, esi
call fcn.004c2ac4
test eax, eax
je 0x4d58a3
mov eax, dword [ebp - 0x584]
lea ecx, [eax + 1]
cmp ecx, dword [ebp - 0x578]
jge 0x4d58a3
mov eax, dword [ebp + ecx*4 - 0x528]
mov dword [ebp - 0x584], ecx
call fcn.004bca70
jmp 0x4d5965
mov edx, 0x50dacf
mov eax, esi
call fcn.004c2ac4
test eax, eax
jne 0x4d59d9
mov edx, str.wordwrap
mov eax, esi
call fcn.004c2ac4
test eax, eax
je 0x4d58f5
mov eax, dword [ebp - 0x584]
lea edx, [eax + 1]
cmp edx, dword [ebp - 0x578]
jge 0x4d58f5
mov eax, dword [ebp + edx*4 - 0x528]
mov dword [ebp - 0x584], edx
call fcn.004c858a
mov byte [ebp - 0x57c], al
jmp 0x4d59fa
mov edx, str.quote
mov eax, esi
call fcn.004c2ac4
test eax, eax
jne 0x4d59e2
mov edx, str.noquote
mov eax, esi
call fcn.004c2ac4
test eax, eax
jne 0x4d59eb
test edi, edi
jne 0x4d5970
mov edx, str.qbox
mov eax, esi
mov edi, 0x50c0cb
call fcn.004bdf51
mov cl, byte [ebp - 0x57c]
test eax, eax
mov dl, 0
mov eax, 0x3c
cmovne eax, dword [ebp - 0x588]
cmovne edi, esi
cmove ecx, edx
mov dl, 1
mov byte [ebp - 0x57c], cl
mov cl, byte [ebp - 0x580]
cmove ecx, edx
mov byte [ebp - 0x580], cl
mov dword [ebp - 0x588], eax
jmp 0x4d59fa
cmp dword [ebp - 0x58c], 0
je 0x4d59f4
cmp byte [esi], 0x2d
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp + 8], esi
jne 0x4d59bc
add eax, 0x40
mov dword [esp + 4], str.unknown_option:__s_n
mov edi, 1
mov dword [esp], eax
call fcn.004c5d3a
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp + 4], str.options:_n____noquote_n____quote_n____wordwrap_on_off_n____wrap_N_n____ww_n
add eax, 0x40
mov dword [esp], eax
call fcn.004c5d3a
jmp 0x4da488
add eax, 0x40
mov dword [esp + 4], str.extra_argument:___s__n
mov edi, 1
mov dword [esp], eax
call fcn.004c5d3a
jmp 0x4da488
mov byte [ebp - 0x57c], 1
jmp 0x4d59fa
mov byte [ebp - 0x580], 1
jmp 0x4d59fa
mov byte [ebp - 0x580], 0
jmp 0x4d59fa
mov dword [ebp - 0x58c], esi
inc dword [ebp - 0x584]
jmp 0x4d584c
test edi, edi
jne 0x4d5a8d
mov eax, dword [ebx + 0x44]
lea edx, [eax - 0xe]
mov ecx, dword [eax*4 + 0x5148e0]
cmp edx, 2
jbe 0x4d5a22
dec eax
jne 0x4d5a6c
cmp byte [ebx + 0x14], 0
mov eax, 0x506d14
mov edx, 0x509609
mov esi, 0x5095fe
mov dword [esp + 8], ecx
mov dword [esp + 4], str.current_output_mode:__s___wrap__d___wordwrap__s____squote_n
cmovne edx, eax
cmp byte [ebx + 0x15], 0
mov eax, 0x509605
mov dword [esp + 0x14], edx
cmovne eax, esi
mov dword [esp + 0x10], eax
mov eax, dword [ebx + 0x10]
mov dword [esp + 0xc], eax
mov eax, dword [ebx + 0x38]
mov dword [esp], eax
call sub.msvcrt.dll_fprintf
jmp 0x4d5a83
mov eax, dword [ebx + 0x38]
mov dword [esp + 8], ecx
mov dword [esp + 4], str.current_output_mode:__s_n
mov dword [esp], eax
call sub.msvcrt.dll_fprintf
mov eax, dword [ebx + 0x44]
mov edi, dword [eax*4 + 0x5148e0]
mov eax, edi
call fcn.004b442b
mov edx, str.lines
mov ecx, eax
mov esi, eax
mov eax, edi
call fcn.004bb7f6
test eax, eax
jne 0x4d5ab4
mov dword [ebx + 0x44], 0
jmp 0x4d5b51
mov ecx, esi
mov edx, str.columns
mov eax, edi
call fcn.004bb7f6
test eax, eax
jne 0x4d5b1a
test byte [ebx + 0x6c], 0x80
mov dword [ebx + 0x44], 1
jne 0x4d5ada
mov dword [ebx + 0x58], 1
lea eax, [ebx + 0xba]
mov dword [esp + 8], 0x508c29
mov dword [esp], 0x14
mov dword [esp + 4], eax
call fcn.0042a3d9
mov eax, dword [ebp - 0x588]
mov dword [ebx + 0x10], eax
mov al, byte [ebp - 0x580]
mov byte [ebx + 0x14], al
mov al, byte [ebp - 0x57c]
mov byte [ebx + 0x15], al
xor edi, edi
jmp 0x4d5e3b
mov ecx, esi
mov edx, str.list
mov eax, edi
call fcn.004bb7f6
test eax, eax
jne 0x4d5b5e
mov dword [ebx + 0x44], 2
mov dword [esp + 8], 0x50764f
lea eax, [ebx + 0xa6]
mov dword [esp], 0x14
mov dword [esp + 4], eax
call fcn.0042a3d9
mov dword [esp + 8], 0x508c29
jmp 0x4d5d4f
mov ecx, esi
mov edx, str.html
mov eax, edi
call fcn.004bb7f6
test eax, eax
jne 0x4d5b79
mov dword [ebx + 0x44], 4
jmp 0x4d5b13
mov ecx, esi
mov edx, 0x50dbb1
mov eax, edi
call fcn.004bb7f6
test eax, eax
jne 0x4d5b9c
mov dword [ebx + 0x44], 7
mov dword [esp + 8], str._pzErr0__pzErr0
jmp 0x4d5b3b
mov ecx, esi
mov edx, 0x50dbb5
mov eax, edi
call fcn.004bb7f6
test eax, eax
jne 0x4d5be0
lea eax, [ebx + 0xa6]
mov dword [ebx + 0x44], 8
mov dword [esp + 8], 0x507651
mov dword [esp], 0x14
mov dword [esp + 4], eax
call fcn.0042a3d9
mov dword [esp + 8], 0x507749
jmp 0x4d5d4f
mov ecx, esi
mov edx, str.tabs
mov eax, edi
call fcn.004bb7f6
test eax, eax
jne 0x4d5c0c
mov dword [ebx + 0x44], 2
mov dword [esp + 8], 0x50dbbe
lea eax, [ebx + 0xa6]
jmp 0x4d5d55
mov ecx, esi
mov edx, str.insert
mov eax, edi
call fcn.004bb7f6
test eax, eax
jne 0x4d5cea
cmp dword [ebp - 0x58c], 0
mov esi, dword [ebp - 0x58c]
mov eax, str.table
mov dword [ebx + 0x44], 5
cmove esi, eax
mov eax, dword [ebx + 0x80]
test eax, eax
je 0x4d5c5a
mov dword [esp], eax
call fcn.004ec038
mov dword [ebx + 0x80], 0
mov eax, esi
call fcn.004c2af1
mov byte [ebp - 0x578], al
mov eax, esi
call fcn.004b442b
mov cl, byte [ebp - 0x578]
lea edx, [eax + eax + 2]
test cl, cl
cmovne eax, edx
inc eax
mov dword [esp], eax
call sub.msvcrt.dll_malloc
mov dword [ebx + 0x80], eax
mov edi, eax
call fcn.004bd956
mov cl, byte [ebp - 0x578]
xor edx, edx
test cl, cl
je 0x4d5ca6
mov byte [edi], cl
mov edx, 1
mov dword [ebp - 0x578], esi
mov eax, dword [ebp - 0x578]
mov al, byte [eax]
test al, al
je 0x4d5cd9
mov byte [edi + edx], al
mov eax, dword [ebp - 0x578]
lea esi, [edx + 1]
cmp cl, byte [eax]
jne 0x4d5ccf
lea esi, [edx + 2]
mov byte [edi + edx + 1], cl
inc dword [ebp - 0x578]
mov edx, esi
jmp 0x4d5cac
test cl, cl
je 0x4d5ce1
mov byte [edi + edx], cl
inc edx
mov byte [edi + edx], 0
jmp 0x4d5b13
mov ecx, esi
mov edx, str.quote
mov eax, edi
call fcn.004bb7f6
test eax, eax
jne 0x4d5d10
mov dword [ebx + 0x44], 6
mov dword [esp + 8], 0x507651
jmp 0x4d5b3b
mov ecx, esi
mov edx, str.ascii
mov eax, edi
call fcn.004bb7f6
test eax, eax
jne 0x4d5d6a
lea eax, [ebx + 0xa6]
mov dword [ebx + 0x44], 0xa
mov dword [esp + 8], 0x50dbc6
mov dword [esp], 0x14
mov dword [esp + 4], eax
call fcn.0042a3d9
mov dword [esp + 8], 0x50dbc8
lea eax, [ebx + 0xba]
mov dword [esp + 4], eax
mov dword [esp], 0x14
call fcn.0042a3d9
jmp 0x4d5b13
mov ecx, esi
mov edx, str.markdown
mov eax, edi
call fcn.004bb7f6
test eax, eax
jne 0x4d5d88
mov dword [ebx + 0x44], 0xe
jmp 0x4d5af8
mov ecx, esi
mov edx, str.table
mov eax, edi
call fcn.004bb7f6
test eax, eax
jne 0x4d5da6
mov dword [ebx + 0x44], 0xf
jmp 0x4d5af8
mov ecx, esi
mov edx, 0x50c0cb
mov eax, edi
call fcn.004bb7f6
test eax, eax
jne 0x4d5dc4
mov dword [ebx + 0x44], 0x10
jmp 0x4d5af8
mov ecx, esi
mov edx, str.count
mov eax, edi
call fcn.004bb7f6
test eax, eax
jne 0x4d5de2
mov dword [ebx + 0x44], 0x11
jmp 0x4d5b13
mov ecx, esi
mov edx, 0x509605
mov eax, edi
call fcn.004bb7f6
test eax, eax
jne 0x4d5e00
mov dword [ebx + 0x44], 0x12
jmp 0x4d5b13
mov ecx, esi
mov edx, str.json
mov eax, edi
call fcn.004bb7f6
test eax, eax
jne 0x4d5e1e
mov dword [ebx + 0x44], 0xd
jmp 0x4d5b13
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp], str.Error:_mode_should_be_one_of:_ascii_box_column_csv_html_insert_json_line_list_markdown_qbox_quote_table_tabs_tcl_n
mov edi, 1
add eax, 0x40
mov dword [esp + 4], eax
call sub.msvcrt.dll_fputs
mov eax, dword [ebx + 0x44]
mov dword [ebx + 0x4c], eax
jmp 0x4da488
mov eax, dword [ebp - 0x528]
cmp edi, 0x6e
mov dword [ebp - 0x57c], eax
jne 0x4d5f6d
mov edx, str.nonce
call fcn.004bdf51
test eax, eax
jne 0x4d5ef1
cmp dword [ebp - 0x578], 2
je 0x4d5e98
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp], str.Usage:_.nonce_NONCE_n
mov edi, 1
add eax, 0x40
mov dword [esp + 4], eax
call sub.msvcrt.dll_fputs
jmp 0x4da488
mov edx, dword [ebx + 0x3c4]
mov esi, dword [ebp - 0x524]
test edx, edx
je 0x4d5eb9
mov eax, esi
call fcn.004bdf51
test eax, eax
mov dword [ebp - 0x57c], eax
je 0x4d5ee8
mov eax, dword [ebx + 0x2c]
mov dword [esp + 0xc], esi
mov dword [esp + 4], str.line__d:_incorrect_nonce:___s__n
mov dword [esp + 8], eax
mov eax, dword [sym.imp.msvcrt.dll__iob]
add eax, 0x40
mov dword [esp], eax
call sub.msvcrt.dll_fprintf
mov dword [esp], 1
call sub.msvcrt.dll_exit
mov byte [ebx + 0xd], 0
jmp 0x4da5b3
mov eax, dword [ebp - 0x57c]
mov ecx, esi
mov edx, str.nullvalue
call fcn.004bb7f6
test eax, eax
jne 0x4d62cc
cmp dword [ebp - 0x578], 2
jne 0x4d5f4b
mov eax, dword [ebp - 0x524]
mov dword [esp + 0xc], 0x13
xor edi, edi
mov dword [esp + 8], 0x506cd2
mov dword [esp], 0x14
mov dword [esp + 0x10], eax
lea eax, [ebx + 0x104]
mov dword [esp + 4], eax
call fcn.0042a3d9
jmp 0x4da488
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp], str.Usage:_.nullvalue_STRING_n
mov edi, 1
add eax, 0x40
mov dword [esp + 4], eax
call sub.msvcrt.dll_fputs
jmp 0x4da488
cmp edi, 0x6f
jne 0x4d62cc
mov eax, dword [ebp - 0x57c]
mov ecx, esi
mov edx, str.open
call fcn.004bb7f6
test eax, eax
jne 0x4d629a
cmp byte [ebp - 0x58c], 0
je 0x4d629a
mov dword [ebp - 0x57c], 0
mov dword [ebp - 0x584], 0
xor esi, esi
mov dword [ebp - 0x580], 1
mov ecx, dword [ebp - 0x578]
cmp dword [ebp - 0x580], ecx
jge 0x4d6158
mov eax, dword [ebp - 0x580]
mov edx, 0x50dcb4
mov edi, dword [ebp + eax*4 - 0x528]
mov eax, edi
call fcn.004c2ac4
test eax, eax
jne 0x4d6103
mov edx, 0x508e06
mov eax, edi
call fcn.004c2ac4
test eax, eax
jne 0x4d610f
mov edx, str.append
mov eax, edi
call fcn.004c2ac4
test eax, eax
jne 0x4d611b
mov edx, str.readonly
mov eax, edi
call fcn.004c2ac4
test eax, eax
jne 0x4d6127
mov edx, str.nofollow
mov eax, edi
call fcn.004c2ac4
test eax, eax
je 0x4d6048
or dword [ebx + 0x30], 0x1000000
jmp 0x4d614d
mov edx, str.deserialize
mov eax, edi
call fcn.004c2ac4
test eax, eax
jne 0x4d6133
mov edx, str.hexdb
mov eax, edi
call fcn.004c2ac4
test eax, eax
jne 0x4d613f
mov edx, str.maxsize
mov eax, edi
call fcn.004c2ac4
test eax, eax
je 0x4d60ae
mov eax, dword [ebp - 0x580]
lea ecx, [eax + 1]
cmp ecx, dword [ebp - 0x578]
jge 0x4d60ae
mov eax, dword [ebp + ecx*4 - 0x528]
mov dword [ebp - 0x580], ecx
call fcn.004bca70
mov dword [ebx + 0x78], eax
mov dword [ebx + 0x7c], edx
jmp 0x4d614d
cmp byte [edi], 0x2d
jne 0x4d60d9
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp + 8], edi
mov edi, 1
mov dword [esp + 4], str.unknown_option:__s_n
add eax, 0x40
mov dword [esp], eax
call fcn.004c5d3a
jmp 0x4da488
test esi, esi
je 0x4d614b
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp + 8], edi
mov edi, 1
mov dword [esp + 4], str.extra_argument:___s__n
add eax, 0x40
mov dword [esp], eax
call fcn.004c5d3a
jmp 0x4da488
mov dword [ebp - 0x584], 1
jmp 0x4d614d
mov dword [ebp - 0x57c], 3
jmp 0x4d614d
mov dword [ebp - 0x57c], 2
jmp 0x4d614d
mov dword [ebp - 0x57c], 4
jmp 0x4d614d
mov dword [ebp - 0x57c], 5
jmp 0x4d614d
mov dword [ebp - 0x57c], 6
jmp 0x4d614d
mov esi, edi
inc dword [ebp - 0x580]
jmp 0x4d5fbd
or edx, 0xffffffff
mov eax, ebx
call fcn.004be30b
mov eax, dword [ebx]
mov dword [esp], eax
call fcn.004d03a9
mov eax, dword [ebx + 0x3b4]
mov dword [ebx], 0
mov dword [eax + 4], 0
mov eax, dword [eax + 8]
mov dword [esp], eax
call fcn.0040b268
mov eax, dword [ebx + 0x3b4]
test esi, esi
mov dword [eax + 8], 0
mov al, byte [ebp - 0x57c]
mov dword [ebx + 0x30], 0
mov dword [ebx + 0x78], 0
mov dword [ebx + 0x7c], 0
mov byte [ebx + 9], al
setne al
cmp dword [ebp - 0x57c], 6
je 0x4d61cb
test al, al
je 0x4d6274
cmp dword [ebp - 0x584], 0
je 0x4d61e6
test al, al
je 0x4d61e6
cmp byte [ebx + 0xd], 0
jne 0x4d61e6
mov dword [esp], esi
call fcn.004d03f1
cmp byte [ebx + 0xd], 0
je 0x4d6221
cmp byte [ebx + 9], 6
je 0x4d6221
xor edi, edi
test esi, esi
je 0x4d622b
mov edx, str.:memory:
mov eax, esi
call fcn.004bdf51
test eax, eax
je 0x4da4d7
mov dword [esp + 4], str.cannot_open_disk_based_database_files_in_safe_mode
mov dword [esp], ebx
call fcn.004c83de
jmp 0x4da4d7
test esi, esi
jne 0x4da4d7
xor edi, edi
mov eax, dword [ebx + 0x3b4]
mov edx, 1
mov dword [eax + 4], edi
mov eax, ebx
call fcn.004cfaa0
cmp dword [ebx], 0
jne 0x4d626b
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp + 8], edi
mov dword [esp + 4], str.Error:_cannot_open__s_n
add eax, 0x40
mov dword [esp], eax
call fcn.004c5d3a
mov dword [esp], edi
call fcn.0040b268
jmp 0x4d6274
mov eax, dword [ebx + 0x3b4]
mov dword [eax + 8], edi
cmp dword [ebx], 0
jne 0x4da583
mov eax, dword [ebx + 0x3b4]
xor edx, edx
xor edi, edi
mov dword [eax + 4], 0
mov eax, ebx
call fcn.004cfaa0
jmp 0x4da488
mov eax, dword [ebp - 0x528]
mov ecx, esi
mov edx, str.output
mov dword [ebp - 0x57c], eax
call fcn.004bb7f6
test eax, eax
je 0x4d62f6
mov eax, dword [ebp - 0x57c]
mov ecx, esi
mov edx, str.once
call fcn.004bb7f6
test eax, eax
je 0x4d62f6
cmp edi, 0x65
jne 0x4d674d
cmp esi, 5
jne 0x4d674d
mov eax, dword [ebp - 0x528]
mov edx, str.excel
call fcn.004bdf51
test eax, eax
jne 0x4d674d
mov eax, dword [ebp - 0x528]
mov dword [esp + 4], str.cannot_run_._s_in_safe_mode
mov dword [esp], ebx
mov byte [ebp - 0x458], 0
mov dword [esp + 8], eax
call fcn.004c83de
cmp edi, 0x65
je 0x4d6348
mov eax, dword [ebp - 0x528]
mov ecx, esi
mov edx, str.once
call fcn.004bb7f6
test eax, eax
mov dword [ebp - 0x580], 0
sete al
movzx eax, al
mov dword [ebp - 0x588], eax
jmp 0x4d635c
mov dword [ebp - 0x588], 2
mov dword [ebp - 0x580], 0x78
mov esi, 1
mov dword [ebp - 0x57c], 0
cmp esi, dword [ebp - 0x578]
jge 0x4d6514
mov ecx, dword [ebp + esi*4 - 0x528]
cmp byte [ecx], 0x2d
jne 0x4d643e
xor eax, eax
cmp byte [ecx + 1], 0x2d
mov edx, str._bom
mov dword [ebp - 0x58c], ecx
sete al
add eax, ecx
mov dword [ebp - 0x584], eax
call fcn.004bdf51
test eax, eax
mov ecx, dword [ebp - 0x58c]
jne 0x4d63d3
mov byte [ebp - 0x458], 0xef
mov byte [ebp - 0x457], 0xbb
mov byte [ebp - 0x456], 0xbf
mov byte [ebp - 0x455], 0
jmp 0x4d650e
cmp edi, 0x65
je 0x4d6414
mov eax, dword [ebp - 0x584]
mov edx, 0x50dd47
mov dword [ebp - 0x580], ecx
call fcn.004bdf51
test eax, eax
je 0x4d64f8
mov eax, dword [ebp - 0x584]
mov edx, 0x50dd4a
call fcn.004bdf51
test eax, eax
mov ecx, dword [ebp - 0x580]
je 0x4d6504
mov eax, dword [ebx + 0x38]
mov dword [esp + 8], ecx
mov dword [esp + 4], str.ERROR:_unknown_option:___s_.__Usage:_n
mov dword [esp], eax
call fcn.004c5d3a
mov eax, dword [ebx + 0x38]
mov edx, dword [ebp - 0x528]
call fcn.004c5f9d
jmp 0x4d6743
cmp dword [ebp - 0x57c], 0
jne 0x4d64c0
cmp dword [ebp - 0x580], 0x65
je 0x4d64c0
cmp dword [ebp - 0x580], 0x78
je 0x4d64b6
mov dword [esp + 4], ecx
mov dword [esp], 0x506d0a
call fcn.004440e8
test eax, eax
mov dword [ebp - 0x57c], eax
je 0x4d650e
cmp byte [eax], 0x7c
jne 0x4d650e
inc esi
cmp esi, dword [ebp - 0x578]
jge 0x4d6514
mov eax, dword [ebp + esi*4 - 0x528]
mov dword [esp], str._z__s
mov dword [esp + 8], eax
mov eax, dword [ebp - 0x57c]
mov dword [esp + 4], eax
call fcn.004440e8
mov dword [ebp - 0x57c], eax
jmp 0x4d6480
mov dword [ebp - 0x57c], 0
mov eax, dword [ebx + 0x38]
mov dword [esp + 8], ecx
mov dword [esp + 4], str.ERROR:_extra_parameter:___s_.__Usage:_n
mov dword [esp], eax
call fcn.004c5d3a
mov eax, dword [ebx + 0x38]
mov edx, dword [ebp - 0x528]
call fcn.004c5f9d
mov eax, dword [ebp - 0x57c]
mov dword [esp], eax
call fcn.0040b268
jmp 0x4d6743
mov dword [ebp - 0x580], 0x78
jmp 0x4d650e
mov dword [ebp - 0x580], 0x65
inc esi
jmp 0x4d636b
cmp dword [ebp - 0x57c], 0
jne 0x4d652f
mov dword [esp], str.stdout
call fcn.004440e8
mov dword [ebp - 0x57c], eax
cmp dword [ebp - 0x588], 1
sbb eax, eax
not eax
and eax, 2
mov dword [ebx + 0x24], eax
mov eax, ebx
call fcn.004ca025
cmp dword [ebp - 0x580], 0x65
je 0x4d655f
xor esi, esi
cmp dword [ebp - 0x580], 0x78
jne 0x4d6640
mov eax, dword [ebx + 0x44]
cmp dword [ebp - 0x580], 0x78
mov ecx, 5
mov byte [ebx + 0xa], 1
lea esi, [ebx + 0xa6]
mov dword [ebx + 0x48], eax
mov eax, dword [ebx + 0x6c]
mov dword [ebx + 0x70], eax
lea eax, [ebx + 0xce]
mov edi, eax
lea eax, [ebx + 0xba]
rep movsd dword es:[edi], dword [esi]
mov dword [ebp - 0x578], eax
lea eax, [ebx + 0xe2]
mov ecx, 5
lea esi, [ebx + 0xba]
mov edi, eax
rep movsd dword es:[edi], dword [esi]
jne 0x4d6605
mov edx, 0x50dbb5
mov eax, ebx
xor esi, esi
call fcn.004edf4e
and dword [ebx + 0x6c], 0xffffffbf
lea eax, [ebx + 0xa6]
mov dword [ebx + 0x44], 8
mov dword [esp + 8], 0x507651
mov dword [esp], 0x14
mov dword [esp + 4], eax
call fcn.0042a3d9
lea eax, [ebx + 0xba]
mov dword [esp + 8], 0x507749
mov dword [esp], 0x14
mov dword [esp + 4], eax
call fcn.0042a3d9
jmp 0x4d6616
mov edx, 0x50dd74
mov eax, ebx
mov esi, 1
call fcn.004edf4e
mov eax, dword [ebp - 0x57c]
mov dword [esp], eax
call fcn.0040b268
mov eax, dword [ebx + 0x84]
mov dword [esp], 0x506d0a
mov dword [esp + 4], eax
call fcn.004440e8
mov dword [ebp - 0x57c], eax
mov eax, dword [ebp - 0x57c]
call fcn.004bd956
mov eax, dword [ebp - 0x57c]
cmp byte [eax], 0x7c
jne 0x4d667f
lea esi, [eax + 1]
mov dword [esp + 4], 0x5076f0
mov dword [esp], esi
call dword [sym.imp.msvcrt.dll__popen]
test eax, eax
mov dword [ebx + 0x38], eax
jne 0x4d66db
mov dword [esp + 8], esi
mov dword [esp + 4], str.Error:_cannot_open_pipe___s__n
jmp 0x4d66b9
mov eax, dword [ebp - 0x57c]
mov edx, esi
call fcn.004edeb6
test eax, eax
mov dword [ebx + 0x38], eax
jne 0x4d66db
mov eax, dword [ebp - 0x57c]
mov edx, 0x509605
call fcn.004bdf51
test eax, eax
je 0x4d66c9
mov eax, dword [ebp - 0x57c]
mov dword [esp + 4], str.Error:_cannot_write_to___s__n
mov dword [esp + 8], eax
mov eax, dword [sym.imp.msvcrt.dll__iob]
add eax, 0x40
mov dword [esp], eax
call fcn.004c5d3a
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov edi, 1
add eax, 0x20
mov dword [ebx + 0x38], eax
jmp 0x4d6730
cmp byte [ebp - 0x458], 0
je 0x4d6706
mov dword [esp + 0xc], eax
lea eax, [ebp - 0x458]
mov dword [esp + 8], 3
mov dword [esp + 4], 1
mov dword [esp], eax
call sub.msvcrt.dll_fwrite
mov eax, dword [ebp - 0x57c]
mov dword [esp + 8], 0x506d0a
xor edi, edi
mov dword [esp], 0x104
mov dword [esp + 0xc], eax
lea eax, [ebx + 0x118]
mov dword [esp + 4], eax
call fcn.0042a3d9
mov eax, dword [ebp - 0x57c]
mov dword [esp], eax
call fcn.0040b268
jmp 0x4da488
mov edi, 1
jmp 0x4da488
mov eax, dword [ebp - 0x528]
cmp edi, 0x70
mov dword [ebp - 0x57c], eax
jne 0x4d6d59
cmp byte [ebp - 0x580], 0
je 0x4d6d59
mov ecx, esi
mov edx, str.parameter
call fcn.004bb7f6
test eax, eax
jne 0x4d6b5b
xor edx, edx
mov eax, ebx
call fcn.004cfaa0
cmp dword [ebp - 0x578], 1
je 0x4d6b47
cmp dword [ebp - 0x578], 2
jne 0x4d695a
mov esi, dword [ebp - 0x524]
mov edx, str.clear
mov eax, esi
call fcn.004bdf51
test eax, eax
jne 0x4d67ed
mov eax, dword [ebx]
mov dword [esp + 0x10], 0
xor edi, edi
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
mov dword [esp + 4], str.DROP_TABLE_IF_EXISTS_temp.sqlite_parameters_
mov dword [esp], eax
call fcn.00477ee4
jmp 0x4da488
mov edx, str.list
mov eax, esi
call fcn.004bdf51
test eax, eax
jne 0x4d6938
mov eax, dword [ebx]
lea esi, [ebp - 0x458]
mov dword [esp + 0x10], 0
mov dword [esp + 8], 0xffffffff
mov dword [esp + 4], str.SELECT_max_length_key___FROM_temp.sqlite_parameters_
mov dword [esp + 0xc], esi
mov dword [ebp - 0x458], 0
mov dword [esp], eax
call fcn.0048b371
test eax, eax
je 0x4d683f
xor edi, edi
jmp 0x4d6875
mov eax, dword [ebp - 0x458]
mov dword [esp], eax
call fcn.0047778f
cmp eax, 0x64
jne 0x4d683b
mov eax, dword [ebp - 0x458]
mov dword [esp + 4], 0
mov dword [esp], eax
call fcn.00411c8f
mov edx, 0x28
cmp eax, 0x28
mov edi, edx
cmovle edi, eax
mov eax, dword [ebp - 0x458]
mov dword [esp], eax
call fcn.00458aaf
test edi, edi
mov dword [ebp - 0x458], 0
je 0x4d6931
mov eax, dword [ebx]
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], esi
mov dword [esp + 8], 0xffffffff
mov dword [esp + 4], str.SELECT_key__quote_value__FROM_temp.sqlite_parameters_
mov dword [esp], eax
call fcn.0048b371
test eax, eax
je 0x4d68cf
mov eax, dword [ebp - 0x458]
mov dword [esp], eax
call fcn.00458aaf
jmp 0x4d6931
mov eax, dword [ebp - 0x458]
mov dword [esp], eax
call fcn.0047778f
cmp eax, 0x64
jne 0x4d68bf
mov eax, dword [ebp - 0x458]
mov dword [esp + 4], 1
mov dword [esp], eax
call fcn.0041feb6
mov esi, eax
mov eax, dword [ebp - 0x458]
mov dword [esp + 4], 0
mov dword [esp], eax
call fcn.0041feb6
mov dword [esp + 0xc], eax
mov eax, dword [ebx + 0x38]
mov dword [esp + 0x10], esi
mov dword [esp + 8], edi
mov dword [esp + 4], str.__s__s_n
mov dword [esp], eax
call fcn.004c5d3a
jmp 0x4d68cf
xor edi, edi
jmp 0x4da488
mov edx, str.init
mov eax, esi
call fcn.004bdf51
test eax, eax
jne 0x4d6b47
mov eax, ebx
xor edi, edi
call fcn.004ed6ef
jmp 0x4da488
cmp dword [ebp - 0x578], 4
jne 0x4d6ad8
mov eax, dword [ebp - 0x524]
mov edx, 0x50de69
call fcn.004bdf51
test eax, eax
jne 0x4d6b47
mov eax, dword [ebp - 0x520]
mov edi, dword [ebp - 0x51c]
mov dword [ebp - 0x578], eax
mov eax, ebx
call fcn.004ed6ef
mov eax, dword [ebp - 0x578]
mov dword [esp + 8], edi
mov dword [esp], str.REPLACE_INTO_temp.sqlite_parameters_key_value_VALUES__Q__s__
mov dword [esp + 4], eax
call fcn.004440e8
mov esi, eax
call fcn.004bd956
lea eax, [ebp - 0x458]
mov dword [esp + 0x10], 0
mov dword [esp + 8], 0xffffffff
mov dword [esp + 4], esi
mov dword [ebp - 0x458], 0
mov dword [esp + 0xc], eax
mov eax, dword [ebx]
mov dword [esp], eax
call fcn.0048b371
mov dword [esp], esi
mov dword [ebp - 0x57c], eax
call fcn.0040b268
mov eax, dword [ebp - 0x57c]
test eax, eax
jne 0x4d6a0a
xor edi, edi
jmp 0x4d6ab7
mov eax, dword [ebp - 0x458]
mov dword [esp], eax
call fcn.00458aaf
mov eax, dword [ebp - 0x578]
mov dword [esp + 8], edi
mov dword [esp], str.REPLACE_INTO_temp.sqlite_parameters_key_value_VALUES__Q__Q__
mov dword [ebp - 0x458], 0
mov dword [esp + 4], eax
call fcn.004440e8
mov edi, eax
call fcn.004bd956
lea eax, [ebp - 0x458]
mov dword [esp + 0x10], 0
mov dword [esp + 8], 0xffffffff
mov dword [esp + 4], edi
mov dword [esp + 0xc], eax
mov eax, dword [ebx]
mov dword [esp], eax
call fcn.0048b371
mov dword [esp], edi
mov esi, eax
call fcn.0040b268
test esi, esi
je 0x4d6a03
mov eax, dword [ebx]
mov edi, 1
mov dword [esp], eax
call fcn.0042dd05
mov dword [esp + 8], eax
mov eax, dword [ebx + 0x38]
mov dword [esp + 4], str.Error:__s_n
mov dword [esp], eax
call fcn.004c5d3a
mov eax, dword [ebp - 0x458]
mov dword [esp], eax
call fcn.00458aaf
mov dword [ebp - 0x458], 0
mov eax, dword [ebp - 0x458]
mov dword [esp], eax
call fcn.0047778f
mov eax, dword [ebp - 0x458]
mov dword [esp], eax
call fcn.00458aaf
jmp 0x4da488
cmp dword [ebp - 0x578], 3
jne 0x4d6b47
mov eax, dword [ebp - 0x524]
mov edx, str.unset
call fcn.004bdf51
test eax, eax
jne 0x4d6b47
mov eax, dword [ebp - 0x520]
mov dword [esp], str.DELETE_FROM_temp.sqlite_parameters_WHERE_key_Q
xor edi, edi
mov dword [esp + 4], eax
call fcn.004440e8
mov esi, eax
call fcn.004bd956
mov eax, dword [ebx]
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
mov dword [esp + 4], esi
mov dword [esp], eax
call fcn.00477ee4
mov dword [esp], esi
call fcn.0040b268
jmp 0x4da488
mov eax, dword [ebx + 0x38]
mov edx, str.parameter
xor edi, edi
call fcn.004c5f9d
jmp 0x4da488
mov eax, dword [ebp - 0x57c]
mov ecx, esi
mov edx, str.print
call fcn.004bb7f6
test eax, eax
jne 0x4d6bce
mov esi, 1
cmp esi, dword [ebp - 0x578]
mov eax, dword [ebx + 0x38]
jge 0x4d6bb7
cmp esi, 1
je 0x4d6b96
mov dword [esp + 4], eax
mov dword [esp], 0x20
call sub.msvcrt.dll_fputc
mov eax, dword [ebp + esi*4 - 0x528]
mov dword [esp + 4], 0x506d0a
inc esi
mov dword [esp + 8], eax
mov eax, dword [ebx + 0x38]
mov dword [esp], eax
call fcn.004c5d3a
jmp 0x4d6b76
mov dword [esp + 4], eax
mov dword [esp], 0xa
xor edi, edi
call sub.msvcrt.dll_fputc
jmp 0x4da488
mov eax, dword [ebp - 0x57c]
mov ecx, esi
mov edx, str.progress
call fcn.004bb7f6
test eax, eax
jne 0x4d6d5e
mov dword [ebx + 0x68], 0
mov dword [ebx + 0x64], 0
mov edi, 1
mov dword [ebx + 0x60], 0
mov dword [ebp - 0x580], 0
cmp edi, dword [ebp - 0x578]
jge 0x4d6d29
mov esi, dword [ebp + edi*4 - 0x528]
cmp byte [esi], 0x2d
jne 0x4d6d16
cmp byte [esi + 1], 0x2d
lea edx, [esi + 1]
lea eax, [esi + 2]
cmovne eax, edx
mov edx, str.quiet
mov dword [ebp - 0x57c], eax
call fcn.004bdf51
test eax, eax
je 0x4d6c5d
mov eax, dword [ebp - 0x57c]
mov edx, 0x50df32
call fcn.004bdf51
test eax, eax
jne 0x4d6c66
or dword [ebx + 0x68], 1
jmp 0x4d6d23
mov eax, dword [ebp - 0x57c]
mov edx, str.reset
call fcn.004bdf51
test eax, eax
jne 0x4d6c83
or dword [ebx + 0x68], 2
jmp 0x4d6d23
mov eax, dword [ebp - 0x57c]
mov edx, str.once
call fcn.004bdf51
test eax, eax
jne 0x4d6ca0
or dword [ebx + 0x68], 4
jmp 0x4d6d23
mov eax, dword [ebp - 0x57c]
mov edx, str.limit
call fcn.004bdf51
test eax, eax
jne 0x4d6cf0
inc edi
cmp edi, dword [ebp - 0x578]
jl 0x4d6cdf
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp + 4], str.Error:_missing_argument_on___limit_n
mov edi, 1
add eax, 0x40
mov dword [esp], eax
call fcn.004c5d3a
jmp 0x4da488
mov eax, dword [ebp + edi*4 - 0x528]
call fcn.004bca70
mov dword [ebx + 0x64], eax
jmp 0x4d6d23
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp + 8], esi
mov edi, 1
mov dword [esp + 4], str.Error:_unknown_option:___s__n
add eax, 0x40
mov dword [esp], eax
call fcn.004c5d3a
jmp 0x4da488
mov eax, esi
call fcn.004bca70
mov dword [ebp - 0x580], eax
inc edi
jmp 0x4d6c0c
xor edx, edx
mov eax, ebx
xor edi, edi
call fcn.004cfaa0
mov eax, dword [ebp - 0x580]
mov dword [esp + 0xc], ebx
mov dword [esp + 8], 0x4b8638
mov dword [esp + 4], eax
mov eax, dword [ebx]
mov dword [esp], eax
call fcn.00405eeb
jmp 0x4da488
cmp edi, 0x70
jne 0x4d6dbf
mov eax, dword [ebp - 0x528]
mov ecx, esi
mov edx, str.prompt
call fcn.004bb7f6
test eax, eax
jne 0x4d6dde
cmp dword [ebp - 0x578], 1
je 0x4da583
mov edx, dword [ebp - 0x524]
mov ecx, 0x13
mov eax, 0x51a434
call fcn.004b4408
cmp dword [ebp - 0x578], 2
je 0x4da583
mov edx, dword [ebp - 0x520]
mov ecx, 0x13
mov eax, 0x51a420
xor edi, edi
call fcn.004b4408
jmp 0x4da488
cmp edi, 0x71
jne 0x4d6dde
mov eax, dword [ebp - 0x57c]
mov ecx, esi
mov edx, str.quit
call fcn.004bb7f6
test eax, eax
je 0x4d32b2
mov eax, dword [ebp - 0x528]
cmp edi, 0x72
mov dword [ebp - 0x57c], eax
jne 0x4d7133
cmp byte [ebp - 0x580], 0
je 0x4d7133
mov ecx, esi
mov edx, str.read
call fcn.004bb7f6
test eax, eax
jne 0x4d6f56
mov dword [ebp - 0x580], eax
mov eax, dword [ebx + 0x34]
mov dword [esp + 4], str.cannot_run_.read_in_safe_mode
mov dword [esp], ebx
mov esi, dword [ebx + 0x2c]
mov dword [ebp - 0x57c], eax
call fcn.004c83de
cmp dword [ebp - 0x578], 2
mov eax, dword [ebp - 0x580]
je 0x4d6e67
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp], str.Usage:_.read_FILE_n
mov edi, 1
add eax, 0x40
mov dword [esp + 4], eax
call sub.msvcrt.dll_fputs
jmp 0x4da488
mov edx, dword [ebp - 0x524]
cmp byte [edx], 0x7c
jne 0x4d6ea5
inc edx
mov dword [esp + 4], 0x509665
mov dword [esp], edx
call dword [sym.imp.msvcrt.dll__popen]
test eax, eax
mov dword [ebx + 0x34], eax
je 0x4d6f08
mov eax, ebx
call fcn.004da5c1
mov edi, eax
mov eax, dword [ebx + 0x34]
mov dword [esp], eax
call dword [sym.imp.msvcrt.dll__pclose]
jmp 0x4d6f45
lea edi, [ebp - 0x458]
mov ecx, 9
rep stosd dword es:[edi], eax
mov dword [esp + 4], 0x507267
mov dword [esp], edx
call sub.msvcrt.dll_fopen
mov edi, eax
xor eax, eax
test edi, edi
je 0x4d6f01
mov dword [esp], edi
call dword [sym.imp.msvcrt.dll__fileno]
lea edx, [ebp - 0x458]
mov dword [esp], eax
mov dword [esp + 4], edx
call dword [sym.imp.msvcrt.dll__fstat]
test eax, eax
jne 0x4d6ef7
test word [ebp - 0x452], 0xb000
mov eax, edi
jne 0x4d6f01
mov dword [esp], edi
call sub.msvcrt.dll_fclose
xor eax, eax
test eax, eax
mov dword [ebx + 0x34], eax
jne 0x4d6f31
mov eax, dword [ebp - 0x524]
mov dword [esp + 4], str.Error:_cannot_open___s__n
mov edi, 1
mov dword [esp + 8], eax
mov eax, dword [sym.imp.msvcrt.dll__iob]
add eax, 0x40
mov dword [esp], eax
call fcn.004c5d3a
jmp 0x4d6f45
mov eax, ebx
call fcn.004da5c1
mov edi, eax
mov eax, dword [ebx + 0x34]
mov dword [esp], eax
call sub.msvcrt.dll_fclose
mov eax, dword [ebp - 0x57c]
mov dword [ebx + 0x2c], esi
mov dword [ebx + 0x34], eax
jmp 0x4da488
mov eax, dword [ebp - 0x57c]
mov ecx, esi
mov edx, str.restore
call fcn.004bb7f6
test eax, eax
jne 0x4d71d9
mov dword [esp + 4], str.cannot_run_.restore_in_safe_mode
mov dword [esp], ebx
call fcn.004c83de
cmp dword [ebp - 0x578], 2
jne 0x4d6f9b
mov esi, dword [ebp - 0x524]
mov dword [ebp - 0x578], str.main
jmp 0x4d6fda
cmp dword [ebp - 0x578], 3
jne 0x4d6fb8
mov eax, dword [ebp - 0x524]
mov esi, dword [ebp - 0x520]
mov dword [ebp - 0x578], eax
jmp 0x4d6fda
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp], str.Usage:_.restore__DB__FILE_n
mov edi, 1
add eax, 0x40
mov dword [esp + 4], eax
call sub.msvcrt.dll_fputs
jmp 0x4da488
lea eax, [ebp - 0x458]
mov dword [esp], esi
mov dword [esp + 4], eax
call fcn.004b2505
test eax, eax
mov edi, eax
je 0x4d7000
mov dword [esp + 8], esi
mov dword [esp + 4], str.Error:_cannot_open___s__n
jmp 0x4d7057
xor edx, edx
mov eax, ebx
call fcn.004cfaa0
mov eax, dword [ebp - 0x458]
mov dword [esp + 0xc], str.main
mov dword [esp + 8], eax
mov eax, dword [ebp - 0x578]
mov dword [esp + 4], eax
mov eax, dword [ebx]
mov dword [esp], eax
call fcn.00456761
test eax, eax
mov esi, eax
je 0x4d7041
mov dword [ebp - 0x578], 4
jmp 0x4d7093
mov eax, dword [ebx]
mov dword [esp], eax
call fcn.0042dd05
mov dword [esp + 4], str.Error:__s_n
mov dword [esp + 8], eax
mov eax, dword [sym.imp.msvcrt.dll__iob]
add eax, 0x40
mov dword [esp], eax
call fcn.004c5d3a
mov eax, dword [ebp - 0x458]
mov dword [esp], eax
call fcn.004d03a9
jmp 0x4d7124
cmp eax, 5
jne 0x4d70ab
dec dword [ebp - 0x578]
je 0x4d70ab
mov dword [esp], 0x64
call fcn.00435c07
mov dword [esp + 4], 0x64
mov dword [esp], esi
call fcn.00454879
test eax, eax
mov edx, eax
je 0x4d7093
jmp 0x4d707a
mov dword [esp], esi
mov dword [ebp - 0x578], edx
call fcn.00457ba9
mov edx, dword [ebp - 0x578]
cmp edx, 0x65
je 0x4d7111
lea esi, [edx - 5]
cmp esi, 1
ja 0x4d70e6
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp], str.Error:_source_database_is_busy_n
add eax, 0x40
mov dword [esp + 4], eax
call sub.msvcrt.dll_fputs
jmp 0x4d710c
mov eax, dword [ebx]
mov dword [esp], eax
call fcn.0042dd05
mov dword [esp + 8], eax
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp + 4], str.Error:__s_n
add eax, 0x40
mov dword [esp], eax
call fcn.004c5d3a
mov edi, 1
mov eax, dword [ebp - 0x458]
mov dword [esp], eax
call fcn.004d03a9
jmp 0x4da488
mov dword [ebp - 0x57c], 1
jmp 0x4da5b3
cmp edi, 0x73
jne 0x4d780b
mov eax, dword [ebp - 0x57c]
mov ecx, esi
mov edx, str.scanstats
call fcn.004bb7f6
test eax, eax
jne 0x4d71e2
cmp dword [ebp - 0x578], 2
jne 0x4d71b7
mov esi, dword [ebp - 0x524]
mov edx, 0x50e031
mov eax, esi
call fcn.004bdf51
test eax, eax
jne 0x4d717b
mov byte [ebx + 8], 2
jmp 0x4d7185
mov eax, esi
call fcn.004c858a
mov byte [ebx + 8], al
xor edx, edx
mov eax, ebx
xor edi, edi
call fcn.004cfaa0
movzx eax, byte [ebx + 8]
mov dword [esp + 0xc], 0
mov dword [esp + 4], 0x3fa
mov dword [esp + 8], eax
mov eax, dword [ebx]
mov dword [esp], eax
call fcn.00414b32
jmp 0x4da488
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp], str.Usage:_.scanstats_onoffest_n
mov edi, 1
add eax, 0x40
mov dword [esp + 4], eax
call sub.msvcrt.dll_fputs
jmp 0x4da488
cmp edi, 0x73
jne 0x4d780b
mov eax, dword [ebp - 0x528]
mov ecx, esi
mov edx, str.schema
call fcn.004bb7f6
test eax, eax
jne 0x4d780b
xor edx, edx
mov eax, ebx
mov dword [ebp - 0x560], 0
lea edi, [ebp - 0x458]
mov esi, ebx
call fcn.004cfaa0
mov ecx, 0x110
lea eax, [ebp - 0x554]
rep movsd dword es:[edi], dword [esi]
mov dword [ebp - 0x400], 0
mov dword [ebp - 0x414], 3
xor esi, esi
mov dword [ebp - 0x40c], 3
call fcn.004b875f
mov dword [ebp - 0x57c], 1
mov dword [ebp - 0x588], 0
mov dword [ebp - 0x584], 0
mov ecx, dword [ebp - 0x578]
cmp dword [ebp - 0x57c], ecx
jge 0x4d733b
mov eax, dword [ebp - 0x57c]
mov edx, str.indent
mov edi, dword [ebp + eax*4 - 0x528]
mov eax, edi
call fcn.004c2ac4
test eax, eax
je 0x4d72af
mov dword [ebp - 0x414], 0xb
mov dword [ebp - 0x40c], 0xb
jmp 0x4d7330
mov edx, str.debug
mov eax, edi
call fcn.004c2ac4
test eax, eax
jne 0x4d7316
mov edx, str.nosys
mov eax, edi
call fcn.004c2ac4
test eax, eax
jne 0x4d7322
cmp byte [edi], 0x2d
jne 0x4d72f5
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp + 8], edi
mov dword [esp + 4], str.Unknown_option:___s__n
add eax, 0x40
mov dword [esp], eax
call fcn.004c5d3a
jmp 0x4d7801
test esi, esi
je 0x4d732e
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp], str.Usage:_.schema____indent_____nosys___LIKE_PATTERN__n
add eax, 0x40
mov dword [esp + 4], eax
call sub.msvcrt.dll_fputs
jmp 0x4d7801
mov dword [ebp - 0x584], 1
jmp 0x4d7330
mov dword [ebp - 0x588], 1
jmp 0x4d7330
mov esi, edi
inc dword [ebp - 0x57c]
jmp 0x4d7267
test esi, esi
lea edi, [ebp - 0x55c]
je 0x4d73c9
mov dword [esp + 8], 0x5c
mov dword [esp + 4], str.sqlite_master
mov dword [esp], esi
call fcn.0040ae9f
test eax, eax
je 0x4da4f3
mov dword [esp + 8], 0x5c
mov dword [esp + 4], str.sqlite_schema
mov dword [esp], esi
call fcn.0040ae9f
test eax, eax
je 0x4da4f3
mov dword [esp + 8], 0x5c
mov dword [esp + 4], str.sqlite_temp_master
mov dword [esp], esi
call fcn.0040ae9f
test eax, eax
je 0x4da4f3
mov dword [esp + 8], 0x5c
mov dword [esp + 4], str.sqlite_temp_schema
mov dword [esp], esi
call fcn.0040ae9f
test eax, eax
je 0x4da4f3
mov eax, dword [ebx]
mov dword [esp + 0xc], edi
mov dword [esp + 0x10], 0
mov dword [esp + 8], 0xffffffff
mov dword [esp + 4], str.SELECT_name_FROM_pragma_database_list
mov dword [ebp - 0x55c], 0
mov dword [esp], eax
call fcn.0048b371
test eax, eax
mov edi, eax
je 0x4d7438
mov eax, dword [ebx]
mov dword [esp], eax
call fcn.0042dd05
mov dword [esp + 8], eax
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp + 4], str.Error:__s_n
add eax, 0x40
mov dword [esp], eax
call fcn.004c5d3a
mov eax, dword [ebp - 0x55c]
mov dword [esp], eax
call fcn.00458aaf
jmp 0x4d7801
lea eax, [ebp - 0x554]
mov edx, str.SELECT_sql_FROM
xor ecx, ecx
call fcn.004bdcfd
lea eax, [ebp - 0x554]
mov dword [ebp - 0x580], 0
mov edx, 0x5088f6
mov dword [ebp - 0x578], eax
mov eax, dword [ebp - 0x55c]
mov dword [ebp - 0x57c], edx
mov dword [esp], eax
call fcn.0047778f
cmp eax, 0x64
mov edx, dword [ebp - 0x57c]
mov eax, dword [ebp - 0x55c]
jne 0x4d75d0
mov dword [esp + 4], 0
mov dword [esp], eax
mov dword [ebp - 0x58c], edx
call fcn.0041feb6
inc dword [ebp - 0x580]
mov dword [ebp - 0x57c], eax
mov eax, dword [ebp - 0x580]
mov dword [esp + 8], 0x50a1e6
mov dword [esp], 0x1e
mov dword [esp + 0xc], eax
lea eax, [ebp - 0x548]
mov dword [esp + 4], eax
call fcn.0042a3d9
mov edx, dword [ebp - 0x58c]
mov eax, dword [ebp - 0x578]
xor ecx, ecx
call fcn.004bdcfd
mov eax, dword [ebp - 0x578]
xor ecx, ecx
mov edx, str.SELECT_shell_add_schema_sql_
call fcn.004bdcfd
mov eax, dword [ebp - 0x57c]
mov dword [esp + 4], str.main
mov dword [esp], eax
call fcn.004019f3
test eax, eax
je 0x4d7524
mov ecx, 0x27
mov edx, dword [ebp - 0x57c]
jmp 0x4d752b
xor ecx, ecx
mov edx, str.NULL
mov eax, dword [ebp - 0x578]
call fcn.004bdcfd
mov eax, dword [ebp - 0x578]
xor ecx, ecx
mov edx, str._name__AS_sql__type__tbl_name__name__rowid_
call fcn.004bdcfd
mov eax, dword [ebp - 0x578]
lea edx, [ebp - 0x548]
xor ecx, ecx
call fcn.004bdcfd
mov eax, dword [ebp - 0x578]
xor ecx, ecx
mov edx, str._AS_snum_
call fcn.004bdcfd
mov edx, dword [ebp - 0x57c]
mov eax, dword [ebp - 0x578]
mov ecx, 0x27
call fcn.004bdcfd
mov eax, dword [ebp - 0x578]
xor ecx, ecx
mov edx, str._AS_sname_FROM
call fcn.004bdcfd
mov eax, dword [ebp - 0x57c]
call fcn.004c2af1
mov edx, dword [ebp - 0x57c]
movsx ecx, al
mov eax, dword [ebp - 0x578]
call fcn.004bdcfd
mov eax, dword [ebp - 0x578]
mov edx, 0x50e173
xor ecx, ecx
call fcn.004bdcfd
mov edx, str._UNION_ALL
jmp 0x4d7465
mov dword [esp], eax
call fcn.00458aaf
test esi, esi
je 0x4d75ee
lea eax, [ebp - 0x554]
xor ecx, ecx
mov edx, str._UNION_ALL_SELECT_shell_module_schema_name___table__name__name__name__9e99__main_FROM_pragma_module_list
call fcn.004bdcfd
lea eax, [ebp - 0x554]
xor ecx, ecx
mov edx, str.__WHERE
call fcn.004bdcfd
test esi, esi
je 0x4d770d
mov dword [esp + 4], esi
mov dword [esp], 0x507f09
call fcn.004440e8
mov dword [ebp - 0x57c], eax
call fcn.004bd956
mov dword [esp + 4], 0x2a
mov dword [esp], esi
call sub.msvcrt.dll_strchr
test eax, eax
mov dword [ebp - 0x578], 1
jne 0x4d7673
mov dword [esp + 4], 0x3f
mov dword [esp], esi
call sub.msvcrt.dll_strchr
test eax, eax
jne 0x4d7673
mov dword [esp + 4], 0x5b
mov dword [esp], esi
call sub.msvcrt.dll_strchr
test eax, eax
setne al
movzx eax, al
mov dword [ebp - 0x578], eax
mov dword [esp + 4], 0x2e
mov dword [esp], esi
call sub.msvcrt.dll_strchr
xor ecx, ecx
test eax, eax
mov edx, str.lower_printf__s._s_sname_tbl_name__
jne 0x4d7693
mov edx, str.lower_tbl_name_
lea eax, [ebp - 0x554]
call fcn.004bdcfd
cmp dword [ebp - 0x578], 0
mov eax, str._LIKE
mov edx, str._GLOB
cmove edx, eax
lea eax, [ebp - 0x554]
xor ecx, ecx
call fcn.004bdcfd
mov edx, dword [ebp - 0x57c]
lea eax, [ebp - 0x554]
xor ecx, ecx
call fcn.004bdcfd
cmp dword [ebp - 0x578], 0
jne 0x4d76ed
lea eax, [ebp - 0x554]
xor ecx, ecx
mov edx, str._ESCAPE_
call fcn.004bdcfd
lea eax, [ebp - 0x554]
xor ecx, ecx
mov edx, str._AND
call fcn.004bdcfd
mov eax, dword [ebp - 0x57c]
mov dword [esp], eax
call fcn.0040b268
cmp dword [ebp - 0x588], 0
je 0x4d7728
lea eax, [ebp - 0x554]
xor ecx, ecx
mov edx, str.name_NOT_LIKE_sqlite____AND
call fcn.004bdcfd
lea eax, [ebp - 0x554]
xor ecx, ecx
mov edx, str.sql_IS_NOT_NULL_ORDER_BY_snum__rowid
call fcn.004bdcfd
cmp dword [ebp - 0x584], 0
mov eax, dword [ebp - 0x554]
je 0x4d7762
mov dword [esp + 8], eax
mov eax, dword [ebx + 0x38]
mov dword [esp + 4], str.SQL:__s__n
mov dword [esp], eax
call fcn.004c5d3a
jmp 0x4d778e
lea edx, [ebp - 0x560]
mov dword [esp + 4], eax
mov eax, dword [ebx]
mov dword [esp + 8], fcn.004c83bf
mov dword [esp + 0x10], edx
lea edx, [ebp - 0x458]
mov dword [esp], eax
mov dword [esp + 0xc], edx
call fcn.00477ee4
mov edi, eax
lea eax, [ebp - 0x554]
call fcn.004bdec6
mov eax, dword [ebp - 0x560]
test eax, eax
je 0x4d77d7
mov dword [esp + 8], eax
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov edi, 1
mov dword [esp + 4], str.Error:__s_n
add eax, 0x40
mov dword [esp], eax
call fcn.004c5d3a
mov eax, dword [ebp - 0x560]
mov dword [esp], eax
call fcn.0040b268
jmp 0x4da488
test edi, edi
je 0x4da488
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp], str.Error:_querying_schema_information_n
mov edi, 1
add eax, 0x40
mov dword [esp + 4], eax
call sub.msvcrt.dll_fputs
jmp 0x4da488
mov edi, 1
jmp 0x4da488
cmp esi, 0xb
jne 0x4d7832
cmp byte [ebp - 0x588], 0
je 0x4d7832
mov eax, dword [ebp - 0x528]
mov ecx, 0xb
mov edx, str.selecttrace
call fcn.004bb7f6
test eax, eax
je 0x4d7867
cmp edi, 0x74
mov eax, dword [ebp - 0x528]
sete byte [ebp - 0x584]
cmp esi, 9
jne 0x4d78a9
cmp byte [ebp - 0x584], 0
je 0x4d78a9
mov ecx, 9
mov edx, str.treetrace
call fcn.004bb7f6
test eax, eax
jne 0x4d7fb9
or eax, 0xffffffff
cmp dword [ebp - 0x578], 1
je 0x4d787e
mov eax, dword [ebp - 0x524]
call fcn.004bca70
mov dword [ebp - 0x458], eax
lea eax, [ebp - 0x458]
mov dword [esp + 4], 1
mov dword [esp], 0x1f
xor edi, edi
mov dword [esp + 8], eax
call fcn.004b188d
jmp 0x4da488
cmp edi, 0x73
jne 0x4d7fb9
mov ecx, esi
mov edx, str.session
call fcn.004bb7f6
test eax, eax
jne 0x4d7fb9
cmp byte [ebp - 0x580], 0
je 0x4d7fb9
mov eax, dword [ebp - 0x578]
mov esi, dword [ebx + 0x3b4]
dec eax
cmp dword [ebp - 0x578], 1
lea edi, [esi + 0x10]
mov dword [ebp - 0x57c], eax
je 0x4d7fa5
xor edx, edx
mov eax, ebx
call fcn.004cfaa0
cmp dword [ebp - 0x578], 2
je 0x4d7966
mov eax, dword [esi + 0xc]
mov dword [ebp - 0x584], 0
mov dword [ebp - 0x580], eax
mov eax, dword [ebp - 0x524]
mov dword [ebp - 0x588], eax
mov ecx, dword [ebp - 0x580]
cmp dword [ebp - 0x584], ecx
jge 0x4d7966
mov eax, dword [ebp - 0x584]
mov edx, dword [ebp - 0x588]
shl eax, 4
mov eax, dword [esi + eax + 0x10]
call fcn.004bdf51
test eax, eax
mov eax, dword [ebp - 0x584]
lea eax, [eax + 1]
je 0x4da563
mov dword [ebp - 0x584], eax
jmp 0x4d7927
lea eax, [ebp - 0x524]
mov dword [ebp - 0x584], 0
mov dword [ebp - 0x578], eax
mov eax, dword [ebp - 0x578]
mov edx, str.attach
mov eax, dword [eax]
mov dword [ebp - 0x580], eax
call fcn.004bdf51
test eax, eax
jne 0x4d7a0b
cmp dword [ebp - 0x57c], 2
jne 0x4d7fa5
mov eax, dword [edi + 0xc]
test eax, eax
jne 0x4d79cb
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp], str.ERROR:_No_sessions_are_open_n
xor edi, edi
add eax, 0x40
mov dword [esp + 4], eax
call sub.msvcrt.dll_fputs
jmp 0x4da488
mov ecx, dword [ebp - 0x578]
mov edx, dword [ecx + 4]
mov dword [esp], eax
mov dword [esp + 4], edx
call fcn.004b284b
test eax, eax
je 0x4da583
mov dword [esp + 8], eax
mov eax, dword [sym.imp.msvcrt.dll__iob]
xor edi, edi
mov dword [esp + 4], str.ERROR:_sqlite3session_attach___returns__d_n
add eax, 0x40
mov dword [esp], eax
call sub.msvcrt.dll_fprintf
jmp 0x4da488
mov eax, dword [ebp - 0x580]
mov edx, str.changeset
call fcn.004bdf51
test eax, eax
je 0x4d7a37
mov eax, dword [ebp - 0x580]
mov edx, str.patchset
call fcn.004bdf51
test eax, eax
jne 0x4d7b5e
mov eax, dword [ebp - 0x580]
mov dword [esp + 4], str.cannot_run__.session__s__in_safe_mode
mov dword [esp], ebx
mov dword [esp + 8], eax
call fcn.004c83de
cmp dword [ebp - 0x57c], 2
jne 0x4d7fa5
cmp dword [edi + 0xc], 0
je 0x4d79ac
mov eax, dword [ebp - 0x578]
mov dword [esp + 4], 0x507264
mov eax, dword [eax + 4]
mov dword [esp], eax
call sub.msvcrt.dll_fopen
mov esi, eax
mov eax, dword [ebp - 0x578]
test esi, esi
jne 0x4d7ab3
mov eax, dword [eax + 4]
mov dword [esp + 4], str.ERROR:_cannot_open___s__for_writing_n
xor edi, edi
mov dword [esp + 8], eax
mov eax, dword [sym.imp.msvcrt.dll__iob]
add eax, 0x40
mov dword [esp], eax
call fcn.004c5d3a
jmp 0x4da488
mov eax, dword [eax]
lea edx, [ebp - 0x458]
cmp byte [eax], 0x63
lea eax, [ebp - 0x548]
mov dword [esp + 8], edx
mov dword [esp + 4], eax
mov eax, dword [edi + 0xc]
mov dword [esp], eax
jne 0x4d7adb
call fcn.004b2f09
jmp 0x4d7ae0
call fcn.004b2f98
test eax, eax
je 0x4d7af4
mov dword [esp + 4], eax
mov dword [esp], str.Error:_error_code__d_n
call sub.msvcrt.dll_printf
mov eax, dword [ebp - 0x458]
test eax, eax
je 0x4d7b41
mov edx, dword [ebp - 0x548]
mov dword [esp + 0xc], esi
mov dword [esp + 8], 1
mov dword [esp], eax
mov dword [esp + 4], edx
call sub.msvcrt.dll_fwrite
dec eax
je 0x4d7b41
mov eax, dword [ebp - 0x548]
mov dword [esp + 4], str.ERROR:_Failed_to_write_entire__d_byte_output_n
mov dword [esp + 8], eax
mov eax, dword [sym.imp.msvcrt.dll__iob]
add eax, 0x40
mov dword [esp], eax
call sub.msvcrt.dll_fprintf
mov eax, dword [ebp - 0x458]
xor edi, edi
mov dword [esp], eax
call fcn.0040b268
mov dword [esp], esi
call sub.msvcrt.dll_fclose
jmp 0x4da488
mov eax, dword [ebp - 0x580]
mov edx, str.close
call fcn.004bdf51
test eax, eax
jne 0x4d7bba
cmp dword [ebp - 0x57c], 1
jne 0x4d7fa5
cmp dword [esi + 0xc], 0
je 0x4da583
mov eax, edi
call fcn.004be2b8
mov edx, dword [esi + 0xc]
mov ecx, 4
lea eax, [edx - 1]
shl edx, 4
mov dword [esi + 0xc], eax
mov eax, dword [ebp - 0x584]
inc eax
shl eax, 4
add eax, esi
add esi, edx
mov edi, eax
rep movsd dword es:[edi], dword [esi]
xor edi, edi
jmp 0x4da488
mov eax, dword [ebp - 0x580]
mov edx, str.enable
call fcn.004bdf51
test eax, eax
jne 0x4d7c32
cmp dword [ebp - 0x57c], 2
jg 0x4d7fa5
or eax, 0xffffffff
cmp dword [ebp - 0x57c], 1
je 0x4d7bf5
mov eax, dword [ebp - 0x578]
mov eax, dword [eax + 4]
call fcn.004c858a
cmp dword [esi + 0xc], 0
je 0x4da583
mov dword [esp + 4], eax
mov eax, dword [edi + 0xc]
mov dword [esp], eax
call fcn.004b2fc7
mov dword [esp + 0xc], eax
mov eax, dword [edi]
xor edi, edi
mov dword [esp + 4], str.session__s_enable_flag___d_n
mov dword [esp + 8], eax
mov eax, dword [ebx + 0x38]
mov dword [esp], eax
call fcn.004c5d3a
jmp 0x4da488
mov eax, dword [ebp - 0x580]
mov edx, str.filter
call fcn.004bdf51
test eax, eax
jne 0x4d7d0c
cmp dword [ebp - 0x57c], 1
je 0x4d7fa5
cmp dword [esi + 0xc], 0
je 0x4da583
xor esi, esi
cmp esi, dword [edi + 4]
mov eax, dword [edi + 8]
jge 0x4d7c79
mov eax, dword [eax + esi*4]
inc esi
mov dword [esp], eax
call fcn.0040b268
jmp 0x4d7c63
mov dword [esp], eax
mov esi, 1
call fcn.0040b268
mov eax, dword [ebp - 0x57c]
lea eax, [eax*4 - 4]
mov dword [esp], eax
call fcn.00435e6f
test eax, eax
mov dword [edi + 8], eax
jne 0x4d7cbf
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp], str.Error:_out_or_memory_n
add eax, 0x40
mov dword [esp + 4], eax
call sub.msvcrt.dll_fputs
jmp 0x4d5edc
mov eax, dword [edi + 8]
lea edx, [eax + esi*4 - 4]
mov eax, dword [ebp - 0x578]
mov dword [ebp - 0x580], edx
mov eax, dword [eax + esi*4]
mov dword [esp], 0x506d0a
inc esi
mov dword [esp + 4], eax
call fcn.004440e8
mov edx, dword [ebp - 0x580]
mov dword [edx], eax
call fcn.004bd956
cmp dword [ebp - 0x57c], esi
jne 0x4d7cbf
mov eax, dword [ebp - 0x57c]
dec eax
mov dword [edi + 4], eax
xor edi, edi
jmp 0x4da488
mov eax, dword [ebp - 0x580]
mov edx, str.indirect
call fcn.004bdf51
test eax, eax
jne 0x4d7d84
cmp dword [ebp - 0x57c], 2
jg 0x4d7fa5
or eax, 0xffffffff
cmp dword [ebp - 0x57c], 1
je 0x4d7d47
mov eax, dword [ebp - 0x578]
mov eax, dword [eax + 4]
call fcn.004c858a
cmp dword [esi + 0xc], 0
je 0x4da583
mov dword [esp + 4], eax
mov eax, dword [edi + 0xc]
mov dword [esp], eax
call fcn.004b2fdc
mov dword [esp + 0xc], eax
mov eax, dword [edi]
xor edi, edi
mov dword [esp + 4], str.session__s_indirect_flag___d_n
mov dword [esp + 8], eax
mov eax, dword [ebx + 0x38]
mov dword [esp], eax
call fcn.004c5d3a
jmp 0x4da488
mov eax, dword [ebp - 0x580]
mov edx, str.isempty
call fcn.004bdf51
test eax, eax
jne 0x4d7dde
cmp dword [ebp - 0x57c], 1
jne 0x4d7fa5
cmp dword [esi + 0xc], 0
je 0x4da583
mov eax, dword [edi + 0xc]
mov dword [esp], eax
call fcn.004b2ff1
mov dword [esp + 0xc], eax
mov eax, dword [edi]
xor edi, edi
mov dword [esp + 4], str.session__s_isempty_flag___d_n
mov dword [esp + 8], eax
mov eax, dword [ebx + 0x38]
mov dword [esp], eax
call fcn.004c5d3a
jmp 0x4da488
mov eax, dword [ebp - 0x580]
mov edx, str.list
xor edi, edi
call fcn.004bdf51
test eax, eax
jne 0x4d7e24
cmp edi, dword [esi + 0xc]
jge 0x4da583
mov eax, edi
shl eax, 4
mov eax, dword [esi + eax + 0x10]
mov dword [esp + 8], edi
inc edi
mov dword [esp + 4], str._d__s_n
mov dword [esp + 0xc], eax
mov eax, dword [ebx + 0x38]
mov dword [esp], eax
call fcn.004c5d3a
jmp 0x4d7df4
mov eax, dword [ebp - 0x580]
mov edx, str.open
call fcn.004bdf51
cmp dword [ebp - 0x57c], 3
jne 0x4d7fa5
test eax, eax
jne 0x4d7fa5
mov eax, dword [ebp - 0x578]
mov eax, dword [eax + 8]
cmp byte [eax], 0
mov dword [ebp - 0x57c], eax
je 0x4d7fa5
mov eax, dword [esi + 0xc]
xor edi, edi
mov dword [ebp - 0x580], eax
cmp edi, dword [ebp - 0x580]
jge 0x4d7eb8
mov eax, edi
mov edx, dword [ebp - 0x57c]
shl eax, 4
mov eax, dword [esi + eax + 0x10]
call fcn.004bdf51
test eax, eax
jne 0x4d7eb5
mov eax, dword [ebp - 0x57c]
mov dword [esp + 4], str.Session___s__already_exists_n
xor edi, edi
mov dword [esp + 8], eax
mov eax, dword [sym.imp.msvcrt.dll__iob]
add eax, 0x40
mov dword [esp], eax
call fcn.004c5d3a
jmp 0x4da488
inc edi
jmp 0x4d7e6c
cmp dword [ebp - 0x580], 3
jle 0x4d7ee8
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp + 8], 4
xor edi, edi
mov dword [esp + 4], str.Maximum_of__d_sessions_n
add eax, 0x40
mov dword [esp], eax
call sub.msvcrt.dll_fprintf
jmp 0x4da488
mov eax, dword [ebp - 0x580]
lea edx, [eax + 1]
shl edx, 4
add edx, esi
lea eax, [edx + 0xc]
mov dword [ebp - 0x584], edx
mov dword [esp + 8], eax
mov eax, dword [ebp - 0x578]
mov eax, dword [eax + 4]
mov dword [esp + 4], eax
mov eax, dword [ebx]
mov dword [esp], eax
call fcn.004b270f
test eax, eax
mov edi, eax
mov edx, dword [ebp - 0x584]
je 0x4d7f49
mov dword [esp + 8], eax
mov eax, dword [sym.imp.msvcrt.dll__iob]
xor edi, edi
mov dword [esp + 4], str.Cannot_open_session:_error_code_d_n
add eax, 0x40
mov dword [esp], eax
call sub.msvcrt.dll_fprintf
jmp 0x4da488
mov eax, dword [ebp - 0x580]
shl eax, 4
lea ecx, [esi + eax]
mov dword [ecx + 0x14], 0
mov dword [esp + 8], edx
mov dword [esp + 4], 0x4bdf17
mov eax, dword [ecx + 0x1c]
mov dword [ebp - 0x578], ecx
mov dword [esp], eax
call fcn.004b2830
inc dword [esi + 0xc]
mov eax, dword [ebp - 0x57c]
mov dword [esp], 0x506d0a
mov dword [esp + 4], eax
call fcn.004440e8
mov ecx, dword [ebp - 0x578]
mov dword [ecx + 0x10], eax
call fcn.004bd956
jmp 0x4da488
mov eax, dword [ebx + 0x38]
mov edx, str.session
xor edi, edi
call fcn.004c5f9d
jmp 0x4da488
cmp esi, 3
setg al
and al, byte [ebp - 0x588]
mov byte [ebp - 0x580], al
je 0x4d8553
mov eax, dword [ebp - 0x528]
mov ecx, esi
mov edx, str.selftest
call fcn.004bb7f6
test eax, eax
jne 0x4d855c
xor edx, edx
mov eax, ebx
mov dword [ebp - 0x554], 0
mov esi, 1
call fcn.004cfaa0
mov dword [ebp - 0x584], 0
mov dword [ebp - 0x57c], 0
cmp esi, dword [ebp - 0x578]
jge 0x4d80c4
mov edi, dword [ebp + esi*4 - 0x528]
cmp byte [edi], 0x2d
mov ecx, edi
jne 0x4d803d
xor eax, eax
cmp byte [edi + 1], 0x2d
sete al
lea ecx, [edi + eax]
mov edx, str._init
mov eax, ecx
mov dword [ebp - 0x580], ecx
call fcn.004bdf51
test eax, eax
je 0x4d80b4
mov ecx, dword [ebp - 0x580]
mov edx, 0x50cf99
mov eax, ecx
call fcn.004bdf51
test eax, eax
jne 0x4d8071
inc dword [ebp - 0x584]
jmp 0x4d80be
mov eax, dword [ebp - 0x528]
mov dword [esp + 8], edi
mov dword [esp + 4], str.Unknown_option___s__on___s__n
mov dword [esp + 0xc], eax
mov eax, dword [sym.imp.msvcrt.dll__iob]
add eax, 0x40
mov dword [esp], eax
call fcn.004c5d3a
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp], str.Should_be_one_of:___init__v_n
add eax, 0x40
mov dword [esp + 4], eax
call sub.msvcrt.dll_fputs
jmp 0x4d8549
mov dword [ebp - 0x57c], 1
inc esi
jmp 0x4d8017
mov eax, dword [ebx]
mov dword [esp + 0x20], 0
lea edi, [ebp - 0x458]
mov dword [esp + 0x1c], 0
mov dword [esp + 0x18], 0
mov dword [esp + 0x14], 0
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0
mov dword [esp + 8], str.selftest
mov dword [esp + 4], str.main
mov dword [esp], eax
call fcn.00490c89
test eax, eax
sete al
cmp dword [ebp - 0x57c], 0
movzx eax, al
mov esi, eax
je 0x4d81be
mov eax, dword [ebx]
mov dword [esp + 0x10], edi
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
mov dword [esp + 4], str.SAVEPOINT_selftest_init__nCREATE_TABLE_IF_NOT_EXISTS_selftest__n__tno_INTEGER_PRIMARY_KEY__n__op_TEXT__n__cmd_TEXT__n__ans_TEXT_n__CREATE_TEMP_TABLE___shell_self__op_cmd_ans___nINSERT_INTO___shell_self__rowid_op_cmd__n__VALUES_coalesce__SELECT__max_tno_100__10_FROM_selftest__10___n_________memo_Tests_generated_by___init___nINSERT_INTO___shell_self__n__SELECT_run__n____SELECT_hex_sha3_query_SELECT_type_name_tbl_name_sql_FROM_sqlite_schema_ORDER_BY_2_224____n____hex_sha3_query_SELECT_type_name_tbl_name_sql_FROM_sqlite_schema_ORDER_BY_2_224____nINSERT_INTO___shell_self__n__SELECT_run_____SELECT_hex_sha3_query_SELECT__FROM___________printf__w_name_____NOT_INDEXED_224____n____hex_sha3_query_printf_SELECT__FROM___w__NOT_INDEXED_name__224___n__FROM___n____SELECT_name_FROM_sqlite_schema_n_____WHERE_typetable_n_______AND_name__selftest_n_______AND_coalesce_rootpage_0__0_n____n_ORDER_BY_name__nINSERT_INTO___shell_self__n__VALUES_run_PRAGMA_integrity_check_ok___nINSERT_INTO_selftest_tno_op_cmd_ans___SELECT_rowid10_op_cmd_ans_FROM___shell_self___nDROP_TABLE___shell_self__
mov dword [ebp - 0x458], 0
mov dword [esp], eax
call fcn.00477ee4
mov eax, dword [ebp - 0x458]
test eax, eax
je 0x4d818f
mov dword [esp + 8], eax
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp + 4], str.SELFTEST_initialization_failure:__s_n
add eax, 0x40
mov dword [esp], eax
call fcn.004c5d3a
mov eax, dword [ebp - 0x458]
mov dword [esp], eax
call fcn.0040b268
mov eax, dword [ebx]
mov dword [esp + 0x10], 0
mov esi, 1
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
mov dword [esp + 4], str.RELEASE_selftest_init
mov dword [esp], eax
call fcn.00477ee4
mov eax, edi
call fcn.004b875f
xor ecx, ecx
mov edx, 0x50e98b
mov eax, edi
call fcn.004bdcfd
mov dword [ebp - 0x588], 0
mov dword [ebp - 0x590], 0
lea eax, [ebp - 0x554]
cmp esi, 1
mov dword [esp + 0x10], 0
mov dword [esp + 8], 0xffffffff
mov dword [esp + 0xc], eax
jne 0x4d8210
mov dword [esp + 4], str.SELECT_tno_op_cmd_ans_FROM_selftest_ORDER_BY_tno
jmp 0x4d8218
mov dword [esp + 4], str.VALUES_0_memo_Missing_SELFTEST_table___default_checks_only__________1_run_PRAGMA_integrity_check_ok_
mov eax, dword [ebx]
mov dword [esp], eax
call fcn.0048b371
test eax, eax
mov edi, eax
je 0x4d82df
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp], str.Error_querying_the_selftest_table_n
add eax, 0x40
mov dword [esp + 4], eax
call sub.msvcrt.dll_fputs
mov eax, dword [ebp - 0x554]
mov dword [esp], eax
call fcn.00458aaf
jmp 0x4d8549
mov eax, dword [ebp - 0x554]
mov dword [esp + 4], 0
mov dword [esp], eax
call fcn.00411c8f
mov dword [ebp - 0x578], eax
mov eax, dword [ebp - 0x554]
mov dword [esp + 4], 1
mov dword [esp], eax
call fcn.0041feb6
mov dword [ebp - 0x57c], eax
mov eax, dword [ebp - 0x554]
mov dword [esp + 4], 2
mov dword [esp], eax
call fcn.0041feb6
mov dword [ebp - 0x580], eax
mov eax, dword [ebp - 0x554]
mov dword [esp + 4], 3
mov dword [esp], eax
call fcn.0041feb6
cmp dword [ebp - 0x57c], 0
mov dword [ebp - 0x58c], eax
sete dl
cmp dword [ebp - 0x580], 0
sete al
or dl, al
je 0x4d82fb
mov eax, dword [ebp - 0x554]
mov dword [esp], eax
call fcn.0047778f
cmp eax, 0x64
je 0x4d8257
jmp 0x4d84fa
cmp dword [ebp - 0x58c], 0
je 0x4d82df
cmp dword [ebp - 0x584], 0
je 0x4d8337
mov eax, dword [ebp - 0x580]
mov dword [esp], str._d:__s__s_n
mov dword [esp + 0xc], eax
mov eax, dword [ebp - 0x57c]
mov dword [esp + 8], eax
mov eax, dword [ebp - 0x578]
mov dword [esp + 4], eax
call sub.msvcrt.dll_printf
mov eax, dword [ebp - 0x57c]
mov edx, str.memo
call fcn.004bdf51
test eax, eax
jne 0x4d836d
mov eax, dword [ebp - 0x580]
mov dword [esp + 4], 0x508cd3
mov dword [esp + 8], eax
mov eax, dword [ebx + 0x38]
mov dword [esp], eax
call fcn.004c5d3a
jmp 0x4d84c0
mov eax, dword [ebp - 0x57c]
mov edx, 0x50ea62
call fcn.004bdf51
test eax, eax
jne 0x4d84c7
mov eax, dword [ebp - 0x458]
mov dword [ebp - 0x548], 0
mov dword [ebp - 0x454], 0
mov byte [eax], 0
lea eax, [ebp - 0x548]
mov dword [esp + 8], 0x4bde69
mov dword [esp + 0x10], eax
lea eax, [ebp - 0x458]
mov dword [esp + 0xc], eax
mov eax, dword [ebp - 0x580]
mov dword [esp + 4], eax
mov eax, dword [ebx]
mov dword [esp], eax
call fcn.00477ee4
inc dword [ebp - 0x590]
cmp dword [ebp - 0x584], 0
mov edi, eax
je 0x4d8400
mov eax, dword [ebp - 0x458]
mov dword [esp + 4], str.Result:__s_n
mov dword [esp + 8], eax
mov eax, dword [ebx + 0x38]
mov dword [esp], eax
call fcn.004c5d3a
test edi, edi
jne 0x4d840d
cmp dword [ebp - 0x548], 0
je 0x4d8452
mov eax, dword [ebp - 0x548]
mov dword [esp + 0xc], 1
mov dword [esp + 4], str._d:_error_code__d:__s_n
inc dword [ebp - 0x588]
mov dword [esp + 0x10], eax
mov eax, dword [ebp - 0x578]
mov dword [esp + 8], eax
mov eax, dword [ebx + 0x38]
mov dword [esp], eax
call fcn.004c5d3a
mov eax, dword [ebp - 0x548]
mov dword [esp], eax
call fcn.0040b268
jmp 0x4d84bb
mov edx, dword [ebp - 0x458]
mov eax, dword [ebp - 0x58c]
call fcn.004bdf51
test eax, eax
je 0x4d84c0
mov eax, dword [ebp - 0x58c]
mov dword [esp + 4], str._d:_Expected:___s__n
inc dword [ebp - 0x588]
mov dword [esp + 0xc], eax
mov eax, dword [ebp - 0x578]
mov dword [esp + 8], eax
mov eax, dword [ebx + 0x38]
mov dword [esp], eax
call fcn.004c5d3a
mov eax, dword [ebp - 0x458]
mov dword [esp + 4], str._d:______Got:___s__n
mov dword [esp + 0xc], eax
mov eax, dword [ebp - 0x578]
mov dword [esp + 8], eax
mov eax, dword [ebx + 0x38]
mov dword [esp], eax
call fcn.004c5d3a
mov edi, 1
xor esi, esi
jmp 0x4d82df
mov eax, dword [ebp - 0x578]
mov dword [esp + 4], str.Unknown_operation___s__on_selftest_line__d_n
xor esi, esi
mov edi, 1
mov dword [esp + 0xc], eax
mov eax, dword [ebp - 0x57c]
mov dword [esp + 8], eax
mov eax, dword [sym.imp.msvcrt.dll__iob]
add eax, 0x40
mov dword [esp], eax
call fcn.004c5d3a
mov eax, dword [ebp - 0x554]
dec esi
mov dword [esp], eax
call fcn.00458aaf
cmp esi, 0xffffffff
jne 0x4d81e7
lea eax, [ebp - 0x458]
call fcn.004bdec6
mov eax, dword [ebp - 0x590]
mov dword [esp + 4], str._d_errors_out_of__d_tests_n
mov dword [esp + 0xc], eax
mov eax, dword [ebp - 0x588]
mov dword [esp + 8], eax
mov eax, dword [ebx + 0x38]
mov dword [esp], eax
call fcn.004c5d3a
jmp 0x4da488
mov edi, 1
jmp 0x4da488
cmp edi, 0x73
jne 0x4d92ab
mov eax, dword [ebp - 0x528]
mov ecx, esi
mov edx, str.separator
mov dword [ebp - 0x57c], eax
call fcn.004bb7f6
test eax, eax
jne 0x4d862e
mov eax, dword [ebp - 0x578]
sub eax, 2
cmp eax, 1
jbe 0x4d85ba
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp], str.Usage:_.separator_COL__ROW__n
mov edi, 1
add eax, 0x40
mov dword [esp + 4], eax
call sub.msvcrt.dll_fputs
cmp dword [ebp - 0x578], 1
jne 0x4d85bc
mov edi, 1
jmp 0x4da488
xor edi, edi
mov eax, dword [ebp - 0x524]
mov dword [esp + 0xc], 0x13
mov dword [esp + 8], 0x506cd2
mov dword [esp], 0x14
mov dword [esp + 0x10], eax
lea eax, [ebx + 0xa6]
mov dword [esp + 4], eax
call fcn.0042a3d9
cmp dword [ebp - 0x578], 2
jle 0x4da488
mov eax, dword [ebp - 0x520]
mov dword [esp + 0xc], 0x13
mov dword [esp + 8], 0x506cd2
mov dword [esp], 0x14
mov dword [esp + 0x10], eax
lea eax, [ebx + 0xba]
mov dword [esp + 4], eax
call fcn.0042a3d9
jmp 0x4da488
cmp byte [ebp - 0x580], 0
je 0x4d8d69
mov eax, dword [ebp - 0x57c]
mov ecx, esi
mov edx, str.sha3sum
call fcn.004bb7f6
test eax, eax
jne 0x4d8d72
xor edx, edx
mov eax, ebx
xor edi, edi
call fcn.004cfaa0
mov dword [ebp - 0x584], 0
mov dword [ebp - 0x590], 0xe0
mov dword [ebp - 0x58c], 0
mov dword [ebp - 0x580], 0
mov dword [ebp - 0x588], 1
mov ecx, dword [ebp - 0x578]
cmp dword [ebp - 0x588], ecx
jge 0x4d8819
mov eax, dword [ebp - 0x588]
mov esi, dword [ebp + eax*4 - 0x528]
cmp byte [esi], 0x2d
jne 0x4d879c
cmp byte [esi + 1], 0x2d
lea edx, [esi + 1]
lea eax, [esi + 2]
cmovne eax, edx
mov edx, str.schema
mov dword [ebp - 0x57c], eax
call fcn.004bdf51
test eax, eax
je 0x4d87f8
mov eax, dword [ebp - 0x57c]
mov edx, str.sha3_224
call fcn.004bdf51
test eax, eax
je 0x4d872f
mov eax, dword [ebp - 0x57c]
mov edx, str.sha3_256
call fcn.004bdf51
test eax, eax
je 0x4d872f
mov eax, dword [ebp - 0x57c]
mov edx, str.sha3_384
call fcn.004bdf51
test eax, eax
je 0x4d872f
mov eax, dword [ebp - 0x57c]
mov edx, str.sha3_512
call fcn.004bdf51
test eax, eax
jne 0x4d874b
mov eax, dword [ebp - 0x57c]
add eax, 5
mov dword [esp], eax
call sub.msvcrt.dll_atoi
mov dword [ebp - 0x590], eax
jmp 0x4d880e
mov eax, dword [ebp - 0x57c]
mov edx, str.debug
call fcn.004bdf51
test eax, eax
je 0x4d8804
mov eax, dword [ebp - 0x528]
mov dword [esp + 8], esi
mov dword [esp + 4], str.Unknown_option___s__on___s__n
mov dword [esp + 0xc], eax
mov eax, dword [sym.imp.msvcrt.dll__iob]
add eax, 0x40
mov dword [esp], eax
call fcn.004c5d3a
mov eax, dword [ebx + 0x38]
mov edx, dword [ebp - 0x528]
call fcn.004c5f9d
jmp 0x4d8d5f
test edi, edi
je 0x4d87bd
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp], str.Usage:_.sha3sum__OPTIONS___LIKE_PATTERN__n
add eax, 0x40
mov dword [esp + 4], eax
call sub.msvcrt.dll_fputs
jmp 0x4d8d5f
mov dword [esp + 8], 0x5c
mov dword [esp + 4], esi
mov edi, esi
mov dword [esp], str.sqlite__
call fcn.0040ae9f
mov dword [ebp - 0x58c], 1
test eax, eax
mov eax, dword [ebp - 0x580]
cmove eax, dword [ebp - 0x58c]
mov dword [ebp - 0x580], eax
jmp 0x4d880e
mov dword [ebp - 0x580], 1
jmp 0x4d880e
mov dword [ebp - 0x584], 1
inc dword [ebp - 0x588]
jmp 0x4d8692
cmp dword [ebp - 0x580], 0
mov edx, str.SELECT_lower_name__as_tname_FROM_sqlite_schema_WHERE_typetable_AND_coalesce_rootpage_0__1_UNION_ALL_SELECT_sqlite_schema_ORDER_BY_1_collate_nocase
mov eax, str.SELECT_lower_name__as_tname_FROM_sqlite_schema_WHERE_typetable_AND_coalesce_rootpage_0__1_AND_name_NOT_LIKE_sqlite___ORDER_BY_1_collate_nocase
mov dword [esp + 0x10], 0
mov dword [esp + 8], 0xffffffff
lea esi, [ebp - 0x548]
cmovne eax, edx
lea edx, [ebp - 0x55c]
mov dword [esp + 4], eax
mov eax, dword [ebx]
mov dword [esp + 0xc], edx
mov dword [esp], eax
call fcn.0048b371
lea eax, [ebp - 0x458]
call fcn.004b875f
mov eax, esi
call fcn.004b875f
mov eax, esi
xor ecx, ecx
mov edx, str.WITH__sha3sum_query__a_b__AS_
call fcn.004bdcfd
lea eax, [ebp - 0x458]
mov dword [ebp - 0x580], str.VALUES_
mov dword [ebp - 0x57c], esi
mov dword [ebp - 0x578], eax
mov eax, dword [ebp - 0x55c]
mov dword [esp], eax
call fcn.0047778f
cmp eax, 0x64
mov eax, dword [ebp - 0x55c]
jne 0x4d8a25
mov dword [esp + 4], 0
mov dword [esp], eax
call fcn.0041feb6
test eax, eax
mov esi, eax
je 0x4d8897
test edi, edi
jne 0x4d8913
mov ecx, 7
mov edx, 0x50a604
mov eax, esi
call fcn.004bb7f6
test eax, eax
je 0x4d8931
mov eax, dword [ebp - 0x578]
xor ecx, ecx
mov edx, str.SELECT__FROM
call fcn.004bdcfd
mov eax, dword [ebp - 0x578]
mov ecx, 0x22
mov edx, esi
call fcn.004bdcfd
xor ecx, ecx
mov edx, str._NOT_INDEXED_
jmp 0x4d89b4
mov dword [esp + 8], 0
mov dword [esp + 4], eax
mov dword [esp], edi
call fcn.0040ae9f
test eax, eax
jne 0x4d8897
jmp 0x4d88ce
mov edx, str.sqlite_schema
mov eax, esi
call fcn.004bdf51
test eax, eax
jne 0x4d894a
xor ecx, ecx
mov edx, str.SELECT_type_name_tbl_name_sql_FROM_sqlite_schema_ORDER_BY_name_
jmp 0x4d89b4
mov edx, str.sqlite_sequence
mov eax, esi
call fcn.004bdf51
test eax, eax
jne 0x4d8963
xor ecx, ecx
mov edx, str.SELECT_name_seq_FROM_sqlite_sequence_ORDER_BY_name_
jmp 0x4d89b4
mov edx, str.sqlite_stat1
mov eax, esi
call fcn.004bdf51
test eax, eax
jne 0x4d897c
xor ecx, ecx
mov edx, str.SELECT_tbl_idx_stat_FROM_sqlite_stat1_ORDER_BY_tbl_idx_
jmp 0x4d89b4
mov edx, str.sqlite_stat4
mov eax, esi
call fcn.004bdf51
test eax, eax
jne 0x4d89bf
mov eax, dword [ebp - 0x578]
xor ecx, ecx
mov edx, str.SELECT__FROM
call fcn.004bdcfd
mov eax, dword [ebp - 0x578]
xor ecx, ecx
mov edx, esi
call fcn.004bdcfd
xor ecx, ecx
mov edx, str._ORDER_BY_tbl__idx__rowid__n
mov eax, dword [ebp - 0x578]
call fcn.004bdcfd
mov edx, dword [ebp - 0x580]
mov eax, dword [ebp - 0x57c]
xor ecx, ecx
call fcn.004bdcfd
mov edx, dword [ebp - 0x458]
mov eax, dword [ebp - 0x57c]
mov ecx, 0x27
call fcn.004bdcfd
mov eax, dword [ebp - 0x57c]
xor ecx, ecx
mov edx, 0x507651
mov dword [ebp - 0x454], 0
call fcn.004bdcfd
mov eax, dword [ebp - 0x57c]
mov ecx, 0x27
mov edx, esi
call fcn.004bdcfd
mov dword [ebp - 0x580], 0x50c209
jmp 0x4d8897
mov dword [esp], eax
call fcn.00458aaf
cmp dword [ebp - 0x58c], 0
mov ecx, dword [ebp - 0x590]
mov eax, dword [ebp - 0x548]
mov dword [esp + 8], ecx
mov dword [esp + 4], eax
je 0x4d8a53
mov dword [esp], str._s___SELECT_lower_hex_sha3_query_a__d____AS_hash__b_AS_label___FROM__sha3sum_query_
jmp 0x4d8a5a
mov dword [esp], str._s___SELECT_lower_hex_sha3_query_group_concat_a____d____AS_hash___FROM__sha3sum_query_
call fcn.004440e8
mov esi, eax
call fcn.004bd956
lea eax, [ebp - 0x458]
call fcn.004bdec6
lea eax, [ebp - 0x548]
call fcn.004bdec6
cmp dword [ebp - 0x584], 0
je 0x4d8ade
mov eax, dword [ebx + 0x38]
mov dword [esp + 8], esi
mov dword [esp + 4], 0x508cd3
mov dword [esp], eax
call fcn.004c5d3a
test edi, edi
jne 0x4d8b1e
mov dword [esp + 4], 0x506d14
mov dword [esp], str.SELECT_lower_name__as_tname_FROM_sqlite_schema_nWHERE_typetable_AND_coalesce_rootpage_0__1_nAND_name_NOT_LIKE_sqlite____s_nORDER_BY_1_collate_nocase
call fcn.004440e8
mov dword [esp], str.with_tabcols_as_materialized__nselect_tname__cname_nfrom___select_ss.tname_as_tname__ti.name_as_cname_n_from___z__ss_n_inner_join_pragma_table_info_tname__ti___nselect_SELECT_total_bad_text_count__AS_bad_text_count_nFROM__group_concat_query___UNION_ALL____as_btc_query_n_from__select_SELECT_COUNT___AS_bad_text_count_nFROM_tname_WHERE__ngroup_concat_CAST_CAST_cname_AS_BLOB__AS_TEXT___cname_n__AND_typeof_cname_text___n_OR___as_query__tname_from_tabcols_group_by_tname_
mov dword [esp + 4], eax
call fcn.004440e8
mov dword [ebp - 0x578], eax
call fcn.004bd956
cmp dword [ebp - 0x584], 0
je 0x4d8b6a
jmp 0x4d8b4d
xor ecx, ecx
mov edx, esi
mov eax, ebx
call fcn.004cc607
test edi, edi
je 0x4d8aa0
mov dword [esp + 4], str._AND_name_LIKE__tspec
mov dword [esp], str.SELECT_lower_name__as_tname_FROM_sqlite_schema_nWHERE_typetable_AND_coalesce_rootpage_0__1_nAND_name_NOT_LIKE_sqlite____s_nORDER_BY_1_collate_nocase
call fcn.004440e8
mov dword [esp], str.with_tabcols_as_materialized__nselect_tname__cname_nfrom___select_ss.tname_as_tname__ti.name_as_cname_n_from___z__ss_n_inner_join_pragma_table_info_tname__ti___nselect_SELECT_total_bad_text_count__AS_bad_text_count_nFROM__group_concat_query___UNION_ALL____as_btc_query_n_from__select_SELECT_COUNT___AS_bad_text_count_nFROM_tname_WHERE__ngroup_concat_CAST_CAST_cname_AS_BLOB__AS_TEXT___cname_n__AND_typeof_cname_text___n_OR___as_query__tname_from_tabcols_group_by_tname_
mov dword [esp + 4], eax
call fcn.004440e8
mov dword [ebp - 0x578], eax
call fcn.004bd956
jmp 0x4d8b6a
mov dword [esp + 4], str._AND_name_LIKE__tspec
mov dword [esp], str.SELECT_lower_name__as_tname_FROM_sqlite_schema_nWHERE_typetable_AND_coalesce_rootpage_0__1_nAND_name_NOT_LIKE_sqlite____s_nORDER_BY_1_collate_nocase
call fcn.004440e8
mov dword [esp], str.with_tabcols_as_materialized__nselect_tname__cname_nfrom___select_ss.tname_as_tname__ti.name_as_cname_n_from___z__ss_n_inner_join_pragma_table_info_tname__ti___nselect_SELECT_total_bad_text_count__AS_bad_text_count_nFROM__group_concat_query___UNION_ALL____as_btc_query_n_from__select_SELECT_COUNT___AS_bad_text_count_nFROM_tname_WHERE__ngroup_concat_CAST_CAST_cname_AS_BLOB__AS_TEXT___cname_n__AND_typeof_cname_text___n_OR___as_query__tname_from_tabcols_group_by_tname_
mov dword [esp + 4], eax
call fcn.004440e8
mov dword [ebp - 0x578], eax
call fcn.004bd956
mov eax, dword [ebp - 0x578]
mov dword [esp + 4], 0x508cd3
mov dword [esp + 8], eax
mov eax, dword [ebx + 0x38]
mov dword [esp], eax
call fcn.004c5d3a
lea eax, [ebp - 0x55c]
mov dword [esp + 0x10], 0
mov dword [esp + 8], 0xffffffff
mov dword [esp + 0xc], eax
mov eax, dword [ebp - 0x578]
mov dword [esp + 4], eax
mov eax, dword [ebx]
mov dword [esp], eax
call fcn.0048b371
test eax, eax
jne 0x4d8d27
test edi, edi
je 0x4d8bce
mov eax, dword [ebp - 0x55c]
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0xffffffff
mov dword [esp + 8], edi
mov dword [esp + 4], 1
mov dword [esp], eax
call fcn.0042e1f2
mov eax, dword [ebp - 0x55c]
mov dword [esp], eax
call fcn.0047778f
cmp eax, 0x64
je 0x4d8be8
xor edi, edi
jmp 0x4d8d44
mov eax, dword [ebp - 0x55c]
mov dword [esp + 4], 0
mov dword [esp], eax
call fcn.0041feb6
mov edi, eax
lea eax, [ebp - 0x554]
mov dword [esp + 0x10], 0
mov dword [esp + 8], 0xffffffff
mov dword [esp + 4], edi
mov dword [esp + 0xc], eax
mov eax, dword [ebx]
mov dword [esp], eax
call fcn.0048b371
cmp dword [ebp - 0x584], 0
je 0x4d8c54
mov edx, dword [ebx + 0x38]
mov dword [esp + 8], edi
mov dword [esp + 4], 0x508cd3
mov dword [ebp - 0x57c], eax
mov dword [esp], edx
call fcn.004c5d3a
mov eax, dword [ebp - 0x57c]
test eax, eax
mov edi, 1
jne 0x4d8d11
mov eax, dword [ebp - 0x554]
mov dword [esp], eax
call fcn.0047778f
cmp eax, 0x64
jne 0x4d8d01
mov eax, dword [ebp - 0x554]
mov dword [esp + 4], 0
mov dword [esp], eax
call fcn.0042ed98
fldz
fxch st(1)
fucomi st(1)
fstp st(1)
jbe 0x4d8cff
fadd dword [0x514b68]
fnstcw word [ebp - 0x56a]
mov ax, word [ebp - 0x56a]
mov ecx, 0x50977a
mov edx, 0x506d14
mov dword [esp + 4], str.Digest_includes__d_invalidly_encoded_text_field_s._n
or ah, 0xc
mov word [ebp - 0x56c], ax
fldcw word [ebp - 0x56c]
fistp dword [ebp - 0x570]
fldcw word [ebp - 0x56a]
mov eax, dword [ebp - 0x570]
cmp eax, 2
mov dword [esp + 8], eax
mov eax, dword [sym.imp.msvcrt.dll__iob]
cmovge edx, ecx
mov dword [esp + 0xc], edx
add eax, 0x40
mov dword [esp], eax
call fcn.004c5d3a
jmp 0x4d8d01
fstp st(0)
mov eax, dword [ebp - 0x554]
xor edi, edi
mov dword [esp], eax
call fcn.00458aaf
mov eax, dword [ebp - 0x55c]
mov dword [esp], eax
call fcn.00458aaf
test edi, edi
je 0x4d8be1
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp + 4], str..sha3sum_failed._n
mov edi, 1
add eax, 0x40
mov dword [esp], eax
call fcn.004c5d3a
mov eax, dword [ebp - 0x578]
mov dword [esp], eax
call fcn.0040b268
mov dword [esp], esi
call fcn.0040b268
jmp 0x4da488
mov edi, 1
jmp 0x4da488
cmp edi, 0x73
jne 0x4d92ab
mov eax, dword [ebp - 0x57c]
mov ecx, esi
mov edx, str.shell
call fcn.004bb7f6
test eax, eax
je 0x4d8da2
mov eax, dword [ebp - 0x57c]
mov ecx, esi
mov edx, str.system
call fcn.004bb7f6
test eax, eax
jne 0x4d8eb8
mov eax, dword [ebp - 0x57c]
mov dword [esp + 4], str.cannot_run_._s_in_safe_mode
mov dword [esp], ebx
mov dword [esp + 8], eax
call fcn.004c83de
cmp dword [ebp - 0x578], 1
jne 0x4d8de7
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp], str.Usage:_.system_COMMAND_n
mov edi, 1
add eax, 0x40
mov dword [esp + 4], eax
call sub.msvcrt.dll_fputs
jmp 0x4da488
mov esi, dword [ebp - 0x524]
mov dword [esp + 4], 0x20
mov dword [esp], esi
call sub.msvcrt.dll_strchr
mov edx, 0x506d0a
test eax, eax
mov eax, str.__s_
cmove eax, edx
mov dword [esp + 4], esi
mov esi, 2
mov dword [esp], eax
call fcn.004440e8
mov edi, eax
cmp esi, dword [ebp - 0x578]
jge 0x4d8e72
test edi, edi
je 0x4d8e72
mov ecx, dword [ebp + esi*4 - 0x528]
mov dword [esp + 4], 0x20
mov dword [esp], ecx
mov dword [ebp - 0x57c], ecx
call sub.msvcrt.dll_strchr
mov ecx, dword [ebp - 0x57c]
test eax, eax
mov edx, str._z__s
mov eax, str._z___s_
mov dword [esp + 4], edi
cmove eax, edx
inc esi
mov dword [esp + 8], ecx
mov dword [esp], eax
call fcn.004440e8
mov edi, eax
jmp 0x4d8e1f
test edi, edi
mov esi, 1
je 0x4d8e85
mov dword [esp], edi
call sub.msvcrt.dll_system
mov esi, eax
mov dword [esp], edi
call fcn.0040b268
test esi, esi
je 0x4da583
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp + 8], esi
xor edi, edi
mov dword [esp + 4], str.System_command_returns__d_n
add eax, 0x40
mov dword [esp], eax
call sub.msvcrt.dll_fprintf
jmp 0x4da488
mov eax, dword [ebp - 0x57c]
mov ecx, esi
mov edx, str.show
call fcn.004bb7f6
test eax, eax
jne 0x4d91f5
cmp dword [ebp - 0x578], 1
je 0x4d8efd
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp], str.Usage:_.show_n
mov edi, 1
add eax, 0x40
mov dword [esp + 4], eax
call sub.msvcrt.dll_fputs
jmp 0x4da488
mov eax, dword [ebx + 0x6c]
mov dword [esp + 8], str.echo
mov dword [esp + 4], str._12.12s:__s_n
shr eax, 6
and eax, 1
mov eax, dword [eax*4 + 0x5104c0]
mov dword [esp + 0xc], eax
mov eax, dword [ebx + 0x38]
mov dword [esp], eax
call fcn.004c5d3a
mov al, byte [ebx + 5]
mov dword [esp + 8], 0x50cb1c
mov dword [esp + 4], str._12.12s:__s_n
and eax, 3
mov eax, dword [eax*4 + 0x5104c0]
mov dword [esp + 0xc], eax
mov eax, dword [ebx + 0x38]
mov dword [esp], eax
call fcn.004c5d3a
cmp dword [ebx + 0x44], 9
mov eax, 0x5095fe
je 0x4d8f74
cmp byte [ebx + 4], 0
mov edx, str.auto
mov eax, 0x509605
cmovne eax, edx
mov dword [esp + 0xc], eax
mov eax, dword [ebx + 0x38]
mov dword [esp + 8], str.explain
mov dword [esp + 4], str._12.12s:__s_n
mov dword [esp], eax
call fcn.004c5d3a
xor eax, eax
cmp dword [ebx + 0x58], 0
mov dword [esp + 8], str.headers
mov dword [esp + 4], str._12.12s:__s_n
setne al
mov eax, dword [eax*4 + 0x5104c0]
mov dword [esp + 0xc], eax
mov eax, dword [ebx + 0x38]
mov dword [esp], eax
call fcn.004c5d3a
mov eax, dword [ebx + 0x44]
lea edx, [eax - 0xe]
mov ecx, dword [eax*4 + 0x5148e0]
cmp edx, 2
mov edx, dword [ebx + 0x38]
jbe 0x4d8fda
dec eax
jne 0x4d902b
cmp byte [ebx + 0x14], 0
mov esi, 0x509609
mov eax, 0x506d14
mov dword [esp + 0xc], ecx
mov dword [esp + 8], str.mode
mov dword [esp + 4], str._12.12s:__s___wrap__d___wordwrap__s____squote_n
mov dword [esp], edx
cmove eax, esi
cmp byte [ebx + 0x15], 0
mov esi, 0x5095fe
mov edi, eax
mov eax, 0x509605
mov dword [esp + 0x18], edi
cmovne eax, esi
mov dword [esp + 0x14], eax
mov eax, dword [ebx + 0x10]
mov dword [esp + 0x10], eax
call fcn.004c5d3a
jmp 0x4d9047
mov dword [esp + 0xc], ecx
mov dword [esp + 8], str.mode
mov dword [esp + 4], str._12.12s:__s_n
mov dword [esp], edx
call fcn.004c5d3a
mov eax, dword [ebx + 0x38]
mov dword [esp + 8], str.nullvalue
lea edi, [ebx + 0x118]
mov dword [esp + 4], str._12.12s:
mov dword [esp], eax
call fcn.004c5d3a
mov eax, dword [ebx + 0x38]
lea edx, [ebx + 0x104]
call fcn.004be350
mov eax, dword [ebx + 0x38]
mov dword [esp], 0xa
mov dword [esp + 4], eax
call sub.msvcrt.dll_fputc
mov eax, edi
call fcn.004b442b
test eax, eax
mov eax, str.stdout
mov dword [esp + 8], str.output
cmovne eax, edi
mov dword [esp + 4], str._12.12s:__s_n
mov dword [esp + 0xc], eax
mov eax, dword [ebx + 0x38]
mov dword [esp], eax
call fcn.004c5d3a
mov eax, dword [ebx + 0x38]
mov dword [esp + 8], str.colseparator
mov dword [esp + 4], str._12.12s:
mov dword [esp], eax
call fcn.004c5d3a
mov eax, dword [ebx + 0x38]
lea edx, [ebx + 0xa6]
call fcn.004be350
mov eax, dword [ebx + 0x38]
mov dword [esp], 0xa
mov dword [esp + 4], eax
call sub.msvcrt.dll_fputc
mov eax, dword [ebx + 0x38]
mov dword [esp + 8], str.rowseparator
mov dword [esp + 4], str._12.12s:
mov dword [esp], eax
call fcn.004c5d3a
mov eax, dword [ebx + 0x38]
lea edx, [ebx + 0xba]
call fcn.004be350
mov eax, dword [ebx + 0x38]
mov dword [esp], 0xa
mov dword [esp + 4], eax
call sub.msvcrt.dll_fputc
mov edx, dword [ebx + 0x18]
mov eax, 0x5095fe
cmp edx, 3
ja 0x4d9145
mov eax, dword [edx*4 + 0x50fc50]
mov dword [esp + 0xc], eax
mov eax, dword [ebx + 0x38]
xor esi, esi
mov dword [esp + 8], str.stats
mov dword [esp + 4], str._12.12s:__s_n
mov dword [esp], eax
call fcn.004c5d3a
mov eax, dword [ebx + 0x38]
mov dword [esp + 8], str.width
mov dword [esp + 4], str._12.12s:
mov dword [esp], eax
call fcn.004c5d3a
cmp esi, dword [ebx + 0x100]
mov eax, dword [ebx + 0x38]
jge 0x4d91ac
mov edx, dword [ebx + 0xf8]
mov edx, dword [edx + esi*4]
mov dword [esp + 4], 0x50f0c6
inc esi
mov dword [esp], eax
mov dword [esp + 8], edx
call sub.msvcrt.dll_fprintf
jmp 0x4d9181
mov dword [esp + 4], eax
mov dword [esp], 0xa
call sub.msvcrt.dll_fputc
mov eax, dword [ebx + 0x3b4]
mov edx, 0x506d14
mov eax, dword [eax + 4]
mov dword [esp + 8], str.filename
mov dword [esp + 4], str._12.12s:__s_n
test eax, eax
cmove eax, edx
xor edi, edi
mov dword [esp + 0xc], eax
mov eax, dword [ebx + 0x38]
mov dword [esp], eax
call fcn.004c5d3a
jmp 0x4da488
mov eax, dword [ebp - 0x57c]
mov ecx, esi
mov edx, str.stats
call fcn.004bb7f6
test eax, eax
jne 0x4d92ab
cmp dword [ebp - 0x578], 2
jne 0x4d9270
mov esi, dword [ebp - 0x524]
mov edx, str.stmt
mov eax, esi
call fcn.004bdf51
test eax, eax
jne 0x4d923c
mov dword [ebx + 0x18], 2
xor edi, edi
jmp 0x4da488
mov edx, str.vmstep
mov eax, esi
call fcn.004bdf51
test eax, eax
jne 0x4d925a
mov dword [ebx + 0x18], 3
xor edi, edi
jmp 0x4da488
mov eax, esi
xor edi, edi
call fcn.004c858a
and eax, 0xff
mov dword [ebx + 0x18], eax
jmp 0x4da488
cmp dword [ebp - 0x578], 1
jne 0x4d9289
mov eax, dword [ebx]
mov edx, ebx
xor edi, edi
call fcn.004ca10b
jmp 0x4da488
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp], str.Usage:_.stats__onoffstmtvmstep__n
mov edi, 1
add eax, 0x40
mov dword [esp + 4], eax
call sub.msvcrt.dll_fputs
jmp 0x4da488
cmp byte [ebp - 0x58c], 0
mov eax, dword [ebp - 0x528]
mov dword [ebp - 0x57c], eax
je 0x4d92de
cmp byte [ebp - 0x584], 0
je 0x4d92de
mov ecx, esi
mov edx, str.tables
call fcn.004bb7f6
test eax, eax
je 0x4d9317
jmp 0x4d978f
cmp edi, 0x69
jne 0x4d9786
mov eax, dword [ebp - 0x57c]
mov ecx, esi
mov edx, str.indices
call fcn.004bb7f6
test eax, eax
je 0x4d9317
mov eax, dword [ebp - 0x57c]
mov ecx, esi
mov edx, str.indexes
call fcn.004bb7f6
test eax, eax
jne 0x4d9830
lea eax, [ebp - 0x458]
call fcn.004b875f
xor edx, edx
mov eax, ebx
call fcn.004cfaa0
lea eax, [ebp - 0x548]
mov dword [esp + 0x10], 0
mov dword [esp + 8], 0xffffffff
mov dword [esp + 4], str.PRAGMA_database_list
mov dword [esp + 0xc], eax
mov eax, dword [ebx]
mov dword [esp], eax
call fcn.0048b371
test eax, eax
je 0x4d936e
mov eax, dword [ebp - 0x548]
mov dword [esp], eax
call fcn.00458aaf
jmp 0x4d94f4
cmp dword [ebp - 0x578], 2
jle 0x4d93c2
cmp edi, 0x69
jne 0x4d93c2
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp], str.Usage:_.indexes__LIKE_PATTERN__n
mov edi, 1
add eax, 0x40
mov dword [esp + 4], eax
call sub.msvcrt.dll_fputs
mov eax, dword [ebp - 0x548]
mov dword [esp], eax
call fcn.00458aaf
jmp 0x4da488
mov dword [esp + 4], 1
mov dword [esp], eax
call fcn.0041feb6
test eax, eax
mov esi, eax
jne 0x4d93e0
mov eax, dword [ebp - 0x548]
mov dword [esp], eax
call fcn.0047778f
cmp eax, 0x64
mov eax, dword [ebp - 0x548]
je 0x4d93ac
jmp 0x4d9495
mov eax, dword [ebp - 0x458]
test eax, eax
je 0x4d9401
cmp byte [eax], 0
je 0x4d9401
lea eax, [ebp - 0x458]
xor ecx, ecx
mov edx, str._UNION_ALL
call fcn.004bdcfd
mov dword [esp + 4], str.main
mov dword [esp], esi
call fcn.004019f3
xor ecx, ecx
test eax, eax
mov edx, str.SELECT_name_FROM
je 0x4d9445
lea eax, [ebp - 0x458]
mov edx, 0x50a6f2
call fcn.004bdcfd
lea eax, [ebp - 0x458]
mov ecx, 0x27
mov edx, esi
call fcn.004bdcfd
xor ecx, ecx
mov edx, str..name_FROM
lea eax, [ebp - 0x458]
call fcn.004bdcfd
lea eax, [ebp - 0x458]
mov ecx, 0x22
mov edx, esi
call fcn.004bdcfd
lea eax, [ebp - 0x458]
xor ecx, ecx
mov edx, str..sqlite_schema
call fcn.004bdcfd
xor ecx, ecx
cmp edi, 0x74
mov edx, str._WHERE_type_IN__table_view____AND_name_NOT_LIKE_sqlite_____AND_name_LIKE__1
je 0x4d9485
mov edx, str._WHERE_typeindex___AND_tbl_name_LIKE__1
lea eax, [ebp - 0x458]
call fcn.004bdcfd
jmp 0x4d93c2
mov dword [esp], eax
call fcn.00458aaf
test eax, eax
mov edi, eax
jne 0x4d94e5
lea eax, [ebp - 0x458]
xor ecx, ecx
mov edx, str._ORDER_BY_1
call fcn.004bdcfd
lea eax, [ebp - 0x548]
mov dword [esp + 0x10], 0
mov dword [esp + 8], 0xffffffff
mov dword [esp + 0xc], eax
mov eax, dword [ebp - 0x458]
mov dword [esp + 4], eax
mov eax, dword [ebx]
mov dword [esp], eax
call fcn.0048b371
mov edi, eax
lea eax, [ebp - 0x458]
call fcn.004bdec6
test edi, edi
je 0x4d9506
mov eax, dword [ebx]
call fcn.004ede85
mov dword [ebp - 0x57c], eax
jmp 0x4da5b3
cmp dword [ebp - 0x578], 1
mov eax, dword [ebp - 0x548]
je 0x4d9531
mov edx, dword [ebp - 0x524]
mov dword [esp + 0x10], 0xffffffff
mov dword [esp + 0xc], 0xffffffff
mov dword [esp + 8], edx
jmp 0x4d9549
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0xffffffff
mov dword [esp + 8], 0x50f1f7
mov dword [esp + 4], 1
mov dword [esp], eax
xor esi, esi
call fcn.0042e1f2
mov dword [ebp - 0x57c], 0
mov dword [ebp - 0x578], 0
mov eax, dword [ebp - 0x548]
mov dword [esp], eax
call fcn.0047778f
cmp eax, 0x64
jne 0x4d9609
mov ecx, dword [ebp - 0x57c]
cmp dword [ebp - 0x578], ecx
jl 0x4d95bc
lea eax, [ecx + ecx + 0xa]
mov dword [esp], esi
mov dword [esp + 8], 0
mov dword [ebp - 0x57c], eax
shl eax, 2
mov dword [esp + 4], eax
call fcn.0043a8e9
mov esi, eax
call fcn.004bd956
mov eax, dword [ebp - 0x578]
mov dword [esp + 4], 0
lea edx, [esi + eax*4]
mov eax, dword [ebp - 0x548]
mov dword [ebp - 0x580], edx
mov dword [esp], eax
call fcn.0041feb6
mov dword [esp], 0x506d0a
mov dword [esp + 4], eax
call fcn.004440e8
mov edx, dword [ebp - 0x580]
mov dword [edx], eax
call fcn.004bd956
inc dword [ebp - 0x578]
jmp 0x4d956f
mov eax, dword [ebp - 0x548]
mov dword [esp], eax
call fcn.00458aaf
test eax, eax
je 0x4d9624
mov eax, dword [ebx]
call fcn.004ede85
mov edi, eax
test edi, edi
jne 0x4d9631
cmp dword [ebp - 0x578], 0
jg 0x4d9638
xor eax, eax
jmp 0x4d9757
mov dword [ebp - 0x580], 0
mov dword [ebp - 0x57c], 0
mov eax, dword [ebp - 0x580]
mov eax, dword [esi + eax*4]
call fcn.004b442b
cmp dword [ebp - 0x57c], eax
cmovge eax, dword [ebp - 0x57c]
inc dword [ebp - 0x580]
mov ecx, dword [ebp - 0x580]
cmp dword [ebp - 0x578], ecx
mov dword [ebp - 0x57c], eax
jg 0x4d964c
lea ecx, [eax + 2]
mov eax, 0x50
mov dword [ebp - 0x584], 0
cdq
idiv ecx
mov ecx, 1
test eax, eax
cmovg ecx, eax
mov eax, dword [ebp - 0x578]
lea eax, [eax + ecx - 1]
cdq
idiv ecx
mov dword [ebp - 0x588], eax
mov ecx, dword [ebp - 0x588]
cmp dword [ebp - 0x584], ecx
je 0x4d9631
mov eax, dword [ebp - 0x584]
mov dword [ebp - 0x580], eax
mov ecx, dword [ebp - 0x580]
cmp dword [ebp - 0x578], ecx
jle 0x4d9739
mov eax, dword [ebp - 0x580]
mov edx, dword [ebp - 0x588]
mov ecx, 0x506d14
cmp dword [ebp - 0x580], edx
mov edx, 0x5094bc
mov eax, dword [esi + eax*4]
mov dword [esp + 4], str._s__s
cmovl edx, ecx
test eax, eax
mov dword [esp + 8], edx
cmove eax, ecx
mov dword [esp + 0x10], eax
mov eax, dword [ebp - 0x57c]
mov dword [esp + 0xc], eax
mov eax, dword [ebx + 0x38]
mov dword [esp], eax
call fcn.004c5d3a
mov ecx, dword [ebp - 0x588]
add dword [ebp - 0x580], ecx
jmp 0x4d96d1
mov eax, dword [ebx + 0x38]
mov dword [esp], 0xa
mov dword [esp + 4], eax
call sub.msvcrt.dll_fputc
inc dword [ebp - 0x584]
jmp 0x4d96b3
cmp dword [ebp - 0x578], eax
je 0x4d9779
mov edx, dword [esi + eax*4]
mov dword [ebp - 0x57c], eax
mov dword [esp], edx
call fcn.0040b268
mov eax, dword [ebp - 0x57c]
inc eax
jmp 0x4d9757
mov dword [esp], esi
call fcn.0040b268
jmp 0x4da488
cmp edi, 0x74
jne 0x4d9830
mov eax, dword [ebp - 0x528]
mov edx, str.testcase
call fcn.004bdf51
test eax, eax
jne 0x4d9830
mov eax, ebx
call fcn.004ca025
xor edx, edx
mov eax, str.testcase_out.txt
call fcn.004edeb6
test eax, eax
mov dword [ebx + 0x38], eax
jne 0x4d97d9
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp], str.Error:_cannot_open_testcase_out.txt_n
add eax, 0x40
mov dword [esp + 4], eax
call sub.msvcrt.dll_fputs
cmp dword [ebp - 0x578], 1
lea eax, [ebx + 0x88]
je 0x4d9811
mov edx, dword [ebp - 0x524]
mov dword [esp + 8], 0x506d0a
xor edi, edi
mov dword [esp + 4], eax
mov dword [esp], 0x1e
mov dword [esp + 0xc], edx
call fcn.0042a3d9
jmp 0x4da488
mov dword [esp + 8], 0x50f230
mov dword [esp + 4], eax
xor edi, edi
mov dword [esp], 0x1e
call fcn.0042a3d9
jmp 0x4da488
cmp esi, 7
jle 0x4d9daf
cmp byte [ebp - 0x584], 0
je 0x4d9daf
mov eax, dword [ebp - 0x528]
mov ecx, esi
mov edx, str.testctrl
call fcn.004bb7f6
test eax, eax
jne 0x4d9daf
test byte [ebx + 0x6d], 4
jne 0x4d9890
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp + 8], str.testctrl
mov edi, 1
mov dword [esp + 4], str.._s_unavailable_without___unsafe_testing_n
add eax, 0x40
mov dword [esp], eax
call fcn.004c5d3a
jmp 0x4da488
xor edx, edx
mov eax, ebx
mov edi, str.help
call fcn.004cfaa0
cmp dword [ebp - 0x578], 1
cmovne edi, dword [ebp - 0x524]
cmp byte [edi], 0x2d
jne 0x4d98d0
mov dl, byte [edi + 1]
test dl, dl
je 0x4d98d0
cmp dl, 0x2d
lea eax, [edi + 1]
jne 0x4d98ce
cmp byte [edi + 2], 0
lea edx, [edi + 2]
mov edi, edx
cmove edi, eax
jmp 0x4d98d0
mov edi, eax
mov edx, str.help
mov eax, edi
call fcn.004bdf51
test eax, eax
jne 0x4d992a
mov eax, dword [ebx + 0x38]
mov dword [esp + 4], str.Available_test_controls:_n
mov edi, 0x5103c0
mov esi, 0x5104c0
mov dword [esp], eax
call fcn.004c5d3a
mov eax, dword [edi + 0xc]
add edi, 0x10
mov dword [esp + 0xc], eax
mov eax, dword [edi - 0x10]
mov dword [esp + 4], str.__.testctrl__s__s_n
mov dword [esp + 8], eax
mov eax, dword [ebx + 0x38]
mov dword [esp], eax
call fcn.004c5d3a
cmp esi, edi
jne 0x4d98fd
jmp 0x4d85b0
mov eax, edi
or esi, 0xffffffff
call fcn.004b442b
mov dword [ebp - str.always], 0x5103c0
mov dword [ebp - 0x588], eax
mov dword [ebp - 0x580], 0
mov dword [ebp - 0x57c], 0xffffffff
mov eax, dword [ebp - 0x584]
mov ecx, dword [ebp - 0x588]
mov edx, dword [eax]
mov eax, edi
call fcn.004bb7f6
test eax, eax
jne 0x4d99b2
test esi, esi
jns 0x4d998c
mov eax, dword [ebp - 0x584]
mov esi, dword [eax + 4]
mov eax, dword [ebp - 0x580]
mov dword [ebp - 0x57c], eax
jmp 0x4d99b2
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp + 8], edi
mov edi, 1
mov dword [esp + 4], str.Error:_ambiguous_test_control:___s__nUse__.testctrl___help__for_help_n
add eax, 0x40
mov dword [esp], eax
call fcn.004c5d3a
jmp 0x4da488
inc dword [ebp - 0x580]
add dword [ebp - 0x584], 0x10
cmp dword [ebp - 0x580], 0x10
jne 0x4d9958
test esi, esi
jns 0x4d99ed
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp + 8], edi
mov dword [esp + 4], str.Error:_unknown_test_control:__s_nUse__.testctrl___help__for_help_n
add eax, 0x40
mov dword [esp], eax
call fcn.004c5d3a
jmp case.0x4d9a3f.7
mov eax, dword [ebp - 0x57c]
shl eax, 4
cmp dword [eax + 0x5103c8], 0
je 0x4d9a33
cmp byte [ebx + 0xd], 0
je 0x4d9a33
mov eax, dword [eax + 0x5103c0]
mov dword [esp + 4], str.line__d:__.testctrl__s__may_not_be_used_in_safe_mode_n
mov dword [esp + 0xc], eax
mov eax, dword [ebx + 0x2c]
mov dword [esp + 8], eax
mov eax, dword [sym.imp.msvcrt.dll__iob]
add eax, 0x40
mov dword [esp], eax
call fcn.004c5d3a
jmp 0x4d5edc
lea eax, [esi - 5]
cmp eax, 0x19
ja case.0x4d9a3f.7
jmp dword [eax*4 + 0x50f5e4]
cmp dword [ebp - 0x578], 3
jne case.0x4d9a3f.7
mov eax, dword [ebp - 0x520]
mov dword [esp + 8], 0
mov dword [esp + 4], 0
mov dword [esp], eax
call sub.msvcrt.dll_strtol
mov dword [esp + 8], eax
mov eax, dword [ebx]
mov dword [esp], 0xf
mov dword [esp + 4], eax
jmp 0x4d9d14
cmp dword [ebp - 0x578], 2
jne case.0x4d9a3f.7
mov dword [esp], esi
call fcn.004b188d
xor edx, edx
cmp esi, 0x16
setne dl
lea edx, [edx + edx + 1]
jmp 0x4d9d22
cmp dword [ebp - 0x578], 3
jne case.0x4d9a3f.7
mov eax, dword [ebp - 0x520]
call fcn.004bca70
mov dword [esp], 0xb
mov dword [esp + 4], eax
call fcn.004b188d
mov edx, 3
jmp 0x4d9d22
mov eax, dword [ebp - 0x578]
sub eax, 3
cmp eax, 1
ja case.0x4d9a3f.7
mov eax, dword [ebp - 0x520]
call fcn.004bca70
test eax, eax
mov dword [ebp - 0x458], eax
jne 0x4d9b46
mov eax, dword [ebp - 0x520]
mov edx, str.random
call fcn.004bdf51
test eax, eax
jne 0x4d9b46
lea eax, [ebp - 0x458]
mov dword [esp], 4
mov dword [esp + 4], eax
call fcn.00449f7b
mov eax, dword [ebp - 0x458]
mov dword [esp], str.___random_seed:__d_n
mov dword [esp + 4], eax
call sub.msvcrt.dll_printf
xor esi, esi
cmp dword [ebp - 0x578], 3
je 0x4d9b9b
mov esi, dword [ebx]
mov dword [esp + 0x20], 0
mov dword [esp + 0x1c], 0
mov dword [esp + 0x18], 0
mov dword [esp + 0x14], 0
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0x50e98b
mov dword [esp + 4], 0
mov dword [esp], esi
call fcn.00490c89
mov eax, dword [ebp - 0x458]
mov dword [esp + 8], esi
mov dword [esp], 0x1c
mov dword [esp + 4], eax
jmp 0x4d9d14
cmp dword [ebp - 0x578], 3
jne case.0x4d9a3f.7
mov eax, dword [ebp - 0x520]
call fcn.004c858a
mov dword [esp], esi
mov dword [esp + 4], eax
call fcn.004b188d
mov edx, 1
jmp 0x4d9d22
cmp dword [ebp - 0x578], 3
jne case.0x4d9a3f.7
mov eax, dword [ebp - 0x520]
call fcn.004c858a
mov dword [esp], esi
mov dword [esp + 4], eax
jmp 0x4d9ad0
mov eax, dword [ebx]
mov dword [esp], 0x11
mov dword [esp + 4], eax
jmp 0x4d9ad0
cmp dword [ebp - 0x578], 5
jne case.0x4d9a3f.7
mov eax, dword [ebp - 0x518]
call fcn.004bca70
mov dword [ebp - 0x578], eax
mov eax, dword [ebp - 0x51c]
mov dword [ebp - 0x574], edx
call fcn.004bca70
mov dword [esp + 0xc], eax
mov eax, dword [ebp - 0x578]
mov dword [esp + 0x10], edx
mov edx, dword [ebp - 0x574]
mov dword [esp], 0x19
mov dword [esp + 0x14], eax
mov eax, dword [ebp - 0x520]
mov dword [esp + 0x18], edx
mov dword [esp + 8], eax
mov eax, dword [ebx]
mov dword [esp + 4], eax
call fcn.004b188d
jmp 0x4d9ad5
lea eax, [ebp - 0x458]
mov dword [esp], 0x1e
mov dword [ebp - 0x458], 0
mov dword [ebp - 0x454], 0
mov dword [esp + 8], eax
mov eax, dword [ebx]
mov dword [esp + 4], eax
call fcn.004b188d
mov edx, dword [ebp - 0x454]
mov dword [ebp - 0x578], eax
mov eax, dword [ebp - 0x458]
mov dword [esp + 4], str._llu_n
mov dword [esp + 0xc], edx
mov edx, dword [ebx + 0x38]
mov dword [esp + 8], eax
mov dword [esp], edx
call fcn.004c5d3a
mov edx, 3
mov eax, dword [ebp - 0x578]
jmp 0x4d9d22
cmp dword [ebp - 0x578], 3
jne case.0x4d9a3f.7
mov eax, dword [ebp - 0x520]
call fcn.004bca70
mov dword [esp + 8], eax
mov eax, dword [ebx]
mov dword [esp], 0x18
mov dword [esp + 4], eax
call fcn.004b188d
jmp 0x4d9ad5
xor edx, edx
xor eax, eax
test edx, edx
jne 0x4d9d65
mov ecx, dword [ebp - 0x57c]
sub ecx, 0
js 0x4d9d65
mov eax, dword [ebp - 0x57c]
mov dword [esp + 8], edi
mov edi, 1
mov dword [esp + 4], str.Usage:_.testctrl__s__s_n
shl eax, 4
mov eax, dword [eax + 0x5103cc]
mov dword [esp + 0xc], eax
mov eax, dword [ebx + 0x38]
mov dword [esp], eax
call fcn.004c5d3a
jmp 0x4da488
cmp edx, 1
jne 0x4d9d88
mov dword [esp + 8], eax
mov eax, dword [ebx + 0x38]
xor edi, edi
mov dword [esp + 4], 0x50cd0f
mov dword [esp], eax
call sub.msvcrt.dll_fprintf
jmp 0x4da488
cmp edx, 2
jne 0x4da583
mov dword [esp + 8], eax
mov eax, dword [ebx + 0x38]
xor edi, edi
mov dword [esp + 4], str.0x_08x_n
mov dword [esp], eax
call sub.msvcrt.dll_fprintf
jmp 0x4da488
cmp byte [ebp - 0x590], 0
mov eax, dword [ebp - 0x528]
mov dword [ebp - 0x57c], eax
je 0x4d9ee9
cmp byte [ebp - 0x584], 0
je 0x4d9ee9
mov ecx, esi
mov edx, str.timeout
call fcn.004bb7f6
test eax, eax
jne 0x4d9e25
mov dword [ebp - 0x57c], eax
xor edx, edx
mov eax, ebx
call fcn.004cfaa0
cmp dword [ebp - 0x578], 1
mov ecx, dword [ebp - 0x57c]
je 0x4d9e10
mov eax, dword [ebp - 0x524]
call fcn.004bca70
mov ecx, eax
mov eax, dword [ebx]
mov dword [esp + 4], ecx
xor edi, edi
mov dword [esp], eax
call fcn.0040eab5
jmp 0x4da488
mov eax, dword [ebp - 0x57c]
mov ecx, esi
mov edx, str.timer
call fcn.004bb7f6
test eax, eax
jne 0x4d9ef2
cmp dword [ebp - 0x578], 2
jne 0x4d9ec7
mov eax, dword [ebp - 0x524]
call fcn.004c858a
test eax, eax
mov dword [0x51a47c], eax
je 0x4da583
cmp dword [0x51a45c], 0
jne 0x4da583
call dword [sym.imp.KERNEL32.dll_GetCurrentProcess]
test eax, eax
mov dword [0x51a478], eax
je 0x4da58a
mov dword [esp], str.Kernel32.dll
call dword [sym.imp.KERNEL32.dll_LoadLibraryW]
test eax, eax
push ecx
mov esi, eax
je 0x4da58a
mov dword [esp + 4], str.GetProcessTimes
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
test eax, eax
push edx
mov dword [0x51a45c], eax
push edx
jne 0x4da583
mov dword [esp], esi
call dword [sym.imp.KERNEL32.dll_FreeLibrary]
push eax
jmp 0x4da58a
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp], str.Usage:_.timer_onoff_n
mov edi, 1
add eax, 0x40
mov dword [esp + 4], eax
call sub.msvcrt.dll_fputs
jmp 0x4da488
cmp edi, 0x74
jne 0x4da06c
mov eax, dword [ebp - 0x528]
mov ecx, esi
mov edx, str.trace
call fcn.004bb7f6
test eax, eax
jne 0x4da0e8
xor edx, edx
mov eax, ebx
xor edi, edi
call fcn.004cfaa0
mov dword [ebp - 0x57c], 1
mov ecx, dword [ebp - 0x578]
cmp dword [ebp - 0x57c], ecx
jge 0x4da014
mov eax, dword [ebp - 0x57c]
mov esi, dword [ebp + eax*4 - 0x528]
cmp byte [esi], 0x2d
jne 0x4d9ff5
mov edx, str.expanded
mov eax, esi
call fcn.004c2ac4
test eax, eax
je 0x4d9f62
mov byte [ebx + 0xc], 1
jmp 0x4da009
mov edx, str.plain
mov eax, esi
call fcn.004c2ac4
test eax, eax
je 0x4d9f7b
mov byte [ebx + 0xc], 0
jmp 0x4da009
mov edx, str.profile
mov eax, esi
call fcn.004c2ac4
test eax, eax
je 0x4d9f90
or edi, 2
jmp 0x4da009
mov edx, 0x50f3d1
mov eax, esi
call fcn.004c2ac4
test eax, eax
je 0x4d9fa5
or edi, 4
jmp 0x4da009
mov edx, str.stmt
mov eax, esi
call fcn.004c2ac4
test eax, eax
je 0x4d9fba
or edi, 1
jmp 0x4da009
mov edx, str.close
mov eax, esi
call fcn.004c2ac4
test eax, eax
je 0x4d9fcf
or edi, 8
jmp 0x4da009
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp + 8], esi
mov edi, 1
mov dword [esp + 4], str.Unknown_option___s__on__.trace__n
add eax, 0x40
mov dword [esp], eax
call sub.msvcrt.dll_fprintf
jmp 0x4da488
mov eax, dword [ebx + 0x3c]
call fcn.004bba57
xor edx, edx
mov eax, esi
call fcn.004edeb6
mov dword [ebx + 0x3c], eax
inc dword [ebp - 0x57c]
jmp 0x4d9f21
cmp dword [ebx + 0x3c], 0
mov eax, dword [ebx]
jne 0x4da043
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
xor edi, edi
mov dword [esp + 4], 0
mov dword [esp], eax
call fcn.00405f61
jmp 0x4da488
test edi, edi
mov edx, 1
mov dword [esp + 0xc], ebx
cmove edi, edx
mov dword [esp + 8], 0x4c64bc
mov dword [esp], eax
mov dword [esp + 4], edi
xor edi, edi
call fcn.00405f61
jmp 0x4da488
cmp edi, 0x76
jne 0x4da36d
mov eax, dword [ebp - 0x57c]
mov ecx, esi
mov edx, str.version
call fcn.004bb7f6
test eax, eax
jne 0x4da0f1
call fcn.00408e09
mov esi, eax
xor edi, edi
call fcn.00405d05
mov dword [esp + 8], eax
mov eax, dword [ebx + 0x38]
mov dword [esp + 0xc], esi
mov dword [esp + 4], str.SQLite__s__s_n
mov dword [esp], eax
call fcn.004c5d3a
call fcn.004e7930
mov dword [esp + 8], eax
mov eax, dword [ebx + 0x38]
mov dword [esp + 4], str.zlib_version__s_n
mov dword [esp], eax
call fcn.004c5d3a
mov eax, dword [ebx + 0x38]
mov dword [esp + 4], str.gcc_5.2.0_n
mov dword [esp], eax
call fcn.004c5d3a
jmp 0x4da488
cmp edi, 0x76
jne 0x4da36d
mov edi, dword [ebp - 0x528]
mov ecx, esi
mov edx, str.vfsinfo
mov eax, edi
call fcn.004bb7f6
test eax, eax
jne 0x4da1dc
mov edx, dword [ebx]
cmp dword [ebp - 0x578], 2
mov eax, str.main
cmove eax, dword [ebp - 0x524]
mov dword [ebp - 0x458], 0
test edx, edx
je 0x4da1d5
lea ecx, [ebp - 0x458]
mov dword [esp + 8], 0x1b
mov dword [esp + 4], eax
mov dword [esp], edx
mov dword [esp + 0xc], ecx
call fcn.00416192
mov eax, dword [ebp - 0x458]
test eax, eax
je 0x4da1d5
mov eax, dword [eax + 0x10]
mov dword [esp + 4], str.vfs.zName_________s__n
mov dword [esp + 8], eax
mov eax, dword [ebx + 0x38]
mov dword [esp], eax
call fcn.004c5d3a
mov eax, dword [ebp - 0x458]
mov eax, dword [eax]
mov dword [esp + 4], str.vfs.iVersion_____d_n
mov dword [esp + 8], eax
mov eax, dword [ebx + 0x38]
mov dword [esp], eax
call sub.msvcrt.dll_fprintf
mov eax, dword [ebp - 0x458]
mov eax, dword [eax + 4]
mov dword [esp + 4], str.vfs.szOsFile_____d_n
mov dword [esp + 8], eax
mov eax, dword [ebx + 0x38]
mov dword [esp], eax
call sub.msvcrt.dll_fprintf
mov eax, dword [ebp - 0x458]
mov eax, dword [eax + 8]
mov dword [esp + 4], str.vfs.mxPathname___d_n
mov dword [esp + 8], eax
mov eax, dword [ebx + 0x38]
mov dword [esp], eax
call sub.msvcrt.dll_fprintf
xor edi, edi
jmp 0x4da488
mov ecx, esi
mov edx, str.vfslist
mov eax, edi
call fcn.004bb7f6
test eax, eax
jne 0x4da2e0
mov eax, dword [ebx]
mov dword [ebp - 0x458], 0
test eax, eax
je 0x4da224
lea edx, [ebp - 0x458]
mov dword [esp + 8], 0x1b
mov dword [esp + 4], str.main
mov dword [esp], eax
mov dword [esp + 0xc], edx
call fcn.00416192
mov dword [esp], 0
call fcn.00435bc2
mov esi, eax
test esi, esi
je 0x4da2d9
cmp esi, dword [ebp - 0x458]
mov edx, str._______CURRENT
mov eax, 0x506d14
cmove eax, edx
mov dword [esp + 0xc], eax
mov eax, dword [esi + 0x10]
mov dword [esp + 4], str.vfs.zName_________s__s_n
mov dword [esp + 8], eax
mov eax, dword [ebx + 0x38]
mov dword [esp], eax
call fcn.004c5d3a
mov eax, dword [esi]
mov dword [esp + 4], str.vfs.iVersion_____d_n
mov dword [esp + 8], eax
mov eax, dword [ebx + 0x38]
mov dword [esp], eax
call sub.msvcrt.dll_fprintf
mov eax, dword [esi + 4]
mov dword [esp + 4], str.vfs.szOsFile_____d_n
mov dword [esp + 8], eax
mov eax, dword [ebx + 0x38]
mov dword [esp], eax
call sub.msvcrt.dll_fprintf
mov eax, dword [esi + 8]
mov dword [esp + 4], str.vfs.mxPathname___d_n
mov dword [esp + 8], eax
mov eax, dword [ebx + 0x38]
mov dword [esp], eax
call sub.msvcrt.dll_fprintf
cmp dword [esi + 0xc], 0
je 0x4da2d1
mov eax, dword [ebx + 0x38]
mov dword [esp], str.____________________________________n
mov dword [esp + 4], eax
call sub.msvcrt.dll_fputs
mov esi, dword [esi + 0xc]
jmp 0x4da232
xor edi, edi
jmp 0x4da488
mov ecx, esi
mov edx, str.vfsname
mov eax, edi
call fcn.004bb7f6
test eax, eax
jne 0x4da461
mov edx, dword [ebx]
cmp dword [ebp - 0x578], 2
mov eax, str.main
cmove eax, dword [ebp - 0x524]
mov dword [ebp - 0x458], 0
test edx, edx
je 0x4da366
lea ecx, [ebp - 0x458]
mov dword [esp + 8], 0xc
mov dword [esp + 4], eax
mov dword [esp], edx
mov dword [esp + 0xc], ecx
call fcn.00416192
mov eax, dword [ebp - 0x458]
test eax, eax
je 0x4da366
mov dword [esp + 8], eax
mov eax, dword [ebx + 0x38]
mov dword [esp + 4], 0x508cd3
mov dword [esp], eax
call fcn.004c5d3a
mov eax, dword [ebp - 0x458]
mov dword [esp], eax
call fcn.0040b268
xor edi, edi
jmp 0x4da488
cmp edi, 0x77
jne 0x4da461
mov edi, dword [ebp - 0x528]
mov ecx, esi
mov edx, str.wheretrace
mov eax, edi
call fcn.004bb7f6
test eax, eax
jne 0x4da3d0
or eax, 0xffffffff
cmp dword [ebp - 0x578], 1
je 0x4da3a5
mov eax, dword [ebp - 0x524]
call fcn.004bca70
mov dword [ebp - 0x458], eax
lea eax, [ebp - 0x458]
mov dword [esp + 4], 3
mov dword [esp], 0x1f
xor edi, edi
mov dword [esp + 8], eax
call fcn.004b188d
jmp 0x4da488
mov ecx, esi
mov edx, str.width
mov eax, edi
call fcn.004bb7f6
test eax, eax
jne 0x4da461
mov eax, dword [ebp - 0x578]
dec eax
mov dword [ebx + 0x100], eax
mov eax, dword [ebp - 0x578]
shl eax, 3
mov dword [esp + 4], eax
mov eax, dword [ebx + 0xf8]
mov dword [esp], eax
call sub.msvcrt.dll_realloc
test eax, eax
mov dword [ebx + 0xf8], eax
jne 0x4da422
cmp dword [ebx + 0x100], 0
jle 0x4da422
call fcn.004ed6c5
mov edx, dword [ebx + 0x100]
test edx, edx
je 0x4da435
lea eax, [eax + edx*4]
mov dword [ebx + 0xfc], eax
mov edi, 1
cmp edi, dword [ebp - 0x578]
jge 0x4da583
mov eax, dword [ebx + 0xf8]
lea esi, [eax + edi*4 - 4]
mov eax, dword [ebp + edi*4 - 0x528]
inc edi
call fcn.004bca70
mov dword [esi], eax
jmp 0x4da43a
mov eax, dword [ebp - 0x528]
mov dword [esp + 4], str.Error:_unknown_command_or_invalid_arguments:____s_._Enter__.help__for_help_n
mov edi, 1
mov dword [esp + 8], eax
mov eax, dword [sym.imp.msvcrt.dll__iob]
add eax, 0x40
mov dword [esp], eax
call fcn.004c5d3a
mov eax, dword [ebx + 0x24]
test eax, eax
je 0x4da49e
dec eax
test eax, eax
mov dword [ebx + 0x24], eax
jne 0x4da49e
mov eax, ebx
call fcn.004ca025
mov al, byte [ebx + 0xe]
mov dword [ebp - 0x57c], edi
mov byte [ebx + 0xd], al
jmp 0x4da5b3
mov eax, dword [ebx + 0x38]
mov dword [esp], 0x5094d8
mov dword [esp + 4], eax
call sub.msvcrt.dll_fputs
mov eax, dword [ebp - 0x458]
mov dword [esp], eax
call fcn.0047778f
mov esi, eax
jmp 0x4d2f8d
mov dword [esp + 4], esi
mov dword [esp], 0x506d0a
call fcn.004440e8
mov edi, eax
call fcn.004bd956
jmp 0x4d622b
mov dword [esp + 4], esi
mov dword [esp], str.CREATE_TABLE__s___n__type_text__n__name_text__n__tbl_name_text__n__rootpage_integer__n__sql_text_n_
call fcn.004440e8
mov dword [ebp - 0x55c], eax
call fcn.004bd956
lea eax, [ebp - 0x548]
mov dword [esp + 8], edi
mov dword [esp + 4], 1
mov dword [ebp - 0x558], 0
mov dword [ebp - 0x548], 0x50f59c
mov dword [esp + 0xc], eax
lea eax, [ebp - 0x458]
mov dword [ebp - 0x544], 0
mov dword [esp], eax
call fcn.004c83bf
mov eax, dword [ebp - 0x55c]
mov dword [esp], eax
call fcn.0040b268
jmp 0x4d73c9
shl eax, 4
lea edi, [esi + eax]
mov eax, dword [ebp - 0x578]
sub eax, 2
mov dword [ebp - 0x57c], eax
lea eax, [ebp - 0x520]
jmp 0x4d7976
xor edi, edi
jmp 0x4da488
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp], str.Error:_timer_not_available_on_this_system._n
xor edi, edi
add eax, 0x40
mov dword [esp + 4], eax
call sub.msvcrt.dll_fputs
mov dword [0x51a47c], 0
jmp 0x4da488
mov eax, dword [ebp - 0x57c]
lea esp, [ebp - 0xc]
pop ebx
pop esi
pop edi
pop ebp
ret