Function at 0x140054c40
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, 0x58
mov rax, qword [rdx + 0x148]
mov r9d, dword [rdx + 0x34]
mov edi, dword [rdx + 0x38]
mov rbp, qword [rcx]
movzx r10d, word [rdx + 0x130]
add edi, r9d
mov qword [rcx + 0xb0], rax
mov eax, dword [rdx + 0x90]
mov rbx, rcx
mov r12, rdx
mov qword [rdx + 0x148], 0
mov dword [rsp + 0x4c], eax
test r9d, r9d
jne 0x140054c9d
test edi, edi
setg al
cmp al, 1
sbb edi, 0xffffffff
mov eax, dword [rbx + 0x90]
mov esi, dword [r12 + 0x3c]
lea rdx, [rsp + 0x4c]
mov rcx, rbx
mov dword [rsp + 0x38], r9d
shl eax, 5
mov dword [rsp + 0x28], r10d
sub esi, eax
movsxd r14, eax
add r14, qword [rbx + 0x88]
call sym.resolveP2Values
and esi, 0xfffffff8
xor eax, eax
cmp byte [r12 + 0x20], 0
mov r10d, dword [rsp + 0x28]
mov r9d, dword [rsp + 0x38]
movsxd rsi, esi
je 0x140054cf1
cmp byte [r12 + 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 [r12 + 0x133]
test dl, dl
je 0x140054d43
mov ecx, 0xa
cmp edi, ecx
cmovl edi, 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, edi
and byte [rbx + 0xc8], 0xfc
lea r13, [rax*8]
sub r13, rax
shl r13, 3
cmp rsi, r13
jl 0x140054f50
sub rsi, r13
xor edx, edx
lea rax, [r14 + rsi]
movsx rcx, r10w
mov qword [rbx + 0x68], rax
lea r12, [rcx*8]
sub r12, rcx
shl r12, 3
cmp r12, rsi
jg 0x140054f40
sub rsi, r12
lea rcx, [r14 + rsi]
movsxd r8, dword [rsp + 0x4c]
mov qword [rbx + 0x80], rcx
shl r8, 3
cmp r8, rsi
jg 0x140054f30
sub rsi, r8
lea r11, [r14 + rsi]
movsxd r15, r9d
mov qword [rbx + 0x70], r11
shl r15, 3
cmp r15, rsi
jg 0x140054f20
sub rsi, r15
add rsi, r14
mov qword [rbx + 0x78], rsi
test rdx, rdx
jne 0x140054e80
cmp byte [rbp + 0x67], 0
jne 0x140054ec4
mov dword [rbx + 0x28], r9d
mov word [rbx + 0x20], r10w
test r10w, r10w
jle 0x140054e2f
movsx r10d, r10w
lea rdx, [r10*8]
sub rdx, r10
lea rdx, [rcx + rdx*8]
nop dword [rax + rax]
mov r8d, 1
mov qword [rcx + 0x18], rbp
add rcx, 0x38
mov word [rcx - 0x24], r8w
mov dword [rcx - 0x18], 0
cmp rdx, rcx
jne 0x140054e10
mov dword [rbx + 0x24], edi
test edi, edi
jle 0x140054e6a
mov edi, edi
lea rdx, [rdi*8]
sub rdx, rdi
lea rdx, [rax + rdx*8]
nop word [rax + rax]
xor ecx, ecx
mov qword [rax + 0x18], rbp
add rax, 0x38
mov word [rax - 0x24], cx
mov dword [rax - 0x18], 0
cmp rdx, rax
jne 0x140054e50
mov r8, r15
xor edx, edx
mov rcx, rsi
call sym.memset
jmp 0x140054ed4
mov rcx, rbp
mov dword [rsp + 0x3c], r9d
mov qword [rsp + 0x30], r8
mov dword [rsp + 0x38], r10d
mov qword [rsp + 0x28], rdx
call sym.sqlite3DbMallocRawNN
mov rdx, qword [rsp + 0x28]
mov r10d, dword [rsp + 0x38]
mov qword [rbx + 0x100], rax
cmp byte [rbp + 0x67], 0
mov r11, rax
mov r8, qword [rsp + 0x30]
mov r9d, dword [rsp + 0x3c]
je 0x140054f60
xor r9d, r9d
mov qword [rbx + 0x24], 0
mov word [rbx + 0x20], r9w
movzx eax, word [0x140176eca]
mov byte [rbx + 0xc7], 1
mov qword [rbx + 0x34], 0
mov word [rbx + 0xc4], ax
movabs rax, 0xffffffff00000001
mov qword [rbx + 0x2c], rax
mov qword [rbx + 0x3c], 0
mov qword [rbx + 0x50], 0
add rsp, 0x58
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret
add rdx, r15
xor esi, esi
jmp 0x140054dcf
add rdx, r8
xor r11d, r11d
jmp 0x140054db5
add rdx, r12
xor ecx, ecx
jmp 0x140054d95
mov rdx, r13
xor eax, eax
jmp 0x140054d6e
mov rax, qword [rbx + 0x68]
test rax, rax
je 0x140054fa0
mov rcx, qword [rbx + 0x80]
mov qword [rbx + 0x68], rax
test rcx, rcx
je 0x140054fe0
mov rsi, qword [rbx + 0x70]
mov qword [rbx + 0x80], rcx
test rsi, rsi
je 0x140054fc8
mov qword [rbx + 0x70], rsi
mov rsi, qword [rbx + 0x78]
test rsi, rsi
je 0x140054fb0
mov qword [rbx + 0x78], rsi
jmp 0x140054de6
cmp r13, rdx
jg 0x140054f69
sub rdx, r13
lea rax, [r11 + rdx]
jmp 0x140054f69
mov r8, rdx
sub r8, r15
add r11, r8
cmp r15, rdx
cmovle rsi, r11
jmp 0x140054f96
cmp r8, rdx
jg 0x140054f89
sub rdx, r8
lea rsi, [r11 + rdx]
jmp 0x140054f89
cmp r12, rdx
jg 0x140054f79
sub rdx, r12
lea rcx, [r11 + rdx]
jmp 0x140054f79