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

Disassembly:
jmp 0x180023450
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x138]
sub rsp, 0x238
mov rax, qword [0x180293780]
xor rax, rsp
mov qword [rbp + 0x120], rax
mov rax, qword [rbp + 0x1b0]
xor r14d, r14d
cmp dword [rbp + 0x1a8], r14d
mov r15, rcx
mov qword [rsp + 0x70], rax
mov rbx, r9
mov qword [rsp + 0x60], rbx
mov rsi, r8
mov qword [rax], r14
mov r13d, r14d
mov rcx, qword [rcx + 0x18]
mov eax, r14d
setne al
mov qword [rsp + 0x68], r8
mov dword [rsp + 0x30], eax
mov edi, r14d
mov qword [rsp + 0x58], rdx
mov dword [rsp + 0x34], r14d
mov dword [rsp + 0x38], r14d
mov qword [rsp + 0x40], r14
test rcx, rcx
je 0x1800234dc
call qword [0x18028cbe0]
mov edx, 0x38
mov rcx, r15
call fcn.18010d770
mov r12, rax
test rax, rax
je 0x180023510
xorps xmm0, xmm0
xor eax, eax
movups xmmword [r12], xmm0
movups xmmword [r12 + 0x10], xmm0
movups xmmword [r12 + 0x20], xmm0
mov qword [r12 + 0x30], rax
nop dword [rax]
xor edx, edx
lea rcx, [rbp - 0x78]
mov r8d, 0xd0
call fcn.180003b25
xorps xmm0, xmm0
mov qword [rbp - 0x80], r15
xor eax, eax
mov qword [rbp + 0x110], rax
mov rax, qword [r15 + 0x150]
mov qword [rbp + 0x78], rax
lea rax, [rbp - 0x80]
mov qword [r15 + 0x150], rax
movups xmmword [rbp + 0x90], xmm0
movups xmmword [rbp + 0xa0], xmm0
movups xmmword [rbp + 0xb0], xmm0
movups xmmword [rbp + 0xc0], xmm0
movups xmmword [rbp + 0xd0], xmm0
movups xmmword [rbp + 0xe0], xmm0
movups xmmword [rbp + 0xf0], xmm0
movups xmmword [rbp + 0x100], xmm0
cmp byte [r15 + 0x67], r14b
je 0x180023595
lea rdx, str.out_of_memory
lea rcx, [rbp - 0x80]
call fcn.180110e20
test r12, r12
je 0x180023a38
test rdi, rdi
je 0x1800235ae
mov rdx, rdi
mov rcx, r15
call fcn.18010d580
mov r9, qword [rsp + 0x58]
lea rcx, [rbp - 0x80]
mov r8, rsi
mov qword [rsp + 0x40], r14
xor edx, edx
mov qword [rsp + 0x48], r14
call fcn.18013ff20
mov r13, rax
test rax, rax
je 0x180023a0e
movzx eax, byte [rax + 0x3f]
cmp al, 1
je 0x1800239fb
test byte [r13 + 0x30], 0x80
jne 0x1800239f2
cmp al, 2
je 0x1800239e9
mov qword [r12 + 0x30], r13
mov rcx, 0xffffffffffff8000
mov rdx, qword [r13 + 0x60]
test rdx, rdx
je 0x18002362c
mov rax, qword [r15 + 0x20]
mov rcx, r14
add rax, 0x18
cmp qword [rax], rdx
je 0x18002362c
nop dword [rax + rax]
inc rcx
lea rax, [rax + 0x20]
cmp qword [rax], rdx
jne 0x180023620
mov rax, qword [r15 + 0x20]
mov esi, r14d
shl rcx, 5
mov rcx, qword [rcx + rax]
mov qword [r12 + 0x28], rcx
movsx r10d, word [r13 + 0x36]
test r10d, r10d
jle 0x18002369f
mov r11, qword [r13 + 8]
lea rdi, [0x18023a870]
nop word [rax + rax]
movsxd rax, esi
mov r9, rbx
lea rcx, [rax + rax*2]
mov r8, qword [r11 + rcx*8]
sub r9, r8
movzx eax, byte [r8]
movzx ecx, byte [r9 + r8]
cmp eax, ecx
jne 0x180023687
test eax, eax
je 0x18002369f
inc r8
jmp 0x180023671
movzx edx, byte [rcx + rdi]
movzx eax, byte [rax + rdi]
cmp eax, edx
jne 0x180023698
inc r8
jmp 0x180023671
inc esi
cmp esi, r10d
jl 0x180023660
cmp esi, r10d
je 0x1800239cc
cmp dword [rbp + 0x1a8], r14d
je 0x180023752
mov eax, dword [r15 + 0x30]
mov r9, r14
bt rax, 0xe
jae 0x180023703
mov r8, qword [r13 + 0x48]
test r8, r8
je 0x180023703
nop dword [rax]
movsxd rdx, dword [r8 + 0x28]
test rdx, rdx
jle 0x1800236fa
lea rcx, [r8 + 0x40]
nop dword [rax]
cmp dword [rcx], esi
lea rax, str.foreign_key
lea rcx, [rcx + 0x10]
cmovne rax, r9
mov r9, rax
sub rdx, 1
jne 0x1800236e0
mov r8, qword [r8 + 8]
test r8, r8
jne 0x1800236d0
mov r10, qword [r13 + 0x10]
test r10, r10
je 0x180023749
nop dword [rax]
movzx eax, word [r10 + 0x5e]
cmp r14w, ax
jae 0x180023740
mov rdx, qword [r10 + 8]
mov r8d, eax
movsx ecx, word [rdx]
cmp ecx, esi
je 0x18002372f
cmp cx, 0xfffe
jne 0x180023736
lea r9, str.indexed
add rdx, 2
sub r8, 1
jne 0x180023722
mov r10, qword [r10 + 0x28]
test r10, r10
jne 0x180023710
test r9, r9
jne 0x1800239b9
lea rcx, [rbp - 0x80]
call fcn.180160fa0
mov qword [r12 + 0x18], rax
mov rbx, rax
test rax, rax
je 0x180023953
mov rcx, qword [r13 + 0x60]
mov edi, 0xffff8000
test rcx, rcx
je 0x18002379b
mov rax, qword [r15 + 0x20]
mov edi, r14d
add rax, 0x18
cmp qword [rax], rcx
je 0x18002379b
nop word [rax + rax]
inc edi
lea rax, [rax + 0x20]
cmp qword [rax], rcx
jne 0x180023790
mov edx, dword [rcx + 4]
mov r8d, dword [rcx]
movsxd rcx, dword [rbx + 0x90]
mov r9d, dword [rsp + 0x30]
cmp dword [rbx + 0x94], ecx
jg 0x1800237d0
mov dword [rsp + 0x28], edx
mov rcx, rbx
mov dword [rsp + 0x20], r8d
mov edx, 2
mov r8d, edi
call fcn.180055110
jmp 0x1800237fd
lea eax, [rcx + 1]
mov dword [rbx + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rbx + 0x88]
mov dword [rax + rcx*8], 0xfd02
mov dword [rax + rcx*8 + 4], edi
mov dword [rax + rcx*8 + 8], r9d
mov dword [rax + rcx*8 + 0xc], r8d
mov dword [rax + rcx*8 + 0x10], edx
movsxd rax, dword [rbx + 0x90]
test eax, eax
jle 0x18002381a
lea rcx, [rax + rax*2]
mov rax, qword [rbx + 0x88]
mov word [rax + rcx*8 - 0x16], 1
mov eax, dword [rbx + 0x90]
add eax, 6
cmp eax, dword [rbx + 0x94]
jle 0x180023849
mov edx, 6
mov rcx, rbx
call fcn.1800cbda0
test eax, eax
je 0x180023849
mov rcx, r14
mov edx, 1
jmp 0x1800238f4
movsxd rax, dword [rbx + 0x90]
mov edx, 1
lea rcx, [rax + rax*2]
mov rax, qword [rbx + 0x88]
mov qword [rax + rcx*8], 0xa9
mov qword [rax + rcx*8 + 8], r14
mov qword [rax + rcx*8 + 0x10], r14
lea rcx, [rax + rcx*8]
mov qword [rcx + 0x18], 0x70
mov qword [rcx + 0x20], r14
mov qword [rcx + 0x28], r14
mov byte [rcx + 0x30], 0x1f
mov dword [rcx + 0x34], r14d
mov dword [rcx + 0x38], 5
mov eax, dword [rbx + 0x90]
add eax, 5
mov dword [rcx + 0x38], eax
mov dword [rcx + 0x3c], edx
mov byte [rcx + 0x31], r14b
mov qword [rcx + 0x40], r14
mov word [rcx + 0x32], r14w
mov qword [rcx + 0x48], 0x5e
mov dword [rcx + 0x50], r14d
mov dword [rcx + 0x54], edx
mov qword [rcx + 0x58], r14
mov dword [rcx + 0x60], 0x54
mov qword [rcx + 0x64], rdx
mov dword [rcx + 0x6c], r14d
mov qword [rcx + 0x70], r14
mov qword [rcx + 0x78], 0x46
mov qword [rcx + 0x80], r14
mov qword [rcx + 0x88], r14
add dword [rbx + 0x90], 6
mov eax, dword [rbx + 0xcc]
bts eax, edi
mov dword [rbx + 0xcc], eax
cmp byte [r15 + 0x67], r14b
jne 0x180023953
mov byte [rcx], 0xbb
cmp dword [rbp + 0x1a8], r14d
je 0x180023919
mov byte [rcx + 0x18], 0x71
mov eax, dword [r13 + 0x28]
mov dword [rcx + 0x20], eax
mov dword [rcx + 0x24], edi
mov byte [rcx + 0x19], 0xfd
movsx eax, word [r13 + 0x36]
inc eax
mov dword [rcx + 0x28], eax
movsx eax, word [r13 + 0x36]
mov dword [rcx + 0x50], eax
mov rcx, rbx
mov dword [rbp - 0x48], edx
mov dword [rbp - 0x4c], edx
lea rdx, [rbp - 0x80]
mov word [rbp + 0xa0], r14w
call fcn.18016df00
mov word [r12 + 8], si
mov qword [r12 + 0x20], r15
cmp byte [r15 + 0x67], r14b
jne 0x180023a33
mov rdx, qword [rbp + 0x1a0]
lea r8, [rsp + 0x48]
mov rcx, r12
call fcn.18005d1a0
mov esi, dword [rsp + 0x34]
mov r13d, eax
inc esi
mov dword [rsp + 0x38], eax
mov dword [rsp + 0x34], esi
cmp esi, 0x32
jge 0x1800239c5
cmp eax, 0x11
jne 0x1800239c5
lea rcx, [rbp - 0x80]
call fcn.180144950
mov rdi, qword [rsp + 0x48]
mov rbx, qword [rsp + 0x60]
mov rsi, qword [rsp + 0x68]
mov qword [rsp + 0x40], rdi
jmp 0x180023510
mov r8, r9
lea rdx, str.cannot_open__s_column_for_writing
jmp 0x1800239d6
mov rsi, qword [rsp + 0x48]
jmp 0x180023a3d
mov r8, rbx
lea rdx, str.no_such_column:___s_
mov rcx, r15
call fcn.180140890
mov rsi, rax
mov r13d, 1
jmp 0x180023a57
lea rdx, str.cannot_open_view:__s
jmp 0x180023a02
lea rdx, str.cannot_open_table_without_rowid:__s
jmp 0x180023a02
lea rdx, str.cannot_open_virtual_table:__s
mov r8, rsi
lea rcx, [rbp - 0x80]
call fcn.180110e20
mov rax, qword [rbp - 0x78]
test rax, rax
je 0x180023a26
mov rsi, rax
mov qword [rbp - 0x78], r14
mov r13d, 1
jmp 0x180023a57
mov rsi, qword [rsp + 0x40]
mov r13d, 1
jmp 0x180023a57
mov r13d, dword [rsp + 0x38]
mov rsi, qword [rsp + 0x40]
test r13d, r13d
jne 0x180023a52
cmp byte [r15 + 0x67], r14b
jne 0x180023a52
mov rax, qword [rsp + 0x70]
mov qword [rax], r12
jmp 0x180023abb
test r12, r12
je 0x180023abb
mov rbx, qword [r12 + 0x18]
test rbx, rbx
je 0x180023ab0
cmp byte [rbx + 0xc7], 1
jb 0x180023a72
mov rcx, rbx
call fcn.180171240
mov rdi, qword [rbx]
mov rdx, rbx
mov rcx, rdi
call fcn.180160db0
cmp qword [rdi + 0x2e8], r14
jne 0x180023aa5
mov r8, qword [rbx + 8]
mov rax, qword [rbx + 0x10]
mov qword [r8], rax
mov rcx, qword [rbx + 0x10]
test rcx, rcx
je 0x180023aa5
mov rax, qword [rbx + 8]
mov qword [rcx + 8], rax
mov rdx, rbx
mov rcx, rdi
call fcn.18010d860
mov rdx, r12
mov rcx, r15
call fcn.18010d580
lea rax, [0x180242e14]
test rsi, rsi
mov r8, r14
mov r9, rsi
cmovne r8, rax
mov edx, r13d
mov rcx, r15
call fcn.180110ef0
test rsi, rsi
je 0x180023aea
mov rdx, rsi
mov rcx, r15
call fcn.18010d580
lea rcx, [rbp - 0x80]
call fcn.180144950
cmp byte [r15 + 0x67], r14b
jne 0x180023afe
test r13d, r13d
je 0x180023b0c
mov edx, r13d
mov rcx, r15
call fcn.1800596e0
mov r14d, eax
mov rcx, qword [r15 + 0x18]
test rcx, rcx
je 0x180023b1b
call qword [0x18028cbf0]
mov eax, r14d
mov rcx, qword [rbp + 0x120]
xor rcx, rsp
call fcn.180002c0c
add rsp, 0x238
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret