Function at 0x1401a9220
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 [0x14024e010]
xor rax, rsp
mov qword [rbp + 0x8d0], rax
mov rsi, rcx
mov r13, r8
xor ecx, ecx
mov r14, rdx
mov dword [rsp + 0x34], ecx
mov rdi, qword [rsi]
lea ebx, [rcx - 1]
mov r12d, dword [rdi + 0x80]
cmp dword [rdi + 0xc8], ecx
jne 0x1401a927a
mov dword [rdi + 0x170], 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 + 0x140], r14
mov qword [rsp + 0x58], rsi
mov rax, qword [rdi + 0x138]
mov qword [rsi + 0xb0], rax
mov qword [rdi + 0x138], rsi
call fcn.1401a8a60
sub r12d, eax
mov r15d, eax
js 0x1401a9570
nop dword [rax]
nop word [rax + rax]
mov edx, dword [rsp + 0x20]
cmp edx, 0xa1
jl 0x1401a951e
mov eax, dword [rdi + 0x170]
test eax, eax
jne 0x1401a95e1
mov eax, dword [rsp + 0x20]
cmp eax, 0xb3
jne 0x1401a9314
movsxd rax, r15d
add r14, rax
jmp 0x1401a9557
cmp byte [r14], 0
jne 0x1401a933e
cmp ebx, 1
jne 0x1401a9329
xor edx, edx
xor r15d, r15d
jmp 0x1401a951a
test ebx, ebx
je 0x1401a9577
mov edx, 1
xor r15d, r15d
jmp 0x1401a951a
cmp eax, 0xa1
jne 0x1401a941f
lea rbx, [r14 + 6]
nop dword [rax]
lea rdx, [rsp + 0x24]
mov rcx, rbx
call fcn.1401a8a60
movsxd rcx, eax
add rbx, rcx
movsxd rcx, dword [rsp + 0x24]
cmp ecx, 0xb3
je 0x1401a9350
cmp ecx, 0x3b
je 0x1401a93a6
lea eax, [rcx - 0x73]
cmp eax, 0x2f
ja 0x1401a938d
movabs rdx, 0xc00000000003
bt rdx, rax
jb 0x1401a93a6
mov rax, rcx
lea rcx, [0x140000000]
cmp word [rcx + rax*2 + 0x1f5920], 0x3b
jne 0x1401a9515
mov dword [rsp + 0x24], 0x3b
nop
lea rdx, [rsp + 0x28]
mov rcx, rbx
call fcn.1401a8a60
movsxd rcx, eax
add rbx, rcx
movsxd rcx, dword [rsp + 0x28]
cmp ecx, 0xb3
je 0x1401a93b0
cmp ecx, 0x3b
je 0x1401a9412
lea eax, [rcx - 0x73]
cmp eax, 0x2f
ja 0x1401a93ed
movabs rdx, 0xc00000000003
bt rdx, rax
jb 0x1401a9412
lea rdx, [0x140000000]
cmp word [rdx + rcx*2 + 0x1f5920], 0x3b
je 0x1401a9412
cmp ecx, 0x18
jne 0x1401a9515
mov edx, reloc.OLEAUT32.dll_LoadRegTypeLib
jmp 0x1401a951a
mov dword [rsp + 0x28], 0x3b
jmp 0x1401a9515
cmp eax, 0xa2
jne 0x1401a949e
cmp ebx, 0x17
jne 0x1401a9515
lea rbx, [r14 + 4]
lea rdx, [rsp + 0x2c]
mov rcx, rbx
call fcn.1401a8a60
movsxd rcx, eax
add rbx, rcx
movsxd rcx, dword [rsp + 0x2c]
cmp ecx, 0xb3
je 0x1401a9433
cmp ecx, 0x3b
je 0x1401a948c
lea eax, [rcx - 0x73]
cmp eax, 0x2f
ja 0x1401a9470
movabs rdx, 0xc00000000003
bt rdx, rax
jb 0x1401a948c
lea rdx, [0x140000000]
cmp word [rdx + rcx*2 + 0x1f5920], 0x3b
je 0x1401a948c
cmp ecx, 0x16
je 0x1401a9494
jmp 0x1401a9515
mov dword [rsp + 0x2c], 0x3b
mov edx, LHashValOfNameSysA
jmp 0x1401a951a
cmp eax, 0xa3
jne 0x1401a95ca
cmp ebx, 0x17
jne 0x1401a9515
lea rbx, [r14 + 6]
lea rdx, [rsp + 0x30]
mov rcx, rbx
call fcn.1401a8a60
movsxd rcx, eax
add rbx, rcx
movsxd rcx, dword [rsp + 0x30]
cmp ecx, 0xb3
je 0x1401a94b2
cmp ecx, 0x3b
je 0x1401a950d
lea eax, [rcx - 0x73]
cmp eax, 0x2f
ja 0x1401a94ef
movabs rdx, 0xc00000000003
bt rdx, rax
jb 0x1401a950d
lea rdx, [0x140000000]
cmp word [rdx + rcx*2 + 0x1f5920], 0x3b
je 0x1401a950d
cmp ecx, 0x16
jne 0x1401a9515
mov edx, reloc.OLEAUT32.dll_QueryPathOfRegTypeLib
jmp 0x1401a951a
mov dword [rsp + 0x30], 0x3b
mov edx, 0x3b
mov dword [rsp + 0x20], edx
mov qword [rsi + 0x108], r14
lea r8, [rsp + 0x40]
mov dword [rsi + 0x110], r15d
lea rcx, [rsp + 0x50]
movups xmm0, xmmword [rsi + 0x108]
movaps xmmword [rsp + 0x40], xmm0
call fcn.1401a8690
mov ebx, dword [rsp + 0x20]
movsxd rax, r15d
add r14, rax
cmp dword [rsi + 0x18], 0
jne 0x1401a9577
lea rdx, [rsp + 0x20]
mov rcx, r14
call fcn.1401a8a60
sub r12d, eax
mov r15d, eax
jns 0x1401a92e0
mov dword [rsi + 0x18], socket
mov rcx, qword [rsp + 0x50]
lea rax, [rsp + 0x60]
cmp rcx, rax
jbe 0x1401a95ba
nop word [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.1401a5360
mov rcx, qword [rsp + 0x50]
lea rax, [rsp + 0x60]
cmp rcx, rax
ja 0x1401a9590
cmp byte [rdi + 0x61], 0
je 0x1401a95ea
mov ecx, 7
mov dword [rsi + 0x18], ecx
jmp 0x1401a95f6
mov r9, r14
lea rdx, str.unrecognized_token:___.s_
mov r8d, r15d
mov rcx, rsi
call fcn.140100f00
jmp 0x1401a9577
mov dword [rsi + 0x18], 9
jmp 0x1401a9577
mov ecx, dword [rsi + 0x18]
test ecx, ecx
je 0x1401a9665
cmp ecx, 0x65
je 0x1401a9665
cmp qword [rsi + 8], 0
jne 0x1401a9665
mov edx, ecx
lea r8, [0x140209080]
sub edx, 0x64
je 0x1401a964b
sub edx, 1
je 0x1401a9642
cmp edx, 0x19f
je 0x1401a9639
movzx eax, cl
cmp eax, 0x1d
jae 0x1401a9652
lea rcx, [0x140000000]
mov rcx, qword [rcx + rax*8 + 0x1f03a0]
test rcx, rcx
je 0x1401a9652
mov r8, rcx
jmp 0x1401a9652
lea r8, str.abort_due_to_ROLLBACK
jmp 0x1401a9652
lea r8, str.no_more_rows_available
jmp 0x1401a9652
lea r8, str.another_row_available
lea rdx, [0x140203d4c]
mov rcx, rdi
call fcn.1400ffe50
mov qword [rsi + 8], rax
mov r8, qword [rsi + 8]
test r8, r8
je 0x1401a9696
mov qword [r13], r8
lea rdx, str._s_in___s_
mov r9, qword [rsi + 0x140]
mov ecx, dword [rsi + 0x18]
call fcn.140100110
xor r12d, r12d
mov qword [rsi + 8], r12
lea r15d, [r12 + 1]
jmp 0x1401a969e
mov r15d, dword [rsp + 0x34]
xor r12d, r12d
mov rcx, qword [rsi + 0x10]
mov qword [rsi + 0x140], r14
test rcx, rcx
je 0x1401a96c3
cmp dword [rsi + 0x30], 0
jle 0x1401a96c3
cmp byte [rsi + 0x1e], 0
jne 0x1401a96eb
call fcn.140128a50
mov qword [rsi + 0x10], r12
cmp byte [rsi + 0x1e], 0
jne 0x1401a96eb
mov rdx, qword [rsi + 0x90]
test rdx, rdx
je 0x1401a96dd
mov rcx, rdi
call fcn.1400fd030
mov qword [rsi + 0x90], r12
mov dword [rsi + 0x88], r12d
mov rbx, qword [rsi + 0x178]
test rbx, rbx
je 0x1401a9752
cmp dword [0x14024ed50], 0
je 0x1401a9749
mov rcx, qword [0x14025a3f8]
test rcx, rcx
je 0x1401a9712
call qword [0x14024edd0]
mov rcx, rbx
call qword [0x14024ed88]
dec qword [0x14025a188]
mov rcx, rbx
movsxd rdx, eax
sub qword [0x14025a140], rdx
call qword [0x14024ed78]
mov rcx, qword [0x14025a3f8]
test rcx, rcx
je 0x1401a9752
call qword [0x14024ede0]
jmp 0x1401a9752
mov rcx, rbx
call qword [0x14024ed78]
cmp byte [rsi + 0x11c], 0
jne 0x1401a977f
mov rdx, qword [rsi + 0x148]
test rdx, rdx
je 0x1401a977f
cmp qword [rdi + 0x2d8], 0
jne 0x1401a9777
add dword [rdx + 0x3c], 0xffffffff
jne 0x1401a977f
mov rcx, rdi
call fcn.140150420
cmp byte [rsi + 0x11c], 2
jae 0x1401a97e9
mov rbx, qword [rsi + 0x158]
test rbx, rbx
je 0x1401a97e9
mov rdx, qword [rbx + 0x38]
mov rcx, rdi
call fcn.140182b20
mov rdx, qword [rbx]
test rdx, rdx
je 0x1401a97b0
mov rcx, rdi
call fcn.1400fd030
mov rdx, qword [rbx + 8]
test rdx, rdx
je 0x1401a97c1
mov rcx, rdi
call fcn.1400fd030
mov rdx, qword [rbx + 0x18]
test rdx, rdx
je 0x1401a97d2
mov rcx, rdi
call fcn.14013e8f0
mov rdx, qword [rbx + 0x20]
mov rcx, rdi
call fcn.140156dd0
mov rdx, rbx
mov rcx, rdi
call fcn.1400fd030
mov rdx, qword [rsi + 0x198]
test rdx, rdx
je 0x1401a97fd
mov rcx, rdi
call fcn.140158750
mov rdx, qword [rsi + 0x130]
test rdx, rdx
je 0x1401a9811
mov rcx, rdi
call fcn.1400fd030
mov rbx, qword [rsi + 0x98]
test rbx, rbx
je 0x1401a98f1
mov rax, qword [rbx]
mov qword [rsi + 0x98], rax
cmp qword [rdi + 0x2d8], 0
je 0x1401a9845
mov rdx, rbx
mov rcx, rdi
call fcn.1400fcfc0
jmp 0x1401a98e1
cmp rbx, qword [rdi + 0x1c8]
jae 0x1401a9886
cmp rbx, qword [rdi + 0x1b8]
jb 0x1401a986a
mov rax, qword [rdi + 0x1b0]
mov qword [rbx], rax
mov qword [rdi + 0x1b0], rbx
jmp 0x1401a98e1
cmp rbx, qword [rdi + 0x1c0]
jb 0x1401a9886
mov rax, qword [rdi + 0x1a0]
mov qword [rbx], rax
mov qword [rdi + 0x1a0], rbx
jmp 0x1401a98e1
cmp dword [0x14024ed50], 0
je 0x1401a98d8
mov rcx, qword [0x14025a3f8]
test rcx, rcx
je 0x1401a98a1
call qword [0x14024edd0]
mov rcx, rbx
call qword [0x14024ed88]
dec qword [0x14025a188]
movsxd rcx, eax
sub qword [0x14025a140], rcx
mov rcx, rbx
call qword [0x14024ed78]
mov rcx, qword [0x14025a3f8]
test rcx, rcx
je 0x1401a98e1
call qword [0x14024ede0]
jmp 0x1401a98e1
mov rcx, rbx
call qword [0x14024ed78]
mov rbx, qword [rsi + 0x98]
test rbx, rbx
jne 0x1401a9821
mov rcx, qword [rsi + 0x180]
test rcx, rcx
je 0x1401a9932
nop dword [rax]
mov rax, qword [rcx + 0x78]
mov qword [rsi + 0x180], rax
cmp qword [rdi + 0x2d8], 0
jne 0x1401a991b
add dword [rcx + 0x3c], 0xffffffff
jne 0x1401a9926
mov rdx, rcx
mov rcx, rdi
call fcn.140150420
mov rcx, qword [rsi + 0x180]
test rcx, rcx
jne 0x1401a9900
mov rcx, qword [rsi + 0xb0]
mov eax, r15d
mov qword [rdi + 0x138], rcx
mov qword [rsi + 0xb0], r12
mov rcx, qword [rbp + 0x8d0]
xor rcx, rsp
call fcn.1401b0930
mov rbx, qword [rsp + 0xa38]
add rsp, 0x9e0
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret