Function at 0x46bba0
Capabilities:
Accept command line arguments
Query environment variable
Write file on windows

Disassembly:
lea ecx, [esp + 4]
and esp, 0xfffffff0
push dword [ecx - 4]
push ebp
mov ebp, esp
push edi
push esi
push ebx
push ecx
sub esp, 0x4b8
mov esi, dword [ecx]
mov eax, dword [ecx + 4]
mov dword [ebp - 0x444], esi
mov dword [ebp - 0x448], eax
call dbg.__main
lea eax, [ebp - 0x408]
mov dword [ebp - 0x41c], 0
mov dword [esp], eax
mov dword [ebp - 0x460], eax
call sym._jv_array
lea eax, [ebp - 0x3f8]
mov dword [esp], eax
mov dword [ebp - 0x468], eax
call dbg.jv_object
mov edi, dword [dbg.__acrt_iob_func]
mov dword [esp], 1
mov dword [ebp - 0x464], edi
call edi
mov dword [esp], eax
call sym._fflush
mov dword [esp], 2
call edi
mov dword [esp], eax
call sym._fflush
mov dword [esp], 1
call edi
mov dword [esp], eax
call sym._fileno
mov ebx, dword [sym.imp.msvcrt.dll__setmode]
mov dword [esp + 4], 0x44000
mov dword [esp], eax
call ebx
mov dword [esp], 2
call edi
mov dword [esp], eax
call sym._fileno
mov dword [esp + 4], 0x44000
mov dword [esp], eax
call ebx
call dword [sym.imp.KERNEL32.dll_GetCommandLineW]
lea edx, [ebp - 0x418]
mov dword [esp], eax
mov dword [esp + 4], edx
call dword [sym.imp.SHELL32.dll_CommandLineToArgvW]
sub esp, 8
cmp dword [ebp - 0x418], esi
mov ebx, eax
je 0x46bcb1
mov dword [esp + 8], 0x100
mov dword [esp + 4], str.src_main.c
mov dword [esp], str.wargc__argc
call dbg._assert
cmp dword [ebp - 0x444], 0
jle 0x46cc05
mov eax, dword [ebp - 0x444]
mov edi, ebx
mov esi, dword [sym.imp.KERNEL32.dll_WideCharToMultiByte]
mov ebx, dword [ebp - 0x448]
lea eax, [edi + eax*4]
mov dword [ebp - 0x43c], eax
nop
lea esi, [esi]
mov dword [esp + 0x1c], 0
mov dword [esp + 0x18], 0
mov dword [esp + 0x14], 0
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0xffffffff
mov eax, dword [edi]
mov dword [esp + 4], 0
mov dword [esp], 0xfde9
mov dword [esp + 8], eax
call esi
mov ecx, eax
lea eax, [eax + 0x1e]
sub esp, 0x20
and eax, 0xfffffff0
call fcn.00462ea0
sub esp, eax
add edi, 4
add ebx, 4
lea eax, [esp + 0x43]
and eax, 0xfffffff0
mov dword [ebx - 4], eax
mov dword [esp + 0x1c], 0
mov dword [esp + 0x18], 0
mov dword [esp + 0x14], ecx
mov dword [esp + 0x10], eax
mov dword [esp + 0xc], 0xffffffff
mov eax, dword [edi - 4]
mov dword [esp + 4], 0
mov dword [esp], 0xfde9
mov dword [esp + 8], eax
call esi
sub esp, 0x20
cmp edi, dword [ebp - 0x43c]
jne 0x46bce0
mov eax, dword [ebp - 0x448]
mov eax, dword [eax]
mov dword [0x4cf03c], eax
call dbg.jq_init
test eax, eax
mov dword [ebp - 0x41c], eax
jne 0x46bed6
mov dword [esp], str.malloc
mov ebx, 2
call sym._perror
mov edi, dword [ebp - 0x464]
mov dword [esp], 1
call edi
mov dword [esp], eax
call sym._ferror
mov dword [esp], 1
mov esi, eax
call edi
mov dword [esp], eax
call sym._fclose
or eax, esi
je 0x46be71
call dword [sym.imp.msvcrt.dll__errno]
mov eax, dword [eax]
mov dword [esp], eax
call sym._strerror
mov ebx, eax
mov dword [esp], 2
call edi
mov dword [esp + 8], ebx
mov dword [esp + 4], str.Error:_writing_output_failed:__s_n
mov edi, esp
mov dword [esp], eax
mov ebx, 2
call sym._fprintf
mov esi, dword [ebp - 0x460]
mov ecx, 4
rep movsd dword es:[edi], dword [esi]
mov edi, esp
call dbg.jv_free
mov esi, dword [ebp - 0x468]
mov ecx, 4
rep movsd dword es:[edi], dword [esi]
call dbg.jv_free
lea eax, [ebp - 0x410]
mov dword [esp], eax
call dbg.jq_util_input_free
lea eax, [ebp - 0x41c]
mov dword [esp], eax
call dbg.jq_teardown
lea esp, [ebp - 0x10]
mov eax, ebx
pop ecx
pop ebx
pop esi
pop edi
pop ebp
lea esp, [ecx - 4]
ret
mov esi, dword [ebp - 0x460]
mov ecx, 4
mov edi, esp
rep movsd dword es:[edi], dword [esi]
mov edi, esp
call dbg.jv_free
mov esi, dword [ebp - 0x468]
mov ecx, 4
rep movsd dword es:[edi], dword [esi]
call dbg.jv_free
lea eax, [ebp - 0x410]
mov dword [esp], eax
call dbg.jq_util_input_free
lea eax, [ebp - 0x41c]
mov dword [esp], eax
call dbg.jq_teardown
cmp ebx, 9
jle 0x46be63
mov eax, dword [0x4cf038]
mov edx, eax
and edx, 0x1000
jne 0x46bed1
test ah, 0x20
cmove ebx, edx
jmp 0x46be63
sub ebx, 0xa
jmp 0x46be63
mov dword [esp + 4], 0
mov dword [esp], 0
mov dword [ebp - 0x414], 0x201
call dbg.jq_util_input_init
mov dword [ebp - 0x410], eax
lea eax, [ebp - 0x3e8]
mov dword [ebp - 0x40c], 0
mov dword [esp], eax
mov dword [ebp - 0x470], eax
call sym._jv_null
cmp dword [ebp - 0x444], 1
jle 0x46c6b8
mov ebx, 1
mov dword [ebp - 0x478], 0
mov dword [ebp - 0x440], 0
mov dword [ebp - 0x458], 0
mov dword [ebp - 0x450], 0
mov dword [ebp - 0x45c], 0
mov dword [ebp - 0x46c], 0
mov dword [ebp - 0x47c], 0
jmp 0x46c059
mov eax, dword [ebp - 0x450]
test eax, eax
jne 0x46c1a3
mov esi, dword [ebp - 0x458]
test esi, esi
je 0x46c173
mov ecx, dword [ebp - 0x43c]
lea eax, [ebp - 0x3b8]
mov dword [esp], eax
mov dword [esp + 4], ecx
call dbg.jv_parse
mov eax, dword [ebp - 0x3b8]
lea edx, [ebp - 0x438]
mov dword [esp], edx
mov dword [esp + 0x14], eax
mov eax, dword [ebp - 0x3b4]
mov dword [esp + 0x18], eax
mov eax, dword [ebp - 0x3b0]
mov dword [esp + 0x1c], eax
mov eax, dword [ebp - 0x3ac]
mov dword [esp + 0x20], eax
mov eax, dword [ebp - 0x408]
mov dword [esp + 4], eax
mov eax, dword [ebp - 0x404]
mov dword [esp + 8], eax
mov eax, dword [ebp - 0x400]
mov dword [esp + 0xc], eax
mov eax, dword [ebp - 0x3fc]
mov dword [esp + 0x10], eax
call dbg.jv_array_append
mov eax, dword [ebp - 0x438]
mov dword [ebp - 0x440], esi
mov dword [ebp - 0x408], eax
mov eax, dword [ebp - 0x434]
mov dword [ebp - 0x404], eax
mov eax, dword [ebp - 0x430]
mov dword [ebp - 0x400], eax
mov eax, dword [ebp - 0x42c]
mov dword [ebp - 0x3fc], eax
lea esi, [esi]
add ebx, 1
cmp dword [ebp - 0x444], ebx
mov dword [ebp - 0x40c], 0
jle 0x46c6e0
lea eax, [ebx*4]
mov edx, eax
mov dword [ebp - 0x454], eax
mov eax, dword [ebp - 0x448]
add eax, edx
mov dword [ebp - 0x44c], eax
mov eax, dword [eax]
mov dword [ebp - 0x43c], eax
mov eax, dword [ebp - 0x440]
test eax, eax
jne 0x46bf75
mov esi, dword [ebp - 0x43c]
mov edi, 0x4748da
mov ecx, 3
repe cmpsb byte [esi], byte es:[edi]
jne 0x46c0c0
mov edi, dword [ebp - 0x45c]
test edi, edi
je 0x46d48e
mov dword [ebp - 0x440], 1
jmp 0x46c040
mov eax, dword [ebp - 0x43c]
cmp byte [eax], 0x2d
je 0x46c260
mov esi, dword [ebp - 0x45c]
test esi, esi
je 0x46c36d
mov ecx, dword [ebp - 0x450]
test ecx, ecx
jne 0x46c3ae
mov edx, dword [ebp - 0x458]
mov eax, dword [ebp - 0x43c]
test edx, edx
mov dword [esp + 4], eax
je 0x46c37e
lea eax, [ebp - 0x398]
lea esi, [ebp - 0x398]
mov dword [esp], eax
call dbg.jv_parse
lea eax, [esp + 0x14]
mov ecx, 4
lea edx, [ebp - 0x438]
mov edi, eax
rep movsd dword es:[edi], dword [esi]
lea edi, [esp + 4]
mov ecx, 4
mov esi, dword [ebp - 0x460]
rep movsd dword es:[edi], dword [esi]
mov dword [esp], edx
mov dword [ebp - 0x43c], edx
lea edi, [ebp - 0x408]
call dbg.jv_array_append
mov edx, dword [ebp - 0x43c]
mov dword [ebp - 0x460], edi
mov ecx, 4
mov esi, edx
rep movsd dword es:[edi], dword [esi]
mov dword [ebp - 0x440], 0
jmp 0x46c040
mov eax, dword [ebp - 0x43c]
mov dword [esp + 4], eax
mov eax, dword [ebp - 0x410]
mov dword [esp], eax
call dbg.jq_util_input_add_input
mov eax, dword [ebp - 0x458]
add dword [ebp - 0x46c], 1
mov dword [ebp - 0x450], eax
jmp 0x46c040
mov ecx, dword [ebp - 0x43c]
lea eax, [ebp - 0x3c8]
mov dword [esp], eax
mov dword [esp + 4], ecx
call sym._jv_string
mov eax, dword [ebp - 0x3c8]
lea edx, [ebp - 0x438]
mov dword [esp], edx
mov dword [esp + 0x14], eax
mov eax, dword [ebp - 0x3c4]
mov dword [esp + 0x18], eax
mov eax, dword [ebp - 0x3c0]
mov dword [esp + 0x1c], eax
mov eax, dword [ebp - 0x3bc]
mov dword [esp + 0x20], eax
mov eax, dword [ebp - 0x408]
mov dword [esp + 4], eax
mov eax, dword [ebp - 0x404]
mov dword [esp + 8], eax
mov eax, dword [ebp - 0x400]
mov dword [esp + 0xc], eax
mov eax, dword [ebp - 0x3fc]
mov dword [esp + 0x10], eax
call dbg.jv_array_append
mov eax, dword [ebp - 0x438]
mov dword [ebp - 0x408], eax
mov eax, dword [ebp - 0x434]
mov dword [ebp - 0x404], eax
mov eax, dword [ebp - 0x430]
mov dword [ebp - 0x400], eax
mov eax, dword [ebp - 0x42c]
mov dword [ebp - 0x3fc], eax
mov eax, dword [ebp - 0x450]
mov dword [ebp - 0x440], eax
jmp 0x46c040
movzx edx, byte [eax + 1]
cmp dl, 0x2d
je 0x46c418
movsx eax, dl
mov byte [ebp - 0x474], dl
mov dword [esp], eax
call dword [sym.imp.msvcrt.dll_isalpha]
test eax, eax
movzx edx, byte [ebp - 0x474]
je 0x46c0cf
cmp dl, 0x4c
jne 0x46c418
mov esi, dword [ebp - 0x470]
mov ecx, 4
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call sym._jv_get_kind
sub eax, 1
je 0x46d346
mov eax, dword [ebp - 0x44c]
mov eax, dword [eax]
cmp byte [eax + 2], 0
jne 0x46d359
mov eax, dword [ebp - 0x444]
sub eax, 1
cmp eax, ebx
jle 0x46d6cd
mov ecx, dword [ebp - 0x454]
mov eax, dword [ebp - 0x448]
lea esi, [ebp - 0x368]
lea edi, [esp + 4]
add ebx, 1
mov eax, dword [eax + ecx + 4]
mov dword [esp], esi
mov dword [esp + 4], eax
call sym._jv_string
mov ecx, 4
lea eax, [ebp - 0x358]
rep movsd dword es:[edi], dword [esi]
mov dword [esp], eax
lea esi, [ebp - 0x358]
call dbg.jq_realpath
lea eax, [esp + 0x14]
mov ecx, 4
lea edx, [ebp - 0x438]
mov edi, eax
rep movsd dword es:[edi], dword [esi]
lea edi, [esp + 4]
mov ecx, 4
mov esi, dword [ebp - 0x470]
rep movsd dword es:[edi], dword [esi]
mov dword [esp], edx
mov dword [ebp - 0x43c], edx
lea edi, [ebp - 0x3e8]
call dbg.jv_array_append
mov edx, dword [ebp - 0x43c]
mov dword [ebp - 0x470], edi
mov ecx, 4
mov esi, edx
rep movsd dword es:[edi], dword [esi]
jmp 0x46c040
mov eax, dword [ebp - 0x43c]
mov dword [ebp - 0x45c], eax
jmp 0x46c040
mov eax, dword [ebp - 0x410]
mov dword [esp], eax
call dbg.jq_util_input_add_input
mov eax, dword [ebp - 0x458]
add dword [ebp - 0x46c], 1
mov dword [ebp - 0x440], 0
mov dword [ebp - 0x450], eax
jmp 0x46c040
mov eax, dword [ebp - 0x43c]
lea esi, [ebp - 0x3a8]
mov dword [esp], esi
mov dword [esp + 4], eax
call sym._jv_string
lea eax, [esp + 0x14]
mov ecx, 4
lea edx, [ebp - 0x438]
mov edi, eax
rep movsd dword es:[edi], dword [esi]
lea edi, [esp + 4]
mov ecx, 4
mov esi, dword [ebp - 0x460]
rep movsd dword es:[edi], dword [esi]
mov dword [esp], edx
mov dword [ebp - 0x43c], edx
lea edi, [ebp - 0x408]
call dbg.jv_array_append
mov edx, dword [ebp - 0x43c]
mov dword [ebp - 0x460], edi
mov ecx, 4
mov esi, edx
rep movsd dword es:[edi], dword [esi]
jmp 0x46c040
lea esi, [ebp - 0x40c]
mov eax, dword [ebp - 0x43c]
mov ecx, str.slurp
mov edx, 0x73
mov dword [esp], esi
call sym._isoption
test eax, eax
je 0x46c44e
or dword [0x4cf038], 1
cmp dword [ebp - 0x40c], 0
je 0x46c040
mov eax, dword [ebp - 0x44c]
mov dword [esp], esi
mov ecx, str.raw_output
mov edx, 0x72
mov eax, dword [eax]
call sym._isoption
test eax, eax
je 0x46c480
or dword [0x4cf038], 8
cmp dword [ebp - 0x40c], 0
je 0x46c040
mov eax, dword [ebp - 0x44c]
mov dword [esp], esi
mov ecx, str.compact_output
mov edx, 0x63
mov eax, dword [eax]
call sym._isoption
test eax, eax
je 0x46c4b5
and dword [ebp - 0x414], 0xfffff8be
cmp dword [ebp - 0x40c], 0
je 0x46c040
mov eax, dword [ebp - 0x44c]
mov dword [esp], esi
mov ecx, str.color_output
mov edx, 0x43
mov eax, dword [eax]
call sym._isoption
test eax, eax
je 0x46c4e7
or dword [0x4cf038], 0x40
cmp dword [ebp - 0x40c], 0
je 0x46c040
mov eax, dword [ebp - 0x44c]
mov dword [esp], esi
mov ecx, str.monochrome_output
mov edx, 0x4d
mov eax, dword [eax]
call sym._isoption
test eax, eax
je 0x46c51c
or dword [0x4cf038], 0x80
cmp dword [ebp - 0x40c], 0
je 0x46c040
mov eax, dword [ebp - 0x44c]
mov dword [esp], esi
mov ecx, str.ascii_output
mov edx, 0x61
mov eax, dword [eax]
call sym._isoption
test eax, eax
je 0x46c54e
or dword [0x4cf038], 0x20
cmp dword [ebp - 0x40c], 0
je 0x46c040
mov eax, dword [ebp - 0x44c]
mov dword [esp], esi
xor edx, edx
mov ecx, str.unbuffered
mov eax, dword [eax]
call sym._isoption
test eax, eax
jne 0x46d164
mov eax, dword [ebp - 0x44c]
mov dword [esp], esi
mov ecx, str.sort_keys
mov edx, 0x53
mov eax, dword [eax]
call sym._isoption
test eax, eax
je 0x46c5a2
or dword [0x4cf038], 0x100
cmp dword [ebp - 0x40c], 0
je 0x46d432
mov eax, dword [ebp - 0x44c]
mov dword [esp], esi
mov ecx, str.raw_input
mov edx, 0x52
mov eax, dword [eax]
call sym._isoption
test eax, eax
je 0x46c5d4
or dword [0x4cf038], 2
cmp dword [ebp - 0x40c], 0
je 0x46d432
mov eax, dword [ebp - 0x44c]
mov dword [esp], esi
mov ecx, str.null_input
mov edx, 0x6e
mov eax, dword [eax]
call sym._isoption
test eax, eax
je 0x46c606
or dword [0x4cf038], 4
cmp dword [ebp - 0x40c], 0
je 0x46d432
mov eax, dword [ebp - 0x44c]
mov dword [esp], esi
mov ecx, str.from_file
mov edx, 0x66
mov eax, dword [eax]
call sym._isoption
test eax, eax
je 0x46c63b
or dword [0x4cf038], 0x200
cmp dword [ebp - 0x40c], 0
je 0x46d432
mov eax, dword [ebp - 0x44c]
mov dword [esp], esi
mov ecx, str.join_output
mov edx, 0x6a
mov eax, dword [eax]
call sym._isoption
test eax, eax
je 0x46c670
or dword [0x4cf038], 0x408
cmp dword [ebp - 0x40c], 0
je 0x46d432
mov eax, dword [ebp - 0x44c]
mov dword [esp], esi
xor edx, edx
mov ecx, 0x4749ac
mov eax, dword [eax]
call sym._isoption
test eax, eax
mov dword [ebp - 0x440], eax
je 0x46d504
mov eax, dword [ebp - 0x414]
mov dword [ebp - 0x440], 0
and eax, 0xfffff8fe
or eax, 0x41
mov dword [ebp - 0x414], eax
jmp 0x46c040
mov dword [ebp - 0x478], 0
mov dword [ebp - 0x45c], 0
mov dword [ebp - 0x46c], 0
mov dword [ebp - 0x47c], 0
mov dword [esp], 1
call sym._isatty
test eax, eax
je 0x46c6fa
or dword [ebp - 0x414], 0x80
mov eax, dword [0x4cf038]
test ah, 1
je 0x46c70b
or dword [ebp - 0x414], 8
test al, 0x20
je 0x46c716
or dword [ebp - 0x414], 2
test al, 0x40
je 0x46c721
or dword [ebp - 0x414], 4
test al, 0x80
je 0x46c72c
and dword [ebp - 0x414], 0xfffffffb
mov dword [esp], str.JQ_COLORS
call sym._getenv
test eax, eax
je 0x46c758
mov dword [esp], str.JQ_COLORS
call sym._getenv
mov dword [esp], eax
call dbg.jq_set_colors
test eax, eax
je 0x46d3df
mov esi, dword [ebp - 0x470]
mov ecx, 4
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call sym._jv_get_kind
sub eax, 1
je 0x46d253
lea eax, [esp + 0x14]
mov dword [ebp - 0x440], eax
lea eax, [esp + 4]
mov dword [ebp - 0x43c], eax
lea ebx, [ebp - 0x238]
mov dword [esp + 4], 0x474bff
mov dword [esp], ebx
call sym._jv_string
mov edi, dword [ebp - 0x440]
mov esi, dword [ebp - 0x470]
mov ecx, 4
rep movsd dword es:[edi], dword [esi]
mov ecx, 4
mov esi, ebx
mov edi, dword [ebp - 0x43c]
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x41c]
mov dword [esp], eax
call dbg.jq_set_attr
mov eax, dword [ebp - 0x448]
mov eax, dword [eax]
mov dword [esp], eax
call sym._strdup
test eax, eax
je 0x46d692
lea esi, [ebp - 0x228]
lea ebx, [ebp - 0x218]
mov dword [esp], eax
mov dword [ebp - 0x444], eax
call dbg.dirname
mov dword [esp], esi
mov dword [esp + 4], eax
call sym._jv_string
mov dword [esp], ebx
mov dword [esp + 4], 0x474c25
call sym._jv_string
mov edi, dword [ebp - 0x440]
mov ecx, 4
rep movsd dword es:[edi], dword [esi]
mov esi, ebx
mov ecx, 4
lea ebx, [ebp - 0x1f8]
mov edi, dword [ebp - 0x43c]
rep movsd dword es:[edi], dword [esi]
lea esi, [ebp - 0x208]
lea edi, [esp + 0x14]
mov eax, dword [ebp - 0x41c]
mov dword [esp], eax
call dbg.jq_set_attr
mov edx, dword [ebp - 0x444]
mov dword [esp], edx
call sym._free
mov dword [esp], esi
mov dword [esp + 4], 0x4740c1
call sym._jv_string
mov dword [esp + 4], str.VERSION_DIR
mov dword [esp], ebx
call sym._jv_string
mov dword [ebp - 0x440], edi
mov ecx, 4
rep movsd dword es:[edi], dword [esi]
lea edi, [esp + 4]
mov ecx, 4
mov esi, ebx
mov dword [ebp - 0x43c], edi
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x41c]
mov dword [esp], eax
call dbg.jq_set_attr
cmp dword [ebp - 0x45c], 0
je 0x46d413
test byte [0x4cf039], 2
je 0x46cc8d
mov eax, dword [ebp - 0x45c]
mov dword [esp], eax
call sym._strdup
test eax, eax
mov dword [ebp - 0x444], eax
je 0x46d67a
mov eax, dword [ebp - 0x45c]
lea esi, [ebp - 0x28]
mov dword [esp + 8], 1
lea edi, [ebp - 0x48]
mov dword [esp], esi
mov dword [esp + 4], eax
call dbg.jv_load_file
mov dword [ebp - 0x44c], esi
mov ecx, 4
rep movsd dword es:[edi], dword [esi]
lea esi, [ebp - 0x48]
mov ecx, 4
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call sym._jv_get_kind
test eax, eax
je 0x46d0d3
mov eax, dword [ebp - 0x444]
lea esi, [ebp - 0x1e8]
lea ebx, [ebp - 0x1c8]
mov dword [esp], eax
call dbg.dirname
mov dword [esp], esi
mov dword [esp + 4], eax
call sym._jv_string
mov edi, dword [ebp - 0x43c]
mov ecx, 4
lea eax, [ebp - 0x1d8]
rep movsd dword es:[edi], dword [esi]
mov dword [esp], eax
mov dword [ebp - 0x43c], eax
call dbg.jq_realpath
mov dword [esp], ebx
mov dword [esp + 4], 0x474c43
call sym._jv_string
mov eax, dword [ebp - 0x43c]
mov edi, dword [ebp - 0x440]
mov ecx, 4
mov esi, eax
rep movsd dword es:[edi], dword [esi]
mov esi, ebx
lea edi, [esp + 4]
mov ecx, 4
lea ebx, [ebp - 0x188]
rep movsd dword es:[edi], dword [esi]
lea edi, [esp + 4]
mov eax, dword [ebp - 0x41c]
mov dword [esp], eax
call dbg.jq_set_attr
mov esi, dword [ebp - 0x468]
mov ecx, 4
lea eax, [ebp - 0x1b8]
rep movsd dword es:[edi], dword [esi]
mov dword [esp], eax
lea edi, [esp + 0x24]
call sym._jv_copy
lea eax, [ebp - 0x1a8]
mov dword [esp + 4], str.named
mov dword [esp], eax
call sym._jv_string
lea eax, [ebp - 0x198]
mov dword [esp + 4], str.positional
mov dword [esp], eax
mov dword [ebp - 0x43c], eax
call sym._jv_string
mov dword [esp], ebx
call dbg.jv_object
mov esi, dword [ebp - 0x460]
mov ecx, 4
lea edx, [ebp - 0x178]
rep movsd dword es:[edi], dword [esi]
lea edi, [esp + 0x14]
mov ecx, 4
mov eax, dword [ebp - 0x43c]
mov esi, eax
rep movsd dword es:[edi], dword [esi]
mov esi, ebx
lea edi, [esp + 4]
mov ecx, 4
lea ebx, [ebp - 0x158]
rep movsd dword es:[edi], dword [esi]
mov dword [esp], edx
mov dword [ebp - 0x43c], edx
lea edi, [esp + 0x24]
lea esi, [ebp - 0x1b8]
call dbg.jv_object_set
lea eax, [ebp - 0x408]
mov ecx, 4
mov dword [ebp - 0x460], eax
rep movsd dword es:[edi], dword [esi]
lea edi, [esp + 0x14]
mov ecx, 4
lea esi, [ebp - 0x1a8]
rep movsd dword es:[edi], dword [esi]
lea edi, [esp + 4]
mov ecx, 4
mov edx, dword [ebp - 0x43c]
mov esi, edx
rep movsd dword es:[edi], dword [esi]
mov dword [esp], eax
mov esi, eax
lea edi, [esp + 4]
call dbg.jv_object_set
mov ecx, 4
lea eax, [ebp - 0x168]
rep movsd dword es:[edi], dword [esi]
mov dword [esp], eax
mov dword [ebp - 0x43c], eax
lea edi, [esp + 0x24]
call sym._jv_copy
mov dword [esp], ebx
mov dword [esp + 4], str.ARGS
call sym._jv_string
mov eax, dword [ebp - 0x43c]
mov ecx, 4
lea edx, [ebp - 0x438]
mov esi, eax
rep movsd dword es:[edi], dword [esi]
mov esi, ebx
lea edi, [esp + 0x14]
mov ecx, 4
rep movsd dword es:[edi], dword [esi]
lea edi, [esp + 4]
lea esi, [ebp - 0x3f8]
mov ecx, 4
rep movsd dword es:[edi], dword [esi]
mov dword [esp], edx
mov dword [ebp - 0x43c], edx
lea edi, [ebp - 0x3f8]
call dbg.jv_object_set
mov edx, dword [ebp - 0x43c]
mov ecx, 4
lea eax, [ebp - 0x148]
mov esi, edx
rep movsd dword es:[edi], dword [esi]
lea edi, [esp + 4]
lea esi, [ebp - 0x3f8]
mov ecx, 4
mov dword [ebp - 0x43c], edi
mov dword [ebp - 0x468], esi
rep movsd dword es:[edi], dword [esi]
mov dword [esp], eax
mov edi, esp
call sym._jv_copy
mov esi, dword [ebp - 0x44c]
mov ecx, 4
rep movsd dword es:[edi], dword [esi]
call sym._jv_string_value
mov dword [esp + 8], 2
mov dword [esp + 4], 0x474c68
mov ebx, eax
mov dword [esp], eax
call sym._strncmp
test eax, eax
jne 0x46cbaf
mov dword [esp + 4], 0xa
mov dword [esp], ebx
call sym._strchr
test eax, eax
je 0x46cbaf
cmp byte [eax + 1], 0x23
je 0x46d49d
lea edi, [esp + 8]
mov ecx, 4
lea esi, [ebp - 0x148]
rep movsd dword es:[edi], dword [esi]
mov dword [esp + 4], ebx
mov edi, esp
mov eax, dword [ebp - 0x41c]
mov dword [esp], eax
call dbg.jq_compile_args
mov dword [ebp - 0x440], eax
mov eax, dword [ebp - 0x444]
mov dword [esp], eax
call sym._free
mov esi, dword [ebp - 0x44c]
mov ecx, 4
rep movsd dword es:[edi], dword [esi]
call dbg.jv_free
mov eax, dword [ebp - 0x440]
jmp 0x46ced8
jne 0x46bd88
call dbg.jq_init
test eax, eax
mov dword [ebp - 0x41c], eax
je 0x46bda8
mov dword [esp + 4], 0
mov dword [esp], 0
mov dword [ebp - 0x414], 0x201
call dbg.jq_util_input_init
mov dword [ebp - 0x410], eax
lea eax, [ebp - 0x3e8]
mov dword [ebp - 0x40c], 0
mov dword [esp], eax
mov dword [ebp - 0x470], eax
call sym._jv_null
mov dword [ebp - 0x478], 0
mov dword [ebp - 0x46c], 0
mov dword [ebp - 0x47c], 0
mov dword [ebp - 0x45c], 0
jmp 0x46c6e0
lea esi, [ebp - 0x138]
mov dword [esp + 4], 0x4748b8
lea ebx, [ebp - 0x118]
mov dword [esp], esi
call sym._jv_string
mov edi, dword [ebp - 0x43c]
mov ecx, 4
lea eax, [ebp - 0x128]
rep movsd dword es:[edi], dword [esi]
mov dword [esp], eax
mov dword [ebp - 0x43c], eax
call dbg.jq_realpath
mov dword [esp], ebx
mov dword [esp + 4], 0x474c43
call sym._jv_string
mov eax, dword [ebp - 0x43c]
mov edi, dword [ebp - 0x440]
mov ecx, 4
mov esi, eax
rep movsd dword es:[edi], dword [esi]
mov esi, ebx
lea edi, [esp + 4]
mov ecx, 4
lea ebx, [ebp - 0xd8]
rep movsd dword es:[edi], dword [esi]
lea edi, [esp + 4]
mov eax, dword [ebp - 0x41c]
mov dword [esp], eax
call dbg.jq_set_attr
mov esi, dword [ebp - 0x468]
mov ecx, 4
lea eax, [ebp - 0x108]
rep movsd dword es:[edi], dword [esi]
mov dword [esp], eax
lea edi, [esp + 0x24]
call sym._jv_copy
lea eax, [ebp - 0xf8]
mov dword [esp + 4], str.named
mov dword [esp], eax
call sym._jv_string
lea eax, [ebp - 0xe8]
mov dword [esp + 4], str.positional
mov dword [esp], eax
mov dword [ebp - 0x43c], eax
call sym._jv_string
mov dword [esp], ebx
call dbg.jv_object
mov esi, dword [ebp - 0x460]
mov ecx, 4
lea edx, [ebp - 0xc8]
rep movsd dword es:[edi], dword [esi]
lea edi, [esp + 0x14]
mov ecx, 4
mov eax, dword [ebp - 0x43c]
mov esi, eax
rep movsd dword es:[edi], dword [esi]
mov esi, ebx
lea edi, [esp + 4]
mov ecx, 4
lea ebx, [ebp - 0xa8]
rep movsd dword es:[edi], dword [esi]
mov dword [esp], edx
mov dword [ebp - 0x43c], edx
lea edi, [esp + 0x24]
lea esi, [ebp - 0x108]
call dbg.jv_object_set
lea eax, [ebp - 0x408]
mov ecx, 4
mov dword [ebp - 0x460], eax
rep movsd dword es:[edi], dword [esi]
lea edi, [esp + 0x14]
mov ecx, 4
lea esi, [ebp - 0xf8]
rep movsd dword es:[edi], dword [esi]
lea edi, [esp + 4]
mov ecx, 4
mov edx, dword [ebp - 0x43c]
mov esi, edx
rep movsd dword es:[edi], dword [esi]
mov dword [esp], eax
mov esi, eax
lea edi, [esp + 4]
call dbg.jv_object_set
mov ecx, 4
lea eax, [ebp - 0xb8]
rep movsd dword es:[edi], dword [esi]
mov dword [esp], eax
mov dword [ebp - 0x43c], eax
lea edi, [esp + 0x24]
call sym._jv_copy
mov dword [esp], ebx
mov dword [esp + 4], str.ARGS
call sym._jv_string
mov eax, dword [ebp - 0x43c]
mov ecx, 4
lea edx, [ebp - 0x438]
mov esi, eax
rep movsd dword es:[edi], dword [esi]
mov esi, ebx
lea edi, [esp + 0x14]
mov ecx, 4
lea ebx, [ebp - 0x98]
rep movsd dword es:[edi], dword [esi]
lea edi, [esp + 4]
lea esi, [ebp - 0x3f8]
mov ecx, 4
rep movsd dword es:[edi], dword [esi]
mov dword [esp], edx
mov dword [ebp - 0x43c], edx
lea edi, [ebp - 0x3f8]
call dbg.jv_object_set
mov edx, dword [ebp - 0x43c]
mov ecx, 4
mov esi, edx
rep movsd dword es:[edi], dword [esi]
lea edi, [esp + 4]
lea esi, [ebp - 0x3f8]
mov ecx, 4
mov dword [ebp - 0x43c], edi
mov dword [ebp - 0x468], esi
rep movsd dword es:[edi], dword [esi]
mov dword [esp], ebx
lea edi, [esp + 8]
mov esi, ebx
call sym._jv_copy
mov ecx, 4
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x45c]
mov dword [esp + 4], eax
mov eax, dword [ebp - 0x41c]
mov dword [esp], eax
call dbg.jq_compile_args
test eax, eax
mov ebx, 3
je 0x46bdb9
mov eax, dword [0x4cf038]
test eax, 0x10000
jne 0x46d192
test ah, 0x40
je 0x46cf01
or dword [ebp - 0x47c], 1
mov ebx, eax
and ebx, 1
test al, 2
jne 0x46d173
mov eax, dword [ebp - 0x47c]
mov dword [esp], eax
call dbg.jv_parser_new
mov dword [esp + 4], eax
mov eax, dword [ebp - 0x410]
mov dword [esp + 8], ebx
mov dword [esp], eax
call dbg.jq_util_input_set_parser
mov eax, dword [ebp - 0x410]
mov dword [esp + 4], dbg.jq_util_input_next_input_cb
mov dword [esp + 8], eax
mov eax, dword [ebp - 0x41c]
mov dword [esp], eax
call dbg.jq_set_input_cb
lea eax, [ebp - 0x414]
mov dword [esp + 4], dbg.debug_cb
mov dword [esp + 8], eax
mov eax, dword [ebp - 0x41c]
mov dword [esp], eax
call dbg.jq_set_debug_cb
cmp dword [ebp - 0x46c], 0
jne 0x46cf91
mov eax, dword [ebp - 0x410]
mov dword [esp + 4], 0x474c6b
mov dword [esp], eax
call dbg.jq_util_input_add_input
mov ebx, dword [0x4cf038]
and ebx, 4
jne 0x46d441
mov eax, dword [ebp - 0x410]
mov dword [esp], eax
call dbg.jq_util_input_errors
test eax, eax
jne 0x46d236
mov eax, dword [ebp - 0x410]
lea edi, [ebp - 0x28]
lea esi, [ebp - 0x3d8]
mov dword [esp + 4], eax
lea eax, [ebp - 0x3d8]
mov dword [esp], eax
call dbg.jq_util_input_next_input
mov ecx, 4
rep movsd dword es:[edi], dword [esi]
lea esi, [ebp - 0x28]
mov ecx, 4
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call sym._jv_get_kind
test eax, eax
jne 0x46d02a
mov edi, dword [ebp - 0x43c]
mov ecx, 4
lea esi, [ebp - 0x3d8]
rep movsd dword es:[edi], dword [esi]
lea eax, [ebp - 0x78]
mov edi, esp
lea esi, [ebp - 0x78]
mov dword [esp], eax
call sym._jv_copy
mov ecx, 4
rep movsd dword es:[edi], dword [esi]
call dbg.jv_invalid_has_msg
test eax, eax
je 0x46d236
lea edi, [ebp - 0x38]
mov ecx, 4
lea esi, [ebp - 0x3d8]
rep movsd dword es:[edi], dword [esi]
lea esi, [ebp - 0x38]
mov ecx, 4
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call sym._jv_get_kind
test eax, eax
jne 0x46d1be
mov edi, dword [ebp - 0x43c]
mov ecx, 4
lea esi, [ebp - 0x3d8]
rep movsd dword es:[edi], dword [esi]
lea eax, [ebp - 0x88]
mov edi, esp
lea esi, [ebp - 0x88]
mov dword [esp], eax
call dbg.jv_invalid_get_msg
test byte [0x4cf039], 0x40
mov ecx, 4
rep movsd dword es:[edi], dword [esi]
je 0x46d1f3
call sym._jv_string_value
mov esi, eax
mov dword [esp], 2
mov eax, dword [ebp - 0x464]
call eax
mov dword [esp + 8], esi
mov dword [esp + 4], str.ignoring_parse_error:__s_n
mov edi, esp
mov dword [esp], eax
lea esi, [ebp - 0x88]
call sym._fprintf
mov ecx, 4
rep movsd dword es:[edi], dword [esi]
call dbg.jv_free
jmp 0x46cfa0
mov edi, dword [ebp - 0x43c]
mov esi, dword [ebp - 0x44c]
mov ecx, 4
rep movsd dword es:[edi], dword [esi]
lea ebx, [ebp - 0x438]
mov dword [esp], ebx
mov esi, ebx
call dbg.jv_invalid_get_msg
mov edi, dword [ebp - 0x44c]
mov ecx, 4
rep movsd dword es:[edi], dword [esi]
mov esi, dword [ebp - 0x44c]
mov ecx, 4
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call sym._jv_string_value
mov ebx, dword [0x4cf03c]
mov esi, eax
mov dword [esp], 2
mov eax, dword [ebp - 0x464]
call eax
mov dword [esp + 0xc], esi
mov dword [esp + 8], ebx
mov dword [esp + 4], str._s:__s_n
mov dword [esp], eax
call sym._fprintf
mov esi, dword [ebp - 0x44c]
mov ecx, 4
mov edi, esp
rep movsd dword es:[edi], dword [esi]
mov ebx, 2
call dbg.jv_free
jmp 0x46bdb9
or dword [0x4cf038], 0x800
jmp 0x46c040
mov eax, dword [ebp - 0x410]
mov dword [esp + 8], ebx
mov dword [esp + 4], 0
mov dword [esp], eax
call dbg.jq_util_input_set_parser
jmp 0x46cf32
mov eax, dword [ebp - 0x41c]
mov dword [esp + 4], 0
mov dword [esp], eax
call dbg.jq_dump_disassembly
mov dword [esp], 0xa
call sym._putchar
mov eax, dword [0x4cf038]
jmp 0x46cef5
mov eax, dword [ebp - 0x414]
mov ecx, 4
mov edi, esp
lea esi, [ebp - 0x3d8]
mov dword [esp + 0x14], eax
mov eax, dword [ebp - 0x478]
mov dword [esp + 0x10], eax
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x41c]
call dbg.process
mov ebx, eax
jmp 0x46cfa0
call sym._jv_string_value
mov ebx, eax
mov dword [esp], 2
mov eax, dword [ebp - 0x464]
call eax
mov dword [esp + 8], ebx
mov dword [esp + 4], str.parse_error:__s_n
mov edi, esp
mov dword [esp], eax
lea esi, [ebp - 0x88]
mov ebx, 4
call sym._fprintf
mov ecx, 4
rep movsd dword es:[edi], dword [esi]
call dbg.jv_free
mov eax, dword [ebp - 0x410]
mov dword [esp], eax
call dbg.jq_util_input_errors
test eax, eax
mov eax, 2
cmovne ebx, eax
jmp 0x46bdb9
lea eax, [ebp - 0x298]
mov dword [esp + 4], str._ORIGIN_lib
lea esi, [ebp - 0x278]
lea ebx, [ebp - 0x268]
lea edi, [esp + 0x14]
mov dword [esp], eax
call sym._jv_string
lea edx, [ebp - 0x288]
mov dword [esp + 4], str._ORIGIN_.._lib_jq
mov dword [esp], edx
mov dword [ebp - 0x440], edx
call sym._jv_string
mov dword [esp], esi
mov dword [esp + 4], 0x474bf9
call sym._jv_string
mov dword [esp], ebx
call sym._jv_array
mov ecx, 4
lea eax, [ebp - 0x258]
rep movsd dword es:[edi], dword [esi]
lea edi, [esp + 4]
mov esi, ebx
mov ecx, 4
lea ebx, [ebp - 0x248]
rep movsd dword es:[edi], dword [esi]
mov dword [esp], eax
mov dword [ebp - 0x43c], eax
lea edi, [esp + 0x14]
call dbg.jv_array_append
mov edx, dword [ebp - 0x440]
mov ecx, 4
mov esi, edx
rep movsd dword es:[edi], dword [esi]
lea edi, [esp + 4]
mov ecx, 4
mov eax, dword [ebp - 0x43c]
mov esi, eax
rep movsd dword es:[edi], dword [esi]
lea edi, [esp + 0x14]
mov dword [esp], ebx
lea esi, [ebp - 0x298]
call dbg.jv_array_append
mov dword [ebp - 0x440], edi
mov ecx, 4
rep movsd dword es:[edi], dword [esi]
lea edi, [esp + 4]
mov esi, ebx
mov ecx, 4
mov dword [ebp - 0x43c], edi
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x470]
mov dword [esp], eax
call dbg.jv_array_append
jmp 0x46c789
mov eax, dword [ebp - 0x470]
mov dword [esp], eax
call sym._jv_array
jmp 0x46c2b4
lea esi, [ebp - 0x388]
add eax, 2
lea edi, [esp + 4]
mov dword [esp + 4], eax
mov dword [esp], esi
call sym._jv_string
mov ecx, 4
lea eax, [ebp - 0x378]
rep movsd dword es:[edi], dword [esi]
mov dword [esp], eax
lea esi, [ebp - 0x378]
call dbg.jq_realpath
lea eax, [esp + 0x14]
mov ecx, 4
lea edx, [ebp - 0x438]
mov edi, eax
rep movsd dword es:[edi], dword [esi]
lea edi, [esp + 4]
mov ecx, 4
mov esi, dword [ebp - 0x470]
rep movsd dword es:[edi], dword [esi]
mov dword [esp], edx
mov dword [ebp - 0x43c], edx
lea edi, [ebp - 0x3e8]
call dbg.jv_array_append
mov edx, dword [ebp - 0x43c]
mov dword [ebp - 0x470], edi
mov ecx, 4
mov esi, edx
rep movsd dword es:[edi], dword [esi]
jmp 0x46c040
mov dword [esp], 2
mov eax, dword [ebp - 0x464]
call eax
mov dword [esp + 8], 0x19
mov dword [esp + 0xc], eax
mov dword [esp + 4], 1
mov dword [esp], str.Failed_to_set__JQ_COLORS_n
call sym._fwrite
jmp 0x46c758
mov dword [esp], 1
call sym._isatty
test eax, eax
jne 0x46d47e
mov dword [ebp - 0x45c], 0x4748b8
jmp 0x46c8c0
mov dword [ebp - 0x440], 0
jmp 0x46c040
lea esi, [ebp - 0x88]
mov ebx, dword [ebp - 0x414]
mov edi, esp
mov dword [esp], esi
call sym._jv_null
mov eax, dword [ebp - 0x478]
mov dword [esp + 0x14], ebx
mov ecx, 4
mov dword [esp + 0x10], eax
rep movsd dword es:[edi], dword [esi]
mov eax, dword [ebp - 0x41c]
call dbg.process
mov ebx, eax
jmp 0x46d236
mov dword [esp], 0
call sym._isatty
test eax, eax
je 0x46d423
mov edx, 1
mov eax, 2
call dbg.usage
add eax, 1
mov dword [esp + 4], 0xa
mov dword [esp], eax
call sym._strchr
test eax, eax
je 0x46cbaf
movzx edx, byte [eax + 1]
test dl, dl
je 0x46cbaf
cmp dl, 0x23
je 0x46cbaf
cmp byte [eax - 1], 0x5c
jne 0x46cbaf
cmp byte [eax - 2], 0x5c
je 0x46cbaf
add eax, 1
mov dword [esp + 4], 0xa
mov dword [esp], eax
call sym._strchr
test eax, eax
je 0x46cbaf
lea ebx, [eax + 1]
jmp 0x46cbaf
mov eax, dword [ebp - 0x44c]
mov dword [esp], esi
xor edx, edx
mov ecx, str.indent
mov eax, dword [eax]
call sym._isoption
test eax, eax
je 0x46d582
mov eax, dword [ebp - 0x444]
sub eax, 1
cmp eax, ebx
jle 0x46d611
mov eax, dword [ebp - 0x448]
mov ecx, dword [ebp - 0x454]
and dword [ebp - 0x414], 0xfffff8be
mov eax, dword [eax + ecx + 4]
mov dword [esp], eax
call sym._atoi
lea edx, [eax + 1]
cmp edx, 8
ja 0x46d5e3
cmp eax, 7
ja 0x46d57b
test eax, eax
je 0x46d56d
shl eax, 8
or eax, 1
or dword [ebp - 0x414], eax
add ebx, 1
jmp 0x46c040
mov eax, 0x41
jmp 0x46d56d
mov eax, dword [ebp - 0x44c]
mov dword [esp], esi
xor edx, edx
mov ecx, 0x474a0a
mov eax, dword [eax]
call sym._isoption
test eax, eax
mov dword [ebp - 0x440], eax
je 0x46d5bc
or dword [0x4cf038], 0x4000
mov dword [ebp - 0x440], 0
jmp 0x46c040
mov eax, dword [ebp - 0x44c]
mov dword [esp], esi
xor edx, edx
mov ecx, str.stream
mov eax, dword [eax]
call sym._isoption
test eax, eax
je 0x46d63f
or dword [ebp - 0x47c], 2
jmp 0x46c040
mov ebx, dword [0x4cf03c]
mov dword [esp], 2
mov eax, dword [ebp - 0x464]
call eax
mov dword [esp + 8], ebx
mov dword [esp + 4], str._s:___indent_takes_a_number_between__1_and_7_n
mov dword [esp], eax
call sym._fprintf
call dbg.die
mov ebx, dword [0x4cf03c]
mov dword [esp], 2
mov eax, dword [ebp - 0x464]
call eax
mov dword [esp + 8], ebx
mov dword [esp + 4], str._s:___indent_takes_one_parameter_n
mov dword [esp], eax
call sym._fprintf
call dbg.die
mov eax, dword [ebp - 0x44c]
mov dword [esp], esi
xor edx, edx
mov ecx, str.stream_errors
mov eax, dword [eax]
call sym._isoption
test eax, eax
mov dword [ebp - 0x440], eax
je 0x46d701
or dword [ebp - 0x47c], 4
mov dword [ebp - 0x440], 0
jmp 0x46c040
mov dword [esp], str.malloc
call sym._perror
mov dword [esp], 2
call sym._exit
mov dword [esp], 2
mov eax, dword [ebp - 0x464]
call eax
mov dword [esp + 8], 0x15
mov dword [esp + 0xc], eax
mov dword [esp + 4], 1
mov dword [esp], str.Error:_out_of_memory_n
call sym._fwrite
mov dword [esp], 1
call sym._exit
mov dword [esp], 2
mov eax, dword [ebp - 0x464]
call eax
mov dword [esp + 8], 0x3f
mov dword [esp + 0xc], eax
mov dword [esp + 4], 1
mov dword [esp], str._L_takes_a_parameter:__e.g.__L__search_path_or__L_search_path__n
call sym._fwrite
call dbg.die
mov eax, dword [ebp - 0x44c]
mov dword [esp], esi
mov ecx, str.exit_status
mov edx, 0x65
mov eax, dword [eax]
call sym._isoption
test eax, eax
je 0x46d736
or dword [0x4cf038], 0x1000
cmp dword [ebp - 0x40c], 0
je 0x46c040
mov eax, dword [ebp - 0x44c]
mov dword [esp], esi
xor edx, edx
mov ecx, str.args
mov eax, dword [eax]
call sym._isoption
test eax, eax
je 0x46d76a
mov dword [ebp - 0x458], 0
mov dword [ebp - 0x450], 1
jmp 0x46c040
mov edi, dword [ebp - 0x44c]
mov dword [esp], esi
xor edx, edx
mov ecx, str.jsonargs
mov eax, dword [edi]
call sym._isoption
test eax, eax
mov dword [ebp - 0x440], eax
jne 0x46d847
mov dword [esp], esi
mov eax, dword [edi]
xor edx, edx
mov ecx, 0x474a3d
call sym._isoption
test eax, eax
je 0x46d93f
mov eax, dword [ebp - 0x444]
sub eax, 2
cmp eax, ebx
jle 0x46d911
mov eax, dword [ebp - 0x448]
mov ecx, dword [ebp - 0x454]
lea edi, [esp + 4]
lea edx, [eax + ecx + 4]
lea eax, [ebp - 0x348]
mov ecx, dword [edx]
mov dword [esp], eax
mov dword [ebp - 0x474], edx
mov dword [ebp - 0x44c], eax
mov dword [esp + 4], ecx
call sym._jv_string
mov dword [ebp - 0x43c], edi
mov esi, dword [ebp - 0x468]
mov ecx, 4
rep movsd dword es:[edi], dword [esi]
lea eax, [ebp - 0x338]
lea edi, [esp + 0x10]
mov dword [esp], eax
call sym._jv_copy
mov eax, dword [ebp - 0x44c]
mov ecx, 4
mov esi, eax
rep movsd dword es:[edi], dword [esi]
mov ecx, 4
mov edi, esp
lea esi, [ebp - 0x338]
rep movsd dword es:[edi], dword [esi]
call dbg.jv_object_has
test eax, eax
mov edx, dword [ebp - 0x474]
je 0x46d86a
add ebx, 2
jmp 0x46c040
mov dword [ebp - 0x440], 0
mov dword [ebp - 0x450], 0
mov dword [ebp - 0x458], 1
jmp 0x46c040
mov ecx, dword [ebp - 0x454]
mov eax, dword [ebp - 0x448]
lea esi, [ebp - 0x328]
mov dword [ebp - 0x44c], edx
lea edi, [esp + 0x24]
mov eax, dword [eax + ecx + 8]
mov dword [esp], esi
mov dword [esp + 4], eax
call sym._jv_string
mov edx, dword [ebp - 0x44c]
mov eax, dword [edx]
mov dword [esp + 4], eax
lea eax, [ebp - 0x318]
mov dword [esp], eax
call sym._jv_string
mov ecx, 4
lea eax, [esp + 0x14]
lea edx, [ebp - 0x438]
rep movsd dword es:[edi], dword [esi]
mov ecx, 4
mov edi, eax
lea esi, [ebp - 0x318]
rep movsd dword es:[edi], dword [esi]
mov ecx, 4
mov edi, dword [ebp - 0x43c]
mov esi, dword [ebp - 0x468]
rep movsd dword es:[edi], dword [esi]
mov dword [esp], edx
mov dword [ebp - 0x43c], edx
lea edi, [ebp - 0x3f8]
call dbg.jv_object_set
mov edx, dword [ebp - 0x43c]
mov dword [ebp - 0x468], edi
mov ecx, 4
mov esi, edx
rep movsd dword es:[edi], dword [esi]
jmp 0x46d83f
mov ebx, dword [0x4cf03c]
mov dword [esp], 2
mov eax, dword [ebp - 0x464]
call eax
mov dword [esp + 8], ebx
mov dword [esp + 4], str._s:___arg_takes_two_parameters__e.g.___arg_varname_value__n
mov dword [esp], eax
call sym._fprintf
call dbg.die
mov eax, dword [ebp - 0x44c]
mov dword [esp], esi
xor edx, edx
mov ecx, str.argjson
mov eax, dword [eax]
call sym._isoption
test eax, eax
mov dword [ebp - 0x440], eax
je 0x46dafb
mov eax, dword [ebp - 0x444]
sub eax, 2
cmp eax, ebx
jle 0x46dacd
mov eax, dword [ebp - 0x448]
mov ecx, dword [ebp - 0x454]
lea edi, [esp + 4]
lea edx, [eax + ecx + 4]
lea eax, [ebp - 0x308]
mov ecx, dword [edx]
mov dword [esp], eax
mov dword [ebp - 0x440], eax
mov dword [ebp - 0x44c], edx
mov dword [esp + 4], ecx
call sym._jv_string
mov dword [ebp - 0x43c], edi
mov esi, dword [ebp - 0x468]
mov ecx, 4
rep movsd dword es:[edi], dword [esi]
lea edx, [ebp - 0x2f8]
lea edi, [esp + 0x10]
mov dword [esp], edx
call sym._jv_copy
mov eax, dword [ebp - 0x440]
mov ecx, 4
mov esi, eax
rep movsd dword es:[edi], dword [esi]
mov ecx, 4
mov edi, esp
lea esi, [ebp - 0x2f8]
rep movsd dword es:[edi], dword [esi]
call dbg.jv_object_has
test eax, eax
jne 0x46dabb
mov ecx, dword [ebp - 0x454]
mov eax, dword [ebp - 0x448]
lea edi, [ebp - 0x68]
lea esi, [ebp - 0x28]
mov eax, dword [eax + ecx + 8]
mov dword [esp + 4], eax
lea eax, [ebp - 0x28]
mov dword [esp], eax
call dbg.jv_parse
mov ecx, 4
rep movsd dword es:[edi], dword [esi]
lea esi, [ebp - 0x68]
mov ecx, 4
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call sym._jv_get_kind
test eax, eax
mov edx, dword [ebp - 0x44c]
je 0x46dd91
mov eax, dword [edx]
lea edi, [esp + 0x24]
lea esi, [ebp - 0x28]
mov dword [esp + 4], eax
lea eax, [ebp - 0x2e8]
mov dword [esp], eax
call sym._jv_string
mov ecx, 4
lea eax, [esp + 0x14]
lea edx, [ebp - 0x438]
rep movsd dword es:[edi], dword [esi]
mov edi, eax
mov ecx, 4
lea esi, [ebp - 0x2e8]
rep movsd dword es:[edi], dword [esi]
mov ecx, 4
mov edi, dword [ebp - 0x43c]
mov esi, dword [ebp - 0x468]
rep movsd dword es:[edi], dword [esi]
mov dword [esp], edx
mov dword [ebp - 0x43c], edx
lea edi, [ebp - 0x3f8]
call dbg.jv_object_set
mov edx, dword [ebp - 0x43c]
mov dword [ebp - 0x468], edi
mov ecx, 4
mov esi, edx
rep movsd dword es:[edi], dword [esi]
add ebx, 2
mov dword [ebp - 0x440], 0
jmp 0x46c040
mov ebx, dword [0x4cf03c]
mov dword [esp], 2
mov eax, dword [ebp - 0x464]
call eax
mov dword [esp + 8], ebx
mov dword [esp + 4], str._s:___argjson_takes_two_parameters__e.g.___argjson_varname_text__n
mov dword [esp], eax
call sym._fprintf
call dbg.die
mov eax, dword [ebp - 0x44c]
mov dword [esp], esi
xor edx, edx
mov ecx, str.argfile
mov eax, dword [eax]
call sym._isoption
test eax, eax
je 0x46dd19
mov edi, dword [ebp - 0x44c]
mov dword [esp], esi
xor edx, edx
mov ecx, str.rawfile
mov eax, dword [edi]
call sym._isoption
mov dword [esp], esi
mov dword [ebp - 0x44c], eax
xor edx, edx
mov eax, dword [edi]
mov ecx, str.argfile
call sym._isoption
test eax, eax
mov dword [ebp - 0x474], str.argfile
jne 0x46db70
cmp dword [ebp - 0x44c], 0
mov edx, str.slurpfile
mov eax, str.rawfile
cmove eax, edx
mov dword [ebp - 0x474], eax
mov eax, dword [ebp - 0x444]
sub eax, 2
cmp eax, ebx
jle 0x46dea2
mov edx, dword [ebp - 0x454]
mov eax, dword [ebp - 0x448]
lea edi, [esp + 4]
lea eax, [eax + edx + 4]
lea edx, [ebp - 0x2d8]
mov dword [ebp - 0x480], eax
mov eax, dword [eax]
mov dword [esp], edx
mov dword [ebp - 0x488], edx
mov dword [esp + 4], eax
call sym._jv_string
mov dword [ebp - 0x43c], edi
mov esi, dword [ebp - 0x468]
mov ecx, 4
rep movsd dword es:[edi], dword [esi]
lea eax, [ebp - 0x2c8]
lea edi, [esp + 0x10]
mov dword [esp], eax
mov dword [ebp - 0x484], eax
call sym._jv_copy
mov edx, dword [ebp - 0x488]
mov ecx, 4
mov esi, edx
rep movsd dword es:[edi], dword [esi]
mov ecx, 4
mov edi, esp
mov eax, dword [ebp - 0x484]
mov esi, eax
rep movsd dword es:[edi], dword [esi]
call dbg.jv_object_has
test eax, eax
jne 0x46d83f
mov ecx, dword [ebp - 0x448]
mov edx, dword [ebp - 0x454]
lea esi, [ebp - 0x28]
lea edi, [ebp - 0x58]
lea edx, [ecx + edx + 8]
mov ecx, dword [ebp - 0x44c]
mov dword [ebp - 0x454], edx
mov dword [esp + 8], ecx
mov eax, dword [edx]
mov dword [esp], esi
mov dword [esp + 4], eax
call dbg.jv_load_file
mov dword [ebp - 0x44c], esi
mov ecx, 4
rep movsd dword es:[edi], dword [esi]
lea esi, [ebp - 0x58]
mov ecx, 4
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call sym._jv_get_kind
test eax, eax
jne 0x46de1c
mov edx, dword [ebp - 0x454]
mov edi, dword [ebp - 0x43c]
mov ecx, 4
mov esi, dword [ebp - 0x44c]
lea ebx, [ebp - 0x438]
mov dword [ebp - 0x440], edx
rep movsd dword es:[edi], dword [esi]
mov dword [esp], ebx
mov esi, ebx
call dbg.jv_invalid_get_msg
mov edi, dword [ebp - 0x44c]
mov ecx, 4
rep movsd dword es:[edi], dword [esi]
mov esi, dword [ebp - 0x44c]
mov edi, esp
mov ecx, 4
rep movsd dword es:[edi], dword [esi]
call sym._jv_string_value
mov edx, dword [ebp - 0x440]
mov edi, eax
mov eax, dword [ebp - 0x480]
mov ebx, dword [0x4cf03c]
mov edx, dword [edx]
mov esi, dword [eax]
mov dword [esp], 2
mov eax, dword [ebp - 0x464]
mov dword [ebp - 0x43c], edx
call eax
mov edx, dword [ebp - 0x43c]
mov ecx, dword [ebp - 0x474]
mov dword [esp + 0x18], edi
mov dword [esp + 0x10], esi
mov dword [esp + 8], ebx
mov dword [esp + 4], str._s:_Bad_JSON_in____s__s__s:__s_n
mov dword [esp + 0x14], edx
mov dword [esp + 0xc], ecx
mov dword [esp], eax
call sym._fprintf
jmp 0x46d146
mov eax, dword [ebp - 0x44c]
mov dword [esp], esi
xor edx, edx
mov ecx, str.rawfile
mov eax, dword [eax]
call sym._isoption
test eax, eax
jne 0x46db1a
mov eax, dword [ebp - 0x44c]
mov dword [esp], esi
xor edx, edx
mov ecx, str.slurpfile
mov eax, dword [eax]
call sym._isoption
test eax, eax
jne 0x46db1a
mov eax, dword [ebp - 0x44c]
mov dword [esp], esi
xor edx, edx
mov ecx, str.debug_dump_disasm
mov eax, dword [eax]
call sym._isoption
test eax, eax
mov dword [ebp - 0x440], eax
je 0x46ddbf
or dword [0x4cf038], 0x10000
mov dword [ebp - 0x440], 0
jmp 0x46c040
mov ebx, dword [0x4cf03c]
mov dword [esp], 2
mov eax, dword [ebp - 0x464]
call eax
mov dword [esp + 8], ebx
mov dword [esp + 4], str._s:_invalid_JSON_text_passed_to___argjson_n
mov dword [esp], eax
call sym._fprintf
call dbg.die
mov eax, dword [ebp - 0x44c]
mov dword [esp], esi
xor edx, edx
mov ecx, str.debug_traceall
mov eax, dword [eax]
call sym._isoption
test eax, eax
je 0x46ddf1
cmp dword [ebp - 0x40c], 0
mov dword [ebp - 0x478], 3
je 0x46c040
mov eax, dword [ebp - 0x44c]
mov dword [esp], esi
xor edx, edx
mov ecx, str.debug_trace
mov eax, dword [eax]
call sym._isoption
test eax, eax
je 0x46dede
or dword [ebp - 0x478], 1
jmp 0x46c040
mov eax, dword [ebp - 0x474]
mov dword [esp + 4], str.argfile
mov dword [esp], eax
call sym._strcmp
test eax, eax
je 0x46dfa6
lea edx, [ebp - 0x438]
mov eax, dword [ebp - 0x480]
mov dword [ebp - 0x454], edx
lea edi, [esp + 0x24]
mov eax, dword [eax]
mov dword [esp + 4], eax
lea eax, [ebp - 0x2a8]
mov dword [esp], eax
call sym._jv_string
mov esi, dword [ebp - 0x44c]
mov ecx, 4
lea eax, [esp + 0x14]
rep movsd dword es:[edi], dword [esi]
mov ecx, 4
mov edi, eax
lea esi, [ebp - 0x2a8]
rep movsd dword es:[edi], dword [esi]
mov ecx, 4
mov edi, dword [ebp - 0x43c]
mov esi, dword [ebp - 0x468]
rep movsd dword es:[edi], dword [esi]
mov edx, dword [ebp - 0x454]
jmp 0x46d8e3
mov ebx, dword [0x4cf03c]
mov dword [esp], 2
mov eax, dword [ebp - 0x464]
call eax
mov ecx, dword [ebp - 0x474]
mov dword [esp + 8], ebx
mov dword [esp + 4], str._s:____s_takes_two_parameters__e.g.____s_varname_filename__n
mov dword [esp], eax
mov dword [esp + 0x10], ecx
mov dword [esp + 0xc], ecx
call sym._fprintf
call dbg.die
mov eax, dword [ebp - 0x44c]
mov dword [esp], esi
mov ecx, str.help
mov edx, 0x68
mov eax, dword [eax]
call sym._isoption
test eax, eax
mov edi, eax
jne 0x46e0cf
mov eax, dword [ebp - 0x44c]
mov dword [esp], esi
mov ecx, str.version
mov edx, 0x56
mov eax, dword [eax]
call sym._isoption
test eax, eax
jne 0x46e0b4
mov eax, dword [ebp - 0x44c]
mov dword [esp], esi
xor edx, edx
mov ecx, str.run_tests
mov eax, dword [eax]
call sym._isoption
test eax, eax
mov dword [ebp - 0x440], eax
jne 0x46e05e
mov eax, dword [ebp - 0x44c]
or ecx, 0xffffffff
mov esi, dword [eax]
xor eax, eax
mov edi, esi
repne scasb al, byte es:[edi]
mov eax, ecx
mov ecx, dword [ebp - 0x40c]
not eax
sub eax, 1
lea edx, [ecx + 1]
cmp eax, edx
je 0x46c040
mov ebx, esi
mov esi, dword [0x4cf03c]
mov dword [esp], 2
mov eax, dword [ebp - 0x464]
call eax
mov dword [esp + 0xc], ebx
mov dword [esp + 8], esi
mov dword [esp + 4], str._s:_Unknown_option__s_n
mov dword [esp], eax
call sym._fprintf
call dbg.die
mov esi, dword [ebp - 0x44c]
mov ecx, 4
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call sym._jv_get_kind
cmp eax, 6
lea edx, [ebp - 0x438]
jne 0x46de40
mov dword [ebp - 0x474], edx
mov edi, dword [ebp - 0x43c]
mov ecx, 4
mov esi, dword [ebp - 0x44c]
lea eax, [ebp - 0x2b8]
rep movsd dword es:[edi], dword [esi]
mov dword [esp], eax
mov dword [ebp - 0x454], eax
mov edi, esp
call sym._jv_copy
mov eax, dword [ebp - 0x454]
mov ecx, 4
mov esi, eax
rep movsd dword es:[edi], dword [esi]
call dbg.jv_array_length
sub eax, 1
mov edx, dword [ebp - 0x474]
jne 0x46de40
mov dword [esp + 0x14], 0
mov edi, dword [ebp - 0x43c]
mov ecx, 4
mov esi, dword [ebp - 0x44c]
rep movsd dword es:[edi], dword [esi]
mov dword [esp], edx
mov dword [ebp - 0x454], edx
call dbg.jv_array_get
mov edx, dword [ebp - 0x454]
mov ecx, 4
mov edi, dword [ebp - 0x44c]
mov esi, edx
rep movsd dword es:[edi], dword [esi]
jmp 0x46de40
mov eax, ebx
mov ebx, dword [ebp - 0x448]
mov edx, 1
add eax, 1
lea ecx, [ebx + eax*4]
mov ebx, dword [ebp - 0x444]
sub ebx, eax
test byte [0x4cf03a], 1
mov eax, ebx
jne 0x46e08d
mov edx, dword [ebp - 0x478]
and edx, 1
mov dword [esp + 0x18], ecx
mov dword [esp + 0x14], eax
mov ecx, 4
mov dword [esp + 0x10], edx
mov esi, dword [ebp - 0x470]
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call dbg.jq_testsuite
mov ebx, eax
jmp 0x46bdb9
mov dword [esp + 4], 0x4740c1
mov dword [esp], str.jq__s_n
mov ebx, edi
call sym._printf
jmp 0x46bdb9
xor edx, edx
xor eax, eax
call dbg.usage
nop
nop
nop
nop
nop
nop
nop
nop