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

Disassembly:
cmp rsp, qword [r14 + 0x10]
jbe 0x55695e
push rbp
mov rbp, rsp
sub rsp, 0x68
movq qword [rsp + 0x60], xmm15
mov qword [rsp + 0x78], rax
mov qword [rsp + 0x80], rbx
mov dword [rsp + 0x88], ecx
mov qword [rsp + 0x90], rdi
mov byte [rsp + 0x23], 0
mov dword [rsp + 0x24], 0
mov ebx, 0x20
call sym.modernc.org_libc._TLS_.Alloc
lea rcx, [sym.modernc.org_sqlite_lib._walFindFrame.deferwrap1]
mov qword [rsp + 0x50], rcx
mov rcx, qword [rsp + 0x78]
mov qword [rsp + 0x58], rcx
lea rdx, [rsp + 0x50]
mov qword [rsp + 0x60], rdx
mov byte [rsp + 0x23], 1
mov rbx, qword [rsp + 0x80]
mov rdx, rbx
mov esi, dword [rdx + 0x58]
nop
test esi, esi
je 0x556718
movsx r8, word [rdx + 0x3c]
test r8d, r8d
jne 0x556747
movzx r8d, byte [rdx + 0x46]
test r8d, r8d
jne 0x556747
mov rax, qword [rsp + 0x90]
mov dword [rax], 0
mov dword [rsp + 0x24], 0
mov byte [rsp + 0x23], 0
mov rdx, qword [rsp + 0x60]
mov rax, qword [rdx]
call rax
mov eax, dword [rsp + 0x24]
add rsp, 0x68
pop rbp
ret
mov qword [rsp + 0x40], rax
mov dword [rsp + 0x30], esi
mov r8d, dword [rdx + 0x78]
add r8d, 0x1000
add r8, 0xfffffffffffff021
lea r9d, [rsi + 0x1000]
add r9, 0xfffffffffffff021
nop
shr r8, 0xc
mov qword [rsp + 0x48], r8
shr r9, 0xc
xor edx, edx
jmp 0x5567a9
mov r9d, dword [rsp + 0x38]
dec r9d
mov rax, qword [rsp + 0x40]
mov rcx, qword [rsp + 0x78]
mov rbx, qword [rsp + 0x80]
mov esi, dword [rsp + 0x30]
mov r8, qword [rsp + 0x48]
mov edx, dword [rsp + 0x3c]
cmp r9d, r8d
jl 0x556812
mov dword [rsp + 0x2c], edx
mov dword [rsp + 0x38], r9d
mov rdi, rax
mov rax, rcx
mov ecx, r9d
call sym.modernc.org_sqlite_lib._walHashGet
test eax, eax
jne 0x5567f5
mov ecx, dword [rsp + 0x88]
imul esi, ecx, 0x17f
nop
and esi, 0x1fff
mov eax, 0x2000
mov edx, dword [rsp + 0x2c]
jmp 0x556853
mov esi, dword [rsp + 0x3c]
test esi, esi
je 0x556782
jmp 0x556948
mov dword [rsp + 0x24], eax
mov byte [rsp + 0x23], 0
mov rdx, qword [rsp + 0x60]
mov rax, qword [rdx]
call rax
mov eax, dword [rsp + 0x24]
add rsp, 0x68
pop rbp
ret
mov rax, qword [rsp + 0x90]
mov dword [rax], edx
mov dword [rsp + 0x24], 0
mov byte [rsp + 0x23], 0
mov rdx, qword [rsp + 0x60]
mov rax, qword [rdx]
call rax
mov eax, dword [rsp + 0x24]
add rsp, 0x68
pop rbp
ret
mov ecx, dword [rsp + 0x34]
inc ecx
lea eax, [r10 - 1]
nop
and ecx, 0x1fff
mov esi, ecx
mov edx, r8d
mov dword [rsp + 0x28], eax
mov dword [rsp + 0x34], esi
mov dword [rsp + 0x3c], edx
mov rcx, qword [rsp + 0x40]
movsxd r8, esi
shl r8, 1
add r8, qword [rcx]
xor ebx, ebx
mov rax, r8
call sym.modernc.org_libc.AtomicLoadNUint16
movzx ecx, ax
nop word [rax + rax]
test ecx, ecx
je 0x5567e8
mov rdx, qword [rsp + 0x40]
mov rsi, rdx
mov r8d, dword [rdx + 0x10]
add r8d, ecx
mov r9d, dword [rsp + 0x30]
nop dword [rax]
cmp r9d, r8d
jb 0x5568d9
mov r10, qword [rsp + 0x80]
mov r11, r10
cmp dword [r10 + 0x78], r8d
ja 0x5568d0
lea r10d, [rcx - 1]
shl r10, 2
add r10, qword [rdx + 8]
mov edx, dword [rsp + 0x88]
cmp dword [r10], edx
je 0x5568ed
jmp 0x5568e8
mov edx, dword [rsp + 0x88]
jmp 0x5568e8
mov edx, dword [rsp + 0x88]
mov r11, qword [rsp + 0x80]
mov r8d, dword [rsp + 0x3c]
mov r10d, dword [rsp + 0x28]
test r10d, r10d
jne 0x55683d
mov rdx, qword [rsp + 0x90]
mov dword [rdx], 0
mov rdi, qword [0x00a30e10]
add rdi, 0x6676
mov rax, qword [rsp + 0x78]
mov ebx, 0xb
mov ecx, 0x10b75
call sym.modernc.org_sqlite_lib._sqlite3ReportError
mov dword [rsp + 0x24], eax
mov byte [rsp + 0x23], 0
mov rdx, qword [rsp + 0x60]
mov rsi, qword [rdx]
call rsi
mov eax, dword [rsp + 0x24]
add rsp, 0x68
pop rbp
ret
mov edx, esi
jmp 0x556812
mov qword [rsp + 8], rax
mov qword [rsp + 0x10], rbx
mov dword [rsp + 0x18], ecx
mov qword [rsp + 0x20], rdi
call sym.runtime.morestack_noctxt.abi0
mov rax, qword [rsp + 8]
mov rbx, qword [rsp + 0x10]
mov ecx, dword [rsp + 0x18]
mov rdi, qword [rsp + 0x20]
jmp sym.modernc.org_sqlite_lib._walFindFrame