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

Disassembly:
push r13
push r12
sub rsp, 0x88
mov rdx, qword [rcx + 0x18]
mov qword [rsp + 0x50], 0
mov r12, rcx
mov qword [rsp + 0x58], 0
mov qword [rsp + 0x60], 0
mov qword [rsp + 0x68], 0
mov qword [rsp + 0x70], 0
mov qword [rsp + 0x78], 0
test rdx, rdx
je 0x140162d39
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 0x1401631d0
mov rcx, qword [r12]
call sym.sqlite3StmtCurrentTime.isra.0
mov qword [rsp + 0x50], rax
test rax, rax
jle 0x14016319a
cmp byte [rsp + 0x7a], 0
mov byte [rsp + 0x78], 1
jne 0x1401631b0
lea rcx, [rsp + 0x50]
call sym.computeYMD.part.0
cmp byte [rsp + 0x7b], 0
jne 0x1401631bb
cmp byte [rsp + 0x78], 0
jne 0x140162d81
call sym.computeJD.part.0
mov rax, qword [rsp + 0x50]
pxor xmm0, xmm0
mov byte [rsp + 0x79], 0
movabs rdx, 0x636ba875fd33dc87
mov byte [rsp + 0x7b], 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 + 0x70], xmm0
shr rax, 0x20
add eax, edx
sar eax, 5
mov ecx, eax
sub eax, r8d
sub ecx, r8d
mov dword [rsp + 0x64], eax
imul r9d, ecx, 0x3c
mov ecx, edx
sub ecx, r9d
mov dword [rsp + 0x68], ecx
mov r8d, dword [rsp + 0x58]
mov r11d, 0xcccccccd
mov byte [rsp + 0x35], 0x2d
mov byte [rsp + 0x38], 0x2d
mov edx, r8d
mov byte [rsp + 0x3b], 0x20
sar edx, 0x1f
mov byte [rsp + 0x3e], 0x3a
mov r9d, edx
mov byte [rsp + 0x41], 0x3a
xor r9d, r8d
sub r9d, edx
mov edx, r9d
imul r10, rdx, 0x10624dd3
shr r10, 0x26
mov r13d, r10d
imul r13, r11
shr r13, 0x23
lea r13d, [r13 + r13*4]
add r13d, r13d
sub r10d, r13d
add r10d, 0x30
mov byte [rsp + 0x31], r10b
imul r10, rdx, 0x51eb851f
imul rdx, r11
shr r10, 0x25
mov r13d, r10d
shr rdx, 0x23
imul r13, r11
shr r13, 0x23
lea r13d, [r13 + r13*4]
add r13d, r13d
sub r10d, r13d
add r10d, 0x30
mov byte [rsp + 0x32], r10b
mov r10d, edx
imul r11, r10
mov r10d, edx
lea edx, [rdx + rdx*4]
add edx, edx
sub r9d, edx
shr r11, 0x23
add r9d, 0x30
lea r11d, [r11 + r11*4]
mov byte [rsp + 0x34], r9b
movsxd r9, dword [rsp + 0x5c]
add r11d, r11d
sub r10d, r11d
add r10d, 0x30
mov byte [rsp + 0x33], r10b
mov r10, r9
imul r9, r9, 0x66666667
mov r11d, r10d
sar r11d, 0x1f
sar r9, 0x22
mov edx, r9d
sub edx, r11d
movsxd r9, edx
mov r11d, edx
imul r9, r9, 0x66666667
sar r9, 0x22
sar r11d, 0x1f
sub r9d, r11d
lea r11d, [r9 + r9*4]
mov r9d, edx
add r11d, r11d
sub r9d, r11d
add r9d, 0x30
mov byte [rsp + 0x36], r9b
lea r9d, [rdx + rdx*4]
mov edx, r10d
add r9d, r9d
sub edx, r9d
movsxd r9, dword [rsp + 0x60]
add edx, 0x30
mov r10, r9
imul r9, r9, 0x66666667
mov byte [rsp + 0x37], dl
mov r11d, r10d
sar r11d, 0x1f
sar r9, 0x22
mov edx, r9d
sub edx, r11d
movsxd r9, edx
mov r11d, edx
imul r9, r9, 0x66666667
sar r11d, 0x1f
sar r9, 0x22
sub r9d, r11d
lea r11d, [r9 + r9*4]
mov r9d, edx
add r11d, r11d
sub r9d, r11d
add r9d, 0x30
mov byte [rsp + 0x39], r9b
lea r9d, [rdx + rdx*4]
mov edx, r10d
add r9d, r9d
sub edx, r9d
mov r9d, eax
add edx, 0x30
sar r9d, 0x1f
mov byte [rsp + 0x3a], dl
movsxd rdx, eax
imul rdx, rdx, 0x66666667
sar rdx, 0x22
sub edx, r9d
movsxd r9, edx
mov r10d, edx
imul r9, r9, 0x66666667
sar r10d, 0x1f
sar r9, 0x22
sub r9d, r10d
lea r10d, [r9 + r9*4]
mov r9d, edx
lea edx, [rdx + rdx*4]
add r10d, r10d
sub r9d, r10d
add edx, edx
sub eax, edx
mov edx, ecx
add r9d, 0x30
add eax, 0x30
sar edx, 0x1f
mov byte [rsp + 0x3c], r9b
mov byte [rsp + 0x3d], al
movsxd rax, ecx
imul rax, rax, 0x66666667
sar rax, 0x22
sub eax, edx
movsxd rdx, eax
mov r9d, eax
imul rdx, rdx, 0x66666667
sar r9d, 0x1f
sar rdx, 0x22
sub edx, r9d
lea r9d, [rdx + rdx*4]
mov edx, eax
lea eax, [rax + rax*4]
add r9d, r9d
add eax, eax
sub edx, r9d
sub ecx, eax
add edx, 0x30
add ecx, 0x30
cmp byte [rsp + 0x7f], 0
mov byte [rsp + 0x3f], dl
mov byte [rsp + 0x40], cl
je 0x140163250
mulsd xmm0, qword [0x14033d628]
mov byte [rsp + 0x44], 0x2e
addsd xmm0, qword [0x14033d630]
mov byte [rsp + 0x48], 0
cvttsd2si ecx, xmm0
movsxd rax, ecx
mov r9d, ecx
imul rdx, rax, 0x68db8bad
sar r9d, 0x1f
sar rdx, 0x2c
sub edx, r9d
movsxd r10, edx
mov r11d, edx
imul r10, r10, 0x66666667
sar r11d, 0x1f
sar r10, 0x22
sub r10d, r11d
lea r10d, [r10 + r10*4]
add r10d, r10d
sub edx, r10d
add edx, 0x30
mov byte [rsp + 0x42], dl
imul rdx, rax, 0x10624dd3
sar rdx, 0x26
sub edx, r9d
movsxd r10, edx
mov r11d, edx
imul r10, r10, 0x66666667
sar r11d, 0x1f
sar r10, 0x22
sub r10d, r11d
lea r10d, [r10 + r10*4]
add r10d, r10d
sub edx, r10d
add edx, 0x30
mov byte [rsp + 0x43], dl
imul rdx, rax, 0x51eb851f
imul rax, rax, 0x66666667
sar rdx, 0x25
sub edx, r9d
movsxd r10, edx
mov r11d, edx
imul r10, r10, 0x66666667
sar r11d, 0x1f
sar r10, 0x22
sub r10d, r11d
lea r10d, [r10 + r10*4]
add r10d, r10d
sub edx, r10d
add edx, 0x30
sar rax, 0x22
sub eax, r9d
mov byte [rsp + 0x45], dl
movsxd rdx, eax
mov r9d, eax
imul rdx, rdx, 0x66666667
sar r9d, 0x1f
sar rdx, 0x22
sub edx, r9d
lea r9d, [rdx + rdx*4]
mov edx, eax
lea eax, [rax + rax*4]
add r9d, r9d
add eax, eax
sub edx, r9d
sub ecx, eax
add edx, 0x30
add ecx, 0x30
mov byte [rsp + 0x46], dl
mov byte [rsp + 0x47], cl
test r8d, r8d
js 0x1401632f0
mov r8d, 0x17
lea rdx, [rsp + 0x31]
mov r9d, 1
mov rcx, r12
mov qword [rsp + 0x20], 0xffffffffffffffff
call sym.setResultStrOrError
nop
add rsp, 0x88
pop r12
pop r13
ret
cmp byte [rsp + 0x7b], 0
je 0x140162d81
mov eax, dword [rsp + 0x64]
mov ecx, dword [rsp + 0x68]
movsd xmm0, qword [rsp + 0x70]
jmp 0x140162e25
movzx eax, word [rax + 2]
lea r8, str.a_CHECK_constraint
test al, 4
jne 0x1401631f3
test al, 8
lea r8, str.a_generated_column
lea rax, str.an_index
cmove r8, rax
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, 0x88
pop r12
pop r13
ret
cvttsd2si ecx, xmm0
mov byte [rsp + 0x44], 0
movsxd rax, ecx
mov edx, ecx
imul rax, rax, 0x66666667
sar edx, 0x1f
sar rax, 0x22
sub eax, edx
movsxd rdx, eax
mov r9d, eax
imul rdx, rdx, 0x66666667
sar r9d, 0x1f
sar rdx, 0x22
sub edx, r9d
lea r9d, [rdx + rdx*4]
mov edx, eax
add r9d, r9d
sub edx, r9d
add edx, 0x30
mov byte [rsp + 0x42], dl
lea edx, [rax + rax*4]
mov eax, ecx
add edx, edx
sub eax, edx
add eax, 0x30
mov byte [rsp + 0x43], al
test r8d, r8d
jns 0x1401632e0
mov byte [rsp + 0x30], 0x2d
mov r8d, 0x14
lea rdx, [rsp + 0x30]
mov r9d, 1
mov rcx, r12
mov qword [rsp + 0x20], 0xffffffffffffffff
call sym.setResultStrOrError
jmp 0x14016319a
mov r8d, 0x13
jmp 0x14016317d
mov byte [rsp + 0x30], 0x2d
mov r8d, 0x18
jmp 0x1401632b9