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

Disassembly:
push r15
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x68
mov rax, qword [rdx + 0x148]
mov edi, dword [rdx + 0x34]
mov r13d, dword [rdx + 0x38]
mov rbp, qword [rcx]
movsx r12d, word [rdx + 0x130]
add r13d, edi
mov qword [rcx + 0xb0], rax
mov eax, dword [rdx + 0x90]
mov rbx, rcx
mov rsi, rdx
mov qword [rdx + 0x148], 0
mov dword [rsp + 0x3c], eax
test edi, edi
jne 0x53cade
test r13d, r13d
setg al
cmp al, 1
sbb r13d, 0xffffffff
mov eax, dword [rbx + 0x90]
mov ecx, dword [rsi + 0x3c]
lea eax, [rax + rax*2]
shl eax, 3
sub ecx, eax
movsxd rdx, eax
add rdx, qword [rbx + 0x88]
mov eax, ecx
mov qword [rsp + 0x40], rdx
mov rcx, rbx
lea rdx, [rsp + 0x3c]
and eax, 0xfffffff8
cdqe
mov qword [rsp + 0x48], rax
call dbg.resolveP2Values
xor eax, eax
cmp byte [rsi + 0x20], 0
je 0x53cb26
cmp byte [rsi + 0x21], 0
setne al
shl eax, 5
mov edx, eax
movzx eax, byte [rbx + 0xc8]
and eax, 0xffffffdf
or eax, edx
mov byte [rbx + 0xc8], al
movzx edx, byte [rsi + 0x133]
test dl, dl
je 0x53cb79
cmp r13d, 0xa
mov ecx, 0xa
cmovl r13d, ecx
and edx, 3
and eax, 0xfffffff3
lea ecx, [rdx*4]
not edx
and edx, 3
or eax, ecx
shl edx, 2
mov byte [rbx + 0xc8], al
mov word [rbx + 0xc0], dx
movsxd rax, r13d
and byte [rbx + 0xc8], 0xfc
lea rsi, [rsp + 0x40]
lea r15, [rax*8]
mov rcx, rsi
mov qword [rsp + 0x50], 0
sub r15, rax
shl r15, 3
mov rdx, r15
call sym.allocSpace.part.0
mov qword [rbx + 0x68], rax
movsx rax, r12w
lea r14, [rax*8]
sub r14, rax
lea rax, [r14*8]
mov rdx, rax
mov qword [rsp + 0x28], rax
call sym.allocSpace.part.0
movsxd rdx, dword [rsp + 0x3c]
mov qword [rbx + 0x80], rax
shl rdx, 3
call sym.allocSpace.part.0
movsxd r8, edi
mov qword [rbx + 0x70], rax
lea r14, [r8*8]
mov rdx, r14
call sym.allocSpace.part.0
mov rdx, qword [rsp + 0x50]
mov qword [rbx + 0x78], rax
test rdx, rdx
jne 0x53cd10
cmp byte [rbp + 0x67], 0
jne 0x53cd34
mov dword [rbx + 0x28], edi
mov word [rbx + 0x20], r12w
test r12w, r12w
jle 0x53cc6f
lea edx, [r12 - 1]
mov rax, qword [rbx + 0x80]
add rdx, 1
lea rcx, [rdx*8]
sub rcx, rdx
lea rdx, [rax + rcx*8]
nop dword [rax + rax]
mov r8d, 1
mov qword [rax + 0x18], rbp
add rax, 0x38
mov word [rax - 0x24], r8w
mov dword [rax - 0x18], 0
cmp rax, rdx
jne 0x53cc50
mov dword [rbx + 0x24], r13d
test r13d, r13d
jle 0x53ccb2
lea edx, [r13 - 1]
mov rax, qword [rbx + 0x68]
add rdx, 1
lea rcx, [rdx*8]
sub rcx, rdx
lea rdx, [rax + rcx*8]
nop dword [rax + rax]
xor ecx, ecx
mov qword [rax + 0x18], rbp
add rax, 0x38
mov word [rax - 0x24], cx
mov dword [rax - 0x18], 0
cmp rax, rdx
jne 0x53cc98
mov rcx, qword [rbx + 0x78]
mov r8, r14
xor edx, edx
call sym.memset
mov eax, 0xffffff02
mov byte [rbx + 0xc7], 1
mov word [rbx + 0xc4], ax
movabs rax, 0xffffffff00000001
mov qword [rbx + 0x2c], rax
mov qword [rbx + 0x34], 0
mov qword [rbx + 0x3c], 0
mov qword [rbx + 0x50], 0
add rsp, 0x68
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret
mov rcx, rbp
call sym.sqlite3DbMallocRawNN
mov qword [rbx + 0x100], rax
cmp byte [rbp + 0x67], 0
mov qword [rsp + 0x40], rax
mov rax, qword [rsp + 0x50]
mov qword [rsp + 0x48], rax
je 0x53cd50
xor r9d, r9d
mov qword [rbx + 0x24], 0
mov word [rbx + 0x20], r9w
jmp 0x53ccc0
mov rax, qword [rbx + 0x68]
test rax, rax
je 0x53cd90
mov qword [rbx + 0x68], rax
mov rax, qword [rbx + 0x80]
test rax, rax
je 0x53cdc8
mov qword [rbx + 0x80], rax
mov rax, qword [rbx + 0x70]
test rax, rax
je 0x53cdb0
mov qword [rbx + 0x70], rax
mov rax, qword [rbx + 0x78]
test rax, rax
je 0x53cda0
mov qword [rbx + 0x78], rax
jmp 0x53cc11
mov rdx, r15
mov rcx, rsi
call sym.allocSpace.part.0
jmp 0x53cd59
mov rdx, r14
mov rcx, rsi
call sym.allocSpace.part.0
jmp 0x53cd86
movsxd rdx, dword [rsp + 0x3c]
mov rcx, rsi
shl rdx, 3
call sym.allocSpace.part.0
jmp 0x53cd79
mov rdx, qword [rsp + 0x28]
mov rcx, rsi
call sym.allocSpace.part.0
jmp 0x53cd69