Function at 0x478cc0
Capabilities:
Reference sql statements

Disassembly:
lea r12, [rsp - 0x28]
cmp r12, qword [r14 + 0x10]
jbe 0x47915f
push rbp
mov rbp, rsp
sub rsp, 0xa0
mov qword [rsp + 0xb0], rax
mov qword [rsp + 0xc8], rdi
test rbx, rbx
je 0x478d4f
cmp rbx, 1
je 0x478d3c
test rsi, rsi
je 0x478d2f
lea rdx, [rbx - 1]
mov r8, rax
movabs rax, 0x7fffffffffffffff
mov r9, rdx
cmp r9, 0xffffffffffffffff
jne 0x478d1b
neg rax
xor edx, edx
jmp 0x478d20
cqo
idiv r9
cmp rax, rsi
jle 0x47914b
imul r9, rsi
jmp 0x478d35
mov r8, rax
xor r9d, r9d
mov rdx, r8
xor eax, eax
jmp 0x478d69
mov rcx, qword [rax]
mov rbx, qword [rax + 8]
mov rax, rcx
add rsp, 0xa0
pop rbp
ret
xor eax, eax
xor ebx, ebx
add rsp, 0xa0
pop rbp
ret
add r10, 0x10
inc rax
add r9, r8
mov r8, r10
cmp rbx, rax
jle 0x478d8c
mov r10, r8
mov r8, qword [r8 + 8]
movabs r11, 0x7fffffffffffffff
sub r11, r9
cmp r8, r11
jle 0x478d5c
jmp 0x479138
mov qword [rsp + 0xb8], rbx
mov qword [rsp + 0xc0], rcx
mov qword [rsp + 0xc8], rdi
mov qword [rsp + 0xd0], rsi
mov qword [rsp + 0x78], rdx
movups xmmword [rsp + 0x80], xmm15
movups xmmword [rsp + 0x90], xmm15
lea rax, [rsp + 0x80]
mov rbx, r9
call sym.strings._Builder_.Grow
mov rcx, qword [rsp + 0x80]
mov rdx, qword [rsp + 0x78]
mov rdi, qword [rdx + 8]
mov rbx, qword [rdx]
nop
test rcx, rcx
je 0x478dff
lea r8, [rsp + 0x80]
cmp rcx, r8
je 0x478e0f
jmp 0x479125
lea r8, [rsp + 0x80]
mov qword [rsp + 0x80], r8
mov rcx, qword [rsp + 0x98]
mov r8, qword [rsp + 0x90]
lea r9, [r8 + rdi]
mov rax, qword [rsp + 0x88]
cmp rcx, r9
jae 0x478e65
mov qword [rsp + 0x30], rdi
mov qword [rsp + 0x60], rbx
mov qword [rsp + 0x50], r8
mov rbx, r9
lea rsi, [0x00592de0]
call sym.runtime.growslice
mov rdx, qword [rsp + 0x78]
mov rdi, qword [rsp + 0x30]
mov r8, qword [rsp + 0x50]
mov r9, rbx
mov rbx, qword [rsp + 0x60]
mov qword [rsp + 0x50], rcx
mov qword [rsp + 0x48], r9
mov qword [rsp + 0x70], rax
mov rsi, qword [rsp + 0xc0]
dec rsi
neg rsi
sar rsi, 0x3f
and esi, 0x10
add rdx, rsi
mov qword [rsp + 0x78], rdx
lea rsi, [rax + r8]
mov rax, rsi
mov rcx, rdi
nop dword [rax + rax]
call sym.runtime.memmove
mov rdx, qword [rsp + 0x48]
mov qword [rsp + 0x90], rdx
mov rdx, qword [rsp + 0x50]
mov qword [rsp + 0x98], rdx
mov rdx, qword [rsp + 0x70]
mov qword [rsp + 0x88], rdx
mov rdx, qword [rsp + 0x78]
mov rsi, qword [rsp + 0xb8]
dec rsi
mov qword [rsp + 0x50], rsi
mov rdi, qword [rsp + 0xc8]
mov r8, qword [rsp + 0xd0]
xor eax, eax
jmp 0x478f64
mov qword [rsp + 0x40], rcx
mov qword [rsp + 0x38], rbx
mov qword [rsp + 0x70], rax
add rdx, rax
mov rax, rdx
mov rbx, qword [rsp + 0x58]
mov rcx, rdi
call sym.runtime.memmove
mov rdx, qword [rsp + 0x38]
mov qword [rsp + 0x90], rdx
mov rdx, qword [rsp + 0x40]
mov qword [rsp + 0x98], rdx
mov rdx, qword [rsp + 0x70]
mov qword [rsp + 0x88], rdx
mov rdx, qword [rsp + 0x68]
add rdx, 0x10
mov rax, qword [rsp + 0x48]
inc rax
mov rsi, qword [rsp + 0x50]
mov rdi, qword [rsp + 0xc8]
mov r8, qword [rsp + 0xd0]
cmp rax, rsi
jge 0x4790ca
mov r9, qword [rsp + 0x80]
mov r10, qword [rdx + 8]
mov r11, qword [rdx]
nop
nop
nop
test r9, r9
je 0x478f97
lea r12, [rsp + 0x80]
cmp r9, r12
je 0x478fa7
jmp 0x479110
lea r9, [rsp + 0x80]
mov qword [rsp + 0x80], r9
mov qword [rsp + 0x28], r10
mov qword [rsp + 0x48], rax
mov qword [rsp + 0x68], rdx
mov qword [rsp + 0x58], r11
mov rcx, qword [rsp + 0x98]
mov r9, qword [rsp + 0x90]
lea rbx, [r8 + r9]
mov r12, qword [rsp + 0x88]
cmp rcx, rbx
jae 0x47900b
mov qword [rsp + 0x40], r9
mov rax, r12
mov rdi, r8
lea rsi, [0x00592de0]
call sym.runtime.growslice
mov rdi, qword [rsp + 0xc8]
mov r8, qword [rsp + 0xd0]
mov r9, qword [rsp + 0x40]
mov r12, rax
mov qword [rsp + 0x40], rcx
mov qword [rsp + 0x38], rbx
mov qword [rsp + 0x70], r12
lea rax, [r12 + r9]
mov rbx, rdi
mov rcx, r8
call sym.runtime.memmove
mov rdx, qword [rsp + 0x38]
mov qword [rsp + 0x90], rdx
mov rdx, qword [rsp + 0x40]
mov qword [rsp + 0x98], rdx
mov rdx, qword [rsp + 0x70]
mov qword [rsp + 0x88], rdx
mov rdx, qword [rsp + 0x80]
nop
test rdx, rdx
je 0x479070
lea r8, [rsp + 0x80]
cmp rdx, r8
je 0x479080
jmp 0x4790fd
lea rdx, [rsp + 0x80]
mov qword [rsp + 0x80], rdx
mov rcx, qword [rsp + 0x98]
mov rdx, qword [rsp + 0x90]
mov rdi, qword [rsp + 0x28]
lea rbx, [rdx + rdi]
mov rax, qword [rsp + 0x88]
cmp rcx, rbx
jae 0x478ef5
mov qword [rsp + 0x40], rdx
lea rsi, [0x00592de0]
call sym.runtime.growslice
mov rdx, qword [rsp + 0x40]
mov rdi, qword [rsp + 0x28]
jmp 0x478ef5
mov rax, qword [rsp + 0x88]
mov rcx, rax
neg rcx
mov rbx, qword [rsp + 0x90]
cmp rbx, rcx
ja 0x4790ee
add rsp, 0xa0
pop rbp
ret
test rax, rax
je 0x4790f8
call sym.runtime.panicunsafestringlen
call sym.runtime.panicunsafestringnilptr
lea rax, [0x00592aa0]
lea rbx, [0x006367b8]
call sym.runtime.gopanic
lea rax, [0x00592aa0]
lea rbx, [0x006367b8]
nop
call sym.runtime.gopanic
lea rax, [0x00592aa0]
lea rbx, [0x006367b8]
call sym.runtime.gopanic
lea rax, [0x00592aa0]
lea rbx, [0x00636a78]
call sym.runtime.gopanic
lea rax, [0x00592aa0]
lea rbx, [0x00636a78]
call sym.runtime.gopanic
nop
mov qword [rsp + 8], rax
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rcx
mov qword [rsp + 0x20], rdi
mov qword [rsp + 0x28], rsi
call sym.runtime.morestack_noctxt.abi0
mov rax, qword [rsp + 8]
mov rbx, qword [rsp + 0x10]
mov rcx, qword [rsp + 0x18]
mov rdi, qword [rsp + 0x20]
mov rsi, qword [rsp + 0x28]
jmp sym.strings.Join