Function at 0x4e5060
Capabilities:
Reference sql statements

Disassembly:
lea r12, [rsp - 0xf0]
cmp r12, qword [r14 + 0x10]
jbe 0x4e5c1e
push rbp
mov rbp, rsp
sub rsp, 0x168
movq qword [rsp + 0x160], xmm15
mov byte [rsp + 0x47], 0
movups xmmword [rsp + 0xc8], xmm15
cmp qword [rax + 0xa0], 0
nop dword [rax]
jne 0x4e5963
mov qword [rsp + 0x178], rax
mov byte [rsp + 0x46], 0
movups xmmword [rsp + 0xe8], xmm15
mov qword [rsp + 0xf8], 0
lea rsi, [sym.os_exec._Cmd_.Start.func1]
mov qword [rsp + 0xe8], rsi
mov qword [rsp + 0xf0], rax
lea rsi, [rsp + 0x46]
mov qword [rsp + 0xf8], rsi
lea rsi, [rsp + 0xe8]
mov qword [rsp + 0x160], rsi
mov byte [rsp + 0x47], 1
cmp qword [rax + 8], 0
jne 0x4e5175
cmp qword [rax + 0xc0], 0
jne 0x4e5175
cmp qword [rax + 0x150], 0
jne 0x4e5175
lea rax, [0x005a9cc0]
call sym.runtime.newobject
mov qword [rax + 8], 0x10
lea rcx, [0x005e082d]
mov qword [rax], rcx
lea rcx, [0x006371c0]
mov rdx, qword [rsp + 0x178]
mov qword [rdx + 0xc0], rcx
cmp dword [0x007c4ac0], 0
je 0x4e516c
call sym.runtime.gcWriteBarrier2
mov qword [r11], rax
mov rsi, qword [rdx + 0xc8]
mov qword [r11 + 8], rsi
mov qword [rdx + 0xc8], rax
jmp 0x4e517f
lea rcx, [0x006371c0]
mov rdx, rax
mov rsi, qword [rdx + 0xc0]
test rsi, rsi
jne 0x4e5199
cmp qword [rdx + 0x150], 0
je 0x4e5229
mov rax, qword [rdx + 0x150]
test rax, rax
je 0x4e51e7
mov rcx, qword [rdx + 0x158]
mov qword [rsp + 0xc8], rax
mov qword [rsp + 0xd0], rcx
mov byte [rsp + 0x47], 0
mov rdx, qword [rsp + 0x160]
mov rax, qword [rdx]
call rax
mov rbx, qword [rsp + 0xd0]
mov rax, qword [rsp + 0xc8]
add rsp, 0x168
pop rbp
ret
mov rax, qword [rdx + 0xc8]
mov qword [rsp + 0xc8], rsi
mov qword [rsp + 0xd0], rax
mov byte [rsp + 0x47], 0
mov rdx, qword [rsp + 0x160]
mov rax, qword [rdx]
call rax
mov rbx, qword [rsp + 0xd0]
mov rax, qword [rsp + 0xc8]
add rsp, 0x168
pop rbp
ret
mov rbx, qword [rdx + 8]
mov rax, qword [rdx]
mov rcx, qword [rdx + 0x40]
mov rdi, qword [rdx + 0x48]
call sym.os_exec.lookExtensions
nop dword [rax]
test rcx, rcx
jne 0x4e5928
mov rdx, qword [rsp + 0x178]
mov qword [rdx + 8], rbx
cmp dword [0x007c4ac0], 0
je 0x4e526f
nop
call sym.runtime.gcWriteBarrier2
mov qword [r11], rax
mov rsi, qword [rdx]
mov qword [r11 + 8], rsi
mov qword [rdx], rax
cmp qword [rdx + 0xd0], 0
je 0x4e52e6
cmp qword [rdx + 0xb0], 0
jne 0x4e52e6
lea rax, [0x005a9cc0]
call sym.runtime.newobject
mov qword [rax + 8], 0x47
lea rcx, [0x005ed0ca]
mov qword [rax], rcx
lea rcx, [0x006371c0]
mov qword [rsp + 0xc8], rcx
mov qword [rsp + 0xd0], rax
mov byte [rsp + 0x47], 0
mov rdx, qword [rsp + 0x160]
mov rcx, qword [rdx]
call rcx
mov rax, qword [rsp + 0xc8]
mov rbx, qword [rsp + 0xd0]
add rsp, 0x168
pop rbp
ret
mov rsi, qword [rdx + 0xb0]
test rsi, rsi
je 0x4e5319
mov rax, qword [rdx + 0xb8]
mov rcx, qword [rsi + 0x20]
call rcx
mov rbx, rax
xor eax, eax
call sym.runtime.selectnbrecv
test al, al
jne 0x4e58d1
mov rdx, qword [rsp + 0x178]
mov rcx, qword [rdx + 0x88]
mov qword [rsp + 0x60], rcx
lea rsi, [rcx + 3]
mov qword [rsp + 0x50], rsi
lea rax, [0x005d5f60]
xor ebx, ebx
mov rcx, rsi
call sym.runtime.makeslice
mov qword [rsp + 0xc0], rax
mov rax, qword [rsp + 0x178]
call sym.os_exec._Cmd_.childStdin
test rbx, rbx
jne 0x4e5896
mov qword [rsp + 0x70], rax
mov rdx, qword [rsp + 0x60]
cmp rdx, 0xfffffffffffffffd
je 0x4e537c
mov rax, qword [rsp + 0xc0]
mov rcx, qword [rsp + 0x50]
jmp 0x4e539a
mov rax, qword [rsp + 0xc0]
mov ebx, 1
xor ecx, ecx
mov rdi, rbx
lea rsi, [0x005d5f60]
call sym.runtime.growslice
mov qword [rsp + 0x50], rcx
cmp dword [0x007c4ac0], 0
jne 0x4e53af
mov rdx, qword [rsp + 0x70]
jmp 0x4e53c3
call sym.runtime.gcWriteBarrier2
mov rdx, qword [rsp + 0x70]
mov qword [r11], rdx
mov rsi, qword [rax]
mov qword [r11 + 8], rsi
mov qword [rsp + 0xa0], rax
mov qword [rax], rdx
mov rdx, qword [rsp + 0x178]
mov rbx, qword [rdx + 0x60]
mov rcx, qword [rdx + 0x68]
nop
mov rax, rdx
call sym.os_exec._Cmd_.writerDescriptor
test rbx, rbx
jne 0x4e585b
mov rcx, qword [rsp + 0x50]
cmp rcx, 2
jb 0x4e5405
mov rdx, qword [rsp + 0xa0]
jmp 0x4e5430
mov qword [rsp + 0x68], rax
mov rax, qword [rsp + 0xa0]
mov ebx, 2
mov edi, 1
lea rsi, [0x005d5f60]
call sym.runtime.growslice
mov rdx, rax
mov rax, qword [rsp + 0x68]
mov qword [rsp + 0x50], rcx
cmp dword [0x007c4ac0], 0
je 0x4e5450
nop
call sym.runtime.gcWriteBarrier2
mov qword [r11], rax
mov rsi, qword [rdx + 8]
mov qword [r11 + 8], rsi
mov qword [rsp + 0xa0], rdx
mov qword [rdx + 8], rax
mov rbx, rax
mov rax, qword [rsp + 0x178]
call sym.os_exec._Cmd_.childStderr
test rbx, rbx
jne 0x4e581e
mov rcx, qword [rsp + 0x50]
nop word [rax + rax]
cmp rcx, 3
jb 0x4e5490
mov rdx, qword [rsp + 0xa0]
jmp 0x4e54bb
mov qword [rsp + 0x78], rax
mov rax, qword [rsp + 0xa0]
mov ebx, 3
mov edi, 1
lea rsi, [0x005d5f60]
call sym.runtime.growslice
mov rdx, rax
mov rax, qword [rsp + 0x78]
cmp dword [0x007c4ac0], 0
je 0x4e54d4
call sym.runtime.gcWriteBarrier2
mov qword [r11], rax
mov r8, qword [rdx + 0x10]
mov qword [r11 + 8], r8
mov qword [rdx + 0x10], rax
mov r8, qword [rsp + 0x178]
mov rbx, qword [r8 + 0x88]
lea r9, [rbx + 3]
mov rdi, qword [r8 + 0x80]
cmp rcx, r9
jae 0x4e552c
mov qword [rsp + 0x60], rbx
mov qword [rsp + 0xb8], rdi
mov rax, rdx
mov rdi, rbx
lea rsi, [0x005d5f60]
mov rbx, r9
call sym.runtime.growslice
mov rdi, qword [rsp + 0xb8]
mov r9, rbx
mov rdx, rax
mov rbx, qword [rsp + 0x60]
mov qword [rsp + 0x50], rcx
mov qword [rsp + 0x48], r9
mov qword [rsp + 0xa0], rdx
lea r8, [r9 - 3]
lea r10, [rcx - 3]
neg r10
sar r10, 0x3f
and r10d, 0x18
add r10, rdx
lea rax, [0x005d5f60]
mov rsi, rbx
mov rbx, r10
mov rcx, r8
call sym.runtime.typedslicecopy
mov rax, qword [rsp + 0x178]
call sym.os_exec._Cmd_.environ
test rdi, rdi
jne 0x4e57e3
mov rdx, qword [rsp + 0x178]
mov r9, qword [rdx + 0x18]
test r9, r9
je 0x4e559a
mov r10, qword [rdx + 0x10]
mov r11, qword [rdx + 0x20]
jmp 0x4e55ce
movups xmmword [rsp + 0xd8], xmm15
mov r12, qword [rdx]
mov r13, qword [rdx + 8]
mov qword [rsp + 0xe0], r13
mov qword [rsp + 0xd8], r12
mov r11d, 1
mov r9d, 1
lea r10, [rsp + 0xd8]
movups xmmword [rsp + 0x118], xmm15
movups xmmword [rsp + 0x120], xmm15
movups xmmword [rsp + 0x130], xmm15
movups xmmword [rsp + 0x140], xmm15
movups xmmword [rsp + 0x150], xmm15
mov r12, qword [rdx + 0x40]
mov r13, qword [rdx + 0x48]
mov qword [rsp + 0x120], r13
mov qword [rsp + 0x118], r12
mov r12, qword [rsp + 0x48]
mov qword [rsp + 0x148], r12
mov r12, qword [rsp + 0x50]
mov qword [rsp + 0x150], r12
mov r12, qword [rsp + 0xa0]
mov qword [rsp + 0x140], r12
mov qword [rsp + 0x130], rbx
mov qword [rsp + 0x138], rcx
mov qword [rsp + 0x128], rax
mov r12, qword [rdx + 0x98]
mov qword [rsp + 0x158], r12
mov rax, qword [rdx]
mov rbx, qword [rdx + 8]
mov rcx, r10
mov rdi, r9
mov rsi, r11
lea r8, [rsp + 0x118]
nop dword [rax]
call sym.os.StartProcess
cmp dword [0x007c4ac0], 0
jne 0x4e5698
mov rsi, qword [rsp + 0x178]
jmp 0x4e56b3
call sym.runtime.gcWriteBarrier2
mov qword [r11], rax
mov rsi, qword [rsp + 0x178]
mov rdi, qword [rsi + 0xa0]
mov qword [r11 + 8], rdi
mov qword [rsi + 0xa0], rax
nop word [rax + rax]
test rbx, rbx
jne 0x4e57a8
mov byte [rsp + 0x46], 1
cmp qword [rsi + 0x118], 0
je 0x4e59b1
lea rax, [0x005941e0]
mov ebx, 1
call sym.runtime.makechan
cmp dword [0x007c4ac0], 0
jne 0x4e5702
mov rcx, qword [rsp + 0x178]
nop
jmp 0x4e571d
call sym.runtime.gcWriteBarrier2
mov qword [r11], rax
mov rcx, qword [rsp + 0x178]
mov rdx, qword [rcx + 0x128]
mov qword [r11 + 8], rdx
mov qword [rsp + 0x90], rax
mov qword [rcx + 0x128], rax
mov ebx, 1
lea rax, [0x005941a0]
call sym.runtime.makechan
mov qword [rsp + 0x80], rax
mov rcx, qword [rsp + 0x178]
mov rdx, qword [rcx + 0x118]
movups xmmword [rsp + 0x100], xmm15
mov qword [rsp + 0x110], 0
mov qword [rsp + 0x100], rdx
lea rbx, [rsp + 0x100]
call sym.runtime.chansend1
mov rcx, qword [rsp + 0x178]
mov rdx, qword [rcx + 0x110]
mov qword [rsp + 0xb0], rdx
mov rsi, qword [rcx + 0x118]
mov qword [rsp + 0x60], rsi
xor eax, eax
jmp 0x4e5af2
mov qword [rsp + 0xc8], rbx
mov qword [rsp + 0xd0], rcx
mov byte [rsp + 0x47], 0
mov rdx, qword [rsp + 0x160]
mov rax, qword [rdx]
call rax
mov rax, qword [rsp + 0xc8]
mov rbx, qword [rsp + 0xd0]
add rsp, 0x168
pop rbp
ret
mov qword [rsp + 0xc8], rdi
mov qword [rsp + 0xd0], rsi
mov byte [rsp + 0x47], 0
mov rdx, qword [rsp + 0x160]
mov rax, qword [rdx]
call rax
mov rax, qword [rsp + 0xc8]
mov rbx, qword [rsp + 0xd0]
add rsp, 0x168
pop rbp
ret
mov qword [rsp + 0xc8], rbx
mov qword [rsp + 0xd0], rcx
mov byte [rsp + 0x47], 0
mov rdx, qword [rsp + 0x160]
mov rax, qword [rdx]
nop
call rax
mov rax, qword [rsp + 0xc8]
mov rbx, qword [rsp + 0xd0]
add rsp, 0x168
pop rbp
ret
mov qword [rsp + 0xc8], rbx
mov qword [rsp + 0xd0], rcx
mov byte [rsp + 0x47], 0
mov rdx, qword [rsp + 0x160]
mov rax, qword [rdx]
call rax
mov rax, qword [rsp + 0xc8]
mov rbx, qword [rsp + 0xd0]
add rsp, 0x168
pop rbp
ret
mov qword [rsp + 0xc8], rbx
mov qword [rsp + 0xd0], rcx
mov byte [rsp + 0x47], 0
mov rdx, qword [rsp + 0x160]
mov rax, qword [rdx]
call rax
mov rax, qword [rsp + 0xc8]
mov rbx, qword [rsp + 0xd0]
add rsp, 0x168
pop rbp
ret
mov rcx, qword [rsp + 0x178]
mov rdx, qword [rcx + 0xb0]
mov rax, qword [rcx + 0xb8]
mov rcx, qword [rdx + 0x28]
call rcx
mov qword [rsp + 0xc8], rax
mov qword [rsp + 0xd0], rbx
mov byte [rsp + 0x47], 0
mov rdx, qword [rsp + 0x160]
mov rcx, qword [rdx]
call rcx
mov rax, qword [rsp + 0xc8]
mov rbx, qword [rsp + 0xd0]
add rsp, 0x168
pop rbp
ret
mov qword [rsp + 0xc8], rcx
mov qword [rsp + 0xd0], rdi
mov byte [rsp + 0x47], 0
mov rdx, qword [rsp + 0x160]
mov rax, qword [rdx]
call rax
mov rax, qword [rsp + 0xc8]
mov rbx, qword [rsp + 0xd0]
add rsp, 0x168
pop rbp
ret
lea rax, [0x005a9cc0]
call sym.runtime.newobject
mov qword [rax + 8], 0x15
lea rcx, [0x005e2bd0]
mov qword [rax], rcx
lea rcx, [0x006371c0]
mov qword [rsp + 0xc8], rcx
mov qword [rsp + 0xd0], rax
mov rax, qword [rsp + 0xc8]
mov rbx, qword [rsp + 0xd0]
add rsp, 0x168
pop rbp
ret
cmp qword [rsi + 0xd0], 0
jne 0x4e59c9
cmp qword [rsi + 0xd8], 0
je 0x4e5a94
mov rcx, qword [rsi + 0xb0]
test rcx, rcx
je 0x4e5a94
mov rax, qword [rsi + 0xb8]
mov rcx, qword [rcx + 0x20]
call rcx
test rax, rax
je 0x4e5a94
lea rax, [0x00594220]
xor ebx, ebx
call sym.runtime.makechan
cmp dword [0x007c4ac0], 0
jne 0x4e5a10
mov rcx, qword [rsp + 0x178]
jmp 0x4e5a2b
call sym.runtime.gcWriteBarrier2
mov qword [r11], rax
mov rcx, qword [rsp + 0x178]
mov rdx, qword [rcx + 0x130]
mov qword [r11 + 8], rdx
mov qword [rsp + 0x88], rax
mov qword [rcx + 0x130], rax
lea rax, [0x005b6a20]
call sym.runtime.newobject
lea rcx, [sym.os_exec._Cmd_.Start.func4]
mov qword [rax], rcx
cmp dword [0x007c4ac0], 0
jne 0x4e5a6b
mov rcx, qword [rsp + 0x178]
mov rdx, qword [rsp + 0x88]
jmp 0x4e5a87
call sym.runtime.gcWriteBarrier2
mov rcx, qword [rsp + 0x178]
mov qword [r11], rcx
mov rdx, qword [rsp + 0x88]
mov qword [r11 + 8], rdx
mov qword [rax + 8], rcx
mov qword [rax + 0x10], rdx
call sym.runtime.newproc
movups xmmword [rsp + 0xc8], xmm15
mov byte [rsp + 0x47], 0
mov rdx, qword [rsp + 0x160]
mov rax, qword [rdx]
call rax
mov rbx, qword [rsp + 0xd0]
mov rax, qword [rsp + 0xc8]
add rsp, 0x168
pop rbp
ret
mov qword [rax + 8], rdx
mov qword [rax + 0x10], rbx
call sym.runtime.newproc
mov rax, qword [rsp + 0x58]
inc rax
mov rcx, qword [rsp + 0x178]
mov rdx, qword [rsp + 0xb0]
mov rsi, qword [rsp + 0x60]
cmp rax, rsi
jge 0x4e5bc6
mov qword [rsp + 0x58], rax
mov rcx, qword [rdx + rax*8]
mov qword [rsp + 0x98], rcx
lea rax, [0x005b68e0]
call sym.runtime.newobject
lea rcx, [sym.os_exec._Cmd_.Start.func2]
mov qword [rax], rcx
cmp dword [0x007c4ac0], 0
jne 0x4e5b40
mov rdx, qword [rsp + 0x80]
mov rbx, qword [rsp + 0x90]
jmp 0x4e5b5c
call sym.runtime.gcWriteBarrier2
mov rdx, qword [rsp + 0x80]
mov qword [r11], rdx
mov rbx, qword [rsp + 0x90]
mov qword [r11 + 8], rbx
mov qword [rsp + 0xa8], rax
mov qword [rax + 8], rdx
mov qword [rax + 0x10], rbx
lea rax, [0x005b6ac0]
call sym.runtime.newobject
lea rcx, [sym.os_exec._Cmd_.Start.func3]
mov qword [rax], rcx
cmp dword [0x007c4ac0], 0
jne 0x4e5ba5
mov rdx, qword [rsp + 0xa8]
mov rbx, qword [rsp + 0x98]
nop dword [rax + rax]
jmp 0x4e5ac8
call sym.runtime.gcWriteBarrier2
mov rdx, qword [rsp + 0xa8]
mov qword [r11], rdx
mov rbx, qword [rsp + 0x98]
mov qword [r11 + 8], rbx
jmp 0x4e5ac8
movups xmmword [rcx + 0x118], xmm15
cmp dword [0x007c4ac0], 0
je 0x4e5be8
mov rbx, qword [rcx + 0x110]
nop
call sym.runtime.gcWriteBarrier1
mov qword [r11], rbx
mov qword [rcx + 0x110], 0
mov rsi, rcx
jmp 0x4e59b1
mov qword [rsp + 8], rax
call sym.runtime.morestack_noctxt.abi0
mov rax, qword [rsp + 8]
jmp sym.os_exec._Cmd_.Start