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

Disassembly:
mov qword [rsp + 0x20], rbx
push rbp
push rsi
push rdi
push r12
push r15
sub rsp, 0x30
mov rdi, qword [rcx]
mov r12d, r9d
lea rsi, [r8 + 8]
mov r15, r8
mov rbp, rdx
mov rbx, rcx
test r8, r8
je 0x140053eb8
cmp dword [rsi], 0
jbe 0x140053eb8
cmp byte [rdi + 0xa1], 0
je 0x140053e86
lea rdx, str.corrupt_database
call fcn.1400102a0
inc dword [rbx + 0x4c]
mov rbx, qword [rsp + 0x78]
add rsp, 0x30
pop r15
pop r12
pop rdi
pop rsi
pop rbp
ret
mov rcx, rdi
call fcn.140053ca0
test eax, eax
jns 0x140053ec2
mov r8, rbp
lea rdx, str.unknown_database__T
mov rcx, rbx
call fcn.1400102a0
inc dword [rbx + 0x4c]
mov rbx, qword [rsp + 0x78]
add rsp, 0x30
pop r15
pop r12
pop rdi
pop rsi
pop rbp
ret
movzx eax, byte [rdi + 0xa0]
mov r15, rbp
mov qword [rsp + 0x68], r13
mov r13d, 1
mov ebp, eax
test r12d, r12d
je 0x140053ef5
cmp dword [rsi], 0
jbe 0x140053ef2
cmp eax, r13d
je 0x140053ef2
lea rdx, str.temporary_table_name_must_be_unqualified
mov rcx, rbx
call fcn.1400102a0
jmp 0x1400544f0
mov ebp, r13d
movups xmm0, xmmword [r15]
mov rdx, r15
mov qword [rsp + 0x70], r14
mov rcx, rdi
movups xmmword [rbx + 0x238], xmm0
call fcn.140053970
mov r14, rax
test rax, rax
je 0x1400544eb
mov rdx, rax
mov rcx, rbx
call fcn.140053d50
test eax, eax
jne 0x1400540fe
mov rax, qword [rdi + 0x20]
lea rcx, str.sqlite_master
mov esi, r13d
lea r8, str.sqlite_temp_master
cmp byte [rdi + 0xa0], sil
mov r13d, ebp
cmovne esi, r12d
mov r12d, ebp
shl r12, 5
cmp esi, 1
cmovne r8, rcx
xor r9d, r9d
mov rax, qword [r12 + rax]
mov rcx, rbx
mov qword [rsp + 0x60], rax
mov qword [rsp + 0x20], rax
lea edx, [r9 + 0x12]
call fcn.140051eb0
test eax, eax
jne 0x1400540fe
cmp dword [rsp + 0x80], 0
mov eax, 4
je 0x140053fa5
test esi, esi
mov edx, 6
mov eax, 8
cmove edx, eax
jmp 0x140053faf
test esi, esi
mov edx, 2
cmovne edx, eax
cmp dword [rsp + 0x88], 0
jne 0x140053fd9
mov rax, qword [rsp + 0x60]
xor r9d, r9d
mov r8, r14
mov qword [rsp + 0x20], rax
mov rcx, rbx
call fcn.140051eb0
test eax, eax
jne 0x1400540fe
cmp byte [rbx + 0x1f3], 0
jne 0x1400540bc
mov rcx, qword [rbx]
mov rax, qword [rdi + 0x20]
cmp byte [rcx + 0xa1], 0
mov rsi, qword [r12 + rax]
jne 0x14005400f
lea rdx, [rbx + 8]
call fcn.1400735b0
test eax, eax
je 0x14005400f
mov dword [rbx + 0x18], eax
jmp 0x1400540fb
mov r8, rsi
mov rdx, r14
mov rcx, rdi
call fcn.1400527b0
test rax, rax
je 0x140054095
cmp dword [rsp + 0x90], 0
jne 0x140054043
mov r8, r15
lea rdx, str.table__T_already_exists
mov rcx, rbx
call fcn.1400102a0
jmp 0x1400540fe
mov rax, qword [rbx + 0x1c0]
test rax, rax
cmovne rbx, rax
mov eax, dword [rbx + 0x16c]
bt eax, ebp
jb 0x1400540fe
bts eax, ebp
mov rdx, r13
mov dword [rbx + 0x16c], eax
mov rax, qword [rbx]
shl rdx, 5
mov rax, qword [rax + 0x20]
mov rdx, qword [rax + rdx + 0x18]
mov eax, dword [rdx]
mov dword [rbx + r13*4 + 0x170], eax
cmp ebp, 1
jne 0x1400540fe
mov rcx, rbx
call fcn.14005b4f0
jmp 0x1400540fe
mov r8, rsi
mov rdx, r14
mov rcx, rdi
call fcn.1400529f0
test rax, rax
je 0x1400540bc
mov r8, r14
lea rdx, str.there_is_already_an_index_named__s
mov rcx, rbx
call fcn.1400102a0
jmp 0x1400540fe
cmp byte [rdi + 0x50], 0
jne 0x1400540f0
cmp byte [rdi + 0x14a], 0
mov ecx, 0x80
je 0x1400540df
cmp cx, word [rdi + 0x148]
jbe 0x140054125
inc dword [rdi + 0x158]
call fcn.14000cbd0
mov rsi, rax
test rax, rax
jne 0x140054165
mov byte [rdi + 0x50], 1
mov byte [rdi + 0x50], 1
mov dword [rbx + 0x18], 7
inc dword [rbx + 0x4c]
test rdi, rdi
je 0x1400544e3
cmp qword [rdi + 0x320], 0
je 0x1400544b8
mov rdx, r14
mov rcx, rdi
call fcn.14000d0c0
jmp 0x1400544eb
mov rsi, qword [rdi + 0x160]
test rsi, rsi
jne 0x140054139
inc dword [rdi + 0x15c]
jmp 0x1400540df
mov rax, qword [rsi]
mov qword [rdi + 0x160], rax
mov eax, dword [rdi + 0x14c]
inc eax
mov dword [rdi + 0x14c], eax
inc dword [rdi + 0x154]
cmp eax, dword [rdi + 0x150]
jle 0x140054165
mov dword [rdi + 0x150], eax
xorps xmm0, xmm0
mov ecx, ebp
movups xmmword [rsi], xmm0
shl rcx, 5
movups xmmword [rsi + 0x10], xmm0
movups xmmword [rsi + 0x20], xmm0
movups xmmword [rsi + 0x30], xmm0
movups xmmword [rsi + 0x40], xmm0
movups xmmword [rsi + 0x50], xmm0
movups xmmword [rsi + 0x60], xmm0
movups xmmword [rsi + 0x70], xmm0
mov qword [rsi], r14
mov word [rsi + 0x40], 0xffff
mov rax, qword [rdi + 0x20]
mov rcx, qword [rcx + rax + 0x18]
mov qword [rsi + 0x70], rcx
mov word [rsi + 0x44], 1
mov word [rsi + 0x38], 0xc8
cmp byte [rbx + 0x1e], 0
mov qword [rbx + 0x220], rsi
jne 0x1400541d7
lea rdx, str.sqlite_sequence
mov rcx, r14
call fcn.1400c1880
test eax, eax
jne 0x1400541d7
mov rax, qword [rsi + 0x70]
mov qword [rax + 0x68], rsi
cmp byte [rdi + 0xa1], 0
jne 0x1400544eb
mov rsi, qword [rbx + 0x10]
xor r15d, r15d
test rsi, rsi
jne 0x14005423b
mov rcx, rbx
call fcn.14002f9d0
mov qword [rbx + 0x10], rax
mov rsi, rax
test rax, rax
je 0x14005421c
xor r9d, r9d
mov dword [rsp + 0x20], r15d
xor r8d, r8d
mov edx, 0x99
mov rcx, rax
call fcn.14002fbb0
cmp qword [rbx + 0x1c0], r15
jne 0x140054232
mov rax, qword [rbx]
test byte [rax + 0x4c], 8
jne 0x140054232
mov byte [rbx + 0x23], 1
test rsi, rsi
je 0x1400544eb
mov rcx, qword [rbx + 0x1c0]
test rcx, rcx
je 0x14005424c
mov r14, rcx
jmp 0x140054252
mov r14, rbx
mov rcx, rbx
mov eax, dword [rcx + 0x16c]
bt eax, ebp
jb 0x14005428e
bts eax, ebp
mov r8d, ebp
mov dword [rcx + 0x16c], eax
mov rax, qword [rcx]
shl r8, 5
mov rdx, qword [rax + 0x20]
mov rax, qword [r8 + rdx + 0x18]
mov edx, ebp
mov eax, dword [rax]
mov dword [rcx + rdx*4 + 0x170], eax
cmp ebp, 1
jne 0x14005428e
call fcn.14005b4f0
mov eax, dword [r14 + 0x168]
mov r12d, dword [rsp + 0x88]
bts eax, ebp
mov dword [r14 + 0x168], eax
test r12d, r12d
je 0x1400542c4
xor r9d, r9d
mov dword [rsp + 0x20], r15d
xor r8d, r8d
mov edx, 0x90
mov rcx, rsi
call fcn.14002fbb0
mov r13d, dword [rbx + 0x54]
mov r8d, ebp
inc r13d
mov dword [rsp + 0x20], 2
mov edx, 0x33
mov dword [rbx + 0x1a0], r13d
mov rcx, rsi
lea r15d, [r13 + 1]
lea r14d, [r15 + 1]
mov dword [rbx + 0x1a4], r15d
mov r9d, r14d
mov dword [rbx + 0x54], r14d
call fcn.14002fbb0
mov eax, dword [rsi + 0x94]
bts eax, ebp
mov dword [rsi + 0x94], eax
cmp ebp, 1
je 0x14005433b
mov rax, qword [rsi]
mov edx, ebp
shl rdx, 5
mov rcx, qword [rax + 0x20]
mov rax, qword [rdx + rcx + 8]
cmp byte [rax + 0x11], 0
je 0x14005433b
mov eax, dword [rsi + 0x98]
bts eax, ebp
mov dword [rsi + 0x98], eax
xor r9d, r9d
mov dword [rsp + 0x20], 0
mov r8d, r14d
mov rcx, rsi
lea edx, [r9 + 0x2d]
call fcn.14002fbb0
test dword [rdi + 0x2c], 0x8000
mov ecx, 1
mov r8d, 4
mov dword [rsp + 0x60], eax
cmovne r8d, ecx
mov dword [rsp + 0x20], 0
mov r9d, r14d
lea edx, [rcx + 0x18]
mov rcx, rsi
call fcn.14002fbb0
mov r9d, 2
mov dword [rsp + 0x20], r14d
mov r8d, ebp
mov rcx, rsi
lea edx, [r9 + 0x32]
call fcn.14002fbb0
mov rax, qword [rdi + 0x20]
mov r9d, r14d
xor edi, edi
mov dword [rsp + 0x20], edi
mov rcx, qword [rax + 0x18]
lea edx, [rdi + 0x19]
movzx r8d, byte [rcx + 0x71]
mov rcx, rsi
call fcn.14002fbb0
lea r9d, [rdi + 5]
mov dword [rsp + 0x20], r14d
mov r8d, ebp
lea edx, [rdi + 0x34]
mov rcx, rsi
call fcn.14002fbb0
mov eax, dword [rsp + 0x60]
mov edx, dword [rsi + 0x3c]
cmp edx, eax
jbe 0x1400543ee
lea rcx, [rax + rax*2]
mov rax, qword [rsi + 8]
mov dword [rax + rcx*8 + 8], edx
mov ecx, dword [rsi + 0x3c]
mov rax, qword [rsi + 0x30]
dec ecx
mov dword [rax + 0x64], ecx
cmp dword [rsp + 0x80], edi
jne 0x140054427
test r12d, r12d
jne 0x140054427
mov r9d, r15d
mov dword [rsp + 0x20], edi
mov r8d, ebp
lea edx, [r12 + 0x79]
mov rcx, rsi
call fcn.14002fbb0
mov dword [rbx + 0x1d0], eax
jmp 0x14005443d
xor r8d, r8d
mov dword [rsp + 0x20], edi
mov r9d, r15d
mov rcx, rsi
lea edx, [r8 + 0x19]
call fcn.14002fbb0
mov edx, ebp
mov rcx, rbx
call fcn.140053ad0
xor r8d, r8d
mov dword [rsp + 0x20], edi
mov r9d, r13d
mov rcx, rsi
lea edx, [r8 + 0x4a]
call fcn.14002fbb0
xor r8d, r8d
mov dword [rsp + 0x20], edi
mov r9d, r14d
mov rcx, rsi
lea edx, [r8 + 0x1c]
call fcn.14002fbb0
xor r8d, r8d
mov dword [rsp + 0x20], r13d
mov r9d, r14d
mov rcx, rsi
lea edx, [r8 + 0x4b]
call fcn.14002fbb0
mov rcx, qword [rsi + 8]
test rcx, rcx
je 0x1400544a0
movsxd rax, dword [rsi + 0x3c]
lea rdx, [rax + rax*2]
mov byte [rcx + rdx*8 - 0x15], 8
xor r9d, r9d
mov dword [rsp + 0x20], edi
xor r8d, r8d
mov rcx, rsi
lea edx, [r9 + 0x3d]
call fcn.14002fbb0
jmp 0x1400544eb
cmp r14, qword [rdi + 0x168]
jb 0x1400544e3
cmp r14, qword [rdi + 0x170]
jae 0x1400544e3
mov rax, qword [rdi + 0x160]
mov qword [r14], rax
dec dword [rdi + 0x14c]
mov qword [rdi + 0x160], r14
jmp 0x1400544eb
mov rcx, r14
call fcn.14000d020
mov r14, qword [rsp + 0x70]
mov r13, qword [rsp + 0x68]
mov rbx, qword [rsp + 0x78]
add rsp, 0x30
pop r15
pop r12
pop rdi
pop rsi
pop rbp
ret