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

Disassembly:
mov qword [rsp + 0x20], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x8e0]
sub rsp, 0x9e0
mov rax, qword [0x1402adcf8]
xor rax, rsp
mov qword [rbp + 0x8d0], rax
mov rsi, rcx
mov qword [rsp + 0x38], r8
xor ecx, ecx
mov r14, rdx
mov dword [rsp + 0x34], ecx
mov r15, qword [rsi]
lea edi, [rcx - 1]
mov r13d, dword [r15 + 0x84]
cmp dword [r15 + 0xd0], ecx
jne 0x14014099e
mov dword [r15 + 0x178], ecx
mov dword [rsi + 0x18], ecx
lea rax, [rsp + 0x60]
mov qword [rsp + 0x50], rax
lea rdx, [rsp + 0x20]
mov dword [rsp + 0x60], ecx
lea rax, [rbp + 0x8a8]
mov qword [rbp + 0x8c0], rax
mov rcx, r14
mov qword [rsi + 0x138], r14
mov qword [rsp + 0x58], rsi
mov rax, qword [r15 + 0x140]
mov qword [rsi + 0xb0], rax
mov qword [r15 + 0x140], rsi
call fcn.14012f760
sub r13d, eax
mov r12d, eax
js 0x140140c8e
nop word [rax + rax]
mov ebx, dword [rsp + 0x20]
cmp ebx, 0xa3
jl 0x140140c3c
mov eax, dword [r15 + 0x178]
test eax, eax
jne 0x140140d02
mov eax, dword [rsp + 0x20]
cmp eax, 0xb5
jne 0x140140a35
movsxd rax, r12d
add r14, rax
jmp 0x140140c75
cmp byte [r14], 0
jne 0x140140a5f
cmp edi, 1
jne 0x140140a4a
xor ebx, ebx
xor r12d, r12d
jmp 0x140140c38
test edi, edi
je 0x140140c95
mov ebx, 1
xor r12d, r12d
jmp 0x140140c38
cmp eax, 0xa3
jne 0x140140b3b
lea rbx, [r14 + 6]
nop
lea rdx, [rsp + 0x24]
mov rcx, rbx
call fcn.14012f760
movsxd rcx, eax
add rbx, rcx
movsxd rcx, dword [rsp + 0x24]
cmp ecx, 0xb5
je 0x140140a70
cmp ecx, 0x3b
je 0x140140ac4
lea eax, [rcx - 0x74]
cmp eax, 0x30
ja 0x140140aad
movabs rdx, 0x1800000000003
bt rdx, rax
jb 0x140140ac4
lea rdi, [0x140000000]
cmp word [rdi + rcx*2 + 0x232300], 0x3b
je 0x140140acb
jmp 0x140140c33
lea rdi, [0x140000000]
mov dword [rsp + 0x24], 0x3b
lea rdx, [rsp + 0x28]
mov rcx, rbx
call fcn.14012f760
movsxd rcx, eax
add rbx, rcx
movsxd rcx, dword [rsp + 0x28]
cmp ecx, 0xb5
je 0x140140ad3
cmp ecx, 0x3b
je 0x140140b2e
lea eax, [rcx - 0x74]
cmp eax, 0x30
ja 0x140140b10
movabs rdx, 0x1800000000003
bt rdx, rax
jb 0x140140b2e
cmp word [rdi + rcx*2 + 0x232300], 0x3b
je 0x140140b2e
cmp ecx, 0x18
jne 0x140140c33
mov ebx, 0xa3
jmp 0x140140c38
mov dword [rsp + 0x28], 0x3b
jmp 0x140140c33
cmp eax, 0xa4
jne 0x140140bbb
cmp edi, 0x17
jne 0x140140c33
lea rbx, [r14 + 4]
nop
lea rdx, [rsp + 0x2c]
mov rcx, rbx
call fcn.14012f760
movsxd rcx, eax
add rbx, rcx
movsxd rcx, dword [rsp + 0x2c]
cmp ecx, 0xb5
je 0x140140b50
cmp ecx, 0x3b
je 0x140140ba9
lea eax, [rcx - 0x74]
cmp eax, 0x30
ja 0x140140b8d
movabs rdx, 0x1800000000003
bt rdx, rax
jb 0x140140ba9
lea rdx, [0x140000000]
cmp word [rdx + rcx*2 + 0x232300], 0x3b
je 0x140140ba9
cmp ecx, 0x16
je 0x140140bb1
jmp 0x140140c33
mov dword [rsp + 0x2c], 0x3b
mov ebx, 0xa4
jmp 0x140140c38
cmp eax, 0xa5
jne 0x140140ceb
cmp edi, 0x17
jne 0x140140c33
lea rbx, [r14 + 6]
nop
lea rdx, [rsp + 0x30]
mov rcx, rbx
call fcn.14012f760
movsxd rcx, eax
add rbx, rcx
movsxd rcx, dword [rsp + 0x30]
cmp ecx, 0xb5
je 0x140140bd0
cmp ecx, 0x3b
je 0x140140c2b
lea eax, [rcx - 0x74]
cmp eax, 0x30
ja 0x140140c0d
movabs rdx, 0x1800000000003
bt rdx, rax
jb 0x140140c2b
lea rdx, [0x140000000]
cmp word [rdx + rcx*2 + 0x232300], 0x3b
je 0x140140c2b
cmp ecx, 0x16
jne 0x140140c33
mov ebx, 0xa5
jmp 0x140140c38
mov dword [rsp + 0x30], 0x3b
mov ebx, 0x3b
mov dword [rsp + 0x20], ebx
mov qword [rsi + 0x100], r14
lea r8, [rsp + 0x40]
mov dword [rsi + 0x108], r12d
lea rcx, [rsp + 0x50]
movups xmm0, xmmword [rsi + 0x100]
mov edx, ebx
movaps xmmword [rsp + 0x40], xmm0
call fcn.140138a50
movsxd rax, r12d
mov edi, ebx
add r14, rax
cmp dword [rsi + 0x18], 0
jne 0x140140c95
lea rdx, [rsp + 0x20]
mov rcx, r14
call fcn.14012f760
sub r13d, eax
mov r12d, eax
jns 0x140140a00
mov dword [rsi + 0x18], 0x12
mov rcx, qword [rsp + 0x50]
lea rax, [rsp + 0x60]
cmp rcx, rax
jbe 0x140140cda
nop dword [rax]
nop dword [rax + rax]
lea rax, [rcx - 0x18]
mov qword [rsp + 0x50], rax
lea r8, [rcx + 8]
movzx edx, word [rcx + 2]
lea rcx, [rsp + 0x50]
call fcn.14017fc40
mov rcx, qword [rsp + 0x50]
lea rax, [rsp + 0x60]
cmp rcx, rax
ja 0x140140cb0
cmp byte [r15 + 0x63], 0
je 0x140140d0b
mov ecx, 7
mov dword [rsi + 0x18], ecx
jmp 0x140140d17
mov r9, r14
lea rdx, str.unrecognized_token:___.s_
mov r8d, r12d
mov rcx, rsi
call fcn.140122730
jmp 0x140140c95
mov dword [rsi + 0x18], 9
jmp 0x140140c95
mov ecx, dword [rsi + 0x18]
test ecx, ecx
je 0x140140d86
cmp ecx, 0x65
je 0x140140d86
cmp qword [rsi + 8], 0
jne 0x140140d86
mov edx, ecx
lea r8, [0x140239500]
sub edx, 0x64
je 0x140140d6c
sub edx, 1
je 0x140140d63
cmp edx, 0x19f
je 0x140140d5a
movzx eax, cl
cmp eax, 0x1d
jae 0x140140d73
lea rcx, [0x140000000]
mov rcx, qword [rcx + rax*8 + 0x232e10]
test rcx, rcx
je 0x140140d73
mov r8, rcx
jmp 0x140140d73
lea r8, str.abort_due_to_ROLLBACK
jmp 0x140140d73
lea r8, str.no_more_rows_available
jmp 0x140140d73
lea r8, str.another_row_available
lea rdx, [0x140234010]
mov rcx, r15
call fcn.140135190
mov qword [rsi + 8], rax
mov r8, qword [rsi + 8]
test r8, r8
je 0x140140dbb
mov rax, qword [rsp + 0x38]
lea rdx, str._s_in___s_
mov qword [rax], r8
mov r9, qword [rsi + 0x138]
mov ecx, dword [rsi + 0x18]
call fcn.1400de450
xor r12d, r12d
mov qword [rsi + 8], r12
lea edi, [r12 + 1]
jmp 0x140140dc2
mov edi, dword [rsp + 0x34]
xor r12d, r12d
mov rcx, qword [rsi + 0x10]
mov qword [rsi + 0x138], r14
test rcx, rcx
je 0x140140de7
cmp dword [rsi + 0x30], 0
jle 0x140140de7
cmp byte [rsi + 0x1e], 0
jne 0x140140e0f
call fcn.14014e130
mov qword [rsi + 0x10], r12
cmp byte [rsi + 0x1e], 0
jne 0x140140e0f
mov rdx, qword [rsi + 0x90]
test rdx, rdx
je 0x140140e01
mov rcx, r15
call fcn.14011fc50
mov qword [rsi + 0x90], r12
mov dword [rsi + 0x88], r12d
mov rbx, qword [rsi + 0x170]
test rbx, rbx
je 0x140140e76
cmp dword [0x1402ab270], 0
je 0x140140e6d
mov rcx, qword [0x1402b4ec0]
test rcx, rcx
je 0x140140e36
call qword [0x1402ab2f0]
mov rcx, rbx
call qword [0x1402ab2a8]
dec qword [0x1402b4e58]
mov rcx, rbx
movsxd rdx, eax
sub qword [0x1402b4e10], rdx
call qword [0x1402ab298]
mov rcx, qword [0x1402b4ec0]
test rcx, rcx
je 0x140140e76
call qword [0x1402ab300]
jmp 0x140140e76
mov rcx, rbx
call qword [0x1402ab298]
cmp byte [rsi + 0x114], 0
jne 0x140140ea3
mov rdx, qword [rsi + 0x140]
test rdx, rdx
je 0x140140ea3
cmp qword [r15 + 0x2e0], 0
jne 0x140140e9b
add dword [rdx + 0x3c], 0xffffffff
jne 0x140140ea3
mov rcx, r15
call fcn.1400ee5d0
cmp byte [rsi + 0x114], 2
jae 0x140140f13
mov rbx, qword [rsi + 0x150]
test rbx, rbx
je 0x140140f13
cmp byte [rbx + 0x12], 0
jne 0x140140f13
mov rdx, qword [rbx + 0x38]
mov rcx, r15
call fcn.1401211a0
mov rdx, qword [rbx]
test rdx, rdx
je 0x140140eda
mov rcx, r15
call fcn.14011fc50
mov rdx, qword [rbx + 8]
test rdx, rdx
je 0x140140eeb
mov rcx, r15
call fcn.14011fc50
mov rdx, qword [rbx + 0x18]
test rdx, rdx
je 0x140140efc
mov rcx, r15
call fcn.140127100
mov rdx, qword [rbx + 0x20]
mov rcx, r15
call fcn.140130860
mov rdx, rbx
mov rcx, r15
call fcn.14011fc50
mov rdx, qword [rsi + 0x128]
test rdx, rdx
je 0x140140f27
mov rcx, r15
call fcn.14011fc50
mov rcx, qword [rsi + 0xb0]
mov eax, edi
mov qword [r15 + 0x140], rcx
mov qword [rsi + 0xb0], r12
mov rcx, qword [rbp + 0x8d0]
xor rcx, rsp
call fcn.1401a8cb0
mov rbx, qword [rsp + 0xa38]
add rsp, 0x9e0
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret