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

Disassembly:
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x158]
sub rsp, 0x258
mov rax, qword [0x14035a4a8]
xor rax, rsp
mov qword [rbp + 0x140], rax
mov rax, qword [rbp + 0x1d0]
xor r12d, r12d
cmp dword [rbp + 0x1c8], r12d
mov r13, rcx
mov qword [rbp - 0x80], rax
mov r15, r8
mov qword [rsp + 0x50], r9
mov rbx, rdx
mov qword [rax], r12
mov r14d, r12d
mov rcx, qword [rcx + 0x18]
mov eax, r12d
setne al
mov qword [rsp + 0x70], r8
mov dword [rsp + 0x30], eax
mov esi, r12d
mov qword [rsp + 0x78], rdx
mov dword [rsp + 0x38], r12d
mov dword [rsp + 0x34], r12d
mov qword [rsp + 0x40], r12
test rcx, rcx
je 0x140133f8b
call qword [0x14035f540]
mov edx, 0x38
mov rcx, r13
call fcn.1401c3340
mov qword [rsp + 0x60], rax
mov rdi, rax
test rax, rax
je 0x140133fc0
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rdi], xmm0
movups xmmword [rdi + 0x10], xmm0
movups xmmword [rdi + 0x20], xmm0
mov qword [rdi + 0x30], rax
nop dword [rax]
xor edx, edx
lea rcx, [rbp - 0x68]
mov r8d, 0xe0
call fcn.14002a0d0
xorps xmm0, xmm0
mov qword [rbp - 0x70], r13
xor eax, eax
mov qword [rbp + 0x130], rax
mov rax, qword [r13 + 0x160]
mov qword [rbp + 0x98], rax
lea rax, [rbp - 0x70]
mov qword [r13 + 0x160], rax
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
movups xmmword [rbp + 0x110], xmm0
movups xmmword [rbp + 0x120], xmm0
cmp byte [r13 + 0x67], r12b
je 0x140134048
lea rdx, [0x1402f2e28]
lea rcx, [rbp - 0x70]
call fcn.1401c64c0
test rdi, rdi
je 0x140134595
test rsi, rsi
je 0x140134061
mov rdx, rsi
mov rcx, r13
call fcn.1401c3190
mov qword [rsp + 0x40], r12
mov qword [rsp + 0x48], r12
cmp byte [r13 + 0x6f], r12b
jne 0x140134079
mov rcx, r13
call fcn.1401571f0
mov r9, rbx
lea rcx, [rbp - 0x70]
mov r8, r15
xor edx, edx
call fcn.1401e28b0
mov qword [rsp + 0x58], rax
mov rbx, rax
test rax, rax
je 0x140134568
movzx eax, byte [rax + 0x3f]
cmp al, 1
je 0x140134555
test byte [rbx + 0x30], 0x80
jne 0x14013454c
cmp al, 2
je 0x140134543
mov qword [rdi + 0x30], rbx
mov rcx, 0xffffffffffff8000
mov rdx, qword [rbx + 0x60]
test rdx, rdx
je 0x1401340ec
mov rax, qword [r13 + 0x20]
mov rcx, r12
add rax, 0x18
cmp qword [rax], rdx
je 0x1401340ec
nop dword [rax]
inc rcx
lea rax, [rax + 0x20]
cmp qword [rax], rdx
jne 0x1401340e0
mov rax, qword [r13 + 0x20]
mov r15d, r12d
mov rsi, qword [rsp + 0x50]
shl rcx, 5
mov rcx, qword [rcx + rax]
mov qword [rdi + 0x28], rcx
movsx r10d, word [rbx + 0x36]
test r10d, r10d
jle 0x140134163
mov r11, qword [rbx + 8]
movsxd rax, r15d
mov r9, rsi
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 0x140134139
test eax, eax
je 0x140134163
inc r8
jmp 0x140134123
lea rdx, [0x14030df60]
movzx edx, byte [rcx + rdx]
mov rcx, rax
lea rax, [0x14030df60]
movzx eax, byte [rcx + rax]
cmp eax, edx
jne 0x14013415b
inc r8
jmp 0x140134123
inc r15d
cmp r15d, r10d
jl 0x140134112
cmp r15d, r10d
je 0x14013452c
cmp dword [rbp + 0x1c8], r12d
je 0x140134213
mov eax, dword [r13 + 0x30]
mov r9, r12
bt rax, 0xe
jae 0x1401341c4
mov r8, qword [rbx + 0x48]
test r8, r8
je 0x1401341c4
movsxd rdx, dword [r8 + 0x28]
test rdx, rdx
jle 0x1401341bb
lea rcx, [r8 + 0x40]
nop dword [rax]
cmp dword [rcx], r15d
lea rax, str.foreign_key
lea rcx, [rcx + 0x10]
cmovne rax, r9
mov r9, rax
sub rdx, 1
jne 0x1401341a0
mov r8, qword [r8 + 8]
test r8, r8
jne 0x140134190
mov r10, qword [rbx + 0x10]
test r10, r10
je 0x14013420a
nop dword [rax]
movzx eax, word [r10 + 0x5e]
cmp r12w, ax
jae 0x140134201
mov rdx, qword [r10 + 8]
mov r8d, eax
movsx ecx, word [rdx]
cmp ecx, r15d
je 0x1401341f0
cmp cx, 0xfffe
jne 0x1401341f7
lea r9, str.indexed
add rdx, 2
sub r8, 1
jne 0x1401341e2
mov r10, qword [r10 + 0x28]
test r10, r10
jne 0x1401341d0
test r9, r9
jne 0x14013450e
lea rcx, [rbp - 0x70]
call fcn.140200760
mov rdi, rax
mov rax, qword [rsp + 0x60]
mov qword [rax + 0x18], rdi
test rdi, rdi
je 0x140134497
mov rcx, qword [rbx + 0x60]
mov esi, 0xffff8000
mov r14, 0xffffffffffff8000
test rcx, rcx
je 0x14013426e
mov rax, qword [r13 + 0x20]
mov esi, r12d
add rax, 0x18
mov r14, r12
cmp qword [rax], rcx
je 0x14013426e
nop dword [rax]
inc esi
lea rax, [rax + 0x20]
inc r14
cmp qword [rax], rcx
jne 0x140134260
mov edx, dword [rcx + 4]
mov r8d, dword [rcx]
movsxd rcx, dword [rdi + 0x90]
mov r9d, dword [rsp + 0x30]
cmp dword [rdi + 0x94], ecx
jg 0x1401342a3
mov dword [rsp + 0x28], edx
mov rcx, rdi
mov dword [rsp + 0x20], r8d
mov edx, 2
mov r8d, esi
call fcn.14014fc40
jmp 0x1401342d0
lea eax, [rcx + 1]
mov dword [rdi + 0x90], eax
lea rcx, [rcx + rcx*2]
mov rax, qword [rdi + 0x88]
mov dword [rax + rcx*8], 0xfd02
mov dword [rax + rcx*8 + 4], esi
mov dword [rax + rcx*8 + 8], r9d
mov dword [rax + rcx*8 + 0xc], r8d
mov dword [rax + rcx*8 + 0x10], edx
movsxd rax, dword [rdi + 0x90]
test eax, eax
jle 0x1401342f0
lea rcx, [rax + rax*2]
mov edx, 1
mov rax, qword [rdi + 0x88]
mov word [rax + rcx*8 - 0x16], dx
mov eax, dword [rdi + 0x90]
add eax, 6
cmp eax, dword [rdi + 0x94]
jle 0x14013431a
mov edx, 6
mov rcx, rdi
call fcn.14018ece0
test eax, eax
je 0x14013431a
mov rbx, r12
jmp 0x1401343c5
movsxd rax, dword [rdi + 0x90]
lea rcx, [rax + rax*2]
mov rax, qword [rdi + 0x88]
mov qword [rax + rcx*8], 0xa9
mov qword [rax + rcx*8 + 8], r12
mov qword [rax + rcx*8 + 0x10], r12
lea rbx, [rax + rcx*8]
mov qword [rbx + 0x18], WSACleanup
mov qword [rbx + 0x20], r12
mov qword [rbx + 0x28], r12
mov byte [rbx + 0x30], 0x1f
mov dword [rbx + 0x34], r12d
mov dword [rbx + 0x38], 5
mov eax, dword [rdi + 0x90]
add eax, 5
mov dword [rbx + 0x38], eax
mov eax, 1
mov dword [rbx + 0x3c], eax
mov byte [rbx + 0x31], r12b
mov qword [rbx + 0x40], r12
mov word [rbx + 0x32], r12w
mov qword [rbx + 0x48], 0x5e
mov dword [rbx + 0x50], r12d
mov dword [rbx + 0x54], eax
mov qword [rbx + 0x58], r12
mov dword [rbx + 0x60], 0x54
mov qword [rbx + 0x64], rax
mov dword [rbx + 0x6c], r12d
mov qword [rbx + 0x70], r12
mov qword [rbx + 0x78], 0x46
mov qword [rbx + 0x80], r12
mov qword [rbx + 0x88], r12
add dword [rdi + 0x90], 6
mov eax, dword [rdi + 0xcc]
bts eax, esi
mov dword [rdi + 0xcc], eax
cmp esi, 1
je 0x1401343fe
mov rax, qword [rdi]
shl r14, 5
mov rax, qword [rax + 0x20]
mov rcx, qword [rax + r14 + 8]
cmp byte [rcx + 0x11], r12b
je 0x1401343fe
mov eax, dword [rdi + 0xd0]
bts eax, esi
mov dword [rdi + 0xd0], eax
mov r14, qword [rsp + 0x58]
cmp byte [r13 + 0x67], r12b
jne 0x140134492
mov dword [rbx + 4], esi
mov eax, dword [r14 + 0x28]
mov dword [rbx + 8], eax
mov eax, dword [rsp + 0x30]
mov dword [rbx + 0xc], eax
mov rax, qword [rdi]
cmp byte [rax + 0x67], r12b
jne 0x140134440
mov rdx, qword [rdi + 0x88]
xor r9d, r9d
mov r8, qword [r14]
add rdx, 0x30
mov rcx, rdi
call fcn.1402232f0
cmp byte [r13 + 0x67], r12b
jne 0x140134492
cmp dword [rbp + 0x1c8], r12d
je 0x140134453
mov byte [rbx + 0x18], WSACleanup
mov eax, dword [r14 + 0x28]
lea rdx, [rbp - 0x70]
mov dword [rbx + 0x20], eax
mov rcx, rdi
mov dword [rbx + 0x24], esi
mov byte [rbx + 0x19], 0xfd
movsx eax, word [r14 + 0x36]
inc eax
mov dword [rbx + 0x28], eax
movsx eax, word [r14 + 0x36]
mov dword [rbx + 0x50], eax
mov eax, 1
mov dword [rbp - 0x38], eax
mov dword [rbp - 0x3c], eax
mov word [rbp + 0xc0], r12w
call fcn.14020b9f0
mov r14d, dword [rsp + 0x34]
mov rdi, qword [rsp + 0x60]
mov word [rdi + 8], r15w
mov qword [rdi + 0x20], r13
cmp byte [r13 + 0x6f], r12b
jne 0x1401344b3
mov rcx, r13
call fcn.140157690
cmp byte [r13 + 0x67], r12b
jne 0x140134595
mov rdx, qword [rbp + 0x1c0]
lea r8, [rsp + 0x48]
mov rcx, rdi
call fcn.140155fc0
mov ebx, dword [rsp + 0x38]
mov r14d, eax
inc ebx
mov dword [rsp + 0x34], eax
mov dword [rsp + 0x38], ebx
cmp ebx, 0x32
jge 0x140134525
cmp eax, 0x11
jne 0x140134525
lea rcx, [rbp - 0x70]
call fcn.1401e79a0
mov rsi, qword [rsp + 0x48]
mov r15, qword [rsp + 0x70]
mov rbx, qword [rsp + 0x78]
mov qword [rsp + 0x40], rsi
jmp 0x140133fc0
mov r8, r9
lea rdx, str.cannot_open__s_column_for_writing
mov rcx, r13
call fcn.1401e3050
mov rsi, rax
jmp 0x14013457f
mov rsi, qword [rsp + 0x48]
jmp 0x14013459a
mov r8, rsi
lea rdx, str.no_such_column:___s_
mov rcx, r13
call fcn.1401e3050
mov rsi, rax
jmp 0x14013457f
lea rdx, str.cannot_open_view:__s
jmp 0x14013455c
lea rdx, str.cannot_open_table_without_rowid:__s
jmp 0x14013455c
lea rdx, str.cannot_open_virtual_table:__s
mov r8, r15
lea rcx, [rbp - 0x70]
call fcn.1401c64c0
mov rax, qword [rbp - 0x68]
test rax, rax
je 0x14013457a
mov rsi, rax
mov qword [rbp - 0x68], r12
jmp 0x14013457f
mov rsi, qword [rsp + 0x40]
mov r14d, 1
cmp byte [r13 + 0x6f], r12b
jne 0x1401345b3
mov rcx, r13
call fcn.140157690
jmp 0x1401345b3
mov rsi, qword [rsp + 0x40]
test r14d, r14d
jne 0x1401345ae
cmp byte [r13 + 0x67], r12b
jne 0x1401345ae
mov rax, qword [rbp - 0x80]
mov qword [rax], rdi
jmp 0x1401345e0
test rdi, rdi
je 0x1401345e0
mov rbx, qword [rdi + 0x18]
test rbx, rbx
je 0x1401345d5
cmp byte [rbx + 0xc7], 1
jb 0x1401345cd
mov rcx, rbx
call fcn.14020e410
mov rcx, rbx
call fcn.1402008f0
mov rdx, rdi
mov rcx, r13
call fcn.1401c3190
lea rax, [0x1402eec54]
test rsi, rsi
mov r8, r12
mov r9, rsi
cmovne r8, rax
mov edx, r14d
mov rcx, r13
call fcn.1401c6590
test rsi, rsi
je 0x14013460f
mov rdx, rsi
mov rcx, r13
call fcn.1401c3190
lea rcx, [rbp - 0x70]
call fcn.1401e79a0
cmp byte [r13 + 0x67], r12b
jne 0x140134623
test r14d, r14d
je 0x140134631
mov edx, r14d
mov rcx, r13
call fcn.140152fc0
mov r12d, eax
mov rcx, qword [r13 + 0x18]
test rcx, rcx
je 0x140134640
call qword [0x14035f550]
mov eax, r12d
mov rcx, qword [rbp + 0x140]
xor rcx, rsp
call fcn.14023f100
add rsp, 0x258
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret