Function at 0x7eaa10
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, 0x208
mov rax, qword [rsp + 0x280]
mov r15d, dword [rsp + 0x278]
mov rdi, rcx
mov rcx, qword [rcx + 0x18]
mov qword [rax], 0
xor eax, eax
test r15d, r15d
mov qword [rsp + 0x258], rdx
mov rsi, r9
setne al
mov qword [rsp + 0x260], r8
mov qword [rsp + 0x58], 0
test rcx, rcx
mov dword [rsp + 0x4c], eax
je 0x7eaa74
call qword [0x008413e0]
lea rbx, [0x00b5b440]
mov edx, 0x38
mov rcx, rdi
call fcn.007549c0
lea r12, str.foreign_key
mov dword [rsp + 0x38], 0
mov r13, rax
mov dword [rsp + 0x48], 0
lea rax, [rsp + 0x60]
mov qword [rsp + 0x30], rax
mov rcx, qword [rsp + 0x30]
mov rdx, rdi
call fcn.0075d5b0
test r13, r13
je 0x7eb0a0
mov rdx, qword [rsp + 0x58]
test rdx, rdx
je 0x7eaad4
mov rcx, rdi
call fcn.00741080
mov qword [rsp + 0x58], 0
cmp byte [rdi + 0x6f], 0
je 0x7eaf70
mov r9, qword [rsp + 0x258]
xor edx, edx
mov r8, qword [rsp + 0x260]
mov rcx, qword [rsp + 0x30]
call fcn.007c7a90
test rax, rax
mov rbp, rax
je 0x7eaf96
movzx eax, byte [rax + 0x3f]
cmp al, 1
je 0x7eafe0
test byte [rbp + 0x30], 0x80
jne 0x7eaf7d
cmp al, 2
je 0x7eb0be
mov rdx, qword [rbp + 0x60]
mov qword [r13 + 0x30], rbp
mov r8, qword [rdi + 0x20]
test rdx, rdx
je 0x7eb081
mov rcx, rdi
call fcn.007471b0
cdqe
shl rax, 5
movsx r11d, word [rbp + 0x36]
mov rax, qword [r8 + rax]
test r11d, r11d
mov qword [r13 + 0x28], rax
jle 0x7eade4
mov r9, qword [rbp + 8]
xor r15d, r15d
nop dword [rax]
mov r8, qword [r9]
xor ecx, ecx
jmp 0x7eab91
movzx edx, byte [rbx + rdx]
cmp byte [rbx + rax], dl
jne 0x7ead00
add rcx, 1
movzx eax, byte [r8 + rcx]
movzx edx, byte [rsi + rcx]
cmp eax, edx
jne 0x7eab80
test eax, eax
jne 0x7eab8d
mov r14d, dword [rsp + 0x278]
test r14d, r14d
jne 0x7eadfe
mov rcx, qword [rsp + 0x30]
call fcn.0075b230
test rax, rax
mov r14, rax
mov qword [r13 + 0x18], rax
je 0x7eac91
mov r8, qword [rbp + 0x60]
test r8, r8
je 0x7eb0e3
mov rcx, rdi
mov rdx, r8
call fcn.007471b0
mov ecx, eax
mov dword [rsp + 0x3c], eax
mov eax, 1
shl eax, cl
mov dword [rsp + 0x40], eax
mov eax, dword [r8 + 4]
mov edx, 2
mov rcx, r14
mov r9d, dword [rsp + 0x4c]
mov dword [rsp + 0x28], eax
mov eax, dword [r8]
mov r8d, dword [rsp + 0x3c]
mov dword [rsp + 0x20], eax
call fcn.0075aa20
movsxd rax, dword [r14 + 0x90]
test eax, eax
jle 0x7eac41
mov r10, qword [r14 + 0x88]
lea rax, [rax + rax*2]
mov r11d, 1
lea rax, [r10 + rax*8]
mov word [rax - 0x16], r11w
lea r8, [0x00b537f0]
mov edx, 6
mov rcx, r14
call fcn.0075c820
movsxd rdx, dword [rsp + 0x3c]
mov r10d, dword [rsp + 0x40]
or dword [r14 + 0xcc], r10d
cmp edx, 1
je 0x7eac87
mov rcx, qword [r14]
shl rdx, 5
add rdx, qword [rcx + 0x20]
mov rdx, qword [rdx + 8]
cmp byte [rdx + 0x11], 0
je 0x7eac87
or dword [r14 + 0xd0], r10d
cmp byte [rdi + 0x67], 0
je 0x7eaea0
mov word [r13 + 8], r15w
mov qword [r13 + 0x20], rdi
cmp byte [rdi + 0x6f], 0
je 0x7eaf49
cmp byte [rdi + 0x67], 0
jne 0x7eaf5b
mov rdx, qword [rsp + 0x270]
lea r8, [rsp + 0x58]
mov rcx, r13
call fcn.007ea870
add dword [rsp + 0x48], 1
cmp eax, 0x11
mov dword [rsp + 0x38], eax
mov ecx, dword [rsp + 0x48]
setne al
cmp ecx, 0x32
sete dl
or al, dl
jne 0x7eb053
mov rcx, qword [rsp + 0x30]
call fcn.0074c510
mov dword [rsp + 0x38], 0x11
jmp 0x7eaaac
add r15d, 1
add r9, 0x18
cmp r11d, r15d
jne 0x7eab70
mov rdx, qword [rsp + 0x58]
test rdx, rdx
je 0x7ead23
mov rcx, rdi
call fcn.00741080
lea rdx, str.no_such_column:___s_
mov r8, rsi
mov rcx, rdi
call fcn.007614c0
mov qword [rsp + 0x58], rax
cmp byte [rdi + 0x6f], 0
je 0x7eafd3
mov ebp, 1
mov dword [rsp + 0x38], 1
mov rcx, qword [r13 + 0x18]
test rcx, rcx
je 0x7ead5f
call fcn.0079b730
mov rdx, r13
mov rcx, rdi
call fcn.00741080
mov r9, qword [rsp + 0x58]
mov eax, 0
mov rcx, rdi
mov edx, dword [rsp + 0x38]
lea r8, [0x00b4affa]
test r9, r9
cmove r8, rax
call fcn.007689d0
mov rdx, qword [rsp + 0x58]
test rdx, rdx
je 0x7eada0
mov rcx, rdi
call fcn.00741080
mov rcx, qword [rsp + 0x30]
call fcn.0074c510
cmp byte [rdi + 0x67], 0
jne 0x7eb040
xor ebx, ebx
test bpl, bpl
jne 0x7eb040
mov rcx, qword [rdi + 0x18]
test rcx, rcx
je 0x7eadce
call qword [0x008413f0]
mov eax, ebx
add rsp, 0x208
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret
je 0x7ead11
mov r14d, dword [rsp + 0x278]
xor r15d, r15d
test r14d, r14d
je 0x7eabb3
test byte [rdi + 0x31], 0x40
mov r9, qword [rbp + 0x10]
jne 0x7eaffb
xor r14d, r14d
test r9, r9
je 0x7eabb3
nop dword [rax + rax]
movzx eax, word [r9 + 0x5e]
test ax, ax
je 0x7eae69
mov rdx, qword [r9 + 8]
lea ecx, [rax - 1]
lea rax, [rdx + 2]
lea r8, [rax + rcx*2]
jmp 0x7eae4c
cmp r8, rax
mov rdx, rax
je 0x7eae69
add rax, 2
movsx ecx, word [rdx]
cmp ecx, r15d
je 0x7eae5a
cmp cx, 0xfffe
jne 0x7eae40
lea r14, str.indexed
cmp r8, rax
mov rdx, rax
jne 0x7eae48
mov r9, qword [r9 + 0x28]
test r9, r9
jne 0x7eae20
test r14, r14
je 0x7eabb3
mov rdx, qword [rsp + 0x58]
test rdx, rdx
je 0x7eae8d
mov rcx, rdi
call fcn.00741080
lea rdx, str.cannot_open__s_column_for_writing
mov r8, r14
jmp 0x7ead2d
mov ecx, dword [rsp + 0x3c]
xor r9d, r9d
mov qword [rsp + 0x40], rax
mov edx, dword [rbp + 0x28]
mov r8, qword [rbp]
mov dword [rax + 4], ecx
mov ecx, dword [rsp + 0x4c]
mov dword [rax + 8], edx
mov edx, 2
mov dword [rax + 0xc], ecx
mov rcx, r14
call fcn.00755920
cmp byte [rdi + 0x67], 0
jne 0x7eac91
mov r9d, dword [rsp + 0x278]
mov rax, qword [rsp + 0x40]
test r9d, r9d
je 0x7eaeed
mov byte [rax + 0x18], 0x71
mov edx, dword [rbp + 0x28]
mov byte [rax + 0x19], 0xfd
xor r8d, r8d
mov ecx, dword [rsp + 0x3c]
mov dword [rax + 0x20], edx
movsx edx, word [rbp + 0x36]
mov dword [rax + 0x24], ecx
mov dword [rax + 0x50], edx
lea ecx, [rdx + 1]
mov rdx, qword [rsp + 0x30]
mov dword [rax + 0x28], ecx
mov rcx, r14
movabs rax, 0x100000001
mov word [rsp + 0x180], r8w
mov qword [rsp + 0x94], rax
call fcn.0076f570
mov word [r13 + 8], r15w
mov qword [r13 + 0x20], rdi
cmp byte [rdi + 0x6f], 0
jne 0x7eaca4
mov rcx, rdi
call fcn.00744910
cmp byte [rdi + 0x67], 0
je 0x7eacae
mov ecx, dword [rsp + 0x38]
test ecx, ecx
setne bpl
jmp 0x7ead51
mov rcx, rdi
call fcn.00744890
jmp 0x7eaae7
mov r8, qword [rsp + 0x260]
lea rdx, str.cannot_open_table_without_rowid:__s
mov rcx, qword [rsp + 0x30]
call fcn.00754600
mov rax, qword [rsp + 0x68]
test rax, rax
je 0x7ead3a
mov rdx, qword [rsp + 0x58]
test rdx, rdx
je 0x7eafbb
mov rcx, rdi
call fcn.00741080
mov rax, qword [rsp + 0x68]
cmp byte [rdi + 0x6f], 0
mov qword [rsp + 0x58], rax
mov qword [rsp + 0x68], 0
jne 0x7ead44
mov rcx, rdi
call fcn.00744910
jmp 0x7ead44
mov r8, qword [rsp + 0x260]
lea rdx, str.cannot_open_virtual_table:__s
mov rcx, qword [rsp + 0x30]
call fcn.00754600
jmp 0x7eaf96
mov rcx, qword [rbp + 0x48]
xor r14d, r14d
test rcx, rcx
je 0x7eb08d
mov edx, dword [rcx + 0x28]
test edx, edx
jle 0x7eb032
lea rax, [rcx + 0x40]
sub edx, 1
shl rdx, 4
lea rdx, [rcx + rdx + 0x50]
cmp dword [rax], r15d
cmove r14, r12
add rax, 0x10
cmp rdx, rax
jne 0x7eb022
mov rcx, qword [rcx + 8]
test rcx, rcx
jne 0x7eb00b
jmp 0x7eae6d
mov edx, dword [rsp + 0x38]
mov rcx, rdi
call fcn.0074bd40
mov ebx, eax
jmp 0x7eadbf
mov edx, dword [rsp + 0x38]
mov ebp, eax
test edx, edx
jne 0x7ead51
cmp byte [rdi + 0x67], 0
jne 0x7eb0dc
mov rax, qword [rsp + 0x280]
xor ebp, ebp
mov dword [rsp + 0x38], 0
mov qword [rax], r13
jmp 0x7ead6a
mov rax, 0xfffffffffff00000
jmp 0x7eab50
test r9, r9
jne 0x7eae20
jmp 0x7eabb3
mov eax, dword [rsp + 0x38]
mov ebp, 1
test eax, eax
jne 0x7ead6a
cmp byte [rdi + 0x67], 0
je 0x7eb067
xor ebp, ebp
jmp 0x7ead6a
mov r8, qword [rsp + 0x260]
lea rdx, str.cannot_open_view:__s
mov rcx, qword [rsp + 0x30]
call fcn.00754600
jmp 0x7eaf96
xor ebp, ebp
jmp 0x7ead51
mov dword [rsp + 0x40], 0
mov dword [rsp + 0x3c], 0xffff8000
jmp 0x7eabf6