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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
mov eax, 0x125c
call fcn.00589a80
mov eax, dword [0x63727c]
xor eax, esp
mov dword [esp + 0x1258], eax
push ebx
push esi
push edi
mov edi, edx
mov eax, dword [edi + 0x580]
mov ebx, ecx
xor ecx, ecx
mov dword [esp + 0x10], edi
mov esi, 1
mov dword [esp + 0x14], ecx
mov dword [esp + 0x18], ecx
cmp eax, ecx
je 0x4a5825
push eax
call fcn.0049eda0
add esp, 4
mov dword [edi + 0x580], 0
cmp byte [ebx + 1], 0
je 0x4a5933
nop
cmp dword [esp + 0x14], 0x32
jge 0x4a592c
movzx eax, byte [ebx + esi]
push eax
call fcn.0058aef1
add esp, 4
test eax, eax
je 0x4a5863
lea esp, [esp]
movzx ecx, byte [ebx + esi + 1]
inc esi
push ecx
call fcn.0058aef1
add esp, 4
test eax, eax
jne 0x4a5850
mov cl, byte [ebx + esi]
lea eax, [ebx + esi]
test cl, cl
je 0x4a592c
cmp cl, 0x27
je 0x4a58be
cmp cl, 0x22
je 0x4a58be
mov edi, dword [esp + 0x14]
mov dword [esp + edi*4 + 0xc8], eax
inc edi
mov dword [esp + 0x14], edi
jmp 0x4a5890
movzx edx, byte [eax]
push edx
call fcn.0058aef1
add esp, 4
test eax, eax
jne 0x4a58aa
inc esi
cmp byte [ebx + esi], 0
lea eax, [ebx + esi]
jne 0x4a5890
cmp byte [ebx + esi], 0
je 0x4a58b5
mov byte [ebx + esi], 0
inc esi
mov eax, dword [esp + edi*4 + 0xc4]
jmp 0x4a591d
mov edx, dword [esp + 0x14]
inc esi
lea eax, [ebx + esi]
mov dword [esp + edx*4 + 0xc8], eax
inc edx
cmp byte [eax], 0
movsx ecx, cl
mov dword [esp + 0x14], edx
je 0x4a5904
lea ebx, [ebx]
mov al, byte [eax]
movsx edi, al
cmp edi, ecx
je 0x4a5904
cmp al, 0x5c
jne 0x4a58fa
cmp ecx, 0x22
jne 0x4a58fa
cmp byte [ebx + esi + 1], 0
je 0x4a58fa
inc esi
inc esi
cmp byte [ebx + esi], 0
lea eax, [ebx + esi]
jne 0x4a58e0
movsx eax, byte [ebx + esi]
cmp eax, ecx
jne 0x4a5911
mov byte [ebx + esi], 0
inc esi
cmp ecx, 0x22
jne 0x4a5922
mov eax, dword [esp + edx*4 + 0xc4]
call fcn.004a2e80
cmp byte [ebx + esi], 0
jne 0x4a5830
cmp dword [esp + 0x14], 0
jne 0x4a594a
xor eax, eax
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x1258]
xor ecx, esp
call fcn.00584267
mov esp, ebp
pop ebp
ret
mov esi, dword [esp + 0xc8]
mov al, byte [esi]
test al, al
je 0x4a595d
inc esi
cmp byte [esi], 0
jne 0x4a5957
mov ebx, dword [esp + 0xc8]
mov ecx, dword [esp + 0x10]
sub esi, ebx
movsx edi, al
mov eax, dword [ecx + 0x48]
and esi, 0x3fffffff
mov dword [esp + 0x2c], edi
test eax, eax
je 0x4a59c7
cmp byte [ecx + 0xa], 0
jne 0x4a59c7
push eax
call fcn.0052af90
push eax
mov dword [esp + 0x6c], eax
call fcn.0058de5a
mov ecx, dword [esp + 0x6c]
push ecx
mov dword [esp + 0x34], eax
call fcn.004ac9a0
add esp, 0xc
cmp dword [esp + 0x28], 0
jne 0x4a59c7
mov edx, dword [esp + 0x10]
mov eax, dword [edx + 0x48]
push eax
call fcn.004ac9a0
mov ecx, dword [esp + 0x14]
add esp, 4
mov dword [ecx + 0x48], 0
cmp edi, 0x61
jne 0x4a5a50
push esi
push str.auth
push ebx
call fcn.0058b254
add esp, 0xc
test eax, eax
jne 0x4a7a75
cmp dword [esp + 0x14], 2
je 0x4a5a09
push str.Usage:_.auth_ONOFF_n
call fcn.0058b93f
add eax, 0x40
push eax
call fcn.00589fad
add esp, 8
jmp 0x4a7a8c
mov edi, dword [esp + 0x10]
xor ebx, ebx
mov esi, edi
call fcn.004a5270
mov esi, dword [esp + 0xcc]
call fcn.004a2f70
test eax, eax
je 0x4a5a3c
mov edx, dword [edi]
push edi
push 0x49fa40
push edx
call fcn.004b6d10
add esp, 0xc
jmp 0x4a7a94
mov eax, dword [edi]
push 0
push 0
push eax
call fcn.004b6d10
add esp, 0xc
jmp 0x4a7a94
cmp edi, 0x62
jne 0x4a5aa9
cmp esi, 3
jl 0x4a7a75
push esi
push str.backup
push ebx
call fcn.0058b254
add esp, 0xc
test eax, eax
je 0x4a5ad2
push esi
push str.bail
push ebx
call fcn.0058b254
add esp, 0xc
test eax, eax
jne 0x4a5cd2
cmp dword [esp + 0x14], 2
jne 0x4a5cc8
mov esi, dword [esp + 0xcc]
call fcn.004a2f70
mov dword [0x6413e0], eax
jmp 0x4a7a94
cmp edi, 0x73
jne 0x4a5d4d
cmp esi, 3
jl 0x4a8033
push esi
push str.save
push ebx
call fcn.0058b254
add esp, 0xc
test eax, eax
jne 0x4a8033
mov ebx, 1
xor esi, esi
xor edi, edi
xor ecx, ecx
cmp dword [esp + 0x14], ebx
jle 0x4a5b47
mov eax, dword [esp + ebx*4 + 0xc8]
cmp byte [eax], 0x2d
jne 0x4a5b30
cmp byte [eax + 1], 0x2d
jne 0x4a5af6
inc eax
mov ecx, str._append
jmp 0x4a5b00
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4a5b20
test dl, dl
je 0x4a5b1c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4a5b20
add eax, 2
add ecx, 2
test dl, dl
jne 0x4a5b00
xor eax, eax
jmp 0x4a5b25
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x4a5b4e
mov ecx, str.apndvfs
jmp 0x4a5b3c
test esi, esi
je 0x4a5b3a
test edi, edi
jne 0x4a5b86
mov edi, esi
mov esi, eax
inc ebx
cmp ebx, dword [esp + 0x14]
jl 0x4a5ae3
test esi, esi
jne 0x4a5bb6
push str.missing_FILENAME_argument_on_.backup_n
jmp 0x4a5b8b
mov ecx, dword [esp + ebx*4 + 0xc8]
push ecx
push str.unknown_option:__s_n
call fcn.0058b93f
add eax, 0x40
push eax
call fcn.00495cb0
add esp, 0xc
mov eax, 1
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x1258]
xor ecx, esp
call fcn.00584267
mov esp, ebp
pop ebp
ret
push str.Usage:_.backup__DB_____append__FILENAME_n
call fcn.0058b93f
add eax, 0x40
push eax
call fcn.00589fad
add esp, 8
mov eax, 1
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x1258]
xor ecx, esp
call fcn.00584267
mov esp, ebp
pop ebp
ret
test edi, edi
jne 0x4a5bbf
mov edi, str.main
push ecx
push 6
lea edx, [esp + 0x1c]
push edx
push esi
call fcn.0052ac60
add esp, 0x10
test eax, eax
je 0x4a5bf7
push esi
push str.Error:_cannot_open___s__n
call fcn.0058b93f
add eax, 0x40
push eax
call fcn.00495cb0
mov eax, dword [esp + 0x20]
push eax
call fcn.004a2e40
add esp, 0x10
jmp 0x4a5b9c
mov esi, dword [esp + 0x10]
xor ebx, ebx
call fcn.004a5270
mov ecx, dword [esi]
mov edx, dword [esp + 0x14]
push edi
push ecx
push str.main
push edx
call fcn.005057f0
mov esi, eax
add esp, 0x10
test esi, esi
jne 0x4a5c51
mov eax, dword [esp + 0x14]
push eax
call fcn.004f7d70
add esp, 4
push eax
push str.Error:__s_n
call fcn.0058b93f
add eax, 0x40
push eax
call fcn.00495cb0
mov ecx, dword [esp + 0x20]
push ecx
call fcn.004a2e40
add esp, 0x10
jmp 0x4a5b9c
push 0x64
push esi
call fcn.0050af50
mov edi, eax
add esp, 8
test edi, edi
je 0x4a5c51
push esi
call fcn.00511df0
add esp, 4
cmp edi, 0x65
jne 0x4a5c8a
mov eax, dword [esp + 0x14]
push eax
mov dword [esp + 0x1c], 0
call fcn.004a2e40
add esp, 4
jmp 0x4a7a94
mov edx, dword [esp + 0x14]
push edx
call fcn.004f7d70
add esp, 4
push eax
push str.Error:__s_n
call fcn.0058b93f
add eax, 0x40
push eax
call fcn.00495cb0
mov eax, dword [esp + 0x20]
add esp, 0xc
push eax
mov dword [esp + 0x1c], 1
call fcn.004a2e40
add esp, 4
jmp 0x4a7a94
push str.Usage:_.bail_onoff_n
jmp 0x4a59f3
push esi
push str.binary
push ebx
call fcn.0058b254
add esp, 0xc
test eax, eax
jne 0x4a5dda
cmp dword [esp + 0x14], 2
jne 0x4a5d43
mov esi, dword [esp + 0xcc]
call fcn.004a2f70
test eax, eax
je 0x4a5d17
mov ecx, dword [esp + 0x10]
mov esi, dword [ecx + 0x18]
push esi
call fcn.00586bb9
add esp, 4
push 0x8000
jmp 0x4a5d2c
mov edx, dword [esp + 0x10]
mov esi, dword [edx + 0x18]
push esi
call fcn.00586bb9
add esp, 4
push 0x4000
push esi
call fcn.0058b626
add esp, 4
push eax
call fcn.0058b52f
add esp, 8
jmp 0x4a7a94
push str.Usage:_.binary_onoff_n
jmp 0x4a59f3
cmp edi, 0x63
jne 0x4a5f90
mov edi, 0x5e96c4
mov eax, ebx
lea ecx, [ecx]
mov cl, byte [eax]
cmp cl, byte [edi]
jne 0x4a5d80
test cl, cl
je 0x4a5d7c
mov cl, byte [eax + 1]
cmp cl, byte [edi + 1]
jne 0x4a5d80
add eax, 2
add edi, 2
test cl, cl
jne 0x4a5d60
xor eax, eax
jmp 0x4a5d85
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x4a5dfc
cmp dword [esp + 0x14], 2
jne 0x4a5dd0
mov ebx, dword [esp + 0xcc]
push ebx
call fcn.0052af90
add esp, 4
mov edi, eax
push edi
call dword [sym.imp.KERNEL32.dll_SetCurrentDirectoryW]
mov esi, eax
neg esi
sbb esi, esi
inc esi
push edi
mov dword [esp + 0x1c], esi
call fcn.004ac9a0
add esp, 4
test esi, esi
je 0x4a7a94
push ebx
push str.Cannot_change_to_directory___s__n
jmp 0x4a7a7b
push str.Usage:_.cd_DIRECTORY_n
jmp 0x4a59f3
push esi
push str.breakpoint
push ebx
call fcn.0058b254
add esp, 0xc
test eax, eax
jne 0x4a7a75
inc dword [0x6413ec]
jmp 0x4a7a94
cmp esi, 3
jl 0x4a5f53
push esi
push str.changes
push ebx
call fcn.0058b254
add esp, 0xc
test eax, eax
jne 0x4a5e4f
cmp dword [esp + 0x14], 2
jne 0x4a5e45
mov esi, dword [esp + 0xcc]
call fcn.004a2f70
test eax, eax
mov eax, dword [esp + 0x10]
je 0x4a5e3c
or dword [eax + 0x40], 0x20
jmp 0x4a7a94
and dword [eax + 0x40], 0xffffffdf
jmp 0x4a7a94
push str.Usage:_.changes_onoff_n
jmp 0x4a59f3
push esi
push str.check
push ebx
call fcn.0058b254
add esp, 0xc
test eax, eax
jne 0x4a5f53
mov esi, dword [esp + 0x10]
xor edi, edi
call fcn.004a3d10
mov ebx, 2
cmp dword [esp + 0x14], ebx
je 0x4a5ea4
push str.Usage:_.check_GLOB_PATTERN_n
call fcn.0058b93f
add eax, 0x40
push eax
call fcn.00589fad
add esp, 8
push edi
mov dword [esp + 0x1c], ebx
call fcn.004ac9a0
add esp, 4
jmp 0x4a7a94
push 0
mov eax, str.testcase_out.txt
call fcn.004a2c60
mov edi, eax
add esp, 4
test edi, edi
jne 0x4a5ee1
push str.Error:_cannot_read_testcase_out.txt_n
call fcn.0058b93f
add eax, 0x40
push eax
call fcn.00589fad
add esp, 8
push edi
mov dword [esp + 0x1c], ebx
call fcn.004ac9a0
add esp, 4
jmp 0x4a7a94
mov ebx, dword [esp + 0xcc]
push edi
push ebx
call fcn.004a3e80
add esp, 8
test eax, eax
jne 0x4a5f28
push edi
push ebx
add esi, 0x4c
push esi
push str.testcase__s_FAILED_n_Expected:___s__n______Got:___s__n
call fcn.0058b93f
add eax, 0x40
push eax
call fcn.00495cb0
add esp, 0x14
push edi
mov dword [esp + 0x1c], 1
call fcn.004ac9a0
add esp, 4
jmp 0x4a7a94
lea eax, [esi + 0x4c]
push eax
push str.testcase__s_ok_n
call fcn.0058b93f
add eax, 0x20
push eax
call fcn.00495cb0
inc dword [esi + 0x3c]
add esp, 0xc
push edi
call fcn.004ac9a0
add esp, 4
jmp 0x4a7a94
push esi
push str.clone
push ebx
call fcn.0058b254
add esp, 0xc
test eax, eax
jne 0x4a7a75
cmp dword [esp + 0x14], 2
jne 0x4a5f86
mov eax, dword [esp + 0xcc]
mov ecx, dword [esp + 0x10]
call fcn.004a3be0
jmp 0x4a7a94
push str.Usage:_.clone_FILENAME_n
jmp 0x4a59f3
cmp edi, 0x64
jne 0x4a640a
cmp esi, 1
jle 0x4a6065
push esi
push str.databases
push ebx
call fcn.0058b254
add esp, 0xc
test eax, eax
jne 0x4a6065
mov esi, dword [esp + 0x10]
xor ebx, ebx
mov dword [esp + 0x44], eax
call fcn.004a5270
mov ecx, 0x162
lea edi, [esp + 0xca8]
rep movsd dword es:[edi], dword [esi]
push 0x5e9588
lea ecx, [esp + 0xd16]
mov eax, 2
push ecx
xor esi, esi
push 0x14
mov dword [esp + 0xcec], esi
mov dword [esp + 0xcd8], eax
mov dword [esp + 0xce0], eax
call fcn.004accb0
mov ecx, dword [esp + 0x1c]
lea edx, [esp + 0x50]
push edx
mov edx, dword [ecx]
lea eax, [esp + 0xcb8]
push eax
push 0x4a0df0
push str.SELECT_name__file_FROM_pragma_database_list
push edx
mov dword [esp + 0xcdc], esi
call fcn.00527b30
mov eax, dword [esp + 0x64]
add esp, 0x20
cmp eax, esi
je 0x4a7a94
push eax
push str.Error:__s_n
call fcn.0058b93f
add eax, 0x40
push eax
call fcn.00495cb0
mov eax, dword [esp + 0x50]
push eax
call fcn.004ac9a0
add esp, 0x10
jmp 0x4a7a8c
cmp esi, 3
jl 0x4a61d9
push esi
push str.dbconfig
push ebx
call fcn.0058b254
add esp, 0xc
test eax, eax
jne 0x4a61a3
mov edi, dword [esp + 0x10]
xor ebx, ebx
mov esi, edi
call fcn.004a5270
mov esi, dword [esp + 0x14]
cmp esi, 1
jle 0x4a60d9
mov ecx, dword [ebx*8 + 0x5e4d10]
mov eax, dword [esp + 0xcc]
lea esp, [esp]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4a60d0
test dl, dl
je 0x4a60cc
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4a60d0
add eax, 2
add ecx, 2
test dl, dl
jne 0x4a60b0
xor eax, eax
jmp 0x4a60d5
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x4a614e
cmp esi, 3
jl 0x4a6104
mov esi, dword [esp + 0xd0]
push 0
call fcn.004a2f70
mov ecx, dword [ebx*8 + 0x5e4d14]
mov edx, dword [edi]
push eax
push ecx
push edx
call fcn.004c3320
mov esi, dword [esp + 0x24]
add esp, 0x10
mov ecx, dword [ebx*8 + 0x5e4d14]
mov edx, dword [edi]
lea eax, [esp + 0x2c]
push eax
push 0xffffffffffffffff
push ecx
push edx
call fcn.004c3320
add esp, 0x10
cmp dword [esp + 0x2c], 0
mov eax, 0x5e43b0
jne 0x4a612f
mov eax, 0x5e43b4
mov ecx, dword [edi + 0x18]
push eax
mov eax, dword [ebx*8 + 0x5e4d10]
push eax
push str._18s__s_n
push ecx
call fcn.00495cb0
add esp, 0x10
cmp esi, 1
jg 0x4a6161
inc ebx
cmp ebx, 8
jl 0x4a6092
cmp esi, 1
jle 0x4a7a94
cmp ebx, 8
jne 0x4a7a94
mov edx, dword [esp + 0xcc]
push edx
push str.Error:_unknown_dbconfig___s__n
call fcn.0058b93f
add eax, 0x40
push eax
call fcn.00495cb0
add esp, 0xc
push str.Enter__.dbconfig__with_no_arguments_for_a_list_n
call fcn.0058b93f
add eax, 0x40
push eax
call fcn.00495cb0
add esp, 8
jmp 0x4a7a94
push esi
push str.dbinfo
push ebx
call fcn.0058b254
add esp, 0xc
test eax, eax
jne 0x4a61d9
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x10]
lea eax, [esp + 0xc8]
push eax
push ecx
push edx
call fcn.004a5470
add esp, 0xc
mov dword [esp + 0x18], eax
jmp 0x4a7a94
push esi
push str.dump
push ebx
call fcn.0058b254
add esp, 0xc
test eax, eax
jne 0x4a7a75
mov eax, dword [esp + 0x10]
mov ecx, dword [eax + 0x38]
mov dword [esp + 0x2c], ecx
mov ecx, dword [eax + 0x40]
mov dword [esp + 0x64], ecx
and ecx, 0xffffffa7
mov esi, 1
xor edi, edi
cmp dword [esp + 0x14], esi
mov dword [eax + 0x40], ecx
jle 0x4a62c4
lea esp, [esp]
mov eax, dword [esp + esi*4 + 0xc8]
cmp byte [eax], 0x2d
jne 0x4a62af
inc eax
cmp byte [eax], 0x2d
jne 0x4a6237
inc eax
mov edx, str.preserve_rowids
mov ecx, eax
mov edi, edi
mov bl, byte [ecx]
cmp bl, byte [edx]
jne 0x4a6260
test bl, bl
je 0x4a625c
mov bl, byte [ecx + 1]
cmp bl, byte [edx + 1]
jne 0x4a6260
add ecx, 2
add edx, 2
test bl, bl
jne 0x4a6240
xor ecx, ecx
jmp 0x4a6265
sbb ecx, ecx
sbb ecx, 0xffffffff
test ecx, ecx
jne 0x4a6273
mov eax, dword [esp + 0x10]
or dword [eax + 0x40], 8
jmp 0x4a62b9
mov ecx, str.newlines
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4a6298
test dl, dl
je 0x4a6294
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4a6298
add eax, 2
add ecx, 2
test dl, dl
jne 0x4a6278
xor eax, eax
jmp 0x4a629d
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x4a6331
mov eax, dword [esp + 0x10]
or dword [eax + 0x40], 0x10
jmp 0x4a62b9
test edi, edi
jne 0x4a6351
mov edi, eax
inc esi
cmp esi, dword [esp + 0x14]
jl 0x4a6220
mov esi, dword [esp + 0x10]
xor ebx, ebx
call fcn.004a5270
mov eax, dword [esi + 0x18]
push str.PRAGMA_foreign_keysOFF__n
push eax
call fcn.00589fad
mov ecx, dword [esi + 0x18]
push str.BEGIN_TRANSACTION__n
push ecx
call fcn.00589fad
mov edx, dword [esi]
push ebx
push ebx
push ebx
push str.SAVEPOINT_dump__PRAGMA_writable_schemaON
push edx
mov dword [esi + 0x34], ebx
mov dword [esi + 0x38], ebx
call fcn.00527b30
add esp, 0x24
mov dword [esi + 0x20], ebx
cmp edi, ebx
jne 0x4a635b
mov ebx, str.SELECT_name__type__sql_FROM_sqlite_master_WHERE_sql_NOT_NULL_AND_typetable_AND_name_sqlite_sequence
call fcn.004a2b60
mov ebx, str.SELECT_name__type__sql_FROM_sqlite_master_WHERE_namesqlite_sequence
call fcn.004a2b60
push 0
push esi
mov ecx, str.SELECT_sql_FROM_sqlite_master_WHERE_sql_NOT_NULL_AND_type_IN__index_trigger_view_
call fcn.004a10a0
add esp, 8
jmp 0x4a6393
mov edx, dword [esp + esi*4 + 0xc8]
push edx
push str.Unknown_option___s__on__.dump__n
call fcn.0058b93f
add eax, 0x40
push eax
call fcn.00589fad
jmp 0x4a7a89
push str.Usage:_.dump____preserve_rowids_____newlines___LIKE_PATTERN__n
jmp 0x4a59f3
push edi
push str.SELECT_name__type__sql_FROM_sqlite_master_WHERE_tbl_name_LIKE__Q_AND_typetable__AND_sql_NOT_NULL
call fcn.004d30e0
mov ebx, eax
call fcn.004a2b60
push ebx
call fcn.004ac9a0
push edi
push str.SELECT_sql_FROM_sqlite_master_WHERE_sql_NOT_NULL__AND_type_IN__index_trigger_view___AND_tbl_name_LIKE__Q
call fcn.004d30e0
mov ebx, eax
push 0
push esi
mov ecx, ebx
call fcn.004a10a0
push ebx
call fcn.004ac9a0
add esp, 0x20
cmp dword [esi + 0x34], 0
je 0x4a63b1
mov eax, dword [esi + 0x18]
push str.PRAGMA_writable_schemaOFF__n
push eax
call fcn.00589fad
add esp, 8
mov dword [esi + 0x34], 0
mov ecx, dword [esi]
push 0
push 0
push 0
push str.PRAGMA_writable_schemaOFF_
push ecx
call fcn.00527b30
mov edx, dword [esi]
push 0
push 0
push 0
push str.RELEASE_dump_
push edx
call fcn.00527b30
add esp, 0x28
cmp dword [esi + 0x20], 0
mov eax, str.ROLLBACK_____due_to_errors_n
jne 0x4a63ea
mov eax, str.COMMIT__n
push eax
mov eax, dword [esi + 0x18]
push eax
call fcn.00589fad
mov ecx, dword [esp + 0x34]
mov edx, dword [esp + 0x6c]
add esp, 8
mov dword [esi + 0x38], ecx
mov dword [esi + 0x40], edx
jmp 0x4a7a94
cmp edi, 0x65
jne 0x4a668b
push esi
push str.echo
push ebx
call fcn.0058b254
add esp, 0xc
test eax, eax
jne 0x4a645d
cmp dword [esp + 0x14], 2
jne 0x4a6453
mov esi, dword [esp + 0xcc]
call fcn.004a2f70
test eax, eax
mov eax, dword [esp + 0x10]
je 0x4a644a
or dword [eax + 0x40], 0x40
jmp 0x4a7a94
and dword [eax + 0x40], 0xffffffbf
jmp 0x4a7a94
push str.Usage:_.echo_onoff_n
jmp 0x4a59f3
push esi
push 0x5e48d8
push ebx
call fcn.0058b254
add esp, 0xc
test eax, eax
jne 0x4a6551
mov ebx, 2
cmp dword [esp + 0x14], ebx
jne 0x4a6547
mov edi, dword [esp + 0x10]
mov esi, dword [esp + 0xcc]
mov byte [edi + 6], al
mov ecx, str.full
mov eax, esi
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4a64b6
test dl, dl
je 0x4a64b2
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4a64b6
add eax, ebx
add ecx, ebx
test dl, dl
jne 0x4a6498
xor eax, eax
jmp 0x4a64bb
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x4a64c8
mov byte [edi + 5], 3
jmp 0x4a7a94
mov ecx, str.trigger
mov eax, esi
nop
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4a64ee
test dl, dl
je 0x4a64ea
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4a64ee
add eax, ebx
add ecx, ebx
test dl, dl
jne 0x4a64d0
xor eax, eax
jmp 0x4a64f3
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x4a64ff
mov byte [edi + 5], bl
jmp 0x4a7a94
mov ecx, str.test
mov eax, esi
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4a6524
test dl, dl
je 0x4a6520
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4a6524
add eax, ebx
add ecx, ebx
test dl, dl
jne 0x4a6506
xor eax, eax
jmp 0x4a6529
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x4a653a
mov byte [edi + 5], 1
mov byte [edi + 6], 1
jmp 0x4a7a94
call fcn.004a2f70
mov byte [edi + 5], al
jmp 0x4a7a94
push str.Usage:_.eqp_offontriggerfull_n
jmp 0x4a59f3
push esi
push str.exit
push ebx
call fcn.0058b254
add esp, 0xc
test eax, eax
jne 0x4a6589
cmp dword [esp + 0x14], 1
jle 0x4a7e23
mov eax, dword [esp + 0xcc]
call fcn.004960c0
test eax, eax
je 0x4a7e23
push eax
call fcn.0058be0c
push esi
push str.explain
push ebx
call fcn.0058b254
add esp, 0xc
test eax, eax
jne 0x4a664e
cmp dword [esp + 0x14], 2
jl 0x4a65e8
mov esi, dword [esp + 0xcc]
mov ecx, str.auto
mov eax, esi
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4a65d5
test dl, dl
je 0x4a65d1
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4a65d5
add eax, 2
add ecx, 2
test dl, dl
jne 0x4a65b5
xor eax, eax
jmp 0x4a65da
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
je 0x4a6635
call fcn.004a2f70
cmp eax, 1
jne 0x4a660f
mov eax, dword [esp + 0x10]
mov eax, dword [eax + 0x24]
cmp eax, 9
je 0x4a7a94
mov ecx, dword [esp + 0x10]
mov dword [ecx + 0x30], eax
mov dword [ecx + 0x24], 9
mov byte [ecx + 4], 0
jmp 0x4a7a94
test eax, eax
jne 0x4a662c
mov eax, dword [esp + 0x10]
cmp dword [eax + 0x24], 9
jne 0x4a6623
mov ecx, dword [eax + 0x30]
mov dword [eax + 0x24], ecx
mov byte [eax + 4], 0
jmp 0x4a7a94
cmp eax, 0x63
jne 0x4a7a94
mov eax, dword [esp + 0x10]
cmp dword [eax + 0x24], 9
jne 0x4a6645
mov edx, dword [eax + 0x30]
mov dword [eax + 0x24], edx
mov byte [eax + 4], 1
jmp 0x4a7a94
push esi
push str.expert
push ebx
call fcn.0058b254
add esp, 0xc
test eax, eax
jne 0x4a7ac5
mov esi, dword [esp + 0x10]
xor ebx, ebx
call fcn.004a5270
mov eax, dword [esp + 0x14]
push eax
lea ecx, [esp + 0xcc]
push ecx
push esi
call fcn.004a5100
add esp, 0xc
jmp 0x4a7a94
cmp edi, 0x66
jne 0x4a6869
push esi
push str.fullschema
push ebx
call fcn.0058b254
add esp, 0xc
test eax, eax
jne 0x4a7a75
mov esi, dword [esp + 0x10]
mov ecx, 0x162
lea edi, [esp + 0x198]
rep movsd dword es:[edi], dword [esi]
mov dword [esp + 0x24], eax
mov dword [esp + 0x1d0], eax
mov eax, 3
mov dword [esp + 0x1bc], eax
mov dword [esp + 0x1c4], eax
mov eax, dword [esp + 0x14]
cmp eax, 2
jne 0x4a679d
mov eax, dword [esp + 0xcc]
mov ecx, str.indent
call fcn.004a4110
test eax, eax
je 0x4a67a6
mov eax, 0xb
mov dword [esp + 0x1bc], eax
mov dword [esp + 0x1c4], eax
mov esi, dword [esp + 0x10]
xor ebx, ebx
call fcn.004a5270
mov ecx, dword [esi]
lea edx, [esp + 0x24]
push edx
lea eax, [esp + 0x19c]
push eax
push 0x4a0df0
push str.SELECT_sql_FROM___SELECT_sql_sql__type_type__tbl_name_tbl_name__name_name__rowid_x_____FROM_sqlite_master_UNION_ALL___SELECT_sql__type__tbl_name__name__rowid_FROM_sqlite_temp_master__WHERE_type_meta_AND_sql_NOTNULL_AND_name_NOT_LIKE_sqlite___ORDER_BY_rowid
push ecx
call fcn.00527b30
add esp, 0x14
mov dword [esp + 0x18], eax
test eax, eax
jne 0x4a6787
push eax
mov eax, dword [esi]
lea edx, [esp + 0x2c]
push edx
push 0xffffffffffffffff
push str.SELECT_rowid_FROM_sqlite_master_WHERE_name_GLOB_sqlite_stat_134_
push eax
call fcn.00521170
mov ecx, dword [esp + 0x3c]
push ecx
mov dword [esp + 0x30], eax
call fcn.005277b0
xor edx, edx
cmp eax, 0x64
mov eax, dword [esp + 0x40]
sete dl
push eax
mov edi, edx
call fcn.005125e0
add esp, 0x1c
test edi, edi
jne 0x4a67b0
mov ecx, dword [esi + 0x18]
push str.__No_STAT_tables_available___n
push ecx
call fcn.00589fad
add esp, 8
jmp 0x4a7a94
cmp eax, 1
je 0x4a6714
push str.Usage:_.fullschema____indent__n
jmp 0x4a59f3
mov edx, dword [esi + 0x18]
push str.ANALYZE_sqlite_master__n
push edx
call fcn.00589fad
mov edx, dword [esi]
lea eax, [esp + 0x2c]
push eax
lea ecx, [esp + 0x1a4]
push ecx
push 0x4a0df0
push str.SELECT_ANALYZE_sqlite_master
push edx
call fcn.00527b30
mov eax, 5
mov dword [esp + 0x1d8], eax
mov dword [esp + 0x1e0], eax
lea eax, [esp + 0x40]
push eax
push str.SELECT__FROM_sqlite_stat1
lea eax, [esp + 0x1bc]
mov dword [esp + 0x200], str.sqlite_stat1
call fcn.004a1e70
lea ecx, [esp + 0x48]
push ecx
push str.SELECT__FROM_sqlite_stat3
lea eax, [esp + 0x1c4]
mov dword [esp + 0x208], str.sqlite_stat3
call fcn.004a1e70
lea edx, [esp + 0x50]
push edx
push str.SELECT__FROM_sqlite_stat4
lea eax, [esp + 0x1cc]
mov dword [esp + 0x210], str.sqlite_stat4
call fcn.004a1e70
mov eax, dword [esi + 0x18]
push str.ANALYZE_sqlite_master__n
push eax
call fcn.00589fad
add esp, 0x3c
jmp 0x4a7a94
cmp edi, 0x68
jne 0x4a68e0
push esi
push str.headers
push ebx
call fcn.0058b254
add esp, 0xc
test eax, eax
jne 0x4a68aa
cmp dword [esp + 0x14], 2
jne 0x4a68a0
mov esi, dword [esp + 0xcc]
call fcn.004a2f70
mov ecx, dword [esp + 0x10]
mov dword [ecx + 0x38], eax
jmp 0x4a7a94
push str.Usage:_.headers_onoff_n
jmp 0x4a59f3
push esi
push str.help
push ebx
call fcn.0058b254
add esp, 0xc
test eax, eax
jne 0x4a7a75
mov edx, dword [esp + 0x10]
mov eax, dword [edx + 0x18]
push str..auth_ONOFF___________Show_authorizer_callbacks_n.backup__DB__FILE______Backup_DB__default__main___to_FILE_n_________________________Add____append__to_open_using_appendvfs._n.bail_onoff___________Stop_after_hitting_an_error.__Default_OFF_n.binary_onoff_________Turn_binary_output_on_or_off.__Default_OFF_n.cd_DIRECTORY__________Change_the_working_directory_to_DIRECTORY_n.changes_onoff________Show_number_of_rows_changed_by_SQL_n.check_GLOB____________Fail_if_output_since_.testcase_does_not_match_n.clone_NEWDB___________Clone_data_into_NEWDB_from_the_existing_database_n.databases_____________List_names_and_files_of_attached_databases_n.dbconfig__op___val____List_or_change_sqlite3_db_config___options_n.dbinfo__DB____________Show_status_information_about_the_database_n.dump__TABLE__...______Dump_the_database_in_an_SQL_text_format_n_________________________If_TABLE_specified__only_dump_tables_matching_n_________________________LIKE_pattern_TABLE._n.echo_onoff___________Turn_command_echo_on_or_off_n.eqp_onofffull_______Enable_or_disable_automatic_EXPLAIN_QUERY_PLAN_n.excel_________________Display_the_output_of_next_command_in_a_spreadsheet_n.exit__________________Exit_this_program_n.expert________________EXPERIMENTAL._Suggest_indexes_for_specified_queries_n.fullschema____indent__Show_schema_and_the_content_of_sqlite_stat_tables_n.headers_onoff________Turn_display_of_headers_on_or_off_n.help__________________Show_this_message_n.import_FILE_TABLE_____Import_data_from_FILE_into_TABLE_n.imposter_INDEX_TABLE__Create_imposter_table_TABLE_on_index_INDEX_n.indexes__TABLE________Show_names_of_all_indexes_n_________________________If_TABLE_specified__only_show_indexes_for_tables_n_________________________matching_LIKE_pattern_TABLE._n.limit__LIMIT___VAL____Display_or_change_the_value_of_an_SQLITE_LIMIT_n.lint_OPTIONS__________Report_potential_schema_issues._Options:_n_________________________fkey_indexes_____Find_missing_foreign_key_indexes_n.load_FILE__ENTRY______Load_an_extension_library_n.log_FILEoff__________Turn_logging_on_or_off.__FILE_can_be_stderr_stdout_n.mode_MODE__TABLE______Set_output_mode_where_MODE_is_one_of:_n_________________________ascii____Columns_rows_delimited_by_0x1F_and_0x1E_n_________________________csv______Comma_separated_values_n_________________________column___Left_aligned_columns.___See_.width__n_________________________html_____HTML__table__code_n_________________________insert___SQL_insert_statements_for_TABLE_n_________________________line_____One_value_per_line_n_________________________list_____Values_delimited_by____n_________________________quote____Escape_answers_as_for_SQL_n_________________________tabs_____Tab_separated_values_n_________________________tcl______TCL_list_elements_n.nullvalue_STRING______Use_STRING_in_place_of_NULL_values_n.once___e_xFILE______Output_for_the_next_SQL_command_only_to_FILE_n_________________________or_invoke_system_text_editor___e__or_spreadsheet___x__n_________________________on_the_output._n.open__OPTIONS___FILE__Close_existing_database_and_reopen_FILE_n_________________________The___new_option_starts_with_an_empty_file_n_________________________Other_options:___readonly___append___zip_n.output__FILE__________Send_output_to_FILE_or_stdout_n.print_STRING..._______Print_literal_STRING_n.prompt_MAIN_CONTINUE__Replace_the_standard_prompts_n.quit__________________Exit_this_program_n.read_FILENAME_________Execute_SQL_in_FILENAME_n.restore__DB__FILE_____Restore_content_of_DB__default__main___from_FILE_n.save_FILE_____________Write_in_memory_database_into_FILE_n.scanstats_onoff______Turn_sqlite3_stmt_scanstatus___metrics_on_or_off_n.schema__PATTERN_______Show_the_CREATE_statements_matching_PATTERN_n__________________________Add___indent_for_pretty_printing_n.selftest____init______Run_tests_defined_in_the_SELFTEST_table_n.separator_COL__ROW____Change_the_column_separator_and_optionally_the_row_n_________________________separator_for_both_the_output_mode_and_.import_n.sha3sum__OPTIONS...___Compute_a_SHA3_hash_of_database_content_n.shell_CMD_ARGS..._____Run_CMD_ARGS.
push 0x5e3678
push eax
call fcn.00495cb0
add esp, 0xc
jmp 0x4a7a94
cmp edi, 0x69
jne 0x4a72b7
push esi
push str.import
push ebx
call fcn.0058b254
add esp, 0xc
test eax, eax
jne 0x4a6fd7
cmp dword [esp + 0x14], 3
mov dword [esp + 0x3c], eax
je 0x4a6926
push str.Usage:_.import_FILE_TABLE_n
call fcn.0058b93f
add eax, 0x40
push eax
call fcn.00589fad
add esp, 8
jmp 0x4a7a94
mov esi, dword [esp + 0x10]
xor eax, eax
xor ebx, ebx
mov dword [0x6413e8], eax
mov dword [esp + 0x88], eax
mov dword [esp + 0x8c], eax
mov dword [esp + 0x90], eax
mov dword [esp + 0x94], eax
mov dword [esp + 0x98], eax
mov dword [esp + 0x9c], eax
mov dword [esp + 0xa0], eax
mov dword [esp + 0xa4], eax
mov dword [esp + 0xa8], eax
mov dword [esp + 0xac], eax
call fcn.004a5270
lea ecx, [esi + 0x6a]
mov dword [esp + 0x2c], ecx
call fcn.00495ef0
test eax, eax
jne 0x4a6998
push str.Error:_non_null_column_separator_required_for_import_n
jmp 0x4a5b8b
cmp eax, 1
jle 0x4a69a7
push str.Error:_multi_character_column_separators_not_allowed_for_import_n
jmp 0x4a5b8b
lea ebx, [esi + 0x7e]
mov ecx, ebx
call fcn.00495ef0
test eax, eax
jne 0x4a69bf
push str.Error:_non_null_row_separator_required_for_import_n
jmp 0x4a5b8b
cmp eax, 2
jne 0x4a6a11
cmp dword [esi + 0x24], 8
jne 0x4a6a16
mov ecx, 0x5d310c
mov eax, ebx
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4a69f1
test dl, dl
je 0x4a69ed
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4a69f1
add eax, 2
add ecx, 2
test dl, dl
jne 0x4a69d1
xor eax, eax
jmp 0x4a69f6
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x4a6a16
push 0x5e3518
push ebx
push 0x14
call fcn.004accb0
add esp, 0xc
mov ecx, ebx
call fcn.00495ef0
cmp eax, 1
jle 0x4a6a20
push str.Error:_multi_character_row_separators_not_allowed_for_import_n
jmp 0x4a5b8b
mov edi, dword [esp + 0xcc]
mov dword [esp + 0x88], edi
mov dword [esp + 0x9c], 1
cmp byte [edi], 0x7c
jne 0x4a6a61
lea ecx, [edi + 1]
push 0x5e8de4
push ecx
call fcn.0058d846
mov dword [esp + 0x90], str._pipe_
mov dword [esp + 0x28], fcn.0058dd57
jmp 0x4a6a74
push 0x5e557c
push edi
call fcn.0058ca5e
mov dword [esp + 0x28], fcn.005873cd
add esp, 8
cmp dword [esi + 0x24], 0xa
mov dword [esp + 0x8c], eax
mov dword [esp + 0x24], 0x4a34c0
je 0x4a6a94
mov dword [esp + 0x24], 0x4a3230
test eax, eax
jne 0x4a6aa3
push edi
push str.Error:_cannot_open___s__n
jmp 0x4a5b5b
mov edx, dword [esp + 0x2c]
movsx eax, byte [edx]
mov edx, dword [esp + 0xd0]
movsx ecx, byte [ebx]
push edx
push str.SELECT__FROM__s
mov dword [esp + 0xb0], eax
mov dword [esp + 0xb4], ecx
call fcn.004d30e0
mov edi, eax
add esp, 8
test edi, edi
jne 0x4a6aea
mov eax, dword [esp + 0x8c]
push eax
call dword [esp + 0x24]
add esp, 4
call fcn.00495d30
mov ecx, edi
call fcn.00495ef0
push 0
lea ecx, [esp + 0x40]
push ecx
push 0xffffffffffffffff
mov edx, esi
mov dword [esp + 0x38], eax
mov eax, dword [edx]
push edi
push eax
call fcn.00521170
push 0
lea esi, [esp + 0xa0]
mov ebx, eax
call fcn.004a31f0
add esp, 0x18
test ebx, ebx
je 0x4a6c78
mov ecx, dword [esp + 0x10]
mov edx, dword [ecx]
push edx
call fcn.004f7d70
push eax
push str.no_such_table:_
call fcn.004b7e80
add esp, 0xc
test eax, eax
jne 0x4a6c78
mov eax, dword [esp + 0xd0]
push eax
push str.CREATE_TABLE__s
call fcn.004d30e0
lea ecx, [esp + 0x90]
push ecx
mov esi, eax
mov bl, 0x28
call dword [esp + 0x30]
add esp, 0xc
test eax, eax
je 0x4a6c2f
mov edx, dword [esp + 0x90]
push edx
movsx eax, bl
push eax
push esi
push str._z_c_n____w__TEXT
call fcn.004d30e0
mov ecx, dword [esp + 0xb4]
add esp, 0x10
mov esi, eax
mov bl, 0x2c
cmp ecx, dword [esp + 0xa8]
jne 0x4a6bb4
lea edx, [esp + 0x88]
push edx
call dword [esp + 0x28]
add esp, 4
test eax, eax
jne 0x4a6b73
push esi
push str._z_n_
call fcn.004d30e0
push 0
push 0
mov esi, eax
mov eax, dword [esp + 0x20]
mov ecx, dword [eax]
push 0
push esi
push ecx
call fcn.00527b30
push esi
mov ebx, eax
call fcn.004ac9a0
mov edx, dword [esp + 0x30]
mov eax, dword [edx]
add esp, 0x20
test ebx, ebx
je 0x4a6c63
push eax
call fcn.004f7d70
mov ecx, dword [esp + 0xd4]
add esp, 4
push eax
push ecx
push str.CREATE_TABLE__s_...__failed:__s_n
call fcn.0058b93f
add eax, 0x40
push eax
call fcn.00495cb0
mov edx, dword [esp + 0xa0]
push edx
call fcn.004ac9a0
mov eax, dword [esp + 0xa0]
push eax
call dword [esp + 0x38]
add esp, 0x18
jmp 0x4a5b6c
push esi
call fcn.004ac9a0
mov eax, dword [esp + 0x94]
push eax
call fcn.004ac9a0
mov ecx, dword [esp + 0x94]
push ecx
call dword [esp + 0x2c]
mov edx, dword [esp + 0x94]
add esp, 0xc
push edx
push str._s:_empty_file_n
jmp 0x4a5b5b
push 0
lea ecx, [esp + 0x40]
push ecx
push 0xffffffffffffffff
push edi
push eax
call fcn.00521170
add esp, 0x14
mov ebx, eax
push edi
call fcn.004ac9a0
add esp, 4
test ebx, ebx
je 0x4a6ccd
mov eax, dword [esp + 0x3c]
test eax, eax
je 0x4a6c96
push eax
call fcn.005125e0
add esp, 4
mov ecx, dword [esp + 0x10]
mov edx, dword [ecx]
push edx
call fcn.004f7d70
add esp, 4
push eax
push str.Error:__s_n
call fcn.0058b93f
add eax, 0x40
push eax
call fcn.00495cb0
mov eax, dword [esp + 0x98]
push eax
call dword [esp + 0x30]
add esp, 0x10
jmp 0x4a5b6c
mov ecx, dword [esp + 0x3c]
push ecx
call fcn.004b4b60
mov edx, dword [esp + 0x40]
push edx
mov ebx, eax
call fcn.005125e0
add esp, 8
mov dword [esp + 0x3c], 0
test ebx, ebx
je 0x4a5933
mov edi, dword [esp + 0x2c]
lea eax, [ebx + edi]
lea eax, [eax + eax + 0x14]
cdq
push edx
push eax
call fcn.004bbb30
mov esi, eax
add esp, 8
test esi, esi
jne 0x4a6d26
mov eax, dword [esp + 0x8c]
push eax
call dword [esp + 0x24]
add esp, 4
call fcn.00495d30
mov ecx, dword [esp + 0xd0]
push ecx
push str.INSERT_INTO___w__VALUES__
push esi
add edi, 0x14
push edi
call fcn.004accb0
add esp, 0x10
mov ecx, esi
call fcn.00495ef0
cmp ebx, 1
jle 0x4a6d5f
lea ecx, [ebx - 1]
nop
mov byte [eax + esi], 0x2c
inc eax
mov byte [eax + esi], 0x3f
inc eax
sub ecx, 1
jne 0x4a6d50
mov edi, dword [esp + 0x10]
push 0
lea edx, [esp + 0x40]
push edx
mov byte [eax + esi], 0x29
push 0xffffffffffffffff
mov byte [eax + esi + 1], 0
mov eax, dword [edi]
push esi
push eax
call fcn.00521170
push esi
mov dword [esp + 0x30], eax
call fcn.004ac9a0
add esp, 0x18
cmp dword [esp + 0x18], 0
je 0x4a6dd9
mov ecx, dword [edi]
push ecx
call fcn.004f7d70
add esp, 4
push eax
push str.Error:__s_n
call fcn.0058b93f
add eax, 0x40
push eax
call fcn.00495cb0
mov eax, dword [esp + 0x48]
add esp, 0xc
test eax, eax
je 0x4a6dc5
push eax
call fcn.005125e0
add esp, 4
mov edx, dword [esp + 0x8c]
push edx
call dword [esp + 0x24]
add esp, 4
jmp 0x4a5b6c
mov eax, dword [edi]
push eax
call fcn.004bb5a0
add esp, 4
mov dword [esp + 0x2c], eax
test eax, eax
je 0x4a6e02
mov ecx, dword [edi]
push 0
push 0
push 0
push str.BEGIN
push ecx
call fcn.00527b30
add esp, 0x14
mov edx, dword [esp + 0x9c]
xor esi, esi
mov dword [esp + 0x44], edx
test ebx, ebx
jle 0x4a6ecc
jmp 0x4a6e20
lea eax, [esp + 0x88]
push eax
call dword [esp + 0x28]
add esp, 4
test eax, eax
jne 0x4a6e3b
test esi, esi
je 0x4a6ecc
mov ecx, dword [esp + 0x10]
cmp dword [ecx + 0x24], 0xa
jne 0x4a6e52
test eax, eax
je 0x4a6e4e
cmp byte [eax], 0
jne 0x4a6e52
test esi, esi
je 0x4a6ecc
mov edx, dword [esp + 0x3c]
push 0xffffffffffffffff
push 0xffffffffffffffff
push eax
lea edi, [esi + 1]
push edi
push edx
call fcn.004ebd70
lea eax, [ebx - 1]
add esp, 0x14
cmp esi, eax
jge 0x4a6ec3
mov ecx, dword [esp + 0xa4]
cmp ecx, dword [esp + 0xa8]
je 0x4a6ec3
mov edx, dword [esp + 0x44]
mov eax, dword [esp + 0x88]
push edi
push ebx
push edx
push eax
push str._s:_d:_expected__d_columns_but_found__d___filling_the_rest_with_NULL_n
call fcn.0058b93f
add eax, 0x40
push eax
call fcn.00495cb0
add esi, 2
add esp, 0x18
cmp esi, ebx
jg 0x4a6ec3
jmp 0x4a6eb0
mov ecx, dword [esp + 0x3c]
push esi
push ecx
call fcn.004ebcb0
inc esi
add esp, 8
cmp esi, ebx
jle 0x4a6eb0
inc esi
cmp esi, ebx
jl 0x4a6e20
mov edx, dword [esp + 0xa8]
cmp dword [esp + 0xa4], edx
jne 0x4a6f23
mov edi, dword [esp + 0x24]
lea eax, [esp + 0x88]
push eax
call edi
mov ecx, dword [esp + 0xa8]
add esp, 4
inc esi
cmp ecx, dword [esp + 0xa8]
je 0x4a6ee0
mov edx, dword [esp + 0x44]
mov eax, dword [esp + 0x88]
push esi
push ebx
push edx
push eax
push str._s:_d:_expected__d_columns_but_found__d___extras_ignored_n
call fcn.0058b93f
add eax, 0x40
push eax
call fcn.00495cb0
add esp, 0x18
cmp esi, ebx
jl 0x4a6f79
mov ecx, dword [esp + 0x3c]
push ecx
call fcn.005277b0
mov edx, dword [esp + 0x40]
push edx
call fcn.005126b0
add esp, 8
mov dword [esp + 0x18], eax
test eax, eax
je 0x4a6f79
mov eax, dword [esp + 0x10]
mov ecx, dword [eax]
push ecx
call fcn.004f7d70
mov edx, dword [esp + 0x48]
add esp, 4
push eax
mov eax, dword [esp + 0x8c]
push edx
push eax
push str._s:_d:_INSERT_failed:__s_n
call fcn.0058b93f
add eax, 0x40
push eax
call fcn.00495cb0
add esp, 0x14
cmp dword [esp + 0xa4], 0xffffffff
jne 0x4a6e02
mov ecx, dword [esp + 0x8c]
push ecx
call dword [esp + 0x24]
mov edx, dword [esp + 0x94]
push edx
call fcn.004ac9a0
mov eax, dword [esp + 0x44]
push eax
call fcn.005125e0
add esp, 0xc
cmp dword [esp + 0x2c], 0
je 0x4a7a94
mov ecx, dword [esp + 0x10]
mov edx, dword [ecx]
push 0
push 0
push 0
push str.COMMIT
push edx
call fcn.00527b30
add esp, 0x14
jmp 0x4a7a94
push esi
push str.imposter
push ebx
call fcn.0058b254
add esp, 0xc
test eax, eax
jne 0x4a93c1
mov eax, dword [esp + 0x14]
xor edi, edi
mov dword [esp + 0x44], edi
cmp eax, 3
je 0x4a7036
cmp eax, 2
jne 0x4a701b
mov eax, dword [esp + 0xcc]
push 0x5e43b4
push eax
call fcn.004bc240
add esp, 8
test eax, eax
je 0x4a7036
push str.Usage:_.imposter_INDEX_IMPOSTER_n_______.imposter_off_n
call fcn.0058b93f
add eax, 0x40
push eax
call fcn.00495cb0
add esp, 8
jmp 0x4a7a8c
mov esi, dword [esp + 0x10]
xor ebx, ebx
call fcn.004a5270
cmp dword [esp + 0x14], 2
jne 0x4a7064
push 1
push ebx
mov ecx, esi
mov edx, dword [ecx]
push str.main
push edx
push 0x19
call fcn.0052bfd0
add esp, 0x14
jmp 0x4a7a94
mov eax, dword [esp + 0xcc]
push eax
push str.SELECT_rootpage_FROM_sqlite_master_WHERE_name_q_AND_typeindex
call fcn.004d30e0
mov ebx, dword [esp + 0x18]
mov edx, dword [ebx]
push 0
lea ecx, [esp + 0x2c]
push ecx
mov esi, eax
push 0xffffffffffffffff
push esi
push edx
call fcn.00521170
push esi
call fcn.004ac9a0
mov eax, dword [esp + 0x40]
push eax
call fcn.005277b0
add esp, 0x24
cmp eax, 0x64
jne 0x4a70b9
mov ecx, dword [esp + 0x20]
push 0
push ecx
call fcn.004c5b70
add esp, 8
mov dword [esp + 0x44], eax
mov edx, dword [esp + 0x20]
push edx
call fcn.005125e0
add esp, 4
cmp dword [esp + 0x44], 0
jne 0x4a70df
mov eax, dword [esp + 0xcc]
push eax
push str.no_such_index:___s__n
jmp 0x4a7a7b
mov ecx, dword [esp + 0xcc]
push ecx
push str.PRAGMA_index_xinfo_q
call fcn.004d30e0
push 0
lea edx, [esp + 0x2c]
push edx
mov esi, eax
mov eax, dword [ebx]
push 0xffffffffffffffff
push esi
push eax
call fcn.00521170
push esi
call fcn.004ac9a0
mov ecx, dword [esp + 0x40]
push ecx
xor esi, esi
call fcn.005277b0
add esp, 0x24
cmp eax, 0x64
jne 0x4a71ab
mov edx, dword [esp + 0x20]
push 2
push edx
call fcn.004cfe50
add esp, 8
inc esi
test eax, eax
jne 0x4a7171
mov eax, dword [esp + 0x20]
push 1
push eax
call fcn.004c5b70
add esp, 8
cmp eax, 0xffffffff
jne 0x4a7152
mov eax, str._ROWID_
jmp 0x4a7171
push esi
push str.expr_d
lea ecx, [esp + 0x1238]
push ecx
push 0x14
call fcn.004accb0
add esp, 0x10
lea eax, [esp + 0x1230]
push eax
test edi, edi
jne 0x4a7185
push str.__w_
call fcn.004d30e0
add esp, 8
jmp 0x4a7193
push edi
push str._z___w_
call fcn.004d30e0
add esp, 0xc
mov edx, dword [esp + 0x20]
push edx
mov edi, eax
call fcn.005277b0
add esp, 4
cmp eax, 0x64
je 0x4a7123
mov eax, dword [esp + 0x20]
push eax
call fcn.005125e0
mov ecx, dword [esp + 0xd4]
push edi
push edi
push ecx
push str.CREATE_TABLE___w___s_PRIMARY_KEY__s__WITHOUT_ROWID
call fcn.004d30e0
push edi
mov esi, eax
call fcn.004ac9a0
mov edx, dword [esp + 0x5c]
mov eax, dword [ebx]
push edx
push 1
push str.main
push eax
push 0x19
call fcn.0052bfd0
add esp, 0x2c
test eax, eax
jne 0x4a728a
mov ecx, dword [ebx]
push eax
push eax
push eax
push esi
push ecx
call fcn.00527b30
mov edx, dword [ebx]
push 0
push 0
push str.main
push edx
mov edi, eax
push 0x19
mov dword [esp + 0x40], edi
call fcn.0052bfd0
add esp, 0x28
test edi, edi
je 0x4a724f
mov eax, dword [ebx]
push eax
call fcn.004f7d70
add esp, 4
push eax
push esi
push str.Error_in___s_:__s_n
call fcn.0058b93f
add eax, 0x40
push eax
call fcn.00495cb0
add esp, 0x10
push esi
call fcn.004ac9a0
add esp, 4
jmp 0x4a7a94
push esi
push str._s__n
call fcn.0058b93f
add eax, 0x20
push eax
call fcn.00495cb0
add esp, 0xc
push str.WARNING:_writing_to_an_imposter_table_will_corrupt_the_index__n
call fcn.0058b93f
add eax, 0x20
push eax
call fcn.00589fad
add esp, 8
push esi
call fcn.004ac9a0
add esp, 4
jmp 0x4a7a94
push eax
push str.SQLITE_TESTCTRL_IMPOSTER_returns__d_n
call fcn.0058b93f
add eax, 0x40
push eax
call fcn.00589fad
add esp, 0xc
push esi
mov dword [esp + 0x1c], 1
call fcn.004ac9a0
add esp, 4
jmp 0x4a7a94
cmp edi, 0x6c
jne 0x4a7529
cmp esi, 5
jl 0x4a73fc
push esi
push str.limits
push ebx
call fcn.0058b254
add esp, 0xc
test eax, eax
jne 0x4a73fc
mov edi, dword [esp + 0x10]
xor ebx, ebx
mov esi, edi
call fcn.004a5270
mov eax, dword [esp + 0x14]
cmp eax, 1
jne 0x4a732f
mov esi, 0x5e4d50
jmp 0x4a7300
mov ecx, dword [esi + 4]
mov edx, dword [edi]
push 0xffffffffffffffff
push ecx
push edx
call fcn.004bb4b0
push eax
mov eax, dword [esi]
push eax
push str._20s__d_n
call fcn.00587659
add esi, 8
add esp, 0x18
cmp esi, 0x5e4db0
jl 0x4a7300
jmp 0x4a7a94
cmp eax, 3
jle 0x4a733e
push str.Usage:_.limit_NAME__NEW_VALUE__n
jmp 0x4a59f3
mov edi, dword [esp + 0xcc]
mov ecx, edi
or ebx, 0xffffffff
call fcn.00495ef0
mov dword [esp + 0x2c], eax
xor esi, esi
jmp 0x4a7360
mov ecx, dword [esp + 0x2c]
mov edx, dword [esi*8 + 0x5e4d50]
push ecx
push edi
push edx
call fcn.004ad000
add esp, 0xc
test eax, eax
jne 0x4a7380
test ebx, ebx
jge 0x4a7395
mov ebx, esi
inc esi
cmp esi, 0xc
jl 0x4a7360
test ebx, ebx
jge 0x4a73a0
push edi
push str.unknown_limit:___s__nenter__.limits__with_no_arguments_for_a_list._n
jmp 0x4a7a7b
push edi
push str.ambiguous_limit:___s__n
jmp 0x4a7a7b
cmp dword [esp + 0x14], 3
jne 0x4a73cb
mov eax, dword [esp + 0xd0]
call fcn.004960c0
mov ecx, dword [esp + 0x10]
mov edx, dword [ecx]
push eax
mov eax, dword [ebx*8 + 0x5e4d54]
push eax
push edx
call fcn.004bb4b0
add esp, 0xc
mov eax, dword [ebx*8 + 0x5e4d54]
mov ecx, dword [esp + 0x10]
mov edx, dword [ecx]
push 0xffffffffffffffff
push eax
push edx
call fcn.004bb4b0
push eax
mov eax, dword [ebx*8 + 0x5e4d50]
push eax
push str._20s__d_n
call fcn.00587659
add esp, 0x18
jmp 0x4a7a94
mov edi, 2
cmp esi, edi
jle 0x4a743c
push esi
push str.lint
push ebx
call fcn.0058b254
add esp, 0xc
test eax, eax
jne 0x4a743c
mov esi, dword [esp + 0x10]
xor ebx, ebx
call fcn.004a5270
mov edi, dword [esp + 0x14]
push esi
lea esi, [esp + 0xcc]
call fcn.004a4730
add esp, 4
jmp 0x4a7a94
push esi
push str.load
push ebx
call fcn.0058b254
add esp, 0xc
test eax, eax
jne 0x4a74d3
cmp dword [esp + 0x14], edi
mov dword [esp + 0x68], eax
jge 0x4a7467
push str.Usage:_.load_FILE__ENTRYPOINT__n
jmp 0x4a59f3
mov esi, dword [esp + 0x10]
xor ebx, ebx
call fcn.004a5270
mov eax, dword [esp + 0xcc]
xor edx, edx
cmp dword [esp + 0x14], 3
lea ecx, [esp + 0x68]
setl dl
push ecx
mov ecx, dword [esi]
dec edx
and edx, dword [esp + 0xd4]
push edx
push eax
push ecx
call fcn.004dbae0
add esp, 0x10
mov dword [esp + 0x18], eax
test eax, eax
je 0x4a7a94
mov edx, dword [esp + 0x68]
push edx
push str.Error:__s_n
call fcn.0058b93f
add eax, 0x40
push eax
call fcn.00495cb0
mov eax, dword [esp + 0x74]
push eax
call fcn.004ac9a0
add esp, 0x10
jmp 0x4a7a8c
push esi
push 0x5e8a48
push ebx
call fcn.0058b254
add esp, 0xc
test eax, eax
jne 0x4a7a75
cmp dword [esp + 0x14], edi
je 0x4a74fa
push str.Usage:_.log_FILENAME_n
jmp 0x4a59f3
mov ecx, dword [esp + 0x10]
mov esi, dword [ecx + 0x504]
call fcn.004a3070
mov edi, dword [esp + 0xcc]
push 0
call fcn.004a30a0
mov edx, dword [esp + 0x14]
add esp, 4
mov dword [edx + 0x504], eax
jmp 0x4a7a94
cmp edi, 0x6d
jne 0x4a7889
push esi
push str.mode
push ebx
call fcn.0058b254
add esp, 0xc
test eax, eax
jne 0x4a7a75
mov edi, dword [esp + 0xcc]
mov ebx, 2
cmp dword [esp + 0x14], ebx
mov ecx, edi
jge 0x4a7562
mov ecx, 0x5d3001
call fcn.00495ef0
mov esi, eax
movsx eax, byte [ecx]
cmp eax, 0x6c
jne 0x4a75b1
cmp esi, ebx
jle 0x4a782a
push esi
push str.lines
push edi
call fcn.0058b254
add esp, 0xc
test eax, eax
jne 0x4a75fa
mov esi, dword [esp + 0x10]
mov dword [esi + 0x24], eax
push 0x5e3518
lea eax, [esi + 0x7e]
push eax
push 0x14
call fcn.004accb0
mov edx, dword [esi + 0x24]
add esp, 0xc
mov dword [esi + 0x2c], edx
jmp 0x4a7a94
cmp eax, 0x63
jne 0x4a7646
push esi
push str.columns
push edi
call fcn.0058b254
add esp, 0xc
test eax, eax
jne 0x4a76d1
mov esi, dword [esp + 0x10]
push 0x5e3518
lea ecx, [esi + 0x7e]
push ecx
push 0x14
mov dword [esi + 0x24], 1
call fcn.004accb0
mov edx, dword [esi + 0x24]
add esp, 0xc
mov dword [esi + 0x2c], edx
jmp 0x4a7a94
push esi
push str.list
push edi
call fcn.0058b254
add esp, 0xc
test eax, eax
jne 0x4a782a
mov esi, dword [esp + 0x10]
push 0x5e61d4
lea edx, [esi + 0x6a]
push edx
push 0x14
mov dword [esi + 0x24], ebx
call fcn.004accb0
push 0x5e3518
lea eax, [esi + 0x7e]
push eax
push 0x14
call fcn.004accb0
mov edx, dword [esi + 0x24]
add esp, 0x18
mov dword [esi + 0x2c], edx
jmp 0x4a7a94
cmp eax, 0x68
jne 0x4a7678
push esi
push str.html
push edi
call fcn.0058b254
add esp, 0xc
test eax, eax
jne 0x4a782a
mov esi, dword [esp + 0x10]
mov dword [esi + 0x24], 4
mov edx, dword [esi + 0x24]
mov dword [esi + 0x2c], edx
jmp 0x4a7a94
cmp eax, 0x74
jne 0x4a775d
push esi
push 0x5e48fc
push edi
call fcn.0058b254
add esp, 0xc
test eax, eax
jne 0x4a7721
mov esi, dword [esp + 0x10]
push 0x5d3090
lea ecx, [esi + 0x6a]
push ecx
push 0x14
mov dword [esi + 0x24], 7
call fcn.004accb0
push 0x5e3518
lea edx, [esi + 0x7e]
push edx
push 0x14
call fcn.004accb0
mov edx, dword [esi + 0x24]
add esp, 0x18
mov dword [esi + 0x2c], edx
jmp 0x4a7a94
push esi
push 0x5e48f8
push edi
call fcn.0058b254
add esp, 0xc
test eax, eax
jne 0x4a782a
mov esi, dword [esp + 0x10]
push 0x5e546c
lea eax, [esi + 0x6a]
push eax
push 0x14
mov dword [esi + 0x24], 8
call fcn.004accb0
push 0x5d310c
lea ecx, [esi + 0x7e]
push ecx
push 0x14
call fcn.004accb0
mov edx, dword [esi + 0x24]
add esp, 0x18
mov dword [esi + 0x2c], edx
jmp 0x4a7a94
push esi
push str.tabs
push edi
call fcn.0058b254
add esp, 0xc
test eax, eax
jne 0x4a782a
mov esi, dword [esp + 0x10]
push 0x5e8a0c
lea edx, [esi + 0x6a]
push edx
push 0x14
mov dword [esi + 0x24], ebx
call fcn.004accb0
mov edx, dword [esi + 0x24]
add esp, 0xc
mov dword [esi + 0x2c], edx
jmp 0x4a7a94
cmp eax, 0x69
jne 0x4a77ab
push esi
push str.insert
push edi
call fcn.0058b254
add esp, 0xc
test eax, eax
jne 0x4a782a
cmp dword [esp + 0x14], 3
mov esi, dword [esp + 0x10]
mov eax, dword [esp + 0xd0]
mov dword [esi + 0x24], 5
jge 0x4a7797
mov eax, str.table
push esi
call fcn.004a1000
mov edx, dword [esi + 0x24]
add esp, 4
mov dword [esi + 0x2c], edx
jmp 0x4a7a94
cmp eax, 0x71
jne 0x4a77d9
push esi
push str.quote
push edi
call fcn.0058b254
add esp, 0xc
test eax, eax
jne 0x4a782a
mov esi, dword [esp + 0x10]
mov dword [esi + 0x24], 6
mov edx, dword [esi + 0x24]
mov dword [esi + 0x2c], edx
jmp 0x4a7a94
cmp eax, 0x61
jne 0x4a782a
push esi
push str.ascii
push edi
call fcn.0058b254
add esp, 0xc
test eax, eax
jne 0x4a782a
mov esi, dword [esp + 0x10]
push 0x5e8a08
lea eax, [esi + 0x6a]
push eax
push 0x14
mov dword [esi + 0x24], 0xa
call fcn.004accb0
push 0x5e8a04
lea ecx, [esi + 0x7e]
push ecx
push 0x14
call fcn.004accb0
mov edx, dword [esi + 0x24]
add esp, 0x18
mov dword [esi + 0x2c], edx
jmp 0x4a7a94
mov esi, 1
cmp dword [esp + 0x14], esi
jne 0x4a7860
mov esi, dword [esp + 0x10]
mov edx, dword [esi + 0x24]
mov eax, dword [edx*4 + 0x632874]
mov ecx, dword [esi + 0x18]
push eax
push str.current_output_mode:__s_n
push ecx
call fcn.00589fad
mov edx, dword [esi + 0x24]
add esp, 0xc
mov dword [esi + 0x2c], edx
jmp 0x4a7a94
push str.Error:_mode_should_be_one_of:_ascii_column_csv_html_insert_line_list_quote_tabs_tcl_n
call fcn.0058b93f
add eax, 0x40
push eax
call fcn.00589fad
mov dword [esp + 0x20], esi
mov esi, dword [esp + 0x18]
mov edx, dword [esi + 0x24]
add esp, 8
mov dword [esi + 0x2c], edx
jmp 0x4a7a94
cmp edi, 0x6e
jne 0x4a78df
push esi
push str.nullvalue
push ebx
call fcn.0058b254
add esp, 0xc
test eax, eax
jne 0x4a7a75
cmp dword [esp + 0x14], 2
jne 0x4a78d5
mov eax, dword [esp + 0xcc]
mov ecx, dword [esp + 0x10]
push eax
push 0x13
push 0x5e5460
add ecx, 0x3dc
push ecx
push 0x14
call fcn.004accb0
add esp, 0x14
jmp 0x4a7a94
push str.Usage:_.nullvalue_STRING_n
jmp 0x4a59f3
cmp edi, 0x6f
jne 0x4a7d31
push esi
push str.open
push ebx
call fcn.0058b254
add esp, 0xc
test eax, eax
jne 0x4a7a47
cmp esi, 2
jl 0x4a7a47
mov esi, dword [esp + 0x10]
mov edx, dword [esi]
xor edi, edi
push edx
mov dword [esp + 0x2c], edi
call fcn.004a2e40
mov eax, dword [esi + 0x4f8]
push eax
mov dword [esi], edi
mov dword [esi + 0x4f4], edi
call fcn.004ac9a0
mov dword [esi + 0x4f8], edi
mov edi, 1
add esp, 8
cmp dword [esp + 0x14], edi
mov byte [esi + 9], 0
jle 0x4a7a29
mov ebx, dword [esp + 0x14]
mov edi, edi
mov esi, dword [esp + edi*4 + 0xc8]
cmp byte [esi], 0x2d
jne 0x4a79c1
mov ecx, 0x5e895c
mov eax, esi
call fcn.004a4110
test eax, eax
je 0x4a7976
mov dword [esp + 0x28], 1
jmp 0x4a79af
mov ecx, str.append
mov eax, esi
call fcn.004a4110
test eax, eax
je 0x4a7990
mov ecx, dword [esp + 0x10]
mov byte [ecx + 9], 2
jmp 0x4a79af
mov ecx, str.readonly
mov eax, esi
call fcn.004a4110
test eax, eax
je 0x4a79aa
mov edx, dword [esp + 0x10]
mov byte [edx + 9], 4
jmp 0x4a79af
cmp byte [esi], 0x2d
je 0x4a79b6
inc edi
cmp edi, ebx
jl 0x4a7950
jmp 0x4a7a29
push esi
push str.unknown_option:__s_n
jmp 0x4a7a7b
cmp ebx, edi
jle 0x4a7a29
mov eax, esi
push eax
push 0x5e3678
call fcn.004d30e0
mov edi, eax
add esp, 8
test edi, edi
je 0x4a7a29
cmp dword [esp + 0x28], 0
je 0x4a79eb
push edi
call fcn.004a4160
add esp, 4
mov esi, dword [esp + 0x10]
mov ebx, 1
mov dword [esi + 0x4f4], edi
call fcn.004a5270
cmp dword [esi], 0
jne 0x4a7a23
push edi
push str.Error:_cannot_open__s_n
call fcn.0058b93f
add eax, 0x40
push eax
call fcn.00495cb0
push edi
call fcn.004ac9a0
add esp, 0x10
jmp 0x4a7a29
mov dword [esi + 0x4f8], edi
mov ecx, dword [esp + 0x10]
cmp dword [ecx], 0
jne 0x4a7a94
mov esi, ecx
xor ebx, ebx
mov dword [esi + 0x4f4], 0
call fcn.004a5270
jmp 0x4a7a94
push esi
push str.output
push ebx
call fcn.0058b254
add esp, 0xc
test eax, eax
je 0x4a7afe
push esi
push str.once
push ebx
call fcn.0058b254
add esp, 0xc
test eax, eax
je 0x4a7afe
push ebx
push str.Error:_unknown_command_or_invalid_arguments:____s_._Enter__.help__for_help_n
call fcn.0058b93f
add eax, 0x40
push eax
call fcn.00495cb0
add esp, 0xc
mov dword [esp + 0x18], 1
mov esi, dword [esp + 0x10]
mov eax, dword [esi + 0x10]
test eax, eax
je 0x4a7aac
add eax, 0xffffffff
mov dword [esi + 0x10], eax
jne 0x4a7aac
call fcn.004a3d10
mov eax, dword [esp + 0x18]
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x1258]
xor ecx, esp
call fcn.00584267
mov esp, ebp
pop ebp
ret
cmp esi, 5
jne 0x4a7a75
mov edi, str.excel
mov eax, ebx
mov cl, byte [eax]
cmp cl, byte [edi]
jne 0x4a7af1
test cl, cl
je 0x4a7aed
mov cl, byte [eax + 1]
cmp cl, byte [edi + 1]
jne 0x4a7af1
add eax, 2
add edi, 2
test cl, cl
jne 0x4a7ad1
xor eax, eax
jmp 0x4a7af6
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x4a7a75
mov edi, dword [esp + 0x14]
cmp edi, 2
jl 0x4a7b14
mov edx, dword [esp + 0xcc]
mov dword [esp + 0x20], edx
jmp 0x4a7b1c
mov dword [esp + 0x20], str.stdout
cmp byte [ebx], 0x65
mov dword [esp + 0x28], 0
jne 0x4a7b49
mov dword [esp + 0x14], 2
mov edi, dword [esp + 0x14]
mov ebx, str.once
mov dword [esp + 0x20], 0x5e88c4
mov esi, 4
jmp 0x4a7b5e
cmp edi, 2
jle 0x4a7b59
push ebx
push str.Usage:_._s___e_xFILE__n
jmp 0x4a7a7b
cmp esi, 1
jle 0x4a7b8d
push esi
push str.once
push ebx
call fcn.0058b254
add esp, 0xc
test eax, eax
jne 0x4a7b8d
cmp edi, 2
jge 0x4a7b80
push str.Usage:_.once___e_xFILE__n
jmp 0x4a59f3
mov esi, dword [esp + 0x10]
mov dword [esi + 0x10], 2
jmp 0x4a7b98
mov esi, dword [esp + 0x10]
mov dword [esi + 0x10], 0
call fcn.004a3d10
mov edi, dword [esp + 0x20]
cmp byte [edi], 0x2d
jne 0x4a7bb1
cmp byte [edi + 1], 0x2d
jne 0x4a7bb1
inc edi
mov dword [esp + 0x20], edi
mov ecx, 0x5e8888
mov eax, edi
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4a7bd8
test dl, dl
je 0x4a7bd4
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4a7bd8
add eax, 2
add ecx, 2
test dl, dl
jne 0x4a7bb8
xor eax, eax
jmp 0x4a7bdd
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
je 0x4a7c11
mov ecx, 0x5e88c4
mov eax, edi
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4a7c08
test dl, dl
je 0x4a7c04
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4a7c08
add eax, 2
add ecx, 2
test dl, dl
jne 0x4a7be8
xor eax, eax
jmp 0x4a7c0d
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x4a7c76
mov eax, esi
mov byte [esi + 0xa], 1
call fcn.0049f260
cmp byte [edi + 1], 0x78
jne 0x4a7c59
push 0x5e48f8
push esi
call fcn.004a41e0
push 0x5e546c
lea eax, [esi + 0x6a]
push eax
push 0x14
mov dword [esi + 0x24], 8
call fcn.004accb0
push 0x5d310c
lea ecx, [esi + 0x7e]
push ecx
push 0x14
call fcn.004accb0
add esp, 0x20
jmp 0x4a7c6f
push 0x5e8884
push esi
call fcn.004a41e0
add esp, 8
mov dword [esp + 0x28], 1
mov edi, dword [esi + 0x48]
mov dword [esp + 0x20], edi
cmp byte [edi], 0x7c
jne 0x4a7cc2
mov edi, dword [esp + 0x20]
lea ebx, [edi + 1]
push 0x5e5f64
push ebx
call fcn.0058d846
add esp, 8
mov dword [esi + 0x18], eax
test eax, eax
jne 0x4a7d12
push ebx
push str.Error:_cannot_open_pipe___s__n
call fcn.0058b93f
add eax, 0x40
push eax
call fcn.00495cb0
add esp, 0xc
call fcn.0058b93f
add eax, 0x20
mov dword [esi + 0x18], eax
jmp 0x4a7a8c
mov edx, dword [esp + 0x28]
push edx
call fcn.004a30a0
mov esi, dword [esp + 0x14]
add esp, 4
mov dword [esi + 0x18], eax
test eax, eax
jne 0x4a7d12
mov ecx, 0x5e43b4
mov eax, edi
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4a7d01
test dl, dl
je 0x4a7cfd
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4a7d01
add eax, 2
add ecx, 2
test dl, dl
jne 0x4a7ce1
xor eax, eax
jmp 0x4a7d06
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
je 0x4a7cb2
push edi
push str.Error:_cannot_write_to___s__n
jmp 0x4a7ca1
push edi
push 0x5e3678
add esi, 0x3f0
push esi
push 0x104
call fcn.004accb0
add esp, 0x10
jmp 0x4a7a94
cmp edi, 0x70
jne 0x4a7e07
cmp esi, 3
jl 0x4a7dab
push esi
push str.print
push ebx
call fcn.0058b254
add esp, 0xc
test eax, eax
jne 0x4a7dab
mov ebx, dword [esp + 0x14]
lea esi, [edi - 0x6f]
cmp ebx, esi
mov edi, dword [esp + 0x10]
jle 0x4a7d95
cmp esi, 1
jle 0x4a7d77
mov eax, dword [edi + 0x18]
push 0x5d3090
push eax
call fcn.00589fad
add esp, 8
mov ecx, dword [esp + esi*4 + 0xc8]
mov edx, dword [edi + 0x18]
push ecx
push 0x5e3678
push edx
call fcn.00495cb0
inc esi
add esp, 0xc
cmp esi, ebx
jl 0x4a7d61
mov eax, dword [edi + 0x18]
push 0x5e3518
push eax
call fcn.00589fad
add esp, 8
jmp 0x4a7a94
push esi
push str.prompt
push ebx
call fcn.0058b254
add esp, 0xc
test eax, eax
jne 0x4a7a75
mov esi, dword [esp + 0x14]
cmp esi, 2
jl 0x4a7de2
mov ecx, dword [esp + 0xcc]
push 0x13
push ecx
push 0x6413c0
call fcn.0058c210
add esp, 0xc
cmp esi, 3
jl 0x4a7a94
mov edx, dword [esp + 0xd0]
push 0x13
push edx
push 0x6413a4
call fcn.0058c210
add esp, 0xc
jmp 0x4a7a94
cmp edi, 0x71
jne 0x4a7e30
push esi
push str.quit
push ebx
call fcn.0058b254
add esp, 0xc
test eax, eax
jne 0x4a7a75
mov dword [esp + 0x18], 2
jmp 0x4a7a94
cmp edi, 0x72
jne 0x4a936e
cmp esi, 3
jl 0x4a7a75
push esi
push str.read
push ebx
call fcn.0058b254
add esp, 0xc
test eax, eax
jne 0x4a7ea9
cmp dword [esp + 0x14], 2
je 0x4a7e66
push str.Usage:_.read_FILE_n
jmp 0x4a59f3
mov edi, dword [esp + 0xcc]
push 0x5e557c
push edi
call fcn.0058ca5e
mov esi, eax
add esp, 8
test esi, esi
jne 0x4a7e8c
push edi
push str.Error:_cannot_open___s__n
jmp 0x4a7a7b
mov eax, dword [esp + 0x10]
push esi
push eax
call fcn.004aa0e0
push esi
mov dword [esp + 0x24], eax
call fcn.005873cd
add esp, 0xc
jmp 0x4a7a94
push esi
push str.restore
push ebx
call fcn.0058b254
add esp, 0xc
test eax, eax
jne 0x4a7a75
mov dword [esp + 0x2c], eax
mov eax, dword [esp + 0x14]
cmp eax, 2
jne 0x4a7edb
mov esi, dword [esp + 0xcc]
mov edi, str.main
jmp 0x4a7ef2
cmp eax, 3
jne 0x4a8029
mov esi, dword [esp + 0xd0]
mov edi, dword [esp + 0xcc]
lea ecx, [esp + 0x34]
push ecx
push esi
call fcn.0052ac40
add esp, 8
test eax, eax
je 0x4a7f2a
push esi
push str.Error:_cannot_open___s__n
call fcn.0058b93f
add eax, 0x40
push eax
call fcn.00495cb0
mov edx, dword [esp + 0x40]
push edx
call fcn.004a2e40
add esp, 0x10
jmp 0x4a5b6c
mov esi, dword [esp + 0x10]
xor ebx, ebx
call fcn.004a5270
mov eax, dword [esp + 0x34]
push str.main
push eax
mov ecx, esi
mov edx, dword [ecx]
push edi
push edx
call fcn.005057f0
mov ebx, eax
add esp, 0x10
test ebx, ebx
jne 0x4a7f68
mov eax, esi
mov ecx, dword [eax]
push ecx
call fcn.004f7d70
add esp, 4
push eax
push str.Error:__s_n
jmp 0x4a7f0a
mov edi, dword [esp + 0x2c]
lea esp, [esp]
push 0x64
push ebx
call fcn.0050af50
mov esi, eax
add esp, 8
test esi, esi
je 0x4a7fae
cmp esi, 5
je 0x4a7fb3
push ebx
call fcn.00511df0
add esp, 4
cmp esi, 0x65
jne 0x4a7fc7
mov eax, dword [esp + 0x34]
push eax
mov dword [esp + 0x1c], 0
call fcn.004a2e40
add esp, 4
jmp 0x4a7a94
cmp esi, 5
jne 0x4a7f70
mov eax, edi
inc edi
cmp eax, 3
jge 0x4a7f86
push 0x64
call fcn.004c34a0
add esp, 4
jmp 0x4a7f70
cmp esi, 5
je 0x4a7ff9
cmp esi, 6
je 0x4a7ff9
mov ecx, dword [esp + 0x10]
mov edx, dword [ecx]
push edx
call fcn.004f7d70
add esp, 4
push eax
push str.Error:__s_n
call fcn.0058b93f
add eax, 0x40
push eax
call fcn.00495cb0
add esp, 0xc
jmp 0x4a800f
push str.Error:_source_database_is_busy_n
call fcn.0058b93f
add eax, 0x40
push eax
call fcn.00589fad
add esp, 8
mov eax, dword [esp + 0x34]
push eax
mov dword [esp + 0x1c], 1
call fcn.004a2e40
add esp, 4
jmp 0x4a7a94
push str.Usage:_.restore__DB__FILE_n
jmp 0x4a59f3
push esi
push str.scanstats
push ebx
call fcn.0058b254
add esp, 0xc
test eax, eax
jne 0x4a8074
cmp dword [esp + 0x14], 2
jne 0x4a806a
mov esi, dword [esp + 0xcc]
call fcn.004a2f70
mov ecx, dword [esp + 0x10]
mov byte [ecx + 8], al
push str.Warning:_.scanstats_not_available_in_this_build._n
jmp 0x4a6910
push str.Usage:_.scanstats_onoff_n
jmp 0x4a59f3
push esi
push str.schema
push ebx
call fcn.0058b254
add esp, 0xc
test eax, eax
jne 0x4a84f7
mov esi, dword [esp + 0x10]
xor ebx, ebx
mov dword [esp + 0x48], eax
mov dword [esp + 0x54], 0x5e54a0
mov dword [esp + 0x24], eax
mov dword [esp + 0x30], eax
call fcn.004a5270
mov ecx, 0x162
lea edi, [esp + 0x720]
rep movsd dword es:[edi], dword [esi]
mov eax, 3
lea edi, [ebx + 1]
mov dword [esp + 0x758], ebx
mov ebx, dword [esp + 0x14]
mov dword [esp + 0x744], eax
mov dword [esp + 0x74c], eax
xor eax, eax
cmp ebx, edi
mov dword [esp + 0x58], eax
mov dword [esp + 0x5c], eax
mov dword [esp + 0x60], eax
jle 0x4a81de
nop
mov esi, dword [esp + edi*4 + 0xc8]
mov ecx, str.indent
mov eax, esi
call fcn.004a4110
test eax, eax
je 0x4a811c
mov eax, 0xb
mov dword [esp + 0x744], eax
mov dword [esp + 0x74c], eax
jmp 0x4a8145
mov ecx, str.debug
mov eax, esi
call fcn.004a4110
test eax, eax
je 0x4a8136
mov dword [esp + 0x30], 1
jmp 0x4a8145
cmp dword [esp + 0x24], 0
jne 0x4a823c
mov dword [esp + 0x24], esi
inc edi
cmp edi, ebx
jl 0x4a80f0
cmp dword [esp + 0x24], 0
je 0x4a81de
mov esi, dword [esp + 0x24]
push 0x5c
push str.sqlite_master
push esi
call fcn.004b7ea0
add esp, 0xc
neg eax
sbb eax, eax
add eax, 1
jne 0x4a8246
push 0x5c
push str.sqlite_temp_master
push esi
call fcn.004b7ea0
add esp, 0xc
test eax, eax
jne 0x4a81de
mov eax, str.sqlite_temp_master
push eax
push str.CREATE_TABLE__s___n__type_text__n__name_text__n__tbl_name_text__n__rootpage_integer__n__sql_text_n_
call fcn.004d30e0
mov dword [esp + 0x20], eax
xor eax, eax
push eax
lea edx, [esp + 0x72c]
push 1
push edx
lea edx, [esp + 0x1a4]
lea ecx, [esp + 0x2c]
mov dword [esp + 0x30], eax
mov dword [esp + 0x1a4], 0x5e86e8
mov dword [esp + 0x1a8], eax
call fcn.0049fe50
mov eax, dword [esp + 0x2c]
push eax
call fcn.004ac9a0
add esp, 0x18
mov esi, dword [esp + 0x10]
mov edx, dword [esi]
push 0
lea ecx, [esp + 0x44]
push ecx
push 0xffffffffffffffff
push str.SELECT_name_FROM_pragma_database_list
push edx
mov dword [esp + 0x54], 0
call fcn.00521170
add esp, 0x14
mov dword [esp + 0x18], eax
test eax, eax
je 0x4a8250
mov eax, dword [esi]
push eax
call fcn.004f7d70
add esp, 4
push eax
push str.Error:__s_n
call fcn.0058b93f
add eax, 0x40
push eax
call fcn.00495cb0
mov ecx, dword [esp + 0x4c]
push ecx
call fcn.005125e0
add esp, 0x10
jmp 0x4a7a8c
push str.Usage:_.schema____indent___LIKE_PATTERN__n
jmp 0x4a59f3
mov eax, str.sqlite_master
jmp 0x4a818f
push str.SELECT_sql_FROM
xor bl, bl
lea esi, [esp + 0x5c]
call fcn.00496210
mov edx, dword [esp + 0x44]
push edx
mov dword [esp + 0x30], 0
call fcn.005277b0
add esp, 8
cmp eax, 0x64
jne 0x4a8357
mov eax, dword [esp + 0x40]
push 0
push eax
call fcn.004cfe50
mov edi, eax
mov eax, dword [esp + 0x30]
inc eax
push eax
push 0x5e351c
lea ecx, [esp + 0x1254]
push ecx
push 0x1e
mov dword [esp + 0x40], eax
call fcn.004accb0
mov edx, dword [esp + 0x6c]
push edx
xor bl, bl
lea esi, [esp + 0x74]
call fcn.00496210
push str.SELECT_shell_add_schema_sql_
mov dword [esp + 0x74], str._UNION_ALL
call fcn.00496210
push str.main
push edi
call fcn.004bc240
add esp, 0x28
test eax, eax
je 0x4a82e3
push edi
mov bl, 0x22
jmp 0x4a82ea
push str.NULL
xor bl, bl
call fcn.00496210
add esp, 4
push str._name__AS_sql__type__tbl_name__name__rowid_
xor bl, bl
lea esi, [esp + 0x5c]
call fcn.00496210
lea eax, [esp + 0x1248]
push eax
call fcn.00496210
push str._AS_snum_
call fcn.00496210
push edi
mov bl, 0x27
call fcn.00496210
push str._AS_sname_FROM
xor bl, bl
call fcn.00496210
push edi
mov bl, 0x22
call fcn.00496210
push str..sqlite_master
xor bl, bl
call fcn.00496210
mov ecx, dword [esp + 0x5c]
push ecx
call fcn.005277b0
add esp, 0x20
cmp eax, 0x64
je 0x4a827e
mov edx, dword [esp + 0x40]
push edx
call fcn.005125e0
push str.__WHERE
xor bl, bl
lea esi, [esp + 0x60]
call fcn.00496210
mov esi, dword [esp + 0x2c]
add esp, 8
test esi, esi
je 0x4a8443
push esi
push 0x5e5898
call fcn.004d30e0
push 0x2a
push esi
mov dword [esp + 0x38], eax
call fcn.0058b330
add esp, 0x10
test eax, eax
jne 0x4a83c0
push 0x3f
push esi
call fcn.0058b330
add esp, 8
test eax, eax
jne 0x4a83c0
push 0x5b
push esi
call fcn.0058b330
add esp, 8
test eax, eax
jne 0x4a83c0
xor edi, edi
jmp 0x4a83c5
mov edi, 1
push 0x2e
push esi
call fcn.0058b330
add esp, 8
xor bl, bl
lea esi, [esp + 0x58]
test eax, eax
je 0x4a83e1
push str.lower_printf__s._s_sname_tbl_name__
jmp 0x4a83e6
push str.lower_tbl_name_
call fcn.00496210
add esp, 4
mov eax, str._GLOB
test edi, edi
jne 0x4a83fc
mov eax, str._LIKE
push eax
xor bl, bl
lea esi, [esp + 0x5c]
call fcn.00496210
mov eax, dword [esp + 0x2c]
push eax
call fcn.00496210
add esp, 8
test edi, edi
jne 0x4a8426
push str._ESCAPE_
call fcn.00496210
add esp, 4
push str._AND
xor bl, bl
lea esi, [esp + 0x5c]
call fcn.00496210
mov ecx, dword [esp + 0x2c]
push ecx
call fcn.004ac9a0
add esp, 8
push str.type_meta_AND_sql_IS_NOT_NULL_ORDER_BY_snum__rowid
xor bl, bl
lea esi, [esp + 0x5c]
call fcn.00496210
add esp, 4
cmp dword [esp + 0x30], 0
je 0x4a847d
mov edx, dword [esp + 0x58]
mov eax, dword [esp + 0x10]
mov ecx, dword [eax + 0x18]
push edx
push str.SQL:__s__n
push ecx
call fcn.00495cb0
mov edi, dword [esp + 0x24]
add esp, 0xc
jmp 0x4a84a5
mov ecx, dword [esp + 0x58]
lea edx, [esp + 0x48]
push edx
mov edx, dword [esp + 0x14]
lea eax, [esp + 0x724]
push eax
mov eax, dword [edx]
push 0x4a0df0
push ecx
push eax
call fcn.00527b30
add esp, 0x14
mov edi, eax
lea esi, [esp + 0x58]
call fcn.004961f0
mov eax, dword [esp + 0x48]
test eax, eax
je 0x4a84dc
push eax
push str.Error:__s_n
call fcn.0058b93f
add eax, 0x40
push eax
call fcn.00495cb0
mov ecx, dword [esp + 0x54]
push ecx
call fcn.004ac9a0
add esp, 0x10
jmp 0x4a7a8c
test edi, edi
je 0x4a84ea
push str.Error:_querying_schema_information_n
jmp 0x4a59f3
mov dword [esp + 0x18], 0
jmp 0x4a7a94
cmp esi, 4
jl 0x4a898f
push esi
push str.selftest
push ebx
call fcn.0058b254
add esp, 0xc
test eax, eax
jne 0x4a898f
mov esi, dword [esp + 0x10]
xor edi, edi
xor ebx, ebx
mov dword [esp + 0x28], eax
mov dword [esp + 0x34], edi
mov dword [esp + 0x48], eax
mov dword [esp + 0x24], eax
mov dword [esp + 0x50], eax
call fcn.004a5270
mov esi, 1
cmp dword [esp + 0x14], esi
jle 0x4a85e5
jmp 0x4a8550
mov eax, dword [esp + esi*4 + 0xc8]
cmp byte [eax], 0x2d
jne 0x4a8563
cmp byte [eax + 1], 0x2d
jne 0x4a8563
inc eax
mov edx, 0x5e8518
mov ecx, eax
lea ebx, [ebx]
mov bl, byte [ecx]
cmp bl, byte [edx]
jne 0x4a8590
test bl, bl
je 0x4a858c
mov bl, byte [ecx + 1]
cmp bl, byte [edx + 1]
jne 0x4a8590
add ecx, 2
add edx, 2
test bl, bl
jne 0x4a8570
xor ecx, ecx
jmp 0x4a8595
sbb ecx, ecx
sbb ecx, 0xffffffff
test ecx, ecx
jne 0x4a85a3
mov dword [esp + 0x28], 1
jmp 0x4a85d6
mov ecx, 0x5e8514
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4a85c8
test dl, dl
je 0x4a85c4
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4a85c8
add eax, 2
add ecx, 2
test dl, dl
jne 0x4a85a8
xor eax, eax
jmp 0x4a85cd
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x4a867c
inc edi
inc esi
cmp esi, dword [esp + 0x14]
jl 0x4a8550
mov dword [esp + 0x34], edi
mov esi, dword [esp + 0x10]
mov ecx, dword [esi]
push 0
push 0
push 0
push 0
push 0
push 0
push str.selftest
push str.main
push ecx
call fcn.00528970
add esp, 0x24
mov edi, eax
neg edi
sbb edi, edi
inc edi
cmp dword [esp + 0x28], 0
je 0x4a8622
call fcn.004a0f90
mov edi, 1
xor eax, eax
push 0x5e8510
xor bl, bl
lea esi, [esp + 0xb4]
mov dword [esp + 0xb4], eax
mov dword [esp + 0xb8], eax
mov dword [esp + 0xbc], eax
call fcn.00496210
add esp, 4
mov dword [esp + 0x40], edi
test edi, edi
jl 0x4a8936
mov eax, dword [esp + 0x10]
mov ecx, dword [eax]
push 0
lea edx, [esp + 0x54]
mov esi, 1
push edx
push 0xffffffffffffffff
cmp dword [esp + 0x4c], esi
jne 0x4a86ac
push str.SELECT_tno_op_cmd_ans_FROM_selftest_ORDER_BY_tno
jmp 0x4a86b1
mov edx, dword [esp + 0xc8]
mov eax, dword [esp + esi*4 + 0xc8]
push edx
push eax
push str.Unknown_option___s__on___s__n
call fcn.0058b93f
add eax, 0x40
push eax
call fcn.00495cb0
add esp, 0x10
push str.Should_be_one_of:___init__v_n
jmp 0x4a59f3
push str.VALUES_0_memo_Missing_SELFTEST_table___default_checks_only__________1_run_PRAGMA_integrity_check_ok_
push ecx
call fcn.00521170
add esp, 0x14
mov dword [esp + 0x18], eax
test eax, eax
jne 0x4a8966
mov edx, dword [esp + 0x50]
push edx
call fcn.005277b0
add esp, 4
cmp eax, 0x64
jne 0x4a891e
mov dword [esp + 0x40], 0
mov eax, dword [esp + 0x50]
push 0
push eax
call fcn.004c5b70
mov ecx, dword [esp + 0x58]
push 1
push ecx
mov dword [esp + 0x5c], eax
call fcn.004cfe50
mov edx, dword [esp + 0x60]
push 2
push edx
mov ebx, eax
call fcn.004cfe50
mov edi, eax
mov eax, dword [esp + 0x68]
push 3
push eax
call fcn.004cfe50
add esp, 0x20
cmp dword [esp + 0x34], 0
mov dword [esp + 0x2c], eax
jle 0x4a8751
push edi
push 0x5e8420
call fcn.004d30e0
mov ecx, dword [esp + 0x54]
push edi
push ebx
push ecx
push str._d:__s__s_n
mov esi, eax
call fcn.00587659
push esi
call fcn.004ac9a0
add esp, 0x1c
mov ecx, str.memo
mov eax, ebx
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4a8778
test dl, dl
je 0x4a8774
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4a8778
add eax, 2
add ecx, 2
test dl, dl
jne 0x4a8758
xor eax, eax
jmp 0x4a877d
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x4a879c
mov edx, dword [esp + 0x10]
mov eax, dword [edx + 0x18]
push edi
push 0x5d30c0
push eax
call fcn.00495cb0
add esp, 0xc
jmp 0x4a88e2
mov ecx, 0x5e8408
mov eax, ebx
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4a87c3
test dl, dl
je 0x4a87bf
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4a87c3
add eax, 2
add ecx, 2
test dl, dl
jne 0x4a87a3
xor eax, eax
jmp 0x4a87c8
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x4a88fa
mov ecx, dword [esp + 0xb0]
lea edx, [esp + 0x30]
push edx
lea eax, [esp + 0xb4]
push eax
xor ebx, ebx
push 0x4a0e10
push edi
mov edi, dword [esp + 0x20]
mov dword [esp + 0x40], ebx
mov dword [esp + 0xc4], ebx
mov byte [ecx], bl
mov ecx, dword [edi]
push ecx
call fcn.00527b30
mov ecx, 1
add dword [esp + 0x5c], ecx
add esp, 0x14
mov esi, eax
mov dword [esp + 0x18], esi
cmp dword [esp + 0x34], ebx
je 0x4a8839
mov edx, dword [esp + 0xb0]
mov eax, dword [edi + 0x18]
push edx
push str.Result:__s_n
push eax
call fcn.00495cb0
add esp, 0xc
lea ecx, [ebx + 1]
mov eax, dword [esp + 0x30]
cmp esi, ebx
jne 0x4a88b8
cmp eax, ebx
jne 0x4a88b8
mov esi, dword [esp + 0x2c]
mov ecx, dword [esp + 0xb0]
mov eax, esi
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4a8872
test dl, dl
je 0x4a886e
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4a8872
add eax, 2
add ecx, 2
test dl, dl
jne 0x4a8852
xor eax, eax
jmp 0x4a8877
sbb eax, eax
sbb eax, 0xffffffff
cmp eax, ebx
je 0x4a88e2
mov ecx, dword [edi + 0x18]
push esi
mov esi, dword [esp + 0x50]
push esi
mov eax, 1
add dword [esp + 0x2c], eax
push str._d:_Expected:___s__n
push ecx
mov dword [esp + 0x28], eax
call fcn.00495cb0
mov edx, dword [esp + 0xc0]
mov eax, dword [edi + 0x18]
push edx
push esi
push str._d:______Got:___s__n
push eax
call fcn.00495cb0
add esp, 0x20
jmp 0x4a88e2
add dword [esp + 0x24], ecx
mov edx, dword [edi + 0x18]
push eax
push ecx
mov dword [esp + 0x20], ecx
mov ecx, dword [esp + 0x54]
push ecx
push str._d:_error_code__d:__s_n
push edx
call fcn.00495cb0
mov eax, dword [esp + 0x44]
push eax
call fcn.004ac9a0
add esp, 0x18
mov ecx, dword [esp + 0x50]
push ecx
call fcn.005277b0
add esp, 4
cmp eax, 0x64
je 0x4a86e4
jmp 0x4a891e
mov edx, dword [esp + 0x4c]
push edx
push ebx
push str.Unknown_operation___s__on_selftest_line__d_n
call fcn.0058b93f
add eax, 0x40
push eax
call fcn.00495cb0
add esp, 0x10
mov dword [esp + 0x18], 1
mov eax, dword [esp + 0x50]
push eax
call fcn.005125e0
add esp, 4
sub dword [esp + 0x40], 1
jns 0x4a865b
lea esi, [esp + 0xb0]
call fcn.004961f0
mov edx, dword [esp + 0x48]
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x10]
push edx
mov edx, dword [ecx + 0x18]
push eax
push str._d_errors_out_of__d_tests_n
push edx
call fcn.00495cb0
add esp, 0x10
jmp 0x4a7a94
push str.Error_querying_the_selftest_table_n
call fcn.0058b93f
add eax, 0x40
push eax
call fcn.00589fad
mov ecx, dword [esp + 0x58]
push ecx
mov dword [esp + 0x24], esi
call fcn.005125e0
add esp, 0xc
jmp 0x4a7a94
push esi
push str.separator
push ebx
call fcn.0058b254
add esp, 0xc
test eax, eax
jne 0x4a8a27
mov esi, dword [esp + 0x14]
cmp esi, 2
jl 0x4a89b4
cmp esi, 3
jle 0x4a89d2
push str.Usage:_.separator_COL__ROW__n
call fcn.0058b93f
add eax, 0x40
push eax
call fcn.00589fad
add esp, 8
mov dword [esp + 0x18], 1
cmp esi, 2
jl 0x4a89f8
mov eax, dword [esp + 0xcc]
mov ecx, dword [esp + 0x10]
push eax
push 0x13
push 0x5e5460
add ecx, 0x6a
push ecx
push 0x14
call fcn.004accb0
add esp, 0x14
cmp esi, 3
jl 0x4a7a94
mov edx, dword [esp + 0xd0]
mov eax, dword [esp + 0x10]
push edx
push 0x13
push 0x5e5460
add eax, 0x7e
push eax
push 0x14
call fcn.004accb0
add esp, 0x14
jmp 0x4a7a94
cmp esi, 4
jl 0x4a8fdd
push esi
push str.sha3sum
push ebx
call fcn.0058b254
add esp, 0xc
test eax, eax
jne 0x4a8fdd
mov esi, dword [esp + 0x10]
xor edi, edi
xor ebx, ebx
mov dword [esp + 0x30], edi
mov dword [esp + 0x2c], edi
mov dword [esp + 0x54], edi
mov dword [esp + 0x48], 0xe0
mov dword [esp + 0x68], edi
call fcn.004a5270
mov eax, 1
cmp dword [esp + 0x14], eax
mov dword [esp + 0x34], eax
jle 0x4a8c36
mov esi, edi
mov ecx, dword [esp + 0x34]
mov eax, dword [esp + ecx*4 + 0xc8]
cmp byte [eax], 0x2d
jne 0x4a8beb
inc eax
cmp byte [eax], 0x2d
jne 0x4a8a9c
inc eax
mov edx, str.schema
mov ecx, eax
mov bl, byte [ecx]
cmp bl, byte [edx]
jne 0x4a8ac3
test bl, bl
je 0x4a8abf
mov bl, byte [ecx + 1]
cmp bl, byte [edx + 1]
jne 0x4a8ac3
add ecx, 2
add edx, 2
test bl, bl
jne 0x4a8aa3
xor ecx, ecx
jmp 0x4a8ac8
sbb ecx, ecx
sbb ecx, 0xffffffff
test ecx, ecx
je 0x4a8c15
mov edx, str.sha3_224
mov ecx, eax
mov bl, byte [ecx]
cmp bl, byte [edx]
jne 0x4a8af7
test bl, bl
je 0x4a8af3
mov bl, byte [ecx + 1]
cmp bl, byte [edx + 1]
jne 0x4a8af7
add ecx, 2
add edx, 2
test bl, bl
jne 0x4a8ad7
xor ecx, ecx
jmp 0x4a8afc
sbb ecx, ecx
sbb ecx, 0xffffffff
test ecx, ecx
je 0x4a8bd9
mov edx, str.sha3_256
mov ecx, eax
jmp 0x4a8b10
mov bl, byte [ecx]
cmp bl, byte [edx]
jne 0x4a8b30
test bl, bl
je 0x4a8b2c
mov bl, byte [ecx + 1]
cmp bl, byte [edx + 1]
jne 0x4a8b30
add ecx, 2
add edx, 2
test bl, bl
jne 0x4a8b10
xor ecx, ecx
jmp 0x4a8b35
sbb ecx, ecx
sbb ecx, 0xffffffff
test ecx, ecx
je 0x4a8bd9
mov edx, str.sha3_384
mov ecx, eax
mov bl, byte [ecx]
cmp bl, byte [edx]
jne 0x4a8b64
test bl, bl
je 0x4a8b60
mov bl, byte [ecx + 1]
cmp bl, byte [edx + 1]
jne 0x4a8b64
add ecx, 2
add edx, 2
test bl, bl
jne 0x4a8b44
xor ecx, ecx
jmp 0x4a8b69
sbb ecx, ecx
sbb ecx, 0xffffffff
test ecx, ecx
je 0x4a8bd9
mov edx, str.sha3_512
mov ecx, eax
mov bl, byte [ecx]
cmp bl, byte [edx]
jne 0x4a8b94
test bl, bl
je 0x4a8b90
mov bl, byte [ecx + 1]
cmp bl, byte [edx + 1]
jne 0x4a8b94
add ecx, 2
add edx, 2
test bl, bl
jne 0x4a8b74
xor ecx, ecx
jmp 0x4a8b99
sbb ecx, ecx
sbb ecx, 0xffffffff
test ecx, ecx
je 0x4a8bd9
mov ecx, str.debug
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4a8bc2
test dl, dl
je 0x4a8bbe
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4a8bc2
add eax, 2
add ecx, 2
test dl, dl
jne 0x4a8ba2
xor eax, eax
jmp 0x4a8bc7
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x4a8d17
mov dword [esp + 0x68], 1
jmp 0x4a8c1a
add eax, 5
push eax
call fcn.0058a276
add esp, 4
mov dword [esp + 0x48], eax
jmp 0x4a8c1a
test edi, edi
jne 0x4a8d4b
push 0x5c
push eax
mov edi, eax
push str.sqlite__
mov dword [esp + 0x3c], edi
mov dword [esp + 0x60], 1
call fcn.004b7ea0
add esp, 0xc
test eax, eax
jne 0x4a8c1a
mov esi, 1
mov eax, dword [esp + 0x34]
inc eax
cmp eax, dword [esp + 0x14]
mov dword [esp + 0x34], eax
jl 0x4a8a81
mov eax, str.SELECT_lower_name__FROM_sqlite_master_WHERE_typetable_AND_coalesce_rootpage_0__1_UNION_ALL_SELECT_sqlite_master_ORDER_BY_1_collate_nocase
test esi, esi
jne 0x4a8c3b
mov eax, str.SELECT_lower_name__FROM_sqlite_master_WHERE_typetable_AND_coalesce_rootpage_0__1_AND_name_NOT_LIKE_sqlite___ORDER_BY_1_collate_nocase
mov edi, dword [esp + 0x10]
push 0
lea edx, [esp + 0x7c]
push edx
push 0xffffffffffffffff
push eax
mov eax, dword [edi]
push eax
call fcn.00521170
xor eax, eax
push str.WITH__sha3sum_query__a_b__AS_
xor bl, bl
lea esi, [esp + 0xd4]
mov dword [esp + 0x94], eax
mov dword [esp + 0x98], eax
mov dword [esp + 0x9c], eax
mov dword [esp + 0xd4], eax
mov dword [esp + 0xd8], eax
mov dword [esp + 0xdc], eax
call fcn.00496210
mov ecx, dword [esp + 0x90]
push ecx
mov dword [esp + 0x44], str.VALUES_
call fcn.005277b0
add esp, 0x1c
cmp eax, 0x64
jne 0x4a8f42
mov esi, dword [esp + 0x30]
mov edx, dword [esp + 0x78]
push 0
push edx
call fcn.004cfe50
add esp, 8
mov edi, eax
test esi, esi
je 0x4a8cde
push 0
push edi
push esi
call fcn.004b7ea0
add esp, 0xc
test eax, eax
jne 0x4a8f28
push 7
push 0x5e6d68
push edi
call fcn.0058b254
add esp, 0xc
test eax, eax
je 0x4a8d55
push str.SELECT__FROM
xor bl, bl
lea esi, [esp + 0x80]
call fcn.00496210
push edi
mov bl, 0x22
call fcn.00496210
push str._NOT_INDEXED_
jmp 0x4a8ec7
mov edx, dword [esp + 0xc8]
mov eax, dword [esp + 0x34]
mov ecx, dword [esp + eax*4 + 0xc8]
push edx
push ecx
push str.Unknown_option___s__on___s__n
call fcn.0058b93f
add eax, 0x40
push eax
call fcn.00495cb0
add esp, 0x10
push str.Should_be_one_of:___schema___sha3_224___sha3_256___sha3_384___sha3_512_n
jmp 0x4a59f3
push str.Usage:_.sha3sum__OPTIONS___LIKE_PATTERN__n
jmp 0x4a59f3
mov ecx, str.sqlite_master
mov eax, edi
lea esp, [esp]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4a8d80
test dl, dl
je 0x4a8d7c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4a8d80
add eax, 2
add ecx, 2
test dl, dl
jne 0x4a8d60
xor eax, eax
jmp 0x4a8d85
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x4a8da4
push str.SELECT_type_name_tbl_name_sql_FROM_sqlite_master_ORDER_BY_name_
xor bl, bl
lea esi, [esp + 0x80]
call fcn.00496210
add esp, 4
jmp 0x4a8ed8
mov ecx, str.sqlite_sequence
mov eax, edi
jmp 0x4a8db0
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4a8dd0
test dl, dl
je 0x4a8dcc
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4a8dd0
add eax, 2
add ecx, 2
test dl, dl
jne 0x4a8db0
xor eax, eax
jmp 0x4a8dd5
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x4a8df4
push str.SELECT_name_seq_FROM_sqlite_sequence_ORDER_BY_name_
xor bl, bl
lea esi, [esp + 0x80]
call fcn.00496210
add esp, 4
jmp 0x4a8ed8
mov ecx, str.sqlite_stat1
mov eax, edi
jmp 0x4a8e00
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4a8e20
test dl, dl
je 0x4a8e1c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4a8e20
add eax, 2
add ecx, 2
test dl, dl
jne 0x4a8e00
xor eax, eax
jmp 0x4a8e25
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x4a8e44
push str.SELECT_tbl_idx_stat_FROM_sqlite_stat1_ORDER_BY_tbl_idx_
xor bl, bl
lea esi, [esp + 0x80]
call fcn.00496210
add esp, 4
jmp 0x4a8ed8
mov ecx, str.sqlite_stat3
mov eax, edi
jmp 0x4a8e50
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4a8e70
test dl, dl
je 0x4a8e6c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4a8e70
add eax, 2
add ecx, 2
test dl, dl
jne 0x4a8e50
xor eax, eax
jmp 0x4a8e75
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
je 0x4a8ea9
mov ecx, str.sqlite_stat4
mov eax, edi
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4a8ea0
test dl, dl
je 0x4a8e9c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4a8ea0
add eax, 2
add ecx, 2
test dl, dl
jne 0x4a8e80
xor eax, eax
jmp 0x4a8ea5
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x4a8ed8
push str.SELECT__FROM
xor bl, bl
lea esi, [esp + 0x80]
call fcn.00496210
push edi
call fcn.00496210
push str._ORDER_BY_tbl__idx__rowid__n
xor bl, bl
lea esi, [esp + 0x88]
call fcn.00496210
add esp, 0xc
mov eax, dword [esp + 0x28]
push eax
xor bl, bl
lea esi, [esp + 0xc0]
call fcn.00496210
mov ecx, dword [esp + 0x80]
push ecx
mov bl, 0x27
call fcn.00496210
push 0x5e546c
xor bl, bl
mov dword [esp + 0x8c], 0
call fcn.00496210
push edi
mov bl, 0x27
call fcn.00496210
mov esi, dword [esp + 0x40]
add esp, 0x10
mov dword [esp + 0x28], 0x5e8034
mov edx, dword [esp + 0x78]
push edx
call fcn.005277b0
add esp, 4
cmp eax, 0x64
je 0x4a8cb5
mov edi, dword [esp + 0x10]
mov eax, dword [esp + 0x78]
push eax
call fcn.005125e0
add esp, 4
cmp dword [esp + 0x54], 0
je 0x4a8f6a
mov ecx, dword [esp + 0x48]
mov edx, dword [esp + 0xbc]
push ecx
push edx
push str._s___SELECT_lower_hex_sha3_query_a__d____AS_hash__b_AS_label___FROM__sha3sum_query_
jmp 0x4a8f7c
mov eax, dword [esp + 0x48]
mov ecx, dword [esp + 0xbc]
push eax
push ecx
push str._s___SELECT_lower_hex_sha3_query_group_concat_a____d____AS_hash___FROM__sha3sum_query_
call fcn.004d30e0
add esp, 0xc
lea esi, [esp + 0x7c]
mov ebx, eax
call fcn.004961f0
lea esi, [esp + 0xbc]
call fcn.004961f0
cmp dword [esp + 0x68], 0
je 0x4a8fc2
mov edx, dword [edi + 0x18]
push ebx
push 0x5d30c0
push edx
call fcn.00495cb0
add esp, 0xc
push ebx
call fcn.004ac9a0
add esp, 4
jmp 0x4a7a94
push 0
push ebx
mov eax, edi
call fcn.004a1e70
add esp, 8
push ebx
call fcn.004ac9a0
add esp, 4
jmp 0x4a7a94
push esi
push str.shell
push ebx
call fcn.0058b254
add esp, 0xc
test eax, eax
je 0x4a9007
push esi
push 0x5e7f70
push ebx
call fcn.0058b254
add esp, 0xc
test eax, eax
jne 0x4a90b9
mov esi, 2
cmp dword [esp + 0x14], esi
jge 0x4a901c
push str.Usage:_.system_COMMAND_n
jmp 0x4a59f3
mov edi, dword [esp + 0xcc]
push 0x20
push edi
call fcn.0058b330
add esp, 8
test eax, eax
mov eax, 0x5e3678
je 0x4a903c
mov eax, str.__s_
push edi
push eax
call fcn.004d30e0
add esp, 8
cmp dword [esp + 0x14], esi
mov ebx, eax
jle 0x4a9084
mov edi, edi
mov edi, dword [esp + esi*4 + 0xc8]
push 0x20
push edi
call fcn.0058b330
add esp, 8
test eax, eax
mov eax, str._z__s
je 0x4a9070
mov eax, str._z___s_
push edi
push ebx
push eax
call fcn.004d30e0
inc esi
add esp, 0xc
cmp esi, dword [esp + 0x14]
mov ebx, eax
jl 0x4a9050
push ebx
call fcn.0058d1df
push ebx
mov esi, eax
call fcn.004ac9a0
add esp, 8
test esi, esi
je 0x4a7a94
push esi
push str.System_command_returns__d_n
call fcn.0058b93f
add eax, 0x40
push eax
call fcn.00589fad
add esp, 0xc
jmp 0x4a7a94
push esi
push str.show
push ebx
call fcn.0058b254
add esp, 0xc
test eax, eax
jne 0x4a9311
mov edi, 1
cmp dword [esp + 0x14], edi
je 0x4a90fa
push str.Usage:_.show_n
call fcn.0058b93f
add eax, 0x40
push eax
call fcn.00589fad
add esp, 8
mov dword [esp + 0x18], edi
jmp 0x4a7a94
mov esi, dword [esp + 0x10]
mov eax, dword [esi + 0x40]
mov edx, dword [esi + 0x18]
shr eax, 6
and eax, edi
mov ecx, dword [eax*4 + 0x633c9c]
push ecx
push str.echo
push str._12.12s:__s_n
push edx
call fcn.00495cb0
movzx eax, byte [esi + 5]
mov edx, dword [esi + 0x18]
and eax, 3
mov ecx, dword [eax*4 + 0x633c9c]
push ecx
push 0x5e48d8
push str._12.12s:__s_n
push edx
call fcn.00495cb0
add esp, 0x20
cmp dword [esi + 0x24], 9
jne 0x4a9153
mov eax, 0x5e43b0
jmp 0x4a9163
cmp byte [esi + 4], 0
mov eax, str.auto
jne 0x4a9163
mov eax, 0x5e43b4
push eax
mov eax, dword [esi + 0x18]
push str.explain
push str._12.12s:__s_n
push eax
call fcn.00495cb0
mov eax, dword [esi + 0x18]
xor ecx, ecx
cmp dword [esi + 0x38], ecx
setne cl
mov edx, dword [ecx*4 + 0x633c9c]
push edx
push str.headers
push str._12.12s:__s_n
push eax
call fcn.00495cb0
mov ecx, dword [esi + 0x24]
mov edx, dword [ecx*4 + 0x632874]
mov eax, dword [esi + 0x18]
push edx
push str.mode
push str._12.12s:__s_n
push eax
call fcn.00495cb0
mov ecx, dword [esi + 0x18]
push str.nullvalue
push str._12.12s:
push ecx
call fcn.00495cb0
mov edi, dword [esi + 0x18]
lea edx, [esi + 0x3dc]
push edx
call fcn.0049f6f0
mov eax, dword [esi + 0x18]
add esp, 0x40
push 0x5e3518
push eax
call fcn.00589fad
add esp, 8
lea ecx, [esi + 0x3f0]
call fcn.00495ef0
test eax, eax
jne 0x4a9202
mov ecx, str.stdout
push ecx
mov ecx, dword [esi + 0x18]
push str.output
push str._12.12s:__s_n
push ecx
call fcn.00495cb0
mov edx, dword [esi + 0x18]
push str.colseparator
push str._12.12s:
push edx
call fcn.00495cb0
mov edi, dword [esi + 0x18]
lea eax, [esi + 0x6a]
push eax
call fcn.0049f6f0
mov ecx, dword [esi + 0x18]
push 0x5e3518
push ecx
call fcn.00589fad
mov edx, dword [esi + 0x18]
push str.rowseparator
push str._12.12s:
push edx
call fcn.00495cb0
mov edi, dword [esi + 0x18]
lea eax, [esi + 0x7e]
push eax
call fcn.0049f6f0
mov ecx, dword [esi + 0x18]
push 0x5e3518
push ecx
call fcn.00589fad
mov ecx, dword [esi + 0x18]
add esp, 0x40
xor edx, edx
cmp byte [esi + 7], dl
setne dl
mov eax, dword [edx*4 + 0x633c9c]
push eax
push str.stats
push str._12.12s:__s_n
push ecx
call fcn.00495cb0
mov edx, dword [esi + 0x18]
push str.width
push str._12.12s:
push edx
call fcn.00495cb0
add esp, 0x1c
xor edi, edi
lea ebx, [esi + 0xbc]
mov eax, dword [ebx]
test eax, eax
je 0x4a92d5
push eax
mov eax, dword [esi + 0x18]
push 0x5e7ebc
push eax
call fcn.00589fad
inc edi
add esp, 0xc
add ebx, 4
cmp edi, 0x64
jl 0x4a92b4
mov ecx, dword [esi + 0x18]
push 0x5e3518
push ecx
call fcn.00589fad
mov eax, dword [esi + 0x4f4]
add esp, 8
test eax, eax
jne 0x4a92f5
mov eax, 0x5d3001
mov edx, dword [esi + 0x18]
push eax
push str.filename
push str._12.12s:__s_n
push edx
call fcn.00495cb0
add esp, 0x10
jmp 0x4a7a94
push esi
push str.stats
push ebx
call fcn.0058b254
add esp, 0xc
test eax, eax
jne 0x4a7a75
mov eax, dword [esp + 0x14]
cmp eax, 2
jne 0x4a9349
mov esi, dword [esp + 0xcc]
call fcn.004a2f70
mov ecx, dword [esp + 0x10]
mov byte [ecx + 7], al
jmp 0x4a7a94
cmp eax, 1
jne 0x4a9364
mov ecx, dword [esp + 0x10]
mov edx, dword [ecx]
push 0
push edx
call fcn.004a1340
add esp, 8
jmp 0x4a7a94
push str.Usage:_.stats__onoff__n
jmp 0x4a59f3
cmp edi, 0x74
jne 0x4a9c4b
cmp esi, 1
jle 0x4a938f
push esi
push str.tables
push ebx
call fcn.0058b254
add esp, 0xc
test eax, eax
je 0x4a93eb
mov edi, str.testcase
mov eax, ebx
mov cl, byte [eax]
cmp cl, byte [edi]
jne 0x4a979f
test cl, cl
je 0x4a93ba
mov cl, byte [eax + 1]
cmp cl, byte [edi + 1]
jne 0x4a979f
add eax, 2
add edi, 2
test cl, cl
jne 0x4a9396
xor eax, eax
jmp 0x4a97a4
push esi
push str.indices
push ebx
call fcn.0058b254
add esp, 0xc
test eax, eax
je 0x4a93eb
push esi
push str.indexes
push ebx
call fcn.0058b254
add esp, 0xc
test eax, eax
jne 0x4a7a75
mov esi, dword [esp + 0x10]
xor eax, eax
xor ebx, ebx
mov dword [esp + 0x6c], eax
mov dword [esp + 0x70], eax
mov dword [esp + 0x74], eax
call fcn.004a5270
push ebx
lea eax, [esp + 0x3c]
push eax
push 0xffffffffffffffff
mov ecx, esi
mov edx, dword [ecx]
push str.PRAGMA_database_list
push edx
call fcn.00521170
add esp, 0x14
test eax, eax
je 0x4a944d
mov eax, dword [esp + 0x38]
push eax
call fcn.005125e0
mov ecx, esi
mov eax, dword [ecx]
add esp, 4
call fcn.004a3e50
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x1258]
xor ecx, esp
call fcn.00584267
mov esp, ebp
pop ebp
ret
cmp dword [esp + 0x14], 2
jle 0x4a9486
cmp edi, 0x69
jne 0x4a9486
push str.Usage:_.indexes__LIKE_PATTERN__n
call fcn.0058b93f
add eax, 0x40
push eax
call fcn.00589fad
mov edx, dword [esp + 0x40]
push edx
mov dword [esp + 0x24], 1
call fcn.005125e0
add esp, 0xc
jmp 0x4a7a94
mov eax, dword [esp + 0x38]
push eax
call fcn.005277b0
add esp, 4
cmp eax, 0x64
jne 0x4a956d
mov ecx, dword [esp + 0x38]
push 1
push ecx
call fcn.004cfe50
mov edi, eax
add esp, 8
test edi, edi
je 0x4a9557
mov eax, dword [esp + 0x6c]
test eax, eax
je 0x4a94d5
cmp byte [eax], 0
je 0x4a94d5
push str._UNION_ALL
xor bl, bl
lea esi, [esp + 0x70]
call fcn.00496210
add esp, 4
push str.main
push edi
call fcn.004bc240
add esp, 8
xor bl, bl
lea esi, [esp + 0x6c]
test eax, eax
jne 0x4a94fc
push str.SELECT_name_FROM
call fcn.00496210
add esp, 4
jmp 0x4a9521
push str.SELECT
call fcn.00496210
push edi
mov bl, 0x27
lea esi, [esp + 0x74]
call fcn.00496210
push str..name_FROM
xor bl, bl
call fcn.00496210
add esp, 0xc
push edi
mov bl, 0x22
lea esi, [esp + 0x70]
call fcn.00496210
push 0x5e7e1c
xor bl, bl
call fcn.00496210
add esp, 8
cmp dword [esp + 0x2c], 0x74
jne 0x4a954a
push str._WHERE_type_IN__table_view____AND_name_NOT_LIKE_sqlite_____AND_name_LIKE__1
jmp 0x4a954f
push str._WHERE_typeindex___AND_tbl_name_LIKE__1
call fcn.00496210
add esp, 4
mov edx, dword [esp + 0x38]
push edx
call fcn.005277b0
add esp, 4
cmp eax, 0x64
je 0x4a949c
mov eax, dword [esp + 0x38]
push eax
call fcn.005125e0
push str._ORDER_BY_1
xor bl, bl
lea esi, [esp + 0x74]
call fcn.00496210
mov edx, dword [esp + 0x74]
mov ebx, dword [esp + 0x18]
mov eax, dword [ebx]
push 0
lea ecx, [esp + 0x44]
push ecx
push 0xffffffffffffffff
push edx
push eax
call fcn.00521170
mov edi, eax
add esp, 0x1c
mov dword [esp + 0x18], edi
call fcn.004961f0
test edi, edi
je 0x4a95cf
mov eax, dword [ebx]
call fcn.004a3e50
mov ecx, dword [esp + 0x1264]
pop edi
pop esi
pop ebx
xor ecx, esp
call fcn.00584267
mov esp, ebp
pop ebp
ret
xor edi, edi
xor esi, esi
xor ebx, ebx
cmp dword [esp + 0x14], 1
mov dword [esp + 0x24], edi
jle 0x4a95f5
mov ecx, dword [esp + 0xcc]
mov edx, dword [esp + 0x38]
push 0xffffffffffffffff
push 0xffffffffffffffff
push ecx
push 1
push edx
jmp 0x4a9605
mov eax, dword [esp + 0x38]
push 0
push 0xffffffffffffffff
push 0x5d6ce4
push 1
push eax
call fcn.004ebd70
mov ecx, dword [esp + 0x4c]
add esp, 0x14
push ecx
call fcn.005277b0
add esp, 4
cmp eax, 0x64
jne 0x4a9681
nop
cmp ebx, esi
jl 0x4a9649
lea esi, [esi + esi + 0xa]
lea edx, [esi*4]
push 0
push edx
push edi
call fcn.004bbc90
add esp, 0xc
test eax, eax
je 0x4a6ae5
mov edi, eax
mov dword [esp + 0x24], edi
mov eax, dword [esp + 0x38]
push 0
push eax
call fcn.004cfe50
push eax
push 0x5e3678
call fcn.004d30e0
add esp, 0x10
mov dword [edi + ebx*4], eax
test eax, eax
je 0x4a6ae5
mov ecx, dword [esp + 0x38]
push ecx
inc ebx
call fcn.005277b0
add esp, 4
cmp eax, 0x64
je 0x4a9620
mov edx, dword [esp + 0x38]
push edx
call fcn.005125e0
add esp, 4
test eax, eax
je 0x4a96a9
mov eax, dword [esp + 0x10]
mov eax, dword [eax]
call fcn.004a3e50
mov dword [esp + 0x18], eax
test eax, eax
jne 0x4a9772
test ebx, ebx
jle 0x4a9772
xor esi, esi
xor edx, edx
mov dword [esp + 0x28], esi
test ebx, ebx
jle 0x4a96d8
mov edi, dword [esp + 0x24]
mov ecx, dword [edi + edx*4]
call fcn.00495ef0
cmp eax, esi
jle 0x4a96cf
mov esi, eax
inc edx
cmp edx, ebx
jl 0x4a96c1
mov dword [esp + 0x28], esi
mov eax, 0x50
add esi, 2
cdq
idiv esi
mov ecx, eax
cmp ecx, 1
jge 0x4a96ef
mov ecx, 1
lea eax, [ecx + ebx - 1]
cdq
idiv ecx
mov dword [esp + 0x30], 0
mov edi, eax
test edi, edi
jle 0x4a9772
mov esi, dword [esp + 0x30]
cmp esi, ebx
jge 0x4a9750
lea esp, [esp]
cmp esi, edi
mov ecx, 0x5d3001
jl 0x4a971e
mov ecx, 0x5d5294
mov edx, dword [esp + 0x24]
mov eax, dword [edx + esi*4]
test eax, eax
jne 0x4a972e
mov eax, 0x5d3001
push eax
mov eax, dword [esp + 0x2c]
push eax
push ecx
mov ecx, dword [esp + 0x1c]
mov edx, dword [ecx + 0x18]
push str._s__s
push edx
call fcn.00495cb0
add esi, edi
add esp, 0x14
cmp esi, ebx
jl 0x4a9710
mov eax, dword [esp + 0x10]
mov ecx, dword [eax + 0x18]
push 0x5e3518
push ecx
call fcn.00589fad
mov eax, dword [esp + 0x38]
inc eax
add esp, 8
cmp eax, edi
mov dword [esp + 0x30], eax
jl 0x4a9704
mov edi, dword [esp + 0x24]
xor esi, esi
test ebx, ebx
jle 0x4a9791
lea esp, [esp]
mov edx, dword [edi + esi*4]
push edx
call fcn.004ac9a0
inc esi
add esp, 4
cmp esi, ebx
jl 0x4a9780
push edi
call fcn.004ac9a0
add esp, 4
jmp 0x4a7a94
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
jne 0x4a9819
mov esi, dword [esp + 0x10]
call fcn.004a3d10
push 0
mov edi, str.testcase_out.txt
call fcn.004a30a0
add esp, 4
mov dword [esi + 0x18], eax
test eax, eax
jne 0x4a97dd
push str.Error:_cannot_open_testcase_out.txt_n
call fcn.0058b93f
add eax, 0x40
push eax
call fcn.00589fad
add esp, 8
add esi, 0x4c
cmp dword [esp + 0x14], 2
jl 0x4a9804
mov eax, dword [esp + 0xcc]
push eax
push 0x5e3678
push esi
push 0x1e
call fcn.004accb0
add esp, 0x10
jmp 0x4a7a94
push 0x5e7d58
push esi
push 0x1e
call fcn.004accb0
add esp, 0xc
jmp 0x4a7a94
cmp esi, 8
jl 0x4a9af9
push esi
push str.testctrl
push ebx
call fcn.0058b254
add esp, 0xc
test eax, eax
jne 0x4a9af9
mov esi, dword [esp + 0x10]
or edi, 0xffffffff
xor ebx, ebx
mov dword [esp + 0x28], edi
call fcn.004a5270
cmp dword [esp + 0x14], 2
mov ecx, str.help
jl 0x4a98a5
mov eax, dword [esp + 0xcc]
cmp byte [eax], 0x2d
mov edx, eax
mov dword [esp + 0x20], edx
jne 0x4a9883
inc eax
cmp byte [eax], bl
je 0x4a9883
mov edx, eax
cmp byte [edx], 0x2d
mov dword [esp + 0x20], edx
jne 0x4a9883
cmp byte [edx + 1], bl
je 0x4a9883
inc edx
mov dword [esp + 0x20], edx
mov eax, edx
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4a98ad
test dl, dl
je 0x4a98a1
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4a98ad
add eax, 2
add ecx, 2
test dl, dl
jne 0x4a9885
xor eax, eax
jmp 0x4a98b1
mov dword [esp + 0x20], ecx
mov edx, ecx
jmp 0x4a9883
sbb eax, eax
sbb eax, edi
test eax, eax
jne 0x4a98f8
mov edi, esi
mov ecx, dword [edi + 0x18]
push str.Available_test_controls:_n
push ecx
call fcn.00495cb0
add esp, 8
mov esi, 0x5e4db0
lea ecx, [ecx]
mov edx, dword [esi + 8]
mov eax, dword [esi]
mov ecx, dword [edi + 0x18]
push edx
push eax
push str.__.testctrl__s__s_n
push ecx
call fcn.00495cb0
add esi, 0xc
add esp, 0x10
cmp esi, str.____append______________append_the_database_to_the_end_of_the_file_n____ascii_______________set_output_mode_to_ascii_n____bail________________stop_after_hitting_an_error_n____batch_______________force_batch_I_O_n____column______________set_output_mode_to_column_n____cmd_COMMAND_________run__COMMAND__before_reading_stdin_n____csv_________________set_output_mode_to_csv_n____echo________________print_commands_before_execution_n____init_FILENAME_______read_process_named_file_n_____no_header__________turn_headers_on_or_off_n____help________________show_this_message_n____html________________set_output_mode_to_HTML_n____interactive_________force_interactive_I_O_n____line________________set_output_mode_to_line_n____list________________set_output_mode_to_list_n____lookaside_SIZE_N____use_N_entries_of_SZ_bytes_for_lookaside_memory_n____mmap_N______________default_mmap_size_set_to_N_n____newline_SEP_________set_output_row_separator._Default:__n_n____nullvalue_TEXT______set_text_string_for_NULL_values._Default__n____pagecache_SIZE_N____use_N_slots_of_SZ_bytes_each_for_page_cache_memory_n____quote_______________set_output_mode_to_quote_n____readonly____________open_the_database_read_only_n____separator_SEP_______set_output_column_separator._Default:__n____stats_______________print_memory_stats_before_each_finalize_n____version_____________show_SQLite_version_n____vfs_NAME____________use_NAME_as_the_default_VFS_n
jl 0x4a98d0
jmp 0x4a7a8c
mov ecx, dword [esp + 0x20]
call fcn.00495ef0
mov dword [esp + 0x2c], eax
xor ebx, ebx
mov esi, 0x5e4db4
lea esp, [esp]
mov edx, dword [esp + 0x2c]
mov eax, dword [esi - 4]
mov ecx, dword [esp + 0x20]
push edx
push eax
push ecx
call fcn.0058b254
add esp, 0xc
test eax, eax
jne 0x4a9934
test edi, edi
jge 0x4a9961
mov edi, dword [esi]
mov dword [esp + 0x28], ebx
add esi, 0xc
inc ebx
cmp esi, 0x5e4e44
jl 0x4a9910
test edi, edi
jge 0x4a9970
mov eax, dword [esp + 0x20]
push eax
push str.Error:_unknown_test_control:__s_nUse__.testctrl___help__for_help_n
call fcn.0058b93f
add eax, 0x40
push eax
call fcn.00495cb0
add esp, 0xc
jmp case.0x4a997f.8
mov edx, dword [esp + 0x20]
push edx
push str.Error:_ambiguous_test_control:___s__nUse__.testctrl___help__for_help_n
jmp 0x4a7a7b
lea eax, [edi - 5]
cmp eax, 0x14
ja case.0x4a997f.8
movzx ecx, byte [eax + 0x4a9f34]
jmp dword [ecx*4 + 0x4a9f18]
cmp dword [esp + 0x14], 3
jne case.0x4a997f.8
mov edx, dword [esp + 0xd0]
push 0
push 0
push edx
call fcn.0058e162
push eax
mov eax, dword [esp + 0x20]
mov ecx, dword [eax]
push ecx
push edi
call fcn.0052bfd0
add esp, 0x18
jmp 0x4a7a94
cmp dword [esp + 0x14], 2
jne case.0x4a997f.8
push edi
call fcn.0052bfd0
xor ecx, ecx
add esp, 4
cmp edi, 0x16
setne cl
lea ecx, [ecx + ecx + 1]
test ecx, ecx
jne 0x4a9ab5
mov eax, dword [esp + 0x28]
test eax, eax
jl 0x4a7a94
mov ecx, dword [esp + 0x20]
lea edx, [eax + eax*2]
mov eax, dword [edx*4 + 0x5e4db8]
mov edx, dword [esp + 0x10]
push eax
mov eax, dword [edx + 0x18]
push ecx
push str.Usage:_.testctrl__s__s_n
push eax
call fcn.00495cb0
add esp, 0x10
jmp 0x4a7a8c
cmp dword [esp + 0x14], 3
jne case.0x4a997f.8
mov eax, dword [esp + 0xd0]
call fcn.004960c0
push eax
push edi
call fcn.0052bfd0
add esp, 8
jmp 0x4a7a94
cmp dword [esp + 0x14], 3
jne case.0x4a997f.8
mov esi, dword [esp + 0xd0]
call fcn.004a2f70
push eax
push edi
call fcn.0052bfd0
add esp, 8
jmp 0x4a9aba
cmp dword [esp + 0x14], 3
jne case.0x4a997f.8
mov esi, dword [esp + 0xd0]
call fcn.004a2f70
push eax
push edi
call fcn.0052bfd0
add esp, 8
jmp 0x4a7a94
cmp dword [esp + 0x14], 5
jne case.0x4a997f.8
mov eax, dword [esp + 0xd8]
call fcn.004960c0
push edx
push eax
mov eax, dword [esp + 0xdc]
call fcn.004960c0
push edx
mov edx, dword [esp + 0xdc]
push eax
mov eax, dword [esp + 0x20]
mov ecx, dword [eax]
push edx
push ecx
push edi
call fcn.0052bfd0
add esp, 0x1c
jmp 0x4a7a94
cmp ecx, 1
jne 0x4a9ad5
mov ecx, dword [esp + 0x10]
mov edx, dword [ecx + 0x18]
push eax
push 0x5e7c70
push edx
call fcn.00589fad
add esp, 0xc
jmp 0x4a7a94
cmp ecx, 2
jne 0x4a7a94
push eax
mov eax, dword [esp + 0x14]
mov ecx, dword [eax + 0x18]
push str.0x_08x_n
push ecx
call fcn.00589fad
add esp, 0xc
jmp 0x4a7a94
cmp esi, 4
jle 0x4a9b53
push esi
push str.timeout
push ebx
call fcn.0058b254
add esp, 0xc
test eax, eax
jne 0x4a9b53
mov esi, dword [esp + 0x10]
xor ebx, ebx
call fcn.004a5270
cmp dword [esp + 0x14], 2
jl 0x4a9b40
mov eax, dword [esp + 0xcc]
call fcn.004960c0
mov edx, dword [esi]
push eax
push edx
call fcn.004bb190
add esp, 8
jmp 0x4a7a94
mov edx, dword [esi]
xor eax, eax
push eax
push edx
call fcn.004bb190
add esp, 8
jmp 0x4a7a94
cmp esi, 5
jl 0x4a9bc7
push esi
push str.timer
push ebx
call fcn.0058b254
add esp, 0xc
test eax, eax
jne 0x4a9bc7
cmp dword [esp + 0x14], 2
jne 0x4a9bbd
mov esi, dword [esp + 0xcc]
call fcn.004a2f70
mov dword [0x6413d4], eax
test eax, eax
je 0x4a7a94
call fcn.00495af0
test eax, eax
jne 0x4a7a94
push str.Error:_timer_not_available_on_this_system._n
call fcn.0058b93f
add eax, 0x40
push eax
call fcn.00589fad
add esp, 8
mov dword [0x6413d4], 0
jmp 0x4a7a94
push str.Usage:_.timer_onoff_n
jmp 0x4a59f3
push esi
push str.trace
push ebx
call fcn.0058b254
add esp, 0xc
test eax, eax
jne 0x4a7a75
mov esi, dword [esp + 0x10]
xor ebx, ebx
call fcn.004a5270
cmp dword [esp + 0x14], 2
je 0x4a9bfa
push str.Usage:_.trace_FILEoff_n
jmp 0x4a59f3
mov eax, esi
mov esi, dword [eax + 0x1c]
call fcn.004a3070
mov edi, dword [esp + 0xcc]
push 0
call fcn.004a30a0
mov ecx, dword [esp + 0x14]
add esp, 4
mov dword [ecx + 0x1c], eax
test eax, eax
jne 0x4a9c33
mov ecx, dword [ecx]
push eax
push eax
push eax
push ecx
call fcn.004bb250
add esp, 0x10
jmp 0x4a7a94
mov edx, dword [ecx]
push eax
push 0x4a3190
push 1
push edx
call fcn.004bb250
add esp, 0x10
jmp 0x4a7a94
cmp edi, 0x76
jne 0x4a9eb0
push esi
push str.version
push ebx
call fcn.0058b254
add esp, 0xc
test eax, eax
jne 0x4a9c9b
call fcn.004bb760
push eax
call fcn.004bacd0
mov esi, dword [esp + 0x14]
push eax
mov eax, dword [esi + 0x18]
push str.SQLite__s__s_n
push eax
call fcn.00495cb0
mov ecx, dword [esi + 0x18]
push str.msvc_1500_n
push ecx
call fcn.00495cb0
add esp, 0x18
jmp 0x4a7a94
push esi
push str.vfsinfo
push ebx
call fcn.0058b254
add esp, 0xc
test eax, eax
jne 0x4a9d57
cmp dword [esp + 0x14], 2
mov ecx, dword [esp + 0xcc]
je 0x4a9cc5
mov ecx, str.main
mov edx, dword [esp + 0x10]
mov eax, dword [edx]
mov dword [esp + 0x4c], 0
test eax, eax
je 0x4a7a94
lea edx, [esp + 0x4c]
push edx
push 0x1b
push ecx
push eax
call fcn.004cb3c0
mov eax, dword [esp + 0x5c]
add esp, 0x10
test eax, eax
je 0x4a7a94
mov eax, dword [eax + 0x10]
mov esi, dword [esp + 0x10]
mov ecx, dword [esi + 0x18]
push eax
push str.vfs.zName_________s__n
push ecx
call fcn.00495cb0
mov edx, dword [esp + 0x58]
mov eax, dword [edx]
mov ecx, dword [esi + 0x18]
push eax
push str.vfs.iVersion_____d_n
push ecx
call fcn.00589fad
mov edx, dword [esp + 0x64]
mov eax, dword [edx + 4]
mov ecx, dword [esi + 0x18]
push eax
push str.vfs.szOsFile_____d_n
push ecx
call fcn.00589fad
mov edx, dword [esp + 0x70]
mov eax, dword [edx + 8]
mov ecx, dword [esi + 0x18]
push eax
push str.vfs.mxPathname___d_n
push ecx
call fcn.00589fad
add esp, 0x30
jmp 0x4a7a94
push esi
push str.vfslist
push ebx
call fcn.0058b254
add esp, 0xc
test eax, eax
jne 0x4a9e2e
mov edx, dword [esp + 0x10]
mov dword [esp + 0x64], eax
mov eax, dword [edx]
test eax, eax
je 0x4a9d91
lea ecx, [esp + 0x64]
push ecx
push 0x1b
push str.main
push eax
call fcn.004cb3c0
add esp, 0x10
push 0
call fcn.004bb7e0
mov esi, eax
add esp, 4
test esi, esi
je 0x4a7a94
mov edi, dword [esp + 0x10]
lea esp, [esp]
mov eax, str._______CURRENT
cmp esi, dword [esp + 0x64]
je 0x4a9dc0
mov eax, 0x5d3001
mov edx, dword [esi + 0x10]
push eax
mov eax, dword [edi + 0x18]
push edx
push str.vfs.zName_________s__s_n
push eax
call fcn.00495cb0
mov ecx, dword [esi]
mov edx, dword [edi + 0x18]
push ecx
push str.vfs.iVersion_____d_n
push edx
call fcn.00589fad
mov eax, dword [esi + 4]
mov ecx, dword [edi + 0x18]
push eax
push str.vfs.szOsFile_____d_n
push ecx
call fcn.00589fad
mov edx, dword [esi + 8]
mov eax, dword [edi + 0x18]
push edx
push str.vfs.mxPathname___d_n
push eax
call fcn.00589fad
add esp, 0x34
cmp dword [esi + 0xc], 0
je 0x4a9e22
mov ecx, dword [edi + 0x18]
push str.____________________________________n
push ecx
call fcn.00589fad
add esp, 8
mov esi, dword [esi + 0xc]
test esi, esi
jne 0x4a9db0
jmp 0x4a7a94
push esi
push str.vfsname
push ebx
call fcn.0058b254
add esp, 0xc
test eax, eax
jne 0x4a7a75
cmp dword [esp + 0x14], 2
mov ecx, dword [esp + 0xcc]
je 0x4a9e58
mov ecx, str.main
mov edx, dword [esp + 0x10]
mov eax, dword [edx]
mov dword [esp + 0x54], 0
test eax, eax
je 0x4a7a94
lea edx, [esp + 0x54]
push edx
push 0xc
push ecx
push eax
call fcn.004cb3c0
mov eax, dword [esp + 0x64]
add esp, 0x10
test eax, eax
je 0x4a7a94
push eax
mov eax, dword [esp + 0x14]
mov ecx, dword [eax + 0x18]
push 0x5d30c0
push ecx
call fcn.00495cb0
mov edx, dword [esp + 0x60]
push edx
call fcn.004ac9a0
add esp, 0x10
jmp 0x4a7a94
cmp edi, 0x77
jne 0x4a7a75
push esi
push str.width
push ebx
call fcn.0058b254
add esp, 0xc
test eax, eax
jne 0x4a7a75
mov esi, 1
cmp dword [esp + 0x14], esi
jle 0x4a7a94
mov edi, dword [esp + 0x10]
add edi, 0xbc
lea esp, [esp]
cmp esi, 0x64
jge 0x4a7a94
mov eax, dword [esp + esi*4 + 0xc8]
call fcn.004960c0
mov dword [edi], eax
inc esi
add edi, 4
cmp esi, dword [esp + 0x14]
jl 0x4a9ef0
jmp 0x4a7a94