Function at 0x140294570
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push r13
push r12
sub rsp, 0x78
mov qword [rsp + 0x40], 0
mov r12, rcx
lea r13, [rsp + 0x40]
mov qword [rsp + 0x48], 0
mov qword [rsp + 0x50], 0
mov qword [rsp + 0x58], 0
mov qword [rsp + 0x60], 0
mov qword [rsp + 0x68], 0
test edx, edx
je 0x140294890
mov r9, r13
call sym.isDate.part.0
test eax, eax
jne 0x14029487f
cmp byte [rsp + 0x6b], 0
jne 0x1402948e0
cmp byte [rsp + 0x68], 0
jne 0x1402945e8
mov rcx, r13
call sym.computeJD.part.0
mov rax, qword [rsp + 0x40]
pxor xmm0, xmm0
mov byte [rsp + 0x69], 0
movabs rdx, 0x636ba875fd33dc87
mov byte [rsp + 0x6b], 1
lea rcx, [rax + 0x2932e00]
mov rax, rcx
imul rdx
mov rax, rcx
sar rax, 0x3f
sar rdx, 0x19
sub rdx, rax
imul rdx, rdx, 0x5265c00
sub rcx, rdx
movsxd rdx, ecx
mov eax, ecx
imul rdx, rdx, 0x45e7b273
sar eax, 0x1f
sar rdx, 0x2e
sub edx, eax
imul eax, edx, 0xea60
mov r8d, edx
sar r8d, 0x1f
sub ecx, eax
movsxd rax, edx
imul rax, rax, 0xffffffff88888889
cvtsi2sd xmm0, ecx
divsd xmm0, qword [0x14033d628]
movsd qword [rsp + 0x60], xmm0
shr rax, 0x20
add eax, edx
sar eax, 5
mov ecx, eax
sub eax, r8d
sub ecx, r8d
mov dword [rsp + 0x54], eax
imul r9d, ecx, 0x3c
mov ecx, edx
sub ecx, r9d
mov dword [rsp + 0x58], ecx
movsxd rdx, eax
mov r8d, eax
mov byte [rsp + 0x32], 0x3a
imul rdx, rdx, 0x66666667
sar r8d, 0x1f
mov byte [rsp + 0x35], 0x3a
sar rdx, 0x22
sub edx, r8d
movsxd r8, edx
mov r9d, edx
imul r8, r8, 0x66666667
sar r9d, 0x1f
sar r8, 0x22
sub r8d, r9d
lea r9d, [r8 + r8*4]
mov r8d, edx
lea edx, [rdx + rdx*4]
add edx, edx
add r9d, r9d
sub eax, edx
mov edx, ecx
sub r8d, r9d
add eax, 0x30
sar edx, 0x1f
add r8d, 0x30
mov byte [rsp + 0x31], al
movsxd rax, ecx
imul rax, rax, 0x66666667
mov byte [rsp + 0x30], r8b
sar rax, 0x22
sub eax, edx
movsxd rdx, eax
mov r8d, eax
imul rdx, rdx, 0x66666667
sar r8d, 0x1f
sar rdx, 0x22
sub edx, r8d
lea r8d, [rdx + rdx*4]
mov edx, eax
lea eax, [rax + rax*4]
add r8d, r8d
add eax, eax
sub edx, r8d
sub ecx, eax
add edx, 0x30
add ecx, 0x30
cmp byte [rsp + 0x6f], 0
mov byte [rsp + 0x33], dl
mov byte [rsp + 0x34], cl
je 0x1402948f8
mulsd xmm0, qword [0x14033d628]
mov byte [rsp + 0x38], 0x2e
addsd xmm0, qword [0x14033d630]
mov byte [rsp + 0x3c], 0
cvttsd2si ecx, xmm0
movsxd rax, ecx
mov r8d, ecx
imul rdx, rax, 0x68db8bad
sar r8d, 0x1f
sar rdx, 0x2c
sub edx, r8d
movsxd r9, edx
mov r10d, edx
imul r9, r9, 0x66666667
sar r10d, 0x1f
sar r9, 0x22
sub r9d, r10d
lea r9d, [r9 + r9*4]
add r9d, r9d
sub edx, r9d
add edx, 0x30
mov byte [rsp + 0x36], dl
imul rdx, rax, 0x10624dd3
sar rdx, 0x26
sub edx, r8d
movsxd r9, edx
mov r10d, edx
imul r9, r9, 0x66666667
sar r10d, 0x1f
sar r9, 0x22
sub r9d, r10d
lea r9d, [r9 + r9*4]
add r9d, r9d
sub edx, r9d
add edx, 0x30
mov byte [rsp + 0x37], dl
imul rdx, rax, 0x51eb851f
imul rax, rax, 0x66666667
sar rdx, 0x25
sub edx, r8d
movsxd r9, edx
mov r10d, edx
imul r9, r9, 0x66666667
sar r10d, 0x1f
sar r9, 0x22
sub r9d, r10d
lea r9d, [r9 + r9*4]
add r9d, r9d
sub edx, r9d
add edx, 0x30
sar rax, 0x22
sub eax, r8d
mov byte [rsp + 0x39], dl
movsxd rdx, eax
mov r8d, eax
imul rdx, rdx, 0x66666667
sar r8d, 0x1f
sar rdx, 0x22
sub edx, r8d
lea r8d, [rdx + rdx*4]
mov edx, eax
lea eax, [rax + rax*4]
add r8d, r8d
add eax, eax
sub edx, r8d
sub ecx, eax
mov r8d, 0xc
add edx, 0x30
add ecx, 0x30
mov byte [rsp + 0x3a], dl
mov byte [rsp + 0x3b], cl
test r12, r12
je 0x14029487f
lea rdx, [rsp + 0x30]
mov r9d, 1
mov rcx, r12
mov qword [rsp + 0x20], 0xffffffffffffffff
call sym.setResultStrOrError
nop
add rsp, 0x78
pop r12
pop r13
ret
mov rdx, qword [rcx + 0x18]
test rdx, rdx
je 0x1402948b5
movsxd rax, dword [rcx + 0x20]
lea rcx, [rax + rax*2]
mov rax, qword [rdx + 0x88]
lea rax, [rax + rcx*8]
cmp byte [rax], 0x41
je 0x140294960
mov rcx, qword [r12]
call sym.sqlite3StmtCurrentTime.isra.0
mov qword [rsp + 0x40], rax
test rax, rax
jle 0x14029487f
cmp byte [rsp + 0x6b], 0
mov byte [rsp + 0x68], 1
je 0x1402945e8
nop dword [rax + rax]
mov eax, dword [rsp + 0x54]
mov ecx, dword [rsp + 0x58]
movsd xmm0, qword [rsp + 0x60]
jmp 0x14029468c
cvttsd2si ecx, xmm0
mov byte [rsp + 0x38], 0
movsxd rax, ecx
mov edx, ecx
imul rax, rax, 0x66666667
sar edx, 0x1f
sar rax, 0x22
sub eax, edx
movsxd rdx, eax
mov r8d, eax
imul rdx, rdx, 0x66666667
sar r8d, 0x1f
sar rdx, 0x22
sub edx, r8d
lea r8d, [rdx + rdx*4]
mov edx, eax
add r8d, r8d
sub edx, r8d
mov r8d, 8
add edx, 0x30
mov byte [rsp + 0x36], dl
lea edx, [rax + rax*4]
mov eax, ecx
add edx, edx
sub eax, edx
add eax, 0x30
mov byte [rsp + 0x37], al
jmp 0x14029485d
movzx eax, word [rax + 2]
lea r8, str.a_CHECK_constraint
test al, 4
je 0x1402949c8
mov rax, qword [r12 + 8]
lea rcx, str.non_deterministic_use_of__s___in__s
mov rdx, qword [rax + 0x38]
call sym.sqlite3_mprintf
mov rcx, qword [r12]
mov dword [r12 + 0x24], 1
mov r9d, 1
mov qword [rsp + 0x20], 0xffffffffffffffff
mov r13, rax
mov r8, 0xffffffffffffffff
mov rdx, rax
call sym.sqlite3VdbeMemSetStr
mov rcx, r13
call sym.sqlite3_free
nop
add rsp, 0x78
pop r12
pop r13
ret
test al, 8
lea r8, str.a_generated_column
lea rax, str.an_index
cmove r8, rax
jmp 0x14029496f