Function at 0x62c870
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 r11d, dword [rsp + 0x278]
mov qword [rax], 0
xor eax, eax
test r11d, r11d
setne al
mov rbp, rcx
mov rcx, qword [rcx + 0x18]
mov dword [rsp + 0x4c], eax
mov rsi, r9
mov qword [rsp + 0x258], rdx
mov qword [rsp + 0x260], r8
mov qword [rsp + 0x58], 0
test rcx, rcx
je 0x62c8d4
call qword [0x0065d360]
mov edx, 0x38
mov rcx, rbp
lea r13, [rsp + 0x60]
call fcn.005941a0
mov dword [rsp + 0x3c], 0
lea rbx, [0x0082fba0]
mov dword [rsp + 0x38], 0
mov r12, rax
mov ecx, 0x34
xor eax, eax
mov rdi, r13
rep stosq qword [rdi], rax
test r12, r12
je 0x62cef6
mov rdx, qword [rsp + 0x58]
mov qword [rsp + 0x60], rbp
test rdx, rdx
je 0x62c92d
mov rcx, rbp
call fcn.00592290
mov qword [rsp + 0x58], 0
cmp byte [rbp + 0x69], 0
je 0x62cda8
mov r9, qword [rsp + 0x258]
mov r8, qword [rsp + 0x260]
xor edx, edx
mov rcx, r13
call fcn.0060c8d0
mov rdi, rax
test rax, rax
je 0x62cde7
mov r15d, dword [rax + 0x54]
test r15d, r15d
jne 0x62cdd0
mov eax, dword [rax + 0x40]
and eax, 0x80
mov dword [rsp + 0x40], eax
jne 0x62ce31
mov r9, qword [rdi + 0x18]
test r9, r9
jne 0x62cece
mov rdx, qword [rdi + 0x70]
mov r10, qword [rbp + 0x20]
mov qword [r12 + 0x30], rdi
test rdx, rdx
je 0x62ceea
mov rcx, rbp
call fcn.0059a100
cdqe
shl rax, 5
mov rax, qword [r10 + rax]
movsx r11d, word [rdi + 0x46]
mov qword [r12 + 0x28], rax
test r11d, r11d
jle 0x62cc58
mov r10, qword [rdi + 8]
nop dword [rax]
mov r8, qword [r10]
xor ecx, ecx
jmp 0x62c9f1
movzx edx, byte [rbx + rdx]
cmp byte [rbx + rax], dl
jne 0x62cb70
add rcx, 1
movzx eax, byte [r8 + rcx]
movzx edx, byte [rsi + rcx]
cmp eax, edx
jne 0x62c9e0
test eax, eax
jne 0x62c9ed
mov r10d, dword [rsp + 0x278]
test r10d, r10d
jne 0x62cc6f
mov rcx, r13
call fcn.005af3d0
mov qword [r12 + 0x18], rax
mov r14, rax
test rax, rax
je 0x62cafc
mov rdx, qword [rdi + 0x70]
test rdx, rdx
je 0x62cf18
mov rcx, rbp
call fcn.0059a100
mov r11d, eax
mov eax, 1
mov ecx, r11d
shl eax, cl
mov dword [rsp + 0x40], eax
mov eax, dword [rdx + 4]
mov r9d, dword [rsp + 0x4c]
mov r8d, r11d
mov rcx, r14
mov dword [rsp + 0x48], r11d
mov dword [rsp + 0x28], eax
mov eax, dword [rdx]
mov edx, 2
mov dword [rsp + 0x20], eax
call fcn.005af540
movsxd rax, dword [r14 + 0x90]
mov r11d, dword [rsp + 0x48]
test eax, eax
jle 0x62caa3
mov r8, qword [r14 + 0x88]
lea rax, [rax + rax*2]
mov r9d, 1
lea rax, [r8 + rax*8]
mov word [rax - 0x16], r9w
lea r8, [0x00828650]
mov edx, 6
mov rcx, r14
mov dword [rsp + 0x48], r11d
call fcn.005b2190
mov r11d, dword [rsp + 0x48]
mov r10d, dword [rsp + 0x40]
or dword [r14 + 0xcc], r10d
cmp r11d, 1
je 0x62caf2
mov rcx, qword [r14]
movsxd rdx, r11d
shl rdx, 5
add rdx, qword [rcx + 0x20]
mov rdx, qword [rdx + 8]
cmp byte [rdx + 0x11], 0
je 0x62caf2
or dword [r14 + 0xd0], r10d
cmp byte [rbp + 0x61], 0
je 0x62cd10
mov word [r12 + 8], r15w
mov qword [r12 + 0x20], rbp
cmp byte [rbp + 0x69], 0
je 0x62cdb5
cmp byte [rbp + 0x61], 0
jne 0x62cdc7
mov rdx, qword [rsp + 0x270]
mov rcx, r12
lea r8, [rsp + 0x58]
call fcn.0062c6c0
add dword [rsp + 0x38], 1
mov edi, dword [rsp + 0x38]
cmp eax, 0x11
mov dword [rsp + 0x3c], 0x11
sete dl
cmp edi, 0x32
setne cl
and dl, cl
jne 0x62c900
mov edi, edx
test eax, eax
je 0x62ceae
cmp eax, 0xc0a
mov dword [rsp + 0x3c], eax
sete dil
jmp 0x62cbbe
add r15d, 1
add r10, 0x20
cmp r15d, r11d
jne 0x62c9d8
mov rdx, qword [rsp + 0x58]
test rdx, rdx
je 0x62cb93
mov rcx, rbp
call fcn.00592290
mov r8, rsi
lea rdx, str.no_such_column:___s_
mov rcx, rbp
call fcn.005c4a50
mov qword [rsp + 0x58], rax
cmp byte [rbp + 0x69], 0
je 0x62ce24
mov dword [rsp + 0x3c], 1
xor edi, edi
mov rcx, qword [r12 + 0x18]
test rcx, rcx
je 0x62cbcd
call fcn.005e66e0
mov rdx, r12
mov rcx, rbp
call fcn.00592290
mov r9, qword [rsp + 0x58]
mov eax, 0
mov edx, dword [rsp + 0x3c]
mov rcx, rbp
lea r8, [0x00820b4c]
test r9, r9
cmove r8, rax
call fcn.005bc890
mov rdx, qword [rsp + 0x58]
test rdx, rdx
je 0x62cc0e
mov rcx, rbp
call fcn.00592290
mov rcx, r13
call fcn.005a2230
cmp byte [rbp + 0x61], 0
jne 0x62ce9e
test dil, dil
jne 0x62ce9e
mov r12d, dword [rsp + 0x3c]
and r12d, dword [rbp + 0x54]
mov rcx, qword [rbp + 0x18]
test rcx, rcx
je 0x62cc41
call qword [0x0065d370]
mov eax, r12d
add rsp, 0x208
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret
je 0x62cb81
mov r10d, dword [rsp + 0x278]
test r10d, r10d
je 0x62ca13
mov r10, qword [rdi + 0x10]
test byte [rbp + 0x31], 0x40
jne 0x62ce4a
test r10, r10
je 0x62ca13
nop word cs:[rax + rax]
movzx eax, word [r10 + 0x5e]
test ax, ax
je 0x62ccd9
mov rdx, qword [r10 + 8]
lea ecx, [rax - 1]
lea rax, [rdx + 2]
lea r8, [rax + rcx*2]
jmp 0x62ccc2
cmp cx, 0xfffe
je 0x62ccca
mov rdx, rax
cmp r8, rax
je 0x62ccd9
add rax, 2
movsx ecx, word [rdx]
cmp ecx, r15d
jne 0x62ccb0
lea r9, str.indexed
mov rdx, rax
cmp r8, rax
jne 0x62ccbe
mov r10, qword [r10 + 0x28]
test r10, r10
jne 0x62cc90
test r9, r9
je 0x62ca13
mov rdx, qword [rsp + 0x58]
mov rdi, r9
test rdx, rdx
je 0x62cd00
mov rcx, rbp
call fcn.00592290
mov r8, rdi
lea rdx, str.cannot_open__s_column_for_writing
jmp 0x62cb9d
mov edx, dword [rdi + 0x38]
mov ecx, dword [rsp + 0x4c]
mov dword [rax + 4], r11d
xor r9d, r9d
mov r8, qword [rdi]
mov dword [rsp + 0x48], r11d
mov dword [rax + 8], edx
mov edx, 2
mov dword [rax + 0xc], ecx
mov rcx, r14
mov qword [rsp + 0x40], rax
call fcn.0059fe40
cmp byte [rbp + 0x61], 0
jne 0x62cafc
mov ecx, dword [rsp + 0x278]
mov rax, qword [rsp + 0x40]
mov r11d, dword [rsp + 0x48]
test ecx, ecx
je 0x62cd61
mov byte [rax + 0x18], 0x61
mov edx, dword [rdi + 0x38]
mov byte [rax + 0x19], 0xfd
mov dword [rax + 0x24], r11d
mov dword [rax + 0x20], edx
movsx edx, word [rdi + 0x46]
lea ecx, [rdx + 1]
mov dword [rax + 0x50], edx
xor edx, edx
mov dword [rax + 0x28], ecx
mov rcx, r14
movabs rax, 0x100000001
mov word [rsp + 0x170], dx
mov rdx, r13
mov qword [rsp + 0x94], rax
call fcn.005ae090
jmp 0x62cafc
mov rcx, rbp
call fcn.005977e0
jmp 0x62c940
mov rcx, rbp
call fcn.00597860
cmp byte [rbp + 0x61], 0
je 0x62cb1b
xor edi, edi
jmp 0x62cbbe
mov r8, qword [rsp + 0x260]
lea rdx, str.cannot_open_virtual_table:__s
mov rcx, r13
call fcn.005bd640
mov rax, qword [rsp + 0x68]
test rax, rax
je 0x62cbaa
mov rdx, qword [rsp + 0x58]
test rdx, rdx
je 0x62ce0c
mov rcx, rbp
call fcn.00592290
mov rax, qword [rsp + 0x68]
cmp byte [rbp + 0x69], 0
mov qword [rsp + 0x58], rax
mov qword [rsp + 0x68], 0
jne 0x62cbb4
mov rcx, rbp
call fcn.00597860
jmp 0x62cbb4
mov r8, qword [rsp + 0x260]
lea rdx, str.cannot_open_table_without_rowid:__s
mov rcx, r13
call fcn.005bd640
jmp 0x62cde7
mov r8, qword [rdi + 0x20]
lea rcx, str.foreign_key
test r8, r8
je 0x62cf10
mov edx, dword [r8 + 0x28]
test edx, edx
jle 0x62ce90
sub edx, 1
lea rax, [r8 + 0x40]
shl rdx, 4
lea rdx, [r8 + rdx + 0x50]
nop word cs:[rax + rax]
cmp dword [rax], r15d
cmove r9, rcx
add rax, 0x10
cmp rdx, rax
jne 0x62ce80
mov r8, qword [r8 + 8]
test r8, r8
jne 0x62ce5e
jmp 0x62ccdd
mov rcx, rbp
call fcn.005a3ad0
mov r12d, eax
jmp 0x62cc32
cmp byte [rbp + 0x61], 0
jne 0x62cf23
mov rax, qword [rsp + 0x280]
mov dword [rsp + 0x3c], 0
xor edi, edi
mov qword [rax], r12
jmp 0x62cbd8
mov r8, qword [rsp + 0x260]
lea rdx, str.cannot_open_view:__s
mov rcx, r13
call fcn.005bd640
jmp 0x62cde7
mov rax, 0xfffffffffe17b800
jmp 0x62c9b6
mov eax, dword [rsp + 0x3c]
xor edi, edi
test eax, eax
jne 0x62cbd8
cmp byte [rbp + 0x61], 0
jne 0x62cbd8
jmp 0x62ceb4
xor r9d, r9d
jmp 0x62cc7d
mov r11d, 0xfff0bdc0
jmp 0x62ca52
mov dword [rsp + 0x3c], 0
jmp 0x62cbbe